:root{--bg:#F4F4F2;--sf:#FFFFFF;--sf2:#EAEAE6;--ink:#161513;--mut:#5C5A55;--ln:#DFDED9;--ln2:#BDBBB3;--ac:#F26A1B;--acs:#FDE7D6;--onac:#161513;--act:#B8460A;--hero:#161513;--fd:"Bricolage Grotesque",system-ui,sans-serif;--f1:"DM Sans",system-ui,sans-serif}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#121110;--sf:#1C1B19;--sf2:#262522;--ink:#F4F4F2;--mut:#A6A39C;--ln:#2E2D2A;--ln2:#4A4844;--ac:#FF8434;--acs:#3A2416;--onac:#161513;--act:#FFA266;--hero:#0B0B0A;color-scheme:dark}}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.55 var(--f1);-webkit-font-smoothing:antialiased}
a{color:var(--act)}img{max-width:100%}
.wrap{max-width:1040px;margin:0 auto;padding-inline:16px}
header.top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 0}
.logo{display:flex;align-items:center;gap:10px;font:800 19px var(--fd);text-decoration:none;color:var(--ink)}.logo i{width:34px;height:34px;border-radius:10px;background:var(--ac);color:#161513;display:inline-flex;align-items:center;justify-content:center;font-style:normal;font-weight:800}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;border-radius:14px;border:1.5px solid var(--ink);background:var(--ink);color:var(--bg);font:700 16px var(--f1);text-decoration:none;cursor:pointer}
.btn.pri{background:var(--ac);border-color:var(--ac);color:#161513}.btn.ghost{background:transparent;color:var(--ink)}
.hero{background:var(--hero);color:#fff;border-radius:22px;padding:clamp(28px,5vw,56px);display:grid;gap:22px;margin-top:8px}
.hero .kick{color:#FF9A55;font:700 14px var(--f1)}
.hero h1{margin:0;font:800 clamp(34px,6vw,60px)/1.02 var(--fd);letter-spacing:-.03em;text-wrap:balance;max-width:18ch}
.hero p{margin:0;font-size:clamp(17px,2.2vw,20px);color:#d9d7d1;max-width:60ch}
.hero .acts{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.hero .price{font:800 28px var(--fd)}.hero .price small{font:600 14px var(--f1);color:#d9d7d1;margin-left:8px}
.hero .btn.ghost{border-color:rgba(255,255,255,.35);color:#fff}
section{padding:44px 0}section h2{font:800 clamp(26px,4vw,38px)/1.08 var(--fd);letter-spacing:-.02em;margin:0 0 10px;text-wrap:balance}section>.wrap>p.lead{color:var(--mut);max-width:62ch;margin:0 0 24px;font-size:18px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:14px}
.card{background:var(--sf);border:1px solid var(--ln);border-radius:18px;padding:20px;display:flex;flex-direction:column;gap:8px}
.card .ic{width:42px;height:42px;border-radius:12px;background:var(--acs);color:var(--act);display:flex;align-items:center;justify-content:center;font:800 18px var(--fd)}
.card b{font:700 18px/1.2 var(--fd)}.card span{color:var(--mut);font-size:15px;line-height:1.5}
ol.trail{list-style:none;margin:0;padding:0;display:grid;gap:10px;counter-reset:t}ol.trail li{display:flex;gap:14px;align-items:flex-start;background:var(--sf);border:1px solid var(--ln);border-radius:16px;padding:16px;counter-increment:t}
ol.trail li:before{content:counter(t);flex:none;width:32px;height:32px;border-radius:50%;background:var(--ac);color:#161513;font:800 15px/32px var(--f1);text-align:center}
ol.trail b{display:block;font:700 17px var(--fd)}ol.trail small{color:var(--mut);font-size:14.5px}
.faq details{background:var(--sf);border:1px solid var(--ln);border-radius:14px;padding:4px 16px;margin-bottom:8px}.faq summary{cursor:pointer;font:700 16px var(--f1);padding:12px 0}.faq p{margin:0 0 12px;color:var(--mut)}
.cta{background:var(--acs);border-radius:22px;padding:clamp(24px,4vw,44px);display:grid;gap:14px;text-align:center}.cta h2{margin:0}
footer{padding:28px 0 40px;color:var(--mut);font-size:14px}footer a{margin-right:14px}
.note{font-size:14px;color:var(--mut)}
/* login */
.auth{max-width:460px;margin:40px auto;background:var(--sf);border:1px solid var(--ln);border-radius:22px;padding:28px;display:grid;gap:14px}
.auth h1{margin:0;font:800 28px/1.1 var(--fd)}.auth label{display:grid;gap:6px;font:700 14px var(--f1)}.auth input{min-height:50px;padding:0 14px;border-radius:12px;border:1.5px solid var(--ln2);background:var(--bg);color:var(--ink);font:400 17px var(--f1)}
.auth .err{background:#FBE3E3;color:#8B1A1A;padding:10px 12px;border-radius:10px;font-size:14.5px}.auth .ok{background:#DCEFE6;color:#17634A;padding:10px 12px;border-radius:10px;font-size:14.5px}
.prose{max-width:72ch;margin:0 auto;padding:24px 16px 56px}.prose h1{font:800 34px/1.1 var(--fd)}.prose h2{font:700 22px var(--fd);margin-top:28px}
button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--ac);outline-offset:2px}
