:root{--v50:#F2FAF5;--v100:#DDF3E6;--v200:#B9E6CE;--v500:#3A9C74;--v600:#2A7D5D;--v700:#1F6149;--v800:#164936;--v900:#0E3225;--o400:#FFAE5E;--o500:#FF8F3C;--o600:#F0701A;--line:#E3EFE8;--txt:#16241D;--soft:#55665C;--shadow:0 10px 30px -14px rgba(14,50,37,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font:17px/1.65 Figtree,system-ui,sans-serif;color:var(--txt);background:#fff;-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:'Bricolage Grotesque',Figtree,sans-serif;color:var(--v900);margin:0 0 .4em}
h1{font-size:clamp(34px,6vw,58px);line-height:1.06;font-weight:800;letter-spacing:-.02em}
h2{font-size:clamp(28px,4vw,42px);line-height:1.12;font-weight:700}
h3{font-size:22px;line-height:1.2;font-weight:700}
a{color:var(--v700)}img{max-width:100%;height:auto}
.wrap{max-width:1120px;margin:0 auto;padding:0 16px}.narrow{max-width:720px}.center{text-align:center}
.top{position:sticky;top:0;z-index:10;background:#fff;border-bottom:1px solid var(--line)}
.top-in{display:flex;align-items:center;justify-content:space-between;min-height:60px;gap:12px}
.brand{font:800 20px 'Bricolage Grotesque',sans-serif;color:var(--v900);text-decoration:none;display:flex;align-items:center;gap:8px}
.brand b{color:#F0701A;font-weight:800}.logo{flex:none}.brand-foot{display:flex;align-items:center;gap:8px;font:800 18px 'Bricolage Grotesque',sans-serif;color:#fff;margin:18px 0 8px}.brand-foot b{color:#FFAE5E}
.top nav{display:none;gap:22px}.top nav a{text-decoration:none;color:var(--v800);font-weight:600;font-size:15px}.top nav a:hover{color:var(--o600)}
@media(min-width:760px){.top nav{display:flex}}
.eyebrow{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--v600);margin:0 0 10px}
.sub,.lead{color:var(--soft);font-size:18px;max-width:640px}.center .sub{margin-left:auto;margin-right:auto}
.hero{background:linear-gradient(180deg,var(--v50),#fff);padding:40px 0 56px;overflow:hidden}
.hero-in{display:grid;gap:24px;align-items:center}
.hl{color:var(--o600)}
.hero-img img{display:block;margin:0 auto;max-width:380px;width:100%;filter:drop-shadow(0 30px 40px rgba(14,50,37,.25))}
@media(min-width:900px){.hero{padding:72px 0 88px}.hero-in{grid-template-columns:1.15fr .85fr;gap:40px}}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0 10px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:14px 26px;border-radius:999px;font:700 16px 'Bricolage Grotesque',sans-serif;text-decoration:none;transition:.2s;width:100%;text-align:center}
@media(min-width:640px){.btn{width:auto}}
.btn-cta{background:var(--o500);color:#3A1C04;text-transform:uppercase;letter-spacing:.02em}.btn-cta:hover{background:var(--o400);transform:translateY(-2px)}.btn-cta:active{background:var(--o600);transform:none}
.btn-ghost{background:var(--v50);color:var(--v800);border:1px solid var(--v200);font-family:Figtree,sans-serif;font-weight:600}.btn-ghost:hover{background:var(--v100)}
.btn:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #8CD4B1;outline-offset:2px}
.micro{font-size:14px;color:var(--soft);margin:6px 0 0}
.sec{padding:64px 0}.sec-alt{background:var(--v50)}@media(min-width:900px){.sec{padding:96px 0}}
.cards{display:grid;gap:20px;margin-top:32px}@media(min-width:900px){.cards{grid-template-columns:1.25fr 1fr}}
.card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:var(--shadow);display:grid;gap:16px;align-content:start}
.card>img{width:100%;max-width:240px;margin:0 auto}
.card-main{border-color:var(--v200)}
@media(min-width:640px){.card-main{grid-template-columns:200px 1fr;align-items:center}.card-main>img{max-width:200px}}
.tag{display:inline-block;font-size:12.5px;font-weight:700;padding:4px 12px;border-radius:999px;background:var(--v700);color:#fff;margin-bottom:8px}.tag-soft{background:var(--v100);color:var(--v800)}
.ticks{list-style:none;padding:0;margin:12px 0}.ticks li{padding-left:26px;position:relative;margin:4px 0;font-size:16px}.ticks li:before{content:"✓";position:absolute;left:0;color:var(--v600);font-weight:800}
.price{margin:10px 0 0;color:var(--soft);font-size:15px}.price strong{font:800 34px 'Bricolage Grotesque',sans-serif;color:var(--o600)}
.note{color:var(--soft);font-size:15px;margin-top:20px}
.steps{list-style:none;padding:0;margin:32px 0 0;display:grid;gap:16px}@media(min-width:760px){.steps{grid-template-columns:repeat(3,1fr)}}
.steps li{background:#fff;border:1px solid var(--line);border-radius:24px;padding:24px}.steps p{margin:0;color:var(--soft);font-size:16px}
.n{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--v100);color:var(--v700);font:800 20px 'Bricolage Grotesque',sans-serif;margin-bottom:10px}
details{background:#fff;border:1px solid var(--line);border-radius:16px;margin-top:12px;padding:0 20px}
details[open]{background:#fff;border-color:var(--v200)}
summary{cursor:pointer;font-weight:600;padding:16px 0;list-style:none;display:flex;justify-content:space-between;gap:12px}
summary::-webkit-details-marker{display:none}summary:after{content:"+";font-size:22px;line-height:1;color:var(--v600)}details[open] summary:after{content:"–"}
details p{margin:0 0 16px;color:var(--soft);font-size:16px}
.foot{background:var(--v900);color:#cfe6d9;padding:40px 0;font-size:14px}.foot a{color:#fff}
.notice{max-width:820px;opacity:.85;line-height:1.55}.foot-links{display:flex;flex-wrap:wrap;gap:18px;margin:18px 0}.copy{opacity:.7;margin:0}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}
