/* Gold light, orbital details and restrained movement throughout the experience. */
.company-page, .products-page { isolation:isolate; }
.motion-atmosphere { position:absolute; inset:0; z-index:-1; overflow:hidden; pointer-events:none; contain:strict; }
.motion-dust { position:absolute; inset:0; width:100%; height:100%; opacity:.9; }
.motion-nebula { position:absolute; width:1000px; height:800px; border-radius:50%; will-change:transform; }
.motion-nebula--gold { top:50px; right:-100px; background:radial-gradient(ellipse,rgb(var(--gold-muted-rgb) / 0.098),transparent 65%); animation:none; transform:none; }
.motion-nebula--blue { bottom:-260px; left:-230px; background:radial-gradient(ellipse,#3a608826,transparent 65%); animation:none; transform:none; }
.motion-suspended .motion-nebula, .motion-suspended .motion-loop,
.motion-loop:not(.motion-in-view) { animation-play-state:paused !important; }

/* The pointer lights the surface; the overlay never intercepts a control. */
.motion-card { position:relative; isolation:isolate; transition:border-color .35s,box-shadow .4s,background-color .35s; }
.product-request.motion-card { position:sticky; }
.motion-card::after { content:""; position:absolute; z-index:-1; inset:0; border-radius:inherit; pointer-events:none; opacity:0; background:radial-gradient(360px circle at var(--glow-x,50%) var(--glow-y,20%),rgb(var(--product-rgb,232 193 117) / 12%),transparent 72%); transition:opacity .45s; }
.motion-card:is(.is-motion-hovered,:focus-within)::after { opacity:1; }
.motion-card:is(.is-motion-hovered,:focus-within) { border-color:rgb(var(--product-rgb,232 193 117) / 52%); box-shadow:0 8px 35px #0003,inset 0 1px 0 rgb(var(--gold-light-rgb) / 0.051); }
.company-card::before { width:55px; box-shadow:0 0 12px rgb(var(--gold-base-rgb) / 0.4392); transition:width .5s,box-shadow .5s; }
.company-card:is(:hover,:focus-within)::before { width:calc(100% - 60px); box-shadow:0 0 18px rgb(var(--gold-base-rgb) / 0.5647); }
.company-card--link, .offer-card, .category-card, .company-help-path { transition:translate .35s,border-color .35s,box-shadow .4s,background-color .35s; }
@media (hover:hover) and (pointer:fine) {
  .company-card--link:hover, .offer-card:hover, .category-card:hover, .company-help-path:hover { translate:0 -3px; }
}
.company-link--filled, .product-play, .journey-link { transition:background .3s,border-color .3s,box-shadow .35s,color .3s; }
:is(.company-link--filled,.product-play,.journey-link):is(:hover,:focus-visible) { box-shadow:0 0 24px rgb(var(--gold-base-rgb) / 0.1373),inset 0 0 16px rgb(var(--gold-light-rgb) / 0.0314); }
.product-family__explore span, .product-family__categories a span, .offer-card__bottom > span:last-child { transition:translate .3s,color .3s; }
.product-family__explore:hover span, .product-family__categories a:hover span { translate:3px -2px; color:var(--gold-light); }
.company-methods li { transition:background .3s,color .3s,padding-left .3s; }
.company-methods li:hover { padding-left:12px; color:var(--gold-light); background:linear-gradient(90deg,rgb(var(--gold-base-rgb) / 0.0471),transparent); }
:is(.company-faq,.product-curriculum,.product-subtopic) summary { transition:color .25s,text-shadow .25s; }
:is(.company-faq,.product-curriculum,.product-subtopic) summary:hover { color:var(--gold-light); text-shadow:0 0 20px rgb(var(--gold-base-rgb) / 0.1804); }
:is(.company-faq details,.product-curriculum,.product-subtopic)[open] > :not(summary) { animation:motion-expand .45s ease-out both; }

/* Light catches titles and figures without changing the actual text or numbers. */
.company-heading h1, .products-heading h1, .triangle-page__header h1 { text-shadow:0 0 35px rgb(var(--gold-base-rgb) / 0.1294); }
.company-heading::after, .products-heading::after { content:""; display:block; width:92px; height:1px; margin-top:22px; background:linear-gradient(90deg,var(--gold-light),rgb(var(--gold-base-rgb) / 0.3608),transparent); box-shadow:-15px 0 20px rgb(var(--gold-base-rgb) / 0.1882); }
.company-stats dt { background:linear-gradient(105deg,var(--gold-base) 10%,var(--gold-bright) 43%,var(--gold-base) 65%,var(--gold-muted)); background-clip:text; -webkit-background-clip:text; color:transparent; text-shadow:0 0 30px rgb(var(--gold-muted-rgb) / 0.0863); }
.company-stats > div { transition:background .4s; }
.company-stats > div:hover { background:radial-gradient(ellipse at 35% 30%,rgb(var(--gold-base-rgb) / 0.0471),transparent 70%); }

/* The six links remain silent: these are visual responses only. */
.site-panel__hex::before { content:""; position:absolute; inset:-15px; border-radius:50%; background:radial-gradient(ellipse,rgb(var(--gold-base-rgb) / 0.1451),transparent 65%); opacity:0; scale:.8; transition:opacity .4s,scale .4s; }
.site-panel:is(:hover,:focus-visible,[aria-current]) .site-panel__hex::before { opacity:1; scale:1.2; }
.site-panel__glint { stroke-dasharray:5 13; transition:stroke-dashoffset .6s,filter .4s; }
.site-panel:is(:hover,:focus-visible) .site-panel__glint { stroke-dashoffset:36; filter:drop-shadow(0 0 3px var(--gold-light)); }
.site-panel:is(:hover,:focus-visible) .company-icon { filter:drop-shadow(0 0 5px rgb(var(--gold-base-rgb) / 0.4392)); }
.site-panel[aria-current]::after { width:30px; box-shadow:0 0 15px rgb(var(--gold-base-rgb) / 0.6902); }

/* Live globe: two sweeping orbit trails and four softly pulsing beacons. */
.company-world { background:radial-gradient(ellipse,rgb(var(--gold-muted-rgb) / 0.1255),transparent 67%); }
.motion-orbit { fill:none; stroke:var(--gold-light); stroke-width:1.4; stroke-linecap:round; stroke-dasharray:90 910; filter:drop-shadow(0 0 4px var(--gold-base)); animation:motion-orbit 20s linear infinite; }
.motion-orbit--inner { stroke:#a6d0de; stroke-width:.9; opacity:.65; stroke-dasharray:55 945; animation-duration:27s; animation-direction:reverse; }
.motion-beacon { fill:none; stroke:var(--gold-light); stroke-width:1; transform-box:fill-box; transform-origin:center; animation:motion-beacon 4.8s ease-out infinite; }
.motion-beacon:nth-child(2) { animation-delay:-1.2s; }
.motion-beacon:nth-child(3) { animation-delay:-2.4s; }
.motion-beacon:nth-child(4) { animation-delay:-3.6s; }
.company-world__center strong { text-shadow:0 0 27px rgb(var(--gold-base-rgb) / 0.2118); animation:motion-core 7s ease-in-out infinite; }
.company-award-seal { position:relative; background:radial-gradient(ellipse,rgb(var(--gold-base-rgb) / 0.0902),transparent 72%); animation:motion-seal 6s ease-in-out infinite; }
.company-award-seal::before, .company-award-seal::after { content:""; position:absolute; pointer-events:none; inset:-14px; border:1px solid transparent; border-top-color:rgb(var(--gold-base-rgb) / 0.7333); border-right-color:rgb(var(--gold-base-rgb) / 0.1882); border-radius:50%; animation:motion-spin 18s linear infinite; }
.company-award-seal::after { inset:9px; border-top-color:rgb(var(--gold-base-rgb) / 0.251); border-right-color:transparent; animation-direction:reverse; animation-duration:25s; }
.company-guarantee-emblem::before { content:""; position:absolute; width:245px; height:245px; top:-7px; border-radius:50%; background:radial-gradient(ellipse,rgb(var(--gold-muted-rgb) / 0.1059),transparent 68%); border:1px solid rgb(var(--gold-base-rgb) / 0.1059); pointer-events:none; }
.company-guarantee-emblem > .company-icon { animation:motion-float 6s ease-in-out infinite; }
.product-family__top > .product-symbol { filter:drop-shadow(0 0 13px rgb(var(--product-rgb) / 32%)); animation:motion-float 7s ease-in-out infinite; }
.product-family--mentoring .product-symbol { animation-delay:-2.3s; }
.product-family--cualityx .product-symbol { animation-delay:-4.6s; }
.product-family__top { position:relative; }
.product-family__top::before { content:""; position:absolute; left:-19px; top:-18px; width:94px; height:94px; border-radius:50%; background:radial-gradient(ellipse,rgb(var(--product-rgb) / 10%),transparent 68%); pointer-events:none; }
.triangle-map__flow { stroke:var(--gold-light); stroke-dasharray:9 151; opacity:.75; filter:drop-shadow(0 0 3px rgb(var(--gold-base-rgb) / 0.6902)); animation-duration:30s; }
.triangle-map__glow { opacity:.16; }
.triangle-map__spark { animation:motion-core 5s ease-in-out infinite; }
.triangle-node__point { animation:motion-point 6s ease-in-out infinite; }
.triangle-node--systems .triangle-node__point { animation-delay:-2s; }
.triangle-node--leadership .triangle-node__point { animation-delay:-4s; }
.triangle-node:is(:hover,:focus-visible) .triangle-node__point { animation:none; }
.menu-core__emblem { animation:motion-float 9s ease-in-out infinite; }
.pillar:is(:hover,:focus-visible) { filter:drop-shadow(0 0 20px rgb(var(--gold-base-rgb) / 0.251)); }
.chat-launcher:hover .chat-launcher__spark { filter:drop-shadow(0 0 6px rgb(var(--gold-light-rgb) / 0.4392)); }

@keyframes motion-nebula { to { transform:translate(-90px,55px) scale(1.12); } }
@keyframes motion-orbit { to { stroke-dashoffset:-1000; } }
@keyframes motion-beacon { 0% { scale:.55; opacity:0; } 15% { opacity:.8; } 85%,100% { scale:2.3; opacity:0; } }
@keyframes motion-core { 0%,100% { filter:drop-shadow(0 0 3px rgb(var(--gold-base-rgb) / 0.251)); } 50% { filter:drop-shadow(0 0 14px rgb(var(--gold-base-rgb) / 0.4588)); } }
@keyframes motion-float { 0%,100% { translate:0 0; } 50% { translate:0 -6px; } }
@keyframes motion-spin { to { rotate:360deg; } }
@keyframes motion-seal { 0%,100% { box-shadow:0 0 0 12px rgb(var(--gold-muted-rgb) / 0.0196),inset 0 0 60px rgb(var(--gold-muted-rgb) / 0.0431),0 0 40px rgb(var(--gold-muted-rgb) / 0.0314); } 50% { box-shadow:0 0 0 12px rgb(var(--gold-muted-rgb) / 0.0353),inset 0 0 60px rgb(var(--gold-muted-rgb) / 0.0863),0 0 50px rgb(var(--gold-muted-rgb) / 0.0824); } }
@keyframes motion-point { 0%,100% { box-shadow:0 0 0 7px rgb(var(--gold-base-rgb) / 0.0314),0 0 22px rgb(var(--gold-base-rgb) / 0.0706),inset 0 1px 0 rgb(var(--gold-bright-rgb) / 0.1098); } 50% { box-shadow:0 0 0 9px rgb(var(--gold-base-rgb) / 0.0431),0 0 38px rgb(var(--gold-base-rgb) / 0.2),inset 0 1px 0 rgb(var(--gold-bright-rgb) / 0.2); } }
@keyframes motion-expand { from { opacity:0; translate:0 -6px; } to { opacity:1; translate:0 0; } }

.motion-suspended .company-award-seal::before, .motion-suspended .company-award-seal::after,
.company-award-seal:not(.motion-in-view)::before, .company-award-seal:not(.motion-in-view)::after { animation-play-state:paused; }
@media (prefers-reduced-motion:reduce) {
  .motion-nebula, .motion-loop, .company-award-seal::before, .company-award-seal::after,
  :is(.company-faq details,.product-curriculum,.product-subtopic)[open] > :not(summary) { animation:none !important; }
  .motion-card, .motion-card::after, .company-card::before, .company-help-path, .offer-card, .category-card, .company-methods li { transition:none; }
  .company-card--link:hover, .offer-card:hover, .category-card:hover, .company-help-path:hover { translate:none; }
  .motion-beacon { opacity:.35; }
}

.cuality-bee-layer { position:fixed; inset:0; z-index:70; pointer-events:none; overflow:hidden; }
.cuality-bee-layer[hidden] { display:none; }
.cuality-bee-trail { position:absolute; inset:0; width:100%; height:100%; }
.cuality-bee { position:absolute; top:0; left:0; width:60px; height:80px; will-change:transform; filter:drop-shadow(2px 3px 1.5px rgb(0 0 0 / .5)); }

.cuality-bee-sprite { display:block; width:100%; height:100%; background:url('./assets/abeja-vuelo-real.png') 0 0 / 400% 100% no-repeat; animation:bee-photo-wingbeat .13s steps(1,end) infinite; }
@keyframes bee-photo-wingbeat { 0%,100% { background-position:0% 0; } 25% { background-position:33.333333% 0; } 50% { background-position:66.666667% 0; } 75% { background-position:100% 0; } }
@media(prefers-reduced-motion:reduce) { .cuality-bee-layer { display:none; } .cuality-bee-sprite { animation:none; } }

.approach__question.is-invitation-lit { color:var(--gold-light); text-shadow:0 0 12px rgb(var(--gold-light-rgb) / .9),0 0 28px rgb(var(--gold-base-rgb) / .65); }
.chat-launcher.is-invitation-lit { filter:drop-shadow(0 0 12px var(--gold-base)); }
.chat-launcher.is-invitation-lit::after { border-color:var(--gold-bright); color:var(--gold-light); box-shadow:0 0 22px rgb(var(--gold-light-rgb) / .6); }

/* Shared gold contour and illuminated interior for interactive controls. */
body :is(button,a[href],[role="button"],summary):not(:disabled):not([aria-disabled="true"]):not(.pillar__button,.site-panel,.hex,.chat-launcher,.triangle-node,.transition-whatsapp):is(:hover,:focus-visible) {
  border-color:var(--gold-light);
  background-image:linear-gradient(135deg,rgb(var(--gold-light-rgb) / .20),rgb(var(--gold-base-rgb) / .08));
  box-shadow:0 0 18px rgb(var(--gold-base-rgb) / .35),inset 0 0 18px rgb(var(--gold-light-rgb) / .14),inset 0 0 0 1px rgb(var(--gold-light-rgb) / .65);
}
body .pillar__button:is(:hover,:focus-visible),
body .hex:is(:hover,:focus-visible),
body .chat-launcher:is(:hover,:focus-visible) {
  filter:drop-shadow(0 0 14px rgb(var(--gold-base-rgb) / .4));
}
body .pillar__button:is(:hover,:focus-visible) .pillar__surface { background:var(--gold-light); }
body .pillar__button:is(:hover,:focus-visible) .pillar__surface::after { opacity:1; }
body .hex:is(:hover,:focus-visible) .hex__border { background:var(--gold-light); }
body .hex:is(:hover,:focus-visible) .hex__border::after { opacity:1; }
body .hex:is(:hover,:focus-visible) .hex__outline { filter:drop-shadow(0 0 4px var(--gold-light)); }
body .site-panel:is(:hover,:focus-visible) .site-panel__hex { filter:drop-shadow(0 0 14px rgb(var(--gold-base-rgb) / .4)); }
body .site-panel:is(:hover,:focus-visible) .site-panel__surface { fill:var(--gold-base); fill-opacity:.25; stroke:var(--gold-light); stroke-opacity:1; }
body .site-panel:is(:hover,:focus-visible) .site-panel__inset { stroke:var(--gold-light); stroke-opacity:.65; }
body .chat-launcher:is(:hover,:focus-visible) > svg { fill:rgb(var(--gold-base-rgb) / .25); stroke:var(--gold-light); }
body .chat-launcher:is(:hover,:focus-visible)::after {
  border-color:var(--gold-light);
  background:linear-gradient(135deg,rgb(var(--gold-light-rgb) / .20),rgb(var(--gold-base-rgb) / .08)),#141820;
  box-shadow:0 0 18px rgb(var(--gold-base-rgb) / .35),inset 0 0 18px rgb(var(--gold-light-rgb) / .14);
}

body .triangle-node:is(:hover,:focus-visible) .triangle-node__point {
  border-color:var(--gold-light);
  background:radial-gradient(ellipse at 40% 30%,rgb(var(--gold-light-rgb) / .28),rgb(var(--gold-base-rgb) / .12) 60%,#0e1118);
  box-shadow:0 0 28px rgb(var(--gold-base-rgb) / .4),inset 0 0 22px rgb(var(--gold-light-rgb) / .16);
}
body .triangle-node .triangle-node__point::before { display:none; }
/* Match the three solution hexagons to the upper shortcut hover lighting. */
body .approach__pillars .pillar__button:is(:hover,:focus-visible) { transform:none; outline:none; filter:drop-shadow(0 0 14px rgb(var(--gold-base-rgb) / .4)); }
body .approach__pillars .pillar__button:is(:hover,:focus-visible) .pillar__surface { background:var(--gold-light); }
body .approach__pillars .pillar__button:is(:hover,:focus-visible) .pillar__surface::after { background:rgb(var(--gold-base-rgb) / .25); opacity:1; }
body .approach__pillars .pillar__button:is(:hover,:focus-visible) .pillar__inset { stroke:var(--gold-light); stroke-opacity:.65; opacity:1; }
/* Keep the gold hover glow and restore the slight upward movement. */
body .approach__pillars .pillar__button:is(:hover,:focus-visible) { transform:translateY(-4px); }
/* Add the same gentle hover lift to the requested controls and diagram boxes. */
#experience .wish-entry,
body .chat-launcher,
#iso-solutions .iso-tree :is(a,button,.iso-project-package) { transition:translate .25s ease,border-color .25s ease,box-shadow .25s ease,background .25s ease,filter .25s ease; }
#experience .wish-entry:is(:hover,:focus-visible),
body .chat-launcher:is(:hover,:focus-visible),
#iso-solutions .iso-tree :is(a,button,.iso-project-package):is(:hover,:focus-visible) { translate:0 -4px; }
#iso-solutions .iso-tree .iso-project-package:hover { border-color:var(--gold-light); background-image:linear-gradient(135deg,rgb(var(--gold-light-rgb) / .20),rgb(var(--gold-base-rgb) / .08)); box-shadow:0 0 18px rgb(var(--gold-base-rgb) / .35),inset 0 0 18px rgb(var(--gold-light-rgb) / .14); }
/* Detect the pointer immediately around every back-to-home button. */
body :is(.company-back,.iso-solutions__back) { pointer-events:auto; z-index:30; transition-delay:0s; transition-duration:0s; }
body :is(.company-back,.iso-solutions__back)::after { content:""; position:absolute; inset:-8px; border-radius:999px; pointer-events:auto; }
body :is(.company-back,.iso-solutions__back):is(:hover,:focus-visible) { transition-delay:0s; transition-duration:0s; }
/* Give every return-to-ISO link the same immediate, expanded pointer detection. */
body .products-breadcrumbs a[data-page="soluciones-iso"] { position:relative; pointer-events:auto; z-index:30; transition-delay:0s; transition-duration:0s; }
body .products-breadcrumbs a[data-page="soluciones-iso"]::after { content:""; position:absolute; inset:-8px; border-radius:999px; pointer-events:auto; }
body .products-breadcrumbs a[data-page="soluciones-iso"]:is(:hover,:focus-visible) { transition-delay:0s; transition-duration:0s; }