:root { --ink:#17251e; --muted:#647168; --line:#dfe6dc; --leaf:#2e8b57; --cream:#fafbf7; --soft:#eef8ee; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--cream); font-family:"DM Sans",Arial,sans-serif; -webkit-font-smoothing:antialiased; }
a { color:inherit; text-decoration:none; }
.container { width:min(1160px,calc(100% - 48px)); margin:0 auto; }
.site-header { border-bottom:1px solid rgba(223,230,220,.85); background:rgba(250,251,247,.88); backdrop-filter:blur(12px); }
.site-nav { min-height:82px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.brand { display:flex; gap:11px; align-items:center; font-size:21px; font-weight:700; letter-spacing:-.045em; white-space:nowrap; }
.brand img { width:44px; height:44px; object-fit:cover; border-radius:14px; box-shadow:0 5px 12px rgba(23,50,32,.13); }
.brand-copy { display:flex; flex-direction:column; line-height:1.02; }.brand-copy small { color:#718077; font-size:10px; font-weight:600; letter-spacing:.08em; margin-top:4px; text-transform:uppercase; }
.nav-links { display:flex; gap:29px; color:#526057; font-size:14px; }.nav-links a:hover,.nav-links a.active { color:var(--leaf); }
.app-link { background:#1e3328; color:white; padding:11px 17px; border-radius:999px; font-size:13px; font-weight:600; white-space:nowrap; }
.page-hero { padding:92px 0 75px; text-align:center; background:radial-gradient(ellipse at 50% 50%,#def3e0 0%,#f8fbf6 64%); border-bottom:1px solid #e5ede4; }
.eyebrow { color:var(--leaf); text-transform:uppercase; font-size:11px; font-weight:700; letter-spacing:.14em; }
h1,h2,h3 { font-family:"Playfair Display",Georgia,serif; letter-spacing:-.05em; }.page-hero h1 { max-width:670px; margin:17px auto 15px; font-size:clamp(44px,6vw,70px); line-height:1.02; }.page-hero p { max-width:530px; margin:0 auto; color:var(--muted); font-size:17px; line-height:1.6; }
.content { width:min(800px,calc(100% - 48px)); margin:0 auto; padding:92px 0 112px; }.content h2 { font-size:31px; margin:52px 0 15px; }.content h2:first-child { margin-top:0; }.content h3 { font-size:23px; margin:31px 0 9px; }.content p,.content li { color:#536258; font-size:16px; line-height:1.72; }.content a { color:var(--leaf); font-weight:600; }.content a:hover { text-decoration:underline; }.content ul { padding-left:22px; }.content li { margin:7px 0; }
.support-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; margin:13px 0 48px; }.support-card { display:block; min-height:158px; border:1px solid var(--line); background:white; border-radius:21px; padding:25px; transition:transform .2s ease,box-shadow .2s ease; }.support-card:hover { transform:translateY(-3px); box-shadow:0 15px 35px rgba(43,75,52,.1); text-decoration:none!important; }.support-card span { display:block; width:34px; height:34px; padding-top:7px; text-align:center; background:var(--soft); border-radius:10px; color:var(--leaf); font-weight:700; }.support-card h2 { font-family:"DM Sans",Arial,sans-serif; font-size:18px; letter-spacing:-.03em; margin:16px 0 6px; }.support-card p { font-size:14px; line-height:1.45; margin:0; }.contact-box { margin-top:46px; padding:33px; border-radius:24px; background:#e3f5e5; }.contact-box h2 { margin:0 0 8px; }.contact-box p { margin:0; }
.site-footer { border-top:1px solid var(--line); padding:32px 0; color:#718077; font-size:13px; }.footer-inner { display:flex; align-items:center; justify-content:space-between; gap:20px; }.footer-links { display:flex; gap:22px; }.footer-links a:hover { color:var(--leaf); }
@media (max-width:700px) { .container { width:min(100% - 32px,560px); }.site-nav { min-height:72px; }.nav-links { display:none; }.brand { font-size:19px; }.brand img { width:41px; height:41px; }.app-link { padding:10px 14px; }.page-hero { padding:67px 0 58px; }.page-hero p { font-size:16px; }.content { width:min(100% - 32px,560px); padding:66px 0 82px; }.content h2 { font-size:29px; margin-top:42px; }.support-grid { grid-template-columns:1fr; }.contact-box { padding:27px; }.footer-inner { align-items:flex-start; flex-direction:column; }.footer-links { gap:15px; flex-wrap:wrap; } }
