@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&display=swap');:root{--ink:#243a36;--muted:#596c66;--cream:#faf8f2;--sage:#e9eee7;--green:#375e51;--border:#dce3da;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:'DM Sans',sans-serif;line-height:1.65}a{color:var(--green)}h1,h2,h3,.quote p{font-family:'Libre Baskerville',Georgia,serif;line-height:1.28}h1{font-size:clamp(2.5rem,5.4vw,4.65rem);font-weight:400;letter-spacing:-.045em;margin:22px 0}h1 em{color:#648174;font-weight:400}h2{font-size:clamp(2rem,3.4vw,3.1rem);font-weight:400;letter-spacing:-.035em;margin:12px 0 22px}h3{font-size:1.2rem;font-weight:400}p{max-width:670px}section{padding:100px max(6vw,24px)}.site-header{height:82px;padding:0 max(6vw,24px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);background:var(--cream);position:sticky;top:0;z-index:10}.brand{font-weight:700;text-decoration:none;color:var(--ink);letter-spacing:-.025em}.brand-mark{color:#829c7d;font-size:1.45rem;margin-right:6px}nav{display:flex;align-items:center;gap:26px}nav a{text-decoration:none;font-size:.88rem;color:var(--ink)}.nav-cta{border:1px solid var(--green);border-radius:5px;padding:10px 16px}.menu{display:none;background:none;border:0;font-size:1.5rem}.hero{text-align:center;padding-top:120px;padding-bottom:130px;background:radial-gradient(ellipse at top,#e9eee5,transparent 70%)}.hero p{margin:0 auto 26px;font-size:1.15rem}.eyebrow{font-size:.74rem;font-weight:700;letter-spacing:.19em;color:#738c79}.actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:28px 0}.button{display:inline-block;padding:13px 23px;border-radius:5px;text-decoration:none;font:600 .9rem 'DM Sans',sans-serif;cursor:pointer;border:1px solid var(--green)}.primary{background:var(--green);color:white}.secondary{background:transparent;color:var(--green)}.credentials{font-size:.82rem!important;color:var(--muted);margin-top:28px!important}.intro{background:white}.intro>div:first-child{max-width:680px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:42px}.service{background:var(--cream);border:1px solid var(--border);padding:30px;min-height:300px}.service a{font-size:.9rem;font-weight:700}.number{color:#8aa18d;font-size:.85rem}.quote{text-align:center;background:var(--sage);padding:80px 24px}.quote p{font-size:clamp(1.5rem,3vw,2.4rem);max-width:800px;margin:0 auto 20px}.quote span{font-size:.8rem;color:var(--muted)}.split{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:center}.split.alt{background:white}.panel{background:var(--sage);padding:38px;border-radius:4px}.panel ul{padding-left:20px}.panel li{padding:7px 0}.panel.accent{background:#e3ebe0;font-family:'Libre Baskerville',serif;font-size:1.5rem}.resources{text-align:center;background:#f1f3ec}.resources p{margin-left:auto;margin-right:auto}.week-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:40px auto;max-width:1050px}.week-grid div{background:white;padding:24px 15px;border:1px solid var(--border);text-align:left}.week-grid strong,.week-grid span{display:block}.week-grid span{font-size:.85rem;color:var(--muted);margin-top:8px}.small{font-size:.78rem;color:var(--muted)}.contact{text-align:center;background:white}.contact p{margin-left:auto;margin-right:auto}.contact form{max-width:620px;text-align:left;margin:38px auto 0}.contact label{display:block;font-size:.85rem;font-weight:700;margin-bottom:18px}.contact input,.contact select,.contact textarea{display:block;width:100%;margin-top:6px;border:1px solid #cbd6ce;background:#fafbf8;border-radius:4px;padding:13px;font:inherit;color:var(--ink)}footer{padding:50px max(6vw,24px);background:#263e35;color:#eaf0e9}footer p{font-size:.85rem;max-width:760px}footer span{font-size:.75rem;color:#c1d0c5}@media(max-width:760px){.site-header{height:70px}.menu{display:block}nav{display:none;position:absolute;top:70px;left:0;right:0;background:var(--cream);padding:20px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--border)}nav.open{display:flex}section{padding:72px 22px}.hero{padding-top:85px;padding-bottom:90px}.service-grid,.split{grid-template-columns:1fr}.week-grid{grid-template-columns:repeat(2,1fr)}.panel{padding:26px}}
