/* ==========================================================
   GCH PROFESSIONAL EFFECTS — BLACK & GOLD EXECUTIVE
   Efectos visuales corporativos, tecnológicos y ligeros.
   No modifica datos ni depende de librerías externas.
   ========================================================== */
:root{
  --gch-gold:#c99a42;
  --gch-gold-2:#f3d58a;
  --gch-gold-soft:rgba(201,154,66,.18);
  --gch-black:#080808;
  --gch-ink:#14100a;
  --gch-mx:50vw;
  --gch-my:50vh;
  --gch-depth:0px;
}

html{scroll-behavior:smooth;}
body.site-public{
  position:relative;
  overflow-x:hidden;
  background-color:#070707;
}

/* Luz inteligente que sigue el mouse */
body.site-public.gch-effects-ready::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    radial-gradient(620px circle at var(--gch-mx) var(--gch-my), rgba(226,179,86,.155), transparent 42%),
    radial-gradient(920px circle at 12% 18%, rgba(255,255,255,.035), transparent 46%),
    radial-gradient(820px circle at 88% 82%, rgba(201,154,66,.08), transparent 50%);
  mix-blend-mode:screen;
  opacity:.86;
}

/* Malla tecnológica de fondo */
body.site-public.gch-effects-ready::after{
  content:"";
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(201,154,66,.075) 1px, transparent 1px),
    linear-gradient(90deg, rgba(201,154,66,.055) 1px, transparent 1px),
    radial-gradient(circle at 20% 20%, rgba(201,154,66,.08), transparent 28%),
    radial-gradient(circle at 80% 55%, rgba(255,255,255,.035), transparent 24%);
  background-size:72px 72px,72px 72px,100% 100%,100% 100%;
  mask-image:linear-gradient(180deg, transparent 0%, #000 14%, #000 84%, transparent 100%);
  opacity:.42;
  animation:gchGridDrift 18s linear infinite;
}
@keyframes gchGridDrift{to{background-position:72px 72px,72px 72px,0 0,0 0;}}

body.site-public .topbar,
body.site-public main,
body.site-public .modal,
body.site-public .site-stage,
body.site-public .static-screen{
  position:relative;
  z-index:1;
}

/* Canvas de circuitos */
#gch-code-canvas{
  position:fixed;
  inset:0;
  width:100vw;
  height:100vh;
  z-index:0;
  pointer-events:none;
  opacity:.42;
  mix-blend-mode:screen;
}

/* Barra de avance */
#gch-scroll-progress{
  position:fixed;
  left:0;
  top:0;
  height:3px;
  width:0%;
  z-index:999999;
  background:linear-gradient(90deg, transparent, var(--gch-gold), var(--gch-gold-2), var(--gch-gold));
  box-shadow:0 0 18px rgba(226,179,86,.78), 0 0 42px rgba(226,179,86,.32);
  transform-origin:left center;
}

/* Cursor ejecutivo */
.gch-cursor-glow{
  position:fixed;
  left:0;
  top:0;
  width:34px;
  height:34px;
  border:1px solid rgba(226,179,86,.42);
  border-radius:50%;
  pointer-events:none;
  z-index:999998;
  transform:translate3d(-50%,-50%,0);
  box-shadow:0 0 30px rgba(226,179,86,.22), inset 0 0 14px rgba(226,179,86,.16);
  opacity:0;
  transition:opacity .22s ease, width .18s ease, height .18s ease, border-color .18s ease;
}
.gch-cursor-glow.is-active{opacity:1;}
.gch-cursor-glow.is-hover{width:58px;height:58px;border-color:rgba(243,213,138,.72);}

/* Header glass premium */
body.site-public .topbar{
  backdrop-filter:blur(20px) saturate(1.18);
  -webkit-backdrop-filter:blur(20px) saturate(1.18);
  box-shadow:0 14px 40px rgba(0,0,0,.28), inset 0 -1px 0 rgba(226,179,86,.14);
}
body.site-public .topbar::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:0;height:1px;
  background:linear-gradient(90deg, transparent, rgba(226,179,86,.72), rgba(255,255,255,.35), rgba(226,179,86,.72), transparent);
  opacity:.75;
}
body.site-public .brand img,
body.site-public .brand-full-logo-img{
  filter:drop-shadow(0 0 16px rgba(226,179,86,.24));
  transition:transform .35s ease, filter .35s ease;
}
body.site-public .brand:hover img,
body.site-public .brand-full-logo:hover .brand-full-logo-img{
  transform:translateY(-1px) scale(1.025);
  filter:drop-shadow(0 0 28px rgba(226,179,86,.42));
}

/* Títulos con presencia tecnológica */
body.site-public .headline,
body.site-public h1,
body.site-public h2{
  text-wrap:balance;
}
body.site-public.gch-effects-ready .headline,
body.site-public.gch-effects-ready h1{
  background-image:linear-gradient(110deg, currentColor 0%, currentColor 32%, #e7c777 45%, #fff3bb 50%, #e7c777 55%, currentColor 68%, currentColor 100%);
  background-size:240% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  animation:gchHeadlineShine 7.5s ease-in-out infinite;
}
@keyframes gchHeadlineShine{0%,72%,100%{background-position:100% 50%;}42%{background-position:0% 50%;}}
body.site-public .kicker,
body.site-public .eyebrow{
  position:relative;
  letter-spacing:.16em;
}
body.site-public .kicker::after,
body.site-public .eyebrow::after{
  content:"";
  display:block;
  width:54px;
  height:1px;
  margin:8px auto 0;
  background:linear-gradient(90deg, transparent, rgba(226,179,86,.9), transparent);
  box-shadow:0 0 14px rgba(226,179,86,.44);
}

/* Aparición elegante */
body.site-public.gch-effects-ready .gch-reveal{
  opacity:0;
  transform:translate3d(0,28px,0) scale(.985);
  filter:blur(8px);
  transition:opacity .74s cubic-bezier(.2,.8,.2,1), transform .74s cubic-bezier(.2,.8,.2,1), filter .74s ease;
  transition-delay:var(--gch-delay,0ms);
}
body.site-public.gch-effects-ready .gch-reveal.gch-reveal-in{
  opacity:1;
  transform:translate3d(0,0,0) scale(1);
  filter:blur(0);
}

/* Cards corporativas: profundidad, borde vivo y brillo */
body.site-public .gch-tilt,
body.site-public .problem-card,
body.site-public .solution-card,
body.site-public .service-card,
body.site-public .sector-card,
body.site-public .recurso-card,
body.site-public .insight-card,
body.site-public .insight-db-card,
body.site-public .trust-card,
body.site-public .metric-card,
body.site-public .dashboard-card,
body.site-public .featured-resource,
body.site-public .recursos-footer-item,
body.site-public .contact-card,
body.site-public .panel{
  position:relative;
  transform-style:preserve-3d;
  transition:transform .28s ease, box-shadow .28s ease, border-color .28s ease, filter .28s ease;
  will-change:transform;
}
body.site-public .gch-tilt::before,
body.site-public .problem-card::before,
body.site-public .solution-card::before,
body.site-public .service-card::before,
body.site-public .sector-card::before,
body.site-public .recurso-card::before,
body.site-public .insight-card::before,
body.site-public .insight-db-card::before,
body.site-public .trust-card::before,
body.site-public .metric-card::before,
body.site-public .dashboard-card::before,
body.site-public .featured-resource::before,
body.site-public .recursos-footer-item::before,
body.site-public .contact-card::before,
body.site-public .panel::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  background:radial-gradient(360px circle at var(--mx,50%) var(--my,50%), rgba(243,213,138,.22), transparent 44%);
  opacity:0;
  transition:opacity .28s ease;
  z-index:0;
}
body.site-public .gch-tilt::after,
body.site-public .problem-card::after,
body.site-public .solution-card::after,
body.site-public .service-card::after,
body.site-public .sector-card::after,
body.site-public .recurso-card::after,
body.site-public .insight-card::after,
body.site-public .insight-db-card::after,
body.site-public .trust-card::after,
body.site-public .metric-card::after,
body.site-public .dashboard-card::after,
body.site-public .featured-resource::after,
body.site-public .recursos-footer-item::after,
body.site-public .contact-card::after,
body.site-public .panel::after{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:inherit;
  pointer-events:none;
  padding:1px;
  background:linear-gradient(135deg, rgba(243,213,138,.0), rgba(243,213,138,.42), rgba(255,255,255,.16), rgba(201,154,66,.0));
  -webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  opacity:0;
  transition:opacity .28s ease;
}
body.site-public .gch-tilt:hover,
body.site-public .problem-card:hover,
body.site-public .solution-card:hover,
body.site-public .service-card:hover,
body.site-public .sector-card:hover,
body.site-public .recurso-card:hover,
body.site-public .insight-card:hover,
body.site-public .insight-db-card:hover,
body.site-public .trust-card:hover,
body.site-public .metric-card:hover,
body.site-public .dashboard-card:hover,
body.site-public .featured-resource:hover,
body.site-public .recursos-footer-item:hover,
body.site-public .contact-card:hover,
body.site-public .panel:hover{
  transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(-5px);
  box-shadow:0 28px 70px rgba(0,0,0,.18), 0 0 34px rgba(201,154,66,.12) !important;
  border-color:rgba(226,179,86,.34) !important;
}
body.site-public .gch-tilt:hover::before,
body.site-public .problem-card:hover::before,
body.site-public .solution-card:hover::before,
body.site-public .service-card:hover::before,
body.site-public .sector-card:hover::before,
body.site-public .recurso-card:hover::before,
body.site-public .insight-card:hover::before,
body.site-public .insight-db-card:hover::before,
body.site-public .trust-card:hover::before,
body.site-public .metric-card:hover::before,
body.site-public .dashboard-card:hover::before,
body.site-public .featured-resource:hover::before,
body.site-public .recursos-footer-item:hover::before,
body.site-public .contact-card:hover::before,
body.site-public .panel:hover::before,
body.site-public .gch-tilt:hover::after,
body.site-public .problem-card:hover::after,
body.site-public .solution-card:hover::after,
body.site-public .service-card:hover::after,
body.site-public .sector-card:hover::after,
body.site-public .recurso-card:hover::after,
body.site-public .insight-card:hover::after,
body.site-public .insight-db-card:hover::after,
body.site-public .trust-card:hover::after,
body.site-public .metric-card:hover::after,
body.site-public .dashboard-card:hover::after,
body.site-public .featured-resource:hover::after,
body.site-public .recursos-footer-item:hover::after,
body.site-public .contact-card:hover::after,
body.site-public .panel:hover::after{
  opacity:1;
}
body.site-public .gch-tilt > *,
body.site-public .problem-card > *,
body.site-public .solution-card > *,
body.site-public .service-card > *,
body.site-public .sector-card > *,
body.site-public .recurso-card > *,
body.site-public .insight-card > *,
body.site-public .insight-db-card > *,
body.site-public .trust-card > *,
body.site-public .metric-card > *,
body.site-public .dashboard-card > *,
body.site-public .featured-resource > *,
body.site-public .recursos-footer-item > *,
body.site-public .contact-card > *,
body.site-public .panel > *{
  position:relative;
  z-index:1;
}

/* Botones con barrido premium */
body.site-public .btn,
body.site-public button,
body.site-public .top-cta,
body.site-public .recurso-buy-btn,
body.site-public .recurso-detail-btn,
body.site-public .featured-all{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  transition:transform .24s ease, box-shadow .24s ease, filter .24s ease;
}
body.site-public .btn::before,
body.site-public button::before,
body.site-public .top-cta::before,
body.site-public .recurso-buy-btn::before,
body.site-public .recurso-detail-btn::before,
body.site-public .featured-all::before{
  content:"";
  position:absolute;
  top:-120%;
  left:-55%;
  width:44%;
  height:340%;
  z-index:-1;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.36), transparent);
  transform:rotate(22deg);
  transition:left .72s cubic-bezier(.2,.8,.2,1);
}
body.site-public .btn:hover::before,
body.site-public button:hover::before,
body.site-public .top-cta:hover::before,
body.site-public .recurso-buy-btn:hover::before,
body.site-public .recurso-detail-btn:hover::before,
body.site-public .featured-all:hover::before{
  left:120%;
}
body.site-public .btn:hover,
body.site-public button:hover,
body.site-public .top-cta:hover,
body.site-public .recurso-buy-btn:hover,
body.site-public .recurso-detail-btn:hover,
body.site-public .featured-all:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 34px rgba(201,154,66,.2);
}

/* Imágenes: profundidad y acabado premium */
body.site-public img{
  transition:transform .38s ease, filter .38s ease;
}
body.site-public a:hover img,
body.site-public .product-cover:hover img,
body.site-public .insight-db-cover:hover img{
  transform:scale(1.025);
  filter:saturate(1.04) contrast(1.03);
}
body.site-public .product-cover,
body.site-public .insight-db-cover,
body.site-public .modal-insight-image,
body.site-public .gc-logo-card{
  position:relative;
  overflow:hidden;
}
body.site-public .product-cover::after,
body.site-public .insight-db-cover::after,
body.site-public .modal-insight-image::after,
body.site-public .gc-logo-card::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(120deg, transparent 0%, rgba(255,255,255,.16) 46%, transparent 58%);
  transform:translateX(-120%);
  transition:transform .8s ease;
}
body.site-public .product-cover:hover::after,
body.site-public .insight-db-cover:hover::after,
body.site-public .modal-insight-image:hover::after,
body.site-public .gc-logo-card:hover::after{
  transform:translateX(120%);
}

/* Formularios corporativos */
body.site-public input,
body.site-public select,
body.site-public textarea{
  transition:border-color .24s ease, box-shadow .24s ease, background .24s ease;
}
body.site-public input:focus,
body.site-public select:focus,
body.site-public textarea:focus{
  outline:none !important;
  border-color:rgba(226,179,86,.72) !important;
  box-shadow:0 0 0 4px rgba(226,179,86,.12), 0 0 28px rgba(226,179,86,.12) !important;
}

/* Menú: subrayado animado */
body.site-public .nav-menu a{
  position:relative;
}
body.site-public .nav-menu a::after{
  content:"";
  position:absolute;
  left:50%;right:50%;bottom:-9px;height:1px;
  background:linear-gradient(90deg, transparent, rgba(226,179,86,.95), transparent);
  transition:left .28s ease, right .28s ease, opacity .28s ease;
  opacity:0;
}
body.site-public .nav-menu a:hover::after,
body.site-public .nav-menu a.is-active::after{
  left:8%;right:8%;opacity:1;
}

/* Dots/arrows con estilo dashboard */
body.site-public .screen-dots button,
body.site-public .screen-arrows button{
  box-shadow:0 0 0 1px rgba(226,179,86,.12), 0 12px 24px rgba(0,0,0,.18);
}
body.site-public .screen-dots button.is-active{
  box-shadow:0 0 0 1px rgba(226,179,86,.55), 0 0 22px rgba(226,179,86,.28);
}

/* Etiqueta de sistema activo */
.gch-tech-signature{
  position:fixed;
  right:18px;
  bottom:14px;
  z-index:20;
  pointer-events:none;
  display:flex;
  align-items:center;
  gap:8px;
  padding:8px 11px;
  border:1px solid rgba(226,179,86,.18);
  border-radius:999px;
  background:rgba(8,8,8,.52);
  color:rgba(243,213,138,.74);
  font-size:10px;
  font-weight:900;
  letter-spacing:.14em;
  backdrop-filter:blur(12px);
  opacity:.72;
}
.gch-tech-signature i{
  width:7px;height:7px;border-radius:50%;background:#d7ad5a;box-shadow:0 0 14px #d7ad5a;
  animation:gchPulse 1.8s ease-in-out infinite;
}
@keyframes gchPulse{50%{opacity:.35;transform:scale(.74);}}

/* Modal/Fancybox más premium */
body.site-public .modal,
body.site-public .fancybox__container{
  backdrop-filter:blur(10px) saturate(1.1);
}
body.site-public .modal-card,
body.site-public .fancybox__content{
  box-shadow:0 34px 90px rgba(0,0,0,.42), 0 0 0 1px rgba(226,179,86,.18) !important;
}

/* Responsive y accesibilidad */
@media (max-width:768px){
  .gch-tech-signature{display:none;}
  #gch-code-canvas{opacity:.2;}
  body.site-public.gch-effects-ready::before{opacity:.52;}
  body.site-public.gch-effects-ready::after{opacity:.22;background-size:48px 48px,48px 48px,100% 100%,100% 100%;}
}
@media (hover:none){.gch-cursor-glow{display:none;}}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;scroll-behavior:auto !important;transition-duration:.001ms !important;}
  #gch-code-canvas,.gch-cursor-glow,#gch-scroll-progress{display:none !important;}
  body.site-public.gch-effects-ready .gch-reveal{opacity:1 !important;transform:none !important;filter:none !important;}
}
