:root { font-family: Inter, Arial, sans-serif; color:#172024; background:#f7f9f8; --surface:#fff; --ink:#172024; --muted:#607078; --line:#d8e0e4; --green:#0f7b68; --blue:#214b70; --gold:#b98722; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:#f7f9f8; color:var(--ink); }
.site-header { position:sticky; top:0; z-index:3; display:flex; align-items:center; justify-content:space-between; min-height:64px; padding:12px clamp(16px,4vw,56px); background:rgba(255,255,255,.96); border-bottom:1px solid var(--line); }
.brand { color:var(--ink); text-decoration:none; font-weight:800; font-size:21px; }
.nav { display:flex; gap:6px; align-items:center; }
.nav a, .menu-toggle { color:var(--ink); text-decoration:none; border:1px solid transparent; background:transparent; border-radius:6px; padding:8px 10px; font:inherit; }
.nav a:hover { border-color:var(--line); background:#f1f5f3; }
.menu-toggle { display:none; }
.hero { min-height:calc(100vh - 64px); display:grid; align-items:center; padding:clamp(32px,7vw,96px) clamp(18px,6vw,72px); background:linear-gradient(115deg, rgba(15,123,104,.9), rgba(33,75,112,.88)), url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="1200" height="700" viewBox="0 0 1200 700"%3E%3Crect width="1200" height="700" fill="%23dfe8e5"/%3E%3Cpath d="M0 530 C180 470 280 610 460 540 S790 350 960 410 S1100 500 1200 420 L1200 700 L0 700 Z" fill="%23ffffff" fill-opacity=".55"/%3E%3Cpath d="M120 410 L320 320 L470 370 L650 210 L860 280 L1050 130" fill="none" stroke="%230f7b68" stroke-width="18" stroke-linecap="round"/%3E%3C/svg%3E'); background-size:cover; background-position:center; color:white; }
.hero-copy { max-width:760px; }
.eyebrow { text-transform:uppercase; letter-spacing:0; font-weight:700; opacity:.9; }
h1 { font-size:clamp(54px,9vw,112px); line-height:.95; margin:0 0 18px; letter-spacing:0; }
.lead { font-size:clamp(18px,2.2vw,24px); line-height:1.45; max-width:720px; }
.actions { display:flex; gap:12px; flex-wrap:wrap; margin-top:26px; }
.button, .text-link { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 16px; border-radius:6px; background:var(--green); color:white; text-decoration:none; font-weight:700; border:1px solid var(--green); }
.button.secondary { background:white; color:var(--blue); border-color:white; }
.text-link { background:transparent; color:var(--green); padding:0; border:0; margin-top:20px; }
.band { padding:clamp(44px,6vw,82px) clamp(18px,6vw,72px); }
.band.alt { background:#edf3f1; }
.section-head { max-width:820px; margin-bottom:24px; }
h2 { font-size:clamp(30px,4vw,52px); margin:0 0 10px; letter-spacing:0; }
h3 { margin:0 0 8px; font-size:20px; }
p { color:var(--muted); line-height:1.6; }
.steps, .grid { display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:14px; }
article, .product-card, .service-row { background:var(--surface); border:1px solid var(--line); border-radius:8px; padding:18px; }
article span { display:inline-grid; place-items:center; width:34px; height:34px; border-radius:50%; background:#dbece7; color:#0c594b; font-weight:800; margin-bottom:16px; }
.product-card a { color:var(--green); font-weight:700; }
.service-row { display:flex; justify-content:space-between; align-items:center; gap:20px; }
.support { background:#172024; color:white; }
.support p { color:#d3dcdf; }
footer { padding:24px clamp(18px,6vw,72px); border-top:1px solid var(--line); color:var(--muted); }
@media (max-width: 760px) { .menu-toggle { display:inline-flex; } .nav { display:none; position:absolute; left:0; right:0; top:64px; padding:12px 18px; background:#fff; border-bottom:1px solid var(--line); flex-direction:column; align-items:stretch; } .nav.open { display:flex; } .steps, .grid { grid-template-columns:1fr; } .service-row { align-items:flex-start; flex-direction:column; } .hero { min-height:680px; } }
