/* ============================================================
   THE MIND REFORGE — site_v2 shared stylesheet
   Built on the Day One (start.html) design system.
   Dark, quiet, premium. One column for words, cards for proof.
   ============================================================ */

:root{
  --bg:#0C0B0B; --card:#141313; --elevated:#1A1919;
  --red:#C41A14; --red-hover:#E02020; --green:#1ECB5B; --gold:#C8A94F;
  --red-soft:rgba(196,26,20,0.07); --gold-soft:rgba(200,169,79,0.07);
  --brand:linear-gradient(90deg,var(--red),var(--gold));
  --white:#FFFFFF; --white-dim:#E8E8E8; --gray:#9A9A9A; --gray-faint:#5A5A5A;
  --border:#222222; --border-soft:#191818;
  --display:'Bebas Neue',sans-serif; --body:'DM Sans',sans-serif; --serif:'Playfair Display',serif;
  --ease:cubic-bezier(0.16,1,0.3,1);
  --pad:22px; --maxw:640px; --wide:980px;
}
/* Basit's Urdu Nastaliq, self-hosted (the classic Jameel Noori Nastaleeq). Only the Pakistan page pulls it. */
@font-face{
  font-family:'Jameel Noori Nastaleeq';
  src:url('fonts/JameelNooriNastaleeqKasheeda.woff') format('woff');
  font-weight:400 700; font-style:normal; font-display:swap;
}
*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
body{background:var(--bg);color:var(--white-dim);font-family:var(--body);font-weight:400;
  line-height:1.6;font-size:17px;overflow-x:hidden;-webkit-font-smoothing:antialiased;}
img{max-width:100%;height:auto;display:block;}
a{color:inherit;}
::selection{background:var(--red);color:var(--white);}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad);}
.wrap-wide{max-width:var(--wide);margin:0 auto;padding:0 var(--pad);}

/* atmosphere: red glow up top, faint gold lift down low */
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;
  background:radial-gradient(ellipse 95% 60% at 50% -6%,rgba(196,26,20,0.18),rgba(196,26,20,0.05) 42%,transparent 72%),
             radial-gradient(800px 480px at 50% 110%,rgba(200,169,79,0.06),transparent 62%);}
.sec{position:relative;z-index:1;}

/* reveal on scroll */
.rise{opacity:0;transform:translateY(18px);transition:opacity .8s var(--ease),transform .8s var(--ease);}
.rise.in{opacity:1;transform:none;}

/* logo mark (transparent PNG decoded from the Day One inline asset) */
.logo-mark{background:url('images/logo_mark.png') center/contain no-repeat;}

/* ---------- HEADER (one CTA, high up) ---------- */
.nav{position:sticky;top:0;z-index:20;background:rgba(12,11,11,0.86);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  border-bottom:1px solid var(--border-soft);}
.nav .row{max-width:var(--wide);margin:0 auto;padding:12px var(--pad);
  display:flex;align-items:center;justify-content:space-between;gap:14px;}
.nav .brand{display:flex;align-items:center;gap:11px;text-decoration:none;}
.nav .brand .logo-mark{width:34px;height:34px;}
.nav .brand b{font-family:var(--display);letter-spacing:.2em;font-size:16px;color:var(--white);font-weight:400;}
.nav .links{display:none;gap:24px;}
.nav .links a{font-size:13px;letter-spacing:.04em;color:var(--gray);text-decoration:none;transition:color .2s;}
.nav .links a:hover{color:var(--white);}
.nav .wa-mini{display:inline-flex;align-items:center;gap:8px;background:var(--red);color:#fff;
  font-weight:600;font-size:13.5px;letter-spacing:.01em;text-decoration:none;padding:9px 18px;border-radius:999px;white-space:nowrap;transition:background .2s var(--ease);}
.nav .wa-mini:hover{background:var(--red-hover);}
.nav .wa-mini svg{width:16px;height:16px;}
@media(min-width:760px){ .nav .links{display:flex;} }

/* ---------- HERO ---------- */
.hero{padding:42px 0 50px;text-align:center;}
.kicker{font-family:var(--display);letter-spacing:.34em;font-size:14px;color:var(--gold);text-transform:uppercase;}
.kicker .dot{color:var(--gray-faint);margin:0 8px;}
.hero .logo-mark{width:64px;height:64px;margin:0 auto 18px;}
.diptych{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:24px 0 28px;
  border:1px solid var(--border);border-radius:4px;overflow:hidden;background:#000;}
.shot{position:relative;}
.shot img{width:100%;aspect-ratio:3/4;object-fit:cover;filter:saturate(.92);}
.shot span{position:absolute;left:0;bottom:0;font-family:var(--display);letter-spacing:.22em;font-size:12px;
  color:var(--white);background:rgba(0,0,0,.55);padding:5px 12px;text-transform:uppercase;}
h1{font-family:var(--display);font-weight:400;line-height:.92;letter-spacing:.01em;
  font-size:clamp(50px,15vw,92px);color:var(--white);}
h1 .sub{display:block;font-size:clamp(19px,5.6vw,30px);letter-spacing:.03em;color:var(--white-dim);margin-top:12px;line-height:1.12;}
.promise{font-family:var(--serif);font-weight:400;font-size:clamp(18px,4.6vw,22px);color:var(--white-dim);max-width:500px;margin:20px auto 0;line-height:1.55;}

/* ---------- rule ---------- */
.rule{height:1px;background:linear-gradient(90deg,transparent,var(--border),transparent);margin:0 auto;max-width:var(--maxw);}

/* ---------- generic section heads ---------- */
.eyebrow{font-family:var(--display);letter-spacing:.28em;font-size:13px;color:var(--gold);
  text-transform:uppercase;text-align:center;margin-bottom:14px;}
.eyebrow::after{content:"";display:block;width:46px;height:2px;margin:10px auto 0;border-radius:2px;background:var(--brand);}
h2{font-family:var(--display);font-weight:400;line-height:.98;letter-spacing:.01em;
  font-size:clamp(34px,9vw,56px);color:var(--white);text-align:center;}
.block{padding:50px 0;}
.block p{margin:0 auto;max-width:var(--maxw);}
.lead{font-family:var(--serif);font-weight:400;font-size:clamp(18px,4.4vw,21px);color:var(--white-dim);text-align:center;
  max-width:560px;margin:14px auto 0;line-height:1.55;}
/* the mirror: the reader's own pain, the emotional hook that opens the story */
.mirror{font-family:var(--serif);font-weight:500;font-size:clamp(24px,5.8vw,36px);line-height:1.45;
  color:var(--white);max-width:600px;margin:0 auto;text-align:center;}

/* ---------- letter / story ---------- */
.letter p{margin:0 auto 18px;max-width:var(--maxw);color:var(--white-dim);}
.letter .sign{font-family:var(--serif);font-style:italic;font-size:24px;color:var(--gold);margin-top:8px;}
.epigraph{max-width:520px;margin:0 auto 32px;text-align:center;}
.epigraph .ur{font-family:var(--serif);font-style:italic;font-size:24px;line-height:1.5;color:var(--gold);letter-spacing:.012em;}
.epigraph .en{font-family:var(--body);font-weight:400;font-size:13.5px;line-height:1.55;color:var(--gray);
  letter-spacing:.03em;margin:13px auto 0;max-width:360px;}
.epigraph .attr{font-family:var(--display);letter-spacing:.26em;font-size:11px;color:var(--gray-faint);text-transform:uppercase;margin-top:14px;}

/* ---------- stats row ---------- */
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border);
  border:1px solid var(--border);border-radius:6px;overflow:hidden;max-width:var(--maxw);margin:0 auto;}
.stats div{background:var(--card);padding:22px 12px;text-align:center;}
.stats .v{font-family:var(--display);font-size:clamp(30px,9vw,44px);color:var(--white);line-height:1;}
.stats .k{font-size:12px;letter-spacing:.16em;color:var(--gray);text-transform:uppercase;margin-top:8px;}

/* ---------- progress triptych ---------- */
.triptych{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;max-width:var(--maxw);margin:26px auto 0;}
.triptych figure{position:relative;border:1px solid var(--border);border-radius:4px;overflow:hidden;background:#000;}
.triptych img{width:100%;aspect-ratio:3/4;object-fit:cover;}
.triptych figcaption{position:absolute;left:0;bottom:0;font-family:var(--display);letter-spacing:.2em;
  font-size:11px;color:var(--white);background:rgba(0,0,0,.6);padding:4px 9px;text-transform:uppercase;}

/* ---------- offer cards (three doors) ---------- */
.doors{display:grid;grid-template-columns:1fr;gap:16px;max-width:var(--wide);margin:32px auto 0;}
@media(min-width:840px){ .doors{grid-template-columns:repeat(3,1fr);align-items:stretch;} }
.plan{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:26px 22px;
  display:flex;flex-direction:column;position:relative;}
.plan.featured{border-color:transparent;background:
  linear-gradient(var(--card),var(--card)) padding-box,
  var(--brand) border-box;border:1px solid transparent;
  box-shadow:0 0 34px rgba(196,26,20,0.10);}
.plan.featured::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;border-radius:10px 10px 0 0;background:var(--brand);}
.plan .flag{position:absolute;top:-11px;left:50%;transform:translateX(-50%);background:var(--brand);color:var(--white);
  font-family:var(--display);letter-spacing:.18em;font-size:11px;padding:4px 14px;border-radius:999px;text-transform:uppercase;white-space:nowrap;}
.plan .pname{font-family:var(--display);letter-spacing:.06em;font-size:24px;color:var(--white);}
.plan .price{font-family:var(--display);font-size:48px;color:var(--white);line-height:1;margin:10px 0 2px;}
.plan .price .cur{font-size:24px;color:var(--gray);vertical-align:super;margin-right:2px;}
.plan .term{font-size:13px;letter-spacing:.08em;color:var(--gray);text-transform:uppercase;}
.plan .who{font-family:var(--body);font-weight:500;font-size:15px;color:var(--gold);margin:14px 0 16px;line-height:1.45;}
.plan ul{list-style:none;margin:0 0 22px;padding:0;}
.plan li{position:relative;padding:7px 0 7px 26px;font-size:15px;color:var(--white-dim);border-bottom:1px solid var(--border-soft);line-height:1.45;}
.plan li:last-child{border-bottom:none;}
.plan li::before{content:"";position:absolute;left:2px;top:13px;width:11px;height:6px;
  border-left:2px solid var(--green);border-bottom:2px solid var(--green);transform:rotate(-45deg);}
.plan .pick{margin-top:auto;}

/* ---------- WhatsApp button ---------- */
.wa{display:inline-flex;align-items:center;justify-content:center;gap:11px;background:var(--green);color:#04210F;
  font-family:var(--body);font-weight:700;font-size:18px;letter-spacing:.01em;text-decoration:none;
  padding:16px 30px;border-radius:999px;transition:transform .2s var(--ease);}
.wa.full{display:flex;width:100%;}
.wa:active{transform:scale(.97);}
.wa svg{width:22px;height:22px;flex-shrink:0;}
.wa.small{font-size:15px;padding:12px 22px;}

/* ---------- door / CTA ---------- */
.door{padding:58px 0 46px;text-align:center;}
.door .q{font-family:var(--display);font-size:clamp(40px,12vw,64px);line-height:.95;color:var(--white);letter-spacing:.02em;}
.door p{color:var(--gray);font-size:16px;max-width:420px;margin:14px auto 26px;}
.door .fine{margin-top:16px;font-size:13px;color:var(--gray-faint);}

/* ---------- testimonials ---------- */
.voices{display:grid;grid-template-columns:1fr;gap:14px;max-width:var(--wide);margin:30px auto 0;}
@media(min-width:680px){ .voices{grid-template-columns:1fr 1fr;} }
.voice{background:var(--card);border:1px solid var(--border);border-radius:10px;overflow:hidden;}
.voice img{width:100%;display:block;border-bottom:1px solid var(--border);}
.voice .body{padding:20px 22px;}
.voice p{font-size:15.5px;color:var(--white-dim);line-height:1.55;margin:0 0 14px;}
.voice .who{font-family:var(--display);letter-spacing:.12em;font-size:13px;color:var(--gold);text-transform:uppercase;}

/* ---------- FAQ ---------- */
.faq{max-width:var(--maxw);margin:28px auto 0;}
.faq details{border-bottom:1px solid var(--border);}
.faq summary{list-style:none;cursor:pointer;padding:18px 30px 18px 0;position:relative;
  font-weight:600;font-size:16.5px;color:var(--white);}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"+";position:absolute;right:2px;top:16px;font-size:24px;color:var(--gold);font-weight:400;transition:transform .2s;}
.faq details[open] summary::after{content:"\2212";}
.faq .a{padding:0 0 20px;color:var(--gray);font-size:15.5px;line-height:1.6;}

/* ---------- before / after (hair) ---------- */
.ba{display:grid;grid-template-columns:1fr 1fr;gap:6px;max-width:var(--maxw);margin:26px auto 0;
  border:1px solid var(--border);border-radius:6px;overflow:hidden;background:#000;}
.ba figure{position:relative;}
.ba img{width:100%;aspect-ratio:1/1;object-fit:cover;}
.ba figcaption{position:absolute;left:0;bottom:0;font-family:var(--display);letter-spacing:.2em;font-size:12px;
  color:var(--white);background:rgba(0,0,0,.6);padding:5px 12px;text-transform:uppercase;}

/* ---------- steps / numbered list ---------- */
.steps{max-width:var(--maxw);margin:24px auto 0;list-style:none;padding:0;counter-reset:s;}
.steps li{position:relative;padding:14px 0 14px 46px;border-bottom:1px solid var(--border-soft);color:var(--white-dim);line-height:1.5;}
.steps li:last-child{border-bottom:none;}
.steps li::before{counter-increment:s;content:counter(s);position:absolute;left:0;top:12px;
  width:30px;height:30px;border:1px solid var(--gold);color:var(--gold);border-radius:50%;
  font-family:var(--display);font-size:16px;display:flex;align-items:center;justify-content:center;}

/* ---------- note / aside ---------- */
.note{background:var(--elevated);border-left:2px solid var(--gold);border-radius:0 6px 6px 0;
  padding:16px 18px;max-width:var(--maxw);margin:22px auto 0;font-size:15px;color:var(--gray);line-height:1.55;}

/* ---------- footer ---------- */
footer{text-align:center;padding:44px 0 56px;border-top:1px solid var(--border-soft);margin-top:30px;}
footer .logo-mark{width:38px;height:38px;margin:0 auto 16px;opacity:.72;}
footer .b{font-family:var(--display);letter-spacing:.3em;font-size:13px;color:var(--gray);text-transform:uppercase;}
footer .fnav{margin:18px 0 14px;display:flex;flex-wrap:wrap;gap:8px 18px;justify-content:center;}
footer .fnav a{font-size:13px;color:var(--gray);text-decoration:none;}
footer .fnav a:hover{color:var(--white);}
footer .meta{font-size:12px;color:var(--gray-faint);letter-spacing:.04em;line-height:1.8;margin-top:10px;}
footer .meta a{color:var(--gray-faint);text-decoration:none;}

/* ---------- brand refinements v2 ---------- */
/* subtle section wash (red or gold) */
.block.wash-red{background:linear-gradient(180deg,transparent,var(--red-soft),transparent);}
.block.wash-gold{background:linear-gradient(180deg,transparent,var(--gold-soft),transparent);}
/* red-to-gold divider for the key breaks */
.rule.brand{height:2px;background:var(--brand);opacity:.7;border-radius:2px;}

/* ---------- the 7-day guarantee (a lead element, not fine print) ---------- */
.guarantee{max-width:var(--maxw);margin:0 auto;position:relative;overflow:hidden;text-align:center;
  background:linear-gradient(140deg,var(--card),rgba(196,26,20,0.10));
  border:1px solid var(--border);border-radius:14px;padding:30px 24px 28px;}
.guarantee::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:var(--brand);}
.guarantee .seal{width:66px;height:66px;margin:0 auto 14px;border-radius:50%;background:var(--brand);
  display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;
  box-shadow:0 0 0 4px rgba(200,169,79,0.12);}
.guarantee .seal b{font-family:var(--display);font-size:30px;line-height:.9;}
.guarantee .seal span{font-family:var(--display);font-size:10px;letter-spacing:.18em;margin-top:1px;}
.guarantee h3{font-family:var(--display);font-weight:400;letter-spacing:.04em;font-size:clamp(26px,7vw,38px);color:var(--white);}
.guarantee p{color:var(--white-dim);font-size:16px;max-width:480px;margin:10px auto 0;line-height:1.55;}
.guarantee .fineprint{margin-top:12px;font-size:13px;color:var(--gray-faint);}
.guarantee .fineprint a{color:var(--gold);text-decoration:none;}

/* ---------- script FAQs: Urdu (RTL, Nastaliq) + Hindi (Devanagari) ---------- */
/* Urdu Nastaliq stack: Mehr (if installed) -> Gulzar (classical Nastaliq on Google Fonts) -> Noto */
.nastaliq{font-family:'Jameel Noori Nastaleeq','Mehr Nastaliq Web','Gulzar','Noto Nastaliq Urdu',serif;direction:rtl;}
.devanagari{font-family:'Tiro Devanagari Hindi','Noto Serif Devanagari',serif;}
/* a localized poetic heading for the offer section (his own couplets) */
.couplet{font-weight:400;text-align:center;color:var(--gold);max-width:640px;margin:0 auto;}
.couplet.nastaliq{font-size:clamp(21px,5.2vw,30px);line-height:2.05;}
.couplet.devanagari{font-size:clamp(20px,5vw,28px);line-height:1.7;}
.ur.nastaliq{font-family:'Jameel Noori Nastaleeq','Mehr Nastaliq Web','Gulzar','Noto Nastaliq Urdu',serif;direction:rtl;line-height:2;}
.ur.devanagari{font-family:'Tiro Devanagari Hindi','Noto Serif Devanagari',serif;direction:ltr;}

.faq.ur{direction:rtl;text-align:right;}
.faq.ur summary{padding:18px 0 18px 32px;font-family:'Jameel Noori Nastaleeq','Mehr Nastaliq Web','Gulzar','Noto Nastaliq Urdu',serif;
  font-weight:400;font-size:19px;line-height:2.2;}
.faq.ur summary::after{right:auto;left:4px;top:22px;}
.faq.ur .a{font-family:'Jameel Noori Nastaleeq','Mehr Nastaliq Web','Gulzar','Noto Nastaliq Urdu',serif;font-size:16.5px;line-height:2.5;color:var(--gray);}
.faq.hi summary{font-family:'Tiro Devanagari Hindi',serif;font-size:17.5px;line-height:1.7;}
.faq.hi .a{font-family:'Tiro Devanagari Hindi',serif;font-size:16px;line-height:1.95;color:var(--gray);}

/* legal page body */
.legal{max-width:var(--maxw);margin:0 auto;padding:10px var(--pad) 40px;}
.legal h3{font-family:var(--display);letter-spacing:.04em;font-size:24px;color:var(--white);margin:30px 0 10px;font-weight:400;}
.legal p,.legal li{color:var(--gray);font-size:15.5px;line-height:1.65;}
.legal ul{margin:8px 0 8px 20px;}
.legal strong{color:var(--white-dim);}
.updated{font-size:13px;color:var(--gray-faint);text-align:center;letter-spacing:.06em;}
