/* ============================================================
   TU SISTEMA NERVIOSO, TU BIBLIA · Motor de diseño "Dinámica"
   Temas: oscuro (por defecto) · claro (body.t-light) · secciones claras (.sec-light)
   Todos los colores salen de tokens para poder re-tematizar sin tocar la estructura.
   ============================================================ */
:root{
  /* ---- TEMA OSCURO (default) ---- */
  --bg-0:#150810; --bg-top:#4a1f2e; --bg-mid:#1f0e18;
  --text:#f8f0e8; --text-dim:#ead9cf; --muted:#c6a8b5;
  --gold-300:#f3ddae; --gold-400:#e8c887; --gold-500:#d2a662; --gold-600:#bd8c46;
  --magenta:#d2628a; --pink:#e58ca8; --orange:#ec9359; --violet:#9a7bc0;
  --panel:rgba(255,255,255,.06); --panel-2:rgba(255,255,255,.02);
  --panel-solid:rgba(43,21,33,.96);
  --border:rgba(232,200,135,.16); --border-soft:rgba(232,200,135,.12); --border-strong:rgba(232,200,135,.45);
  --eyebrow:#e8c887;
  --ic-bg:linear-gradient(135deg,rgba(232,200,135,.18),rgba(210,98,138,.16));
  --ic-border:rgba(232,200,135,.25); --ic-color:#f3ddae;
  --card-shadow:0 24px 60px rgba(0,0,0,.4);
  --bib-grad:linear-gradient(100deg,#f3ddae,#ec9359,#d2628a,#f3ddae);
  --band-bg:linear-gradient(120deg,rgba(94,42,59,.5),rgba(154,123,192,.16));
  --quote-img:.22; --quote-tint:transparent; --price-img:.16; --price-tint:transparent;
  --blob-blend:screen; --blob-opacity:.55; --grain-opacity:.05;
  --spark:#f3ddae; --spark-glow:rgba(243,221,174,.7); --spark-op:.7;
  --header-bg:rgba(21,8,16,.55); --pill-text:#2b1521;
  --maxw:1180px; --ease:cubic-bezier(.22,.61,.36,1);
}
/* ---- TEMA CLARO global ---- */
body.t-light{
  --bg-0:#f6eede; --bg-top:#fffaf0; --bg-mid:#f3e7d4;
  --text:#3a1c2a; --text-dim:#6c4f5b; --muted:#a98a97;
  --gold-300:#caa04e; --gold-400:#c08a3e; --gold-500:#b3853f; --gold-600:#946a2e;
  --panel:#ffffff; --panel-2:#fdf8f0; --panel-solid:#fffaf3;
  --border:rgba(150,100,70,.18); --border-soft:rgba(150,100,70,.12); --border-strong:rgba(179,133,63,.55);
  --eyebrow:#b3853f;
  --ic-bg:linear-gradient(135deg,#ffffff,#f4e8d6); --ic-border:rgba(179,133,63,.4); --ic-color:#b3853f;
  --card-shadow:0 22px 50px rgba(58,33,46,.13);
  --bib-grad:linear-gradient(100deg,#c2417a,#d4843f,#b5306e,#c2417a);
  --band-bg:linear-gradient(120deg,#f6e6ef,#fbeede);
  --quote-img:0; --quote-tint:linear-gradient(120deg,#f6e6ef,#fff5e9); --price-img:0; --price-tint:linear-gradient(160deg,#fff,#f4e8d6);
  --blob-blend:multiply; --blob-opacity:.34; --grain-opacity:.03;
  --spark:#caa04e; --spark-glow:rgba(202,160,78,.45); --spark-op:.55;
  --header-bg:rgba(255,250,244,.72); --pill-text:#3a1c2a;
}
/* ---- SECCIÓN CLARA dentro de página oscura (para la versión MIXTA) ---- */
.sec-light{
  --text:#3a1c2a; --text-dim:#6c4f5b; --muted:#a98a97;
  --gold-300:#caa04e; --gold-400:#c08a3e; --gold-500:#b3853f; --gold-600:#946a2e;
  --panel:#ffffff; --panel-2:#fdf8f0; --panel-solid:#fffaf3;
  --border:rgba(150,100,70,.18); --border-soft:rgba(150,100,70,.12); --border-strong:rgba(179,133,63,.55);
  --eyebrow:#b3853f;
  --ic-bg:linear-gradient(135deg,#ffffff,#f4e8d6); --ic-border:rgba(179,133,63,.4); --ic-color:#b3853f;
  --card-shadow:0 22px 50px rgba(58,33,46,.13);
  --band-bg:linear-gradient(120deg,#f6e6ef,#fbeede);
  --price-img:0; --price-tint:linear-gradient(160deg,#fff,#f4e8d6);
  background:linear-gradient(180deg,#f6eede,#efe4d2);
  color:var(--text);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.6), inset 0 -1px 0 rgba(0,0,0,.06);
}

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Poppins',sans-serif;background:var(--bg-0);color:var(--text);line-height:1.65;overflow-x:hidden;-webkit-font-smoothing:antialiased}
h1,h2,h3,.serif{font-family:'Playfair Display',serif;line-height:1.1}
.serif-it{font-family:'Playfair Display',serif;font-style:italic}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.gold{color:var(--gold-400)}
.it{font-style:italic}

/* ===== BACKDROP ===== */
.bg-fx{position:fixed;inset:0;z-index:-2;overflow:hidden;background:radial-gradient(120% 90% at 50% -10%,var(--bg-top) 0%,var(--bg-mid) 45%,var(--bg-0) 100%)}
.blob{position:absolute;border-radius:50%;filter:blur(70px);opacity:var(--blob-opacity);mix-blend-mode:var(--blob-blend);will-change:transform}
.blob.b1{width:46vw;height:46vw;left:-14vw;top:2vw;background:radial-gradient(circle,var(--magenta),transparent 70%);animation:drift1 26s var(--ease) infinite alternate}
.blob.b2{width:42vw;height:42vw;right:-12vw;top:8vw;background:radial-gradient(circle,var(--orange),transparent 70%);animation:drift2 30s var(--ease) infinite alternate}
.blob.b3{width:40vw;height:40vw;left:8vw;bottom:-8vw;background:radial-gradient(circle,var(--violet),transparent 70%);animation:drift3 34s var(--ease) infinite alternate}
.blob.b4{width:34vw;height:34vw;right:6vw;bottom:2vw;background:radial-gradient(circle,var(--gold-500),transparent 70%);opacity:calc(var(--blob-opacity) * .6);animation:drift1 28s var(--ease) infinite alternate-reverse}
@keyframes drift1{to{transform:translate(8vw,6vh) scale(1.15)}}
@keyframes drift2{to{transform:translate(-7vw,9vh) scale(1.1)}}
@keyframes drift3{to{transform:translate(6vw,-7vh) scale(1.2)}}
.grain{position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:var(--grain-opacity);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.spark{position:fixed;border-radius:50%;background:var(--spark);z-index:-1;pointer-events:none;opacity:0;box-shadow:0 0 8px 1px var(--spark-glow);animation:rise linear infinite}
@keyframes rise{0%{transform:translateY(20px);opacity:0}10%{opacity:var(--spark-op)}90%{opacity:calc(var(--spark-op) * .85)}100%{transform:translateY(-105vh);opacity:0}}

/* ===== ANNOUNCEMENT + NAV ===== */
.topbar{background:linear-gradient(90deg,var(--gold-600),var(--gold-400),var(--gold-600));color:#3a1422;text-align:center;font-size:.8rem;font-weight:600;letter-spacing:.04em;padding:8px 16px;position:relative;z-index:30}
header{position:sticky;top:0;z-index:40;backdrop-filter:blur(12px);background:var(--header-bg);border-bottom:1px solid var(--border)}
nav{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;max-width:var(--maxw);margin:0 auto}
.brand{font-family:'Playfair Display',serif;font-weight:700;font-size:1.05rem;letter-spacing:.02em;color:var(--text)}
.brand span{color:var(--gold-400)}
.nav-cta{font-size:.82rem;font-weight:600;padding:10px 20px;border-radius:40px;background:linear-gradient(135deg,var(--gold-400),var(--gold-600));color:var(--pill-text);transition:transform .3s var(--ease),box-shadow .3s}
.nav-cta:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(232,200,135,.35)}

/* ===== BUTTONS ===== */
.btn{display:inline-flex;align-items:center;gap:.6em;font-family:'Poppins';font-weight:600;font-size:1.02rem;padding:17px 38px;border-radius:48px;cursor:pointer;border:none;transition:transform .35s var(--ease),box-shadow .35s;text-align:center}
.btn-gold{background:linear-gradient(135deg,var(--gold-300),var(--gold-500));color:var(--pill-text);box-shadow:0 10px 34px rgba(210,166,98,.34)}
.btn-gold:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 16px 44px rgba(232,200,135,.5)}
.btn-glow{position:relative;overflow:hidden}
.btn-glow::after{content:"";position:absolute;top:0;left:-120%;width:60%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.65),transparent);transform:skewX(-18deg);animation:sheen 3.6s ease-in-out infinite}
@keyframes sheen{0%,55%{left:-120%}80%,100%{left:160%}}

/* ===== SECTION SHELL ===== */
section{position:relative;padding:92px 0}
.eyebrow{display:inline-flex;align-items:center;gap:.6em;font-size:.78rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--eyebrow);margin-bottom:18px}
.eyebrow::before,.eyebrow.center::after{content:"";width:34px;height:1px;background:linear-gradient(90deg,transparent,var(--gold-500))}
.eyebrow.center::before{background:linear-gradient(90deg,var(--gold-500),transparent)}
.h-sec{font-size:clamp(2rem,4.6vw,3.3rem);font-weight:800;margin-bottom:14px;color:var(--text)}
.lead{color:var(--text-dim);font-size:1.08rem;max-width:60ch}
.center{text-align:center}
.center .lead{margin-left:auto;margin-right:auto}
.center .eyebrow{justify-content:center}

/* ===== HERO ===== */
.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:140px 0 90px;position:relative}
.arc{position:absolute;top:50%;left:50%;transform:translate(-50%,-46%);width:min(760px,86vw);height:min(760px,86vw);border:1px solid var(--border-strong);border-radius:50%;z-index:-1}
.arc.a2{width:min(560px,64vw);height:min(560px,64vw);border-color:var(--border)}
.hero .eyebrow{animation:fadeUp .8s var(--ease) both}
.hero h1{font-size:clamp(2.9rem,8vw,6rem);font-weight:800;letter-spacing:-.01em;animation:fadeUp .8s .08s var(--ease) both;color:var(--text)}
.hero h1 .bib{background:var(--bib-grad);background-size:300% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shimmer 7s linear infinite}
@keyframes shimmer{to{background-position:300% center}}
.hero .sub{font-size:clamp(1.05rem,2.4vw,1.4rem);color:var(--text);font-weight:500;margin:22px auto 6px;max-width:30ch;animation:fadeUp .8s .16s var(--ease) both}
.hero .date{font-family:'Playfair Display',serif;font-style:italic;font-size:1.25rem;color:var(--gold-400);margin-top:14px;animation:fadeUp .8s .24s var(--ease) both}
.hero .date b{font-style:normal;font-weight:700}
.price-row{display:flex;align-items:center;justify-content:center;gap:16px;margin:26px 0 8px;animation:fadeUp .8s .3s var(--ease) both}
.price-old{font-family:'Playfair Display',serif;font-style:italic;font-size:1.4rem;color:var(--muted);text-decoration:line-through;text-decoration-color:var(--gold-600)}
.price-new{font-size:1.55rem;font-weight:700;color:var(--pill-text);background:linear-gradient(135deg,var(--gold-300),var(--gold-400));padding:6px 26px;border-radius:40px}
.hero .btn{margin-top:26px;animation:fadeUp .8s .36s var(--ease) both}
.trust{margin-top:20px;font-size:.82rem;color:var(--muted);letter-spacing:.03em;animation:fadeUp .8s .44s var(--ease) both}
@keyframes fadeUp{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}
.count{display:flex;gap:14px;justify-content:center;margin:30px 0 4px;animation:fadeUp .8s .26s var(--ease) both}
.count .cell{min-width:74px;background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:12px 6px;box-shadow:var(--card-shadow)}
.count .num{font-family:'Playfair Display',serif;font-size:1.9rem;font-weight:700;color:var(--gold-300);line-height:1}
.count .lbl{font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-top:6px}

/* ===== QUOTE BAND ===== */
.quote-band{padding:96px 0;text-align:center;position:relative;overflow:hidden}
.quote-band::before{content:"";position:absolute;inset:0;background:url('../img/banner-desk.jpg') center/cover;opacity:var(--quote-img);filter:saturate(1.1)}
.quote-band::after{content:"";position:absolute;inset:0;background:var(--quote-tint);opacity:1}
.quote-band .wrap{position:relative;z-index:1}
.quote-mark{font-family:'Playfair Display',serif;font-size:6rem;color:var(--gold-500);line-height:.6;opacity:.5}
.quote-band q{font-family:'Playfair Display',serif;font-style:italic;font-size:clamp(1.5rem,3.6vw,2.4rem);font-weight:500;quotes:none;display:block;max-width:24ch;margin:8px auto 22px;color:var(--text)}
.quote-band cite{font-style:normal;font-size:.9rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-400)}

/* ===== PROBLEM ===== */
.problem .lead{font-size:1.15rem;color:var(--text)}
.statements{display:grid;gap:14px;margin-top:42px;max-width:760px}
.stmt{display:flex;align-items:center;gap:16px;padding:18px 24px;border-radius:16px;background:linear-gradient(120deg,rgba(210,98,138,.1),rgba(154,123,192,.06));border:1px solid var(--border-soft);font-family:'Playfair Display',serif;font-style:italic;font-size:1.15rem;color:var(--text)}
.stmt svg{flex:none;width:26px;height:26px;color:var(--magenta)}

/* ===== FORYOU ===== */
.foryou{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:42px}
.fy{display:flex;gap:15px;align-items:flex-start;padding:20px 22px;background:var(--panel);border:1px solid var(--border);border-radius:16px;transition:transform .35s var(--ease),border-color .35s,background .35s}
.fy:hover{transform:translateY(-4px);border-color:var(--border-strong)}
.fy .ic{flex:none;width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--ic-bg);color:var(--ic-color)}
.fy .ic svg{width:22px;height:22px}
.fy p{font-size:.98rem;color:var(--text-dim)}

/* ===== INCLUDES ===== */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:50px}
.card{position:relative;padding:34px 28px;border-radius:22px;background:linear-gradient(165deg,var(--panel),var(--panel-2));border:1px solid var(--border);overflow:hidden;transition:transform .4s var(--ease),box-shadow .4s,border-color .4s}
.card::before{content:"";position:absolute;inset:0;background:radial-gradient(120% 80% at 50% 0%,rgba(236,147,89,.16),transparent 60%);opacity:0;transition:opacity .4s}
.card:hover{transform:translateY(-8px);border-color:var(--border-strong);box-shadow:var(--card-shadow)}
.card:hover::before{opacity:1}
.card .ic{width:64px;height:64px;border-radius:18px;display:grid;place-items:center;margin-bottom:20px;background:var(--ic-bg);border:1px solid var(--ic-border);color:var(--ic-color)}
.card .ic svg{width:32px;height:32px}
.card h3{font-size:1.18rem;font-weight:700;color:var(--text);margin-bottom:8px;letter-spacing:.01em}
.card p{font-size:.93rem;color:var(--text-dim)}
.card .tag{display:inline-block;font-size:.72rem;font-weight:600;letter-spacing:.08em;color:var(--gold-400);margin-bottom:4px}
.card.gift{background:linear-gradient(165deg,rgba(236,147,89,.92),rgba(210,98,138,.82));border-color:rgba(243,221,174,.5)}
.card.gift .ic{background:rgba(255,255,255,.2);border-color:rgba(255,255,255,.4);color:#fff}
.card.gift h3,.card.gift p,.card.gift .tag,.card.gift p b{color:#fff}

/* ===== TEMARIO ===== */
.tl{margin-top:54px;display:grid;gap:18px}
.cl{display:grid;grid-template-columns:auto auto 1fr;gap:24px;align-items:center;padding:26px 30px;border-radius:20px;background:linear-gradient(110deg,var(--panel),var(--panel-2));border:1px solid var(--border);transition:transform .4s var(--ease),border-color .4s}
.cl:hover{transform:translateX(8px);border-color:var(--border-strong)}
.cl .no{font-family:'Playfair Display',serif;font-size:2.6rem;font-weight:800;background:linear-gradient(135deg,var(--gold-300),var(--orange));-webkit-background-clip:text;background-clip:text;color:transparent;line-height:1;min-width:64px}
.cl .ic{width:54px;height:54px;border-radius:14px;display:grid;place-items:center;background:var(--ic-bg);border:1px solid var(--ic-border);color:var(--ic-color)}
.cl .ic svg{width:28px;height:28px}
.cl .meta h3{font-size:1.18rem;font-weight:700;color:var(--text);margin-bottom:4px}
.cl .meta .lbl{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-500);display:block;margin-bottom:4px}
.cl .meta p{font-size:.92rem;color:var(--text-dim)}

/* ===== TRANSFORM ===== */
.tgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:50px}
.tt{text-align:center;padding:30px 20px;border-radius:18px;background:var(--panel);border:1px solid var(--border-soft);transition:transform .4s var(--ease),background .4s}
.tt:hover{transform:translateY(-6px)}
.tt .ic{width:72px;height:72px;margin:0 auto 16px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 30% 30%,rgba(236,147,89,.3),rgba(154,123,192,.18));border:1px solid var(--ic-border);color:var(--ic-color)}
.tt .ic svg{width:34px;height:34px}
.tt p{font-size:.96rem;color:var(--text-dim)}
.tt p b{color:var(--text);font-weight:600}

/* ===== APRENDES strip ===== */
.learn{background:var(--band-bg);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.learn-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:24px;margin-top:44px}
.lrn{display:flex;gap:14px;align-items:flex-start}
.lrn .n{flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:.9rem;color:var(--pill-text);background:linear-gradient(135deg,var(--gold-300),var(--gold-500))}
.lrn p{font-size:.95rem;color:var(--text-dim)}

/* ===== ABOUT ===== */
.about-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:52px;align-items:center;margin-top:30px}
.about-photo{position:relative;border-radius:24px;overflow:hidden;border:1px solid var(--ic-border);box-shadow:var(--card-shadow)}
.about-photo img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/5}
.about-txt p{color:var(--text-dim);margin-bottom:14px;font-size:1rem}
.about-txt p strong{color:var(--text);font-weight:600}
.creds{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.creds span{font-size:.78rem;padding:7px 14px;border-radius:30px;background:var(--panel);border:1px solid var(--border);color:var(--gold-300)}

/* ===== PRICING ===== */
.pricing{position:relative}
.pricing::before{content:"";position:absolute;inset:0;background:url('../img/portada.jpg') center/cover;opacity:var(--price-img);z-index:-1}
.pricing::after{content:"";position:absolute;inset:0;background:var(--price-tint);z-index:-1}
.price-card{max-width:560px;margin:50px auto 0;border-radius:28px;background:linear-gradient(165deg,var(--panel-solid),var(--panel-solid));border:1px solid var(--border-strong);overflow:hidden;box-shadow:0 40px 100px rgba(0,0,0,.45)}
.price-card .ribbon{background:linear-gradient(90deg,var(--magenta),var(--orange));color:#fff;text-align:center;padding:12px;font-weight:600;letter-spacing:.06em;font-size:.9rem}
.price-card .body{padding:42px 38px;text-align:center}
.price-card .access{font-family:'Playfair Display',serif;font-size:2rem;font-weight:800;margin-bottom:6px;color:var(--text)}
.price-card .nums{display:flex;align-items:baseline;justify-content:center;gap:14px;margin:18px 0}
.price-card .old{font-family:'Playfair Display',serif;font-style:italic;font-size:1.6rem;color:var(--muted);text-decoration:line-through;text-decoration-color:var(--gold-600)}
.price-card .new{font-size:3.4rem;font-weight:800;font-family:'Playfair Display',serif;background:linear-gradient(135deg,var(--gold-400),var(--orange));-webkit-background-clip:text;background-clip:text;color:transparent}
.price-card .new small{font-size:1.1rem;font-weight:600;-webkit-text-fill-color:var(--gold-500)}
.recap{text-align:left;max-width:330px;margin:24px auto 30px;display:grid;gap:10px}
.recap li{list-style:none;display:flex;gap:10px;align-items:flex-start;font-size:.92rem;color:var(--text-dim)}
.recap li svg{flex:none;width:20px;height:20px;color:var(--gold-400);margin-top:2px}
.price-card .btn{width:100%;justify-content:center}
.pay{display:flex;gap:8px;justify-content:center;align-items:center;margin-top:18px;font-size:.76rem;color:var(--muted);flex-wrap:wrap}
.pay b{color:var(--text-dim);font-weight:500}
.guarantee{display:flex;gap:14px;align-items:center;justify-content:center;max-width:560px;margin:22px auto 0;padding:16px 22px;border-radius:16px;background:var(--panel);border:1px solid var(--border);font-size:.9rem;color:var(--text-dim)}
.guarantee svg{flex:none;width:34px;height:34px;color:var(--gold-400)}

/* ===== FAQ ===== */
.faq-list{max-width:820px;margin:48px auto 0;display:grid;gap:14px}
.faq{border:1px solid var(--border);border-radius:16px;background:var(--panel);overflow:hidden;transition:border-color .3s}
.faq[open]{border-color:var(--border-strong)}
.faq summary{cursor:pointer;padding:22px 26px;font-weight:600;font-size:1.04rem;display:flex;justify-content:space-between;align-items:center;gap:18px;list-style:none;color:var(--text)}
.faq summary::-webkit-details-marker{display:none}
.faq summary .pl{flex:none;width:26px;height:26px;position:relative;transition:transform .35s}
.faq summary .pl::before,.faq summary .pl::after{content:"";position:absolute;background:var(--gold-400);border-radius:2px;left:50%;top:50%}
.faq summary .pl::before{width:14px;height:2px;transform:translate(-50%,-50%)}
.faq summary .pl::after{width:2px;height:14px;transform:translate(-50%,-50%);transition:transform .35s}
.faq[open] summary .pl::after{transform:translate(-50%,-50%) scaleY(0)}
.faq .ans{padding:0 26px 24px;color:var(--text-dim);font-size:.96rem}
.faq .ans b{color:var(--text)}

/* ===== FINAL ===== */
.final{text-align:center;padding:110px 0}
.final h2{font-size:clamp(2.1rem,5vw,3.6rem);font-weight:800;max-width:18ch;margin:0 auto 10px;color:var(--text)}
.final .sub{color:var(--text-dim);max-width:46ch;margin:0 auto 30px;font-size:1.08rem}

/* ===== FOOTER ===== */
footer{border-top:1px solid var(--border);padding:46px 0 60px;text-align:center;color:var(--muted);font-size:.86rem}
footer .brand{font-size:1.3rem;margin-bottom:10px;display:inline-block}
footer a{color:var(--gold-400)}

.sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:50;display:none;padding:12px 16px;background:var(--header-bg);backdrop-filter:blur(10px);border-top:1px solid var(--border-strong)}
.sticky-cta .btn{width:100%;justify-content:center;padding:14px}

.rv{opacity:0;transform:translateY(34px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.rv.in{opacity:1;transform:none}

@media(max-width:900px){
  .cards{grid-template-columns:repeat(2,1fr)}
  .tgrid{grid-template-columns:repeat(2,1fr)}
  .about-grid{grid-template-columns:1fr;gap:34px}
  .about-photo{max-width:420px;margin:0 auto}
}
@media(max-width:640px){
  section{padding:66px 0}
  .wrap{padding:0 18px}
  .nav-cta{display:none}
  .cards,.foryou,.tgrid{grid-template-columns:1fr}
  .cl{grid-template-columns:auto 1fr;gap:16px;padding:22px}
  .cl .ic{display:none}
  .price-card .body{padding:32px 22px}
  .sticky-cta{display:block}
  .final{padding:80px 0 120px}
  .count .cell{min-width:62px}
}
@media (prefers-reduced-motion: reduce){
  *{animation-duration:.001s!important;animation-iteration-count:1!important;transition:none!important}
  .rv{opacity:1;transform:none}
}
