:root{--accent: #4a6b58;--accent-soft: #f0ebe3;--bg: #faf6f0;--bg-subtle: #f3ede4;--bg-warm: #fdf9f3;--bg-cream: #faf6f0;--bg-cream-deep: #f0e9df;--border: #e5ddd2;--text: #2c2a26;--text-muted: #7a746c;--max-width: 1080px;--header-height: 6.25rem;--brand-logo-size: 4rem;--header-max-width: 1320px;--radius: 8px;--font: "DM Sans", system-ui, -apple-system, sans-serif}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font);color:var(--text);background:var(--bg);line-height:1.65;font-size:16px;-webkit-font-smoothing:antialiased}.app{min-height:100vh}.site-header{position:fixed;top:0;left:0;right:0;z-index:100;height:var(--header-height);background:#fdf9f3f0;border-bottom:1px solid rgba(229,221,210,.7);overflow:visible}.header-inner{max-width:var(--header-max-width);width:100%;height:100%;margin:0 auto;padding:0 2rem 0 1.15rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.header-start{display:flex;align-items:center;gap:clamp(.85rem,2vw,1.35rem);flex:0 1 auto;min-width:0}.brand{display:flex;align-items:center;gap:.85rem;flex:0 1 auto;min-width:0;max-width:none;text-decoration:none}.brand-logo-slot{flex-shrink:0;width:var(--brand-logo-size);height:var(--brand-logo-size);display:flex;align-items:center;justify-content:center}.brand-logo{width:100%;height:100%;object-fit:contain;display:block}.brand-name{font-size:clamp(1.2rem,2.6vw,1.875rem);font-weight:600;letter-spacing:-.035em;line-height:1.05;color:var(--text);white-space:nowrap}.nav{display:flex;align-items:center;gap:2rem;flex:1;justify-content:flex-end;min-width:0}.header-refills-btn{display:inline-flex;align-items:center;justify-content:center;padding:.62rem 1.05rem;border-radius:999px;background:var(--text);color:#fff;font-size:clamp(.72rem,1.15vw,.84rem);font-weight:700;letter-spacing:-.01em;line-height:1.2;text-decoration:none;white-space:nowrap;transition:background .15s,transform .15s}.header-refills-btn:hover,.header-refills-btn.active{background:var(--accent)}.header-refills-btn--menu{display:none}.nav-links{display:flex;align-items:center;gap:1.75rem}.nav-link{position:relative;color:var(--text-muted);text-decoration:none;font-size:1rem;font-weight:500;padding:.35rem 0;transition:color .15s}.nav-link:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--accent);border-radius:1px;transform:scaleX(0);transition:transform .2s ease}.nav-link:hover,.nav-link.active{color:var(--text)}.nav-link.active:after{transform:scaleX(1)}.nav-dropdown{position:relative}.nav-link--dropdown:after{display:none}.nav-dropdown-menu{position:absolute;top:100%;left:50%;z-index:110;min-width:14.5rem;padding:.45rem;border:1px solid rgba(229,221,210,.9);border-radius:12px;background:#fdf9f3fa;box-shadow:0 10px 28px #2c2a2614;opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%);transition:opacity .15s ease,visibility .15s ease}.nav-dropdown-menu:before{content:"";position:absolute;bottom:100%;left:0;right:0;height:.5rem}.nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown:focus-within .nav-dropdown-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%)}.nav-dropdown-item{display:block;padding:.55rem .85rem;border-radius:8px;color:var(--text-muted);font-size:.92rem;font-weight:500;text-decoration:none;white-space:nowrap;transition:color .15s,background .15s}.nav-dropdown-item:hover{color:var(--text);background:var(--accent-soft)}.header-phone{display:inline-flex;align-items:center;padding:.65rem 1.15rem;border-radius:999px;background:var(--accent);color:#fff!important;font-size:.95rem;font-weight:500;text-decoration:none;white-space:nowrap;transition:background .15s}.header-phone:hover{background:#245a42}.menu-toggle{display:none;flex-direction:column;justify-content:center;gap:6px;width:2.75rem;height:2.75rem;background:none;border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;padding:0}.menu-toggle span{display:block;width:18px;height:2px;margin:0 auto;background:var(--text);border-radius:1px}.hero-section{position:relative;min-height:88vh;display:flex;align-items:flex-end;padding:calc(var(--header-height) + 3rem) 1.5rem 4rem;overflow:hidden}.hero-image{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center}.hero-image--storefront{background-position:center 40%}.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,#0000008c,#00000026,#00000014)}.hero-content{position:relative;z-index:1;max-width:var(--max-width);width:100%;margin:0 auto;color:#fff}.hero-title{margin:0;font-size:clamp(2.25rem,5vw,3.25rem);font-weight:600;letter-spacing:-.03em;line-height:1.1}.hero-slogan{margin:1rem 0 0;max-width:480px;font-size:1.05rem;font-weight:400;color:#ffffffe0;line-height:1.55}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.7rem 1.25rem;border-radius:var(--radius);font-family:var(--font);font-size:.875rem;font-weight:500;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:background .15s,border-color .15s}.btn-primary{background:#fff;color:var(--text)}.btn-primary:hover{background:var(--bg-subtle)}.btn-secondary{background:transparent;color:#fff;border-color:#ffffff73}.btn-secondary:hover{border-color:#fffc}.btn-text{background:none;border:none;padding:0;color:var(--accent);font-family:var(--font);font-size:.875rem;font-weight:500;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.btn-text:hover{color:var(--text)}.section-inner{max-width:var(--max-width);margin:0 auto;padding:5.5rem 1.5rem}.section-label{display:block;margin-bottom:.75rem;font-size:.75rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.section-title{margin:0;font-size:clamp(1.5rem,3vw,1.875rem);font-weight:600;letter-spacing:-.02em;line-height:1.25;color:var(--text)}.section-lead{margin:1rem 0 0;font-size:1rem;color:var(--text-muted);max-width:520px;line-height:1.65}.services-section{border-bottom:1px solid var(--border)}.services-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:4rem;align-items:center}.feature-list{margin:2rem 0 0;padding:0;list-style:none}.feature-list li{padding:.85rem 0;font-size:.95rem;color:var(--text-muted);border-top:1px solid var(--border)}.feature-list li:last-child{border-bottom:1px solid var(--border)}.feature-image{width:100%;aspect-ratio:5 / 4;object-fit:cover;border-radius:var(--radius);display:block}.community-section{background:var(--bg-subtle)}.community-layout{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start}.map-container{border-radius:var(--radius);overflow:hidden;border:1px solid var(--border);background:var(--bg)}.map-container iframe{display:block}.about-section{border-bottom:1px solid var(--border)}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.about-image{width:100%;aspect-ratio:4 / 5;object-fit:cover;border-radius:var(--radius);display:block}.about-points{margin:2rem 0;padding:0;list-style:none}.about-points li{padding:.5rem 0;font-size:.95rem;color:var(--text-muted)}.news-section{background:var(--bg-subtle)}.news-header{margin-bottom:2.5rem}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.news-card{padding:1.75rem;background:var(--bg);cursor:pointer;transition:background .15s}.news-card:hover{background:var(--accent-soft)}.news-card-date{margin:0 0 .5rem;font-size:.75rem;color:var(--text-muted)}.news-card-title{margin:0 0 .5rem;font-size:.95rem;font-weight:600;line-height:1.4;color:var(--text)}.news-card-text{margin:0;font-size:.875rem;color:var(--text-muted);line-height:1.5}.faq-inner{max-width:640px}.faq-header{margin-bottom:2.5rem}.faq-item{padding:1.25rem 0;border-bottom:1px solid var(--border)}.faq-item:first-child{border-top:1px solid var(--border)}.faq-question{margin:0 0 .4rem;font-size:.95rem;font-weight:600;color:var(--text)}.faq-answer{margin:0;font-size:.9rem;color:var(--text-muted)}.contact-section{border-top:1px solid var(--border)}.contact-inner{text-align:center;padding-top:4.5rem;padding-bottom:4.5rem}.contact-details{margin:1rem 0 2rem;font-size:.95rem;color:var(--text-muted)}.contact-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}.about-section .btn-primary,.contact-section .btn-primary,.contact-info-block .btn-primary{background:var(--accent);color:#fff}.about-section .btn-primary:hover,.contact-section .btn-primary:hover{background:#245a42}.contact-section .btn-secondary{color:var(--text);border-color:var(--border)}.contact-section .btn-secondary:hover{border-color:var(--text-muted)}.site-footer{border-top:1px solid rgba(229,221,210,.7);padding:2.5rem 1.5rem;background:var(--bg-warm)}.footer-inner{max-width:var(--max-width);margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:1rem;text-align:center}.footer-brand{margin:0;font-weight:600;font-size:.9rem;color:var(--text)}.footer-nav{display:flex;gap:1.5rem}.footer-nav a{font-size:.85rem;color:var(--text-muted);text-decoration:none}.footer-nav a:hover{color:var(--text)}.footer-nav-refills{font-weight:700;color:var(--text)}.footer-copy{margin:0;font-size:.8rem;color:var(--text-muted)}.home-flow{background:var(--bg-cream);overflow-x:clip}.home-flow-lead{margin:0 auto;padding:clamp(4.5rem,9vw,7rem) clamp(1.5rem,4vw,2rem) clamp(4rem,8vw,6rem);max-width:32rem;text-align:center;font-size:clamp(1.05rem,2vw,1.15rem);font-weight:400;color:var(--text-muted);line-height:1.9;letter-spacing:.01em}.home-panel{padding:clamp(2rem,5vw,3.5rem) 0}.home-panel-inner{display:flex;align-items:center;gap:clamp(2rem,5vw,4rem);min-height:clamp(320px,38vw,480px)}.home-panel--reverse .home-panel-inner{flex-direction:row-reverse}.home-panel-media{flex:0 0 min(58vw,680px);height:clamp(280px,36vw,460px);overflow:hidden}.home-panel:not(.home-panel--reverse) .home-panel-media{margin-left:calc(50% - 50vw);border-radius:0 999px 999px 0}.home-panel--reverse .home-panel-media{margin-right:calc(50% - 50vw);border-radius:999px 0 0 999px}.home-panel-image{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.home-panel-content{flex:1;min-width:0;max-width:26rem;padding:0 clamp(1.5rem,4vw,3rem) 0 clamp(1rem,3vw,2rem)}.home-panel--reverse .home-panel-content{margin-left:auto;padding:0 clamp(1rem,3vw,2rem) 0 clamp(1.5rem,4vw,3rem)}.home-flow-label{display:block;margin-bottom:.85rem;font-size:.72rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);opacity:.65}.home-flow-title{margin:0 0 1rem;font-size:clamp(1.5rem,3vw,1.95rem);font-weight:500;letter-spacing:-.03em;line-height:1.18;color:var(--text)}.home-flow-text{margin:0;font-size:.98rem;color:var(--text-muted);line-height:1.85}.home-flow-link{display:inline-flex;align-items:center;gap:.45rem;margin-top:1.75rem;font-size:.88rem;font-weight:500;letter-spacing:.02em;color:var(--accent);text-decoration:none;transition:gap .2s,opacity .2s}.home-flow-link span{transition:transform .2s}.home-flow-link:hover span{transform:translate(4px)}.home-location{padding:clamp(2.5rem,5vw,4rem) clamp(1rem,3vw,2rem) clamp(4rem,9vw,7rem);border-top:1px solid rgba(229,221,210,.6)}.home-location-card{display:flex;align-items:stretch;max-width:min(1220px,96vw);margin:0 auto;background:var(--bg-warm);border:1px solid rgba(229,221,210,.75);border-radius:2rem;overflow:hidden}.home-location-copy{flex:0 0 min(44%,22rem);display:flex;flex-direction:column;justify-content:center;padding:clamp(2rem,4vw,3rem) clamp(1.75rem,3.5vw,2.75rem)}.home-location-copy .home-flow-title{margin-bottom:.65rem}.home-location-copy .home-flow-link{margin-top:1.5rem}.home-location-map{flex:1;min-width:0;min-height:clamp(240px,28vw,360px);background:var(--bg-cream-deep)}.home-location-map iframe{display:block;width:100%;height:100%;min-height:clamp(240px,28vw,360px);filter:saturate(.88) sepia(.08)}.walkthrough-page{background:var(--bg-cream)}.walkthrough-intro{padding:calc(var(--header-height) + clamp(3.5rem,8vw,5.5rem)) clamp(1.5rem,4vw,2rem) clamp(2.5rem,5vw,3.5rem);max-width:34rem;margin:0 auto;text-align:center}.walkthrough-heading{margin:0 0 1.15rem;font-size:clamp(2.1rem,5.5vw,3.35rem);font-weight:500;letter-spacing:-.04em;line-height:1.06;color:var(--text)}.walkthrough-lead{margin:0;font-size:clamp(1rem,2vw,1.08rem);color:var(--text-muted);line-height:1.85}.walkthrough-stops{padding-bottom:clamp(2rem,4vw,3rem)}.walkthrough-step{display:block;margin-bottom:.35rem;font-size:clamp(2.75rem,6vw,4rem);font-weight:300;letter-spacing:-.05em;line-height:1;color:var(--text);opacity:.1}.walkthrough-outro{border-top:1px solid rgba(229,221,210,.6);background:var(--bg-warm)}.walkthrough-outro-inner{max-width:28rem;margin:0 auto;padding:clamp(4rem,8vw,6rem) clamp(1.5rem,4vw,2rem);text-align:center}.walkthrough-outro-inner .home-flow-title{margin-bottom:.85rem}.walkthrough-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.85rem;margin-top:2rem}.walkthrough-actions .btn-primary{background:var(--accent);color:#fff}.walkthrough-actions .btn-primary:hover{background:#3d5a49}.walkthrough-actions .btn-secondary{color:var(--text);border-color:var(--border)}.walkthrough-actions .btn-secondary:hover{border-color:var(--text-muted)}.rx-page-inner{max-width:720px}.rx-form{display:flex;flex-direction:column;gap:2.5rem}.rx-form-section{padding-bottom:2.5rem;border-bottom:1px solid var(--border)}.rx-form-section:last-of-type{border-bottom:none;padding-bottom:0}.rx-form-heading{margin:.25rem 0 .5rem;font-size:1.2rem;font-weight:600}.rx-form-hint{margin:0 0 1.25rem;font-size:.9rem;color:var(--text-muted);line-height:1.55}.rx-photo-area{margin-top:.5rem}.rx-photo-upload{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;min-height:220px;padding:2rem 1.5rem;border:2px dashed var(--border);border-radius:var(--radius);background:var(--bg-subtle);cursor:pointer;text-align:center;transition:border-color .15s,background .15s}.rx-photo-upload:hover{border-color:var(--accent);background:var(--accent-soft)}.rx-photo-input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}.rx-photo-icon{width:3rem;height:3rem;border-radius:50%;background:var(--accent-soft);border:2px solid var(--accent);position:relative}.rx-photo-icon:before{content:"";position:absolute;top:50%;left:50%;width:1.1rem;height:.85rem;border:2px solid var(--accent);border-radius:3px;transform:translate(-50%,-45%)}.rx-photo-icon:after{content:"";position:absolute;top:.55rem;left:50%;width:.45rem;height:.45rem;border-radius:50%;background:var(--accent);transform:translate(-50%)}.rx-photo-label{font-size:1rem;font-weight:600;color:var(--text)}.rx-photo-sublabel{font-size:.8rem;color:var(--text-muted)}.rx-photo-preview-wrap{display:flex;flex-direction:column;gap:.75rem}.rx-photo-preview{width:100%;max-height:420px;object-fit:contain;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-subtle)}.rx-photo-clear{align-self:flex-start}.rx-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.25rem}.rx-field{display:flex;flex-direction:column;gap:.4rem;font-size:.875rem;font-weight:500;color:var(--text)}.rx-field--full{grid-column:1 / -1}.rx-field input,.rx-field textarea{font-family:var(--font);font-size:1rem;font-weight:400;padding:.7rem .85rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text);transition:border-color .15s}.rx-field input:focus,.rx-field textarea:focus{outline:none;border-color:var(--accent)}.rx-field textarea{resize:vertical;min-height:100px}.rx-fieldset{margin:1.25rem 0 0;padding:0;border:none}.rx-fieldset legend{padding:0;margin-bottom:.65rem;font-size:.875rem;font-weight:500}.rx-radio-group{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem}.rx-radio{display:flex;align-items:center;gap:.45rem;font-size:.9rem;font-weight:400;color:var(--text-muted);cursor:pointer}.rx-radio input{accent-color:var(--accent)}.rx-form-error{margin:0;padding:.85rem 1rem;font-size:.9rem;color:#9b2c2c;background:#fdf2f2;border:1px solid #f5c6c6;border-radius:var(--radius)}.rx-submit-btn{width:100%;padding:.95rem 1.25rem;font-size:1rem;background:var(--accent);color:#fff;border:none;cursor:pointer}.rx-submit-btn:hover:not(:disabled){background:#245a42}.rx-submit-btn:disabled{opacity:.65;cursor:not-allowed}.rx-form-disclaimer{margin:0;font-size:.8rem;color:var(--text-muted);text-align:center;line-height:1.5}.rx-form-success{padding:2rem;text-align:center;background:var(--accent-soft);border:1px solid var(--border);border-radius:var(--radius)}.rx-form-success .prose{margin-bottom:1.5rem}.refill-call-card--inline{max-width:520px;margin:0 auto;text-align:center;padding:2rem;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius)}.refill-call-card--inline .refill-phone-link{margin:1rem auto 0}.refill-layout{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start}.refill-call-card{padding:2rem;background:var(--accent-soft);border:1px solid var(--border);border-radius:var(--radius)}.refill-phone-link{display:block;margin:1.5rem 0 1.25rem;font-size:clamp(1.5rem,4vw,2rem);font-weight:600;letter-spacing:-.02em;color:var(--accent);text-decoration:none}.refill-phone-link:hover{color:var(--text)}.refill-call-btn{background:var(--accent);color:#fff}.refill-call-btn:hover{background:#245a42}.refill-steps-title{margin:0 0 1.5rem;font-size:1rem;font-weight:600}.refill-step-list{margin:0;padding:0;list-style:none}.refill-step{display:flex;gap:1rem;padding:1.25rem 0;border-bottom:1px solid var(--border)}.refill-step:first-child{border-top:1px solid var(--border)}.refill-step-num{flex-shrink:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--accent);color:#fff;font-size:.85rem;font-weight:600}.refill-step-title{margin:0 0 .35rem;font-size:.95rem;font-weight:600}.refill-step-text{margin:0;font-size:.9rem;color:var(--text-muted);line-height:1.55}.refill-checklist{margin:1.5rem 0;padding:0;list-style:none}.refill-checklist li{padding:.6rem 0 .6rem 1.5rem;position:relative;font-size:.95rem;color:var(--text-muted);border-bottom:1px solid var(--border)}.refill-checklist li:before{content:"•";position:absolute;left:0;color:var(--accent);font-weight:700}.page-hero{position:relative;min-height:42vh;display:flex;align-items:flex-end;padding:calc(var(--header-height) + 2.5rem) 1.5rem 3rem;overflow:hidden}.page-hero--large{min-height:clamp(52vh,68vh,78vh);align-items:center;padding:calc(var(--header-height) + 2rem) 1.5rem 4rem}.page-hero--large .page-hero-overlay{background:linear-gradient(to top,#0000009e,#00000047 45%,#0000001f)}.page-hero--large .page-hero-title{font-size:clamp(2rem,5vw,3.1rem)}.page-hero--large .page-hero-subtitle{font-size:clamp(1rem,2vw,1.12rem);max-width:34rem}.page-hero-image{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center;background-color:var(--bg-cream-deep)}.page-hero-image--empty{display:flex;align-items:center;justify-content:center;background:var(--bg-cream-deep)}.page-hero-upload-hint{margin:0;padding:0 1.5rem;max-width:22rem;text-align:center;font-size:.9rem;color:var(--text-muted);line-height:1.6}.page-hero--empty .page-hero-overlay{background:none}.page-hero--empty .page-hero-content{color:var(--text)}.page-hero--empty .section-label.light{color:var(--accent);opacity:.65}.page-hero--empty .page-hero-subtitle{color:var(--text-muted)}.page-hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,#0009,#0003)}.page-hero-content{position:relative;z-index:1;max-width:var(--max-width);width:100%;margin:0 auto;color:#fff}.section-label.light{color:#ffffffbf}.page-hero-title{margin:0;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:600;letter-spacing:-.02em}.page-hero-subtitle{margin:.75rem 0 0;max-width:480px;font-size:1rem;color:#ffffffe0}.about-story{max-width:40rem}.about-story .section-title{margin-bottom:1.25rem}.about-team{background:var(--bg-cream);border-top:1px solid var(--border);border-bottom:1px solid var(--border);overflow-x:clip}.about-team-intro{padding-top:clamp(3.5rem,7vw,5rem);padding-bottom:clamp(2rem,4vw,2.75rem);max-width:36rem}.about-team-photo{width:100%;min-height:clamp(320px,45vw,560px);margin-bottom:clamp(3.5rem,7vw,5rem)}.about-team-image{display:block;width:100%;height:clamp(320px,45vw,560px);object-fit:cover;object-position:center top}.about-team-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:clamp(320px,45vw,560px);padding:2rem;text-align:center;background:var(--bg-cream-deep);border-top:1px dashed rgba(229,221,210,.9);border-bottom:1px dashed rgba(229,221,210,.9)}.about-team-placeholder-title{margin:0 0 .5rem;font-size:1rem;font-weight:600;color:var(--text)}.about-team-placeholder-text{margin:0;font-size:.9rem;color:var(--text-muted);line-height:1.6}.about-team-placeholder-text strong{font-weight:500;color:var(--text)}.page-content{border-bottom:1px solid var(--border)}.page-content.subtle{background:var(--bg-subtle)}.page-content .section-inner{padding-top:4.5rem;padding-bottom:4.5rem}.split-layout{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.content-image{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:var(--radius);display:block}.prose{margin:0 0 1rem;font-size:.95rem;color:var(--text-muted);line-height:1.7}.prose:last-child{margin-bottom:0}.page-lead{margin:0 auto 3.5rem;max-width:600px;text-align:center;font-size:1.05rem;color:var(--text-muted);line-height:1.65}.page-lead.centered{text-align:center}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:2rem}.value-card{padding-top:1.5rem;border-top:2px solid var(--accent)}.value-title{margin:0 0 .5rem;font-size:1rem;font-weight:600}.value-text{margin:0;font-size:.9rem;color:var(--text-muted);line-height:1.6}.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:2rem}.gallery-item{margin:0}.gallery-image{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:var(--radius);display:block}.gallery-caption{margin-top:.6rem;font-size:.85rem;color:var(--text-muted)}.service-list{display:flex;flex-direction:column;gap:4rem}.service-row{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;scroll-margin-top:calc(var(--header-height) + 1rem)}.service-row.reversed .service-image{order:2}.service-row.reversed .service-copy{order:1}.service-image{width:100%;aspect-ratio:5 / 4;object-fit:cover;border-radius:var(--radius);display:block}.service-title{margin:0 0 .75rem;font-size:1.15rem;font-weight:600}.services-cta-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.85rem;margin-top:.5rem}.services-cta-actions .btn-primary{background:var(--accent);color:#fff}.services-cta-actions .btn-primary:hover{background:#3d5a49}.services-cta-actions .btn-secondary{color:var(--text);border-color:var(--border)}.services-cta-actions .btn-secondary:hover{border-color:var(--text-muted)}.page-cta{background:var(--accent-soft)}.page-cta-inner{text-align:center;padding-top:4rem;padding-bottom:4rem}.page-cta .section-lead{margin-left:auto;margin-right:auto}.page-cta .btn-primary,.contact-info-block .btn-primary{background:var(--accent);color:#fff}.page-cta .btn-primary:hover,.contact-info-block .btn-primary:hover{background:#245a42}.contact-info-block .btn-secondary{color:var(--text);border-color:var(--border)}.contact-info-block .btn-secondary:hover{border-color:var(--text-muted)}.contact-page-layout{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start}.info-list{margin:1.5rem 0 2rem}.info-item{padding:1rem 0;border-bottom:1px solid var(--border)}.info-item:first-child{border-top:1px solid var(--border)}.info-label{display:block;font-size:.75rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin-bottom:.25rem}.info-item p{margin:0;font-size:.95rem;color:var(--text-muted)}.info-item a{color:var(--text);text-decoration:none}.info-item a:hover{color:var(--accent)}.contact-subheading{margin:0 0 1rem;font-size:1rem;font-weight:600}.hours-table{width:100%;border-collapse:collapse;font-size:.9rem}.hours-table th,.hours-table td{padding:.65rem 0;text-align:left;border-bottom:1px solid var(--border);font-weight:400}.hours-table th{color:var(--text);width:45%}.hours-table td{color:var(--text-muted)}.contact-after-hours{margin:1.25rem 0 0;font-size:.9rem;color:var(--text-muted);line-height:1.6}.contact-after-hours a{color:var(--accent);font-weight:500;text-decoration:none}.contact-after-hours a:hover{text-decoration:underline}.map-note{margin:.75rem 0 0;font-size:.85rem;color:var(--text-muted)}.contact-info-block .contact-actions{justify-content:flex-start}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#0006;display:flex;align-items:center;justify-content:center;padding:1.5rem}.modal-content{position:relative;background:var(--bg);border-radius:var(--radius);max-width:520px;max-height:85vh;overflow-y:auto;padding:2rem;border:1px solid var(--border)}.modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:1.5rem;line-height:1;color:var(--text-muted);cursor:pointer}.modal-date{margin:0 0 .5rem;font-size:.75rem;color:var(--text-muted)}.modal-title{margin:0 0 1.25rem;font-size:1.25rem;font-weight:600;letter-spacing:-.02em;line-height:1.3}.modal-paragraph{margin:0 0 1rem;font-size:.9rem;color:var(--text-muted)}.modal-link{display:inline-block;margin-top:.5rem;font-size:.875rem;color:var(--accent);font-weight:500}@media(max-width:900px){.home-panel-inner,.home-panel--reverse .home-panel-inner{flex-direction:column;min-height:unset;gap:2rem}.home-panel-media,.home-panel:not(.home-panel--reverse) .home-panel-media,.home-panel--reverse .home-panel-media{flex:none;width:100%;max-width:none;margin-left:0;margin-right:0;border-radius:0 0 2.5rem 2.5rem;height:clamp(240px,55vw,340px)}.home-panel--reverse .home-panel-media{border-radius:0 0 2.5rem 2.5rem}.home-panel-content,.home-panel--reverse .home-panel-content{max-width:none;margin:0;padding:0 1.5rem 1rem}.home-location-card{flex-direction:column}.home-location-copy{flex:none;width:100%}.home-location-map,.home-location-map iframe{min-height:clamp(220px,50vw,300px)}.refill-layout,.rx-form-grid,.values-grid,.split-layout,.gallery-grid,.service-row,.contact-page-layout{grid-template-columns:1fr;gap:2.5rem}.service-row.reversed .service-image,.service-row.reversed .service-copy{order:unset}.rx-form-grid{grid-template-columns:1fr}}@media(max-width:900px){.nav-links{gap:1.25rem}.nav-link{font-size:.9rem}.header-phone{padding:.55rem .9rem;font-size:.85rem}}@media(max-width:768px){:root{--header-height: 5rem;--brand-logo-size: 3rem}.header-inner{padding:0 1.25rem;gap:1rem}.brand{gap:.75rem;min-width:0;max-width:none;flex:1}.brand-name{font-size:clamp(1rem,4.2vw,1.35rem);overflow:hidden;text-overflow:ellipsis}.menu-toggle{display:flex}.nav{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:1.25rem;background:var(--bg);padding:1.5rem 1.25rem 1.75rem;border-bottom:1px solid var(--border);display:none}.nav-open{display:flex}.nav-links{flex-direction:column;align-items:stretch;gap:.25rem}.nav-link{font-size:1.05rem;padding:.65rem 0}.header-start .header-refills-btn{display:none}.header-refills-btn--menu{display:flex;width:100%;justify-content:center;white-space:normal;text-align:center;padding:.75rem 1rem;font-size:.92rem}.nav-dropdown-menu{position:static;min-width:0;margin:.15rem 0 .35rem .75rem;padding:.25rem 0 .5rem;border:none;border-left:2px solid var(--border);border-radius:0;background:transparent;box-shadow:none;opacity:1;visibility:visible;pointer-events:auto;transform:none}.nav-dropdown-item{padding:.45rem .85rem;font-size:.95rem}.header-phone{justify-content:center;width:100%}.hero-section{min-height:80vh;align-items:flex-end}.section-inner{padding:4rem 1.25rem}}
