
:root{--paper:#f5f4f0;--ink:#0a0a09;--muted:#69665f;--line:rgba(10,10,9,.14);--warm:#c9a47a;--dark:#0b0b0a;--dark-muted:#aaa69e;--dark-line:rgba(255,255,255,.15);--gutter:24px;--content:1440px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;overflow-x:hidden;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:4px solid var(--warm);outline-offset:4px}.shell,.wrap{width:min(calc(100% - 240px),var(--content));margin-inline:auto}.skip{position:fixed;left:16px;top:10px;z-index:100;transform:translateY(-180%);background:#fff;color:#000;padding:9px 12px;border:1px solid #000}.skip:focus{transform:none}
.site-header{position:relative;z-index:50;background:var(--paper)}.header-inner{min-height:72px;display:grid;grid-template-columns:150px 1fr;align-items:center;border-bottom:1px solid var(--line)}.brand{display:inline-flex;width:max-content;align-items:center;font-size:20px;font-weight:800;letter-spacing:-.055em}.desktop-nav{justify-self:end;display:flex;align-items:center;gap:30px;font-size:13px;line-height:1}.desktop-nav a{position:relative;padding:29px 0 28px;white-space:nowrap}.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:19px;height:1px;background:var(--ink);transition:right .2s ease}.desktop-nav a:hover:after,.desktop-nav a:focus-visible:after,.desktop-nav a[aria-current="page"]:after{right:0}.menu-button{display:none;justify-self:end;border:0;border-bottom:1px solid var(--ink);padding:7px 0 5px;background:transparent;color:var(--ink);font-size:12px;letter-spacing:.10em;text-transform:uppercase}.mobile-menu{display:none}.menu-open{overflow:hidden}.eyebrow{margin:0 0 18px;color:var(--muted);font-size:11px;line-height:1.2;letter-spacing:.15em;text-transform:uppercase}.display,.display-sm,.display-md,h1,h2{margin:0;font-weight:700;letter-spacing:-.045em}.display,h1{max-width:11ch;font-size:clamp(62px,6.7vw,104px);line-height:.92}.display-sm{font-size:clamp(42px,4.7vw,70px);line-height:.96}.display-md{font-size:clamp(34px,3.5vw,54px);line-height:.98}.body-lg,.intro{margin:26px 0 0;max-width:38ch;color:#56534d;font-size:clamp(18px,1.7vw,25px);line-height:1.35;letter-spacing:-.02em}.page-hero{padding:110px 0 100px;border-bottom:1px solid var(--line)}.page-hero-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gutter)}.page-hero-grid>div:first-child{grid-column:1 / 9}.content{padding:96px 0 110px}.content-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gutter)}.content-main{grid-column:1 / 9}.content-aside{grid-column:10 / 13}.content-main h2{margin:64px 0 18px;font-size:clamp(34px,3.2vw,50px);line-height:1;letter-spacing:-.04em}.content-main h2:first-child{margin-top:0}.content-main h3{margin:0;font-size:20px;line-height:1.25}.content-main p{margin:0 0 20px;max-width:54ch;color:#4f4d48;font-size:17px;line-height:1.7}.aside-rule{padding-top:16px;border-top:1px solid var(--line);color:var(--muted);font-size:13px;line-height:1.6}.issue-list{border-top:1px solid var(--line)}.issue-row{display:grid;grid-template-columns:18px 1fr;gap:18px;padding:24px 0;border-bottom:1px solid var(--line)}.issue-row i{width:5px;height:5px;margin-top:8px;border-radius:50%;background:var(--warm)}.issue-row p{margin:7px 0 0}.confidential{padding:82px 0;background:#171716;color:#fff}.conf-box p,.confidential>div>p{margin:0;max-width:34ch;padding:26px 0;border-top:1px solid var(--dark-line);border-bottom:1px solid var(--dark-line);font-size:clamp(24px,2.4vw,37px);line-height:1.18;letter-spacing:-.035em}
/* HOME CONGELADA */
.home-hero{min-height:clamp(610px,72vh,760px);display:flex;align-items:center;padding:88px 0 84px}.home-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gutter)}.home-title{grid-column:1 / 8;align-self:end}.home-title h1{max-width:8.8ch;font-size:clamp(76px,7.6vw,118px);line-height:.91;letter-spacing:-.052em}.home-copy{grid-column:9 / 13;align-self:end;padding-bottom:4px}.home-copy .lead{margin:0;font-size:clamp(22px,1.9vw,30px);line-height:1.14;letter-spacing:-.031em}.home-copy .sub{margin:24px 0 0;max-width:37ch;color:#55534d;font-size:15px;line-height:1.55}.text-link{display:inline-block;margin-top:28px;padding-bottom:5px;border-bottom:1px solid var(--ink);font-size:13px}.nucleus{padding:124px 0 132px;border-top:1px solid var(--line)}.nucleus-copy{grid-column:1 / 7}.nucleus-copy h2{max-width:9.2ch;font-size:clamp(55px,5.2vw,78px);line-height:.95}.nucleus-reserve{grid-column:8 / 13;min-height:260px}.portals{border-top:1px solid var(--line)}.portal{display:block;border-bottom:1px solid var(--line);transition:background-color .18s ease}.portal:hover{background:rgba(10,10,9,.025)}.portal-inner{min-height:190px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gutter);align-items:center}.portal h2{grid-column:1 / 9;max-width:none;font-size:clamp(48px,4.7vw,70px);line-height:.97}.portal-label{grid-column:9 / 12;color:var(--muted);font-size:12px;text-align:right}.portal-arrow{grid-column:12 / 13;justify-self:end;font-size:27px;transition:transform .18s ease}.portal:hover .portal-arrow{transform:translateX(5px)}.logos{min-height:112px;border-bottom:1px solid var(--line)}
/* TERMS */
.search-wrap{margin-top:42px;max-width:520px}.search-wrap input{width:100%;border:0;border-bottom:1px solid var(--ink);background:transparent;padding:14px 0;font-size:17px}.term-list{border-top:1px solid var(--line)}.term{display:grid;grid-template-columns:160px minmax(180px,1fr) minmax(260px,1.4fr);gap:28px;align-items:start;padding:27px 0;border-bottom:1px solid var(--line)}.term small{color:var(--muted);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.term h2{font-size:27px;line-height:1.05}.term p{margin:0;color:#56534d;font-size:15px;line-height:1.55}.term.hidden{display:none}.note{color:var(--muted);font-size:13px;line-height:1.65}.note a{border-bottom:1px solid currentColor}
/* QUIZ + ANALYZER */
.tool-shell{padding:88px 0 105px;background:#11110f;color:#fff}.tool-panel,.quiz{max-width:950px;margin-inline:auto}.quiz-progress{height:2px;background:rgba(255,255,255,.14);margin-bottom:54px}.quiz-progress span{display:block;height:100%;width:10%;background:var(--warm)}.question{display:none}.question.active{display:block}.question h2,.tool-panel h2{max-width:19ch;font-size:clamp(38px,4vw,58px);line-height:1.02;letter-spacing:-.04em}.answers{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:42px}.answer,.quiz-nav button,.action{min-height:52px;border:1px solid rgba(255,255,255,.22);background:transparent;color:#fff;padding:12px 18px;cursor:pointer}.answer:hover,.answer.selected,.quiz-nav button:hover,.action:hover{border-color:var(--warm);background:rgba(201,164,122,.08)}.quiz-nav{display:flex;justify-content:space-between;margin-top:34px}.quiz-result{display:none}.quiz-result.show{display:block}.score-ring{margin-bottom:28px}.score-ring strong{font-size:48px}.tool-panel p{max-width:52ch;color:#b9b5ae;line-height:1.6}.tool-panel form{display:flex;gap:14px;align-items:end;margin-top:34px}.field{flex:1}.field label{display:block;margin-bottom:9px;font-size:12px;color:#b9b5ae}.field input{width:100%;min-height:52px;border:1px solid rgba(255,255,255,.22);background:#11110f;color:#fff;padding:0 15px}.status{margin-top:18px;color:#b9b5ae;font-size:13px}.audit-results{display:none;margin-top:42px}.audit-results.show{display:block}.audit-score{display:flex;gap:20px;align-items:baseline;padding-bottom:28px;border-bottom:1px solid rgba(255,255,255,.14)}.audit-score strong{font-size:46px}.checks{margin-top:10px}.check{display:grid;grid-template-columns:12px 1fr;gap:14px;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.12)}.check i{width:7px;height:7px;margin-top:6px;border-radius:50%;background:#777}.check.pass i{background:var(--warm)}.check strong{display:block}.check small{display:block;margin-top:4px;color:#aaa69e;line-height:1.45}
/* CONTACT */
.contact-email{display:inline-block;margin-top:32px;padding-bottom:6px;border-bottom:1px solid var(--ink);font-size:18px}.contact-form{max-width:780px}.contact-form label{display:block;margin:24px 0 8px;font-size:12px;color:var(--muted)}.contact-form input,.contact-form textarea{width:100%;border:0;border-bottom:1px solid var(--ink);background:transparent;padding:13px 0;font-size:17px}.contact-form textarea{min-height:150px;resize:vertical}.contact-form button{margin-top:30px;min-height:48px;border:1px solid var(--ink);background:var(--ink);color:#fff;padding:0 20px;cursor:pointer}
/* HELP */
.help-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.help-card{display:block;background:var(--paper);padding:32px}.help-card h2{font-size:30px}.help-card p{margin:13px 0 0;color:#5b5852;line-height:1.55}.help-card.hidden{display:none}
/* LEGAL */
.legal-page .content-main{grid-column:1 / 9}.legal-page .content-main p{max-width:62ch}
/* FOOTER NO IMÁGENES */
.site-footer{background:var(--dark);color:#fff}.footer-main{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gutter);align-items:end;padding:54px 0 44px}.footer-brand{grid-column:1 / 4;align-self:start}.footer-wordmark{font-size:22px;font-weight:800;letter-spacing:-.055em}.footer-links{grid-column:5 / 9;display:grid;grid-template-columns:1fr 1fr;gap:34px}.footer-col h3{margin:0 0 14px;color:var(--dark-muted);font-size:11px;letter-spacing:.13em;text-transform:uppercase}.footer-col a{display:block;width:max-content;max-width:100%;padding:5px 0;color:#d7d4ce;font-size:13px;line-height:1.35}.author{grid-column:10 / 13;padding-left:24px;border-left:1px solid var(--dark-line)}.author-role{margin:0 0 8px;color:var(--dark-muted);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.author-name{margin:0;font-size:20px;line-height:1.08;letter-spacing:-.025em;font-weight:600}.author-phrase{margin:11px 0 0;max-width:24ch;color:#aaa69e;font-size:12px;line-height:1.45}.footer-bottom{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gutter);align-items:center;padding:18px 0 22px;border-top:1px solid rgba(255,255,255,.10);color:#8e8a83;font-size:11px}.footer-bottom .copy{grid-column:1 / 4}.footer-bottom .legal{grid-column:5 / 9}.footer-bottom .right{grid-column:10 / 13;text-align:right}.footer-bottom a{color:#aaa69e}.scroll-rail{position:fixed;z-index:45;top:50%;right:18px;width:2px;height:210px;transform:translateY(-50%);background:rgba(10,10,9,.09);pointer-events:none}.scroll-fill{display:block;width:100%;height:0;background:var(--warm)}.mobile-progress{display:none}
@media(min-width:768px) and (max-width:1439px){.shell,.wrap{width:calc(100% - 96px)}.desktop-nav{display:none}.header-inner{grid-template-columns:1fr auto}.menu-button{display:block}.mobile-menu{position:absolute;top:73px;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);padding:24px 48px 30px}.mobile-menu.open{display:block}.mobile-menu nav a{display:block;padding:12px 0 14px;border-bottom:1px solid var(--line);font-size:30px;line-height:1;letter-spacing:-.04em;font-weight:700}.mobile-meta{display:none}.home-hero{min-height:620px}.home-title{grid-column:1 / 8}.home-copy{grid-column:8 / 13}.nucleus-copy{grid-column:1 / 7}.nucleus-reserve{grid-column:8 / 13;min-height:210px}.portal-inner{min-height:160px}.portal h2{grid-column:1 / 8}.portal-label{grid-column:8 / 12}.page-hero-grid>div:first-child{grid-column:1 / 11}.content-main{grid-column:1 / 9}.content-aside{grid-column:10 / 13}.footer-brand{grid-column:1 / 4}.author{grid-column:8 / 13}.footer-links{grid-column:1 / 13;grid-row:2;margin-top:40px;padding-top:30px;border-top:1px solid var(--dark-line);max-width:520px}.term{grid-template-columns:120px 1fr 1.3fr}}
@media(max-width:767px){.shell,.wrap{width:calc(100% - 40px)}.header-inner{min-height:66px;grid-template-columns:1fr auto}.brand{font-size:19px}.desktop-nav{display:none}.menu-button{display:block}.mobile-menu{position:absolute;top:67px;left:0;right:0;background:var(--paper);padding:20px;border-bottom:1px solid var(--line)}.mobile-menu.open{display:block}.mobile-menu nav a{display:block;padding:12px 0 14px;border-bottom:1px solid var(--line);font-size:28px;line-height:1;letter-spacing:-.04em;font-weight:700}.mobile-meta{display:none}.home-hero{min-height:auto;padding:64px 0 68px}.home-grid,.grid12{display:block}.home-title h1{font-size:clamp(56px,16vw,78px);line-height:.92;letter-spacing:-.047em}.home-copy{margin-top:38px}.home-copy .lead{font-size:24px;line-height:1.16}.home-copy .sub{margin-top:20px}.nucleus{padding:76px 0 82px}.nucleus-copy h2,h2{font-size:50px;line-height:.96}.nucleus-reserve{min-height:64px;margin-top:28px}.portal-inner{min-height:132px;display:grid;grid-template-columns:1fr auto;gap:18px}.portal h2{grid-column:1;font-size:44px}.portal-label{display:none}.portal-arrow{grid-column:2}.logos{min-height:82px}.confidential{padding:64px 0}.conf-box p,.confidential>div>p{font-size:26px}.page-hero{padding:70px 0 64px}.page-hero-grid,.content-grid{display:block}.display,h1{font-size:54px}.intro{font-size:20px}.content{padding:68px 0 78px}.content-main h2{margin-top:48px;font-size:36px}.content-aside{margin-top:44px}.term{grid-template-columns:1fr;gap:8px;padding:23px 0}.term h2{font-size:28px}.answers{grid-template-columns:1fr}.tool-shell{padding:62px 0 72px}.tool-panel form{display:block}.action{width:100%;margin-top:14px}.help-grid{grid-template-columns:1fr}.footer-main{display:flex;flex-direction:column;align-items:stretch;padding:42px 0 34px}.footer-brand{padding-bottom:26px;border-bottom:1px solid var(--dark-line)}.author{order:2;margin-top:26px;padding:0 0 28px;border-left:0;border-bottom:1px solid var(--dark-line)}.footer-links{order:3;margin-top:28px;grid-template-columns:1fr 1fr}.footer-bottom{display:flex;flex-direction:column;align-items:flex-start;gap:7px;padding:17px 0 22px}.footer-bottom .right{text-align:left}.scroll-rail{display:none}.mobile-progress{display:block;position:fixed;z-index:70;top:0;left:0;height:2px;width:0;background:var(--warm)}}
@media(max-width:380px){.shell,.wrap{width:calc(100% - 32px)}.home-title h1{font-size:54px}.nucleus-copy h2,h2{font-size:44px}.portal h2{font-size:40px}.footer-links{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* ── Núcleo de marca · orbital ─────────────────────────────── */
.nucleus{padding-top:clamp(56px,8vh,96px);padding-bottom:0;overflow:hidden}
.nucleus .nucleus-copy{text-align:center;max-width:none;position:relative;z-index:2}
.nucleus .nucleus-copy h2{max-width:none;margin-inline:auto;text-align:center}
.nucleus .nucleus-copy p{margin-inline:auto}
.nucleus .nucleus-toca{margin-top:18px;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#8b877f}

#gz-orbital-root{width:100%;height:min(78vh,760px);min-height:520px;position:relative;margin-top:4px;isolation:isolate;z-index:1}
#gz-orbital-root>*{width:100%!important;height:100%!important;min-height:0!important}

/* El orbital trae su propia sección a pantalla completa: aquí se acota */
#gz-orbital-root{
  /* Las variables de Tailwind vienen en oscuro: se pasan al papel del sitio */
  --background:#F7F6F3;--color-background:#F7F6F3;
  --foreground:#171614;--color-foreground:#171614;
  background:transparent;
}
#gz-orbital-root .bg-background,
#gz-orbital-root [class*="bg-background"]{background:transparent!important}
#gz-orbital-root .gz-section{
  height:100%!important;min-height:0!important;padding:0!important;
  background:radial-gradient(circle at 18% 14%,#99826512,#0000 30%),
             radial-gradient(circle at 84% 84%,#9982650f,#0000 24%),
             transparent!important;
  color:#171614!important;
}
#gz-orbital-root .gz-head,#gz-orbital-root .gz-aside,#gz-orbital-root .gz-foot{display:none!important}
#gz-orbital-root .gz-stage{position:absolute!important;inset:0!important}

/* La tarjeta no puede tapar el header (z-50) ni el menú */
#gz-orbital-root .gz-card-slot{z-index:90!important;align-items:center}
#gz-orbital-root .gz-ctl{z-index:45!important}

@media (max-width:767px){
  .nucleus{padding-top:44px}
  .nucleus-copy h2{font-size:38px}
  .nucleus .nucleus-toca{margin-top:14px}
  #gz-orbital-root{height:min(52vh,430px);min-height:340px}
  /* La órbita completa se reduce: nada se sale de los lados */
  #gz-orbital-root .gz-stage{transform:scale(.82);transform-origin:50% 50%}
  #gz-orbital-root .gz-node{font-size:9px!important;letter-spacing:.11em!important;
    padding:9px 13px!important;min-height:36px!important}
  #gz-orbital-root .gz-core{width:46vw!important;max-width:215px}
  /* En móvil la tarjeta es fija abajo: por encima del orbital, por debajo del menú */
  #gz-orbital-root .gz-card-slot{z-index:90!important}
}
@media (max-width:380px){
  .nucleus-copy h2{font-size:33px}
  #gz-orbital-root{height:min(58vh,470px);min-height:360px}
}

/* La tarjeta con textos largos: alto máximo y scroll interno cuidado */
#gz-orbital-root .gz-card{max-height:min(62vh,560px);display:flex;flex-direction:column;margin-block:auto}
#gz-orbital-root .gz-card-body{overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;
  scrollbar-width:thin;scrollbar-color:rgba(211,177,139,.35) transparent}
#gz-orbital-root .gz-card-body::-webkit-scrollbar{width:4px}
#gz-orbital-root .gz-card-body::-webkit-scrollbar-track{background:transparent}
#gz-orbital-root .gz-card-body::-webkit-scrollbar-thumb{background:rgba(211,177,139,.35);border-radius:99px}
/* El botón de cerrar no se va con el scroll */
#gz-orbital-root .gz-close{position:absolute;top:16px;right:16px;z-index:5}
/* Aire al final para que la firma no quede pegada */
#gz-orbital-root .gz-signature{margin-bottom:4px}

@media (max-width:767px){
  #gz-orbital-root .gz-card{max-height:56svh}
  #gz-orbital-root .gz-card-lead{font-size:15px}
  #gz-orbital-root .gz-value{font-size:13px;line-height:1.55}
}

/* Poster del núcleo: elimina el hueco negro mientras carga el vídeo (5,8 MB) */
#gz-orbital-root .gz-core{position:relative}
#gz-orbital-root .gz-core::after{
  content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;
  background:url("/assets/video/nucleo-poster.webp") center/contain no-repeat;
  animation:gz-poster-out .6s ease 2.2s both}
@keyframes gz-poster-out{to{opacity:0}}
@media (prefers-reduced-motion:reduce){
  #gz-orbital-root .gz-core::after{animation:none;opacity:1}
}

/* ── Footer · retrato ──────────────────────────────────────── */
.fw{
  position:relative;
  min-height:min(88vh,780px);
  display:flex;align-items:center;
  overflow:hidden;
  background:#070707;
  isolation:isolate;
}
.fw-foto{
  position:absolute;
  inset:0 0 0 auto;
  width:min(76%,1020px);
  z-index:0;display:block;
}
.fw-foto img{
  width:100%;height:100%;
  object-fit:cover;
  object-position:64% 20%;
  display:block;
  filter:grayscale(.1) contrast(1.05) brightness(.97);
}
/* Funde la foto hacia el negro: arranca opaco y se abre despacio */
.fw-velo{
  position:absolute;inset:0;z-index:1;pointer-events:none;
  background:
    linear-gradient(90deg,
      #070707 0%,#070707 30%,
      rgba(7,7,7,.985) 38%,
      rgba(7,7,7,.92) 46%,
      rgba(7,7,7,.74) 55%,
      rgba(7,7,7,.44) 65%,
      rgba(7,7,7,.16) 76%,
      rgba(7,7,7,.02) 87%,
      transparent 96%),
    linear-gradient(180deg,
      rgba(7,7,7,.6) 0%,rgba(7,7,7,.1) 18%,
      transparent 55%,rgba(7,7,7,.5) 82%,rgba(7,7,7,.95) 100%);
}
/* El texto respeta el ancho del sitio: no se le fija width */
.fw-texto{
  position:relative;z-index:2;
  padding:clamp(48px,7vh,96px) 0;
}
.fw-rol{
  margin:0 0 clamp(20px,3vh,34px);
  font-size:10px;letter-spacing:.28em;text-transform:uppercase;
  color:#b0aba2;font-weight:500;
}
.fw-nombre{
  margin:0;
  font-size:clamp(42px,6.2vw,88px);
  line-height:.93;letter-spacing:-.05em;font-weight:800;
  color:#f4f2ee;max-width:11ch;
  text-shadow:0 0 60px rgba(7,7,7,.85),0 0 24px rgba(7,7,7,.6);
}
.fw-linea{
  width:46px;height:1px;
  margin:clamp(26px,4vh,42px) 0 clamp(22px,3.4vh,34px);
  background:rgba(211,177,139,.85);
  box-shadow:0 0 14px rgba(211,177,139,.35);
}
.fw-frase{
  margin:0;
  font-size:clamp(17px,1.8vw,24px);
  line-height:1.3;letter-spacing:-.028em;
  color:#d2cdc5;max-width:22ch;
  text-shadow:0 0 40px rgba(7,7,7,.9),0 0 16px rgba(7,7,7,.7);
}

@media (max-width:1023px){
  .fw{min-height:min(80vh,680px)}
  .fw-foto{width:min(82%,720px)}
  .fw-foto img{object-position:60% 18%}
}

@media (max-width:767px){
  .fw{min-height:0;display:block;padding-bottom:clamp(36px,5vh,52px)}
  .fw-foto{
    position:relative;inset:auto;
    width:100%;height:min(62vh,480px);
  }
  .fw-foto img{object-position:50% 15%}
  /* El velo cubre toda la sección: el texto se apoya en negro sólido */
  .fw-velo{
    position:absolute;inset:0;
    height:auto;
    background:linear-gradient(180deg,
      rgba(7,7,7,.5) 0%,
      rgba(7,7,7,.04) 14%,
      rgba(7,7,7,.04) 38%,
      rgba(7,7,7,.3) 48%,
      rgba(7,7,7,.72) 55%,
      rgba(7,7,7,.94) 61%,
      #070707 66%,
      #070707 100%);
  }
  .fw-texto{padding:0;margin-top:-84px}
  /* Sobre negro sólido no hacen falta sombras */
  .fw-nombre,.fw-frase{text-shadow:none}
  .fw-rol{margin-bottom:15px}
  .fw-nombre{font-size:clamp(36px,10.5vw,50px);max-width:none;letter-spacing:-.045em}
  .fw-linea{margin:22px 0 19px}
  .fw-frase{font-size:17.5px;max-width:26ch}
}

.site-footer .footer-main{padding-top:clamp(40px,6vh,64px)}

/* ── Panel de ajustes: se edita viendo el resultado ──────────── */
/* Escritorio: columna estrecha, sin tapar el núcleo */
#gz-orbital-root .gz-ctl-body{max-height:min(66vh,580px);overscroll-behavior:contain}

@media (max-width:767px){
  /* Móvil: hoja inferior a todo el ancho. El orbital se ve arriba */
  #gz-orbital-root .gz-ctl{
    position:fixed!important;
    left:0!important;right:0!important;bottom:0!important;top:auto!important;
    width:100%!important;z-index:95!important;
    display:flex!important;flex-direction:column!important;
    align-items:stretch!important;
  }
  #gz-orbital-root .gz-ctl-body{
    width:100%!important;max-width:none!important;
    max-height:44svh!important;
    margin:0!important;
    border-radius:20px 20px 0 0!important;
    border-bottom:none!important;
    padding:8px 18px calc(16px + env(safe-area-inset-bottom))!important;
    box-shadow:0 -16px 46px rgba(22,22,22,.22)!important;
    background:#fffffff7!important;
    overscroll-behavior:contain;
  }
  /* Asidero de hoja */
  #gz-orbital-root .gz-ctl-body::before{
    content:"";position:sticky;top:0;z-index:2;
    display:block;width:38px;height:4px;
    margin:2px auto 10px;border-radius:99px;
    background:rgba(23,22,20,.2);
  }
  /* Cerrar: alineado a la derecha, justo encima de la hoja */
  #gz-orbital-root .gz-ctl > button{
    align-self:flex-end!important;
    margin:0 14px 10px 0!important;
    min-height:40px!important;
  }
  /* Filas más cómodas con el dedo */
  #gz-orbital-root .gz-ctl-row{gap:10px!important;padding:3px 0}
  #gz-orbital-root .gz-ctl input[type="range"]{height:28px}
  #gz-orbital-root .gz-ctl-group{margin-top:12px!important}
}

/* ── Hero · Brand Director ─────────────────────────────────── */
.home-hero{padding-top:clamp(48px,9vh,104px);padding-bottom:clamp(30px,5vh,54px)}
.hero-bloque{max-width:62ch}
.hero-h1{margin:0;display:block}
.hero-h1-a,.hero-h1-b{display:block;font-size:clamp(38px,7vw,74px);line-height:.93;letter-spacing:-.045em}
.hero-h1-a{font-weight:800;color:var(--ink,#090909)}
.hero-h1-b{font-weight:300;color:#5c5952;margin-top:1px}
.hero-rule{width:52px;height:1px;background:#c9a840;margin:clamp(22px,3.4vh,32px) 0 clamp(18px,2.8vh,26px)}
.hero-h2{margin:0 0 18px;font-size:clamp(21px,3vw,31px);font-weight:600;letter-spacing:-.03em;line-height:1.14;color:#141414}
.hero-p{margin:0 0 12px;font-size:clamp(15px,1.6vw,17px);line-height:1.55;color:#46433d;max-width:54ch}
.hero-firma{margin:clamp(22px,3vh,30px) 0 0;font-size:clamp(15px,1.6vw,17px);line-height:1.4;font-style:italic;color:#8b877f;letter-spacing:-.01em}
.hero-cta{display:inline-block;margin-top:clamp(20px,3vh,28px)}

@media (max-width:767px){
  .home-hero{padding-top:36px;padding-bottom:26px}
  .hero-h1-a,.hero-h1-b{font-size:clamp(34px,10.5vw,46px);letter-spacing:-.04em}
  .hero-rule{margin:20px 0 16px}
  .hero-h2{font-size:23px;margin-bottom:15px}
  .hero-p{font-size:15px}
}

/* ── Puertas · descripción y verbo ─────────────────────────── */
.portal-txt{grid-column:1 / 9;min-width:0}
.portal-txt h2{grid-column:auto!important;max-width:none}
.portal-desc{margin:12px 0 0;font-size:15px;line-height:1.5;color:#7d7972;max-width:44ch}
@media (max-width:767px){
  .portal-txt{grid-column:1 / -1}
  .portal-desc{font-size:14px;margin-top:9px;max-width:none}
}

/* ── Núcleo · titular y lema del footer ────────────────────── */
.nucleus-h2{
  margin:0 0 12px;
  font-size:clamp(38px,6.4vw,72px);
  font-weight:800;letter-spacing:-.045em;line-height:.95;
  color:var(--ink,#090909);
}
.nucleus-sub{
  margin:0 0 16px;
  font-size:clamp(18px,2.3vw,27px);
  font-weight:400;letter-spacing:-.024em;line-height:1.2;
  color:#57544e;max-width:none;text-wrap:balance;
}
.nucleus .nucleus-toca{margin-top:0}

@media (max-width:767px){
  .nucleus-h2{font-size:clamp(34px,10vw,46px)}
  .nucleus-sub{font-size:18px;max-width:none}
}

/* El lema, junto al retrato */
.fw-lema{
  margin:0 0 14px;
  font-size:clamp(17px,1.9vw,25px);
  line-height:1.3;letter-spacing:-.025em;
  color:#e6e1d8;font-style:italic;max-width:20ch;
}
.fw-frase{color:#a19c94!important;font-size:clamp(14px,1.4vw,17px)!important}
@media (max-width:767px){
  .fw-lema{font-size:19px;margin-bottom:11px}
  .fw-frase{font-size:15px!important}
}

/* ── Logo · tamaño clicable ────────────────────────────────── */
.brand{display:inline-flex;align-items:center;line-height:0}
.brand img{display:block;height:clamp(30px,3.1vw,40px);width:auto}
.footer-wordmark{line-height:0}
.footer-wordmark img{display:block;height:clamp(34px,3.6vw,46px);width:auto}
@media (max-width:767px){
  .brand img{height:32px}
  .footer-wordmark img{height:38px}
}

/* Pista bajo el campo del analizador */
.field-hint{margin:7px 0 0;font-size:12.5px;color:#8b877f;letter-spacing:.01em}

/* Salidas del 404 */
.err-salidas{display:flex;flex-wrap:wrap;gap:14px 28px;margin-top:6px}

/* Transiciones nativas entre páginas · mejora progresiva */
@view-transition{navigation:auto}
