:root{--deep:#1f4f60;--gulf:#2a6f86;--sea:#e6f1f3;--sand:#f7f1e6;--sand2:#e8dcc4;--sun:#f2c879;--ink:#1d2b30;--muted:#4f6168}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font:17px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:#fffdf9}
h1,h2,h3{line-height:1.2;color:var(--deep);margin:0 0 .5em}h1{font-size:clamp(2rem,5vw,3.2rem)}h2{font-size:clamp(1.6rem,3.5vw,2.2rem)}h2 small{font-size:.55em;color:var(--muted);font-weight:500}h3{font-size:1.15rem}
a{color:var(--gulf)}p{margin:0 0 1em}
.wrap{max-width:1100px;margin:0 auto;padding:0 20px}.narrow{max-width:760px}
section{padding:64px 0}section.wrap{padding:64px 20px}.band{background:var(--sea)}
.skip{position:absolute;left:-999px}.skip:focus{left:10px;top:10px;background:#fff;padding:8px;z-index:9}
.nav{position:sticky;top:0;background:rgba(255,253,249,.95);border-bottom:1px solid var(--sand2);z-index:5}
.navin{display:flex;justify-content:space-between;align-items:center;padding-top:10px;padding-bottom:10px;gap:12px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:700;color:var(--deep);font-size:1.15rem}
nav{display:flex;gap:18px;align-items:center}nav a{text-decoration:none;color:var(--ink);font-weight:500}
.btn{display:inline-block;background:var(--gulf);color:#fff;text-decoration:none;font-weight:600;padding:13px 22px;border-radius:999px;border:2px solid var(--gulf);cursor:pointer;font-size:1rem}
.btn:hover{background:var(--deep);border-color:var(--deep)}.btn.ghost{background:transparent;color:var(--gulf)}.btn.ghost:hover{background:var(--gulf);color:#fff}
.btn.sm{padding:7px 16px;color:#fff}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--sun);outline-offset:2px}
.hero{background:linear-gradient(180deg,#d9ecf0 0%,var(--sea) 55%,var(--sand) 100%);padding:90px 0 80px}
.hero h1{max-width:820px}.lead{font-size:1.2rem;max-width:680px;color:var(--muted)}
.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--gulf);font-size:.85rem}
.ctas{display:flex;flex-wrap:wrap;gap:12px;margin:26px 0 12px}.small{font-size:.9rem;color:var(--muted)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.card{background:#fff;border:1px solid var(--sand2);border-radius:16px;padding:24px}.card.soft{background:var(--sand)}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin-top:24px}.grid.three{grid-template-columns:repeat(3,1fr);align-items:stretch}
.steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:24px}
.steps span{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--sun);color:var(--deep);font-weight:800;margin-bottom:12px}
.price{display:flex;flex-direction:column;position:relative}.price ul{padding-left:20px;flex:1}.price li{margin-bottom:6px}
.amt{font-size:2.2rem;font-weight:800;color:var(--deep);margin:0}.amt span{font-size:1rem;font-weight:500;color:var(--muted)}
.sub{color:var(--muted);font-style:italic}.pop{border:2px solid var(--gulf);box-shadow:0 10px 30px rgba(31,79,96,.12)}
.tag{position:absolute;top:-14px;left:24px;background:var(--gulf);color:#fff;font-size:.8rem;font-weight:700;padding:3px 12px;border-radius:999px}
.note{margin-top:20px;font-size:.95rem;color:var(--muted)}
.checks{list-style:none;margin:0}.checks li{padding:8px 0 8px 30px;position:relative;border-bottom:1px solid var(--sand2)}.checks li:last-child{border:0}
.checks li::before{content:"";position:absolute;left:4px;top:15px;width:12px;height:7px;border-left:3px solid var(--gulf);border-bottom:3px solid var(--gulf);transform:rotate(-45deg)}
details{background:#fff;border:1px solid var(--sand2);border-radius:12px;padding:16px 20px;margin-bottom:12px}
summary{cursor:pointer;font-weight:600;color:var(--deep)}details p{margin:10px 0 0}
form label{display:block;font-weight:600;margin:12px 0 4px}form label:first-child{margin-top:0}
input,select,textarea{width:100%;font:inherit;padding:11px 12px;border:1px solid #b9c6c9;border-radius:10px;background:#fff}
form .btn{margin-top:18px;width:100%}
footer{background:var(--deep);color:#e6f1f3;padding:40px 0}footer a,footer .brand{color:#fff}footer .small{color:#b9cfd5}
@media (max-width:860px){.two,.grid.three,.steps{grid-template-columns:1fr}.grid.three{gap:28px}nav a:not(.btn){display:none}section,section.wrap{padding-top:48px;padding-bottom:48px}.hero{padding:56px 0}}
.roots{background:var(--sand);padding:40px 0;border-top:1px solid var(--sand2);border-bottom:1px solid var(--sand2)}
.roots-in{display:flex;gap:20px;align-items:flex-start}.roots h2{font-size:1.5rem}.roots p{margin:0;max-width:760px}
