:root{--teal:#2a7d78;--teal-d:#1d5d59;--mint:#e6f3f0;--sand:#f6f3ee;--ink:#1e2b2a;--muted:#5d6e6c;--coral:#f08a6c}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:"Avenir Next","Segoe UI",system-ui,-apple-system,sans-serif;color:var(--ink);line-height:1.65;font-size:17px;background:#fff}
.wrap{max-width:1100px;margin:0 auto;padding:0 22px}
a{color:var(--teal)}
header{border-bottom:1px solid #e7eeec;background:#fff;position:sticky;top:0;z-index:5}
.nav{display:flex;justify-content:space-between;align-items:center;min-height:72px;flex-wrap:wrap;gap:10px;padding-top:8px;padding-bottom:8px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font-weight:600;font-size:1.2rem;letter-spacing:.01em}
.brand svg{width:38px;height:38px}
nav{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
nav a{text-decoration:none;color:var(--muted);font-weight:500;font-size:.96rem}
nav a.on,nav a:hover{color:var(--teal)}
.btn{display:inline-block;background:var(--teal);color:#fff!important;padding:12px 24px;border-radius:10px;text-decoration:none;font-weight:600;border:0;font:inherit;font-weight:600;cursor:pointer}
.btn:hover{background:var(--teal-d)}
.btn.soft{background:var(--mint);color:var(--teal-d)!important}
.hero{background:linear-gradient(180deg,var(--mint),#fff);padding:70px 0 60px}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center}
.pill{display:inline-flex;gap:8px;align-items:center;background:#fff;border:1px solid #cfe5e0;color:var(--teal-d);padding:6px 14px;border-radius:999px;font-size:.85rem;font-weight:600}
.pill i{width:8px;height:8px;border-radius:50%;background:#3cb371}
h1{font-size:clamp(2.3rem,5vw,3.5rem);line-height:1.1;font-weight:600;letter-spacing:-.02em;margin:18px 0}
h1 span{color:var(--teal)}
.hero p{font-size:1.15rem;color:var(--muted);margin-bottom:28px;max-width:32em}
.hero .row{display:flex;gap:12px;flex-wrap:wrap}
.hero svg{width:100%;max-width:420px;margin:0 auto}
.facts{display:flex;gap:28px;margin-top:30px;flex-wrap:wrap;font-size:.93rem;color:var(--muted)}
.facts b{display:block;color:var(--ink);font-size:1.05rem}
section{padding:72px 0}
h2{font-size:clamp(1.8rem,3.5vw,2.4rem);font-weight:600;letter-spacing:-.015em;margin-bottom:10px}
.lede{color:var(--muted);max-width:40em;margin-bottom:36px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.c{background:var(--sand);border-radius:18px;padding:28px}
.c .ic{width:52px;height:52px;border-radius:14px;background:#fff;display:grid;place-items:center;margin-bottom:16px}
.c .ic svg{width:28px;height:28px}
.c h3{font-size:1.15rem;font-weight:600;margin-bottom:6px}
.c p{color:var(--muted);font-size:.96rem}
.c a{font-weight:600;font-size:.93rem;text-decoration:none}
.split{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.steps{list-style:none;counter-reset:n}
.steps li{position:relative;padding:0 0 22px 56px}
.steps li::before{counter-increment:n;content:counter(n);position:absolute;left:0;top:0;width:38px;height:38px;border-radius:50%;background:var(--mint);color:var(--teal-d);display:grid;place-items:center;font-weight:700}
.steps b{display:block}
.steps span{color:var(--muted);font-size:.96rem}
.band{background:var(--teal);color:#e7f5f2;border-radius:24px;padding:50px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.band h2{color:#fff}
.band .btn{background:#fff;color:var(--teal-d)!important}
.team{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.person{text-align:center;padding:26px;border:1px solid #e7eeec;border-radius:18px}
.av{width:96px;height:96px;border-radius:50%;margin:0 auto 14px;display:grid;place-items:center;font-size:1.8rem;font-weight:600;color:#fff}
.person p{color:var(--muted);font-size:.93rem}
.fees{width:100%;border-collapse:collapse}
.fees td,.fees th{padding:14px 10px;border-bottom:1px solid #e7eeec;text-align:left}
.fees th{font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.fees td:last-child,.fees th:last-child{text-align:right;font-weight:600}
.page-hero{background:var(--mint);padding:56px 0}
.page-hero p{color:var(--muted);font-size:1.1rem}
.book{display:grid;grid-template-columns:1.1fr .9fr;gap:40px}
form{background:var(--sand);border-radius:18px;padding:30px;display:grid;gap:14px}
label{font-weight:600;font-size:.92rem;display:grid;gap:6px}
input,select,textarea{font:inherit;padding:11px 13px;border:1px solid #d5dedc;border-radius:10px;background:#fff}
.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.note{font-size:.85rem;color:var(--muted)}
.info{display:grid;gap:18px;align-content:start}
.info div{border:1px solid #e7eeec;border-radius:16px;padding:22px}
.info h3{font-size:1.05rem;margin-bottom:6px}
.info p,.info li{color:var(--muted);font-size:.95rem}
.info ul{list-style:none}
footer{background:var(--ink);color:#aebebb;padding:40px 0 26px;font-size:.92rem;margin-top:40px}
footer .cols{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
footer strong{color:#fff}
footer a{color:#bfe6df}
.demo{margin-top:22px;padding-top:16px;border-top:1px solid #34413f;font-size:.82rem}
@media(max-width:860px){.hero .wrap,.split,.book{grid-template-columns:1fr}.hero svg{max-width:300px}.cards,.team{grid-template-columns:1fr 1fr}.band{padding:34px}nav{gap:16px}}
@media(max-width:560px){.cards,.team,.two{grid-template-columns:1fr}header{position:static}nav .btn{padding:8px 14px}}
