*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font-body);color:var(--color-text);background:var(--color-bg);line-height:1.6}
a{color:inherit}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}
header{position:sticky;top:0;z-index:10;background:rgba(250,250,245,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--color-line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:68px}
.logo{display:flex;align-items:center;gap:10px;font-family:var(--font-heading);font-weight:700;font-size:1.2rem;text-decoration:none;color:var(--color-primary)}
.nav ul{display:flex;gap:28px;list-style:none;align-items:center}
.nav a{text-decoration:none;font-weight:500;font-size:.95rem}
.btn{display:inline-block;background:var(--color-accent);color:#1c1300;padding:13px 26px;border-radius:999px;font-weight:600;text-decoration:none;transition:transform .15s,box-shadow .15s}
.btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(245,158,11,.35)}
.btn.sm{padding:9px 18px;font-size:.9rem}
.btn.ghost{background:var(--color-primary-dark);border:2px solid #fff;color:#fff}
.menu-btn{display:none;background:none;border:0;font-size:1.6rem;cursor:pointer;color:var(--color-primary)}
.hero{background:linear-gradient(135deg,var(--color-primary-dark),var(--color-primary));color:#fff;padding:92px 0 100px;position:relative;overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}
.eyebrow{display:inline-block;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent);font-weight:600;margin-bottom:14px}
h1,h2,h3{font-family:var(--font-heading);line-height:1.15}
h1{font-size:clamp(2.2rem,5vw,3.6rem);margin-bottom:18px}
.hero p{font-size:1.15rem;color:#d7e8dc;max-width:520px;margin-bottom:30px}
.hero .actions{display:flex;gap:14px;flex-wrap:wrap}
.hero svg{width:100%;height:auto;max-width:420px;justify-self:center}
section{padding:84px 0}
.head{max-width:620px;margin-bottom:44px}
.head h2{font-size:clamp(1.8rem,3.5vw,2.5rem);margin-bottom:12px;color:var(--color-primary)}
.head p{color:var(--color-muted)}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.card{background:var(--color-surface);border:1px solid var(--color-line);border-radius:18px;padding:28px;transition:transform .2s,box-shadow .2s}
.card:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(20,83,45,.1)}
.card .ic{width:48px;height:48px;border-radius:12px;background:#e8f1ea;display:grid;place-items:center;margin-bottom:16px}
.card h3{font-size:1.2rem;margin-bottom:8px}
.card p{color:var(--color-muted);font-size:.96rem}
.alt{background:#eef2e8}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;counter-reset:s}
.step{position:relative;padding-top:58px}
.step::before{counter-increment:s;content:counter(s);position:absolute;top:0;left:0;width:44px;height:44px;border-radius:50%;background:var(--color-primary);color:#fff;font-family:var(--font-heading);font-size:1.3rem;display:grid;place-items:center}
.step h3{font-size:1.2rem;margin-bottom:6px}
.step p{color:var(--color-muted)}
.why{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.why ul{list-style:none;display:grid;gap:16px}
.why li{display:flex;gap:14px}
.why li b{display:block}
.why li div span{color:var(--color-muted);font-size:.95rem}
.tick{flex:none;width:26px;height:26px;border-radius:50%;background:var(--color-primary);color:#fff;display:grid;place-items:center;font-size:.85rem;margin-top:2px}
.reviews .card p{font-style:italic;color:var(--color-text);margin-bottom:14px}
.reviews small{color:var(--color-muted);font-weight:500}
.stars{color:#a15c07;letter-spacing:2px;margin-bottom:8px}
.faq details{background:var(--color-surface);border:1px solid var(--color-line);border-radius:14px;padding:18px 22px;margin-bottom:12px}
.faq summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:12px}
.faq summary::after{content:"+";font-size:1.4rem;line-height:1;color:var(--color-primary)}
.faq details[open] summary::after{content:"–"}
.faq details p{margin-top:10px;color:var(--color-muted)}
.cta{background:var(--color-primary);color:#fff;text-align:center;border-radius:28px;padding:64px 24px}
.cta h2{font-size:clamp(1.8rem,3.5vw,2.5rem);margin-bottom:12px}
.cta p{color:#cfe3d5;max-width:520px;margin:0 auto 26px}
footer{padding:36px 0;border-top:1px solid var(--color-line);color:var(--color-muted);font-size:.9rem}
footer .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}
@media(max-width:820px){
  .hero .wrap,.why{grid-template-columns:1fr}
  .hero svg{max-width:260px;order:-1}
  .grid,.steps{grid-template-columns:1fr}
  section{padding:60px 0}
  .menu-btn{display:block}
  .nav ul{display:none;position:absolute;top:68px;left:0;right:0;background:var(--color-bg);flex-direction:column;padding:20px;gap:18px;border-bottom:1px solid var(--color-line)}
  .nav ul.open{display:flex}
}
