:root { --ink:#16332b; --muted:#557068; --accent:#0f8b6f; --accent-dark:#08715a; --surface:#fff; --line:#d7e7df; }
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; color:var(--ink); background:linear-gradient(145deg,#f9fdfb 0%,#edf6f1 45%,#f9fcfa 100%); font:16px/1.55 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif; } a { color:inherit; }
.site-header, main, footer { max-width:1160px; margin:auto; }.site-header { display:flex; justify-content:space-between; align-items:center; padding:1.35rem 1.5rem; }.brand { display:flex; align-items:center; gap:.65rem; text-decoration:none; font-size:1.1rem; font-weight:750; letter-spacing:-.02em; }.brand img { border-radius:10px; }.text-link { color:var(--accent-dark); font-weight:700; }
main { padding:1rem 1.5rem 4rem; }.hero { min-height:510px; display:grid; grid-template-columns:1.2fr .8fr; gap:4rem; align-items:center; padding:4rem clamp(1.5rem,6vw,5rem); background:radial-gradient(circle at 90% 10%,#d5f2e5,transparent 33%),var(--surface); border:1px solid var(--line); border-radius:28px; box-shadow:0 24px 70px rgba(21,70,55,.08); }.eyebrow { margin:0 0 .8rem; color:var(--accent-dark); font-size:.76rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }.hero h1 { max-width:650px; margin:0; font-size:clamp(2.45rem,6vw,4.5rem); line-height:1.02; letter-spacing:-.065em; }.lead { max-width:620px; margin:1.4rem 0; color:var(--muted); font-size:1.1rem; }.actions { display:flex; gap:.8rem; flex-wrap:wrap; margin-top:1.8rem; }.button { display:inline-flex; justify-content:center; align-items:center; min-height:48px; padding:.7rem 1.1rem; border-radius:999px; text-decoration:none; font-weight:750; }.primary { background:var(--accent); color:#fff; box-shadow:0 10px 20px rgba(15,139,111,.22); }.primary:hover { background:var(--accent-dark); }.secondary { border:1px solid var(--line); background:#fff; }.privacy-note { max-width:510px; margin-top:1.5rem; color:var(--muted); font-size:.86rem; }
.tree-card { position:relative; min-height:315px; border-radius:24px; background:linear-gradient(145deg,#e8f8f0,#c6ead9); overflow:hidden; box-shadow:inset 0 0 0 1px rgba(15,139,111,.12); }.tree-line { position:absolute; background:#55a88c; border-radius:99px; }.trunk { width:8px;height:152px;left:50%;top:65px; }.branch { width:116px;height:8px;top:142px; }.left { left:20%; }.right { right:20%; }.node { position:absolute;width:52px;height:52px;border-radius:50%;background:#fff;border:8px solid #0f8b6f;box-shadow:0 8px 18px rgba(22,80,61,.16); }.root { left:calc(50% - 26px);top:28px; }.child { bottom:50px; }.one { left:15%; }.two { left:calc(50% - 26px); }.three { right:15%; }
.features { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; margin:1rem 0; }.features article,.cta { border:1px solid var(--line); border-radius:20px; background:rgba(255,255,255,.8); }.features article { padding:1.75rem; }.features span { color:var(--accent); font-size:.78rem; font-weight:800; }.features h2 { margin:.45rem 0; font-size:1.25rem; letter-spacing:-.03em; }.features p { margin:0;color:var(--muted); }.cta { display:flex; align-items:center; justify-content:space-between; gap:1.5rem; margin-top:1rem; padding:2rem; background:#123f34; color:#fff; }.cta .eyebrow { color:#aee6ce; }.cta h2 { margin:0; font-size:clamp(1.5rem,3vw,2.2rem); letter-spacing:-.04em; }.cta .primary { background:#d7f3e6;color:#0a4e3d; box-shadow:none; } footer { display:flex; justify-content:space-between; gap:1rem; padding:1.5rem; color:var(--muted); font-size:.9rem; }
@media (max-width:760px) { .hero { grid-template-columns:1fr; padding:2.25rem 1.5rem; gap:2rem; }.tree-card { min-height:245px; }.features { grid-template-columns:1fr; }.cta,footer { align-items:flex-start; flex-direction:column; }.site-header,main { padding-left:1rem;padding-right:1rem; } }
