:root{--color-background: #858585;--color-surface: #ffffff;--color-surface-alt: #ffffff;--color-surface-muted: #9e9e9e;--color-surface-border: rgba(0, 0, 0, .1);--color-text: #1a1c1c;--color-text-muted: #3d3d3d;--color-text-soft: #333333;--color-primary: #72c200;--color-primary-soft: #96e000;--color-primary-tint: #bef264;--color-primary-contrast: #ffffff;--color-accent: #904661;--color-success: #4a7a00;--color-error: #ba1a1a;--shadow-soft: 0 18px 40px rgba(26, 28, 28, .08);--shadow-card: 0 10px 30px rgba(26, 28, 28, .08);--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--container-width: 1120px;--container-gutter: clamp(1.25rem, 3vw, 2rem);--font-headline: "Manrope", sans-serif;--font-body: "Inter", sans-serif;--font-label: "Work Sans", sans-serif;--font-signature: "La Belle Aurore", cursive}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--color-background);color:var(--color-text);font-family:var(--font-body);line-height:1.5}body.menu-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}main{display:block}.container{width:min(var(--container-width),100%);margin:0 auto;padding-inline:var(--container-gutter)}.section{padding:3rem 0}.section--muted{background:var(--color-surface-alt)}.section-heading{max-width:40rem}.section-heading--centered{margin:0 auto 2.5rem;text-align:center}.section-heading__eyebrow{display:inline-block;margin-bottom:.75rem;color:var(--color-primary);font-family:var(--font-label);font-size:.88rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase}.section-heading__title{margin:0;font-family:var(--font-headline);font-size:clamp(2rem,4vw,3rem);line-height:1.05;letter-spacing:-.04em}.section-heading__body{margin:1rem 0 0;color:var(--color-text-muted);font-size:1rem;max-width:38rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:1px solid transparent;border-radius:var(--radius-md);padding:.9rem 1.35rem;font-weight:800;text-align:center;transition:transform .16s ease,background-color .16s ease,color .16s ease,border-color .16s ease,box-shadow .16s ease}.button:hover{transform:translateY(-1px)}.button:focus-visible,.site-header__toggle:focus-visible,.social-button:focus-visible,.site-header__link:focus-visible,.site-header__mobile-link:focus-visible,.site-footer__list a:focus-visible,.social-pill:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(114,194,0,.4);outline-offset:2px}.button--primary{background:var(--color-primary);color:var(--color-primary-contrast);box-shadow:var(--shadow-card)}.button--primary:hover{background:#5aab00}.button--secondary{background:#ffffffd6;border-color:var(--color-primary);color:var(--color-primary)}.button--secondary:hover{background:var(--color-surface-alt)}.button--small{padding:.75rem 1.1rem;font-size:.95rem}.button--full-width{width:100%}.button__icon,.material-symbols-outlined{font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-header{position:sticky;top:0;z-index:30;backdrop-filter:blur(16px);background:#858585f0;border-bottom:1px solid rgba(0,0,0,.1)}.site-header__nav{width:100%}.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:4.75rem}.site-header__left{display:inline-flex;align-items:center;gap:1rem}.site-header__brand{display:inline-flex;align-items:center}.site-header__logo{height:4.5rem;width:auto}.site-header__toggle{display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:var(--color-primary);padding:.35rem}.site-header__desktop{display:none;align-items:center;gap:1.5rem}.site-header__link{color:var(--color-text-soft);font-family:var(--font-label);font-size:.66rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;padding-bottom:.25rem;transition:color .16s ease}.site-header__link:hover,.site-header__link--active{color:var(--color-primary)}.site-header__link--active{border-bottom:2px solid var(--color-primary)}.site-header__social{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;transition:transform .16s ease}.site-header__social svg{width:1.85rem;height:1.85rem}.site-header__social:hover{transform:translateY(-1px) scale(1.05)}.site-header__mobile{border-top:1px solid rgba(0,0,0,.1);background:#fffffffa}.site-header__mobile-inner{display:grid;gap:.85rem;padding:1rem 0 1.3rem}.site-header__mobile-link{font-weight:700;color:var(--color-text-muted)}.hero{position:relative;aspect-ratio:21 / 9;overflow:clip}.hero__media{position:absolute;inset:0}.hero__image{width:100%;height:100%;object-fit:cover;object-position:center 25%}.split-layout{display:grid;gap:2.5rem;align-items:center}.about-media{position:relative}.about-media__image,.map-card__image{width:100%;border-radius:var(--radius-md);object-fit:cover;box-shadow:var(--shadow-card)}.about-media__image{aspect-ratio:4 / 3}.about-media__badge{position:absolute;right:1rem;bottom:1rem;display:inline-flex;flex-direction:column;gap:.2rem;padding:1rem;border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-primary-contrast);box-shadow:var(--shadow-card)}.about-media__badge strong{font-family:var(--font-headline);font-size:2rem;line-height:1}.about-media__badge span{font-family:var(--font-label);font-size:.58rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.prose-copy p{margin:0 0 1rem;color:var(--color-text-muted);font-size:1rem}.credential-list{display:flex;flex-wrap:wrap;gap:1.5rem;margin:2rem 0 0}.credential-list__item dt{margin-bottom:.2rem;color:var(--color-text-muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.12em}.credential-list__item dd{margin:0;font-family:var(--font-headline);font-size:1.3rem;font-weight:800}.services-grid{display:grid;gap:1rem}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card,.testimonial-card{background:var(--color-surface);border:1px solid var(--color-surface-border);border-radius:var(--radius-md);box-shadow:var(--shadow-soft)}.service-card{display:flex;align-items:center;gap:.9rem;padding:1rem;transition:transform .16s ease,border-color .16s ease}.service-card:hover{transform:translateY(-2px);border-color:#72c20059}.service-card__icon{color:var(--color-primary);font-size:1.35rem}.service-card__title{margin:0;font-family:var(--font-headline);font-size:.9rem}.split-layout--map{align-items:center}.area-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem 1rem;list-style:none;padding:0;margin:2rem 0 0}.area-list__item{display:flex;align-items:center;gap:.6rem;font-weight:500}.area-list__item:last-child{grid-column:1 / -1}.area-list__link{color:var(--color-primary);font-weight:700;text-decoration:underline;text-underline-offset:3px;transition:opacity .16s ease}.area-list__link:hover{opacity:.75}.area-list__dot{width:.55rem;height:.55rem;border-radius:999px;background:var(--color-primary);flex-shrink:0}.map-card{border-radius:var(--radius-md);overflow:hidden}.gallery-header{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:2rem}.social-pill{display:inline-flex;align-items:center;gap:.55rem;border-radius:999px;background:#e4405f1a;color:#e4405f;padding:.7rem 1rem;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;transition:background-color .16s ease,color .16s ease}.social-pill:hover{background:#e4405f;color:#fff}.carousel{position:relative;overflow:hidden;border-radius:var(--radius-md);box-shadow:var(--shadow-card);aspect-ratio:16 / 9}.carousel__track{display:flex;height:100%;transition:transform .5s ease}.carousel__slide{flex:0 0 100%;position:relative;overflow:hidden}.carousel__image{width:100%;height:100%;object-fit:cover}.carousel__btn{position:absolute;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:3rem;height:3rem;border:none;border-radius:999px;background:#ffffffd9;color:var(--color-text);box-shadow:var(--shadow-card);transition:background-color .16s ease,transform .16s ease;z-index:2}.carousel__btn:hover{background:#fff;transform:translateY(-50%) scale(1.08)}.carousel__btn--prev{left:1rem}.carousel__btn--next{right:1rem}.carousel__dots{position:absolute;bottom:1rem;left:50%;transform:translate(-50%);display:flex;gap:.4rem;z-index:2}.carousel__dot{width:.5rem;height:.5rem;border:none;border-radius:999px;background:#ffffff80;padding:0;transition:background-color .16s ease,width .16s ease;cursor:pointer}.carousel__dot--active{background:#fff;width:1.25rem}.testimonial-carousel{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.5rem;margin-top:2rem}.testimonial-carousel__viewport{overflow:hidden}.testimonial-track{display:flex;gap:1rem;transition:transform .5s ease;will-change:transform}.testimonial-carousel__nav{display:inline-flex;align-items:center;justify-content:center;width:2.4rem;height:2.4rem;flex-shrink:0;border:1px solid var(--color-surface-border);border-radius:999px;background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-soft);cursor:pointer;transition:transform .16s ease,border-color .16s ease,color .16s ease}.testimonial-carousel__nav:hover{transform:translateY(-2px);border-color:#72c20073;color:var(--color-primary)}.testimonial-carousel__dots{grid-column:1 / -1;display:flex;justify-content:center;gap:.5rem;margin-top:.5rem}.testimonial-carousel__dot{width:.55rem;height:.55rem;padding:0;border:none;border-radius:999px;background:var(--color-surface-border);cursor:pointer;transition:transform .16s ease,background .16s ease}.testimonial-carousel__dot.is-active{background:var(--color-primary);transform:scale(1.25)}.testimonial-card{flex:0 0 100%;display:flex;flex-direction:column;justify-content:space-between;gap:.75rem;padding:1.6rem}@media(min-width:720px){.testimonial-card{flex-basis:calc((100% - 1rem)/2)}}@media(min-width:960px){.testimonial-card{flex-basis:calc((100% - 2rem) / 3)}}.testimonial-card__body{display:flex;flex-direction:column;gap:1rem;max-height:200px;overflow:hidden;position:relative;transition:max-height .3s ease}.testimonial-card.is-expanded .testimonial-card__body{max-height:none}.testimonial-card__body:after{content:"";position:absolute;inset:auto 0 0;height:3rem;background:linear-gradient(to bottom,transparent,var(--color-surface));pointer-events:none;opacity:1;transition:opacity .2s ease}.testimonial-card.is-expanded .testimonial-card__body:after{opacity:0}.testimonial-card__stars{display:flex;gap:.1rem;color:var(--color-primary)}.testimonial-card__stars .material-symbols-outlined{font-variation-settings:"FILL" 1}.testimonial-card__quote{margin:0;color:var(--color-text-muted);font-style:italic}.testimonial-card__author{margin:0;font-family:var(--font-headline);font-weight:800}.testimonial-card__toggle{display:inline-flex;align-items:center;gap:.3rem;align-self:flex-start;padding:0;border:none;background:none;color:var(--color-primary);font:inherit;font-weight:700;cursor:pointer}.testimonial-card__toggle .material-symbols-outlined{font-size:1.1rem;transition:transform .2s ease}.testimonial-card__toggle.is-expanded .material-symbols-outlined{transform:rotate(180deg)}.contact-card{display:grid;overflow:hidden;border:1px solid var(--color-surface-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-card)}.contact-card__info{display:flex;flex-direction:column;justify-content:flex-start;gap:1rem;padding:1.5rem;background:var(--color-primary);color:var(--color-primary-contrast)}.contact-card__title{margin:.25rem 0 0;font-family:var(--font-headline);font-size:clamp(1.5rem,3vw,1.8rem);line-height:1.05}.contact-card__body{margin:1rem 0 0;max-width:26rem;color:#ffffffd1}.contact-card__signature{margin:0;font-family:var(--font-signature);font-size:1.8rem}.contact-details{display:grid;gap:.75rem;margin-top:1rem}.contact-details__item{display:flex;gap:.8rem;align-items:start}.contact-details__item .material-symbols-outlined{padding:.45rem;border-radius:var(--radius-sm);background:#ffffff1f}.contact-details__label{margin:0 0 .2rem;font-family:var(--font-label);font-size:.62rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;opacity:.76}.contact-details__link{display:block;font-weight:700}.contact-card__form{background:var(--color-background);padding:1.5rem}.contact-form,.contact-form__grid{display:grid;gap:1rem}.contact-form__honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.field{display:grid;gap:.4rem}.field label{color:var(--color-text-soft);font-family:var(--font-label);font-size:.66rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.field input,.field select,.field textarea{width:100%;border:1px solid transparent;border-radius:var(--radius-sm);background:var(--color-surface-alt);color:var(--color-text);padding:.88rem .95rem;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}.field input::placeholder,.field textarea::placeholder{color:#7a7a7a}.field input:focus,.field select:focus,.field textarea:focus{border-color:#72c20073;background:#fff}.form-status{min-height:1.5rem;margin:0;font-size:.95rem;font-weight:600}.form-status--success{color:var(--color-success)}.form-status--error{color:var(--color-error)}.site-footer{background:var(--color-background);border-top:1px solid rgba(113,122,105,.14);padding-top:4rem}.site-footer__grid{display:grid;gap:2rem;padding-bottom:2.5rem}.site-footer__brand{display:inline-flex;align-items:center;gap:.75rem;margin-bottom:1rem;font-family:var(--font-headline);font-size:1.25rem;font-weight:800}.site-footer__logo{height:4.5rem;width:auto}.site-footer__summary{color:var(--color-text-soft);font-size:.85rem}.site-footer__heading{margin:0 0 1rem;color:var(--color-primary);font-family:var(--font-label);font-size:.66rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.site-footer__list{list-style:none;margin:0;padding:0;display:grid;gap:.65rem;font-size:.92rem}.site-footer__list a{color:var(--color-text-soft);transition:color .16s ease}.site-footer__list a:hover{color:var(--color-primary)}.site-footer__list--muted{color:var(--color-text-soft)}.site-footer__socials{display:flex;gap:.75rem}.social-button{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;transition:transform .16s ease}.social-button svg{width:1.85rem;height:1.85rem}.social-button:hover{transform:translateY(-1px) scale(1.05)}.site-footer__bottom{border-top:1px solid rgba(113,122,105,.14);padding:1.25rem 1rem 1.75rem;text-align:center;color:#7a7a7a;font-size:.78rem}@media(min-width:720px){.services-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.testimonial-grid,.site-footer__grid,.contact-form__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:960px){.section{padding:4rem 0}.site-header__desktop{display:inline-flex}.site-header__toggle,.site-header__mobile{display:none}.split-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4rem}.services-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.testimonial-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.contact-card{grid-template-columns:minmax(0,2fr) minmax(0,3fr)}.contact-card__info{order:2}.contact-card__form{order:1}.site-footer__grid{grid-template-columns:1.3fr .8fr .8fr .8fr}}@media(max-width:719px){.social-pill{width:100%}.about-media__badge{right:.75rem;bottom:.75rem}.area-list{grid-template-columns:1fr}}
