/* Ajustes F1 sobre el CSS literal de la maqueta v2. No es CSS de producción. */
@font-face{font-family:Serif;src:local("Georgia");font-style:italic;font-weight:400;font-display:swap}
@font-face{font-family:Serif;src:url("../fonts/serif-400.ttf");font-weight:400;font-display:swap}
@font-face{font-family:Serif;src:url("../fonts/serif-500.ttf");font-weight:500;font-display:swap}
@font-face{font-family:Sans;src:url("../fonts/sans-400.ttf");font-weight:400;font-display:swap}
@font-face{font-family:Sans;src:url("../fonts/sans-600.ttf");font-weight:600;font-display:swap}
:root{--body-copy:#ded3c2;--muted:#c9bba3;--line:rgba(184,146,74,.3)}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{min-width:320px;font-size:18px;overflow-wrap:break-word}
body::before{opacity:.04;z-index:0}
p{color:var(--body-copy)}
img{display:block;max-width:100%;height:auto}
a,summary{touch-action:manipulation}
a:focus-visible,summary:focus-visible{outline:3px solid var(--azafran);outline-offset:6px;border-radius:3px}
a{color:var(--oro-claro)}
.skip-link{position:fixed;left:16px;top:10px;transform:translateY(-200%);background:var(--oro-claro);color:var(--negro);padding:12px;z-index:50}
.skip-link:focus{transform:translateY(0)}
.wrap{max-width:1240px;padding-left:40px;padding-right:40px}
header{padding:22px 0}
.wm{flex-shrink:0}.wm span{font-size:10px;letter-spacing:.19em;margin-top:4px;color:var(--marfil-2)}
nav{font-size:15px;gap:24px}nav a:hover{color:var(--oro-claro)}
.btn{font-size:16px;letter-spacing:0;min-height:50px;justify-content:center;line-height:1.3;transition:filter .2s,background .2s}
.btn:hover{filter:brightness(1.12)}.btn-sm{font-size:14px;min-height:44px}
.btn-oro{box-shadow:0 8px 30px rgba(184,146,74,.14)}
.hero{padding:76px 0 62px}
.hero .wrap{grid-template-columns:1.08fr .92fr;gap:46px}
.eyebrow{font-size:11px;line-height:1.7;letter-spacing:.2em;margin-bottom:20px}
h1{font-size:clamp(44px,4.3vw,64px);line-height:1.08;letter-spacing:-.025em;max-width:630px}
h1 em{display:block;font-weight:400}
.lead{font-size:18px;line-height:1.65;max-width:550px;margin:25px 0}
.gancho{max-width:540px;padding:16px 18px;margin-bottom:25px;background:linear-gradient(110deg,rgba(74,20,36,.55),rgba(21,17,28,.6));border-color:rgba(226,194,122,.25);border-left:2px solid var(--azafran)}
.gancho b{font-size:20px;line-height:1.35}.gancho p{font-size:16px;line-height:1.5;color:var(--body-copy)}
.ctas{gap:18px}.text-link{font-size:16px;text-decoration:none;border-bottom:1px solid rgba(226,194,122,.45);padding:8px 0;display:inline-flex;gap:12px;align-items:center;line-height:1.5}
.text-link:hover{border-color:var(--oro-claro)}
.phone-note{font-size:16px;letter-spacing:.07em;color:var(--marfil-2);margin:14px 0 0}
.meta{margin-top:18px;gap:8px 18px;font-size:13px}
.altar{min-height:590px;align-items:center;isolation:isolate}
.mandala-bg{width:570px;height:570px;opacity:.18;z-index:-1;color:var(--oro-claro)}
.carta{width:310px;height:490px;aspect-ratio:auto;background:linear-gradient(165deg,#3d1123,#140a14);box-shadow:0 45px 80px #0008,0 0 70px #b8924a0c;transform:rotate(3deg)}
.carta .inner{padding:22px 14px 20px}.carta .num{font-size:10px}.carta .nombre{font-size:26px}.carta .sub{font-size:8px;letter-spacing:.18em}.card-art{width:220px;height:280px;object-fit:contain}
.lamp{bottom:28px}.lamp.l{left:2%}.lamp.r{right:0;bottom:65px}
.banda{margin:0;background:linear-gradient(90deg,#140e17,#1e1118,#100d14)}
.banda .wrap{padding:22px 40px;font-size:15px;gap:18px}.banda b{font-size:12px}
section.s{padding:84px 0}
.s h2,.leo-section h2{font-family:Serif,Georgia,serif;font-weight:400;font-size:44px;line-height:1.14;letter-spacing:-.02em;max-width:760px;color:var(--marfil)}
.s h2 em,.leo-section h2 em{color:var(--oro-claro);font-weight:400}
.s p.intro{font-size:18px;line-height:1.7;max-width:670px;margin-top:20px}
.temas{gap:25px;margin-top:44px}.tema{border:0;border-top:1px solid var(--line);border-radius:0;background:none;padding:24px 0 0}.tema::after{display:none}
.tema svg{width:34px;height:34px;margin-bottom:20px}.tema h3{font-size:23px;line-height:1.25;min-height:58px;margin-bottom:12px}.tema p{font-size:16px;line-height:1.65}.tema a{font-size:14px;line-height:1.4;display:flex;gap:6px;align-items:center;min-height:44px;color:var(--oro-claro)}
.section-action{margin-top:30px}
.oferta .wrap{display:block}.oferta .oferta-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:40px}.oferta-heading{margin-bottom:0}
.tarifa{border:1px solid var(--line);padding:34px 36px;display:flex;flex-direction:column;align-items:flex-start;border-radius:6px;background:#100d14}.tarifa::before{display:none}.tarifa.destacada{border-color:rgba(226,194,122,.55);background:linear-gradient(135deg,#38101e,#19101b);box-shadow:none}
.tarifa h3{font-size:31px;margin-top:14px}.tarifa .lbl{font-size:11px}.tarifa .imp{font-size:58px;margin:20px 0 8px}.tarifa .usd{font-size:14px;margin-bottom:24px}.offer-detail{font-weight:600;line-height:1.5;margin-bottom:16px;max-width:390px}.tarifa ul{font-size:17px;line-height:1.6;gap:12px;margin-bottom:30px;flex:1}.tarifa li{padding-left:16px;position:relative}.tarifa li::before{position:absolute;left:0;top:3px;font-size:9px}.tarifa .btn{width:100%}
.currency-note{font-size:14px;margin:22px 0 0;color:var(--marfil-2)}
.filtro{padding:42px 0;border-bottom:1px solid var(--line)}.filtro .wrap{display:grid;grid-template-columns:.65fr 1.35fr;gap:60px}.filtro h2{font:400 28px/1.25 Serif,Georgia,serif;color:var(--oro-claro)}.filtro p{font-size:16px;line-height:1.65}.filtro .muted{margin-top:12px;color:var(--muted)}
.report-section{background:radial-gradient(ellipse at 20% 50%,#4a142433,transparent 55%)}.report-layout{display:grid;grid-template-columns:.65fr 1.35fr;gap:65px;align-items:center}
.report-art{display:grid;place-items:center}.report-paper{position:relative;display:block;width:170px;height:225px;border:1px solid #b8924a88;background:linear-gradient(140deg,#2c1820,#15111c);padding:30px;transform:rotate(-7deg);box-shadow:14px 16px 0 -8px #21131d,14px 16px 0 -7px #b8924a55}.paper-mark{font:400 28px Serif,Georgia,serif;color:var(--oro-claro)}.report-paper i{display:block;height:1px;background:#b8924a55;margin-top:20px}.report-paper i:nth-of-type(3){width:65%}.report-paper b{position:absolute;right:24px;bottom:22px;color:var(--oro-claro);font-size:22px}
.delivery{list-style:none;display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:28px}.delivery li{font-size:14px;color:var(--oro-claro);border-top:1px solid var(--line);padding-top:12px}
.arcano-dia{border-block:1px solid var(--line)}.arcano-dia .wrap{grid-template-columns:.8fr 1.2fr}.small-note{font-size:15px;line-height:1.7;color:var(--marfil-2);margin-top:18px}.mazo{height:300px}.mazo .c{width:145px;height:225px;box-shadow:0 16px 26px #0005}
.sofia .wrap{grid-template-columns:.65fr 1.35fr;gap:65px}.marco{width:265px;background:radial-gradient(circle at 50% 10%,#3e1728,#110b13 75%)}.marco .mono{font-size:64px}.marco small{font-size:10px}.monogram-loto{width:42px;height:42px;margin-top:30px;opacity:.65}.schedule{font-size:17px;line-height:1.6;color:var(--oro-claro);border-left:2px solid var(--oro);padding-left:18px;margin-top:26px}
.leo-section{padding:54px 0;background:#171019;border-block:1px solid var(--line)}.leo-section .wrap{display:grid;grid-template-columns:120px 1fr auto;align-items:center;gap:40px}.leo-section h2{font-size:35px;max-width:650px;margin-bottom:20px}.leo-section p{font-size:17px;line-height:1.7}.leo-section .eyebrow{font-size:11px}.leo-section .small-note{font-size:15px}.leo-seal{width:110px;height:135px;border:1px solid #b8924a66;border-radius:65px 65px 6px 6px;display:flex;flex-direction:column;align-items:center;justify-content:center;font:400 45px Serif,Georgia,serif;color:var(--oro-claro)}.leo-seal span{font:400 9px Sans,sans-serif;letter-spacing:.2em;margin-top:10px}
.faq-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.faqs{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;font-size:18px;line-height:1.5;padding:22px 0;color:var(--marfil)}summary::-webkit-details-marker{display:none}summary span{color:var(--oro-claro);font-size:24px;line-height:1;flex-shrink:0}details[open] summary span{transform:rotate(45deg)}details p{padding:0 24px 24px 0;font-size:17px;line-height:1.75}
.closing{text-align:center;background:radial-gradient(ellipse at 50% 100%,#4a142455,transparent 70%);border-top:1px solid var(--line)}.closing .eyebrow{justify-content:center}.closing h2{max-width:850px;margin:auto}.closing h2 em{display:block}.closing p:not(.eyebrow):not(.phone-note){max-width:640px;margin:25px auto;line-height:1.7}.closing .btn{margin-top:4px}
footer{position:relative;z-index:1;padding:58px 0 32px;background:#100c13;border-top:1px solid var(--line)}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:44px}.footer-heading{font-size:12px;font-family:Sans,sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:var(--marfil-2);margin-bottom:24px}.contacts{list-style:none;display:grid;grid-template-columns:repeat(5,1fr);gap:20px}.contacts li>span{display:block;font-size:14px;color:var(--marfil-2);margin-bottom:10px}.contacts small{font-size:10px;color:var(--oro);margin-left:5px}.contacts a{font-size:17px;white-space:nowrap;display:inline-flex;align-items:center;min-height:44px;text-decoration:none}.footer-bottom{border-top:1px solid var(--line);padding-top:24px;margin-top:28px}.footer-bottom p{font-size:13px;color:var(--marfil-2);line-height:1.8;max-width:1000px}.prototype-label{margin-top:18px;color:var(--oro)!important;font-size:11px!important;letter-spacing:.1em}
.session-hero .wrap{grid-template-columns:1.25fr .75fr;gap:90px}.session-intro{padding:36px 0 36px 32px;border-left:1px solid var(--line);position:relative}.session-intro>svg{width:85px;height:85px;color:var(--oro);margin-bottom:28px}.session-intro h2{font:400 34px/1.2 Serif,Georgia,serif;color:var(--oro-claro);margin:15px 0}.session-intro p{font-size:17px;line-height:1.75}.session-intro .eyebrow{font-size:10px}.session-line{display:block;width:60px;height:1px;background:var(--oro);margin-top:30px}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.split>div>p:not(.eyebrow),.split>p{font-size:18px;line-height:1.75}.split .small-note{font-size:16px!important}.alcance{border-bottom:1px solid var(--line)}.professional-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:45px}.professional-grid article{border-top:1px solid var(--line);padding-top:30px}.initials{font:400 36px Serif,Georgia,serif;color:var(--oro);display:block;margin-bottom:24px}.professional-grid h3{font:400 31px Serif,Georgia,serif;color:var(--marfil);margin-bottom:16px}.professional-grid p{font-size:17px;line-height:1.7}.proceso{background:#171019}.steps{list-style:none;counter-reset:none;display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin:44px 0 34px}.step-number{font:400 30px Serif,Georgia,serif;color:var(--oro)}.steps h3{font:400 25px/1.25 Serif,Georgia,serif;margin:16px 0;color:var(--marfil)}.steps p{font-size:17px;line-height:1.7}.session-topics{border-block:1px solid var(--line)}
@media(max-width:1100px){.hd{gap:18px}nav{gap:15px}.hd .btn{display:none}.hero .wrap{gap:25px}.contacts{grid-template-columns:repeat(3,1fr)}.leo-section .wrap{grid-template-columns:100px 1fr}.leo-section .btn{grid-column:2;justify-self:start}.session-hero .wrap{gap:40px}.temas{gap:18px}}
@media(max-width:900px){body{font-size:17px}.wrap{padding-left:24px;padding-right:24px}.hd{flex-wrap:wrap;gap:14px}.wm b{font-size:17px}.wm span{font-size:9px}.hd nav{display:flex;order:2;gap:22px;font-size:13px;width:100%;border-top:1px solid var(--line);padding-top:12px}header{padding:17px 0 13px}.hero{padding:37px 0 48px}.hero .wrap,.session-hero .wrap{grid-template-columns:1fr;gap:30px}h1{font-size:40px;line-height:1.12;letter-spacing:-.02em;max-width:600px}.lead{font-size:17px;line-height:1.65;margin:22px 0}.eyebrow{font-size:10px;margin-bottom:17px}.gancho b{font-size:19px}.gancho p{font-size:16px}.gancho{padding:14px 15px;margin-bottom:22px}.ctas{align-items:flex-start;gap:13px}.ctas .btn{min-height:52px;padding:15px 20px}.ctas .text-link{font-size:15px}.phone-note{font-size:15px}.meta{font-size:12px;gap:8px 14px}.altar{min-height:510px;margin-top:12px;max-width:500px;width:100%;justify-self:center}.carta{width:275px;height:435px}.card-art{width:190px;height:240px}.mandala-bg{width:420px;height:420px}.lamp.l{left:2%}.lamp.r{right:0;bottom:60px}.banda .wrap{grid-template-columns:1fr;gap:14px;padding:25px 24px;font-size:15px}section.s{padding:57px 0}.s h2,.leo-section h2{font-size:34px;line-height:1.15}.s p.intro{font-size:17px;line-height:1.7}.temas{grid-template-columns:1fr;margin-top:32px;gap:25px}.tema{display:grid;grid-template-columns:38px 1fr;column-gap:15px;padding-top:22px}.tema svg{grid-row:1/4;width:30px;height:30px;margin:0}.tema h3{font-size:24px;min-height:0;margin:0 0 8px}.tema p{font-size:17px}.tema a{grid-column:2;margin-top:6px;font-size:14px}.oferta .oferta-grid{grid-template-columns:1fr;gap:22px;margin-top:30px}.tarifa{padding:27px 25px}.tarifa h3{font-size:29px}.tarifa .imp{font-size:54px}.tarifa ul{font-size:17px}.currency-note{font-size:14px;line-height:1.65}.filtro .wrap,.report-layout,.sofia .wrap,.arcano-dia .wrap,.faq-layout,.split{grid-template-columns:1fr;gap:30px}.filtro{padding:35px 0}.filtro .wrap{gap:18px}.report-art{display:none}.delivery{gap:14px;display:grid}.delivery li{font-size:15px;padding-top:10px}.arcano-dia .wrap{gap:20px}.mazo{height:240px}.mazo .c{width:120px;height:185px}.mazo .c svg{width:55px;height:55px}.marco{width:220px;margin-bottom:10px}.sofia .wrap{gap:40px}.schedule{font-size:17px}.leo-section{padding:40px 0}.leo-section .wrap{grid-template-columns:1fr;gap:22px}.leo-seal{width:70px;height:80px;border-radius:40px 40px 3px 3px;font-size:31px}.leo-seal span{font-size:8px;margin-top:4px}.leo-section .btn{grid-column:auto;justify-self:start}.leo-section h2{font-size:31px}.leo-section p{font-size:17px}.faq-layout{gap:26px}summary{font-size:17px;padding:20px 0}details p{font-size:17px;padding-right:0}.closing h2{font-size:36px}.closing p:not(.eyebrow):not(.phone-note){font-size:17px}.footer-top{align-items:flex-start;flex-direction:column;gap:24px}.contacts{grid-template-columns:1fr 1fr;gap:20px 18px}.contacts li>span{font-size:13px}.contacts a{font-size:16px;letter-spacing:-.02em}.footer-bottom p{font-size:13px}footer{padding:42px 0 calc(125px + env(safe-area-inset-bottom))}.sticky{background:#100c13f5;padding:12px 20px calc(12px + env(safe-area-inset-bottom));gap:14px;box-shadow:0 -10px 25px #0004}.sticky>span{font-size:12px;line-height:1.5}.sticky span b{font-size:16px}.sticky .btn{padding:12px 28px;font-size:16px;min-height:48px}.session-intro{border-left:0;border-top:1px solid var(--line);padding:28px 0 0}.session-intro>svg{width:55px;height:55px;margin-bottom:15px}.session-intro h2{font-size:30px}.professional-grid{grid-template-columns:1fr;gap:30px;margin-top:30px}.steps{grid-template-columns:1fr;gap:30px;margin-top:32px}.steps li{display:grid;grid-template-columns:40px 1fr;gap:0 16px}.step-number{grid-row:1/3;font-size:27px}.steps h3{margin:0 0 12px;font-size:25px}.steps p{grid-column:2}.split>div>p:not(.eyebrow),.split>p{font-size:17px}.session-hero h1{font-size:42px}}
/* Reserva espacio al signo de la FAQ abierta para que su giro no sobresalga. */
summary span{width:24px;height:24px;display:grid;place-items:center;flex:0 0 24px;margin-right:6px}
details[open] summary span{transform:none;font-size:0}
details[open] summary span::before{content:"−";font-size:24px}
@media(max-width:900px){html{scroll-padding-bottom:110px}}
@media(max-width:370px){.wrap{padding-left:20px;padding-right:20px}h1{font-size:36px}.contacts{grid-template-columns:1fr}.sticky{padding-inline:16px}.sticky .btn{padding-inline:20px}}
/* F1.1: identidad discreta y barra que no se superpone a controles externos. */
.hero-copy{position:relative}
.hero-sigil{display:none}
.hero-availability{font-size:14px;line-height:1.5;color:var(--marfil-2);margin:-8px 0 22px;max-width:520px}
.sticky[hidden]{display:none!important}
@media(max-width:900px){
 .hero{padding-top:30px}
 .hero-copy>.eyebrow{margin-bottom:12px;padding-right:40px}
 .hero-copy>.lead{margin:16px 0;line-height:1.6}
 .hero-availability{margin:0 0 16px}
 .hero-sigil{display:block;position:absolute;right:0;top:-3px;width:28px;height:28px;color:var(--azafran);opacity:.75}
 .sticky{position:static;box-shadow:none}
 .sticky[data-floating]{position:fixed;left:0;right:0;bottom:0;z-index:5;box-shadow:0 -10px 25px #0004}
}
/* F1.2: retrato editorial y ornamentos de inspiración geométrica, sin cambiar la paleta. */
.wm.has-emblem{position:relative;padding-left:34px}
.brand-knot{position:absolute;left:0;top:3px;width:24px;height:24px;color:var(--oro);opacity:.85}
.banda::before,.oferta::before{content:"";position:absolute;top:-7px;left:0;right:0;height:24px;background:url("../img/cenefa-nudo-f1.2.svg") repeat-x center;pointer-events:none;opacity:.5}
.oferta{position:relative}.oferta::before{top:0;opacity:.23}
.sofia{background:radial-gradient(ellipse at 18% 48%,rgba(74,20,36,.16),transparent 64%)}
.sofia-portrait{width:300px;max-width:100%;margin:0 auto}
.portrait-frame{position:relative;border:1px solid rgba(226,194,122,.6);border-radius:150px 150px 8px 8px;padding:6px;background:var(--negro-2);box-shadow:0 22px 55px rgba(0,0,0,.3)}
.portrait-frame img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:50% 35%;border-radius:143px 143px 4px 4px}
.sofia-portrait figcaption{display:flex;align-items:center;justify-content:center;gap:9px;font-size:12px;line-height:1.6;color:var(--marfil-2);margin-top:15px;letter-spacing:.03em}
.sofia-portrait figcaption svg{width:18px;height:18px;color:var(--oro)}
.session-intro{isolation:isolate}
.session-intro>.session-wheel{position:absolute;right:-55px;top:8px;width:235px;height:235px;color:var(--oro);opacity:.09;z-index:-1;pointer-events:none}
@media(max-width:900px){
 .wm.has-emblem{padding-left:30px}.brand-knot{top:2px;width:21px;height:21px}
 .sofia-portrait{width:270px}
 .portrait-frame{border-radius:135px 135px 8px 8px}
 .portrait-frame img{border-radius:128px 128px 4px 4px}
 .session-intro>.session-wheel{width:170px;height:170px;right:0;top:34px;opacity:.07}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
