/* base */
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%;scroll-padding-top:140px}
body{margin:0;font-size:16px;line-height:1.6;overflow-x:hidden}
body.menu-open{overflow:hidden}
img,svg{display:block;max-width:100%}
img{height:auto}
h1,h2,h3,h4,p,ul,ol,figure,blockquote,dl,dd{margin:0}
ul[role=list],ol[role=list]{list-style:none;padding:0}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
table{border-collapse:collapse}
fieldset{min-width:0;margin:0;padding:0;border:0}
.sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip{position:fixed;left:12px;top:56px;z-index:9999;padding:10px 16px;transform:translateY(-200%);transition:transform .2s}
.skip:focus{transform:none}
.ph{position:relative;overflow:hidden;margin:0}
.ph img{width:100%;height:100%;object-fit:cover}
.tbox{position:relative;overflow-x:auto;max-width:100%}
.js .rv{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.js .rv.in{opacity:1;transform:translateY(0px)}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.js .rv{opacity:1;transform:none}}
/* lightbox */
.lb{position:fixed;inset:48px 0 0 0;z-index:3000;background:rgba(10,12,10,.93);display:grid;grid-template-columns:56px minmax(0,1fr) 56px;align-items:center;gap:8px;padding:64px 8px 24px}
.lb-f{display:grid;gap:10px;justify-items:center;min-width:0}
.lb-f img{max-height:calc(100vh - 220px);width:auto;max-width:100%;background:#334;min-width:min(70vw,600px);aspect-ratio:4/3;object-fit:contain}
.lb-f figcaption{color:#eee;font-size:15px;text-align:center}
.lb button{min-width:44px;min-height:44px;border-radius:999px;border:1px solid rgba(255,255,255,.4);background:rgba(255,255,255,.08);color:#fff;font-size:22px}
.lb .lb-x{position:absolute;top:12px;right:16px;font-size:15px;padding:0 18px}
@media (max-width:700px){.lb{grid-template-columns:minmax(0,1fr);padding-top:70px}.lb-p,.lb-n{position:absolute;bottom:20px}.lb-p{left:20px}.lb-n{right:20px}.lb-f img{min-width:0;width:100%}}

/* Aso Ebi Studio: graphite and gold, playful. Card stack: sections slide over each other. */
:root{
  --ivory:#FBF6EC; --surface:#FFFFFF; --ink:#23252B; --graphite:#2E3138; --gold:#D4A017; --gold-d:#7E5C06; --goldl:#F3E3B5;
  --coral:#E05A47; --coral-d:#A93726; --muted:#5C5E66; --line:#E8DFCC;
  --hd:'Baloo 2',system-ui,sans-serif; --bd:'Literata',Georgia,serif;
}
body{background:var(--ivory);color:var(--ink);font-family:var(--bd);font-size:17px}
h1,h2,h3{font-family:var(--hd);font-weight:800;line-height:1.02;letter-spacing:-.01em}
h1{font-size:clamp(2.6rem,6vw,5.2rem)}
h2{font-size:clamp(1.9rem,3.6vw,3rem)}
h3{font-size:1.3rem;font-weight:700;line-height:1.15}
p{max-width:62ch}
.wrap{max-width:1260px;margin:0 auto;padding:0 28px}
.small{font-size:.86rem;color:var(--muted)}
.lead{font-size:1.15rem;margin-top:14px;color:#3A3C44}
.eyebrow{font-family:var(--hd);font-weight:700;font-size:.95rem;letter-spacing:.04em;color:var(--gold-d);margin-bottom:8px;display:inline-flex;align-items:center;gap:8px}
.eyebrow::before{content:"";width:12px;height:12px;border-radius:50%;background:var(--coral)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--coral);outline-offset:3px;border-radius:8px}
.skip{background:var(--ink);color:#fff;border-radius:999px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:10px 28px;border-radius:999px;background:var(--ink);color:#fff;font-family:var(--hd);font-weight:700;font-size:1.08rem;text-decoration:none;border:2px solid var(--ink);transition:transform .2s cubic-bezier(.3,1.6,.5,1),background .2s}
.btn:hover{transform:translateY(-3px) scale(1.03)}
.btn.ghost{background:transparent;color:var(--ink)}
.btn.gold{background:var(--gold);border-color:var(--gold);color:var(--ink)}
.btn.dark{background:var(--ink);color:#fff}
.more{font-family:var(--hd);font-weight:700;color:var(--coral-d)}
.more::after{content:" \2192"}

/* floating pill header */
.hdr{position:sticky;top:0;z-index:100;padding:10px 16px 0}
.hdr-in{max-width:1320px;margin:0 auto;height:68px;padding:0 10px 0 16px;display:flex;align-items:center;gap:18px;background:var(--graphite);color:#fff;border-radius:999px;box-shadow:0 14px 30px -18px rgba(0,0,0,.6);transition:height .25s}
.hdr.is-small .hdr-in{height:58px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit}
.brand .logo{width:42px;height:42px}
.brand b{display:block;font-family:var(--hd);font-size:1.2rem;line-height:1}
.brand small{display:block;font-size:.75rem;color:#C9C3B5}
.hnav{display:flex;gap:2px;margin-left:auto}
.hnav a{padding:8px 13px;border-radius:999px;color:#EEE8DA;text-decoration:none;font-family:var(--hd);font-weight:600;font-size:1rem}
.hnav a:hover{background:#43464F}
.hnav a[aria-current]{background:var(--gold);color:var(--ink)}
.menubtn{display:none;margin-left:auto;align-items:center;gap:10px;min-height:46px;padding:6px 18px;border-radius:999px;border:0;background:var(--gold);color:var(--ink);font-family:var(--hd);font-weight:700;font-size:1rem}
.dots{display:flex;gap:3px}.dots i{width:6px;height:6px;border-radius:50%;background:var(--ink)}
@media (max-width:1180px){.hnav{display:none}.menubtn{display:inline-flex}}
@media (max-width:520px){.hdr{padding:8px 10px 0}.brand small{display:none}}
.menu{position:fixed;inset:48px 0 0 0;z-index:500;background:var(--gold);clip-path:circle(0% at 92% 40px);transition:clip-path .5s cubic-bezier(.6,0,.2,1)}
.menu.open{clip-path:circle(150% at 92% 40px)}
.menu-in{height:100%;overflow:auto;max-width:640px;margin:0 auto;padding:22px 24px 40px}
.menu-top{display:flex;justify-content:space-between;align-items:center;font-family:var(--hd);font-size:1.2rem;margin-bottom:18px}
.menuclose{min-height:46px;padding:6px 20px;border-radius:999px;border:2px solid var(--ink);background:transparent;font-family:var(--hd);font-weight:700}
.mlist a{display:block;padding:8px 0;font-family:var(--hd);font-weight:800;font-size:2rem;text-decoration:none;line-height:1.2}
.mlist a[aria-current]{color:#fff;-webkit-text-stroke:1px var(--ink)}
.menu-c{margin-top:18px}
@media (prefers-reduced-motion:reduce){.menu{clip-path:none}}

/* hero */
.hero{padding:clamp(40px,6vw,80px) 0 clamp(70px,8vw,120px);overflow:hidden}
.hero-in{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:44px;align-items:center}
.hero h1 .w{display:inline-block}
.hero h1 .gold{background:linear-gradient(transparent 58%,var(--goldl) 58%);padding:0 6px}
.hero-b{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.hero-v{position:relative}
.hv-main .ph{border-radius:46% 54% 42% 58%/55% 40% 60% 45%;background:linear-gradient(140deg,var(--gold),#B8860B);box-shadow:16px 16px 0 var(--ink)}
.hv-card{position:absolute;left:-40px;bottom:30px;width:250px;background:var(--surface);border-radius:24px;padding:18px;box-shadow:0 20px 40px -20px rgba(0,0,0,.5);transform:rotate(-3deg);animation:bob 5s ease-in-out infinite}
@keyframes bob{50%{transform:rotate(-3deg) translateY(-8px)}}
.hv-k{font-family:var(--hd);font-weight:700;margin-bottom:10px}
.hv-bars{display:grid;gap:8px}
.hv-bars div{display:grid;grid-template-columns:74px 1fr 24px;gap:8px;align-items:center;font-size:.8rem}
.hv-bars i{display:block;height:10px;border-radius:999px;background:linear-gradient(90deg,var(--gold) var(--w),var(--line) var(--w))}
.hv-bars b{font-family:var(--hd)}
.hv-f{margin-top:10px;font-size:.78rem;color:var(--muted)}
.sticker{position:absolute;right:-6px;top:14px;background:var(--coral);color:var(--ink);font-family:var(--hd);font-weight:800;padding:12px 18px;border-radius:999px;transform:rotate(10deg);box-shadow:0 10px 20px -10px rgba(0,0,0,.5)}
.dot{position:absolute;border-radius:50%;animation:float 6s ease-in-out infinite}
.d0{width:22px;height:22px;background:var(--gold);left:10%;top:-10px}
.d1{width:14px;height:14px;background:var(--coral);right:20%;bottom:-16px;animation-delay:-2s}
.d2{width:30px;height:30px;border:4px solid var(--ink);right:-20px;top:46%;animation-delay:-1s}
.d3{width:12px;height:12px;background:var(--ink);left:-30px;top:30%;animation-delay:-3s}
.d4{width:18px;height:18px;background:var(--goldl);left:46%;bottom:-30px;animation-delay:-4s}
@keyframes float{50%{transform:translateY(-14px)}}
@media (max-width:900px){.hero-in{grid-template-columns:minmax(0,1fr)}.hero-v{max-width:440px;margin:0 auto;width:100%}.hv-card{left:0;bottom:-20px;width:220px}}

/* the card stack */
.stack{position:relative;padding-bottom:40px}
.sc{position:relative;border-radius:40px 40px 0 0;box-shadow:0 -20px 40px -24px rgba(0,0,0,.45);z-index:calc(var(--i) + 1)}
.sc-tab{position:absolute;top:-1px;left:50%;transform:translate(-50%,-100%);background:inherit;font-family:var(--hd);font-weight:700;font-size:.9rem;padding:6px 22px 4px;border-radius:16px 16px 0 0;white-space:nowrap}
.sc-in{padding-top:clamp(50px,6vw,80px);padding-bottom:clamp(60px,7vw,100px)}
.sc.t-ivory{background:var(--surface)}
.sc.t-graphite{background:var(--graphite);color:#F3EFE6}
.sc.t-graphite .eyebrow{color:var(--goldl)}
.sc.t-graphite .lead{color:#DCD6C8}
.sc.t-gold{background:var(--gold)}
.sc.t-gold .eyebrow,.sc.t-coral .eyebrow{color:var(--ink)}
.sc.t-gold .eyebrow::before{background:var(--ink)}
.sc.t-coral{background:var(--coral)}
.sc.t-coral .eyebrow::before{background:var(--goldl)}
.sc.t-coral .lead,.sc.t-gold .lead{color:var(--ink)}
.sc+.sc{margin-top:-40px}
@media (min-width:900px) and (min-height:640px){
  .sc{position:sticky;top:calc(48px + 96px + var(--i) * 18px);min-height:calc(100vh - 220px)}
  .sc+.sc{margin-top:0}
  .stack{padding-bottom:10vh}
}
.duo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center}
.duo-v .ph{border-radius:32px;background:var(--goldl)}
@media (max-width:860px){.duo{grid-template-columns:minmax(0,1fr);gap:32px}}
.sh{display:grid;gap:4px;margin-bottom:24px}
.sh h2{max-width:20ch}
.steps{list-style:none;padding:0;display:grid;gap:12px;counter-reset:s}
.steps li{counter-increment:s;display:grid;grid-template-columns:50px minmax(0,1fr);column-gap:16px;align-items:start;background:var(--ivory);padding:16px 18px;border-radius:22px}
.steps li::before{content:counter(s);grid-row:span 2;width:50px;height:50px;border-radius:16px;background:var(--gold);display:grid;place-items:center;font-family:var(--hd);font-weight:800;font-size:1.4rem;transform:rotate(-6deg)}
.steps b{font-family:var(--hd);font-size:1.2rem}
.steps span{color:var(--muted)}
.sc.t-graphite .steps li,.sec.t-graphite .steps li{background:#3A3D45}
.sc.t-graphite .steps span,.sec.t-graphite .steps span{color:#DCD6C8}
.mini-dash{background:var(--surface);color:var(--ink);border-radius:30px;padding:24px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.ring{position:relative;display:grid;justify-items:center;gap:4px}
.ring svg{width:100%;max-width:120px;transform:rotate(-90deg)}
.r-bg{fill:none;stroke:var(--line);stroke-width:12}
.r-fg{fill:none;stroke:var(--gold);stroke-width:12;stroke-linecap:round}
.ring b{position:absolute;top:30%;font-family:var(--hd);font-size:1.5rem}
.ring span{font-family:var(--hd);font-weight:600;color:var(--muted)}
.md-list{grid-column:1/-1;list-style:none;padding:0;display:grid;gap:6px}
.md-list li{display:flex;justify-content:space-between;gap:10px;padding:8px 12px;background:var(--ivory);border-radius:14px;font-family:var(--hd);font-weight:600}
.st{font-style:normal;font-family:var(--hd);font-weight:700;font-size:.85rem;padding:3px 12px;border-radius:999px;white-space:nowrap}
.st.s0{background:#ECE7DC;color:#4A4C54}.st.s1{background:#FCE1DC;color:#8E2E20}.st.s2{background:#E3E7F5;color:#2E3A6B}.st.s3{background:#FFF0C2;color:#6B4D00}.st.s4{background:#D9F0DF;color:#1E5B32}.st.s5{background:var(--ink);color:var(--goldl)}
.pkgs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:28px}
.pkg{background:var(--ivory);border-radius:28px;padding:24px;display:grid;gap:4px;transition:transform .25s cubic-bezier(.3,1.6,.5,1)}
.pkg:hover{transform:rotate(-2deg) scale(1.03)}
.pkg b{font-family:var(--hd);font-size:2rem;line-height:1}
.pkg span{color:var(--muted)}
@media (max-width:900px){.pkgs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.pkgs{grid-template-columns:minmax(0,1fr)}}
.fan{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:20px 0}
.fan .ph{border-radius:24px;border:6px solid var(--surface);box-shadow:0 20px 30px -18px rgba(0,0,0,.6);background:var(--goldl)}
.fan .ph:nth-child(1){transform:rotate(-8deg) translateX(20px)}
.fan .ph:nth-child(2){transform:translateY(-16px);z-index:2}
.fan .ph:nth-child(3){transform:rotate(8deg) translateX(-20px)}
.quotes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.q{background:var(--ivory);border-radius:30px 30px 30px 6px;padding:26px;display:grid;gap:14px}
.q:nth-child(2){background:var(--goldl);border-radius:30px 30px 6px 30px}
.q blockquote{margin:0;font-size:1.06rem}
.q figcaption{font-family:var(--hd);font-weight:700;color:var(--coral-d)}
@media (max-width:860px){.quotes{grid-template-columns:minmax(0,1fr)}}

/* plain sections */
.sec{padding:clamp(60px,7vw,100px) 0}
.sec.t-ivory{background:var(--surface)}
.sec.t-graphite{background:var(--graphite);color:#F3EFE6}
.sec.t-graphite .eyebrow{color:var(--goldl)}
.sec.t-graphite .lead,.sec.t-graphite .small{color:#DCD6C8}
.jrow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.jr,.related{display:grid;gap:8px;background:var(--ivory);border-radius:30px;padding:28px;text-decoration:none;transition:transform .25s cubic-bezier(.3,1.6,.5,1)}
.sec.t-ivory .jr{background:var(--ivory)}
.jr:hover,.related:hover{transform:translateY(-4px) rotate(-1deg)}
.jr p,.related p{color:var(--muted)}
.related{margin-bottom:28px;background:var(--goldl)}
@media (max-width:760px){.jrow{grid-template-columns:minmax(0,1fr)}}

/* page hero */
.phero{padding:clamp(36px,5vw,70px) 0 clamp(50px,6vw,80px);overflow:hidden}
.phero-in{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:40px;align-items:center}
.phero-v{position:relative;max-width:420px;justify-self:end;width:100%}
.blob .ph{border-radius:58% 42% 50% 50%/45% 55% 45% 55%;background:linear-gradient(140deg,var(--gold),var(--coral));box-shadow:12px 12px 0 var(--ink)}
.phero-v .sticker{top:auto;bottom:10px;right:auto;left:-20px;transform:rotate(-8deg)}
.confetti{position:absolute;inset:-30px;width:calc(100% + 60px);height:calc(100% + 60px);pointer-events:none}
.crumbs{display:flex;gap:8px;font-size:.9rem;color:var(--muted);margin-bottom:12px}
.crumbs a{color:var(--muted)}
@media (max-width:820px){.phero-in{grid-template-columns:minmax(0,1fr)}.phero-v{justify-self:start;max-width:300px}}

/* tracker */
.ev{display:flex;justify-content:space-between;flex-wrap:wrap;gap:18px;align-items:flex-start;background:var(--graphite);color:#F3EFE6;border-radius:30px;padding:26px 30px;margin-bottom:20px}
.ev .eyebrow{color:var(--goldl)}
.ev h2{font-size:clamp(1.5rem,2.6vw,2.2rem)}
.ev p{color:#DCD6C8;margin-top:6px}
.ev-chip{background:var(--gold);color:var(--ink);font-family:var(--hd);font-weight:700;padding:8px 16px;border-radius:999px}
.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:22px}
.kpi{background:var(--ivory);border-radius:24px;padding:20px;display:grid;gap:6px}
.kpi b{font-family:var(--hd);font-size:2rem;line-height:1}
.kpi span{color:var(--muted);font-size:.92rem}
.kpi i{display:block;height:8px;border-radius:999px;background:linear-gradient(90deg,var(--gold) var(--w),var(--line) var(--w));transition:background .4s}
@media (max-width:860px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
.tk-bar{display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between;align-items:center;margin-bottom:10px}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{min-height:44px;padding:6px 16px;border-radius:999px;border:2px solid var(--line);background:var(--surface);font-family:var(--hd);font-weight:600}
.chip[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}
.srch{min-width:240px}
.tk-n{font-family:var(--hd);font-weight:600;color:var(--muted);margin:6px 0 10px}
.gt{width:100%;min-width:760px;background:var(--surface);border-radius:20px;overflow:hidden}
.gt th,.gt td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:middle}
.gt thead th{background:var(--ivory);font-family:var(--hd);font-weight:700}
.gt tbody th{font-family:var(--hd);font-weight:700}
.gt .code{font-family:var(--hd);color:var(--muted);font-size:.9rem}
.gt .acts{display:flex;gap:6px;flex-wrap:wrap}
.gt button{min-height:40px;padding:4px 14px;border-radius:999px;border:2px solid var(--ink);background:var(--surface);font-family:var(--hd);font-weight:700;font-size:.9rem}
.gt button.next{background:var(--gold);border-color:var(--gold)}
.gt button[disabled]{opacity:.4}
.gt tr.flash{animation:flash 1s}
@keyframes flash{from{background:var(--goldl)}}
.tk-tools{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;margin:24px 0 14px}
.addg,.remind{background:var(--ivory);border-radius:28px;padding:24px;display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}
@media (max-width:860px){.tk-tools{grid-template-columns:minmax(0,1fr)}}
.lookup{display:grid;gap:12px;grid-template-columns:minmax(0,1fr);max-width:460px}
.lk-msg{margin-top:10px;font-family:var(--hd);font-weight:700;color:var(--goldl)}
.lk-out{background:var(--surface);color:var(--ink);border-radius:30px;padding:26px}
.lk-tl{list-style:none;padding:0;margin-top:14px;display:grid;gap:0;border-left:4px solid var(--line);margin-left:10px}
.lk-tl li{position:relative;padding:0 0 16px 24px;font-family:var(--hd);font-weight:600;color:var(--muted)}
.lk-tl li::before{content:"";position:absolute;left:-12px;top:2px;width:20px;height:20px;border-radius:50%;background:var(--line);border:3px solid var(--surface)}
.lk-tl li.done{color:var(--ink)}
.lk-tl li.done::before{background:var(--gold)}
.lk-tl li.now::before{background:var(--coral);box-shadow:0 0 0 6px rgba(224,90,71,.25)}

/* package calculator */
.calc{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:30px;align-items:start}
.calc-f{display:grid;gap:22px;grid-template-columns:minmax(0,1fr)}
.fabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
.fabs label,.ck{position:relative}
.fabs input,.ck input{position:absolute;opacity:0;width:1px;height:1px}
.fabs span{display:grid;gap:2px;padding:16px;border-radius:22px;border:2px solid var(--line);background:var(--ivory);cursor:pointer;min-height:100%}
.fabs b{font-family:var(--hd);font-size:1.15rem}
.fabs em{font-style:normal;font-family:var(--hd);font-weight:600;color:var(--gold-d)}
.fabs small{color:var(--muted);font-size:.85rem}
.fabs input:checked+span{border-color:var(--ink);background:var(--goldl);transform:rotate(-1deg)}
.fabs input:focus-visible+span,.ck input:focus-visible+span{outline:3px solid var(--coral);outline-offset:2px}
.cks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 14px}
@media (max-width:560px){.cks{grid-template-columns:minmax(0,1fr)}}
.ck span{display:flex;align-items:center;gap:10px;min-height:44px;cursor:pointer}
.ck span::before{content:"";flex:0 0 24px;height:24px;border-radius:8px;border:2px solid var(--ink);background:var(--surface)}
.ck input:checked+span::before{background:var(--gold) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12l4 4 8-8' stroke='%2323252B' stroke-width='3' fill='none'/%3E%3C/svg%3E") center/16px no-repeat}
.calc-o{position:sticky;top:130px;background:var(--graphite);color:#F3EFE6;border-radius:32px;padding:28px;display:grid;gap:12px}
.calc-o .eyebrow{color:var(--goldl)}
.big{font-family:var(--hd);font-weight:800;font-size:clamp(2.6rem,5vw,3.6rem);line-height:1;color:var(--gold)}
.lines{list-style:none;padding:0;display:grid;gap:6px;color:#DCD6C8;font-size:.95rem}
.lines li{display:flex;justify-content:space-between;gap:10px}
.tot{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-top:1px dashed #5A5D66;font-family:var(--hd);font-weight:600}
.tot.gold b{color:var(--gold);font-size:1.3rem}
.calc-o .btn{background:var(--gold);border-color:var(--gold);color:var(--ink)}
.calc-o .small{color:#C9C3B5}
@media (max-width:900px){.calc{grid-template-columns:minmax(0,1fr)}.calc-o{position:static}}
.fabcards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.fc{background:#3A3D45;border-radius:26px;padding:12px 12px 20px;display:grid;gap:6px}
.fc .ph{border-radius:18px;background:#4A4D55}
.fc h3,.fc p{padding:0 6px}
.fc p{color:#DCD6C8;font-size:.92rem}
.fc .fc-p{font-family:var(--hd);font-weight:700;color:var(--gold)}
@media (max-width:1000px){.fabcards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.fabcards{grid-template-columns:minmax(0,1fr)}}

/* lookbook */
.gal{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.gl{position:relative;display:block;border-radius:28px;overflow:hidden;background:linear-gradient(140deg,var(--goldl),var(--gold));text-decoration:none;transition:transform .3s cubic-bezier(.3,1.6,.5,1)}
.gl img{width:100%;aspect-ratio:3/4;object-fit:cover}
.gl span{position:absolute;left:10px;right:10px;bottom:10px;background:var(--surface);border-radius:16px;padding:8px 12px;font-family:var(--hd);font-weight:700;font-size:.95rem}
.gl:hover{transform:rotate(-2deg) scale(1.03)}
.gl.g1,.gl.g4{transform:translateY(24px)}
.gl.g1:hover,.gl.g4:hover{transform:translateY(24px) rotate(2deg) scale(1.03)}
.gal.small{grid-template-columns:repeat(4,minmax(0,1fr))}
.gal.small img{aspect-ratio:1/1}
@media (max-width:900px){.gal,.gal.small{grid-template-columns:repeat(2,minmax(0,1fr))}.gl.g1,.gl.g4{transform:none}}
.pals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.pal{background:#3A3D45;border-radius:26px;padding:20px;display:grid;gap:8px}
.pal-s{display:flex;height:60px;border-radius:16px;overflow:hidden}
.pal-s i{flex:1}
.pal p{color:#DCD6C8;font-size:.92rem}
@media (max-width:900px){.pals{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.pals{grid-template-columns:minmax(0,1fr)}}

/* measure */
.body-fig{background:var(--ivory);border-radius:40px;padding:24px;display:grid;place-items:center}
.body-fig svg{width:100%;max-width:240px}
.mlist2{list-style:none;padding:0;display:grid;gap:10px}
.mlist2 li{display:grid;gap:2px;padding:12px 16px;border-radius:18px;background:var(--ivory)}
.mlist2 b{font-family:var(--hd);font-size:1.15rem}
.mgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
@media (max-width:620px){.mgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.sec.t-graphite .ph{border-radius:28px;margin-top:20px;background:#4A4D55}

/* about stats, journal */
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.stat b{display:block;font-family:var(--hd);font-weight:800;font-size:clamp(2.6rem,6vw,4.4rem);line-height:1}
.stat span{font-family:var(--hd);font-weight:600}
@media (max-width:760px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ticks{list-style:none;padding:0;display:grid;gap:10px}
.ticks li{position:relative;padding-left:30px}
.ticks li::before{content:"";position:absolute;left:0;top:5px;width:18px;height:18px;border-radius:6px;background:var(--gold);transform:rotate(12deg)}
.jbig{display:grid;gap:24px}
.jb{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:30px;align-items:center;background:var(--ivory);border-radius:34px;padding:18px;text-decoration:none}
.jb .ph{border-radius:24px;background:var(--goldl)}
.jb p{color:var(--muted);margin:10px 0 14px}
@media (max-width:760px){.jb{grid-template-columns:minmax(0,1fr)}}
.notes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.nt{background:#3A3D45;border-radius:26px;padding:22px}
.nt p{color:#DCD6C8;margin-top:6px;font-size:.95rem}
@media (max-width:900px){.notes{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.notes{grid-template-columns:minmax(0,1fr)}}
.art-body{display:grid;grid-template-columns:300px minmax(0,1fr);gap:50px;align-items:start}
.art-aside{position:sticky;top:130px;background:var(--goldl);border-radius:30px;padding:24px}
.art-aside h2{font-size:1.4rem;margin-bottom:10px}
.prose{display:grid;gap:14px}
.prose h2{font-size:1.7rem;margin-top:16px}
.prose p{font-size:1.08rem}
@media (max-width:860px){.art-body{grid-template-columns:minmax(0,1fr)}.art-aside{position:static}}

/* forms */
.form{display:grid;gap:14px;grid-template-columns:minmax(0,1fr)}
.two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}
@media (max-width:620px){.two{grid-template-columns:minmax(0,1fr)}}
.fld{display:grid;gap:6px;min-width:0}
.fld label,.fld legend{font-family:var(--hd);font-weight:700;font-size:1rem}
.fld>input,.fld>select,.fld>textarea{width:100%;min-height:52px;padding:12px 16px;border-radius:16px;border:2px solid #CFC6B3;background:var(--surface);font-size:16px;font-family:var(--bd);color:var(--ink)}
.fld>input[type=range]{padding:0;border:0;background:none;accent-color:var(--gold-d);min-height:44px}
.remind textarea{width:100%;border-radius:16px;border:2px solid #CFC6B3;padding:12px;font-family:var(--bd);font-size:15px;background:var(--surface)}
.err{display:none;color:#A1301B;font-weight:600;font-size:.88rem}
.sec.t-graphite .err{color:#FFB4A8}
.fld.bad .err,.err:not([hidden]):is(#ag-err){display:block}
.fld.bad>input,.fld.bad>textarea{border-color:#A1301B}
.thanks{background:var(--goldl);color:var(--ink);border-radius:28px;padding:26px;display:grid;gap:10px}
.ways{list-style:none;padding:0;display:grid;gap:12px}
.ways li{display:grid;gap:2px;background:var(--ivory);border-radius:20px;padding:14px 18px}
.ways b{font-family:var(--hd)}
.ways a{color:var(--coral-d);font-weight:600;overflow-wrap:anywhere}
.map svg{width:100%;height:auto}

/* FAQ */
.faq{display:grid;gap:10px;max-width:880px}
.faq details{background:var(--surface);border-radius:22px;border:2px solid var(--line)}
.sec.t-ivory .faq details{background:var(--ivory)}
.faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px 22px;cursor:pointer;font-family:var(--hd);font-weight:700;font-size:1.1rem;min-height:44px}
.faq summary::-webkit-details-marker{display:none}
.faq summary i{flex:0 0 30px;height:30px;border-radius:10px;background:var(--gold);position:relative;transition:transform .3s cubic-bezier(.3,1.6,.5,1)}
.faq summary i::before,.faq summary i::after{content:"";position:absolute;left:8px;right:8px;top:14px;height:2px;background:var(--ink)}
.faq summary i::after{transform:rotate(90deg)}
.faq details[open] summary i{transform:rotate(45deg)}
.faq details>div{padding:0 22px 18px;color:#3A3C44}

/* CTA and footer */
.cta{padding:clamp(60px,8vw,110px) 0}
.cta-in{position:relative;background:var(--ink);color:#fff;border-radius:44px;padding:clamp(34px,5vw,70px);display:grid;gap:16px;overflow:hidden}
.cta-in h2{max-width:18ch;color:var(--gold)}
.cta-in p{color:#DCD6C8}
.cta-b{display:flex;flex-wrap:wrap;gap:12px}
.cta .btn{background:var(--gold);border-color:var(--gold);color:var(--ink)}
.cta .btn.ghost{background:transparent;color:#fff;border-color:#fff}
.swatches{position:absolute;right:-20px;top:-20px;display:grid;grid-template-columns:repeat(3,60px);gap:8px;transform:rotate(14deg);opacity:.9}
.swatches i{width:60px;height:60px;border-radius:18px;background:var(--c)}
@media (max-width:760px){.swatches{display:none}}
.ftr{background:var(--graphite);color:#DCD6C8;padding:70px 0 110px;border-radius:44px 44px 0 0}
.ftr a{color:#fff;text-decoration:none;display:block;min-height:30px}
.ftr a:hover{color:var(--gold)}
.ftr .brand{display:flex}
.ftr-say{font-family:var(--hd);font-weight:800;font-size:clamp(1.7rem,3vw,2.4rem);color:var(--gold);margin:16px 0 8px;line-height:1.05}
.ftr-top{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr));gap:30px}
.ftr-top>div{display:grid;gap:8px;align-content:start}
.ftr h2{font-size:1rem;color:var(--goldl);margin-bottom:4px}
.ftr-bot{margin-top:40px;padding-top:20px;border-top:1px solid #4A4D55;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:.88rem}
@media (max-width:860px){.ftr-top{grid-template-columns:repeat(2,minmax(0,1fr))}.ftr-top>div:first-child{grid-column:1/-1}}
@media (max-width:480px){.ftr-top{grid-template-columns:minmax(0,1fr)}}
.wa{position:fixed;right:18px;bottom:18px;z-index:70;width:56px;height:56px;border-radius:18px;display:grid;place-items:center;background:#1F7A4A;color:#fff;box-shadow:0 10px 24px -8px rgba(0,0,0,.5);transform:rotate(-6deg)}
.wa svg{width:28px;height:28px}
@media (max-width:560px){.wrap{padding-left:16px;padding-right:16px}}
@media (prefers-reduced-motion:reduce){.hv-card,.dot{animation:none}}
.kpi{min-width:0}
.kpi b{font-size:clamp(1.35rem,4.4vw,2rem);overflow-wrap:anywhere}
@media (min-width:900px) and (min-height:640px){.stack{padding-bottom:0}.sc:last-child{min-height:0}}
@media (max-width:700px){
  .gt.cards{min-width:0;display:block;background:transparent}
  .gt.cards thead{display:none}
  .gt.cards tbody{display:grid;gap:10px}
  .gt.cards tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:14px 16px;background:var(--surface);border-radius:20px}
  .gt.cards th,.gt.cards td{border:0;padding:0}
  .gt.cards th[scope=row]{grid-column:1;grid-row:1;font-size:1.15rem}
  .gt.cards td.code{grid-column:2;grid-row:1;text-align:right}
  .gt.cards td:nth-of-type(2){grid-column:1;grid-row:2;color:var(--muted);font-size:.92rem}
  .gt.cards td:nth-of-type(3){grid-column:1/-1;grid-row:3;font-size:.92rem}
  .gt.cards td:nth-of-type(4){grid-column:2;grid-row:2;text-align:right}
  .gt.cards td:nth-of-type(5){grid-column:1/-1;grid-row:4;padding-top:6px}
  .gt.cards td[colspan]{grid-column:1/-1}
}
