/* ===== Личный проводник — Warm Cosmos ===== */
:root{
  --night-0:#0B1026; --night-1:#141A38; --night-2:#1E2547; --panel:#171D3D;
  --cream:#F4ECDD; --champagne:#E9D7B0; --gold:#C9A961; --gold-soft:#B89A5A;
  --lilac:#B8AECB; --muted:#8A87A3; --body:#D8D3E4;
  --hair:rgba(233,215,176,.16); --hair-strong:rgba(233,215,176,.30);
  --serif:'Cormorant Garamond', Georgia, serif;
  --sans:'Manrope', -apple-system, BlinkMacSystemFont, sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent;}
html{-webkit-text-size-adjust:100%;}
body{
  font-family:var(--sans); color:var(--cream); line-height:1.6;
  background:#070A18; -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
.hidden{display:none !important;}

/* phone column */
.app{
  max-width:460px; margin:0 auto; position:relative; min-height:100vh; overflow:hidden;
  background:
    radial-gradient(120% 55% at 50% -6%, #232a52 0%, rgba(35,42,82,0) 55%),
    radial-gradient(80% 42% at 82% 14%, rgba(201,169,97,.13) 0%, rgba(201,169,97,0) 60%),
    radial-gradient(70% 40% at 12% 30%, rgba(232,180,160,.08) 0%, rgba(232,180,160,0) 60%),
    linear-gradient(180deg, var(--night-1) 0%, var(--night-0) 42%, #080C1C 100%);
  box-shadow:0 0 90px rgba(0,0,0,.55);
}
.glow{
  position:absolute; left:50%; top:340px; transform:translateX(-50%);
  width:420px; height:420px; pointer-events:none; z-index:0;
  background:radial-gradient(circle, rgba(201,169,97,.10), transparent 62%); filter:blur(8px);
}
.wrap{position:relative; z-index:1; padding:0 22px;}

/* topbar */
.topbar{display:flex; align-items:center; justify-content:space-between; padding:20px 0 6px;}
.brand{display:flex; align-items:center; gap:9px; text-decoration:none;}
.brand .glyph{
  width:30px; height:30px; border-radius:50%; border:1px solid var(--hair-strong);
  display:grid; place-items:center;
  background:radial-gradient(circle at 35% 30%, rgba(233,215,176,.22), transparent 60%);
}
.brand .glyph svg{width:16px; height:16px;}
.brand .name{font-family:var(--serif); font-size:19px; font-weight:600; letter-spacing:.4px; color:var(--cream);}
.topbar .tag{font-size:10px; letter-spacing:.22em; text-transform:uppercase; color:var(--muted);}

/* shared bits */
.eyebrow{
  font-size:11px; font-weight:600; letter-spacing:.28em; text-transform:uppercase;
  color:var(--gold); display:inline-flex; align-items:center; gap:10px;
}
.eyebrow::before{content:""; width:26px; height:1px; background:linear-gradient(90deg,transparent,var(--gold-soft)); display:inline-block;}
.eyebrow.center::after{content:""; width:26px; height:1px; background:linear-gradient(90deg,var(--gold-soft),transparent); display:inline-block;}
h1,h2,h3{font-family:var(--serif); font-weight:500; line-height:1.08; letter-spacing:.2px;}
em,.gold-text{color:var(--champagne); font-style:italic;}

.btn{
  display:block; width:100%; font-family:var(--sans); font-size:16px; font-weight:600;
  letter-spacing:.02em; padding:18px 24px; border:none; border-radius:999px; cursor:pointer;
  background:linear-gradient(180deg,#F0DFB6 0%, var(--champagne) 45%, var(--gold) 100%);
  color:#231A0B; box-shadow:0 12px 32px rgba(201,169,97,.30), inset 0 1px 0 rgba(255,255,255,.5);
  transition:transform .16s ease, box-shadow .18s ease; text-align:center; text-decoration:none;
}
.btn:hover{transform:translateY(-1px); box-shadow:0 16px 38px rgba(201,169,97,.36);}
.btn:active{transform:translateY(1px) scale(.995);}
.btn.ghost{background:transparent; color:var(--champagne); border:1px solid var(--hair-strong); box-shadow:none; font-weight:500;}
.btn-note{text-align:center; font-size:12.5px; color:var(--muted); margin-top:13px; letter-spacing:.01em;}

/* hero */
.hero{padding:30px 0 24px; text-align:center;}
.hero .eyebrow{margin-bottom:24px;}
.hero h1{font-size:44px; line-height:1.04; letter-spacing:-.5px; margin-bottom:18px;}
.hero .sub{font-size:16px; color:var(--lilac); font-weight:400; max-width:350px; margin:0 auto 28px; line-height:1.62;}
.hero .sub b{color:var(--cream); font-weight:600;}
.hero-cta{max-width:340px; margin:0 auto;}
.trust-row{display:flex; justify-content:center; gap:16px; margin-top:24px; flex-wrap:wrap;}
.trust-row span{font-size:11.5px; color:var(--muted); display:inline-flex; align-items:center; gap:6px;}
.trust-row .dot{width:4px; height:4px; border-radius:50%; background:var(--gold); opacity:.85;}

/* orbit deco */
.orbit{position:relative; height:64px; margin-top:6px; display:flex; justify-content:center;}

/* example reading (trust: show before asking data) */
.example{
  margin:30px 0 4px; border-radius:22px; padding:22px 20px 20px;
  background:linear-gradient(180deg, rgba(30,37,71,.55), rgba(20,26,56,.35));
  border:1px solid var(--hair); box-shadow:0 14px 40px rgba(0,0,0,.32);
}
.example .ex-h{font-size:10.5px; letter-spacing:.2em; text-transform:uppercase; color:var(--gold); margin-bottom:12px; text-align:center;}
.example .ex-q{font-family:var(--serif); font-style:italic; font-size:18px; color:var(--champagne); text-align:center; margin-bottom:14px; line-height:1.3;}
.example .ex-cards{display:flex; justify-content:center; gap:8px; margin-bottom:14px;}
.example .ex-cards span{
  font-size:10px; letter-spacing:.04em; color:var(--lilac); border:1px solid var(--hair);
  border-radius:999px; padding:5px 11px; background:rgba(255,255,255,.02);
}
.example p{font-size:14.5px; color:var(--body); line-height:1.66; font-weight:400;}
.example p b{color:var(--cream); font-weight:600;}
.example .ex-sign{font-family:var(--serif); font-style:italic; font-size:14px; color:var(--gold); text-align:right; margin-top:8px;}

/* landing: with what people come (activation) */
.cases{margin:22px 0 4px; text-align:center;}
.cases .ex-h{font-size:10.5px; letter-spacing:.2em; text-transform:uppercase; color:var(--gold); margin-bottom:12px;}
.cases .case{font-size:14.5px; color:var(--body); line-height:1.5; padding:10px 14px; margin-bottom:8px;
  background:var(--panel); border:1px solid var(--hair); border-radius:12px;}
.cases .case b{color:var(--champagne); font-weight:600;}
.cases .link-cta{display:inline-block; margin-top:8px; color:var(--gold); text-decoration:none; font-weight:600; font-size:15px; border-bottom:1px solid var(--gold-soft); padding-bottom:2px;}

/* value props */
.section{padding:42px 0 6px;}
.section-head{text-align:center; margin-bottom:30px;}
.section-head .eyebrow{margin-bottom:14px;}
.section-head h2{font-size:32px; line-height:1.1;}
.props{display:flex; flex-direction:column;}
.prop{position:relative; padding:24px 2px 24px 52px; border-top:1px solid var(--hair);}
.prop:last-child{border-bottom:1px solid var(--hair);}
.prop .num{position:absolute; left:0; top:25px; font-family:var(--serif); font-style:italic; font-size:30px; color:var(--gold); line-height:1; width:40px;}
.prop h3{font-size:21px; margin-bottom:8px; color:var(--cream);}
.prop p{font-size:14.5px; color:var(--lilac); line-height:1.6;}
.prop .privacy{display:block; margin-top:8px; font-size:12.5px; color:var(--muted);}

/* cta band */
.cta-band{
  margin:42px 0 8px; padding:36px 24px 32px; border-radius:24px; text-align:center;
  background:radial-gradient(100% 120% at 50% 0%, rgba(201,169,97,.16), transparent 60%), linear-gradient(180deg, var(--panel), var(--night-1));
  border:1px solid var(--hair); box-shadow:inset 0 1px 0 rgba(233,215,176,.10);
}
.cta-band .eyebrow{margin-bottom:14px;}
.cta-band h2{font-size:29px; margin-bottom:20px; line-height:1.12;}
.cta-band .btn{max-width:300px; margin:0 auto;}

/* disclaimer / flourish */
.disclaimer{padding:28px 8px 8px; text-align:center;}
.flourish{display:flex; align-items:center; justify-content:center; gap:12px;}
.flourish .ln{width:40px; height:1px; background:linear-gradient(90deg,transparent,var(--gold-soft),transparent);}
.flourish .di{width:5px; height:5px; border:1px solid var(--gold); transform:rotate(45deg);}
.disclaimer p{font-size:12.5px; color:var(--muted); line-height:1.65; max-width:330px; margin:16px auto 0;}

/* flow break */
.flow-break{margin-top:38px; padding:28px 0 2px; text-align:center; border-top:1px solid var(--hair);}
.flow-break .eyebrow{margin-bottom:8px;}
.flow-break .hint{font-size:12px; color:var(--muted); letter-spacing:.03em;}

/* panels (flow steps) */
.panel{padding:26px 0 6px;}
.back{display:inline-block; color:var(--muted); text-decoration:none; font-size:13px; margin-bottom:6px;}
.flow-intro{font-size:15px; color:var(--lilac); text-align:center; max-width:340px; margin:6px auto 26px; line-height:1.6;}

/* form */
.field{margin-bottom:20px;}
.field > label{display:block; font-size:12px; letter-spacing:.13em; text-transform:uppercase; color:var(--champagne); font-weight:600; margin-bottom:9px;}
.field .opt{text-transform:none; letter-spacing:0; color:var(--muted); font-weight:400; font-size:12px;}
.field .reco{text-transform:none; letter-spacing:0; color:var(--gold); font-weight:500; font-size:11.5px;}
.input{
  width:100%; background:rgba(255,255,255,.03); border:1px solid var(--hair); border-radius:14px;
  padding:15px 16px; color:var(--cream); font-family:var(--sans); font-size:16px;
  transition:border-color .2s ease, background .2s ease;
}
.input::placeholder{color:#6E6B86;}
.input:focus{outline:none; border-color:var(--gold-soft); background:rgba(255,255,255,.05);}
input[type=date].input, input[type=time].input{color-scheme:dark; min-height:52px;}
.row2{display:flex; gap:12px;}
.row2 .field{flex:1;}
.timehint{font-size:11.5px; color:var(--muted); margin-top:8px; display:block;}
.check-row{display:flex; align-items:center; gap:9px; margin:8px 0 0; color:var(--muted); font-size:13.5px; cursor:pointer;}
.check-row input{width:auto; accent-color:var(--gold);}
.chips{display:flex; flex-wrap:wrap; gap:9px;}
.chip{
  font-family:var(--sans); font-size:13.5px; font-weight:500; padding:10px 16px; border-radius:999px;
  border:1px solid var(--hair); background:rgba(255,255,255,.02); color:var(--lilac); cursor:pointer; transition:all .16s ease;
}
.chip:hover{border-color:var(--hair-strong); color:var(--cream);}
.chip.active{background:linear-gradient(180deg, rgba(233,215,176,.95), rgba(201,169,97,.92)); color:#231A0B; border-color:transparent; font-weight:600; box-shadow:0 4px 14px rgba(201,169,97,.25);}
textarea.input{resize:none; min-height:84px; line-height:1.5;}
.form-cta{margin-top:28px;}

/* ritual / loading */
.ritual{
  margin:30px 0; padding:34px 24px; text-align:center; border-radius:22px;
  background:linear-gradient(180deg, rgba(30,37,71,.6), rgba(20,26,56,.4)); border:1px solid var(--hair);
}
.deck{position:relative; height:74px; width:120px; margin:0 auto 18px;}
.card-mini{
  position:absolute; top:0; left:50%; width:46px; height:70px; border-radius:9px;
  background:linear-gradient(160deg,#222a52,#161c3c); border:1px solid var(--hair-strong);
  box-shadow:0 8px 18px rgba(0,0,0,.45); transform-origin:bottom center;
}
.card-mini::after{content:""; position:absolute; inset:5px; border-radius:5px; border:1px solid rgba(233,215,176,.22);}
.card-mini.m1{transform:translateX(-50%) rotate(-14deg) translateX(-14px); animation:float1 3s ease-in-out infinite;}
.card-mini.m2{transform:translateX(-50%) rotate(0deg); animation:float2 3s ease-in-out infinite .3s;}
.card-mini.m3{transform:translateX(-50%) rotate(14deg) translateX(14px); animation:float1 3s ease-in-out infinite .6s;}
@keyframes float1{0%,100%{margin-top:0}50%{margin-top:-6px}}
@keyframes float2{0%,100%{margin-top:-4px}50%{margin-top:-10px}}
.ritual p{font-family:var(--serif); font-style:italic; font-size:20px; color:var(--champagne);}
.dots{display:inline-flex; gap:5px; margin-left:5px;}
.dots i{width:5px; height:5px; border-radius:50%; background:var(--gold); display:inline-block; animation:pulse 1.4s infinite;}
.dots i:nth-child(2){animation-delay:.2s} .dots i:nth-child(3){animation-delay:.4s}
@keyframes pulse{0%,100%{opacity:.25}50%{opacity:1}}

/* result */
.reading-top{text-align:center; margin:8px 0 24px;}
.reading-top .eyebrow{margin-bottom:14px;}
.reading-top h2{font-size:29px; line-height:1.12;}
.natal{
  border:1px solid var(--hair); border-radius:18px; padding:18px; margin-bottom:24px;
  background:radial-gradient(120% 120% at 100% 0%, rgba(201,169,97,.10), transparent 55%), rgba(255,255,255,.02);
}
.natal .lbl{font-size:10.5px; letter-spacing:.2em; text-transform:uppercase; color:var(--gold); margin-bottom:14px; text-align:center;}
.wheel-wrap{text-align:center; margin:2px 0 16px;}
.natal-wheel{width:100%; max-width:280px; height:auto; display:inline-block;
  filter:drop-shadow(0 8px 24px rgba(0,0,0,.35));}
.natal-grid{display:flex; justify-content:space-between;}
.natal-grid .cell{flex:1; text-align:center;}
.natal-grid .cell + .cell{border-left:1px solid var(--hair);}
.natal-grid .sym{font-size:24px; color:var(--champagne); display:block; margin-bottom:5px;}
.natal-grid .k{font-size:9.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); display:block; margin-bottom:3px;}
.natal-grid .v{font-size:13.5px; color:var(--cream); font-weight:500;}

.cards-lbl{font-size:10.5px; letter-spacing:.2em; text-transform:uppercase; color:var(--gold); text-align:center; margin-bottom:14px;}
.cards{display:flex; gap:10px; margin-bottom:28px;}
.tcard{
  flex:1; border-radius:16px; padding:15px 7px 14px; text-align:center; position:relative; overflow:hidden;
  background:linear-gradient(170deg,#202850 0%, #151B3A 100%); border:1px solid var(--hair-strong);
  box-shadow:0 12px 26px rgba(0,0,0,.42), inset 0 1px 0 rgba(233,215,176,.1);
}
.tcard::before{content:""; position:absolute; inset:6px; border-radius:10px; border:1px solid rgba(233,215,176,.18); pointer-events:none;}
.tcard .pos{font-size:8.5px; letter-spacing:.13em; text-transform:uppercase; color:var(--gold); margin-bottom:8px; position:relative;}
.tcard .art{margin-bottom:9px; border-radius:9px; overflow:hidden; position:relative; aspect-ratio:300/520; background:rgba(0,0,0,.2); display:grid; place-items:center;}
.cimg{width:100%; height:100%; object-fit:cover; display:block;}
.art.noimg::after, .thumb.noimg::after{content:"✦"; font-size:24px; color:var(--champagne);}
.tcard .nm{font-family:var(--serif); font-size:15px; color:var(--cream); line-height:1.05; margin:2px 0 4px; position:relative; letter-spacing:.2px;}
.tcard .or{font-size:9.5px; color:var(--muted); position:relative;}

/* intro + closing */
.intro{font-family:var(--serif); font-style:italic; font-size:18px; color:var(--champagne); text-align:center; line-height:1.4; max-width:360px; margin:0 auto 24px;}
.closing{font-size:15px; color:var(--lilac); text-align:center; line-height:1.6; margin:26px auto 2px; max-width:340px;}
.sign{font-family:var(--serif); font-style:italic; font-size:15px; color:var(--gold); text-align:center; margin-top:6px;}

/* per-card sections */
#card-sections{margin-top:26px;}
.card-section{padding:18px 0; border-top:1px solid var(--hair);}
.card-section:first-child{border-top:none;}
.cs-head{display:flex; align-items:center; gap:14px; margin-bottom:11px;}
.cs-head .thumb{width:54px; flex:none; border-radius:7px; overflow:hidden; aspect-ratio:300/520; background:rgba(0,0,0,.2); display:grid; place-items:center; box-shadow:0 4px 12px rgba(0,0,0,.4);}
.cs-pos{font-size:9.5px; letter-spacing:.16em; text-transform:uppercase; color:var(--gold); margin-bottom:3px;}
.cs-name{font-family:var(--serif); font-size:21px; color:var(--cream); line-height:1.05;}
.reversed-badge{font-family:var(--sans); font-size:9.5px; letter-spacing:.08em; text-transform:uppercase; color:var(--gold); border:1px solid var(--hair-strong); border-radius:999px; padding:2px 8px; vertical-align:middle; margin-left:6px; white-space:nowrap;}
.cs-body{font-size:15.5px; color:var(--body); line-height:1.7;}

/* one step (highlighted) */
.one-step{margin:24px 0 4px; padding:20px 20px 18px; border-radius:18px; border:1px solid var(--hair-strong);
  background:radial-gradient(120% 120% at 0% 0%, rgba(201,169,97,.16), transparent 60%), rgba(255,255,255,.03);}
.one-step .lbl{font-size:10.5px; letter-spacing:.2em; text-transform:uppercase; color:var(--gold); margin-bottom:9px;}
.one-step p{font-size:16px; color:var(--cream); line-height:1.55;}

/* natal line under the sign */
.natal-grid .line{display:block; margin-top:7px; font-size:11.5px; color:var(--lilac); line-height:1.4;}
.natal-grid .cell{padding:0 6px;}

/* tap-mirror (WOW hook) */
.mirror{margin:6px 0 20px;}
.mirror .lbl{font-size:10.5px; letter-spacing:.2em; text-transform:uppercase; color:var(--gold); text-align:center; margin-bottom:14px;}
.mcard{background:var(--panel); border:1px solid var(--hair); border-radius:14px; padding:15px 16px; margin-bottom:10px;}
.mcard .mtext{font-family:var(--serif); font-style:italic; font-size:17px; color:var(--cream); line-height:1.4; margin-bottom:12px;}
.mtaps{display:flex; gap:9px;}
.mtap{flex:1; font-family:var(--sans); font-size:13px; font-weight:500; padding:9px 10px; border-radius:999px;
  border:1px solid var(--hair); background:rgba(255,255,255,.02); color:var(--lilac); cursor:pointer; transition:all .15s ease;}
.mtap:hover{border-color:var(--hair-strong); color:var(--cream);}
.mtap.on{background:linear-gradient(180deg, rgba(233,215,176,.95), rgba(201,169,97,.92)); color:#231A0B; border-color:transparent; font-weight:600;}

/* "своими словами" field in the paywall */
.own-q{text-align:left; max-width:320px; margin:0 auto 16px;}
.own-q label{display:block; font-size:13px; color:var(--champagne); margin-bottom:8px;}
.own-q textarea{width:100%; resize:none; background:rgba(0,0,0,.22); border:1px solid var(--hair); border-radius:12px;
  padding:12px 14px; color:var(--cream); font-family:var(--sans); font-size:15px; line-height:1.45;}
.own-q textarea:focus{outline:none; border-color:var(--gold-soft);}
/* free offer badge + Q&A thread */
.freebadge{font-size:13.5px; color:var(--champagne); background:rgba(201,169,97,.10); border:1px solid var(--hair); border-radius:12px; padding:10px 14px; margin:4px auto 14px; max-width:340px; text-align:center; line-height:1.5;}
.freebadge b{color:var(--cream);}
.qa{max-width:520px; margin:0 auto;}
.qa-thread{display:flex; flex-direction:column; gap:14px; margin-bottom:18px;}
.qa-q{align-self:flex-end; max-width:85%; background:linear-gradient(180deg, rgba(233,215,176,.92), rgba(201,169,97,.88)); color:#231A0B; padding:10px 14px; border-radius:14px 14px 4px 14px; font-size:14.5px; line-height:1.5;}
.qa-a{align-self:flex-start; max-width:92%; background:rgba(0,0,0,.22); border:1px solid var(--hair); color:var(--body); padding:13px 16px; border-radius:14px 14px 14px 4px; font-size:15px; line-height:1.62; white-space:pre-wrap;}
.qa-a.pending{color:var(--muted); font-style:italic;}
.qa-fb{display:flex; align-items:center; gap:10px; margin-top:12px; padding-top:10px; border-top:1px solid var(--hair);}
.qa-fb .fbq{font-size:12.5px; color:var(--muted);}
.fbb{background:transparent; border:1px solid var(--hair-strong); border-radius:10px; padding:4px 12px; font-size:16px; cursor:pointer; line-height:1;}
.fbb:hover{border-color:var(--gold-soft);}
.fbb.on{background:rgba(201,169,97,.18); border-color:var(--gold);}
.qa-ask textarea{width:100%; resize:none; background:rgba(0,0,0,.22); border:1px solid var(--hair); border-radius:12px; color:var(--cream); font:inherit; font-size:14.5px; padding:11px 13px; margin-bottom:10px;}
.qa-ask textarea:focus{outline:none; border-color:var(--gold-soft);}
.qa-left{font-size:12px; color:var(--muted); text-align:center; margin-top:9px;}
.qa-ask-h{font-size:13px; color:var(--champagne); margin-bottom:10px;}
.qa-sugg{display:flex; flex-wrap:wrap; gap:8px; margin-bottom:12px;}
.qa-chip{background:rgba(201,169,97,.08); border:1px solid var(--hair-strong); border-radius:14px; color:var(--body); font:inherit; font-size:13px; padding:7px 12px; cursor:pointer; text-align:left; line-height:1.4;}
.qa-chip:hover{border-color:var(--gold-soft); color:var(--cream);}

/* paywall */
.paywall{
  margin:32px 0 8px; border-radius:24px; padding:32px 24px 28px; text-align:center; position:relative;
  background:radial-gradient(120% 90% at 50% 0%, rgba(201,169,97,.18), transparent 58%), linear-gradient(180deg, var(--panel), #121736);
  border:1px solid var(--hair-strong); box-shadow:0 18px 50px rgba(0,0,0,.45), inset 0 1px 0 rgba(233,215,176,.12);
}
.paywall .seal{width:46px; height:46px; border-radius:50%; margin:0 auto 16px; border:1px solid var(--gold-soft); display:grid; place-items:center; background:radial-gradient(circle at 40% 35%, rgba(233,215,176,.25), transparent 65%); font-size:20px;}
.paywall h2{font-size:27px; margin-bottom:14px; line-height:1.12;}
.paywall .pbody{font-size:14.5px; color:var(--lilac); line-height:1.6; max-width:320px; margin:0 auto 18px;}
.paywall .incl{list-style:none; text-align:left; max-width:300px; margin:0 auto 22px; display:flex; flex-direction:column; gap:11px;}
.paywall .incl li{font-size:14px; color:var(--cream); line-height:1.45; display:flex; gap:10px; align-items:flex-start;}
.paywall .incl li::before{content:"✦"; color:var(--gold); font-size:13px; line-height:1.5; flex:none;}
.paywall .teaser{font-family:var(--serif); font-style:italic; font-size:15.5px; color:var(--champagne); line-height:1.5;
  text-align:left; max-width:320px; margin:0 auto 16px; padding:12px 16px; border-left:2px solid var(--gold-soft);
  background:rgba(201,169,97,.06); border-radius:0 10px 10px 0;}
.paywall .anchor{font-size:12.5px; color:var(--lilac); line-height:1.5; max-width:320px; margin:0 auto 16px;}
.price-note{font-size:11.5px; color:var(--muted); margin-top:12px; letter-spacing:.03em; line-height:1.5;}

/* optin / done */
.optin{margin-top:22px; padding-top:22px; border-top:1px solid var(--hair);}
.optin .ot{font-family:var(--serif); font-size:21px; color:var(--cream); text-align:center; margin-bottom:8px; font-style:italic;}
.optin .ob{font-size:13px; color:var(--lilac); text-align:center; line-height:1.55; max-width:310px; margin:0 auto 16px;}
.optin-form{display:flex; flex-direction:column; gap:11px;}
.optin-form .input{text-align:center;}
.done{margin-top:6px; padding:24px; border-radius:18px; background:rgba(201,169,97,.06); border:1px solid var(--hair); text-align:center;}
.done .check{width:40px; height:40px; border-radius:50%; margin:0 auto 13px; border:1px solid var(--gold-soft); display:grid; place-items:center; font-size:18px; color:var(--champagne);}
.done .dt{font-family:var(--serif); font-style:italic; font-size:21px; color:var(--champagne); margin-bottom:7px;}
.done .db{font-size:13.5px; color:var(--lilac); line-height:1.55; max-width:300px; margin:0 auto;}
.done .gift{margin-top:14px; padding-top:14px; border-top:1px solid var(--hair); font-size:13.5px; color:var(--body); line-height:1.55;}
.done .gift b{color:var(--champagne); font-weight:600;}

/* footer */
.footer{padding:34px 8px 44px; text-align:center; border-top:1px solid var(--hair); margin-top:38px;}
.footer .fbrand{font-family:var(--serif); font-size:18px; color:var(--cream); letter-spacing:.4px; margin-bottom:9px;}
.footer p{font-size:11.5px; color:var(--muted); line-height:1.6; max-width:320px; margin:0 auto;}
.footer .links{margin-top:13px; font-size:11.5px;}
.footer .links a{color:var(--lilac); text-decoration:none; border-bottom:1px solid var(--hair); padding-bottom:1px;}

@media (max-width:380px){ .hero h1{font-size:38px;} .section-head h2{font-size:28px;} }
