:root{--green:#126654;--green-d:#0c4a3d;--coral:#f66b5c;--coral-d:#d94f40;--bg:#fbfaf6;--fg:#16231f;--muted:#5b6b66;--line:#e3e8e4;--card:#fff}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;font:17px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:var(--bg);color:var(--fg)}
.wrap{max-width:1040px;margin:0 auto;padding:0 20px}
a{color:var(--green)}
a:focus-visible,.btn:focus-visible{outline:3px solid var(--coral);outline-offset:3px;border-radius:6px}
img{max-width:100%;height:auto}

/* nav */
.nav{display:flex;align-items:center;justify-content:space-between;padding:18px 0}
.nav img{height:76px;width:auto;display:block}
.nav a.link{color:var(--green);text-decoration:none;font-weight:600;margin-left:22px}
.nav .btn{margin-left:22px}

/* buttons */
.btn{display:inline-block;padding:13px 22px;border-radius:10px;background:var(--coral);color:#fff;text-decoration:none;font-weight:700;border:0;font-size:1rem}
.btn:hover{background:var(--coral-d)}
.btn.ghost{background:transparent;color:var(--green);border:2px solid var(--green)}
.btn.ghost:hover{background:var(--green);color:#fff}
.btn.sm{padding:9px 16px;font-size:.95rem}

/* hero */
.hero{background:linear-gradient(160deg,#e6f2ee 0%,var(--bg) 70%);padding:30px 0 70px}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center;margin-top:36px}
.pill{display:inline-block;background:#fff;border:1px solid var(--line);border-radius:999px;padding:5px 14px;font-size:.88rem;font-weight:600;color:var(--green)}
h1{font-size:clamp(2rem,5vw,3.2rem);line-height:1.12;margin:16px 0 16px;color:var(--green-d);letter-spacing:-.02em}
h1 em{font-style:normal;color:var(--coral)}
.lead{font-size:1.2rem;color:var(--muted);max-width:34em}
.hero .btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.fine{font-size:.9rem;color:var(--muted);margin-top:14px}

/* phone mock */
.phone{background:#fff;border:10px solid var(--green-d);border-radius:34px;box-shadow:0 24px 50px -20px rgba(12,74,61,.45);max-width:290px;margin:0 auto;overflow:hidden}
.phone .top{background:var(--green);color:#fff;padding:22px 18px}
.phone .top b{display:block;font-size:1.15rem}
.phone .top span{font-size:.82rem;opacity:.9}
.phone .row{display:flex;justify-content:space-between;gap:10px;padding:11px 16px;border-bottom:1px solid var(--line);font-size:.9rem}
.phone .row small{display:block;color:var(--muted);font-size:.75rem}
.phone .cta{display:flex;gap:8px;padding:14px 16px}
.phone .cta i{flex:1;text-align:center;font-style:normal;font-size:.82rem;font-weight:700;padding:9px 0;border-radius:8px;background:var(--coral);color:#fff}
.phone .cta i+i{background:#fff;color:var(--green);border:1.5px solid var(--green)}

/* sections */
section{padding:64px 0}
section.alt{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
h2{font-size:clamp(1.55rem,3.4vw,2.1rem);line-height:1.2;margin:0 0 10px;color:var(--green-d);letter-spacing:-.01em}
.sub{color:var(--muted);margin:0 0 34px;max-width:40em}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:24px}
.card h3{margin:10px 0 6px;font-size:1.1rem;color:var(--green-d)}
.card p{margin:0;color:var(--muted);font-size:.97rem}
.num{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--green);color:#fff;font-weight:700}
.ticks{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,1fr);gap:12px 28px}
.ticks li{padding-left:30px;position:relative}
.ticks li::before{content:"";position:absolute;left:0;top:.35em;width:18px;height:18px;border-radius:50%;background:var(--green)}
.ticks li::after{content:"";position:absolute;left:6px;top:.5em;width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}

/* pricing */
.price-card{max-width:520px;margin:0 auto;background:#fff;border:2px solid var(--green);border-radius:22px;padding:34px;text-align:center;box-shadow:0 20px 40px -24px rgba(12,74,61,.4)}
.price{font-size:3.4rem;font-weight:800;color:var(--green-d);line-height:1}
.price small{font-size:1.1rem;font-weight:600;color:var(--muted)}
.price-card ul{list-style:none;padding:0;margin:22px 0;text-align:left;display:grid;gap:10px}
.price-card li{padding-left:28px;position:relative}
.price-card li::before{content:"";position:absolute;left:0;top:.4em;width:16px;height:16px;border-radius:50%;background:var(--coral)}
.price-card .btn{width:100%;padding:15px}

/* faq */
details{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px 20px;margin-bottom:12px}
summary{cursor:pointer;font-weight:700;color:var(--green-d)}
details p{margin:10px 0 0;color:var(--muted)}

/* footer */
footer{background:var(--green-d);color:#cfe3dc;padding:44px 0 36px;font-size:.92rem}
footer a{color:#fff}
footer img{height:34px;margin-bottom:14px;display:block}
footer p{margin:5px 0}
footer nav{display:flex;flex-wrap:wrap;gap:18px;margin-top:14px}

/* legal pages */
.legal{max-width:70ch;padding:36px 0 56px}
.legal h1{font-size:2.1rem}
.legal h2{font-size:1.2rem;margin-top:30px}
.legal p,.legal li{color:#2b3a35}

@media (max-width:820px){
  .hero-grid,.grid3,.ticks{grid-template-columns:1fr}
  .nav a.link{display:none}
  .nav img{height:58px}
  .hero{padding-bottom:50px}
  section{padding:48px 0}
}
