header{position:sticky;top:0;z-index:20;height:96px;background:rgba(245,243,235,.98);padding-inline:5%;gap:24px}.brand-image{width:205px}nav{gap:20px}nav a{min-height:44px;display:flex;align-items:center;border-bottom:2px solid transparent;font-size:13px}nav a[aria-current="location"]{border-color:var(--green);color:#43512e}.button{min-height:48px;gap:12px}.button span{font-size:14px;line-height:1.4;font-weight:600}.button span:last-child:not(:first-child){margin-left:auto}.wa-icon{width:22px;height:22px;flex:none}.button.small{font-size:12px;padding:12px 15px}.button.small span{font-size:12px}.secondary{background:transparent;color:var(--ink);border:1px solid #8c957e}.secondary:hover{background:#e3e8d7}.menu-toggle{display:none}.hero{grid-template-columns:1.12fr .88fr;padding-block:56px;gap:5%}.hero-art{margin:0;padding:0;position:relative;box-shadow:0 12px 35px #252d2110}.hero-art:before{display:none}.hero-art img{width:100%;height:430px;object-fit:cover;object-position:40% center;max-height:none;display:block}.hero-art figcaption{background:var(--ink);color:#edf0e4;padding:24px 27px}.hero-art figcaption>span{font-size:10px;letter-spacing:1.7px;color:#c7d1b1}.hero-art figcaption strong{display:block;font-family:Georgia,serif;font-weight:400;font-size:25px;margin:7px 0}.hero-art figcaption a{display:inline-flex;align-items:center;min-height:44px;font-size:13px;gap:18px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.hero-actions .button{padding:15px 18px}.hero-actions .secondary{font-size:14px}.hero h1{font-size:clamp(56px,5.7vw,86px)}.eyebrow{font-size:11px;letter-spacing:1.6px}.hero-note{font-size:12px}.text-link{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:14px}.section-head>p{font-size:16px}.service-title strong{font-weight:500;font-size:22px}.service-title small{display:block;font-size:14px;margin-top:3px;color:#5e6753}.plus{width:28px;min-width:28px;text-align:center;line-height:1}.plus:before{content:'+'}details[open] .plus{transform:none}details[open] .plus:before{content:'−'}.service-body{margin:0 0 28px 44px}.service-body dl{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin:0 0 22px}.service-body dt{font-size:11px;text-transform:uppercase;letter-spacing:1.2px;font-weight:700;color:#55643a}.service-body dd{margin:7px 0 0;font-size:15px;color:#515d46}.service-cta{font-size:14px}.story-panel{align-self:stretch;display:flex;flex-direction:column;justify-content:center;background:var(--ink);padding:45px;color:var(--cream)}.story-year{font-family:'Libre Caslon Display',Georgia,serif;font-size:52px;line-height:1}.story-year strong{font-size:120px;font-weight:400;color:#bfca94}.about .story-panel p{color:#e4e9d8;font-size:20px;margin:28px 0}.story-panel .text-link{color:#e2e8d4}.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.team-grid article{padding:15px 0}.person-monogram{width:44px;height:44px;display:grid;place-items:center;border:1px solid #adb69b;font-family:Georgia,serif;font-size:18px;color:#55643a;margin-bottom:14px}.team-grid h3{font-size:18px;font-weight:500;line-height:1.5}.team-grid article p{font-size:13px;margin:6px 0}.reviews .section-head{align-items:center}.rating strong{font-size:42px;font-weight:500;display:block;line-height:1.2}.rating strong span{font-size:17px;color:#637052}.stars{color:#5a693c;letter-spacing:3px}.rating p{font-size:14px;margin:8px 0}.rating small{color:#66715a}.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.review-grid figure{margin:0;padding:30px;border:1px solid var(--line)}blockquote{margin:18px 0 22px;font-family:'Libre Caslon Display',Georgia,serif;font-size:34px;line-height:1.2}.review-grid figcaption{font-weight:600;font-size:14px}.review-grid figcaption span{display:block;font-weight:400;font-size:12px;color:#626b5a}.source-note{font-size:12px;color:#5a6450;margin-top:24px;line-height:1.6}.resources{background:#e9edde}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.resource-card{padding:27px;background:var(--cream);border:1px solid #d0d7c0;display:flex;flex-direction:column;transition:border-color .2s,transform .2s}.resource-card:hover{border-color:#67744c;transform:translateY(-3px)}.resource-card h3{font-family:'Libre Caslon Display',Georgia,serif;font-size:32px;line-height:1.15}.resource-card p{font-size:15px;color:#59664c}.resource-card .text-link{margin-top:auto}.faq{display:grid;grid-template-columns:.9fr 1.1fr;gap:6%}.faq>div>p:not(.eyebrow){font-size:15px;margin:28px 0 20px}.faq-list summary{font-size:16px;gap:14px}.faq-list summary strong{font-weight:500}.faq-list details>p{margin:0 34px 24px 0;font-size:15px;color:#515d46}.client-contact{margin-top:35px;padding-top:20px;border-top:1px solid #59634a}.client-contact p{font-size:14px;margin:0}.client-contact .text-link{color:#e7eedb;font-size:14px}.contact-details a{min-height:44px;display:flex;align-items:center;margin-top:0}.contact-details .hours{grid-column:1/-1}.contact-details .hours p{font-size:16px;margin:12px 0}.contact-details .hours .harvest{font-size:13px;color:#d0d7c4}.footer-links{display:flex;gap:22px}.footer-links a{min-height:44px;display:flex;align-items:center;font-size:12px}footer{font-size:12px}.mobile-contact{display:none}button{font:inherit;cursor:pointer}button:focus-visible,.resource-card:focus-visible,input:focus-visible{outline:3px solid #816018;outline-offset:5px}.dialog-close{position:absolute;right:15px;top:12px;width:44px;height:44px;background:transparent;border:0;color:var(--ink);font-size:30px}dialog{color:var(--ink);background:var(--cream);border:1px solid #bdc7ad;padding:44px;max-width:640px;width:calc(100% - 32px);max-height:85dvh;overflow:auto}dialog::backdrop{background:#1d241ab8}dialog h2{font-size:42px;max-width:480px}dialog>p:not(.eyebrow):not(.source-note){font-size:15px}.check-item{display:flex;align-items:flex-start;gap:14px;padding:15px 0;border-bottom:1px solid var(--line);font-size:15px;cursor:pointer}.check-item input{margin-top:4px;accent-color:var(--green);width:20px;height:20px;flex:none}.check-item:has(input:checked){color:#55643a}.guide-progress{font-size:13px;color:#59694a}.guide-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}.document-page{max-width:850px;margin:auto;padding:60px 6% 90px}.document-page h1{font-size:56px;margin-bottom:25px}.document-page h2{font-size:32px;margin-top:35px}.document-page p,.document-page li{font-size:16px}.document-page li{margin:12px 0}.document-page section{scroll-margin-top:110px}.document-page .eyebrow{margin-top:25px}.document-page ul{padding-left:22px}.document-page .button{margin:20px 0}.no-script{font-size:12px;text-align:center;padding:8px;background:#e9edde}
@media(max-width:1150px){header{gap:16px;padding-inline:4%}nav{gap:14px}.brand-image{width:180px}header .button.small span{font-size:11px}header .button.small{padding:10px}.hero h1{font-size:67px}.hero-art img{height:385px}}
@media(max-width:950px){header .button.small{display:none}header{height:84px}.hero h1{font-size:60px}.hero-art img{height:360px}.hero-actions .button{width:100%;justify-content:center}.hero-actions .button span:last-child{margin-left:0}.service-body dl{gap:20px}.story-panel{padding:30px}.story-year strong{font-size:94px}.team-grid{gap:10px}.resource-grid{gap:15px}.resource-card{padding:21px}.resource-card h3{font-size:28px}}
@media(max-width:700px){html{scroll-padding-top:96px}body{padding-bottom:85px}header{height:auto;min-height:78px;flex-wrap:wrap;padding:12px 6%;gap:10px}.brand-image{width:177px}header nav{display:flex;flex-basis:100%;flex-wrap:wrap;gap:0 15px}header nav a{font-size:14px}header nav a:last-child{display:flex}.js-ready .menu-toggle{display:flex;align-items:center;gap:9px;min-height:44px;margin-left:auto;padding:8px 12px;background:transparent;border:1px solid #899578;color:var(--ink);font-size:14px}.js-ready header nav{display:none}.js-ready header nav.is-open{display:flex;position:absolute;top:100%;left:0;width:100%;padding:12px 6% 20px;background:var(--cream);border-bottom:1px solid var(--line);box-shadow:0 12px 15px #252d2110;max-height:65dvh;overflow:auto;flex-direction:column}.js-ready header nav a{padding:8px 5px;min-height:48px}.hero{grid-template-columns:1fr;padding:32px 7% 40px;gap:32px}.hero h1{font-size:clamp(52px,12vw,68px)}.hero .eyebrow{font-size:10px;letter-spacing:1.1px}.hero-art{width:100%;max-width:none;margin:0}.hero-art img{height:auto;aspect-ratio:1.25;object-position:center}.hero-art figcaption{padding:20px}.hero-art figcaption strong{font-size:25px}.hero-actions .button{width:auto}.hero-actions{gap:10px}.hero-actions .button.secondary{width:100%;justify-content:center}.hero-actions .button:first-child{width:100%;justify-content:center;font-size:13px}.service-body{margin-left:0}.service-body dl{grid-template-columns:1fr;gap:18px}.service-title strong{font-size:19px}.service-title small{font-size:13px}.service-cta{width:100%;justify-content:center}summary{gap:14px}.number{font-size:12px}.about{grid-template-columns:1fr;gap:30px}.story-panel{padding:32px}.story-year{font-size:42px}.story-year strong{font-size:98px}.about .story-panel p{font-size:20px}.team-grid{gap:20px}.review-grid{grid-template-columns:1fr}.reviews .section-head{display:block}.rating{margin-top:25px}.review-grid figure{padding:24px}.resource-grid{grid-template-columns:1fr}.resource-card{padding:26px}.resource-card h3{font-size:34px}.faq{grid-template-columns:1fr;gap:30px}.mobile-contact{display:block;position:fixed;bottom:0;left:0;right:0;z-index:25;padding:10px 5% calc(10px + env(safe-area-inset-bottom));background:rgba(245,243,235,.98);border-top:1px solid #cbd2bd}.mobile-contact .button{display:flex;width:100%;justify-content:center;min-height:50px}.mobile-contact .button span:last-child{margin-left:8px}.contact-details{grid-template-columns:1fr 1fr}.contact-details .hours{grid-column:1/-1}dialog{padding:40px 23px 28px}dialog h2{font-size:36px}.guide-actions .button{padding:13px 16px}.footer-links{gap:16px}.document-page h1{font-size:44px}.document-page{padding-top:35px}footer{gap:14px}.source-note{font-size:12px}}
@media(prefers-reduced-motion:reduce){.resource-card{transition:none}.resource-card:hover{transform:none}}
@media print{header,footer,.mobile-contact,.dialog-close,.guide-actions,.skip{display:none!important}body{padding:0;background:white;color:black}.document-page{padding:0;max-width:none}.document-page section{break-inside:avoid}.print-guide> :not(dialog){display:none!important}.print-guide dialog[open]{display:block!important;position:static;max-height:none;width:100%;max-width:none;border:0;overflow:visible;padding:0}.print-guide dialog::backdrop{display:none}.check-item{break-inside:avoid}}

/* Institutional registrations and founder profile. */
.team-grid.founder-profile{grid-template-columns:1fr}.team-grid.founder-profile article{padding-top:10px}.team-grid.founder-profile h3{font-size:21px}.about .team-grid .founder-role{font-size:15px;color:var(--ink);margin:6px 0}.about .team-grid .professional-registration{font-size:13px;margin-top:10px;color:#59634f}.office-registration{margin-top:10px;line-height:1.6}footer .office-registration{font-size:12px;color:#d6ddca}.footer-institutional{font-size:12px;line-height:1.7}.footer-institutional p{margin:0}.footer-institutional .trademark-record{margin-top:8px;color:#b8c1aa}footer{flex-wrap:wrap}.footer-links{flex-wrap:wrap}@media(max-width:600px){.footer-institutional{width:100%;order:3}.team-grid.founder-profile h3{font-size:20px}}

.team-grid.founder-profile article + article{margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}
/* A quiet weather strip keeps the existing header navigation clear. */
.weather-bar{display:flex;justify-content:flex-end;padding:6px 5%;border-bottom:1px solid var(--line);min-height:60px}.weather-widget{position:relative;border:0;max-width:100%}.weather-widget summary{padding:2px 0;gap:10px;min-height:46px}.weather-icon{font-size:26px;line-height:1;width:32px;text-align:center}.weather-copy{display:flex;flex-direction:column;line-height:1.4;min-width:0}.weather-temperature{font-size:14px;font-weight:500}.weather-condition{font-size:11px;color:#59634f}.weather-chevron{font-size:15px;color:#667346;margin-left:4px}.weather-info{position:absolute;right:0;top:100%;z-index:21;width:300px;max-width:84vw;padding:18px;background:var(--cream);border:1px solid var(--line);box-shadow:0 8px 24px #252d2115;font-size:12px;line-height:1.5}.weather-info p{margin:0 0 10px}.weather-info a{display:block;text-decoration:underline;text-underline-offset:3px;padding:5px 0}.weather-info a:last-child{font-size:11px;color:#59634f}@media(max-width:700px){.weather-bar{padding:4px 6%;min-height:56px}.weather-icon{font-size:24px}.weather-condition{font-size:11px}.weather-temperature{font-size:14px}}@media(max-width:360px){.brand-image{width:145px}.contact-details{grid-template-columns:1fr}.contact-details>div,.contact-details .hours{grid-column:1}.hero-actions .button{padding-inline:12px}.hero-actions .button span{font-size:13px}}@media print{.weather-bar{display:none}}
.about>div{min-width:0}@media(max-width:360px){h2{font-size:36px}.story-panel{padding:24px}.about .story-panel p{font-size:18px}.document-page h1{font-size:38px;overflow-wrap:break-word}}
/* FAQ answers: justified on larger screens, left aligned on phones. */
.faq-list summary,.faq-list details>p{text-align:left}@media(min-width:701px){.faq-list details>p{text-align:justify;hyphens:auto}}
/* Service explanations follow the FAQ reading alignment. */
.services .section-head>p,.services .service-body dd{text-align:left}@media(min-width:701px){.services .section-head>p,.services .service-body dd{text-align:justify;hyphens:auto}}
/* Longer editorial paragraphs share a consistent desktop alignment. */
.hero-copy>.intro,.section-head>p,.about>div:not(.story-panel)>p:not(.eyebrow),.steps article>p,.resource-card>p{text-align:left}@media(min-width:701px){.hero-copy>.intro,.section-head>p,.about>div:not(.story-panel)>p:not(.eyebrow),.steps article>p,.resource-card>p{text-align:justify;hyphens:auto}}
