:root{--paper:#F5EEDD;--paper2:#EDE3CB;--ink:#1F1A15;--soft:#4A4036;--red:#8E1F1A;--gold:#B8924A;--gold-l:#D9BC7C;--leather:#2A0E0C;--gutter:clamp(1rem,6vw,6rem)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:clip}
body{margin:0;background:var(--paper);color:var(--ink);font:400 1.18rem/1.65 "EB Garamond",Georgia,serif;overflow-x:hidden;-webkit-font-smoothing:antialiased}
body::after{content:"";position:fixed;inset:0;pointer-events:none;opacity:.07;z-index:50;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
img{max-width:100%;height:auto;display:block}
a{color:var(--red)}
h1,h2,h3{font-family:"IM Fell English",Georgia,serif;font-weight:400;margin:0 0 1rem;line-height:1.12}
h1{font-size:clamp(2.6rem,6.2vw,4.7rem)}
h1 em{color:var(--gold-l);font-style:italic}
h2{font-size:clamp(1.9rem,4vw,2.9rem)}
h3{font-size:1.4rem}
strong{font-weight:500}
.kicker{font:500 .76rem/1.5 "Cinzel",serif;letter-spacing:.22em;color:var(--red);margin:0 0 1rem}
.fine{font-size:.95rem;color:var(--soft)}
.section-head{text-align:center;margin-bottom:2.5rem}

/* topbar */
.topbar{position:fixed;inset:0 0 auto;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:.85rem clamp(1rem,4vw,3rem);background:linear-gradient(var(--leather),rgba(42,14,12,.85));backdrop-filter:blur(6px);border-bottom:1px solid rgba(184,146,74,.35)}
.brand{font:600 .95rem "Cinzel",serif;letter-spacing:.3em;color:var(--gold-l);text-decoration:none}
.topbar nav{display:flex;gap:1.5rem;align-items:center}
.topbar nav a{font:500 .72rem "Cinzel",serif;letter-spacing:.16em;text-transform:uppercase;color:var(--paper);text-decoration:none}
.topbar nav a:hover{color:var(--gold-l)}
.topbar .nav-buy{border:1px solid var(--gold);padding:.5rem .9rem;color:var(--gold-l)}

/* buttons */
.btn{display:inline-block;cursor:pointer;background:linear-gradient(180deg,#d4ac5f,#b8924a);color:#2A0E0C;font:600 .85rem "Cinzel",serif;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;padding:1rem 1.7rem;border:1px solid #e0c27f;box-shadow:0 6px 22px rgba(184,146,74,.35),inset 0 1px 0 rgba(255,255,255,.35);transition:transform .2s,box-shadow .2s}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(184,146,74,.5),inset 0 1px 0 rgba(255,255,255,.35)}
.btn.big{font-size:.95rem;padding:1.15rem 2.1rem}
.btn.ghost{background:transparent;color:var(--gold-l);box-shadow:none;border-color:var(--gold)}
.btn.ghost:hover{background:rgba(217,188,124,.12);box-shadow:none}

/* hero */
.hero{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(1.5rem,5vw,4rem);align-items:center;min-height:100vh;padding:7rem var(--gutter) 4rem;color:var(--paper);background:var(--leather);overflow:hidden}
.hero-bg{position:absolute;inset:0;background:radial-gradient(ellipse at 78% 40%,rgba(120,56,36,.7) 0%,transparent 60%),radial-gradient(ellipse at 10% 100%,rgba(184,146,74,.12),transparent 50%);animation:glow 9s ease-in-out infinite alternate}
@keyframes glow{from{opacity:.75}to{opacity:1}}
.hero>*:not(.hero-bg){position:relative}
.hero .kicker{color:var(--gold)}
.lead{font-size:1.28rem;max-width:34rem;color:#e9dfc8}
.cta-row{display:flex;flex-wrap:wrap;gap:1rem;margin:2rem 0 1.4rem}
.trust{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem 1.5rem;padding:0;margin:0;font:500 .72rem "Cinzel",serif;letter-spacing:.14em;text-transform:uppercase;color:#cdbf9f}
.trust li::before{content:"\2726";color:var(--gold);margin-right:.5rem}
.hero-photo{margin:0;border:1px solid var(--gold);padding:.6rem;background:rgba(0,0,0,.25);box-shadow:0 30px 80px rgba(0,0,0,.6),0 0 90px rgba(232,162,74,.12)}
.hero-photo img{width:100%;max-height:74vh;object-fit:cover}
.hero-photo figcaption{font:500 .66rem "Cinzel",serif;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-l);text-align:center;padding:.7rem 0 .2rem}

/* intro */
.intro{max-width:44rem;margin:0 auto;padding:5rem 1.2rem 3rem;font-size:1.3rem}
.dropcap::first-letter{font:400 4.7rem/.8 "IM Fell English",serif;float:left;color:var(--red);padding:.35rem .6rem 0 0}

/* storm picker */
.storm{padding:3rem var(--gutter) 5rem;text-align:center}
.chips{display:flex;flex-wrap:wrap;gap:.7rem;justify-content:center;max-width:52rem;margin:0 auto 2rem}
.chip{cursor:pointer;font:500 1.05rem "EB Garamond",serif;color:var(--ink);background:rgba(255,255,255,.4);border:1px solid rgba(184,146,74,.8);padding:.6rem 1.2rem;border-radius:2rem;transition:.2s}
.chip:hover{background:rgba(184,146,74,.18)}
.chip.on{background:var(--red);border-color:var(--red);color:var(--paper);box-shadow:0 6px 18px rgba(142,31,26,.3)}
.answer{max-width:40rem;margin:0 auto;background:#fffaf0;border:1px solid var(--gold);padding:2.2rem 2rem;box-shadow:0 18px 50px rgba(42,14,12,.14);position:relative}
.answer::before{content:"";position:absolute;inset:6px;border:1px solid rgba(184,146,74,.4);pointer-events:none}
.answer .ref{font:500 .74rem "Cinzel",serif;letter-spacing:.22em;color:var(--red);margin:0 0 .6rem}
.answer h3{font-size:1.9rem}
.answer p{margin:0 0 1rem}
.answer .tease{font-style:italic;color:var(--soft);margin-bottom:1.4rem}

/* band */
.band{position:relative;min-height:60vh;display:grid;place-items:center;overflow:hidden;background:var(--leather)}
.band img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55}
.band::after{content:"";position:absolute;inset:0;background:linear-gradient(rgba(42,14,12,.55),rgba(42,14,12,.2) 50%,rgba(42,14,12,.7))}
.band-text{position:relative;z-index:1;text-align:center;max-width:40rem;padding:4rem 1.2rem;color:var(--paper)}
.band-text p{font:italic clamp(1.8rem,4.2vw,2.7rem)/1.3 "IM Fell English",serif;margin:0 0 1.2rem;color:var(--gold-l);text-shadow:0 2px 20px rgba(0,0,0,.6)}
cite{font:500 .72rem "Cinzel",serif;letter-spacing:.2em;color:#d3c6a8;font-style:normal}

/* book offer */
.book{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(1.5rem,5vw,4.5rem);align-items:center;padding:5rem var(--gutter);background:var(--paper2);border-block:1px solid rgba(184,146,74,.5);scroll-margin-top:3rem}
.book-cover img{width:min(100%,24rem);margin:auto;box-shadow:0 28px 60px rgba(42,14,12,.5),-8px 0 0 rgba(0,0,0,.12);transform:rotate(-1.5deg)}
.sub{font:italic 1.35rem "IM Fell English",serif;color:var(--soft);margin:-.3rem 0 1.3rem}
.stack-title{font:500 .76rem "Cinzel",serif;letter-spacing:.2em;text-transform:uppercase;color:var(--red);margin:0 0 .6rem}
.list{padding-left:1.2rem;margin:0 0 1.8rem}
.list li{margin-bottom:.6rem}
.list li::marker{color:var(--gold)}
.price-box{display:flex;flex-wrap:wrap;gap:1.2rem 2rem;align-items:center;margin-bottom:1.2rem}
.price-wrap{display:flex;align-items:center;gap:1rem}
.price{font:400 3.6rem/1 "IM Fell English",serif;color:var(--red)}
.price-note{font-size:.92rem;line-height:1.35;color:var(--soft)}
.price-note b{display:block;color:var(--red);font-weight:500}
.guarantee{display:flex;gap:.9rem;align-items:flex-start;background:rgba(255,255,255,.5);border:1px dashed var(--gold);padding:.9rem 1.1rem;margin-bottom:.9rem}
.guarantee p{margin:0;font-size:1.02rem}
.seal{color:var(--gold);font-size:1.8rem;line-height:1}

/* how you use it */
.use{padding:5rem var(--gutter)}
.use-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(1.5rem,5vw,4rem);align-items:center;max-width:70rem;margin:auto}
.use figure{margin:0;border:1px solid var(--gold);padding:.5rem;background:rgba(255,255,255,.4);box-shadow:0 20px 50px rgba(42,14,12,.18)}
.steps{list-style:none;margin:0;padding:0}
.steps li{display:flex;gap:1.2rem;padding:1rem 0;border-bottom:1px solid rgba(184,146,74,.45)}
.steps li:last-child{border:0}
.steps span{flex:none;width:2.4rem;height:2.4rem;display:grid;place-items:center;border:1px solid var(--gold);border-radius:50%;font:500 .95rem "Cinzel",serif;color:var(--red);margin-top:.2rem}
.steps h3{margin:0 0 .15rem;font-size:1.3rem}
.steps p{margin:0;color:var(--soft)}

/* parts */
.parts{padding:2rem var(--gutter) 5rem}
.parts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:1.4rem}
.part{border:1px solid rgba(184,146,74,.6);padding:1.8rem 1.4rem;background:rgba(255,255,255,.4);transition:transform .25s,box-shadow .25s}
.part:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(42,14,12,.12)}
.part .num{font:500 .85rem "Cinzel",serif;color:var(--gold);letter-spacing:.3em;display:block;margin-bottom:.6rem}
.part p{margin:.3rem 0}
.part .ex{font-style:italic;color:var(--soft);font-size:1rem;margin-top:.9rem}

/* for you / father */
.foryou,.father{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(1.5rem,5vw,4rem);align-items:center;padding:5rem var(--gutter)}
.foryou{background:var(--leather);color:var(--paper)}
.foryou .kicker{color:var(--gold)}
.foryou .fine{color:#b9ac92}
.father{grid-template-columns:.9fr 1.1fr;background:var(--paper2);border-block:1px solid rgba(184,146,74,.5)}
.foryou figure,.father figure{margin:0;border:1px solid var(--gold);padding:.5rem;background:rgba(255,255,255,.08)}
.ticks{list-style:none;padding:0;margin:0 0 1.2rem}
.ticks li{padding:.45rem 0 .45rem 2rem;position:relative}
.ticks li::before{content:"\2713";position:absolute;left:0;top:.45rem;color:var(--gold-l);font-weight:700}
.foryou .btn{margin-top:.8rem}
.notice{border-left:3px solid var(--gold);padding:.4rem 0 .4rem 1rem;font-size:1.02rem;color:var(--soft)}

/* faq */
.faq{padding:5rem var(--gutter) 3rem;max-width:56rem;margin:auto}
.faq-list details{border-bottom:1px solid rgba(184,146,74,.6);padding:1.1rem 0}
.faq-list summary{cursor:pointer;font:400 1.35rem "IM Fell English",serif;list-style:none;display:flex;justify-content:space-between;gap:1rem}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:"+";color:var(--gold);font-size:1.6rem;line-height:1}
.faq-list details[open] summary::after{content:"\2212"}
.faq-list p{margin:.8rem 0 0;color:var(--soft)}

/* final */
.final{position:relative;display:grid;place-items:center;min-height:70vh;overflow:hidden;background:var(--leather);text-align:center}
.final img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.5}
.final::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(42,14,12,.35),rgba(42,14,12,.85))}
.final-text{position:relative;z-index:1;max-width:38rem;padding:4rem 1.2rem;color:var(--paper)}
.final-text p{font-size:1.25rem;color:#e9dfc8}
.final-text .fine{color:#b9ac92;margin-top:1rem}
.final-text .btn{margin-top:.8rem}

footer{background:#1a0807;color:#cfc3aa;padding:2.5rem var(--gutter);font-size:1rem;text-align:center}
footer a{color:var(--gold-l)}
.help{max-width:46rem;margin:0 auto 1.2rem}

/* sticky bar */
.sticky{position:fixed;left:0;right:0;bottom:0;z-index:30;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.7rem clamp(1rem,4vw,3rem);background:rgba(42,14,12,.96);backdrop-filter:blur(8px);border-top:1px solid var(--gold);transform:translateY(110%);transition:transform .35s;color:var(--paper)}
.sticky.show{transform:none}
.sticky strong{font:500 1rem "IM Fell English",serif;display:block}
.sticky span{font-size:.85rem;color:#cdbf9f}
.sticky .btn{padding:.75rem 1.3rem;white-space:nowrap}

/* reveal */
.js .reveal{opacity:0;transform:translateY(20px);transition:opacity .9s ease,transform .9s ease}
.js .reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.js .reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}.hero-bg{animation:none}.btn,.part{transition:none}}

@media (max-width:820px){
  body{font-size:1.1rem}
  .topbar nav a:not(.nav-buy){display:none}
  .hero,.book,.foryou,.father,.use-grid{grid-template-columns:1fr}
  .hero{padding-top:6rem;min-height:auto}
  .hero-photo{order:-1;max-width:17rem;margin:0 auto}
  .hero-photo img{max-height:46vh}
  .cta-row .btn{flex:1 1 100%;text-align:center}
  .father figure{order:-1}
  .use figure{max-width:22rem;margin:auto}
  .answer{padding:1.8rem 1.3rem}
  .sticky span{display:none}
  .book-cover img{transform:none;width:min(80%,18rem)}
}
