/* Aisle Cut — landing styles */
:root{
  --ivory:#faf7f2; --paper:#fffdf9; --ink:#1c1a17; --ink-soft:#4a453e;
  --gold:#a8842c; --line:#e4ddd0; --card:#ffffff;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--ivory);color:var(--ink);font-family:Georgia,'Times New Roman',serif;line-height:1.6}
img{display:block;max-width:100%}
a{color:var(--gold)}
.wrap{max-width:1080px;margin:0 auto;padding:0 24px}
.eyebrow{font-family:Helvetica,Arial,sans-serif;font-size:12px;letter-spacing:.32em;text-transform:uppercase;color:var(--gold);text-align:center}
h1,h2{font-weight:500;line-height:1.15}
h2{font-size:clamp(28px,4vw,40px);text-align:center;margin:14px 0 12px}
.sub{color:var(--ink-soft);text-align:center;max-width:640px;margin:0 auto}
section{padding:84px 0}

/* header */
header.site{position:absolute;top:0;left:0;right:0;z-index:5;padding:22px 0}
header.site .wrap{display:flex;justify-content:space-between;align-items:center}
.brand{font-size:20px;letter-spacing:.04em;color:#fff}
.brand small{display:block;font-family:Helvetica,Arial,sans-serif;font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:#e8ddc4}
nav a{font-family:Helvetica,Arial,sans-serif;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:#fff;text-decoration:none;margin-left:28px}

/* hero */
.hero{position:relative;min-height:92vh;display:flex;align-items:flex-end;color:#fff;padding:120px 0 64px}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,17,12,.38),rgba(20,17,12,.12) 40%,rgba(20,17,12,.66))}
.hero .wrap{position:relative;z-index:2;text-align:center;width:100%}
.hero h1{font-size:clamp(40px,6.4vw,68px);max-width:820px;margin:16px auto 18px}
.hero .eyebrow{color:#e8ddc4}
.hero p.lede{font-size:clamp(17px,2.2vw,20px);color:#f2ecdf;max-width:600px;margin:0 auto 32px}
.btn{display:inline-block;font-family:Helvetica,Arial,sans-serif;font-size:14px;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;padding:16px 34px;border-radius:2px}
.btn-gold{background:var(--gold);color:#fff}
.btn-ghost{border:1px solid rgba(255,255,255,.75);color:#fff;margin-left:12px}
.hero .proof{margin-top:26px;font-family:Helvetica,Arial,sans-serif;font-size:13px;letter-spacing:.08em;color:#e8ddc4}

/* pain */
.pain{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;max-width:880px;margin:52px auto 0;text-align:center}
.stat b{display:block;font-size:clamp(34px,4.5vw,48px);font-weight:500;color:var(--ink)}
.stat span{font-family:Helvetica,Arial,sans-serif;font-size:13px;letter-spacing:.06em;color:var(--ink-soft)}
.pain .note{max-width:680px;margin:44px auto 0;text-align:center;color:var(--ink-soft);font-style:italic}

/* steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:52px}
.step{background:var(--card);border:1px solid var(--line);padding:34px 28px}
.step .n{font-family:Helvetica,Arial,sans-serif;font-size:12px;letter-spacing:.3em;color:var(--gold);text-transform:uppercase}
.step h3{font-size:21px;font-weight:500;margin:12px 0 8px}
.step p{color:var(--ink-soft);font-size:15.5px}

/* film band */
.filmband{padding:0}
.filmband figure{position:relative}
.filmband img{width:100%;height:56vh;object-fit:cover}
.filmband figcaption{position:absolute;left:0;right:0;bottom:0;padding:28px 24px;background:linear-gradient(0deg,rgba(20,17,12,.72),transparent);color:#fff;text-align:center;font-style:italic}

/* pricing */
.pricing{background:var(--paper);border-top:1px solid var(--line)}
.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:52px;align-items:stretch}
.tier{background:var(--card);border:1px solid var(--line);padding:38px 30px;display:flex;flex-direction:column}
.tier.hero-tier{border:1.5px solid var(--gold);position:relative}
.tier .tag{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--gold);color:#fff;font-family:Helvetica,Arial,sans-serif;font-size:11px;letter-spacing:.22em;text-transform:uppercase;padding:5px 14px}
.tier h3{font-size:22px;font-weight:500;text-align:center}
.tier .price{text-align:center;font-size:42px;margin:10px 0 4px}
.tier .per{text-align:center;font-family:Helvetica,Arial,sans-serif;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:22px}
.tier ul{list-style:none;margin-bottom:30px}
.tier li{padding:9px 0;border-bottom:1px solid var(--line);color:var(--ink-soft);font-size:15.5px}
.tier li:last-child{border-bottom:none}
.tier .btn{margin-top:auto;text-align:center}
.btn-ink{background:var(--ink);color:#fff}
.anchor-line{text-align:center;color:var(--ink-soft);margin-top:36px;font-style:italic}

/* promise + faq */
.promise .card{max-width:760px;margin:40px auto 0;background:var(--card);border:1px solid var(--line);padding:40px 44px;text-align:center}
.promise .card p{color:var(--ink-soft)}
.faq{max-width:760px;margin:0 auto}
.faq details{border-bottom:1px solid var(--line);padding:18px 4px}
.faq summary{cursor:pointer;font-size:18px}
.faq p{color:var(--ink-soft);margin-top:8px}

/* final cta + footer */
.final{background:#211d16;color:#f2ecdf;text-align:center}
.final h2{color:#fff}
.final p{color:#cfc6ae;max-width:560px;margin:0 auto 30px}
footer.site{padding:34px 0;text-align:center;font-family:Helvetica,Arial,sans-serif;font-size:13px;color:var(--ink-soft)}
.demo-label{font-family:Helvetica,Arial,sans-serif;font-size:12px;letter-spacing:.06em;color:var(--ink-soft);text-align:center;margin-top:14px}

@media (max-width:820px){
  .stats,.steps,.tiers{grid-template-columns:1fr}
  .hero{min-height:84vh}
  nav a{margin-left:16px}
  .btn-ghost{margin-left:0;margin-top:12px}
}

/* DEMO */
.demo video { width: 100%; height: auto; border-radius: 8px; background: #14100c; display: block; }
.demo .demo-label { margin-top: 12px; font-size: 0.95rem; opacity: 0.75; text-align: center; }
.demo h2 { text-align: center; }
.demo .eyebrow { text-align: center; }
