:root{--ink:#1d2a2a;--muted:#596260;--paper:#f4f0e7;--cream:#fffdf8;--green:#245d54;--green-dark:#17473f;--clay:#b85f42;--line:#d8d2c6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit}button,input,textarea{font:inherit}h1,h2,h3,p{margin-top:0}.site-header{border-bottom:1px solid var(--line);z-index:20;background:#f4f0e7f0;grid-template-columns:1fr auto 1fr;align-items:center;min-height:72px;padding:0 6vw;display:grid;position:sticky;top:0}.brand{letter-spacing:-.055em;font-family:Avenir Next,Avenir,Helvetica Neue,Arial,sans-serif;font-size:1.35rem;font-weight:800;text-decoration:none}.site-header nav{gap:1.8rem;display:flex}.site-header nav a,.header-contact{color:var(--muted);font-size:.88rem;font-weight:700;text-decoration:none}.site-header nav a:hover,.header-contact:hover{color:var(--green)}.header-contact{color:var(--green);text-underline-offset:4px;justify-self:end;text-decoration:underline}.hero{border-bottom:1px solid var(--line);min-height:650px;padding:8rem 8vw 7rem}.hero-inner{max-width:890px}.location-line,.section-label{color:var(--clay);letter-spacing:.06em;text-transform:uppercase;margin-bottom:1.35rem;font-size:.82rem;font-weight:700}h1,h2{letter-spacing:-.045em;font-family:Georgia,Times New Roman,serif;font-weight:400}h1{max-width:820px;margin-bottom:2rem;font-size:clamp(3.3rem,7vw,6.25rem);line-height:.98}.hero-lede{color:var(--muted);max-width:720px;font-size:clamp(1.15rem,2vw,1.4rem);line-height:1.65}.hero-actions{flex-wrap:wrap;align-items:center;gap:1.4rem;margin-top:2.25rem;display:flex}.button{background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:4px;justify-content:center;padding:.95rem 1.25rem;font-size:.94rem;font-weight:700;text-decoration:none;display:inline-flex}.button:hover{background:var(--green-dark)}.email-link{color:var(--green);text-underline-offset:4px;font-size:.94rem}.service-area{color:var(--muted);margin:2.25rem 0 0;font-size:.85rem}.intro,.help-section,.pricing-section,.visit-section,.questions,.request{padding:7rem 8vw}.intro{background:var(--cream);grid-template-columns:minmax(180px,.65fr) minmax(240px,320px) minmax(300px,1.15fr);align-items:start;gap:clamp(2.5rem,5vw,5rem);display:grid}.intro h2,.section-title h2,.request h2{margin-bottom:0;font-size:clamp(2.5rem,4.5vw,4.3rem);line-height:1.05}.intro-copy{max-width:700px}.jeremy-photo{isolation:isolate;width:320px;margin:0;padding:.8rem .7rem .4rem .3rem;position:relative}.jeremy-photo:before{content:"";z-index:-1;background:#c8785b;border-radius:42% 58% 63% 37%/55% 38% 62% 45%;position:absolute;inset:1.4rem -.2rem 1.6rem 1.2rem;transform:rotate(6deg)}.jeremy-photo img{object-fit:cover;border-radius:57% 43% 46% 54%/43% 54% 46% 57%;width:300px;max-width:100%;height:300px;display:block;transform:rotate(-1.5deg)}.jeremy-photo figcaption{color:var(--muted);margin:.9rem 0 0 .35rem;font-size:.78rem}.intro-copy p{color:var(--muted);font-family:Georgia,Times New Roman,serif;font-size:1.35rem;line-height:1.65}.intro-copy p:last-child{margin-bottom:0}.help-section{background:var(--paper)}.section-title{max-width:700px}.help-list{border-top:1px solid var(--line);margin-top:4rem}.help-list article{border-bottom:1px solid var(--line);grid-template-columns:minmax(220px,.7fr) 1.3fr;align-items:baseline;gap:4rem;padding:1.9rem 0;display:grid}.help-list h3{margin:0;font-family:Georgia,Times New Roman,serif;font-size:1.4rem;font-weight:400}.help-list p{color:var(--muted);max-width:700px;margin:0;line-height:1.7}.small-note{color:var(--muted);margin:2rem 0 0;font-size:.9rem;font-style:italic}.pricing-section{background:var(--cream)}.pricing-heading{grid-template-columns:minmax(280px,1fr) minmax(260px,.7fr);gap:2rem;display:grid}.pricing-heading .section-label{grid-column:1/-1;margin-bottom:-.5rem}.pricing-heading h2{margin:0;font-size:clamp(2.5rem,4.5vw,4.3rem);line-height:1.05}.pricing-heading>p:last-child{color:var(--muted);max-width:520px;margin:0;line-height:1.7}.price-options{border-bottom:1px solid var(--line);border-top:1px solid var(--line);grid-template-columns:1fr 1fr;margin-top:4rem;display:grid}.price-options article{padding:2.4rem 4vw 2.4rem 0}.price-options article+article{border-left:1px solid var(--line);padding-left:4vw}.price-name{color:var(--clay);letter-spacing:.06em;text-transform:uppercase;font-size:.8rem;font-weight:700}.price{letter-spacing:-.06em;margin-bottom:.8rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(3.8rem,7vw,6rem);line-height:.9}.price span{vertical-align:top;margin-right:.08em;font-size:.48em}.price-duration{color:var(--ink);font-weight:700}.price-options article>p:last-child{color:var(--muted);max-width:520px;margin-bottom:0;line-height:1.7}.pricing-note{color:var(--muted);max-width:760px;margin:1.5rem 0 0;font-size:.88rem;line-height:1.6}.visit-section{background:var(--green);color:#fff;grid-template-columns:.8fr 1.2fr;gap:8vw;display:grid}.visit-section .section-label{color:#e1aa91}.visit-steps{border-top:1px solid #ffffff40}.visit-steps p{color:#ffffffc7;border-bottom:1px solid #ffffff40;margin:0;padding:1.5rem 0;line-height:1.65}.visit-steps strong{color:#fff}.privacy-note{color:#493f37;background:#e7ddd0;padding:2.5rem 8vw;font-family:Georgia,Times New Roman,serif;font-size:1.13rem;line-height:1.7}.questions{background:var(--cream);grid-template-columns:.75fr 1.25fr;gap:8vw;display:grid}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line);padding:1.35rem 0}.faq-list summary{cursor:pointer;justify-content:space-between;align-items:center;font-family:Georgia,Times New Roman,serif;font-size:1.2rem;list-style:none;display:flex}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:var(--clay);font-family:Arial,sans-serif;font-size:1.35rem}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{color:var(--muted);margin:1rem 3rem 0 0;line-height:1.7}.request{background:var(--paper);grid-template-columns:.8fr 1.2fr;gap:8vw;display:grid}.request-intro>p:not(.section-label){color:var(--muted);margin-top:1.5rem;line-height:1.7}.request-intro a{color:var(--green);font-weight:700}.request form{background:var(--cream);border:1px solid var(--line);padding:clamp(1.5rem,3vw,2.5rem)}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.request label{gap:.5rem;margin-bottom:1rem;font-size:.84rem;font-weight:700;display:grid}.request input,.request textarea{color:var(--ink);background:#fff;border:1px solid #c9c3b9;border-radius:3px;outline:none;width:100%;padding:.85rem .9rem}.request input:focus,.request textarea:focus{border-color:var(--green);box-shadow:0 0 0 2px #245d5424}.request textarea{resize:vertical}.request .consent-label{grid-template-columns:auto 1fr;align-items:start;gap:.7rem;margin:.4rem 0 1.2rem;font-size:.76rem;font-weight:400;line-height:1.55;display:grid}.request .consent-label input{width:1rem;height:1rem;margin:.15rem 0 0;padding:0}.request .consent-label a{color:var(--green);font-weight:700}.submit-button{width:100%;margin-top:.3rem}.form-footnote{color:var(--muted);text-align:center;margin:.9rem 0 0;font-size:.73rem;line-height:1.5}footer{background:var(--ink);color:#fff;grid-template-columns:1fr auto;gap:3rem;padding:4rem 8vw 2.5rem;display:grid}.footer-brand{margin-bottom:.7rem;display:inline-block}footer p{color:#ffffff9e;margin-bottom:0;font-size:.82rem}.footer-contact{text-align:right}.footer-contact a{font-size:.9rem}.footer-legal{justify-content:flex-end;gap:1rem;margin-top:1rem;display:flex}.footer-legal a{color:#ffffff9e;text-underline-offset:3px;font-size:.75rem}.copyright{border-top:1px solid #ffffff24;grid-column:1/-1;padding-top:1.5rem}.legal-header{grid-template-columns:1fr auto}.legal-page{background:var(--cream);min-height:70vh;padding:6rem max(8vw,50vw - 460px)}.legal-page header{border-bottom:1px solid var(--line);margin-bottom:3rem;padding-bottom:2rem}.legal-page h1{margin-bottom:1rem;font-size:clamp(3rem,6vw,5.4rem)}.legal-page .effective-date{color:var(--muted);margin:0;font-size:.85rem}.legal-page section{margin:2.6rem 0}.legal-page h2{letter-spacing:-.03em;margin-bottom:1rem;font-size:clamp(1.7rem,3vw,2.3rem)}.legal-page h3{margin:1.6rem 0 .6rem;font-family:Georgia,Times New Roman,serif;font-size:1.2rem;font-weight:400}.legal-page p,.legal-page li{color:var(--muted);line-height:1.75}.legal-page ul{padding-left:1.25rem}.legal-page a{color:var(--green);text-underline-offset:3px;font-weight:700}.legal-page address{color:var(--muted);font-style:normal;line-height:1.7}.legal-footer{grid-template-columns:1fr auto}.button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline-offset:3px;outline:3px solid #b85f4266}@media (max-width:850px){.site-header{grid-template-columns:1fr auto}.site-header nav{display:none}.hero{min-height:auto;padding:6rem 7vw}.intro,.visit-section,.questions,.request{grid-template-columns:1fr;gap:3.5rem}.jeremy-photo{width:min(320px,100%)}.jeremy-photo img{width:min(300px,100%);height:auto}.intro,.help-section,.pricing-section,.visit-section,.questions,.request{padding:5.5rem 7vw}.pricing-heading{grid-template-columns:1fr}.pricing-heading .section-label{grid-column:1}}@media (max-width:560px){.site-header{min-height:64px;padding:0 5vw}.header-contact{font-size:.8rem}.hero{padding:4.5rem 6vw}h1{font-size:clamp(3rem,14vw,4.2rem)}.hero-actions{flex-direction:column;align-items:flex-start}.intro,.help-section,.pricing-section,.visit-section,.questions,.request{padding:4.5rem 6vw}.intro{gap:2rem}.jeremy-photo{width:260px}.jeremy-photo img{width:240px}.help-list article{grid-template-columns:1fr;gap:.7rem}.price-options{grid-template-columns:1fr}.price-options article{padding:2rem 0}.price-options article+article{border-left:0;border-top:1px solid var(--line);padding-left:0}.form-row{grid-template-columns:1fr}footer{grid-template-columns:1fr;padding:3.5rem 6vw 2.5rem}.footer-contact{text-align:left}.footer-legal{justify-content:flex-start}.copyright{grid-column:1}.legal-page{padding:4rem 6vw}.legal-footer{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
