/* SYT IMPORTS · hoja de estilos única
   Sistema: blanco y gris hielo como base, azul noche institucional, dorado solo para conversión (las variables --cobre* conservan el nombre).
   Tipografías propias del sitio (sin terceros): Plus Jakarta Sans (títulos), Inter (texto), IBM Plex Mono (códigos y cifras de documento). */

@font-face{font-family:"Jakarta";font-style:normal;font-weight:200 800;font-display:swap;src:url(/assets/fonts/plus-jakarta-sans-latin-wght-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Jakarta";font-style:normal;font-weight:200 800;font-display:swap;src:url(/assets/fonts/plus-jakarta-sans-latin-ext-wght-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Inter";font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/inter-latin-wght-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Inter";font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/inter-latin-ext-wght-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/ibm-plex-mono-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Plex Mono";font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/ibm-plex-mono-latin-500-normal.woff2) format("woff2")}

/* ---------- Tokens ---------- */
:root{
  /* Color */
  --blanco:#ffffff; --hielo:#f3f5f7; --hielo-2:#e8ecf0; --linea:#dde4ec; --linea-2:#c7d1dd;
  --noche:#101f32; --noche-2:#19334d; --noche-3:#24476a; --petroleo:#1d3a57;
  --texto:#101f32; --texto-2:#334155; --gris:#5c6876; --gris-claro:#b8c4d4;
  --cobre:#c7a66b; --cobre-hover:#d6ba86; --cobre-txt:#85672f; --cobre-suave:#f7f1e5;
  --ok:#0f6b54; --ok-suave:#e8f5f0; --err:#b42318; --err-suave:#fef3f2; --aviso:#8a5a00; --aviso-suave:#fff7e6;
  --wa:#15803d; --wa-2:#166534;
  /* Tipografía */
  --titulos:"Jakarta",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --sans:"Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --mono:"Plex Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  /* Espacio y forma */
  --gutter:16px; --max:1200px;
  --s1:4px; --s2:8px; --s3:12px; --s4:16px; --s5:24px; --s6:32px; --s7:48px; --s8:64px; --s9:96px;
  --r:8px; --r-2:12px; --r-3:16px;
  --sombra-1:0 1px 2px rgba(16,31,50,.06),0 1px 3px rgba(16,31,50,.05);
  --sombra-2:0 2px 4px rgba(16,31,50,.04),0 12px 32px rgba(16,31,50,.08);
  --sombra-3:0 4px 8px rgba(16,31,50,.05),0 24px 48px rgba(16,31,50,.12);
  --t:.18s cubic-bezier(.2,.7,.2,1);
  color-scheme:only light;
}
@media (min-width:640px){:root{--gutter:28px}}
@media (min-width:1024px){:root{--gutter:40px}}

/* ---------- Base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:96px}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;background:var(--blanco);color:var(--texto-2);font-family:var(--sans);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv11","ss01"}
img,svg{display:block;max-width:100%}
img{height:auto}
a{color:var(--cobre-txt);text-underline-offset:3px;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
h1,h2,h3,h4{margin:0;font-family:var(--titulos);font-weight:750;line-height:1.12;letter-spacing:-.022em;color:var(--noche);text-wrap:balance}
p{margin:0}
ul,ol{margin:0;padding:0}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--cobre);outline-offset:3px}
[hidden]{display:none!important}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.saltar{position:absolute;left:var(--gutter);top:-80px;z-index:200;background:var(--noche);color:#fff;padding:12px 18px;border-radius:var(--r);font-weight:600;text-decoration:none}
.saltar:focus{top:12px}
::selection{background:var(--cobre);color:var(--noche)}
.num,.cifra{font-variant-numeric:tabular-nums}

/* ---------- Layout ---------- */
.wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:max(var(--gutter),env(safe-area-inset-left,0px)) max(var(--gutter),env(safe-area-inset-right,0px))}
.wrap-s{max-width:860px}
.wrap-m{max-width:1000px}
.sec{padding-block:72px}
@media (min-width:900px){.sec{padding-block:112px}}
.sec-tight{padding-top:0}
.sec-hielo{background:var(--hielo)}
.sec-noche{background:var(--noche);color:var(--gris-claro)}
.sec-noche h1,.sec-noche h2,.sec-noche h3,.sec-noche h4{color:#fff}
.sec-noche .lead,.sec-noche .muted{color:var(--gris-claro)}
.sec-noche .etq{color:var(--cobre)}
.sec-noche a:not(.btn){color:#e2cc9f}
.sin-arriba{padding-top:0}
.sec-borde{border-top:1px solid var(--linea)}
.grid{display:grid;gap:var(--s4)}
.grid > *{min-width:0}
@media (min-width:640px){.g2{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:900px){.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (min-width:640px) and (max-width:899px){.g3,.g4{grid-template-columns:repeat(2,minmax(0,1fr))}}
.gap-5{gap:var(--s5)}
.dos-col{display:grid;gap:var(--s7)}
@media (min-width:900px){.dos-col{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--s8)}}
.col-texto{display:grid;gap:var(--s4);align-content:start}
.bloque-arriba{margin-top:var(--s7)}

/* ---------- Tipografía ---------- */
.etq{font-family:var(--mono);font-size:12.5px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--cobre-txt)}
.h-display{font-size:clamp(38px,6.2vw,68px);font-weight:800;letter-spacing:-.035em;line-height:1.04}
.h-1{font-size:clamp(32px,4.8vw,54px);font-weight:800;letter-spacing:-.03em;line-height:1.08}
.h-2{font-size:clamp(27px,3.6vw,42px);font-weight:780;letter-spacing:-.028em}
.h-3{font-size:clamp(19px,1.9vw,22px);font-weight:720;letter-spacing:-.015em;line-height:1.25}
.lead{font-size:clamp(17.5px,1.7vw,20px);line-height:1.55;color:var(--texto-2)}
.muted{color:var(--gris)}
.small{font-size:14.5px}
.acento{color:var(--cobre-txt)}
.nota-fina{margin-top:var(--s5);font-size:14.5px;color:var(--gris)}
.prosa{display:grid;gap:var(--s4);max-width:70ch}
.prosa h2{font-size:clamp(23px,2.6vw,29px);margin-top:var(--s5)}
.prosa h3{font-size:19px;margin-top:var(--s3)}
.prosa ul,.prosa ol{padding-left:1.3em;display:grid;gap:8px}
.prosa li::marker{color:var(--cobre-txt)}
.prosa table{width:100%}
.prosa strong{color:var(--noche)}

/* Encabezado de sección */
.sec-head{display:grid;gap:var(--s4);margin-bottom:var(--s7);max-width:780px}
.sec-head.centro{margin-inline:auto;text-align:center;justify-items:center}
.sec-head .lead{max-width:62ch}
.sec-head-fila{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:var(--s5);margin-bottom:var(--s7)}
.sec-head-fila .sec-head{margin-bottom:0}

/* ---------- Botones ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:13px 22px;border:1.5px solid transparent;border-radius:var(--r);font-family:var(--sans);font-size:16px;font-weight:650;line-height:1.2;text-decoration:none;text-align:center;cursor:pointer;transition:background-color var(--t),border-color var(--t),color var(--t),transform var(--t),box-shadow var(--t)}
.btn:active{transform:translateY(1px)}
.btn svg{width:19px;height:19px;flex:none}
.btn-primario{background:var(--cobre);color:var(--noche);box-shadow:0 1px 0 rgba(16,31,50,.12)}
.btn-primario:hover{background:var(--cobre-hover);box-shadow:0 6px 18px rgba(199,166,107,.28)}
.btn-primario.flecha::after{content:"→";transition:transform var(--t)}
.btn-primario.flecha:hover::after{transform:translateX(3px)}
.btn-noche{background:var(--noche);color:#fff}
.btn-noche:hover{background:var(--noche-2)}
.btn-secundario{background:var(--blanco);color:var(--noche);border-color:var(--linea-2)}
.btn-secundario:hover{border-color:var(--noche)}
.sec-noche .btn-secundario,.pie .btn-secundario,.cta-final .btn-secundario{background:transparent;color:#fff;border-color:rgba(255,255,255,.45)}
.sec-noche .btn-secundario:hover,.cta-final .btn-secundario:hover{border-color:#fff;background:rgba(255,255,255,.06)}
.btn-wa{background:var(--wa);color:#fff}
.btn-wa:hover{background:var(--wa-2)}
.btn-s{min-height:44px;padding:10px 16px;font-size:15px}
.btn-bloque{width:100%;white-space:normal}
.btn[disabled]{opacity:.65;cursor:progress}
.acciones{display:flex;flex-wrap:wrap;gap:var(--s3);align-items:center}
@media (max-width:420px){.acciones .btn{width:100%}}
.link-flecha{display:inline-flex;align-items:center;gap:8px;font-weight:650;text-decoration:none;color:var(--cobre-txt)}
.link-flecha::after{content:"→";transition:transform var(--t)}
.link-flecha:hover::after{transform:translateX(3px)}
.link-flecha:hover{text-decoration:underline}

/* ---------- Insignias ---------- */
.badge{display:inline-flex;align-items:center;gap:6px;justify-self:start;padding:4px 10px;border-radius:999px;background:var(--hielo);color:var(--noche);font-size:12.5px;font-weight:650;line-height:1.3}
.badge-cobre{background:var(--cobre-suave);color:var(--cobre-txt)}
.badge-ok{background:var(--ok-suave);color:var(--ok)}
.badge-borde{background:transparent;border:1px solid var(--linea-2);color:var(--gris)}
.sec-noche .badge{background:rgba(255,255,255,.08);color:#fff}
.pendiente{display:inline;padding:0 5px;border:1px dashed #9a6a00;border-radius:4px;background:#fbefcf;color:#6e4b00;font-family:var(--mono);font-size:.85em}
.sello{display:inline-block;padding:5px 11px;border:2px solid var(--cobre-txt);border-radius:4px;color:var(--cobre-txt);font-family:var(--mono);font-weight:500;font-size:12px;letter-spacing:.14em;text-transform:uppercase;transform:rotate(-5deg)}

/* ---------- Íconos ---------- */
.ico{width:24px;height:24px;flex:none}
.ico-caja{display:grid;place-items:center;width:48px;height:48px;border-radius:var(--r-2);background:var(--hielo);color:var(--noche)}
.ico-caja svg{width:24px;height:24px}
.sec-hielo .ico-caja{background:var(--blanco)}
.sec-noche .ico-caja{background:rgba(255,255,255,.08);color:#fff}
.ico-inline{display:inline-block;width:16px;height:16px;vertical-align:-3px;margin-right:4px}

/* ---------- Encabezado ---------- */
.encabezado{position:sticky;top:0;z-index:100;background:var(--noche);color:#fff;transition:box-shadow var(--t)}
.encabezado.con-sombra{box-shadow:0 8px 24px rgba(16,31,50,.22)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);min-height:72px}
.marca{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:#fff;font-family:var(--titulos);font-weight:800;font-size:19px;letter-spacing:.02em;flex:none}
.marca svg{width:40px;height:26px}
.marca b{display:inline-flex;align-items:baseline;gap:.42em}
.marca span{font-weight:500;font-size:.72em;letter-spacing:.24em;color:#c9d3df}
.nav-links{display:none;list-style:none;align-items:center;gap:2px}
.nav-links a{display:flex;align-items:center;min-height:40px;padding:0 12px;border-radius:var(--r);color:#d5deea;font-size:15px;font-weight:550;text-decoration:none;transition:background-color var(--t),color var(--t)}
.nav-links a:hover{color:#fff;background:rgba(255,255,255,.07)}
.nav-links a[aria-current="page"]{color:#fff;background:rgba(255,255,255,.1)}
.nav-cta{display:none}
.btn-menu{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 14px;border:1.5px solid rgba(255,255,255,.35);border-radius:var(--r);background:transparent;color:#fff;font-weight:650;font-size:15px;cursor:pointer}
.btn-menu svg{width:20px;height:20px}
.menu-movil{border-top:1px solid rgba(255,255,255,.12);background:var(--noche);padding:var(--s2) 0 var(--s5);max-height:calc(100dvh - 72px);overflow:auto}
.menu-movil ul{list-style:none;display:grid}
.menu-movil a{display:flex;align-items:center;justify-content:space-between;min-height:54px;font-family:var(--titulos);font-size:19px;font-weight:650;color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.1)}
.menu-movil a::after{content:"→";color:var(--gris-claro);font-weight:400}
.menu-movil a[aria-current="page"]{color:#e2cc9f}
.menu-movil .btn{margin-top:var(--s5);width:100%;border-bottom:0;font-family:var(--sans);font-size:17px;justify-content:center;color:var(--noche)}
.menu-movil .btn::after{content:none}
@media (prefers-reduced-motion:no-preference){.menu-movil:not([hidden]){animation:baja .22s ease-out}}
@keyframes baja{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
@media (max-width:380px){.nav{gap:var(--s2)}.marca{font-size:16px;gap:7px}.marca svg{width:32px;height:21px}.btn-menu{padding:8px 10px}}
@media (min-width:1140px){.nav-links{display:flex}.nav-cta{display:inline-flex}.btn-menu,.menu-movil{display:none!important}}

/* ---------- Hero ---------- */
.hero{background:var(--blanco);padding-top:48px;overflow:hidden}
@media (min-width:1000px){.hero{padding-top:72px}}
.hero-grid{display:grid;gap:var(--s7);align-items:center}
@media (min-width:1000px){.hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:var(--s8)}}
.hero-texto{display:grid;gap:var(--s5);justify-items:start}
.hero-texto .lead{max-width:36em}
.hero-puntos{list-style:none;display:grid;gap:10px;width:100%;margin-top:var(--s2);padding-top:var(--s5);border-top:1px solid var(--linea)}
@media (min-width:560px){.hero-puntos{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px var(--s5)}}
.hero-puntos li{display:flex;gap:10px;align-items:flex-start;font-size:15.5px;font-weight:550;color:var(--noche);line-height:1.4}
.hero-puntos svg{width:20px;height:20px;flex:none;color:var(--ok);margin-top:1px}
.hero-visual{position:relative}

/* Proforma (cotización ilustrativa) */
.proforma{position:relative;background:var(--blanco);border:1px solid var(--linea);border-radius:var(--r-3);box-shadow:var(--sombra-3);padding:var(--s5);display:grid;gap:var(--s4);font-size:15px}
@media (min-width:640px){.proforma{padding:var(--s6)}}
.proforma-cab{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--s3);padding-bottom:var(--s3);border-bottom:1px solid var(--linea)}
.proforma-cab b{display:block;margin-top:4px;font-family:var(--titulos);font-size:18px;color:var(--noche)}
.proforma dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 16px;margin:0;font-size:14px}
.proforma dt{color:var(--gris)}
.proforma dd{margin:0;font-weight:600;color:var(--noche)}
.proforma table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.proforma th{font-size:12.5px;font-weight:600;color:var(--gris);text-align:left;padding:0 0 8px;border-bottom:1px solid var(--linea)}
.proforma th:last-child,.proforma td:last-child{text-align:right}
.proforma td{padding:9px 0;border-bottom:1px solid var(--hielo-2);color:var(--texto-2)}
.proforma td:last-child{font-family:var(--mono);white-space:nowrap;padding-left:12px;color:var(--noche)}
.proforma tr.total td{border-bottom:0;border-top:2px solid var(--noche);padding-top:12px;font-weight:750;font-size:16px;color:var(--noche)}
.proforma tr.total td:last-child{font-size:24px;font-weight:500;color:var(--cobre-txt)}
.proforma-pie{display:flex;flex-wrap:wrap;gap:8px}
.proforma-nota{font-size:13px;color:var(--gris);line-height:1.5;border-top:1px solid var(--linea);padding-top:var(--s3)}
.proforma .sello{position:absolute;top:20px;right:20px}

/* Contenedores ilustrados (identidad) */
.contenedores{margin-top:var(--s8);background:var(--hielo);border-top:1px solid var(--linea);overflow:hidden;line-height:0}
.contenedores svg{width:100%;height:auto;min-height:120px}
.muelle{background:var(--blanco);line-height:0;overflow:hidden}
.muelle.hielo{background:var(--hielo)}
.muelle svg{width:100%;height:auto;min-height:56px;display:block}
.pila{display:none}
@media (min-width:900px){.pila{display:block}.pila svg{width:100%;height:auto;display:block}}

/* Franja de valor */
.franja{background:var(--noche);color:#d5deea}
.franja ul{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.franja li{display:grid;gap:4px;padding:var(--s5) var(--s4) var(--s5) 0;min-width:0;border-bottom:1px solid rgba(255,255,255,.1)}
.franja li:nth-child(even){padding-left:var(--s4);border-left:1px solid rgba(255,255,255,.1)}
.franja span{font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--cobre)}
.franja b{font-size:15.5px;line-height:1.35;color:#fff;font-weight:600}
@media (min-width:900px){.franja ul{grid-template-columns:repeat(4,minmax(0,1fr))}.franja li{border-bottom:0;padding:var(--s6) var(--s5)}.franja li+li{border-left:1px solid rgba(255,255,255,.1)}.franja li:first-child{padding-left:0}}

/* ---------- Tarjetas ---------- */
.card{background:var(--blanco);border:1px solid var(--linea);border-radius:var(--r-2);padding:var(--s5);display:grid;gap:var(--s3);align-content:start;min-width:0;transition:border-color var(--t),box-shadow var(--t),transform var(--t)}
@media (min-width:640px){.card{padding:var(--s6)}}
.sec-hielo .card{border-color:transparent;box-shadow:var(--sombra-1)}
a.card,.card-link{text-decoration:none;color:inherit}
a.card:hover,.card-link:hover{border-color:var(--linea-2);box-shadow:var(--sombra-2);transform:translateY(-2px)}
.card h3{font-size:clamp(19px,1.9vw,21px)}
.card p{color:var(--texto-2)}
.card .link-flecha{margin-top:auto}
.card-noche{background:var(--noche);border-color:var(--noche);color:var(--gris-claro)}
.card-noche h3{color:#fff}
.card-destacada{border-color:var(--noche);box-shadow:var(--sombra-2)}

/* Lista con tilde y con raya */
.lista-check{list-style:none;display:grid;gap:9px;font-size:15.5px}
.lista-check li{display:flex;gap:10px;align-items:flex-start}
.lista-check li::before{content:"";flex:none;width:18px;height:18px;margin-top:3px;border-radius:50%;background:var(--ok-suave) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2316866a' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12.5 4 4L18 8'/%3E%3C/svg%3E") center/12px no-repeat}
.lista-no{list-style:none;display:grid;gap:9px;font-size:15.5px;color:var(--gris)}
.lista-no li{display:flex;gap:10px}
.lista-no li::before{content:"—";flex:none;color:var(--gris-claro)}
.lista-raya{list-style:none;display:grid;border-top:1px solid var(--linea)}
.lista-raya li{padding:11px 0;border-bottom:1px solid var(--linea);color:var(--texto-2)}
.lista-num{display:grid;gap:10px;padding-left:1.4em;color:var(--texto-2);font-size:15.5px}
.lista-num li::marker{font-family:var(--mono);color:var(--cobre-txt)}

/* ---------- Problemas que resolvemos ---------- */
.trio-valor{display:grid;gap:var(--s5)}
@media (min-width:900px){.trio-valor{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s6)}}
.trio-valor > div{display:grid;gap:var(--s3);align-content:start;padding-top:var(--s4);border-top:2px solid var(--noche)}
.trio-valor .etq{color:var(--gris)}

/* ---------- Servicios ---------- */
.servicio{display:grid;gap:var(--s4)}
.servicio-cab{display:flex;gap:var(--s4);align-items:flex-start;justify-content:space-between}
.servicio-precio{display:grid;gap:2px;padding:var(--s4);border-radius:var(--r);background:var(--hielo)}
.servicio-precio b{font-family:var(--titulos);font-size:20px;color:var(--noche)}
.servicio-precio span{font-size:14px;color:var(--gris)}
.servicio-detalle{display:grid;gap:var(--s6);padding:var(--s6) 0;border-top:1px solid var(--linea)}
.servicio-detalle:first-of-type{border-top:0;padding-top:0}
@media (min-width:960px){.servicio-detalle{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:var(--s8)}}
.servicio-cols{display:grid;gap:var(--s5)}
@media (min-width:640px){.servicio-cols{grid-template-columns:repeat(2,minmax(0,1fr))}}
.servicio-cols h4,.mini-tit{font-family:var(--sans);font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--gris);margin-bottom:var(--s3)}

/* Tabla comparativa y tablas de datos */
.tabla-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--linea);border-radius:var(--r-2);background:var(--blanco)}
.tabla{width:100%;border-collapse:collapse;font-size:15px;min-width:640px}
.tabla th,.tabla td{padding:14px 16px;text-align:left;vertical-align:top;border-bottom:1px solid var(--linea)}
.tabla thead th{background:var(--hielo);font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--gris)}
.tabla tbody th{font-weight:650;color:var(--noche)}
.tabla tr:last-child td,.tabla tr:last-child th{border-bottom:0}
.tabla .si{color:var(--ok);font-weight:650}
.tabla .no{color:var(--gris)}
.tabla-compacta{min-width:0}
.tabla-compacta th,.tabla-compacta td{padding:11px 14px}
.tabla-noche{background:transparent}
.sec-noche .tabla-scroll{background:transparent;border-color:rgba(255,255,255,.16)}
.sec-noche .tabla th,.sec-noche .tabla td{border-color:rgba(255,255,255,.12)}
.sec-noche .tabla thead th{background:rgba(255,255,255,.06);color:var(--gris-claro)}
.sec-noche .tabla tbody th{color:#fff}
.sec-noche .tabla td{color:#d5deea}
.tabla-margen tr.total th,.tabla-margen tr.total td{font-weight:750;color:var(--noche);background:var(--hielo)}
.tabla-margen .pos{color:var(--ok);font-weight:650}
.tabla-margen .neg{color:var(--err);font-weight:650}
.oculto.w3{width:30%}.oculto.w4{width:42%}.oculto.w5{width:55%}.oculto.w6{width:70%}

.alerta-calc p{margin:0}
.tabla-nota{margin-top:var(--s3);font-size:14px;color:var(--gris)}

/* ---------- Línea de tiempo ---------- */
.timeline{list-style:none;display:grid;gap:var(--s4);counter-reset:paso}
.timeline > li{position:relative;display:grid;gap:var(--s2);padding:var(--s5);padding-left:72px;background:var(--blanco);border:1px solid var(--linea);border-radius:var(--r-2)}
.sec-hielo .timeline > li{border-color:transparent;box-shadow:var(--sombra-1)}
.timeline > li::before{counter-increment:paso;content:counter(paso,decimal-leading-zero);position:absolute;left:var(--s5);top:var(--s5);display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--noche);color:#fff;font-family:var(--mono);font-size:13px;font-weight:500}
.timeline > li::after{content:"";position:absolute;left:calc(var(--s5) + 16px);top:calc(var(--s5) + 40px);bottom:calc(var(--s4) * -1 - 2px);width:2px;background:var(--linea-2)}
.timeline > li:last-child::after{display:none}
.timeline h3{font-size:19px}
.timeline p{font-size:15.5px}
.timeline .detalle{display:grid;gap:var(--s3);margin-top:var(--s2);padding-top:var(--s3);border-top:1px dashed var(--linea-2);font-size:14.5px}
.timeline .detalle b{display:block;font-size:12.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--gris);margin-bottom:2px}
@media (min-width:760px){.timeline .detalle{grid-template-columns:repeat(3,minmax(0,1fr))}}
/* Versión horizontal en escritorio (resumen del inicio) */
.timeline-h{list-style:none;display:grid;gap:var(--s4);counter-reset:paso}
.timeline-h li{position:relative;display:grid;gap:var(--s2);align-content:start;padding:var(--s5);background:var(--blanco);border:1px solid var(--linea);border-radius:var(--r-2)}
.sec-hielo .timeline-h li{border-color:transparent;box-shadow:var(--sombra-1)}
.timeline-h li::before{counter-increment:paso;content:counter(paso,decimal-leading-zero);font-family:var(--mono);font-size:13px;color:var(--cobre-txt);font-weight:500}
.timeline-h h3{font-size:17px}
.timeline-h p{font-size:14.5px;color:var(--gris)}
@media (min-width:700px){.timeline-h{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:1100px){
  .timeline-h{grid-template-columns:repeat(6,minmax(0,1fr));gap:0;background:var(--blanco);border:1px solid var(--linea);border-radius:var(--r-2);overflow:hidden}
  .sec-hielo .timeline-h{border-color:transparent;box-shadow:var(--sombra-1)}
  .timeline-h li,.sec-hielo .timeline-h li{border:0;border-radius:0;box-shadow:none;padding:var(--s6) var(--s5)}
  .timeline-h li+li{border-left:1px solid var(--linea)}
  .timeline-h li::after{content:"";position:absolute;top:calc(var(--s6) + 8px);left:calc(var(--s5) + 30px);right:0;height:2px;background:linear-gradient(90deg,var(--linea-2) 50%,transparent 0) 0 0/8px 2px}
}

/* ---------- Rubros ---------- */
.rubros{display:grid;gap:var(--s3);grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr))}
.rubro{display:grid;gap:var(--s3);align-content:start;padding:var(--s5);background:var(--blanco);border:1px solid var(--linea);border-radius:var(--r-2)}
.sec-hielo .rubro{border-color:transparent;box-shadow:var(--sombra-1)}
.rubro h3{font-size:18px}
.rubro p{font-size:15px;color:var(--gris)}
.rubro .nota-rubro{font-size:13.5px;color:var(--aviso);background:var(--aviso-suave);border-radius:var(--r);padding:8px 10px;line-height:1.45}
.rubro .link-flecha{font-size:15px}
.aviso{display:grid;gap:var(--s2);margin-top:var(--s6);padding:var(--s5);border:1px solid var(--linea);border-left:4px solid var(--cobre);border-radius:var(--r);background:var(--blanco);font-size:15.5px;color:var(--texto-2)}
@media (min-width:900px){.aviso.dos{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s6)}}
.aviso b{color:var(--noche)}

/* Marca propia */
.marca-propia{display:grid;gap:var(--s6);padding:var(--s6);border-radius:var(--r-3);background:var(--noche);color:var(--gris-claro)}
@media (min-width:900px){.marca-propia{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:var(--s8);gap:var(--s8)}}
.marca-propia h2,.marca-propia h3{color:#fff}
.marca-propia .lista-num{color:#d5deea}
.marca-propia .lista-num li::marker{color:var(--cobre)}
.marca-propia .lead,.marca-propia p{color:#d5deea}
.marca-propia .etq{color:var(--cobre)}

/* ---------- Transparencia / Cotización por escrito ---------- */
.transp{display:grid;gap:var(--s3);grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr))}
.transp li{list-style:none;display:grid;gap:var(--s2);align-content:start;padding:var(--s5);border-radius:var(--r-2);background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1)}
.transp b{color:#fff;font-size:16.5px;font-family:var(--titulos)}
.transp span{font-size:14.5px;color:var(--gris-claro)}
.ficha{margin:0;border-top:2px solid var(--noche)}
.ficha div{display:grid;gap:4px;padding:var(--s4) 0;border-bottom:1px solid var(--linea)}
@media (min-width:560px){.ficha div{grid-template-columns:180px minmax(0,1fr);gap:var(--s5)}}
.ficha dt{font-size:13px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--gris);padding-top:2px}
.ficha dd{margin:0;color:var(--texto-2)}
.ficha dd b{color:var(--noche)}
.sec-noche .ficha{border-color:rgba(255,255,255,.6)}
.sec-noche .ficha div{border-color:rgba(255,255,255,.12)}
.sec-noche .ficha dt{color:var(--cobre)}
.sec-noche .ficha dd{color:#d5deea}
.sec-noche .ficha dd b{color:#fff}

/* ---------- Guía de proveedores ---------- */
.guia{display:grid;gap:var(--s7);align-items:center}
@media (min-width:900px){.guia{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:var(--s8)}}
.guia-texto{display:grid;gap:var(--s5);justify-items:start}
.guia-precio{display:flex;align-items:baseline;gap:var(--s3);flex-wrap:wrap}
.guia-precio b{font-family:var(--titulos);font-size:46px;font-weight:800;letter-spacing:-.03em;line-height:1;color:var(--noche)}
.guia-precio span{font-size:15px;color:var(--gris)}
.paypal-nota{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--gris)}
.paypal-nota svg{width:18px;height:18px;flex:none;margin-top:2px}
.libro{position:relative;max-width:300px;margin-inline:auto;width:100%;padding:0 18px 18px 0}
@media (max-width:899px){.libro{max-width:220px}}
.libro-tapa{position:relative;min-height:360px;gap:var(--s5);border-radius:6px 14px 14px 6px;background:var(--noche);color:#fff;box-shadow:18px 18px 0 var(--cobre),var(--sombra-3);padding:var(--s5);display:grid;align-content:space-between}
.libro-tapa::before{content:"";position:absolute;left:12px;top:0;bottom:0;width:2px;background:rgba(255,255,255,.12)}
.libro-tapa .etq{color:var(--cobre)}
.libro-tapa b{font-family:var(--titulos);font-size:clamp(24px,3vw,30px);font-weight:800;line-height:1.05;letter-spacing:-.02em}
.libro-tapa ul{list-style:none;display:grid;gap:6px;font-family:var(--mono);font-size:11.5px;letter-spacing:.04em;color:#c8d3e0}
.libro-tapa ul li{display:flex;justify-content:space-between;gap:10px;border-bottom:1px dotted rgba(255,255,255,.2);padding-bottom:4px}
.ficha-muestra{display:grid;gap:0;border:1px solid var(--linea);border-radius:var(--r-2);overflow:hidden;background:var(--blanco)}
.ficha-muestra > div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:var(--s4);padding:12px var(--s4);border-bottom:1px solid var(--linea);font-size:14.5px}
.ficha-muestra > div:last-child{border-bottom:0}
.ficha-muestra dt{font-weight:650;color:var(--noche)}
.ficha-muestra dd{margin:0;color:var(--gris)}
.oculto{display:inline-block;height:10px;border-radius:4px;background:repeating-linear-gradient(90deg,var(--hielo-2) 0 10px,var(--linea) 10px 12px);vertical-align:middle}
.ficha-muestra .cab{background:var(--noche);color:#fff;grid-template-columns:1fr auto}
.ficha-muestra .cab b{font-family:var(--titulos)}
.ficha-muestra .cab span{font-family:var(--mono);font-size:12px;color:var(--gris-claro)}

/* ---------- Calculadora ---------- */
.calc{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s5);align-items:start}
@media (min-width:1040px){.calc{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr)}.calc-res{position:sticky;top:96px}}
.panel{background:var(--blanco);border:1px solid var(--linea);border-radius:var(--r-3);padding:var(--s5);display:grid;gap:var(--s5);min-width:0;box-shadow:var(--sombra-1)}
@media (min-width:640px){.panel{padding:var(--s6)}}
.panel-tit{display:flex;justify-content:space-between;align-items:center;gap:var(--s3);padding-bottom:var(--s3);border-bottom:1px solid var(--linea)}
.panel-tit h2{font-size:19px}
.paso-calc{border:0;margin:0;padding:0;min-width:0;display:grid;gap:var(--s4);padding-bottom:var(--s5);border-bottom:1px solid var(--linea)}
.paso-calc:last-of-type{border-bottom:0;padding-bottom:0}
.paso-calc > h3{display:flex;gap:10px;align-items:center;font-size:16px}
.paso-calc > h3 span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--hielo);font-family:var(--mono);font-size:12px;font-weight:500;color:var(--noche)}
.fila-3{display:grid;gap:var(--s3);grid-template-columns:repeat(auto-fit,minmax(92px,1fr))}
.fila-3 .con-unidad input{padding-right:40px}
.segmento{display:grid;grid-template-columns:1fr 1fr;padding:4px;gap:4px;background:var(--hielo);border-radius:var(--r)}
.segmento button{min-height:42px;border:0;border-radius:6px;background:transparent;color:var(--gris);font-size:14.5px;font-weight:650;cursor:pointer;padding:8px 10px;line-height:1.25;transition:background-color var(--t),color var(--t)}
.segmento button[aria-pressed="true"]{background:var(--blanco);color:var(--noche);box-shadow:var(--sombra-1)}
.avanzado{border:1px solid var(--linea);border-radius:var(--r);background:var(--hielo)}
.avanzado > summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:12px;padding:14px var(--s4);font-weight:650;color:var(--noche)}
.avanzado > summary::-webkit-details-marker{display:none}
.avanzado > summary::after{content:"+";font-family:var(--mono);font-size:20px;line-height:1;color:var(--gris)}
.avanzado[open] > summary::after{content:"−"}
.avanzado > div{display:grid;gap:var(--s4);padding:0 var(--s4) var(--s4)}
.resultado-principal{display:grid;gap:6px;padding:var(--s5);border-radius:var(--r-2);background:var(--noche);color:var(--gris-claro)}
.resultado-principal span{font-size:14px}
.resultado-principal output{font-family:var(--titulos);font-size:clamp(40px,6vw,56px);font-weight:800;letter-spacing:-.03em;line-height:1;color:#fff;font-variant-numeric:tabular-nums}
.resultado-principal em{font-style:normal;font-size:14.5px;font-weight:600;color:#e2cc9f}
.kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s3)}
.kpi{display:grid;gap:4px;padding:var(--s4);border:1px solid var(--linea);border-radius:var(--r);min-width:0}
.kpi span{font-size:13px;color:var(--gris);line-height:1.35}
.kpi output{font-family:var(--titulos);font-size:clamp(17px,4.6vw,21px);white-space:nowrap;font-weight:750;color:var(--noche);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.kpi small{font-size:12.5px;color:var(--gris);line-height:1.4}
.composicion{display:flex;height:14px;border-radius:999px;overflow:hidden;background:var(--hielo)}
.composicion i{display:block;height:100%;width:var(--w,0%);background:var(--c,var(--noche));transition:width .35s ease}
.leyenda{list-style:none;display:grid;gap:8px;font-size:14px}
.leyenda li{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:10px;align-items:center}
.leyenda i{width:12px;height:12px;border-radius:3px;background:var(--c)}
.leyenda b{font-family:var(--mono);font-weight:500;color:var(--noche);font-size:13.5px}
.leyenda .sub{grid-column:2 / -1;font-size:12.5px;color:var(--gris);margin-top:-6px}
.escenarios{display:grid;gap:var(--s3)}
.escenarios{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.escenario{display:grid;gap:6px;padding:var(--s4);border-radius:var(--r);background:var(--hielo)}
.escenario span{font-size:13px;color:var(--gris)}
.escenario b{font-family:var(--titulos);font-size:19px;color:var(--noche);font-variant-numeric:tabular-nums}
.escenario small{font-size:12.5px;color:var(--gris)}
.escenario .mejor{color:var(--ok);font-weight:650}
.tabla-margen td:not(:first-child),.tabla-margen th:not(:first-child){text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.pos{color:var(--ok)}.neg{color:var(--err)}
.alerta-calc{display:grid;gap:6px;padding:var(--s3) var(--s4);border-radius:var(--r);background:var(--aviso-suave);color:#6e4b00;font-size:14px;line-height:1.5}
.alerta-calc svg{width:18px;height:18px;flex:none;margin-top:2px}
.descargo{font-size:13.5px;color:var(--gris);line-height:1.6}
.descargo b{color:var(--noche)}
.salto{display:grid;gap:var(--s4);padding:var(--s6);border:1px solid rgba(255,255,255,.18);border-radius:var(--r-3);background:rgba(255,255,255,.03)}
.salto-fila{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);flex-wrap:wrap}
.salto-fila div{display:grid;gap:4px}
.salto-fila span{font-size:13px;color:var(--gris-claro)}
.salto-fila b{font-family:var(--titulos);font-size:clamp(28px,4vw,40px);font-weight:800;color:#fff;font-variant-numeric:tabular-nums}
.salto-fila b.acento{color:var(--cobre)}
.salto-flecha{width:32px;height:32px;color:var(--cobre)}
.salto p{font-size:13.5px;color:var(--gris-claro)}
.teaser{display:grid;gap:var(--s7);align-items:center}
@media (min-width:940px){.teaser{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}}
.teaser .sec-head{margin-bottom:0}

/* ---------- Formularios ---------- */
.campo{display:grid;gap:6px;min-width:0}
fieldset.campo{border:0;padding:0;margin:0}
fieldset.campo legend{padding:0;margin-bottom:8px}
.campo label,.campo .etq-campo,.campo legend{font-size:15px;font-weight:650;color:var(--noche)}
.campo .opc{font-weight:400;color:var(--gris)}
.campo .ayuda{font-size:13.5px;color:var(--gris);line-height:1.45}
.campo input,.campo select,.campo textarea{width:100%;min-height:48px;padding:11px 14px;border:1.5px solid var(--linea-2);border-radius:var(--r);background:var(--blanco);color:var(--noche);font-size:16px;transition:border-color var(--t),box-shadow var(--t)}
.campo select{appearance:none;padding-right:40px;background:var(--blanco) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2314243b' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 12px center/18px no-repeat}
.campo textarea{min-height:110px;resize:vertical}
.campo input::placeholder,.campo textarea::placeholder{color:#8593a6}
.campo input:hover,.campo select:hover,.campo textarea:hover{border-color:#a9b6c6}
.campo input:focus,.campo select:focus,.campo textarea:focus{outline:none;border-color:var(--noche);box-shadow:0 0 0 3px rgba(199,166,107,.28)}
.campo input:disabled{background:var(--hielo);color:var(--gris)}
.campo [aria-invalid="true"]{border-color:var(--err);background:var(--err-suave)}
.campo .error{font-size:14px;font-weight:600;color:var(--err);display:flex;gap:6px;align-items:flex-start}
.campo .error:empty{display:none}
.campo .error::before{content:"!";flex:none;display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:var(--err);color:#fff;font-size:12px;font-weight:800;margin-top:1px}
.con-unidad{position:relative}
.con-unidad input{padding-right:58px}
.con-unidad i{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-style:normal;font-size:13.5px;font-weight:600;color:var(--gris);pointer-events:none}
.fila{display:grid;gap:var(--s4);align-items:start}
@media (min-width:600px){.fila{grid-template-columns:repeat(2,minmax(0,1fr))}}
.check{display:flex;gap:12px;align-items:flex-start;font-size:15px;color:var(--texto-2);cursor:pointer}
.check input{width:22px;height:22px;flex:none;margin:1px 0 0;accent-color:var(--noche)}
.trampa{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
.chips{display:flex;flex-wrap:wrap;gap:8px;border:0;padding:0;margin:0;min-width:0}
.chips label{position:relative;display:inline-flex;align-items:center;min-height:44px;padding:9px 15px;border:1.5px solid var(--linea-2);border-radius:999px;background:var(--blanco);font-size:15px;font-weight:550;color:var(--noche);cursor:pointer;transition:border-color var(--t),background-color var(--t)}
.chips input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.chips label:hover{border-color:var(--noche)}
.chips label:has(input:checked){border-color:var(--noche);background:var(--noche);color:#fff}
.chips label:has(input:focus-visible){outline:3px solid var(--cobre);outline-offset:2px}
.archivo{position:relative;display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:10px;border:1.5px dashed var(--linea-2);border-radius:var(--r);background:var(--hielo)}
.archivo input{position:absolute;opacity:0;width:1px;height:1px}
.archivo input:focus-visible + label{outline:3px solid var(--cobre);outline-offset:3px}
.archivo label{cursor:pointer}
.archivo-nombre{font-size:14px;color:var(--gris);min-width:0;overflow-wrap:anywhere}
.archivo:has([aria-invalid="true"]){border-color:var(--err);background:var(--err-suave)}

/* Cotizador por etapas */
.cotizador{display:grid;gap:var(--s6)}
@media (min-width:1000px){.cotizador{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:var(--s8);align-items:start}}
.cotizador-lado{display:grid;gap:var(--s5)}
@media (max-width:999px){.cotizador-lado{order:2}}
@media (min-width:1000px){.cotizador-lado{position:sticky;top:100px}}
.lado-bloque{display:grid;gap:var(--s3);padding:var(--s5);border-radius:var(--r-2);background:var(--hielo)}
.form-card{background:var(--blanco);border:1px solid var(--linea);border-radius:var(--r-3);box-shadow:var(--sombra-2);padding:var(--s5);display:grid;gap:var(--s5);min-width:0}
@media (min-width:640px){.form-card{padding:var(--s7)}}
.etapas{list-style:none;display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.etapas li{height:6px;border-radius:999px;background:var(--hielo-2);transition:background-color .3s}
.etapas li.hecha{background:var(--noche)}
.etapas li.actual{background:var(--cobre)}
.etapa-info{display:flex;justify-content:space-between;gap:12px;font-size:13.5px;color:var(--gris)}
.etapa-info b{color:var(--noche)}
.etapa{border:0;padding:0;margin:0;display:grid;gap:var(--s5);min-width:0}
.etapa > legend{padding:0;margin-bottom:var(--s2);font-family:var(--titulos);font-size:clamp(22px,3vw,28px);font-weight:780;color:var(--noche);letter-spacing:-.02em;line-height:1.15}
.js .etapa:not(.activa){display:none}
@media (prefers-reduced-motion:no-preference){.js .etapa.activa{animation:entra .28s ease-out}}
@keyframes entra{from{opacity:0;transform:translateX(10px)}to{opacity:1;transform:none}}
.nav-etapas{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;padding-top:var(--s4);border-top:1px solid var(--linea)}
.nav-etapas .btn{min-width:150px}
.btn-atras{background:none;border:0;color:var(--noche);font-weight:650;font-size:16px;min-height:48px;padding:0 4px;cursor:pointer;text-decoration:underline;text-underline-offset:4px}
.btn-atras:disabled{visibility:hidden}
.solo-js{display:none}
.js .solo-js{display:grid}
.js .nav-etapas.solo-js{display:flex}
.resumen{display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr);margin:0;font-size:15px;border-top:1px solid var(--linea)}
.resumen dt,.resumen dd{padding:9px 0;border-bottom:1px solid var(--linea)}
.resumen dt{color:var(--gris);padding-right:var(--s4)}
.resumen dd{margin:0;font-weight:600;color:var(--noche);overflow-wrap:anywhere}
.alerta{padding:var(--s4);border-radius:var(--r);border-left:4px solid var(--err);background:var(--err-suave);color:var(--err);font-weight:600;font-size:15px}
.ok-msg{padding:var(--s4);border-radius:var(--r);border-left:4px solid var(--ok);background:var(--ok-suave);color:var(--ok);font-weight:600;font-size:15px}
.separador{display:flex;align-items:center;gap:12px;font-size:13.5px;color:var(--gris)}
.separador::before,.separador::after{content:"";flex:1;height:1px;background:var(--linea)}
.wa-lista{display:flex;flex-wrap:wrap;gap:var(--s3)}
.spinner{display:inline-block;width:16px;height:16px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:gira .7s linear infinite}
@keyframes gira{to{transform:rotate(360deg)}}

/* ---------- Socios ---------- */
.nosotros-grid{display:grid;gap:var(--s7);align-items:start}
@media (min-width:940px){.nosotros-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--s8)}}
.duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s3)}
@media (min-width:640px){.duo{gap:var(--s4)}}
.socio{margin:0;display:grid;gap:var(--s3);min-width:0}
.socio-foto{position:relative;aspect-ratio:4/5;border-radius:var(--r-2);overflow:hidden;background:var(--noche)}
.socio img{width:100%;height:100%;object-fit:cover;object-position:center top}
.socio-espera{position:absolute;inset:0;display:grid;align-content:end;gap:6px;padding:var(--s4);color:#d5deea;background:var(--noche)}
.socio-espera svg{position:absolute;inset:auto 0 0 0;width:100%;height:auto;opacity:.95}
.socio-espera span{position:relative;font-family:var(--mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--gris-claro)}
.socio figcaption{display:grid;gap:2px}
.socio figcaption b{font-family:var(--titulos);font-size:18px;color:var(--noche)}
.socio figcaption span{font-size:14px;color:var(--gris)}
.socio .btn{justify-self:start}
.galeria{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s3)}
@media (min-width:900px){.galeria{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s4)}}
.galeria figure{margin:0;display:grid;gap:8px;min-width:0}
.galeria img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r-2)}
.galeria figcaption{font-size:13.5px;color:var(--gris)}

/* ---------- Aprendé / artículos ---------- */
.articulos{display:grid;gap:var(--s4);grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr))}
.articulo-card{display:grid;gap:var(--s3);align-content:start}
.articulo-card .meta{font-size:13.5px;color:var(--gris)}
.articulo{display:grid;gap:var(--s7)}
@media (min-width:1000px){.articulo{grid-template-columns:minmax(0,1fr) 300px;gap:var(--s8);align-items:start}}
.articulo .prosa{font-size:17.5px;max-width:68ch}
.articulo .prosa h2{scroll-margin-top:100px}
.articulo-lado{display:grid;gap:var(--s4)}
@media (min-width:1000px){.articulo-lado{position:sticky;top:100px}}
.indice{display:grid;gap:6px;padding:var(--s5);border-radius:var(--r-2);background:var(--hielo);font-size:15px}
.indice a{color:var(--noche);text-decoration:none}
.indice a:hover{color:var(--cobre-txt);text-decoration:underline}
.fuente{font-size:14px;color:var(--gris);border-top:1px solid var(--linea);padding-top:var(--s4)}
.recuadro{padding:var(--s5);border-radius:var(--r-2);background:var(--hielo);border-left:4px solid var(--noche)}
.ofertas{display:grid;gap:var(--s4)}
@media (min-width:900px){.ofertas{grid-template-columns:repeat(3,minmax(0,1fr))}}
.viaje{display:grid;gap:var(--s5);padding:var(--s6);border-radius:var(--r-3);background:var(--hielo)}
@media (min-width:900px){.viaje{grid-template-columns:auto minmax(0,1fr);gap:var(--s8);align-items:center;padding:var(--s7)}}
.viaje .fecha{font-family:var(--titulos);font-size:clamp(48px,8vw,96px);font-weight:800;letter-spacing:-.04em;line-height:.95;color:var(--noche)}
.viaje .grid{justify-items:start}

/* ---------- Preguntas ---------- */
.faq-grid{display:grid;gap:var(--s6)}
@media (min-width:960px){.faq-grid{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:var(--s8)}}
.faq{display:grid;gap:var(--s2)}
.faq details{border:1px solid var(--linea);border-radius:var(--r-2);background:var(--blanco);transition:border-color var(--t),box-shadow var(--t)}
.sec-hielo .faq details{border-color:transparent;box-shadow:var(--sombra-1)}
.faq details[open]{border-color:var(--linea-2);box-shadow:var(--sombra-1)}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:var(--s4);padding:18px var(--s5);font-family:var(--titulos);font-size:clamp(16.5px,1.8vw,18px);font-weight:700;color:var(--noche);line-height:1.35}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";flex:none;width:28px;height:28px;border-radius:50%;background:var(--hielo) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2314243b' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center/14px no-repeat;transition:transform var(--t)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding:0 var(--s5) var(--s5);color:var(--texto-2);max-width:70ch}
.faq-grupo{display:grid;gap:var(--s4)}
.faq-grupo + .faq-grupo{margin-top:var(--s7)}
.faq-grupo h2{font-size:22px}

/* ---------- Llamado final ---------- */
.cta-final{background:var(--noche);color:var(--gris-claro)}
.cta-final .wrap{display:grid;gap:var(--s6);padding-block:var(--s8)}
@media (min-width:900px){.cta-final .wrap{grid-template-columns:minmax(0,1.3fr) auto;align-items:end;padding-block:var(--s9)}}
.cta-final h2{color:#fff;font-size:clamp(30px,4.6vw,52px);font-weight:800;letter-spacing:-.03em}
.cta-final p{color:#d5deea;max-width:36em;margin-top:var(--s4);font-size:18px}

/* ---------- Página interna ---------- */
.cabecera-pag{background:var(--hielo);border-bottom:1px solid var(--linea)}
.cabecera-grid{display:grid;gap:var(--s6);align-items:end;padding-top:48px}
@media (min-width:900px){.cabecera-grid{grid-template-columns:minmax(0,1fr) 300px;padding-top:72px}}
.cabecera-texto{display:grid;gap:var(--s4);padding-bottom:48px}
@media (min-width:900px){.cabecera-texto{padding-bottom:64px}}
.cabecera-pag .lead{max-width:42em}
.migas{font-size:14px;color:var(--gris)}
.migas a{color:var(--gris)}
.borrador{display:flex;gap:12px;align-items:flex-start;padding:var(--s4) var(--s5);border:1.5px dashed #9a6a00;border-radius:var(--r);background:#fbefcf;color:#4d3500;font-size:15px}
.borrador svg{width:20px;height:20px;flex:none;margin-top:2px}
.estado{display:grid;gap:var(--s5);justify-items:start;max-width:720px}
.estado-ico{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--ok-suave);color:var(--ok)}
.estado-ico svg{width:28px;height:28px}
.id-consulta{display:inline-flex;gap:10px;align-items:center;padding:10px 14px;border-radius:var(--r);background:var(--hielo);font-family:var(--mono);font-size:15px;color:var(--noche)}
.glosario{display:grid;margin:0;border-top:2px solid var(--noche)}
.glosario div{display:grid;gap:4px;padding:var(--s4) 0;border-bottom:1px solid var(--linea)}
@media (min-width:640px){.glosario div{grid-template-columns:220px minmax(0,1fr);gap:var(--s5)}}
.glosario dt{font-weight:700;color:var(--noche)}
.glosario dd{margin:0;color:var(--texto-2)}

/* ---------- WhatsApp flotante ---------- */
.fab{position:fixed;right:max(16px,env(safe-area-inset-right,0px));bottom:max(16px,env(safe-area-inset-bottom,0px));z-index:90;display:grid;justify-items:end;gap:10px}
.fab-btn{width:56px;height:56px;border-radius:50%;border:0;background:var(--wa);color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.25);transition:background-color var(--t),transform var(--t)}
.fab-btn:hover{background:var(--wa-2);transform:scale(1.04)}
.fab-btn svg{width:28px;height:28px}
@media (max-width:759px){.fab-btn{width:50px;height:50px}.fab-btn svg{width:25px;height:25px}}
.fab-menu{background:var(--blanco);border:1px solid var(--linea);border-radius:var(--r-2);box-shadow:var(--sombra-3);display:grid;min-width:250px;overflow:hidden}
.fab-menu p{font-size:13px;font-weight:600;color:var(--gris);padding:12px 16px 8px}
.fab-menu a{display:grid;gap:2px;padding:12px 16px;text-decoration:none;color:var(--noche);border-top:1px solid var(--linea)}
.fab-menu a:hover{background:var(--hielo)}
.fab-menu b{font-size:15px}
.fab-menu span{font-size:13px;color:var(--gris)}
body.pag-cotizar .fab{display:none}
/* Asistente */
.bot{width:min(370px,calc(100vw - 32px));max-height:min(620px,calc(100vh - 110px));grid-template-rows:auto auto minmax(0,1fr) auto auto auto}
.bot-cab{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 16px;background:var(--noche);color:#fff}
.bot-cab div{display:grid;gap:2px}
.bot-cab b{font-family:var(--titulos);font-size:16px}
.bot-cab span{font-size:12.5px;color:var(--gris-claro)}
.bot-cerrar{flex:none;width:32px;height:32px;display:grid;place-items:center;border:0;border-radius:50%;background:rgba(255,255,255,.08);color:#fff;cursor:pointer}
.bot-cerrar svg{width:18px;height:18px}
.bot-wa{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px 12px;border-bottom:1px solid var(--linea)}
.fab-menu .bot-wa a{display:flex;align-items:center;justify-content:center;gap:6px;padding:9px 8px;border:1px solid var(--linea);border-radius:var(--r);color:var(--wa);font-size:14px}
.fab-menu .bot-wa a b{font-size:14px}
.bot-wa svg{width:17px;height:17px;flex:none}
.bot-log{overflow-y:auto;display:grid;align-content:start;gap:8px;padding:12px;background:var(--hielo);min-height:120px;overscroll-behavior:contain}
.bot-msg{max-width:88%;padding:9px 12px;border-radius:12px 12px 12px 4px;background:var(--blanco);border:1px solid var(--linea);font-size:14.5px;line-height:1.5;color:var(--texto-2);white-space:pre-line}
.bot-msg.yo{justify-self:end;border-radius:12px 12px 4px 12px;background:var(--noche);border-color:var(--noche);color:#fff}
.bot-msg a{color:var(--cobre-txt);font-weight:650}
.bot-opciones{display:flex;flex-wrap:wrap;gap:6px;padding:10px 12px}
.bot-opciones:empty{display:none}
.bot-opciones button,.bot-opciones a{border:1px solid var(--linea-2);background:var(--blanco);color:var(--noche);border-radius:999px;padding:7px 12px;font:600 13.5px var(--sans);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:6px}
.bot-opciones button:hover,.bot-opciones a:hover{border-color:var(--noche)}
.bot-opciones .prim{background:var(--cobre);border-color:var(--cobre);color:var(--noche)}
.bot-opciones .wa{background:var(--wa);border-color:var(--wa);color:#fff}
.bot-opciones svg{width:15px;height:15px}
.bot-form{display:flex;gap:8px;padding:0 12px 10px}
.bot-form[hidden]{display:none}
.bot-form input{flex:1;min-width:0;min-height:40px;border:1px solid var(--linea-2);border-radius:var(--r);padding:8px 10px;font:15px var(--sans);color:var(--noche)}
.fab-menu .bot-nota{font-size:11.5px;font-weight:400;line-height:1.4;padding:8px 14px 12px;border-top:1px solid var(--linea)}
html:not(.js) .bot-log,html:not(.js) .bot-opciones{display:none}

/* Entrada del inicio: se ve una vez por visita, no bloquea clics y respeta «reducir movimiento» */
.intro{display:none}
@media (prefers-reduced-motion:no-preference){
  .js:not(.sin-intro) .intro{display:grid;place-items:center;position:fixed;inset:0;z-index:200;background:var(--noche);pointer-events:none;animation:intro-sale .45s ease 1.05s forwards}
  .intro-marca{display:flex;align-items:center;gap:16px;color:#fff;font:800 clamp(28px,6vw,44px)/1 var(--titulos);letter-spacing:.01em}
  .intro-marca span{font-weight:500;color:var(--gris-claro)}
  .intro-marca svg{width:clamp(64px,12vw,92px);overflow:visible}
  .intro-marca g{animation:intro-cae .5s cubic-bezier(.3,1.4,.5,1) backwards}
  .intro-marca .c1{animation-delay:.05s}.intro-marca .c2{animation-delay:.18s}.intro-marca .c3{animation-delay:.34s}
  .intro-marca b{animation:intro-texto .45s ease .45s backwards}
}
@keyframes intro-cae{from{transform:translateY(-40px);opacity:0}}
@keyframes intro-texto{from{opacity:0;transform:translateX(-10px)}}
@keyframes intro-sale{to{opacity:0;visibility:hidden}}

/* ---------- Pie ---------- */
.pie{background:var(--noche);color:var(--gris-claro);font-size:15px;padding-top:var(--s8)}
.pie a{color:#fff;text-decoration:none}
.pie a:hover{text-decoration:underline}
.pie-grid{display:grid;gap:var(--s6);padding-bottom:var(--s7)}
@media (min-width:760px){.pie-grid{grid-template-columns:1.4fr 1fr 1fr 1.1fr}}
.pie h2{font-family:var(--sans);font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#8ea0b8;margin-bottom:var(--s3)}
.pie ul{list-style:none;display:grid;gap:2px}
.pie ul a{display:inline-block;padding:6px 0;color:#e2e8f0}
.pie-legal{border-top:1px solid rgba(255,255,255,.12);padding-block:var(--s5) calc(var(--s7) + 40px);display:grid;gap:8px;font-size:13.5px;line-height:1.7;color:#a8b5c7}

/* ---------- Movimiento ---------- */
@media (prefers-reduced-motion:no-preference){
  .aparece{animation:aparece .6s cubic-bezier(.2,.7,.2,1) both}
  .d1{animation-delay:.06s}.d2{animation-delay:.12s}.d3{animation-delay:.18s}
  .js .revela{opacity:0;transform:translateY(14px);transition:opacity .6s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1)}
  .js .revela.visto{opacity:1;transform:none}
}
@keyframes aparece{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}

/* ---------- Impresión (calculadora a PDF) ---------- */
@media print{
  .intro,.encabezado,.pie,.fab,.cta-final,.muelle,.no-imprimir,.cabecera-pag .pila{display:none!important}
  body{font-size:12pt;color:#000;background:#fff}
  .sec{padding-block:12pt}
  .calc{display:block!important}
  .calc-res{position:static!important;margin-top:12pt}
  .panel{border:1pt solid #c7d1dd;padding:10pt}
  .composicion{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .leyenda i{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  a[href^="http"]::after{content:""}
  .panel,.resultado-principal{box-shadow:none;break-inside:avoid}
  .resultado-principal{background:#fff;color:#000;border:1.5pt solid #101f32}
  .resultado-principal output{color:#000}
  .avanzado{display:block}
  .solo-impresion{display:block!important}
  .js .revela{opacity:1!important;transform:none!important}
}
.solo-impresion{display:none}

.servicio-precio .precio-etq{font-family:var(--mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--gris)}
.honorarios{border:1px solid var(--linea);border-radius:var(--r);background:var(--blanco)}
.honorarios > summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:12px;padding:12px var(--s4);font-size:14.5px;color:var(--texto-2)}
.honorarios > summary::-webkit-details-marker{display:none}
.honorarios > summary b{color:var(--noche);font-variant-numeric:tabular-nums;white-space:nowrap}
.honorarios > summary span::after{content:" · ver detalle";color:var(--cobre-txt);font-weight:600}
.honorarios[open] > summary span::after{content:" · ocultar"}
.honorarios dl{display:grid;gap:10px;margin:0;padding:0 var(--s4) var(--s4);font-size:14px}
.honorarios dt{font-weight:650;color:var(--noche)}
.honorarios dd{margin:2px 0 0;color:var(--gris)}
/* Pagos */
.ficha-pago{position:relative;display:grid;gap:var(--s4);padding:var(--s5);border-radius:var(--r-3);background:var(--blanco);border:1px solid var(--linea);box-shadow:var(--sombra-2)}
.ficha-pago dl{display:grid;margin:0;border-top:1px solid var(--linea)}
.ficha-pago dl div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:var(--s3);padding:10px 0;border-bottom:1px solid var(--linea);font-size:14.5px}
.ficha-pago dt{color:var(--gris)}
.ficha-pago dd{margin:0;color:var(--noche);font-weight:600}
.ficha-pago .mono{font-family:var(--mono);font-weight:500}
.estados{display:grid;gap:10px;margin:0}
.estados div{display:grid;grid-template-columns:140px minmax(0,1fr);gap:var(--s3);align-items:baseline;font-size:14.5px}
.estados dd{margin:0;color:var(--texto-2)}
.estado-pago{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12.5px;font-weight:700;border:1px solid transparent}
.estado-pago.pendiente{background:var(--hielo-2);color:var(--noche)}
.estado-pago.verificacion{background:var(--aviso-suave);color:#6e4b00}
.estado-pago.confirmado{background:var(--ok-suave);color:var(--ok)}
.estado-pago.vencido{background:var(--err-suave);color:var(--err)}
.estado-pago.cancelado{background:var(--blanco);color:var(--gris);border-color:var(--linea-2)}
@media (max-width:520px){.ficha-pago dl div,.estados div{grid-template-columns:1fr;gap:4px}}

/* ---------- Fondos decorativos (sutiles, sin bloquear clics ni lectura) ---------- */
.deco,.cabecera-pag{position:relative;isolation:isolate}
.deco::before,.cabecera-pag::before{content:"";position:absolute;z-index:-1;pointer-events:none;background-repeat:no-repeat;background-size:contain}
.deco-ruta::before{top:56px;right:max(16px,calc((100% - var(--max)) / 2 + 24px));width:min(540px,42%);aspect-ratio:600/260;background-image:url("/assets/img/deco-ruta.svg");opacity:.5}
.deco-barco::before{bottom:28px;right:max(16px,calc((100% - var(--max)) / 2 + 24px));width:min(520px,44%);aspect-ratio:800/220;background-image:url("/assets/img/deco-barco.svg");opacity:.07}
.deco-fabrica::before{top:52px;right:max(16px,calc((100% - var(--max)) / 2 + 24px));width:min(420px,36%);aspect-ratio:600/220;background-image:url("/assets/img/deco-fabrica.svg");opacity:.07}
.deco-grilla::before,.cabecera-pag::before{inset:0;background-image:url("/assets/img/deco-grilla.svg");background-size:40px 40px;background-repeat:repeat;
  -webkit-mask-image:radial-gradient(ellipse 55% 75% at 82% 50%,#000 10%,transparent 72%);mask-image:radial-gradient(ellipse 55% 75% at 82% 50%,#000 10%,transparent 72%)}
.deco-barco .timeline-h,.deco-barco .grid{position:relative}
@media (min-width:1100px){.deco-barco{padding-bottom:150px}}
@media (max-width:899px){.deco-ruta::before,.deco-fabrica::before{display:none}.deco-barco::before{width:70%;opacity:.06}}
/* Transición suave entre secciones claras y la franja oscura */
.sec-hielo + .sec:not(.sec-noche):not(.sec-hielo),.sec:not(.sec-noche):not(.sec-hielo) + .sec-hielo{border-top:1px solid var(--linea)}
.ficha-pago .sello{position:absolute;top:18px;right:18px}
.ficha-pago>.etq{padding-right:120px;margin:0}
@media (max-width:400px){.leyenda li{grid-template-columns:12px minmax(0,1fr)}.leyenda b{grid-column:2}}

/* ---------- v5: portada cinematográfica y fotografía integrada ---------- */
.hero-cine{position:relative;isolation:isolate;overflow:hidden;background:var(--noche);color:#d5deea;display:grid;grid-template-rows:1fr auto;min-height:clamp(620px,calc(100svh - 72px),880px)}
.hero-foto,.hero-foto img{position:absolute;inset:0;width:100%;height:100%}
.hero-foto{z-index:-2}
.hero-foto img{object-fit:cover;object-position:12% 50%}
.hero-velo{position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(90deg,rgba(16,31,50,.96) 0%,rgba(16,31,50,.88) 30%,rgba(16,31,50,.5) 52%,rgba(16,31,50,.08) 74%,rgba(16,31,50,0) 100%),linear-gradient(0deg,rgba(16,31,50,.92) 0%,rgba(16,31,50,0) 32%)}
.hero-escena{display:flex}
.hero-cine-wrap{display:flex;align-items:center;padding-block:72px 48px}
.hero-cine .hero-texto{display:grid;gap:var(--s5);justify-items:start;max-width:620px}
.hero-cine h1{color:#fff;font-size:clamp(38px,5.6vw,68px)}
.hero-cine .lead{color:#d5deea;max-width:34em}
.hero-cine .etq{color:var(--cobre)}
.hero-cine .btn-secundario{background:rgba(16,31,50,.35);color:#fff;border-color:rgba(255,255,255,.5);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.hero-cine .btn-secundario:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.hero-cine .hero-puntos{border-top-color:rgba(255,255,255,.16)}
.hero-cine .hero-puntos li{color:#fff;font-weight:500}
.hero-cine .hero-puntos svg{color:var(--cobre)}
.hero-ruta-caja{position:relative;border-top:1px solid rgba(255,255,255,.14);background:rgba(16,31,50,.62);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.hero-ruta{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;counter-reset:r}
.hero-ruta li{position:relative;display:grid;gap:6px;padding:16px 12px 16px 0;font-size:14px;font-weight:600;color:#fff;line-height:1.3}
.hero-ruta span{font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;color:var(--cobre);display:flex;align-items:center;gap:8px}
.hero-ruta span::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,rgba(199,166,107,.7),rgba(199,166,107,0))}
@media (min-width:700px){.hero-ruta{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:1100px){.hero-ruta{grid-template-columns:repeat(6,minmax(0,1fr))}.hero-ruta li{padding-block:20px}}
@media (max-width:699px){
  .hero-cine{min-height:0}
  .hero-escena{position:relative;isolation:isolate}
  .hero-foto{top:auto;height:min(62%,560px)}
  .hero-foto img{object-position:32% 70%}
  .hero-ruta-caja{background:var(--noche);-webkit-backdrop-filter:none;backdrop-filter:none}
  .hero-velo{background:linear-gradient(180deg,rgba(16,31,50,1) 0%,rgba(16,31,50,1) 36%,rgba(16,31,50,.55) 52%,rgba(16,31,50,.05) 70%,rgba(16,31,50,.35) 100%)}
  .hero-cine-wrap{padding-block:36px 62vw}
  .hero-cine .hero-puntos{display:none}
}
@media (prefers-reduced-motion:no-preference){.hero-foto img{animation:acercar 18s ease-out both}@keyframes acercar{from{transform:scale(1.06)}to{transform:scale(1)}}}

/* Foto enmarcada junto a un texto */
.con-foto{display:grid;gap:var(--s7);align-items:center}
@media (min-width:1000px){.con-foto{grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:var(--s8)}}
.trio-valor.apilado{grid-template-columns:1fr;gap:0}
.trio-valor.apilado>div{padding-block:var(--s5);border-top:1px solid var(--linea)}
.trio-valor.apilado>div:first-child{border-top:0;padding-top:0}
.foto-marco{position:relative;margin:0;border-radius:var(--r-3);overflow:hidden;box-shadow:var(--sombra-3);background:var(--noche)}
.foto-marco img{width:100%;height:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 50%}
@media (max-width:999px){.foto-marco img{aspect-ratio:16/10}}
figcaption{font-size:12.5px;letter-spacing:.02em}
.foto-marco figcaption{position:absolute;left:0;right:0;bottom:0;padding:28px 18px 14px;color:#fff;background:linear-gradient(0deg,rgba(16,31,50,.85),rgba(16,31,50,0))}

/* Banda fotográfica de ancho completo dentro de una sección */
.foto-banda{position:relative;margin:0 0 var(--s7);border-radius:var(--r-3);overflow:hidden;background:var(--noche);box-shadow:var(--sombra-2)}
.foto-banda img{width:100%;aspect-ratio:21/8;object-fit:cover;object-position:50% 55%}
@media (max-width:699px){.foto-banda img{aspect-ratio:4/3}}
.foto-banda figcaption{position:absolute;inset:auto 0 0 0;display:grid;gap:4px;padding:48px 24px 20px;color:#d5deea;font-size:15px;background:linear-gradient(0deg,rgba(16,31,50,.9),rgba(16,31,50,0))}
.foto-banda figcaption b{font-family:var(--titulos);font-size:clamp(20px,2.4vw,28px);color:#fff;font-weight:750;letter-spacing:-.01em}

/* Contenedor real como "fantasma": foto apenas visible detrás del contenido */
.con-fantasma{position:relative;isolation:isolate;overflow:hidden}
.fantasma{position:absolute;z-index:-1;top:0;right:0;bottom:0;width:min(58%,820px);pointer-events:none}
.fantasma img{width:100%;height:100%;object-fit:cover;object-position:30% 50%;opacity:.16;filter:saturate(.6) blur(1px);
  -webkit-mask-image:linear-gradient(270deg,#000 20%,transparent 92%),linear-gradient(0deg,transparent,#000 30%);mask-image:linear-gradient(270deg,#000 20%,transparent 92%)}
@media (max-width:899px){.fantasma{width:100%;height:46%;top:auto}.fantasma img{opacity:.1}}

/* Sección oscura con foto portuaria de fondo */
.sec-foto{position:relative;isolation:isolate;overflow:hidden}
.sec-foto-img,.sec-foto-img img{position:absolute;inset:0;width:100%;height:100%}
.sec-foto-img{z-index:-2}
.sec-foto-img img{object-fit:cover;object-position:60% 50%}
.sec-foto::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(16,31,50,.94) 0%,rgba(16,31,50,.7) 42%,rgba(16,31,50,.25) 100%)}
.costo-grid{display:grid;gap:var(--s7);align-items:center}
@media (min-width:1000px){.costo-grid{grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:var(--s8)}}
.costo-grid .teaser{display:grid;gap:var(--s5)}
.proforma tr.total-op td{border-bottom:0;padding-top:6px;font-size:14px;color:var(--gris)}
.proforma tr.total-op td:last-child{font-size:15px;color:var(--noche)}

/* Cabecera de páginas internas con foto */
.cabecera-foto{background:var(--noche);border-bottom:0;overflow:hidden}
.cabecera-foto::before{display:none}
.cabecera-img,.cabecera-img img{position:absolute;inset:0;width:100%;height:100%}
.cabecera-img{z-index:-2}
.cabecera-img img{object-fit:cover;object-position:65% 50%}
.cabecera-foto::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(16,31,50,.95) 0%,rgba(16,31,50,.85) 42%,rgba(16,31,50,.35) 78%,rgba(16,31,50,.2) 100%)}
.cabecera-foto .cabecera-texto{padding-block:72px 64px;max-width:680px}
@media (min-width:900px){.cabecera-foto .cabecera-texto{padding-block:112px 96px}}
@media (max-width:699px){.cabecera-foto::after{background:linear-gradient(180deg,rgba(16,31,50,.88),rgba(16,31,50,.78))}}
.cabecera-foto h1{color:#fff}
.cabecera-foto .lead{color:#d5deea}
.cabecera-foto .etq{color:var(--cobre)}
.cabecera-foto .migas,.cabecera-foto .migas a{color:#b8c4d4}

/* Llamado final con barco al atardecer */
.cta-final{position:relative;isolation:isolate;overflow:hidden}
.cta-img,.cta-img img{position:absolute;inset:0;width:100%;height:100%}
.cta-img{z-index:-2}
.cta-img img{object-fit:cover;object-position:50% 60%}
.cta-final:has(.cta-img)::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(16,31,50,.94) 0%,rgba(16,31,50,.7) 50%,rgba(16,31,50,.2) 100%)}

/* Tira de tres fotos: de la fábrica al destino */
.tira-fotos{display:grid;gap:var(--s4);grid-template-columns:1fr;margin-top:var(--s7)}
@media (min-width:760px){.tira-fotos{grid-template-columns:repeat(3,minmax(0,1fr))}}
.tira-fotos figure{position:relative;margin:0;border-radius:var(--r-2);overflow:hidden;background:var(--noche)}
.tira-fotos img{width:100%;aspect-ratio:4/3;object-fit:cover}
.tira-fotos figcaption{position:absolute;inset:auto 0 0 0;display:grid;gap:2px;padding:36px 16px 14px;color:#d5deea;background:linear-gradient(0deg,rgba(16,31,50,.9),rgba(16,31,50,0))}
.tira-fotos figcaption b{color:#fff;font-size:16px;font-family:var(--titulos)}
.tira-fotos figcaption span{font-family:var(--mono);font-size:11.5px;letter-spacing:.08em;color:var(--cobre);text-transform:uppercase}
.tira-fotos.bloque-abajo{margin-top:0;margin-bottom:var(--s7)}
/* Recorrido de la operación (pagos) */
.recorrido{list-style:none;display:grid;gap:0;grid-template-columns:1fr;counter-reset:r;border-top:1px solid var(--linea)}
.recorrido li{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:var(--s3);padding:var(--s4) 0;border-bottom:1px solid var(--linea)}
.recorrido span{grid-row:span 2;font-family:var(--mono);font-size:13px;color:var(--cobre-txt);padding-top:3px}
.recorrido b{font-family:var(--titulos);color:var(--noche);font-size:17px}
.recorrido p{font-size:15px;color:var(--gris);margin-top:2px}
@media (min-width:1000px){.recorrido{grid-template-columns:repeat(7,minmax(0,1fr));border-top:0}
  .recorrido li{grid-template-columns:1fr;padding:var(--s5) var(--s3) 0 0;border-bottom:0;border-top:2px solid var(--linea)}
  .recorrido li::before{content:"";position:absolute;top:-6px;left:0;width:10px;height:10px;border-radius:50%;background:var(--cobre)}
  .recorrido span{grid-row:auto;padding:0 0 6px}}
.claridad .card h3{font-size:17px}
.costo-grid .teaser{grid-template-columns:1fr!important;align-content:center}.costo-grid .salto{max-width:520px}
.cabecera-guia .guia-precio b{color:#fff}
.cabecera-guia .guia-precio span,.cabecera-guia .paypal-nota{color:#c9d3df}
.cabecera-guia .paypal-nota svg{color:var(--cobre)}
/* La cotización ilustrativa es una hoja clara aunque esté sobre una sección oscura */
.sec-noche .proforma{color:var(--texto-2)}
.sec-noche .proforma .etq{color:var(--cobre-txt)}
.sec-noche .proforma .badge{background:var(--hielo);color:var(--noche)}
.sec-noche .proforma .badge-ok{background:var(--ok-suave);color:var(--ok)}
@media (max-width:899px){.sec-foto::after,.cta-final:has(.cta-img)::after{background:rgba(16,31,50,.82)}}
