:root{--paper:#f6f1e7;--ink:#3e4635;--muted:#626657;--line:#d6d4c4;--green:#e3e6d4;--clay:#956148;--white:#fffcf5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}h1,h2,h3,p{margin-top:0}h1,h2,h3,.brand,.quote{font-family:Georgia,'Times New Roman',serif;font-weight:400}h1{font-size:clamp(3rem,5.8vw,5.5rem);line-height:1.08;letter-spacing:-.045em;margin-bottom:28px}h2{font-size:clamp(2.4rem,4vw,3.9rem);line-height:1.13;letter-spacing:-.035em;margin-bottom:25px}h3{font-size:1.8rem;line-height:1.25}em{font-weight:400}a{color:inherit;text-underline-offset:5px}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--clay);outline-offset:5px}.skip{position:absolute;left:10px;top:-90px;background:white;z-index:10;padding:10px}.skip:focus{top:10px}.header{max-width:1440px;margin:auto;padding:27px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:24px}.brand{font-size:1.5rem;text-decoration:none;display:flex;align-items:center;gap:12px;line-height:1.1}.brand em{display:block;font-size:1.25rem}.brand-mark{border:1px solid var(--ink);width:46px;height:46px;border-radius:50%;display:grid;place-items:center;font-size:1.9rem}nav{display:flex;align-items:center;gap:30px;font-size:.85rem}nav a{text-decoration:none}nav a:hover{text-decoration:underline}.nav-cta{border-bottom:1px solid;padding-bottom:5px}.hero{max-width:1440px;margin:auto;display:grid;grid-template-columns:1.4fr 1fr;gap:6%;padding:80px 5% 76px;align-items:center}.eyebrow{font-size:.69rem;letter-spacing:.17em;font-weight:650;margin-bottom:22px}.intro{font-size:1.13rem;max-width:510px;color:var(--muted)}.actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap;margin-top:30px}.button{background:var(--ink);color:var(--white);border:1px solid var(--ink);border-radius:4px;padding:15px 22px;text-decoration:none;font-size:.87rem;display:inline-flex;justify-content:center;align-items:center;gap:22px;cursor:pointer;transition:background .2s}.button:hover{background:#17372e}.button.light{background:var(--white);color:var(--ink);border-color:var(--white)}.button.light:hover{background:var(--green)}.text-link{font-size:.88rem;font-weight:600}.hero-note{font-size:.72rem;color:var(--muted);margin-top:25px;margin-bottom:0}.hero-art{height:510px;background:#dce4d2;border-radius:220px 220px 8px 8px;position:relative;overflow:hidden}.hero-art:after{content:'';position:absolute;inset:0;background:linear-gradient(140deg,#ffffff35,transparent 60%)}.sun{position:absolute;right:-36px;top:55px;width:205px;height:205px;border-radius:50%;background:#eaca9f}.hero-art svg{position:absolute;height:100%;width:100%;inset:0;fill:#a6b69a;stroke:#536d4d;stroke-width:1.5}.hero-art svg path:first-child{fill:none;stroke-width:2}.art-caption{position:absolute;bottom:25px;left:30px;font:italic 1.4rem Georgia}.ribbon{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:center;gap:6%;padding:19px 5%;font-size:.78rem}.section{max-width:1280px;margin:auto;padding:100px 5%}.section-top{display:grid;grid-template-columns:1fr 1fr;gap:14%;align-items:center;margin-bottom:35px}.section-top>p{max-width:400px;color:var(--muted)}fieldset{border:0;padding:0;margin:0}legend{font-size:.84rem;color:var(--muted);margin-bottom:16px}.choices{display:grid;grid-template-columns:1fr 1fr;gap:13px}.choices label{cursor:pointer;position:relative}.choices input{position:absolute;left:15px;top:22px;accent-color:var(--ink);width:17px;height:17px}.choices span{display:flex;align-items:center;gap:20px;border:1px solid var(--line);padding:21px 20px 21px 46px;background:var(--white);min-height:78px;line-height:1.4;font-size:.95rem}.choices b{font-weight:400;font-size:.72rem;color:var(--muted)}.choices input:checked+span{background:var(--green);border-color:var(--ink)}.choices label:focus-within span{outline:2px solid var(--clay);outline-offset:2px}.reset{border:0;background:none;color:var(--ink);cursor:pointer;text-decoration:underline;text-underline-offset:4px;font-size:.83rem}.small{font-size:.76rem;color:var(--muted);line-height:1.6}.result{margin-top:30px;padding:35px;background:var(--ink);color:var(--white);border-radius:4px}.result h3{font-size:2rem}.result a:not(.button){display:inline-block;margin:0 20px 20px 0}.result .small{color:#d5dfd2;margin:18px 0 0}.result .button{margin-top:10px}.about{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:12%;}.about-heading h2 em{font-size:.75em}.quote{font-size:1.6rem;line-height:1.4;border-left:2px solid var(--clay);padding-left:20px;margin-top:40px;max-width:390px}.about-heading>.small{margin-top:20px}.about-copy{color:var(--muted)}.lead{font-size:1.2rem;color:var(--ink)}details{border-top:1px solid var(--line);padding-top:18px;margin-top:25px;font-size:.87rem}summary{cursor:pointer;color:var(--ink);font-weight:600}details p{margin-top:15px}.services{border-top:1px solid var(--line)}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.service{padding:35px;background:var(--white);border:1px solid var(--line);display:flex;flex-direction:column;align-items:flex-start;scroll-margin-top:30px}.service p{color:var(--muted);font-size:.95rem}.service .text-link{margin-top:auto}.service-meta{display:flex;justify-content:space-between;gap:15px;width:100%;font-size:.62rem;letter-spacing:.09em;margin-bottom:32px}.featured{background:var(--green)}.coming{padding:30px 0;display:grid;grid-template-columns:150px 1fr;gap:25px;border-top:1px solid var(--line);margin-top:35px}.coming h3{font-size:1.6rem}.coming p{font-size:.9rem;color:var(--muted);margin-bottom:0}.pill{align-self:start;font-size:.6rem;border:1px solid var(--ink);border-radius:30px;padding:6px 10px;text-align:center;letter-spacing:.08em}.philosophy{text-align:center;background:var(--ink);color:var(--white);padding:80px 6%}.philosophy h2{font-size:clamp(2.8rem,5vw,4.7rem)}.philosophy>p:not(.eyebrow){max-width:480px;margin:0 auto 25px;color:#d9e1d4}.contact{display:grid;grid-template-columns:1fr 1fr;gap:13%}.contact>div>p:not(.eyebrow){max-width:380px}.contact form>label:not(.consent){display:block;font-size:.8rem;margin:16px 0 7px}.contact form>label:first-of-type{margin-top:0}.contact input:not([type=checkbox]):not([type=hidden]),.contact select,.contact textarea{width:100%;padding:12px;background:var(--white);color:var(--ink);border:1px solid #aab5a5;border-radius:3px;min-width:0}.contact textarea{resize:vertical}.optional{font-weight:400;color:var(--muted)}.consent{display:flex;align-items:flex-start;gap:10px;font-size:.74rem;color:var(--muted);margin:20px 0}.consent input{margin-top:5px;accent-color:var(--ink);flex-shrink:0}footer{border-top:1px solid var(--line);padding:35px 5%;display:flex;justify-content:space-between;align-items:center;gap:25px}footer p,footer>span{font-size:.7rem;color:var(--muted);margin:0}.thanks{max-width:650px;margin:12vh auto;padding:30px}.thanks h1{font-size:3.4rem}[hidden]{display:none!important}@media(max-width:800px){.header{padding:20px 6%;align-items:flex-start}nav{gap:15px;flex-wrap:wrap;justify-content:flex-end}nav>a:not(.nav-cta){display:none}.hero{grid-template-columns:1fr;padding:55px 6%;gap:40px}.hero-art{height:340px;max-width:420px;width:100%;justify-self:center}.hero-art svg{transform:scale(1.25)}.section{padding:65px 6%}.section-top,.about,.contact{grid-template-columns:1fr;gap:25px}.section-top>p{max-width:100%}.section-top{margin-bottom:25px}.choices,.service-grid{grid-template-columns:1fr}.ribbon{gap:12px;font-size:.62rem;text-align:center}.ribbon span[aria-hidden]{display:none}.about-heading .quote{margin-top:20px}.service{padding:27px}.coming{grid-template-columns:1fr;gap:15px}.pill{justify-self:start}.contact{gap:35px}footer{flex-wrap:wrap;padding:30px 6%}footer>span{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Optional, conditional visitor questions */
.followups{display:grid;gap:20px;margin-top:24px}
.followup{border:1px solid var(--line);border-radius:4px;padding:22px;background:var(--white);min-width:0}
.followup legend{color:var(--ink);font-weight:650;padding:0 8px;font-size:.87rem;margin:0}
.followup>p{font-size:.9rem;margin-bottom:12px}
.followup>label,.goal-question>label{display:block;font-size:.87rem;margin:15px 0 7px}
.followup>input,.followup>textarea,.goal-question>textarea{width:100%;padding:12px;background:var(--paper);color:var(--ink);border:1px solid #aab5a5;border-radius:3px;min-width:0}
.followup textarea,.goal-question textarea{resize:vertical}
.frequency-options{display:flex;flex-wrap:wrap;gap:10px 20px}
.frequency-options label{display:flex;align-items:center;gap:8px;font-size:.87rem;cursor:pointer}
.frequency-options input{accent-color:var(--ink);width:18px;height:18px}
.goal-question{margin-top:24px}

/* Sunlit woodland — warm, spacious, and grounded. */
body{background-image:radial-gradient(ellipse at 10% 8%,#ede9d480,transparent 50%)}
.header{padding-top:30px;padding-bottom:30px}
.hero{padding-top:88px;padding-bottom:96px;gap:7%}
.hero-art{height:570px;border-radius:220px 220px 18px 18px;background:#626e46;box-shadow:0 18px 45px #3e463510}
.hero-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 48%}
.hero-art:after{background:linear-gradient(0deg,#1f2a20a6,transparent 42%);pointer-events:none}
.art-caption{color:#fffaf0;z-index:1;font-size:1.65rem;bottom:30px}
.ribbon{background:#e5e7d8;padding-top:24px;padding-bottom:24px}
.section{padding-top:112px;padding-bottom:112px}
.button{border-radius:30px;padding:15px 25px;transition:background .25s ease}
.button:hover{background:#535e41}
.button.light:hover{background:#e7e8d8}
.choices span{border-radius:12px;padding-top:24px;padding-bottom:24px}
.choices input{top:25px}
.service{border-radius:18px;padding:38px;background:#fffcf5c9}
.service.featured{background:#e3e6d4}
.followup,.result{border-radius:14px}
.contact form{background:#fffcf5a6;border:1px solid var(--line);padding:30px;border-radius:20px;min-width:0}
.contact input:not([type=checkbox]):not([type=hidden]),.contact select,.contact textarea,.followup>input,.followup>textarea,.goal-question>textarea{border-radius:8px;border-color:#999f89}
.coming{position:relative;isolation:isolate;overflow:hidden;grid-template-columns:150px 1fr;margin-top:42px;padding:42px 32px;border:1px solid #cbcdb8;border-radius:18px;background:#e6e8d8}
.coming:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#e9ebddeb 35%,#e9ebddd9),url('assets/woodland.webp') center 66%/cover}
.philosophy{position:relative;isolation:isolate;background:#303d2c url('assets/woodland.webp') center 50%/cover;padding-top:105px;padding-bottom:105px}
.philosophy:before{content:'';position:absolute;inset:0;z-index:-1;background:#263525da}
.philosophy-inner{max-width:700px;margin:auto}
.philosophy-inner>p:not(.eyebrow){max-width:480px;margin:0 auto 28px;color:#f0f0e4}
.philosophy .eyebrow{color:#e1e5cf}
.thanks{background:#fffaf0;border:1px solid var(--line);border-radius:20px;padding:48px}
@media(max-width:800px){.hero{padding-top:48px;padding-bottom:56px}.hero-art{height:420px;max-width:480px}.section{padding-top:64px;padding-bottom:64px}.service{padding:28px}.coming{grid-template-columns:1fr;padding:28px 24px}.contact form{padding:23px}.philosophy{padding:75px 6%}.thanks{margin:8vh 6%;padding:30px}.eyebrow{line-height:1.9}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}html{scroll-behavior:auto}}
