.g-hero{padding:70px 0 70px}
.g-hero h1{font-size:clamp(2.2rem,4.8vw,3.4rem);margin-bottom:22px;max-width:18ch}
.g-hero .lead{font-size:1.16rem;color:var(--green-soft);max-width:620px;margin-bottom:28px}
.g-section{padding:90px 0}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{background:var(--white);border-radius:18px;padding:28px 24px;border:1px solid rgba(46,64,52,.06)}
.card h3{font-size:1.2rem;margin-bottom:10px}
.card p{font-size:.98rem;color:var(--muted)}
.num{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--green-pale);color:var(--green);font-weight:800;margin-bottom:14px}
.offers{background:var(--white)}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.offer{background:var(--cream);border-radius:18px;padding:32px 28px;border:1px solid rgba(46,64,52,.06)}
.offer h3{font-size:1.4rem;margin-bottom:12px}
.offer p{color:var(--green-soft)}
.badge-planned{
  display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  color:var(--green);background:var(--peach);padding:4px 10px;border-radius:100px;margin-left:8px;vertical-align:middle;
}
.steps{background:var(--cream-deep)}
.step-list{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.step{background:var(--white);border-radius:18px;padding:24px 20px;border:1px solid rgba(46,64,52,.06)}
.step h3{font-size:1.08rem;margin-bottom:8px}
.step p{font-size:.92rem;color:var(--muted)}
.privacy{background:var(--white)}
.privacy-box{background:var(--cream);border-radius:18px;padding:32px 28px;max-width:760px;border:1px solid rgba(46,64,52,.06)}
.privacy-box p{margin-bottom:12px;color:var(--green-soft)}
.privacy-box p:last-child{margin-bottom:0}
.contact{background:var(--cream-deep)}
.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:start}
.contact form{background:var(--white);border-radius:18px;padding:28px 24px;border:1px solid rgba(46,64,52,.06);display:grid;gap:14px}
.contact label{font-weight:700;color:var(--green);font-size:.92rem}
.contact input,.contact select,.contact textarea{
  width:100%;padding:12px 14px;border-radius:12px;border:1px solid rgba(46,64,52,.18);
  font-family:'Nunito',sans-serif;font-size:1rem;color:var(--ink);background:var(--white);
}
.contact input:focus,.contact select:focus,.contact textarea:focus{outline:3px solid var(--green);outline-offset:1px}
.hp{position:absolute;left:-9999px;height:0;overflow:hidden}
.form-note{font-size:.88rem;color:var(--muted)}
.form-note a{color:var(--green);font-weight:700}
.aside{background:var(--white);border-radius:18px;padding:28px 24px;border:1px solid rgba(46,64,52,.06)}
.aside h3{font-size:1.25rem;margin-bottom:10px}
.aside p{color:var(--green-soft);margin-bottom:12px}
.factsheet{
  margin-top:18px;border:2px dashed rgba(46,64,52,.22);border-radius:14px;padding:20px;
  background:var(--cream);color:var(--green-soft);font-size:.95rem;
}
@media(max-width:880px){
  .grid-3,.step-list,.grid-2,.contact-grid{grid-template-columns:1fr}
  .g-hero,.g-section{padding:56px 0}
}
