:root{--red:#b3202a;--green:#14532d;--gold:#f5c542;--ink:#1d1d1f;--bg:#fbf8f3}
*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--bg);line-height:1.55}
.wrap{max-width:60rem;margin:0 auto;padding:0 1.1rem}
.hero{position:relative;color:#fff;padding:4.5rem 0 4rem;background:radial-gradient(circle at 20% 10%,#1f6b45 0,transparent 55%),linear-gradient(160deg,#0b2a1c,#14532d 55%,#7a1a20);overflow:hidden}
.hero svg{position:absolute;left:0;right:0;top:0;width:100%;height:60px}
.hero h1{font-size:clamp(1.8rem,6vw,3rem);line-height:1.15;margin:.5rem 0 1rem;max-width:40rem}
.hero p{font-size:1.1rem;max-width:36rem;opacity:.95}
.btn{display:inline-block;background:var(--gold);color:#1d1d1f;font-weight:700;font-size:1.15rem;padding:1rem 1.6rem;border-radius:999px;text-decoration:none;border:0;cursor:pointer;box-shadow:0 6px 20px rgba(0,0,0,.25)}
.btn:hover{filter:brightness(1.05)}
section{padding:3rem 0}h2{font-size:1.7rem;color:var(--green);margin-top:0}
.card{background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 4px 18px rgba(0,0,0,.06)}
input[type=range]{width:100%;accent-color:var(--red)}
.est{font-size:2rem;font-weight:800;color:var(--red);margin:.5rem 0 0}.note{color:#555;font-size:.95rem}
form{display:grid;gap:1rem}label{font-weight:600;display:grid;gap:.35rem}
input,select{font:inherit;padding:.75rem;border:1px solid #ccc;border-radius:10px;width:100%;background:#fff}
.grid2{display:grid;gap:1rem}@media(min-width:640px){.grid2{grid-template-columns:1fr 1fr}}
.steps{display:grid;gap:1rem;counter-reset:s;padding:0;list-style:none}@media(min-width:720px){.steps{grid-template-columns:repeat(3,1fr)}}
.steps li{counter-increment:s}.steps li::before{content:counter(s);display:inline-grid;place-items:center;width:2.2rem;height:2.2rem;border-radius:50%;background:var(--red);color:#fff;font-weight:800;margin-bottom:.5rem}
details{background:#fff;border-radius:12px;padding:1rem 1.2rem;margin-bottom:.75rem;box-shadow:0 2px 10px rgba(0,0,0,.05)}summary{font-weight:700;cursor:pointer}
footer{background:#0b2a1c;color:#e8efe9;text-align:center;padding:2rem 1rem;font-size:.95rem}
.hint{font-weight:400;color:#666;font-size:.85rem}
