/* ALLURE EXPOSSE · web v2 · B3 (hueso #F4EFE8 · tinta #1A1717 · acento único #0047FF) · Archivo / Archivo Black + una palabra en Fraunces cursiva */
@font-face{font-family:"Archivo";src:url("/assets/fonts/archivo-latin-var.woff2") format("woff2");font-weight:400 700;font-style:normal;font-display:swap}
@font-face{font-family:"Archivo Black";src:url("/assets/fonts/archivo-black-latin.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Fraunces";src:url("/assets/fonts/fraunces-italic-latin.woff2") format("woff2");font-weight:500;font-style:italic;font-display:swap}
:root{--hueso:#F4EFE8;--tinta:#1A1717;--gris:#57534F;--acento:#0047FF;--linea:#D8CFC3;--papel:#EBE4DA}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{margin:0;background:var(--hueso);color:var(--tinta);font:400 17px/1.6 "Archivo",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
a{color:var(--tinta);text-underline-offset:3px}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--acento);outline-offset:3px}
img{max-width:100%;height:auto;display:block}
.saltar{position:absolute;left:-999px;top:0;background:var(--tinta);color:var(--hueso);padding:10px 14px;z-index:10}
.saltar:focus{left:8px;top:8px}
.wrap{max-width:1200px;margin:0 auto;padding:0 20px}
/* encabezado */
header.top{position:relative;z-index:50;background:var(--hueso);border-bottom:1px solid var(--linea)}
header.top .wrap{display:flex;justify-content:space-between;align-items:center;min-height:60px;gap:16px}
.logo{display:inline-flex;align-items:center;text-decoration:none;padding:8px 0}
.logo svg{height:18px;width:auto}
nav.desk{display:none}
nav.desk a,.mob nav a{text-decoration:none;font-weight:600;font-size:15px}
nav.desk a[aria-current],.mob nav a[aria-current]{text-decoration:underline;text-decoration-color:var(--acento);text-decoration-thickness:2px}
.mob summary{list-style:none;cursor:pointer;font-weight:600;font-size:15px;min-height:44px;display:flex;align-items:center;padding:0 4px}
.mob summary::-webkit-details-marker{display:none}
.mob nav{position:absolute;left:0;right:0;top:60px;background:var(--hueso);border-bottom:1px solid var(--tinta);padding:8px 20px 16px;display:flex;flex-direction:column}
.mob nav a{padding:12px 0;border-bottom:1px solid var(--linea);font-size:17px}
@media (min-width:900px){nav.desk{display:flex;gap:22px}.mob{display:none}}
/* tipografía */
.kicker{text-transform:uppercase;letter-spacing:.16em;font-size:13px;font-weight:600;color:var(--gris);margin:40px 0 10px}
h1,h2,.titular{font-family:"Archivo Black","Archivo",system-ui,sans-serif;font-weight:400;letter-spacing:-.01em}
h1{font-size:clamp(34px,7.4vw,76px);line-height:1.02;margin:0 0 18px}
h2{font-size:clamp(26px,4.4vw,44px);line-height:1.08;margin:64px 0 16px}
h3{font-size:19px;margin:28px 0 8px}
.claim{font-size:clamp(22px,3.6vw,34px);line-height:1.2;margin:0 0 24px;font-weight:600}
.fr{font-family:"Fraunces",Georgia,serif;font-style:italic;font-weight:500;color:var(--acento)}
.bajada{font-size:clamp(19px,2.6vw,24px);line-height:1.35;max-width:760px;margin:0 0 20px}
.prose{max-width:720px}
.prose p,.prose li{max-width:68ch}
.lista{padding-left:20px}.lista li{margin:6px 0}
/* botones */
.cta{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0 8px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 22px;border:1.5px solid var(--tinta);text-decoration:none;font-weight:700;font-size:16px;background:transparent;color:var(--tinta);cursor:pointer;font-family:inherit}
.btn--ok{background:var(--tinta);color:var(--hueso)}
.btn:hover{border-color:var(--acento)}
.ic{width:20px;height:20px;flex:none}
.con-ic{display:inline-flex;align-items:center;gap:8px}
.kicker.con-ic{display:flex}
/* home */
.hero{display:grid;gap:24px;align-items:end;padding-top:8px}
.hero figure{margin:0}
.hero img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 30%}
@media (min-width:900px){.hero{grid-template-columns:1.1fr .9fr;gap:48px;padding-top:24px}.hero .kicker{margin-top:0}}
.pasos{counter-reset:p;list-style:none;padding:0;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.pasos li{counter-increment:p;border-top:2px solid var(--tinta);padding-top:12px}
.pasos li::before{content:"0" counter(p);display:block;font-family:"Archivo Black",sans-serif;font-size:26px;color:var(--acento);margin-bottom:4px}
.pasos strong{display:block;font-size:18px}
/* tarjetas */
.tarjetas{display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}
@media (min-width:700px){.tarjetas{grid-template-columns:repeat(3,1fr)}}
@media (min-width:1100px){.tarjetas.books{grid-template-columns:repeat(4,1fr)}}
.tarjeta{display:block;text-decoration:none;background:var(--papel)}
.tarjeta img{width:100%;aspect-ratio:4/5;object-fit:cover}
.tarjeta span{display:block;padding:10px 12px 12px;font-weight:700;font-size:15px;letter-spacing:.04em}
.tarjeta small{display:block;font-weight:400;letter-spacing:0;color:var(--gris);font-size:14px}
/* galería */
.galeria{columns:1;column-gap:16px;margin:24px 0}
@media (min-width:600px){.galeria{columns:2}}
@media (min-width:1000px){.galeria{columns:3}}
.galeria figure{margin:0 0 16px;break-inside:avoid}
.galeria img{width:100%;background:var(--papel)}
.creditos{font-size:15px;color:var(--gris)}
.zona{background:var(--papel);padding:28px 24px;margin-top:56px}
.zona h2{margin-top:0}
.zona ul{display:flex;flex-wrap:wrap;gap:8px 10px;list-style:none;padding:0;margin:12px 0 0}
.zona li{border:1px solid var(--tinta);padding:4px 12px;font-size:15px}
/* bloque oscuro */
.oscuro{background:var(--tinta);color:var(--hueso);padding:56px 0;margin-top:72px}
.oscuro h2{margin-top:0}
.oscuro a{color:var(--hueso)}
.oscuro .btn{border-color:var(--hueso);color:var(--hueso)}
.oscuro .btn--ok{background:var(--hueso);color:var(--tinta)}
/* pie */
footer{border-top:1px solid var(--linea);margin-top:0;padding:36px 0 48px;font-size:15px;color:var(--gris)}
.oscuro+footer{border-top:0}
footer .firma{font-weight:700;color:var(--tinta)}
footer ul{list-style:none;padding:0;margin:14px 0 0;display:flex;flex-wrap:wrap;gap:8px 20px}
footer a{color:var(--tinta)}
.ae-prefs-link{background:none;border:0;padding:0;font:inherit;color:var(--tinta);cursor:pointer;text-decoration:underline}
.migas{font-size:14px;color:var(--gris);margin:24px 0 0}
.migas a{color:var(--gris)}
.estado{display:block;margin:4px 0 16px;font-weight:400}
/* v2.1 */
.dato{margin:0 0 14px;font-size:17px;font-weight:600;color:var(--gris)}
.dato strong{font-family:"Archivo Black","Archivo",sans-serif;font-weight:400;font-size:clamp(30px,5vw,44px);color:var(--tinta);margin-right:6px;letter-spacing:-.01em}
.tuyas{border-left:3px solid var(--acento);padding:4px 0 4px 14px;font-weight:600;font-size:19px;max-width:680px;margin:28px 0}
.faq{max-width:760px}.faq h3{margin:22px 0 6px}.faq p{margin:0}
/* v2.2 · galería con PhotoSwipe */
.galeria a{display:block;cursor:zoom-in}
/* el visor abierto queda por encima del aviso de cookies; al cerrarlo el aviso sigue ahí */
html .pswp{--pswp-root-z-index:2147483600}
/* v2.3 · Instagram (imágenes propias, sin embeds) */
.ig{background:var(--papel);padding:24px 20px;margin-top:56px}
@media (min-width:700px){.ig{padding:32px 28px}}
.ig .btn{background:var(--hueso)}
.ig p:last-child{margin-bottom:0}
.ig h2{margin-top:0}
.ig .kicker{margin-top:0}
.ig-grilla{list-style:none;padding:0;margin:20px 0 18px;display:grid;gap:8px;grid-template-columns:repeat(3,1fr)}
@media (min-width:700px){.ig-grilla{gap:14px;grid-template-columns:repeat(var(--c,3),minmax(0,1fr))}}
.ig-grilla a{display:block;background:var(--hueso);outline-offset:2px}
.ig-grilla img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:opacity .2s}
.ig-grilla a:hover img{opacity:.85}
/* v2.4 · interacciones (sin librerías; todo se apaga con movimiento reducido) */
@view-transition{navigation:auto}
::view-transition-old(root),::view-transition-new(root){animation-duration:.25s}
::view-transition-group(*){animation-duration:.4s;animation-timing-function:cubic-bezier(.2,0,0,1)}
.rv{opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .5s ease}
.rv-in{opacity:1;transform:none}
@media (hover:hover){
 .tarjeta picture,.ig-grilla a{display:block;overflow:hidden}
 .tarjeta img,.ig-grilla img{transition:transform .5s ease,opacity .2s}
 .tarjeta:hover img,.ig-grilla a:hover img{transform:scale(1.03)}
 .tarjeta:hover span{color:var(--acento)}
 a:hover{color:var(--acento);text-decoration-color:var(--acento)}
 .btn:hover{border-color:var(--acento);color:var(--acento)}
 .btn--ok:hover{background:var(--acento);border-color:var(--acento);color:var(--hueso)}
 .oscuro .btn:hover{border-color:var(--acento);color:var(--hueso)}
 .oscuro .btn--ok:hover{background:var(--acento);border-color:var(--acento);color:var(--hueso)}
 .oscuro a:hover{color:var(--hueso);text-decoration-color:var(--acento)}
 .btn,.btn svg{transition:color .2s,background-color .2s,border-color .2s}
}
.galeria img{transition:opacity .2s}
/* visor de fotos */
.lb-abierto,.lb-abierto body{overflow:hidden}
.lb{position:fixed;inset:0;z-index:2147483600;background:var(--tinta);color:var(--hueso);touch-action:pan-y pinch-zoom}
.lb[hidden]{display:none}
.lb-foto{position:absolute;inset:56px 0 48px;display:flex;align-items:center;justify-content:center}
.lb-foto picture{display:contents}
.lb-foto img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;user-select:none;-webkit-user-drag:none}
.lb-cnt{position:absolute;left:0;right:0;bottom:12px;margin:0;text-align:center;font-size:14px;letter-spacing:.12em;color:var(--hueso)}
.lb-b{position:absolute;width:48px;height:48px;border:1.5px solid var(--hueso);background:var(--tinta);color:var(--hueso);font:400 30px/1 "Archivo",system-ui,sans-serif;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0 0 4px}
.lb-b:disabled{opacity:.3;cursor:default}
.lb-b:focus-visible{outline:3px solid var(--acento);outline-offset:2px}
.lb-x{top:4px;right:8px}
.lb-ant,.lb-sig{top:50%;margin-top:-24px}
.lb-ant{left:8px}.lb-sig{right:8px}
@media (hover:hover){.lb-b:not(:disabled):hover{border-color:var(--acento);background:var(--acento)}}
@media (max-width:699px){.lb-ant,.lb-sig{top:auto;bottom:4px;margin:0}.lb-foto{bottom:60px}.lb-cnt{bottom:18px}}
/* antes / después */
.ad{margin:56px 0 0}
.ad-marco{position:relative;max-width:720px;overflow:hidden;background:var(--papel);--p:50%}
.ad-marco picture,.ad-marco img{display:block;width:100%}
.ad-despues{position:absolute;inset:0;clip-path:inset(0 0 0 var(--p))}
.ad-despues img{height:100%;object-fit:cover}
.ad-linea{position:absolute;top:0;bottom:0;left:var(--p);width:2px;margin-left:-1px;background:var(--hueso);pointer-events:none}
.ad-linea::after{content:"";position:absolute;top:50%;left:50%;width:40px;height:40px;margin:-20px 0 0 -20px;border-radius:50%;background:var(--tinta);border:2px solid var(--hueso)}
.ad-marco input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;touch-action:pan-y}
.ad-marco input:focus-visible~.ad-linea::after{outline:3px solid var(--acento);outline-offset:2px}
.ad-et{position:absolute;bottom:10px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;background:var(--tinta);color:var(--hueso);padding:3px 8px;pointer-events:none}
.ad-et--a{left:10px}.ad-et--d{right:10px}
@media (prefers-reduced-motion:reduce){
 .rv{opacity:1;transform:none;transition:none}
 ::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}
 .tarjeta img,.ig-grilla img{transition:none}.tarjeta:hover img,.ig-grilla a:hover img{transform:none}
}
@media print{.rv{opacity:1!important;transform:none!important}}
/* convocatoria (v2.5) */
.conv-fechas{font-weight:600}
.conv-caja{background:var(--papel);padding:24px 20px;margin:40px 0}
@media (min-width:700px){.conv-caja{padding:32px 36px}}
.conv-caja h2{margin-top:0}
.form p{margin:0 0 18px}
.form label{display:block;font-weight:600;margin-bottom:6px}
.form input[type=text],.form input:not([type]),.form input[type=tel],.form input[type=url]{width:100%;min-height:48px;padding:10px 12px;border:1.5px solid var(--tinta);background:var(--hueso);color:var(--tinta);font:inherit;border-radius:0}
.form input:focus-visible{outline:3px solid var(--acento);outline-offset:2px}
.form small{display:block;color:var(--gris);font-size:14px;margin-top:6px;line-height:1.45}
.form fieldset{border:0;padding:0;margin:0 0 6px}
.form legend{font-weight:600;margin-bottom:8px;padding:0}
.ops{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.form .op{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border:1.5px solid var(--tinta);font-weight:600;margin:0;cursor:pointer}
.op:has(input:checked){background:var(--tinta);color:var(--hueso)}
.op input,.chk input{accent-color:var(--acento);width:18px;height:18px;margin:0}
.form .chk{display:flex;gap:10px;align-items:flex-start;font-weight:400;margin:0 0 14px;cursor:pointer}
.chk input{flex:none;margin-top:4px}
.opc{font-weight:400;color:var(--gris)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.ts{margin:4px 0 12px}
.conv-estado{min-height:1.6em;font-weight:600}
.conv-estado.mal{color:#A3261B}
.conv-gracias:focus{outline:none}
.bases li{margin:8px 0}
@media (hover:hover){.op:hover{border-color:var(--acento)}}
/* notas (v2.5) */
.notas{display:grid;gap:20px;grid-template-columns:1fr;margin:8px 0 32px}
@media (min-width:700px){.notas{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1100px){.notas{grid-template-columns:repeat(3,1fr)}}
.nota-t img{aspect-ratio:4/3}
.nota-t span{font-size:18px;letter-spacing:0;padding:14px 16px 16px}
.nota-t small{margin-top:6px;font-size:15px;line-height:1.45}
.nota-hero{margin:8px 0 8px;max-width:960px}
.nota-hero img{width:100%;aspect-ratio:3/2;object-fit:cover}
.nota-cuerpo h2{font-size:clamp(24px,3.6vw,34px);margin:48px 0 12px}
.nota-cuerpo h3{font-size:20px}
.nota-foto{margin:28px 0}
.nota-foto img{width:100%;max-height:85vh;object-fit:cover}
.nota-cuerpo ol.lista{padding-left:22px}
