[hidden]{display:none!important}
*{box-sizing:border-box}
body{margin:0;background:#F6F5F1;color:#14181F;font-family:Inter,system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased}
a{color:#0B5C43}a:hover{color:#08402F}
h1,h2,.display{font-family:'Space Grotesk',Inter,sans-serif;letter-spacing:-.01em}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;max-width:1200px;margin:0 auto}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#14181F;font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:22px}
.navlinks{display:flex;flex-wrap:wrap;align-items:center;gap:22px;font-size:15px;font-weight:500}
.navlinks a{color:#3A4150;text-decoration:none}
.btn{display:inline-flex;align-items:center;justify-content:center;background:#0B5C43;color:#fff!important;text-decoration:none;border:0;border-radius:12px;padding:14px 20px;font:600 16px Inter,sans-serif;cursor:pointer;min-height:48px}
.btn:hover{background:#08402F}
.btn:disabled{background:#8AA79B;cursor:wait}
.btn-ghost{background:transparent;border:2px solid #0B5C43;color:#0B5C43!important}
.btn-ghost:hover{background:#E2EFE9}
header{border-bottom:1px solid #E3E1DA}
.hero{display:flex;flex-wrap:wrap;gap:48px;align-items:center;padding:64px 24px;max-width:1200px;margin:0 auto}
.hero-text{flex:1 1 460px;min-width:0;display:flex;flex-direction:column;gap:20px}
.pill{align-self:flex-start;background:#E2EFE9;color:#0B5C43;font-size:14px;font-weight:600;padding:7px 12px;border-radius:999px}
h1{margin:0;font-size:clamp(38px,6vw,56px);line-height:1.05;font-weight:700}
.lead{margin:0;font-size:19px;line-height:1.6;color:#3A4150;max-width:540px}
.checks{display:flex;flex-wrap:wrap;gap:18px;font-size:15px;color:#3A4150}
.checks span{display:flex;align-items:center;gap:8px}
.card{background:#fff;border:1px solid #E3E1DA;border-radius:20px;padding:28px;box-shadow:0 12px 40px rgba(20,24,31,.07)}
.upload{flex:1 1 420px;min-width:0;display:flex;flex-direction:column;gap:16px}
.upload h2{margin:0;font-size:24px;font-weight:600}
.drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:2px dashed #B9C9C1;background:#F3F8F5;border-radius:14px;padding:28px 18px;text-align:center;cursor:pointer}
.drop.drag{background:#E2EFE9;border-color:#0B5C43}
.drop strong{font-size:16px}
.muted{font-size:14px;color:#5A6170}
.small{font-size:13px;line-height:1.5;color:#5A6170;margin:0}
.secondary{display:flex;align-items:center;gap:12px;border:1px solid #CFCCC3;border-radius:12px;padding:14px 16px;cursor:pointer}
.secondary:hover{border-color:#0B5C43}
.sr{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}
.filelist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.filelist li{display:flex;justify-content:space-between;gap:10px;align-items:center;background:#F6F5F1;border-radius:8px;padding:8px 12px;font-size:14px}
.filelist button{border:0;background:none;color:#5A6170;cursor:pointer;font-size:14px;padding:4px 8px;min-height:32px}
.field{display:flex;flex-direction:column;gap:6px}
label.lbl{font-size:14px;font-weight:600}
input[type=email],input[type=text],input[type=number],input[type=password],select,textarea{height:48px;border:1px solid #CFCCC3;border-radius:10px;padding:0 14px;font:16px Inter,sans-serif;background:#fff;color:#14181F;width:100%}
textarea{height:auto;padding:12px 14px;min-height:80px}
.consent{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.5;color:#3A4150}
.consent input{width:20px;height:20px;margin-top:1px;flex:none}
.msg{border-radius:10px;padding:12px 14px;font-size:14px;line-height:1.5}
.msg.err{background:#FDECEA;color:#8A1C12}
.msg.ok{background:#E2EFE9;color:#08402F}
.progress{height:8px;background:#E3E1DA;border-radius:99px;overflow:hidden}
.progress div{height:100%;background:#0B5C43;width:0;transition:width .2s}
section.band{background:#fff;border-top:1px solid #E3E1DA;border-bottom:1px solid #E3E1DA}
.sec{padding:72px 24px;max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:32px}
h2.big{margin:0;font-size:clamp(30px,4vw,40px);font-weight:700}
.steps{display:flex;flex-wrap:wrap;gap:20px}
.step{flex:1 1 260px;display:flex;flex-direction:column;gap:10px;padding:26px;border-radius:16px;background:#F6F5F1}
.num{width:44px;height:44px;border-radius:12px;background:#0B5C43;color:#fff;display:flex;align-items:center;justify-content:center;font:700 20px 'Space Grotesk',sans-serif}
.step h3,.tile h3{margin:0;font-size:18px;font-weight:600}
.step p,.tile p{margin:0;font-size:15px;line-height:1.6;color:#3A4150}
.split{display:flex;flex-wrap:wrap;gap:40px}
.split>div:first-child{flex:1 1 320px;min-width:0;display:flex;flex-direction:column;gap:14px}
.tiles{flex:1 1 560px;min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.tile{background:#fff;border:1px solid #E3E1DA;border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:6px}
@media (max-width:560px){.tiles{grid-template-columns:minmax(0,1fr)}}
.dark{background:#14181F;color:#fff}
.dark p{color:#C9CED8}
.calc{flex:1 1 400px;min-width:0;background:#fff;color:#14181F;border-radius:20px;padding:28px;display:flex;flex-direction:column;gap:16px}
.row{display:flex;flex-wrap:wrap;gap:14px}
.row .field{flex:1 1 160px}
.result{padding:18px;border-radius:12px;background:#F6F5F1;font-size:15px;color:#3A4150}
.result.good{background:#E2EFE9;color:#23302B}
.result .amount{display:block;font:700 32px 'Space Grotesk',sans-serif;color:#08402F;margin:4px 0}
.prices{display:flex;flex-wrap:wrap;gap:20px}
.price{flex:1 1 320px;display:flex;flex-direction:column;gap:12px}
.price .amount{font:700 42px 'Space Grotesk',sans-serif}
.price.main{border:2px solid #0B5C43}
details{border-bottom:1px solid #E3E1DA;padding:16px 0}
summary{font-size:18px;font-weight:600;cursor:pointer}
details p{margin:12px 0 0;font-size:16px;line-height:1.6;color:#3A4150}
footer{background:#14181F;color:#C9CED8}
footer .wrap{padding:36px 24px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:14px;font-size:14px}
footer a{color:#C9CED8}
.legal{max-width:760px;margin:0 auto;padding:48px 24px 72px;line-height:1.65}
.legal h1{font-size:40px;margin-bottom:24px}
.legal h2{font-size:22px;margin:32px 0 8px}
.todo{background:#FFF4D6;border-radius:4px;padding:0 4px}
.secondary svg{flex:none}
.calc p.small{color:#5A6170}
@media (max-width:640px){.navlinks a:not(.btn){display:none}.nav{padding:14px 20px}.hero{padding:40px 20px;gap:32px}.btn{padding:12px 16px}}
