@font-face{font-family:"Albor Titulos";src:url(/assets/alb-titulos-v3.woff2) format("woff2");font-weight:300 600;font-style:normal;font-display:swap}
@font-face{font-family:"Albor Texto";src:url(/assets/alb-texto.woff2) format("woff2");font-weight:300 800;font-style:normal;font-display:swap}
@font-face{font-family:"Albor Mono";src:url(/assets/alb-mono.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}

:root{
  --fondo:#FDF7F9;--papel:#FFFFFF;--tinta:#1F1316;--t2:#58444E;--t3:#725E69;
  --acento:#BE185D;--hondo:#9D174D;--rubor:#F6DCE5;--rubor2:#FBEDF2;--rubor3:#FDF3F7;
  --linea:rgba(190,24,93,.14);--linea2:rgba(31,19,22,.09);
  --sombra:0 1px 2px rgba(120,20,60,.05),0 14px 34px -16px rgba(190,24,93,.24);
  --sombra-alta:0 2px 4px rgba(120,20,60,.06),0 36px 66px -28px rgba(190,24,93,.42);
  --panel:32px;--tarjeta:22px;--pastilla:999px;
  --titulos:"Albor Titulos",Georgia,"Times New Roman",serif;
  --texto:"Albor Texto",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --mono:"Albor Mono",ui-monospace,"SF Mono",Menlo,monospace;
  --ancho:1240px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:96px}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;background:var(--fondo);color:var(--tinta);font-family:var(--texto);font-size:17px;line-height:1.65;font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg{max-width:100%;height:auto}
img{display:block}
[hidden]{display:none!important}
a{color:var(--hondo);text-underline-offset:3px;text-decoration-thickness:1px}
a:hover{color:var(--acento)}
:focus-visible{outline:3px solid var(--acento);outline-offset:3px;border-radius:8px}
h1,h2,h3{font-family:var(--titulos);font-weight:500;letter-spacing:-.02em;line-height:1.1;margin:0 0 .55em;color:var(--tinta)}
h2{font-size:clamp(1.75rem,3.1vw,2.35rem)}
h3{font-size:1.28rem;letter-spacing:-.01em;line-height:1.2}
p{margin:0 0 1em}
ul,ol{margin:0 0 1em;padding-left:1.25em}
li{margin-bottom:.35em}
strong{font-weight:700}
.omitir{position:absolute;left:-999px;top:8px;background:var(--tinta);color:#fff;padding:.6em 1em;border-radius:var(--pastilla);z-index:60}
.omitir:focus{left:12px;color:#fff}
.lienzo{width:min(var(--ancho),100% - 40px);margin-inline:auto}

/* rótulo (único estilo de etiqueta sobre los titulares) */
.rotulo{font-family:var(--mono);font-size:12px;line-height:1.3;letter-spacing:.14em;text-transform:uppercase;color:var(--acento);font-weight:400;margin:0 0 14px}

/* cinta superior */
.cinta{background:var(--tinta);color:#F3E3EA;font-family:var(--mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;overflow:hidden;white-space:nowrap}
.cinta-pista{display:flex;width:max-content;padding:11px 0;animation:cinta-corre 52s linear infinite}
.cinta-pista span{margin-right:56px}
.cinta-pista span::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:#F9A8D4;margin-right:12px;vertical-align:middle}
@keyframes cinta-corre{to{transform:translateX(-50%)}}

/* navegación en cápsula de cristal */
.flotante{position:sticky;top:12px;z-index:40;margin-top:14px}
.barra{position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:9px 9px 9px 20px;border-radius:var(--pastilla);background:rgba(255,255,255,.74);-webkit-backdrop-filter:blur(18px) saturate(1.4);backdrop-filter:blur(18px) saturate(1.4);border:1px solid rgba(255,255,255,.92);box-shadow:var(--sombra)}
.marca{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--tinta);font-family:var(--titulos);font-size:21px;font-weight:500;letter-spacing:-.01em;line-height:1}
.marca:hover{color:var(--tinta)}
.marca svg{width:26px;height:32px;flex:none}
.marca b{font-weight:300;color:var(--acento)}
.rutas{display:none;gap:4px;align-items:center;margin-left:auto;margin-right:8px}
.rutas a{color:var(--t2);text-decoration:none;padding:.5em .95em;border-radius:var(--pastilla);font-weight:500;font-size:15px}
.rutas a:hover,.rutas a[aria-current="page"]{background:var(--rubor2);color:var(--hondo)}
.boton{display:inline-flex;align-items:center;justify-content:center;gap:.5em;background:var(--acento);color:#fff;text-decoration:none;font-family:inherit;font-weight:600;font-size:15px;line-height:1.2;padding:14px 26px;border-radius:var(--pastilla);border:1px solid var(--acento);cursor:pointer;box-shadow:0 10px 24px -12px rgba(190,24,93,.7);transition:background .2s,color .2s}
.boton:hover{background:var(--hondo);border-color:var(--hondo);color:#fff}
.boton.cristal{background:rgba(255,255,255,.72);color:var(--hondo);border-color:var(--linea);box-shadow:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.boton.cristal:hover{background:#fff;color:var(--acento)}
.boton.chico{padding:11px 20px;font-size:14.5px}
.barra>.boton{display:none}
.plegable{position:relative}
.plegable>summary{list-style:none;cursor:pointer;padding:11px 20px;border-radius:var(--pastilla);background:var(--tinta);color:#fff;font-size:14.5px;font-weight:600}
.plegable>summary::-webkit-details-marker{display:none}
.plegable-lista{position:absolute;right:0;top:calc(100% + 12px);min-width:240px;background:rgba(255,255,255,.97);border:1px solid var(--linea);border-radius:var(--tarjeta);box-shadow:var(--sombra-alta);padding:10px;display:grid;gap:2px;z-index:50}
.plegable-lista a{padding:.65em .9em;border-radius:14px;text-decoration:none;color:var(--tinta);font-weight:500}
.plegable-lista a:hover{background:var(--rubor2)}
.plegable-lista a.boton{color:#fff;margin-top:6px}

/* portada (hero con arco) */
.alba{padding:26px 0 0}
.alba-panel{position:relative;display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(24px,4vw,64px);align-items:center;padding:clamp(28px,4.4vw,64px);border-radius:var(--panel);background:radial-gradient(120% 90% at 88% 8%,#fff 0%,rgba(255,255,255,0) 58%),linear-gradient(162deg,#FCEEF3 0%,#F6DCE5 100%);overflow:hidden}
.alba-panel>*{min-width:0}
.alba-texto h1{font-size:clamp(2.5rem,5.1vw,4.4rem);line-height:1;letter-spacing:-.03em;margin:0 0 .5em}
.alba-texto h1 .resto{display:block;margin-top:.28em;font-size:.5em;line-height:1.14;letter-spacing:-.015em;font-weight:300;color:var(--acento);max-width:19ch}
.solo-lector{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.alba-texto>p:not(.rotulo){color:var(--t2);font-size:18px;max-width:52ch}
.botonera{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0 24px}
.garantias{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0}
.garantias li{margin:0;font-size:13px;padding:7px 14px;border-radius:var(--pastilla);background:rgba(255,255,255,.7);border:1px solid var(--linea);color:var(--t2)}
.alba-foto{position:relative;margin:0 auto;width:100%;max-width:440px}
.arco{position:relative;width:100%;aspect-ratio:4/5;border-radius:var(--pastilla) var(--pastilla) var(--panel) var(--panel);background:linear-gradient(176deg,var(--rubor) 0%,#FCEFF4 60%,#fff 100%);border:1px solid rgba(255,255,255,.9);box-shadow:var(--sombra-alta);overflow:hidden}
.arco picture,.arco img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.flota{position:absolute;left:-30px;bottom:42px;padding:14px 18px;border-radius:18px;background:rgba(255,255,255,.78);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.95);box-shadow:var(--sombra);min-width:210px}
.flota small{display:block;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--t3)}
.flota strong{display:block;font-size:15px;font-weight:600;margin-top:4px;line-height:1.3}
.flota i{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--acento);margin-right:8px;box-shadow:0 0 0 4px rgba(190,24,93,.16)}
@keyframes sube{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes asoma{from{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:no-preference){
  .alba-texto>*{animation:sube .9s cubic-bezier(.2,.7,.2,1) both}
  .alba-texto>:nth-child(2){animation-delay:.08s}.alba-texto>:nth-child(3){animation-delay:.16s}.alba-texto>:nth-child(4){animation-delay:.24s}.alba-texto>:nth-child(5){animation-delay:.32s}
  .alba-foto{animation:asoma 1.2s cubic-bezier(.2,.7,.2,1) both .1s}
}

/* cifras */
.cifras{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:16px}
.cifra{padding:28px 30px;border-radius:var(--tarjeta);background:var(--papel);border:1px solid var(--linea2);box-shadow:var(--sombra)}
.cifra b{display:block;font-family:var(--titulos);font-size:clamp(3rem,5vw,4.5rem);line-height:1;letter-spacing:-.04em;font-weight:400;color:var(--tinta)}
.cifra p{margin:12px 0 0;color:var(--t2);font-size:15px;line-height:1.45}
.cifra small{display:block;margin-top:10px;font-family:var(--mono);font-size:11.5px;letter-spacing:.04em;color:var(--t3);white-space:nowrap}

/* secciones de la portada */
.seccion{padding:clamp(56px,8vw,112px) 0 0}
.cab{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:40px}
.cab>*{min-width:0}
.cab>div{max-width:760px}
.cab .entrada{max-width:46ch;margin:0;color:var(--t2);font-size:17px}
.titulo{font-size:clamp(2rem,4vw,3.25rem);line-height:1.06;letter-spacing:-.025em;margin:0}
.titulo span{display:block;font-weight:300;color:var(--t3)}
.nota{margin:22px 0 0;font-size:14.5px;color:var(--t2);max-width:78ch}

/* tarjetas de producto */
.vitrina{display:grid;gap:18px;margin:0}
.vitrina>*{min-width:0}
.ficha{position:relative;background:var(--papel);border:2px solid var(--rubor);border-radius:var(--tarjeta);padding:26px 24px 22px;box-shadow:var(--sombra);display:flex;flex-direction:column;gap:.55em}
.ficha h3{margin:0 0 .1em}
.casa{font-size:13px;font-weight:700;color:var(--hondo);margin:0;letter-spacing:.01em}
.origen{display:flex;align-items:center;gap:14px;background:var(--rubor3);border:1px solid var(--linea);border-radius:18px;padding:12px 14px;margin:.3em 0}
.insignia{flex:0 0 46px;height:56px;border-radius:var(--pastilla) var(--pastilla) 10px 10px;background:var(--acento);color:#fff;display:grid;place-items:center;font-family:var(--titulos);font-weight:500;font-size:1.35rem;box-shadow:0 8px 18px -10px rgba(190,24,93,.8)}
.origen small{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--t3)}
.origen b{display:block;font-family:var(--titulos);font-weight:500;font-size:1.12rem;line-height:1.25;margin-top:2px}
.origen.vacio{background:#fff;border-style:dashed}
.origen.vacio .insignia{background:var(--t3);box-shadow:none}
.ficha dl{margin:0;display:grid;gap:.1em;font-size:14.5px;line-height:1.5}
.ficha dt{font-weight:700;font-size:12.5px;color:var(--t3);margin-top:.7em}
.ficha dd{margin:0;color:var(--t2)}
.ficha details{border-top:1px solid var(--linea2);margin-top:.6em;padding-top:.6em;font-size:14px}
.ficha summary,.mas summary{cursor:pointer;font-weight:700;color:var(--hondo);list-style:none;display:flex;align-items:center;gap:8px}
.ficha summary::-webkit-details-marker,.mas summary::-webkit-details-marker{display:none}
.ficha summary::after,.mas summary::after{content:"";width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);margin-left:2px}
.ficha details[open] summary::after,.mas[open] summary::after{transform:rotate(-135deg)}
.inci{font-size:12.5px;line-height:1.5;color:var(--t2);word-break:break-word;margin:.7em 0 0}
.pie-fuente{margin:auto 0 0;padding-top:.7em;font-size:13.5px;color:var(--t2)}

/* precios pendientes */
.precios{display:grid;gap:16px;margin:0}
.precios>*{min-width:0}
.precio{position:relative;padding:34px;border-radius:var(--tarjeta);background:var(--papel);border:1px solid var(--linea2);box-shadow:var(--sombra)}
.precio h3{font-size:1.45rem;margin:0}
.precio .cifra-p{display:block;margin:20px 0 4px;font-family:var(--titulos);font-size:clamp(3rem,5vw,4.25rem);line-height:1;letter-spacing:-.03em;font-weight:300;color:var(--tinta)}
.precio .pend-txt{display:block;font-size:14px;color:var(--t2);margin-bottom:18px}
.precio p.detalle{font-size:14.5px;color:var(--t2);border-top:1px solid var(--linea2);padding-top:16px;margin:0}
.sello{position:absolute;top:24px;right:24px;width:62px;height:78px;border-radius:var(--pastilla) var(--pastilla) 14px 14px;border:1px dashed rgba(190,24,93,.5);display:grid;place-items:center;text-align:center;font-family:var(--mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--acento);line-height:1.35;padding:14px 4px 6px}
.pend{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 16px;background:var(--papel);border:1px solid var(--linea2);border-radius:var(--tarjeta);padding:18px 24px;margin:1.2em 0;max-width:620px;box-shadow:var(--sombra)}
.pend .cifra-p{font-family:var(--titulos);font-size:2.6rem;line-height:1;font-weight:300}
.pend .pend-txt{font-size:14px;color:var(--t2)}
.pend-celda{color:var(--t3);font-size:.92em}

/* cómo funciona */
.vias{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
.vias>div{padding:30px;border-radius:var(--tarjeta);background:var(--papel);border:1px solid var(--linea2)}
.vias h3{margin-bottom:.5em}
.vias p{color:var(--t2);font-size:15.5px}
.vias p:last-child{margin-bottom:0}
.dos-cols{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(24px,4vw,56px);align-items:stretch}
.dos-cols>*{min-width:0}
.hueco{position:relative;overflow:hidden;background:radial-gradient(circle at 74% 22%,rgba(255,255,255,.95) 0 9%,transparent 9.5%),radial-gradient(circle at 28% 66%,rgba(190,24,93,.15) 0 15%,transparent 15.5%),radial-gradient(circle at 64% 80%,rgba(255,255,255,.75) 0 6%,transparent 6.5%),radial-gradient(circle at 40% 30%,rgba(255,255,255,.55) 0 4%,transparent 4.5%),linear-gradient(165deg,#FCEEF3 0%,#F6DCE5 55%,#F0C6D6 100%)}
.panel-foto{border-radius:var(--panel);box-shadow:var(--sombra-alta);min-height:360px;border:1px solid rgba(255,255,255,.9)}
.pasos{list-style:none;display:grid;gap:12px;padding:0;margin:0;counter-reset:paso}
.pasos li{counter-increment:paso;position:relative;margin:0;padding:20px 20px 20px 84px;border-radius:18px;background:var(--papel);border:1px solid var(--linea2);font-size:15.5px;color:var(--t2)}
.pasos li::before{content:counter(paso,decimal-leading-zero);position:absolute;left:20px;top:18px;width:48px;height:48px;border-radius:14px;background:var(--rubor);color:var(--hondo);display:grid;place-items:center;font-family:var(--mono);font-size:15px}
.pasos strong{display:block;color:var(--tinta);font-size:16.5px;margin-bottom:2px}
.pasos-aparte{max-width:820px;margin:1.4em 0}

/* para quién */
.dupla{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.dupla>div{padding:34px;border-radius:var(--tarjeta);border:1px solid var(--linea2);background:var(--papel)}
.dupla .niega{background:transparent}
.dupla h3{margin-bottom:.8em;font-size:1.4rem}
.dupla ul{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.dupla li{display:grid;grid-template-columns:22px 1fr;gap:10px;margin:0;color:var(--t2);font-size:15.5px}
.dupla li::before{content:"";width:20px;height:20px;margin-top:3px;border-radius:50%;background:var(--rubor2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.5l2.5 2.5L12 5.5' fill='none' stroke='%239D174D' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E") center/13px no-repeat}
.dupla .niega li::before{background:#F3E9ED url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M5 5l6 6M11 5l-6 6' fill='none' stroke='%2358444E' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E") center/12px no-repeat}

/* ciencia */
.ciencia{background:var(--papel);border-radius:var(--panel);padding:clamp(28px,5vw,72px);border:1px solid var(--linea2)}
.estudios{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
.estudio{grid-column:span 2;padding:26px;border-radius:var(--tarjeta);background:var(--fondo);border:1px solid var(--linea2);display:flex;flex-direction:column;min-width:0}
.estudio:nth-child(n+4){grid-column:span 3}
.estudio .rotulo{margin-bottom:12px}
.estudio h3{font-size:1.28rem;margin:0 0 .5em}
.estudio p:not(.rotulo){font-size:15px;color:var(--t2)}
.mas{margin:0 0 .8em;font-size:14.5px}
.mas p{margin:.6em 0 0}
.fuente{margin-top:auto;align-self:flex-start;display:inline-flex;padding:7px 13px;border-radius:var(--pastilla);background:var(--papel);border:1px solid var(--linea);font-family:var(--mono);font-size:11.5px;letter-spacing:.03em;text-decoration:none;color:var(--hondo)}
.fuente:hover{border-color:var(--acento);color:var(--acento)}

/* galería editorial */
.galeria{display:grid;grid-template-columns:1.35fr 1fr;gap:16px}
.galeria figure{position:relative;margin:0;border-radius:var(--panel);overflow:hidden;box-shadow:var(--sombra);min-height:360px}
.galeria .hueco{position:absolute;inset:0}
.galeria figcaption{position:absolute;left:18px;bottom:18px;padding:8px 14px;border-radius:var(--pastilla);background:rgba(255,255,255,.78);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--t2)}

/* atajos, chips */
.atajos{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.atajos a{display:block;text-decoration:none;color:inherit;background:var(--papel);border:1px solid var(--linea2);border-radius:var(--tarjeta);padding:26px 28px;box-shadow:var(--sombra)}
.atajos a:hover{border-color:var(--acento)}
.atajos b{display:block;font-family:var(--titulos);font-weight:500;font-size:1.3rem;margin-bottom:.3em;color:var(--tinta);letter-spacing:-.01em}
.atajos span{display:block;color:var(--t2);font-size:15px}
.atajos em{display:inline-block;margin-top:.8em;color:var(--hondo);font-style:normal;font-weight:700;font-size:14.5px}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px;padding:0;list-style:none}
.chips li{margin:0}
.chips a{display:inline-block;padding:10px 16px;border-radius:var(--pastilla);background:var(--papel);border:1px solid var(--linea);font-size:14.5px;text-decoration:none;color:var(--tinta)}
.chips a:hover{background:var(--rubor2);color:var(--hondo)}

/* preguntas */
.dudas-caja{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(28px,5vw,72px)}
.dudas-caja>*{min-width:0}
.dudas details{border-radius:18px;background:var(--papel);border:1px solid var(--linea2);margin-bottom:10px}
.dudas details[open]{border-color:var(--linea)}
.dudas summary{list-style:none;cursor:pointer;padding:20px 24px;font-weight:600;font-size:16.5px;line-height:1.4;display:flex;justify-content:space-between;gap:20px;align-items:center}
.dudas summary::-webkit-details-marker{display:none}
.dudas summary::after{content:"+";flex:none;width:32px;height:32px;border-radius:50%;background:var(--rubor);display:grid;place-items:center;font-weight:400;font-size:20px;color:var(--hondo);line-height:1}
.dudas details[open] summary::after{content:"\2212"}
.respuesta{padding:0 24px 8px;color:var(--t2);font-size:15.5px}
.respuesta p:last-child{margin-bottom:.9em}

/* cierre y formulario */
.cierre{background:linear-gradient(180deg,var(--rubor) 0%,var(--rubor2) 100%);border-radius:var(--panel);padding:clamp(32px,5vw,64px);text-align:center}
.cierre h2{max-width:720px;margin-inline:auto}
.cierre p{max-width:60ch;margin-inline:auto;color:var(--t2)}
.cierre .botonera{justify-content:center;margin-bottom:0}
.ventana{position:relative;border-radius:var(--panel);overflow:hidden}
.ventana .hueco{position:absolute;inset:0}
.ventana::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(253,247,249,.9) 0%,rgba(253,247,249,.6) 45%,rgba(253,247,249,0) 100%)}
.ventana-grid{position:relative;z-index:1;display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(28px,5vw,64px);padding:clamp(28px,5vw,72px);align-items:start}
.ventana-grid>*{min-width:0}
.ventana-grid .entrada{color:var(--t2)}
.cristal-form{padding:32px;border-radius:var(--tarjeta);background:rgba(255,255,255,.84);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.95);box-shadow:var(--sombra-alta)}
.campos{display:grid;gap:14px}
.campo label{display:block;font-weight:600;font-size:13.5px;color:var(--t2);margin-bottom:.35em}
.campo .pista{font-size:13px;color:var(--t3);margin:0 0 .35em}
.campo input[type=text],.campo input[type=tel],.campo select{width:100%;min-width:0;font:inherit;font-size:15px;padding:13px 16px;border:1px solid var(--linea2);border-radius:16px;background:#fff;color:var(--tinta)}
.campo input:focus,.campo select:focus{border-color:var(--acento);outline:3px solid rgba(190,24,93,.25);outline-offset:1px}
.campo label.casilla{display:flex;gap:.7em;align-items:flex-start;font-weight:400;font-size:13.5px;line-height:1.5;color:var(--tinta)}
.casilla input{margin-top:.2em;width:20px;height:20px;accent-color:var(--acento);flex:0 0 20px}
.fallo{color:#9F1239;font-size:13px;font-weight:700;margin:.3em 0 0;min-height:0}
.fallo:empty{display:none}
.rgpd{font-size:13px;line-height:1.55;color:var(--t2);background:var(--rubor3);border:1px solid var(--linea);border-radius:18px;padding:14px 16px}
.rgpd p{margin-bottom:.5em}.rgpd p:last-child{margin-bottom:0}
.miel{position:absolute;left:-5000px;width:1px;height:1px;overflow:hidden}
.aviso-estado{margin:.8em 0 0;font-weight:700}
.cristal-form form>.campo,.cristal-form form>.rgpd,.cristal-form form>.botonera,.cristal-form form>.campos{margin-top:14px}
.cristal-form .botonera{margin:6px 0 0}
.campos.pares{align-items:end}
.ventana-grid .titulo{font-size:clamp(1.9rem,3.2vw,2.7rem);margin-bottom:.6em}
.cristal-form .nota-ed{margin:0 0 14px}
.cristal-form .boton{width:100%}

/* citas y pie */
.citas{font-size:14.5px;color:var(--t2)}
.citas ol{padding-left:1.3em;margin:0}
.citas li{margin-bottom:.55em}
.citas-caja{background:var(--papel);border:1px solid var(--linea2);border-radius:var(--panel);padding:clamp(24px,4vw,44px)}
.citas-caja h2{font-size:1.5rem}
.suelo{margin-top:88px;padding:56px 0 36px;color:var(--t2);font-size:14.5px}
.suelo-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:36px;padding-bottom:36px;border-bottom:1px solid var(--linea)}
.suelo-grid>*{min-width:0}
.marca-pie{font-family:var(--titulos);font-size:1.55rem;color:var(--tinta);margin:0 0 .4em;font-weight:500;letter-spacing:-.01em}
.suelo h2{font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--t3);font-weight:400;margin:0 0 14px}
.suelo ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.suelo li{margin:0}
.suelo a{color:var(--t2);text-decoration:none}
.suelo a:hover{color:var(--acento);text-decoration:underline}
.financia{margin-top:28px;max-width:80ch;background:var(--rubor3);border:1px solid var(--linea);border-radius:18px;padding:16px 20px;font-size:14px}
.financia p{margin:0}
.cola{font-size:13px;color:var(--t3);margin:22px 0 0}

/* páginas interiores */
.rastro{font-size:13.5px;color:var(--t3);padding:22px 0 0}
.rastro ol{list-style:none;display:flex;flex-wrap:wrap;gap:.2em .5em;padding:0;margin:0}
.rastro li{margin:0}
.rastro li+li::before{content:"/";margin-right:.5em;color:var(--linea)}
.rastro a{color:var(--t3)}
.encabezado{display:grid;grid-template-columns:1fr auto;gap:clamp(24px,5vw,72px);align-items:center;padding:26px 0 10px}
.encabezado>*{min-width:0}
.encabezado h1{font-size:clamp(2.1rem,4.3vw,3.4rem);line-height:1.04;letter-spacing:-.025em;margin:0 0 .5em;max-width:20ch}
.entrada{font-size:1.1rem;line-height:1.6;color:var(--t2);max-width:62ch}
.revision{font-family:var(--mono);font-size:12px;letter-spacing:.04em;color:var(--t3);margin:1.1em 0 0}
.nota-ed{background:var(--rubor3);border:1px solid var(--linea);border-radius:18px;padding:.9em 1.15em;font-size:13.5px;line-height:1.55;color:var(--t2);margin:1.2em 0 0;max-width:72ch}
.nota-ed strong{color:var(--hondo)}
.arco.menor{width:230px;aspect-ratio:1/1}
.bloque{padding:28px 0 0}
.bloque>.lienzo>h2{max-width:780px}
.bloque p,.bloque li{max-width:70ch}
.bloque .pasos li,.bloque .vitrina li{max-width:none}
.bloque.panel>.lienzo{background:var(--papel);border:1px solid var(--linea2);border-radius:var(--panel);padding:clamp(26px,4vw,52px);box-shadow:var(--sombra)}
.bloque.panel>.lienzo>:last-child{margin-bottom:0}
.bloque .vitrina{margin:1.2em 0}
.bloque .pasos{margin:1.2em 0;max-width:820px}
.bloque .dudas{max-width:860px;margin:1.2em 0}
.bloque ol:not(.pasos){padding-left:1.4em}
.bloque .cierre{margin-top:18px}
.rodillo{overflow-x:auto;margin:1.2em 0;border:1px solid var(--linea2);border-radius:var(--tarjeta);background:var(--papel)}
.tabla{border-collapse:collapse;width:100%;font-size:14.5px;line-height:1.5}
.tabla caption{text-align:left;padding:14px 18px;font-weight:600;color:var(--t2);font-size:13.5px}
.tabla th,.tabla td{padding:13px 16px;text-align:left;vertical-align:top;border-top:1px solid var(--linea2)}
.tabla thead th{background:var(--rubor3);font-family:var(--mono);font-weight:400;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--hondo);border-top:0}
.tabla tbody th{font-weight:700}
.datos-legales{display:grid;gap:.2em;max-width:720px;background:var(--papel);border:1px solid var(--linea2);border-radius:var(--tarjeta);padding:1.2em 1.5em;margin:0}
.datos-legales dt{font-weight:700;font-size:12.5px;color:var(--t3);margin-top:.7em}
.datos-legales dt:first-child{margin-top:0}
.datos-legales dd{margin:0}
.hueco-menor{display:block}

@media (min-width:720px){
  .vitrina.dos{grid-template-columns:repeat(2,1fr)}
  .precios{grid-template-columns:repeat(2,1fr)}
  .campos.pares{grid-template-columns:1fr 1fr}
  .campos .entera{grid-column:1/-1}
}
@media (min-width:1000px){
  .vitrina.trio{grid-template-columns:repeat(3,1fr)}
}
@media (min-width:900px){
  .rutas{display:flex}
  .barra>.boton{display:inline-flex}
  .plegable{display:none}
}
@media (max-width:1000px){
  .vitrina.trio{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:899px){
  body{font-size:16px}
  .alba-panel,.dos-cols,.dudas-caja,.ventana-grid,.galeria{grid-template-columns:1fr}
  .alba-foto{order:-1;max-width:340px}
  .arco{aspect-ratio:1/1}
  .flota{position:static;margin:14px auto 0;min-width:0;width:fit-content;max-width:100%;padding:9px 16px;border-radius:var(--pastilla)}
  .flota small{display:none}
  .flota strong{margin:0;font-size:14px;white-space:nowrap}
  .cifras,.atajos{grid-template-columns:1fr}
  .cifra{display:grid;grid-template-columns:76px 1fr;gap:4px 20px;align-items:center;padding:20px 22px}
  .cifra b{font-size:3rem}
  .cifra p{margin:0}
  .cifra small{grid-column:2;margin:0}
  .cab{flex-direction:column;align-items:flex-start;gap:18px;margin-bottom:28px}
  .vias,.dupla{grid-template-columns:1fr}
  .vias>div,.dupla>div{padding:26px}
  .estudios{grid-template-columns:1fr}
  .estudio,.estudio:nth-child(n+4){grid-column:auto}
  .panel-foto{min-height:0;aspect-ratio:3/2}
  .galeria figure{min-height:260px}
  .suelo-grid{grid-template-columns:1fr 1fr}
  .suelo-grid>:first-child{grid-column:1/-1}
  .ventana::after{background:linear-gradient(180deg,rgba(253,247,249,.88),rgba(253,247,249,.5))}
  .encabezado{grid-template-columns:1fr}
  .arco.menor.hueco{display:none}
  .rotulo{font-size:11px;letter-spacing:.1em}
}
@media (max-width:719px){
  .vitrina.trio{grid-template-columns:1fr}
  .cristal-form{padding:22px}
  .precio{padding:26px}
  .sello{width:54px;height:68px;top:18px;right:18px;font-size:8px}
  .pasos li{padding:18px 16px 18px 76px}
  .pasos li::before{left:16px;width:44px;height:44px}
  .tabla thead{position:absolute;left:-9999px}
  .tabla caption{display:block;width:100%}
  .tabla,.tabla tbody,.tabla tr,.tabla td,.tabla th{display:block;width:100%}
  .tabla tr{padding:10px 0;border-top:1px solid var(--linea2)}
  .tabla tbody tr:first-child{border-top:0}
  .tabla th,.tabla td{border:0;padding:5px 16px}
  .tabla td[data-th]::before{content:attr(data-th);display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--t3)}
  .suelo-grid{grid-template-columns:1fr}
}
@media (max-width:420px){
  .alba-panel{padding:22px 18px}
  .boton{padding:13px 20px}
  .botonera .boton{width:100%}
  .cinta-pista span{margin-right:40px}
}
@media (prefers-reduced-motion:reduce){
  .cinta-pista{animation:none;width:auto;flex-wrap:wrap;justify-content:center;padding:9px 14px;row-gap:4px;white-space:normal}
  .cinta-pista span{margin-right:28px}
  .cinta-pista span[aria-hidden]{display:none}
}
@media print{.flotante,.cinta,.suelo-grid{display:none}}

.alba .nota-ed{max-width:none;margin-top:16px}
.origen>span:last-child{min-width:0}
