:root{
  --bg:#ece6d6;
  --panel:#f7f2e6;
  --ink:#2a2015;
  --muted:#5b4a34;
  --edge:#6a5538;
  --shadow:rgba(0,0,0,.18);
  --accent:#2f7d32;
  --accent2:#2aa53b;
  --soft:#ffffff;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--ink);
  background:
    radial-gradient(1200px 700px at 20% 10%, #f7f2e6 0%, var(--bg) 55%, #e0d8c5 100%);
}

a{color:inherit}
.wrap{max-width:1060px;margin:0 auto;padding:18px 14px 34px}

.topbar{
  position:sticky;top:0;z-index:20;
  background:linear-gradient(#faf6ec,#efe7d6);
  border-bottom:2px solid var(--edge);
  box-shadow:0 10px 22px var(--shadow);
}
.topbar-inner{display:flex;align-items:center;justify-content:space-between;max-width:1060px;margin:0 auto;padding:10px 14px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.logo{border-radius:14px;box-shadow:inset 0 2px 0 rgba(255,255,255,.7),0 6px 14px var(--shadow);background:var(--panel);border:2px solid var(--edge)}
.brand-text{
  font-weight:800;letter-spacing:.3px;
  padding:6px 10px;border-radius:14px;
  background:linear-gradient(#fff,#f0e7d6);
  border:2px solid var(--edge);
  box-shadow:inset 0 2px 0 rgba(255,255,255,.8),0 6px 12px var(--shadow);
}

.burger{
  width:50px;height:44px;border-radius:14px;
  border:2px solid var(--edge);
  background:linear-gradient(#fff,#efe7d6);
  box-shadow:inset 0 2px 0 rgba(255,255,255,.8),0 6px 12px var(--shadow);
  display:flex;flex-direction:column;justify-content:center;gap:6px;
  padding:8px 10px;cursor:pointer;
}
.burger span{display:block;height:3px;border-radius:3px;background:var(--ink);opacity:.92}
.nav{display:none}
.nav.open{display:block}
.nav-inner{
  max-width:1060px;margin:0 auto;padding:0 14px 14px;
  display:flex;flex-direction:column;gap:10px;
}
.nav-link{
  text-decoration:none;
  padding:10px 12px;border-radius:16px;
  background:linear-gradient(#fff,#f1eadb);
  border:2px solid var(--edge);
  box-shadow:inset 0 2px 0 rgba(255,255,255,.85),0 8px 16px var(--shadow);
  font-weight:650;
}
.nav-link.active{outline:3px solid rgba(47,125,50,.25)}

.crumbs{
  margin:16px 2px 14px;
  padding:10px 12px;border-radius:16px;
  background:linear-gradient(#fff,#f1eadb);
  border:2px solid var(--edge);
  box-shadow:inset 0 2px 0 rgba(255,255,255,.85),0 8px 16px var(--shadow);
  display:inline-flex;align-items:center;gap:8px;
}
.crumb{color:var(--muted);text-decoration:none;font-weight:650}
.crumb.current{color:var(--ink)}
.crumb-sep{opacity:.6}

.panel{
  margin:14px 0;
  padding:16px 16px 18px;
  border-radius:20px;
  background:linear-gradient(#fff,var(--panel));
  border:2px solid var(--edge);
  box-shadow:inset 0 2px 0 rgba(255,255,255,.85),0 14px 26px var(--shadow);
}
.hero h1{margin:0 0 10px;font-size:28px;line-height:1.15}
.hero-teaser{margin:0;max-width:850px;color:var(--muted);font-weight:600}
@media(min-width:920px){
  .hero h1{font-size:34px}
}

.image-panel{padding:12px}
.hero-img{
  width:100%;height:auto;display:block;
  border-radius:16px;
  border:2px solid var(--edge);
  box-shadow:0 14px 26px var(--shadow);
  background:#fff;
}

.article-lead{
  font-size:16px;line-height:1.6;color:var(--muted);
  padding:12px 14px;border-radius:16px;
  background:linear-gradient(#fff,#f3ecdd);
  border:2px solid rgba(106,85,56,.75);
  box-shadow:inset 0 2px 0 rgba(255,255,255,.85);
  margin-bottom:14px;
}
.panel h2{margin:18px 0 10px;font-size:22px}
.panel p{margin:0 0 14px;line-height:1.75}
.article-concl{
  margin-top:10px;
  padding:12px 14px;border-radius:16px;
  background:linear-gradient(#f7fff8,#eaf6ea);
  border:2px solid rgba(47,125,50,.55);
  box-shadow:inset 0 2px 0 rgba(255,255,255,.85);
  color:#1f3b1f;
  line-height:1.7;
}

.offers-wrap{
  border:2px solid var(--edge);
  border-radius:18px;
  background:linear-gradient(#fff,#f2ebdc);
  box-shadow:inset 0 2px 0 rgba(255,255,255,.85);
  overflow:hidden;
}
.offers-inner{display:flex;flex-direction:column}
.offer-row{
  display:grid;
  grid-template-columns:160px 1fr 140px;
  align-items:center;
  gap:14px;
  padding:12px 12px;
}
.offer-row + .offer-row{border-top:2px solid rgba(106,85,56,.35)}
.offer-cell{display:flex;align-items:center;justify-content:center}
.offer-sum{justify-content:flex-start;color:var(--ink);font-weight:650;line-height:1.4}
.offer-logo{
  width:160px;height:50px;object-fit:contain;
  border-radius:12px;
  border:2px solid rgba(106,85,56,.55);
  background:#fff;
  box-shadow:0 8px 16px var(--shadow);
}
.btn-offer{
  display:inline-flex;align-items:center;justify-content:center;
  width:100%;
  text-decoration:none;
  padding:10px 12px;border-radius:16px;
  color:#fff;
  background:linear-gradient(var(--accent2),var(--accent));
  border:2px solid rgba(27,77,30,.65);
  box-shadow:inset 0 2px 0 rgba(255,255,255,.22),0 10px 18px var(--shadow);
  font-weight:800;
}
@media(max-width:700px){
  .offer-row{grid-template-columns:1fr;text-align:center}
  .offer-sum{justify-content:center;text-align:center}
  .btn-offer{max-width:320px;margin:0 auto}
}

.calc-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
}
.calc-grid label{
  display:flex;flex-direction:column;gap:6px;
  font-weight:700;color:var(--muted);
}
.calc-grid input{
  padding:10px 10px;border-radius:14px;
  border:2px solid rgba(106,85,56,.6);
  background:linear-gradient(#fff,#f3ecdd);
  box-shadow:inset 0 2px 0 rgba(255,255,255,.85);
  font-size:16px;
}
@media(max-width:860px){
  .calc-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:520px){
  .calc-grid{grid-template-columns:1fr}
}
.calc-out{
  margin-top:14px;
  padding:12px 14px;border-radius:16px;
  background:linear-gradient(#fff,#f0e7d6);
  border:2px solid rgba(106,85,56,.75);
  box-shadow:inset 0 2px 0 rgba(255,255,255,.85);
  line-height:1.7;
  font-weight:700;
}
.calc-note{margin-top:10px;color:var(--muted);line-height:1.55}

.faq details{
  border:2px solid rgba(106,85,56,.55);
  border-radius:16px;
  background:linear-gradient(#fff,#f3ecdd);
  box-shadow:inset 0 2px 0 rgba(255,255,255,.85);
  padding:10px 12px;
  margin:10px 0;
}
.faq summary{
  cursor:pointer;
  font-weight:800;
}
.faq-a{margin-top:10px;color:var(--muted);line-height:1.65}

.footer{
  margin-top:18px;
  border-top:2px solid var(--edge);
  background:linear-gradient(#efe7d6,#faf6ec);
}
.footer-inner{
  max-width:1060px;margin:0 auto;
  padding:16px 14px;
  display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:center;
}
.footer-inner a{text-decoration:none;font-weight:750}
.fsep{opacity:.65}

.form-panel{padding:18px}
.contact-form{
  display:grid;gap:14px;
  max-width:640px;margin:0 auto;
}
.contact-form label{display:flex;flex-direction:column;gap:6px;font-weight:800;color:var(--muted)}
.contact-form input,.contact-form textarea{
  padding:12px 12px;border-radius:16px;
  border:2px solid rgba(106,85,56,.6);
  background:linear-gradient(#fff,#f3ecdd);
  box-shadow:inset 0 2px 0 rgba(255,255,255,.85);
  font-size:16px;
}
.btn{
  padding:12px 14px;border-radius:18px;
  border:2px solid rgba(27,77,30,.65);
  background:linear-gradient(var(--accent2),var(--accent));
  color:#fff;font-weight:900;cursor:pointer;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.22),0 12px 22px var(--shadow);
}