body{background:#f7faf5;color:#0f1720;overflow-x:hidden}
main{position:relative;isolation:isolate;padding-bottom:24px}
main::before{content:"";position:absolute;z-index:-1;top:-210px;right:-320px;width:1080px;height:1080px;border:1px solid rgba(137,222,65,.24);border-radius:50%;box-shadow:0 0 0 112px rgba(199,245,69,.075),0 0 0 220px rgba(199,245,69,.04);background:radial-gradient(circle at 45% 48%,rgba(199,245,69,.15),rgba(233,248,218,.1) 42%,transparent 70%)}
.w{width:min(1468px,calc(100% - 96px))}
.hero{grid-template-columns:minmax(0,1.38fr) minmax(300px,.62fr);gap:72px;align-items:end;padding:66px 0 44px}
.hero>div:first-child{max-width:980px}
.tag{color:#087246;font-size:12px;font-weight:850;letter-spacing:.12em}
h1{max-width:990px;margin:14px 0 22px;font-size:clamp(58px,5.1vw,86px);line-height:.94;letter-spacing:-.065em}
.hero p{max-width:820px;margin:0;color:#64748b;font-size:18px;line-height:1.58}
.note{margin-bottom:4px;padding:3px 0 3px 22px;border-left:3px solid #c7f545;color:#173025;font-size:15px;line-height:1.25}
.layout{grid-template-columns:minmax(0,1.04fr) minmax(430px,.96fr);gap:26px}
.column{gap:20px}
.card{border:1px solid #dce6dc;border-radius:20px;background:rgba(255,255,255,.9);box-shadow:0 14px 42px rgba(15,46,35,.045);backdrop-filter:blur(8px)}
.layout .card{padding:28px}
.head{margin-bottom:20px}
.head h2{font-size:19px;font-weight:800;letter-spacing:-.02em}
.fields{gap:14px}
label{min-height:88px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:8px;padding:14px 16px;border-color:#dce4dc;border-radius:13px;background:#fbfdfa;color:#64748b;font-size:12px;line-height:1.25;text-align:left;transition:border-color .2s,box-shadow .2s,background .2s}
label:hover{border-color:#bdd3c3;background:#fff}
label:focus-within{border-color:#8bd43f;background:#fff;box-shadow:0 0 0 4px rgba(199,245,69,.18)}
input:not([type="range"]),textarea{display:block;width:100%;min-width:0;padding:0;text-align:left;font-variant-numeric:tabular-nums;color:#0f1720}
input:not([type="range"]){font-size:19px;font-weight:800;line-height:1.2}
input[type="number"]{-moz-appearance:textfield}
input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
textarea{min-height:112px;font-size:15px;font-weight:600;line-height:1.55}
.goal{position:relative;overflow:hidden;border:1px solid rgba(137,222,65,.22);background:linear-gradient(145deg,#0f432f,#0a3024);box-shadow:0 22px 58px rgba(15,46,35,.18)}
.goal::after{content:"";position:absolute;right:-130px;top:-150px;width:330px;height:330px;border:1px solid rgba(199,245,69,.18);border-radius:50%;box-shadow:0 0 0 54px rgba(199,245,69,.035);pointer-events:none}
.goal .tag{color:#c7f545}
.goal .head,.goal .fields{position:relative;z-index:1}
.goal label{border-color:rgba(255,255,255,.16);background:rgba(255,255,255,.06);color:rgba(255,255,255,.62)}
.goal label:hover,.goal label:focus-within{border-color:rgba(199,245,69,.58);background:rgba(255,255,255,.09)}
.goal input:not([type="range"]){color:#fff;font-size:23px}
.result{top:24px;padding:30px!important}
.price-main{margin-top:20px;padding:30px;border:1px solid rgba(137,222,65,.2);border-radius:16px;background:linear-gradient(135deg,#eff9e7,#e7f7d4)}
.price-main span{color:#64748b;font-size:13px}
.price-main strong{margin-top:8px;font-size:48px;font-variant-numeric:tabular-nums}
.prices{margin-top:18px;border-color:#dce6dc;border-radius:14px}
.price-box{padding:18px;border-color:#dce6dc}
.price-box span{color:#64748b}
.price-box strong{font-variant-numeric:tabular-nums}
.market-verdict{margin-top:18px;padding:20px;border-radius:14px;background:#f2f5f1}
.market-verdict.good{background:#e8f6e4}
.market-verdict.warn{background:#fff2d9}
.market-verdict.bad{background:#fbe8e3}
.market-verdict strong{font-size:19px}
.market-verdict p{color:#64748b}
.stats{margin-top:18px;border-color:#dce6dc;background:#dce6dc;border-radius:14px}
.stat{padding:18px;background:#fff}
.stat span{color:#64748b}
.stat strong{font-variant-numeric:tabular-nums}
.discount{margin-top:22px;padding-top:20px;border-top:1px solid #e1e8e1}
.range-line{color:#64748b}
input[type="range"]{height:6px;border-radius:99px;background:#dce8d8;accent-color:#16704a;cursor:pointer}
.discount-result{margin-top:12px}
.tips{margin-top:24px}
.tips li{color:#64748b}
.button{margin-top:22px;padding:15px;border-radius:12px;background:#0f432f;transition:transform .2s,background .2s}
.button:hover{background:#15583e;transform:translateY(-1px)}
.fine{padding:50px 0 58px;color:#64748b}
@media(max-width:1280px){.w{width:min(1180px,calc(100% - 48px))}.hero{gap:44px}.layout{grid-template-columns:minmax(0,1fr) minmax(400px,.9fr)}}
@media(max-width:900px){main::before{right:-680px}.w{width:calc(100% - 32px)}.hero,.layout{grid-template-columns:1fr}.hero{gap:28px;padding-top:48px}.note{max-width:480px}.result{position:static}}
@media(max-width:560px){.w{width:calc(100% - 24px)}.hero{padding:38px 0 28px}h1{font-size:46px}.hero p{font-size:16px}.fields,.prices{grid-template-columns:1fr}.wide{grid-column:auto}.layout .card{padding:20px}.price-box{border-right:0;border-bottom:1px solid #dce6dc}.price-main strong{font-size:40px}}
