/* AffirmMyName - marketing site (premium pass) */
@font-face{font-family:'Fraunces';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/fraunces-400.woff2) format('woff2')}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/fraunces-600.woff2) format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/manrope-400.woff2) format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/manrope-600.woff2) format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/manrope-700.woff2) format('woff2')}

:root{
  --paper:#FBF7F1; --panel:#FFFFFF; --ink:#221D26; --ink-soft:#6E6672;
  --line:#EBE1D5; --accent:#B87A22; --accent-ink:#8A5A15; --gold:#E8B84B;
  --plus:#7A5CC7; --good:#2E9E6B; --dark:#120E18; --dark2:#1D1724;
  --serif:'Fraunces',Georgia,serif; --sans:'Manrope',-apple-system,'Segoe UI',sans-serif;
  --grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--sans);background:var(--paper);color:var(--ink);line-height:1.65;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:var(--accent-ink)}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}

/* scroll reveal */
.rv{opacity:0;transform:translateY(26px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}}

/* header */
header{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--paper) 82%,transparent);backdrop-filter:blur(16px) saturate(1.3);border-bottom:1px solid color-mix(in srgb,var(--line) 70%,transparent)}
.nav{display:flex;align-items:center;gap:26px;padding:13px 0}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font-size:1.02rem}
.logo img{width:32px;height:32px;border-radius:9px;box-shadow:0 4px 12px -4px rgba(180,120,40,.5)}
.logo b{font-family:var(--serif);font-weight:600;letter-spacing:-.01em}
.nav nav{display:flex;gap:24px;margin-left:auto}
.nav nav a{text-decoration:none;color:var(--ink-soft);font-weight:600;font-size:.9rem;transition:.15s}
.nav nav a:hover{color:var(--ink)}
.btn{display:inline-block;border:none;border-radius:14px;padding:14px 24px;font-family:var(--sans);font-weight:700;font-size:.95rem;cursor:pointer;text-decoration:none;text-align:center;transition:transform .15s ease, box-shadow .2s ease, filter .15s}
.btn.gold{background:linear-gradient(135deg,#F1C560,#C98A2E);color:#2a1c05;box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 14px 30px -12px rgba(200,140,40,.6)}
.btn.gold:hover{filter:brightness(1.06);transform:translateY(-1px);box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 20px 38px -14px rgba(200,140,40,.7)}
.btn.ghost{background:transparent;border:1.5px solid var(--line);color:var(--ink)}
.btn.ghost:hover{border-color:var(--accent);transform:translateY(-1px)}
.btn:active{transform:scale(.98)}
.nav .btn{padding:10px 18px;font-size:.86rem}
@media(max-width:760px){.nav nav{display:none}}

/* hero */
.hero{position:relative;color:#fff;overflow:hidden;background:var(--dark)}
.hero .bg{position:absolute;inset:0;background:url(img/canyon-wide.jpg) center/cover no-repeat;opacity:.65}
.bgvid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
@media (prefers-reduced-motion:reduce){.bgvid{display:none}}
.hero .bg::after{content:"";position:absolute;inset:0;background:
  radial-gradient(900px 500px at 70% 20%, rgba(232,184,75,.18), transparent 60%),
  linear-gradient(180deg,rgba(14,10,18,.55) 0%,rgba(14,10,18,.78) 70%,rgba(18,14,24,.97) 100%)}
.hero::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.05;mix-blend-mode:overlay;background-image:var(--grain);background-size:200px}
.hero .inner{position:relative;z-index:2;display:grid;grid-template-columns:1.12fr .88fr;gap:56px;align-items:center;padding:104px 0 116px}
@media(max-width:880px){.hero .inner{grid-template-columns:1fr;padding:64px 0 76px}}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:.7rem;letter-spacing:.24em;text-transform:uppercase;font-weight:700;color:var(--gold);margin-bottom:20px}
.eyebrow::before{content:"";width:26px;height:1px;background:var(--gold);opacity:.7}
h1{font-family:var(--serif);font-weight:600;font-size:clamp(2.6rem,5.8vw,4.4rem);line-height:1.02;letter-spacing:-.028em;text-wrap:balance}
h1 em{font-style:italic;background:linear-gradient(100deg,#FFE9AE,#E8B84B 55%,#D99A34);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p.lede{font-size:1.16rem;color:rgba(255,255,255,.85);max-width:50ch;margin:24px 0 34px;line-height:1.7}
.trust{display:flex;gap:24px;margin-top:28px;font-size:.8rem;color:rgba(255,255,255,.6);font-weight:600;flex-wrap:wrap}
.trust span{display:flex;align-items:center;gap:7px}
.trust span::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--gold)}

/* waitlist form */
.waitlist{display:flex;gap:10px;max-width:470px}
.waitlist input{flex:1;border:1.5px solid rgba(255,255,255,.22);border-radius:14px;padding:14px 17px;font-family:var(--sans);font-size:.95rem;background:rgba(255,255,255,.08);color:#fff;outline:none;backdrop-filter:blur(8px);transition:border-color .15s}
.waitlist input::placeholder{color:rgba(255,255,255,.45)}
.waitlist input:focus{border-color:var(--gold)}
.waitlist .btn{white-space:nowrap}
.formmsg{margin-top:12px;font-size:.86rem;color:var(--gold);font-weight:700;min-height:1.3em}
.light .waitlist input{background:var(--panel);color:var(--ink);border-color:var(--line)}
.light .waitlist input::placeholder{color:var(--ink-soft)}
.light .formmsg{color:var(--accent-ink)}

/* phone mock */
.phone{width:302px;margin:0 auto;border-radius:44px;background:linear-gradient(160deg,#2b2634,#0b090f);padding:12px;box-shadow:0 60px 110px -40px rgba(0,0,0,.85),0 18px 40px -18px rgba(0,0,0,.6),inset 0 1px 1px rgba(255,255,255,.08);animation:phoneFloat 7s ease-in-out infinite}
@keyframes phoneFloat{0%,100%{transform:translateY(0) rotate(.4deg)}50%{transform:translateY(-12px) rotate(-.4deg)}}
@media (prefers-reduced-motion:reduce){.phone,.hero .bg{animation:none}}
.screen{border-radius:33px;overflow:hidden;background:#161119;padding:22px 17px 24px;position:relative}
.screen::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.05;mix-blend-mode:overlay;background-image:var(--grain);background-size:160px}
.screen .greet{font-size:.6rem;letter-spacing:.26em;text-transform:uppercase;color:rgba(255,255,255,.5);font-weight:700}
.screen .pname{font-family:var(--serif);font-weight:600;font-size:1.45rem;color:#fff;margin:4px 0 15px}
.pcard{border-radius:24px;padding:19px 17px;background:url(img/dawn-hills.jpg) center/cover;position:relative;overflow:hidden;box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 22px 44px -18px rgba(0,0,0,.75)}
.pcard::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,6,12,.3),rgba(8,6,12,.62))}
.pcard>*{position:relative}
.pcard .tag{font-size:.55rem;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.82);font-weight:800}
.pcard .aff{font-family:var(--serif);font-weight:600;font-size:1.07rem;line-height:1.48;color:#fff;margin:11px 0 17px;text-shadow:0 1px 12px rgba(0,0,0,.65)}
.pcard .aff b{color:#FFD27A;font-weight:600}
.pcard .row{display:flex;align-items:center;gap:11px}
.pcard .play{width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.42);display:grid;place-items:center;color:#fff;font-size:.9rem;backdrop-filter:blur(6px);box-shadow:inset 0 1px 0 rgba(255,255,255,.5)}
.pcard .meta{font-size:.65rem;color:rgba(255,255,255,.88);font-weight:700;line-height:1.35}
.screen .streak{display:inline-flex;gap:6px;margin-top:15px;border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:7px 13px;font-size:.7rem;font-weight:700;color:rgba(255,255,255,.85);background:rgba(255,255,255,.05)}

/* names marquee */
.names{background:var(--paper);border-bottom:1px solid var(--line);overflow:hidden;padding:26px 0;position:relative}
.names::before,.names::after{content:"";position:absolute;top:0;bottom:0;width:120px;z-index:2;pointer-events:none}
.names::before{left:0;background:linear-gradient(90deg,var(--paper),transparent)}
.names::after{right:0;background:linear-gradient(270deg,var(--paper),transparent)}
.ntrack{display:flex;gap:56px;width:max-content;animation:namesRoll 46s linear infinite}
.ntrack span{font-family:var(--serif);font-style:italic;font-weight:400;font-size:1.35rem;color:var(--ink-soft);white-space:nowrap}
.ntrack span b{font-style:italic;font-weight:600;color:var(--accent-ink)}
@keyframes namesRoll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.ntrack{animation:none}}

/* sections */
section{padding:104px 0}
.kicker{display:inline-flex;align-items:center;gap:10px;font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;font-weight:700;color:var(--accent-ink);margin-bottom:14px}
.kicker::before{content:"";width:26px;height:1px;background:var(--accent);opacity:.6}
h2{font-family:var(--serif);font-weight:600;font-size:clamp(1.9rem,3.8vw,2.9rem);letter-spacing:-.024em;line-height:1.08;text-wrap:balance;margin-bottom:16px}
.sub{color:var(--ink-soft);font-size:1.08rem;max-width:58ch}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:52px}
@media(max-width:880px){.grid{grid-template-columns:1fr}}
.fcard{position:relative;background:linear-gradient(var(--panel),var(--panel)) padding-box,linear-gradient(150deg,#EFDDC2,var(--line) 55%,#E6D6C4) border-box;border:1px solid transparent;border-radius:20px;padding:30px 26px;box-shadow:0 20px 44px -30px rgba(60,40,20,.4);transition:transform .25s ease,box-shadow .25s ease}
.fcard:hover{transform:translateY(-5px);box-shadow:0 30px 56px -30px rgba(60,40,20,.5)}
.fic{width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,#F8E7C2,#EAC98F);display:grid;place-items:center;color:#8A5A15;margin-bottom:16px;box-shadow:inset 0 1px 0 rgba(255,255,255,.6)}
.fic svg{width:22px;height:22px}
.fcard h3{font-family:var(--serif);font-weight:600;font-size:1.22rem;margin-bottom:9px;letter-spacing:-.01em}
.fcard p{font-size:.93rem;color:var(--ink-soft)}
.fcard p b{color:var(--ink)}

/* split feature rows */
.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;margin-top:20px}
@media(max-width:880px){.split{grid-template-columns:1fr;gap:28px}}
.split .shot{border-radius:26px;overflow:hidden;box-shadow:0 46px 80px -38px rgba(40,25,10,.55);aspect-ratio:4/3.4;background-size:cover;background-position:center;position:relative}
.split .shot::after{content:"";position:absolute;inset:0;box-shadow:inset 0 1px 0 rgba(255,255,255,.3);border-radius:26px}
.split ul{list-style:none;display:grid;gap:14px;margin-top:22px}
.split li{display:flex;gap:12px;align-items:flex-start;font-size:.99rem}
.split li b{font-weight:700}
.check{flex:none;width:20px;height:20px;border-radius:50%;background:var(--good);color:#fff;display:grid;place-items:center;font-size:.62rem;font-weight:800;margin-top:3px;box-shadow:0 3px 8px -3px rgba(46,158,107,.7)}

/* dark band */
.band{background:var(--dark);color:#fff;position:relative;overflow:hidden}
.band .bandbg{position:absolute;inset:0;background:url(img/starry-sky.jpg) center/cover;opacity:.45}
.band .bandbg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,10,18,.75),rgba(14,10,18,.92))}
.band::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.05;mix-blend-mode:overlay;background-image:var(--grain);background-size:200px}
.band .wrap{position:relative;z-index:2}
.band h2{color:#fff}
.band .sub{color:rgba(255,255,255,.76)}
.band .kicker{color:var(--gold)}
.band .kicker::before{background:var(--gold)}

/* steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:52px}
@media(max-width:880px){.steps{grid-template-columns:1fr}}
.step{border:1px solid rgba(255,255,255,.13);border-radius:20px;padding:30px 26px;background:rgba(255,255,255,.055);backdrop-filter:blur(10px);box-shadow:inset 0 1px 0 rgba(255,255,255,.08);transition:transform .25s ease}
.step:hover{transform:translateY(-4px)}
.step .n{font-family:var(--serif);font-size:2.1rem;background:linear-gradient(120deg,#FFE9AE,#D99A34);-webkit-background-clip:text;background-clip:text;color:transparent}
.step h3{font-family:var(--serif);font-weight:600;font-size:1.18rem;margin:10px 0 7px}
.step p{font-size:.92rem;color:rgba(255,255,255,.72)}

/* pricing */
.plans{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:56px}
@media(max-width:980px){.plans{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.plans{grid-template-columns:1fr}}
.plan{background:var(--panel);border:1.5px solid var(--line);border-radius:22px;padding:30px 26px;position:relative;display:flex;flex-direction:column;transition:transform .25s ease,box-shadow .25s ease}
.plan:hover{transform:translateY(-5px);box-shadow:0 30px 56px -32px rgba(60,40,20,.45)}
.plan.pop{background:linear-gradient(170deg,#231C2E,#161020);border-color:#3a2f4e;color:#fff;box-shadow:0 34px 66px -30px rgba(30,20,50,.65)}
.plan.pop h3,.plan.pop .price{color:#fff}
.plan.pop .per{color:rgba(255,255,255,.6)}
.plan.pop li{color:rgba(255,255,255,.85)}
.plan .badge{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:linear-gradient(135deg,#F1C560,#C98A2E);color:#2a1c05;font-size:.62rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:5px 14px;border-radius:999px;white-space:nowrap;box-shadow:0 8px 18px -8px rgba(200,140,40,.7)}
.plan h3{font-weight:700;font-size:.98rem;letter-spacing:.03em;text-transform:uppercase}
.plan .price{font-family:var(--serif);font-weight:600;font-size:2.3rem;margin:12px 0 2px}
.plan .price small{font-family:var(--sans);font-size:.82rem;color:var(--ink-soft);font-weight:600}
.plan.pop .price small{color:rgba(255,255,255,.55)}
.plan .per{font-size:.8rem;color:var(--ink-soft);font-weight:600;margin-bottom:18px}
.plan ul{list-style:none;display:grid;gap:10px;font-size:.88rem;margin-bottom:24px}
.plan li{display:flex;gap:9px;align-items:flex-start}
.plan li .check{margin-top:2px;width:17px;height:17px;font-size:.56rem}
.plan .btn{margin-top:auto}
.finemsg{margin-top:22px;font-size:.85rem;color:var(--ink-soft);text-align:center}

/* faq */
.faq{max-width:780px;margin:48px auto 0}
.faq details{border-bottom:1px solid var(--line);padding:6px 0}
.faq summary{cursor:pointer;font-weight:700;font-size:1.05rem;padding:18px 0;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--accent-ink);font-size:1.35rem;line-height:1;transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding:0 0 20px;color:var(--ink-soft);font-size:.97rem;max-width:66ch}

/* FREE emphasis + CTA polish */
.hl{font-weight:800;background:linear-gradient(180deg,transparent 58%,rgba(232,184,75,.5) 58%);padding:0 3px;border-radius:3px}
.band .hl,.hero .hl{background:none;color:var(--gold);font-weight:800}
.freeline{margin:18px 0 0;font-size:1.02rem;color:rgba(255,255,255,.92);font-weight:600}
.freeline b{color:var(--gold);font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.plan.freeplan{border:2px solid var(--gold);background:linear-gradient(180deg,#FFFDF6,#FFF6E3);box-shadow:0 26px 54px -26px rgba(200,140,40,.5)}
.plan.freeplan .badge{background:linear-gradient(135deg,#F1C560,#C98A2E);color:#2a1c05;box-shadow:0 8px 18px -8px rgba(200,140,40,.7)}
.plan.freeplan .price{color:var(--accent-ink)}
.plan.freeplan li{font-weight:600}
.fbadge{display:inline-block;background:rgba(232,184,75,.18);color:var(--accent-ink);font-size:.6rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:3px 9px;border-radius:999px;margin-bottom:12px}

/* rotating real-app screens inside the hero phone */
.appshots{position:relative;height:596px;border-radius:33px;overflow:hidden;background:#161119}
.appshots::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.05;mix-blend-mode:overlay;background-image:var(--grain);background-size:160px}
.as-screen{position:absolute;inset:0;padding:20px 16px;opacity:0;animation:asfade 15s infinite;display:flex;flex-direction:column}
.as-screen:nth-child(1){animation-delay:0s}
.as-screen:nth-child(2){animation-delay:5s}
.as-screen:nth-child(3){animation-delay:10s}
@keyframes asfade{0%{opacity:0}3%{opacity:1}31%{opacity:1}36%{opacity:0}100%{opacity:0}}
@media (prefers-reduced-motion:reduce){.as-screen{animation:none}.as-screen:first-child{opacity:1}}
.as-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:2px}
.as-eyebrow{font-size:.58rem;letter-spacing:.26em;text-transform:uppercase;color:rgba(255,255,255,.5);font-weight:700}
.as-icons{display:flex;gap:7px}
.as-ic{width:28px;height:28px;border-radius:50%;border:1px solid rgba(255,255,255,.16);display:grid;place-items:center;color:rgba(255,255,255,.8);font-size:.8rem;font-style:normal}
.as-name{font-family:var(--serif);font-weight:600;font-size:1.45rem;color:#fff;margin:2px 0 8px}
.as-streak{display:inline-flex;align-self:flex-start;gap:5px;border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:5px 11px;font-size:.64rem;font-weight:700;color:rgba(255,255,255,.85);background:rgba(255,255,255,.05);margin-bottom:11px}
.as-streak b{color:#FFD27A}
.as-screen .pcard{margin:0 0 4px}
.as-round{width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,.25);display:grid;place-items:center;color:#fff;font-size:.8rem;margin-left:auto}
.as-btn{border-radius:12px;padding:11px;text-align:center;font-size:.72rem;font-weight:700;margin-top:9px}
.as-btn.ghostb{border:1px solid rgba(255,255,255,.16);color:rgba(255,255,255,.85)}
.as-btn.pink{background:linear-gradient(135deg,#e8768f,#c9506e);color:#fff;box-shadow:0 10px 22px -10px rgba(201,80,110,.6)}
.as-btn.purple{background:linear-gradient(135deg,#8A6BD8,#6B4DB8);color:#fff;box-shadow:0 10px 22px -10px rgba(107,77,184,.6)}
.as-sethead{display:flex;justify-content:space-between;align-items:center;color:#fff;font-size:.92rem;font-weight:700;padding:2px 2px 12px;border-bottom:1px solid rgba(255,255,255,.12)}
.as-sethead span{color:#E8B84B;font-size:.72rem;font-weight:700}
.as-fold{display:flex;align-items:center;padding:13px 2px;border-bottom:1px solid rgba(255,255,255,.1);color:#fff;font-size:.78rem;font-weight:700}
.as-fold i{margin-left:auto;color:rgba(255,255,255,.4);font-style:normal}
.as-fold em{margin-left:auto;font-style:normal;color:rgba(255,255,255,.45);font-weight:600;font-size:.72rem}
.as-fold em ~ i{margin-left:8px}
.as-fold.open{color:#E8B84B;border-bottom:none}
.as-foldbody{padding:0 2px 12px;border-bottom:1px solid rgba(255,255,255,.1)}
.as-sub{font-size:.56rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.45);font-weight:700;margin:8px 0 6px}
.as-dots{display:flex;gap:8px}
.as-dots i{width:26px;height:26px;border-radius:9px;display:block}
.as-thumbs{display:flex;gap:7px}
.as-thumbs span{width:36px;height:30px;border-radius:8px;background-size:cover;background-position:center}
.as-thumbs span.sel{outline:2px solid #E8B84B}
.as-thumbs .more{display:grid;place-items:center;background:rgba(138,107,216,.25);color:#B9A3EE;font-size:.5rem;font-weight:800}
.as-notif{background:rgba(246,243,250,.94);border-radius:14px;padding:9px 11px;color:#1a1620;box-shadow:0 10px 26px -8px rgba(0,0,0,.5)}
.as-notif .nr{display:flex;gap:6px;align-items:center;font-size:.5rem;font-weight:800;letter-spacing:.06em;color:#6a6472;margin-bottom:3px}
.as-notif .nnow{margin-left:auto;font-weight:600}
.as-notif .ntit{font-weight:700;font-size:.72rem}
.as-notif .nbody{font-size:.66rem;color:#33303a}
.as-sheet{background:#1E1822;border-radius:20px 20px 26px 26px;padding:14px 14px 16px;box-shadow:0 -14px 34px -14px rgba(0,0,0,.6);margin-top:auto}
.as-grab{width:30px;height:4px;border-radius:2px;background:rgba(255,255,255,.2);margin:0 auto 10px}
.as-h3{font-family:var(--serif);font-weight:600;color:#fff;font-size:1.02rem;margin-bottom:3px}
.as-p{font-size:.62rem;color:rgba(255,255,255,.55);margin-bottom:10px}
.as-chips{display:flex;gap:6px;margin-bottom:10px}
.as-chips span{border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:6px 10px;font-size:.62rem;font-weight:700;color:rgba(255,255,255,.85)}
.as-chips span.on{border-color:#8A6BD8;background:rgba(138,107,216,.18)}
.as-msg{border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:8px 10px;font-size:.66rem;font-weight:600;color:rgba(255,255,255,.85);margin-bottom:7px}
.as-msg.on{border-color:#8A6BD8;background:rgba(138,107,216,.15)}

/* legal pages */
.doc{max-width:760px;margin:0 auto;padding:64px 24px 96px}
.doc h1{font-size:clamp(1.9rem,4vw,2.7rem);margin-bottom:8px}
.doc .updated{color:var(--ink-soft);font-size:.86rem;margin-bottom:38px}
.doc h2{font-size:1.35rem;margin:40px 0 10px}
.doc p,.doc li{color:#4a4450;font-size:.98rem;margin-bottom:12px}
.doc ul{padding-left:22px;margin-bottom:14px}
.doc strong{color:var(--ink)}

/* footer */
footer{background:var(--dark);color:rgba(255,255,255,.68);padding:60px 0 44px;font-size:.9rem;position:relative;overflow:hidden}
footer::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.04;mix-blend-mode:overlay;background-image:var(--grain);background-size:200px}
footer .wrap{position:relative;z-index:2}
footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:36px}
@media(max-width:760px){footer .cols{grid-template-columns:1fr}}
footer .logo{color:#fff;margin-bottom:14px}
footer h4{color:#fff;font-size:.76rem;letter-spacing:.16em;text-transform:uppercase;margin-bottom:14px}
footer a{color:rgba(255,255,255,.68);text-decoration:none;display:block;margin-bottom:10px;transition:.15s}
footer a:hover{color:var(--gold)}
footer .fine{border-top:1px solid rgba(255,255,255,.1);margin-top:42px;padding-top:24px;font-size:.78rem;color:rgba(255,255,255,.4);display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}
