:root{--color-navy:#0c1947;--color-ocean-deep:#2d4bb3;--color-ocean-medium:#4874cf;--color-ocean-light:#60a2d9;--color-cta:#a7e74c;--color-cta-hover:#95d63e;--color-cta-rgb:167, 231, 76;--color-cta-subtle:#a7e74c2e;--color-cta-text-on-primary:#0c1947;--color-green-medium:#61b83b;--color-green-dark:#3f7247;--color-cloud:#fbfdfd;--color-cloud-gray:#d6dfe4;--color-charcoal:var(--color-navy);--color-text:var(--color-navy);--color-text-muted:#3d4a63;--color-bg:var(--color-cloud);--color-bg-gray:var(--color-cloud-gray);--color-border:#c8d4dc;--color-form-dark:var(--color-navy);--color-link-on-dark:#b8d9f0;--color-link-on-dark-hover:#d4ebfa;--color-green-muted:var(--color-green-dark);--font-heading:"Montserrat", system-ui, -apple-system, "Segoe UI", sans-serif;--font-body:"Open Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--container:min(1200px, 100% - 2rem);--section-padding-y:clamp(3.25rem, 6vw, 5.25rem);--shadow-card:0 4px 24px #0c194714;--shadow-form:0 16px 48px #0c194747;--radius:6px;--radius-lg:10px;--overlay-hero:linear-gradient(105deg, #0c1947eb 0%, #0c1947ad 42%, #0c194773 100%);--accent-section-bg:linear-gradient(165deg, #152a5c 0%, var(--color-navy) 50%, #070f2e 100%)}@media (width>=768px){:root{--container:min(1200px, 100% - 3rem)}}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}[id]{scroll-margin-top:5.75rem}body{font-family:var(--font-body);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;margin:0;font-size:1.0625rem;line-height:1.6}img{max-width:100%;height:auto;display:block}a{color:var(--color-ocean-deep)}a:hover{color:var(--color-ocean-medium)}#root{min-height:100vh}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.hero__title,.section__title,.service-card__title,.trust-card__title,.navbar__logo-text,.footer__logo-text,.quote-form-card__title,.top-bar__text,.btn,.navbar__phone,.contact-cta__phone-big,.link-phone{font-family:var(--font-heading)}.site{flex-direction:column;min-height:100vh;display:flex}.site main{flex:1}.container{width:var(--container);margin-inline:auto}.top-bar{background:var(--color-ocean-deep);color:#fff;text-align:center;letter-spacing:.04em;text-transform:uppercase;padding:.5rem 1rem;font-size:.8125rem;font-weight:700}.top-bar__text{max-width:62rem;margin:0;margin-inline:auto;line-height:1.45}.navbar{z-index:50;border-bottom:1px solid var(--color-border);background:#fff;position:sticky;top:0;box-shadow:0 1px #0000000a}.navbar__inner{width:var(--container);grid-template-columns:1fr auto;align-items:center;gap:1rem;margin-inline:auto;padding:.85rem 0;display:grid}.navbar__logo{color:var(--color-charcoal);flex-flow:wrap;align-items:center;gap:.5rem .75rem;text-decoration:none;display:flex}.navbar__logo-img{object-fit:contain;object-position:left center;width:auto;max-width:140px;height:2.5rem}.navbar__logo-text-wrap{flex-direction:column;align-items:flex-start;gap:.1rem;min-width:0;display:flex}.navbar__logo-mark{display:none}.navbar__logo-text{letter-spacing:-.02em;font-size:1.25rem;font-weight:800;line-height:1.1}.navbar__logo-sub{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;max-width:16rem;font-size:.7rem;font-weight:600;line-height:1.2}.navbar__toggle{border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer;background:#fff;padding:.5rem .65rem;display:none}.navbar__toggle:focus-visible{outline:2px solid var(--color-cta);outline-offset:2px}.navbar__toggle-bars{background:var(--color-charcoal);width:1.35rem;height:2px;box-shadow:0 6px 0 var(--color-charcoal), 0 -6px 0 var(--color-charcoal);display:block}.navbar__nav{grid-area:1/2}.navbar__list{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.35rem 1.25rem;margin:0;padding:0;list-style:none;display:flex}.navbar__link{color:var(--color-charcoal);padding:.35rem 0;font-size:.875rem;font-weight:700;text-decoration:none;transition:color .15s}.navbar__link:hover{color:var(--color-ocean-deep)}.navbar__link--active{color:var(--color-ocean-deep);box-shadow:inset 0 -3px 0 var(--color-ocean-light)}.navbar__phone-block{text-align:right;flex-direction:column;grid-area:1/3;align-items:flex-end;gap:.2rem;min-width:0;display:flex}.navbar__phone-cta{letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);max-width:14rem;font-size:.625rem;font-weight:800;line-height:1.25}.navbar__phone{color:var(--color-green-dark);white-space:nowrap;letter-spacing:-.02em;font-size:1.125rem;font-weight:800;text-decoration:none}.navbar__phone:hover{color:var(--color-green-medium)}@media (width>=960px){.navbar__inner{grid-template-columns:auto 1fr auto;gap:1.5rem}.navbar__nav{justify-self:center}.navbar__list{justify-content:center}}@media (width<=959px){.navbar__inner{grid-template-columns:1fr auto auto}.navbar__toggle{justify-self:end;display:block}.navbar__nav{border-top:1px solid var(--color-border);grid-area:2/1/auto/-1;margin-top:.5rem;padding:.75rem 0 .5rem;display:none}.navbar__nav--open{display:block}.navbar__list{flex-direction:column;align-items:stretch;gap:0}.navbar__link{border-bottom:1px solid var(--color-border);min-height:48px;box-shadow:none;align-items:center;padding:.5rem 0;display:flex}.navbar__link--active{box-shadow:none;border-left:3px solid var(--color-ocean-light);padding-left:.5rem}.navbar__phone-block{align-items:flex-end}.navbar__phone-cta{max-width:9.5rem;font-size:.55rem}.navbar__phone{font-size:.88rem}}.btn{letter-spacing:.02em;border-radius:var(--radius);cursor:pointer;border:2px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.9rem 1.5rem;font-size:.9375rem;font-weight:700;text-decoration:none;transition:background .18s,color .18s,border-color .18s,transform .18s,box-shadow .18s;display:inline-flex}.btn:focus-visible{outline:2px solid var(--color-cta);outline-offset:3px}.btn:disabled{opacity:.65;cursor:not-allowed;box-shadow:none;pointer-events:none;transform:none}@media (prefers-reduced-motion:reduce){.btn{transition:background .1s,color .1s,border-color .1s}}.btn--primary{background:var(--color-cta);color:var(--color-cta-text-on-primary);border-color:var(--color-green-dark)}.btn--primary:hover{background:var(--color-cta-hover);border-color:var(--color-green-dark);color:var(--color-cta-text-on-primary);box-shadow:0 4px 16px rgba(var(--color-cta-rgb), .35);transform:translateY(-1px)}.btn--primary:active{box-shadow:none;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.btn--primary:hover,.btn--primary:active{box-shadow:none;transform:none}}.btn--secondary{background:var(--color-cloud);color:var(--color-ocean-deep);border-color:var(--color-ocean-deep)}.btn--secondary:hover{color:var(--color-ocean-medium);border-color:var(--color-ocean-medium);background:#4874cf1a}.btn--ghost-light{color:#fff;background:0 0;border-color:#ffffffd9}.btn--ghost-light:hover{color:#fff;background:#ffffff1f}.btn--block{width:100%}.btn--sm{padding:.55rem 1rem;font-size:.875rem}.hero{color:#fff;align-items:stretch;min-height:min(88vh,920px);display:flex;position:relative}.hero__bg{background-position:50%;background-size:cover;position:absolute;inset:0}.hero__overlay{background:var(--overlay-hero);position:absolute;inset:0}.hero__inner{z-index:1;width:var(--container);grid-template-columns:1fr;align-items:start;gap:clamp(1.75rem,4vw,2.5rem);margin-inline:auto;padding:clamp(2.5rem,5vw,4rem) 0 clamp(3rem,6vw,4.5rem);display:grid;position:relative}.hero__eyebrow{text-transform:uppercase;letter-spacing:.12em;color:#ffffffbf;margin:0 0 .5rem;font-size:.8rem;font-weight:700}.hero__title{letter-spacing:-.03em;text-shadow:0 1px 24px #00000059;max-width:22ch;margin:0 0 1rem;font-size:clamp(1.9rem,4.5vw + .5rem,3.15rem);font-weight:800;line-height:1.08}.hero__lead{color:#ffffffe6;max-width:36rem;margin:0 0 1.75rem;font-size:clamp(1rem,1.5vw,1.125rem);line-height:1.62}.hero__actions{flex-wrap:wrap;gap:.85rem;display:flex}@media (width<=540px){.hero__actions{flex-direction:column;align-items:stretch}.hero__actions .btn{justify-content:center;width:100%}}.hero__trust-line{color:#ffffffd1;letter-spacing:.02em;margin:1rem 0 0;font-size:.9rem;font-weight:600}.hero:not(.hero--compact) .hero__title{max-width:none}.hero__form-wrap{justify-self:stretch;width:100%;max-width:440px}@media (width>=960px){.hero__inner{grid-template-columns:1fr min(420px,38%);align-items:center;gap:2.5rem 3rem;padding:4rem 0 4.5rem}.hero__form-wrap{justify-self:end}}.quote-form-card{background:var(--color-form-dark);color:#ecebea;border-radius:var(--radius-lg);box-shadow:var(--shadow-form);border:1px solid #ffffff14;padding:clamp(1.35rem,3vw,1.75rem)}.quote-form-card--lift{box-shadow:var(--shadow-form)}.quote-form-card__title{color:#fff;letter-spacing:-.02em;margin:0 0 .4rem;font-size:clamp(1.2rem,2.5vw,1.45rem);font-weight:800}.quote-form-card__intro{color:#ffffffb8;margin:0 0 1.1rem;font-size:.875rem;line-height:1.45}.quote-form-card__row{grid-template-columns:1fr 1fr;gap:.65rem;display:grid}.quote-form-card__row--3{grid-template-columns:1.4fr .5fr .9fr}.quote-form-card__field{margin-bottom:.65rem}.quote-form-card__field label{color:#ffffffe0;margin-bottom:.3rem;font-size:.78rem;font-weight:700;display:block}.quote-form-card input,.quote-form-card select,.quote-form-card textarea{border-radius:var(--radius);width:100%;min-height:2.65rem;font-family:var(--font-body);color:var(--color-charcoal);background:#fff;border:1px solid #ffffff38;padding:.6rem .75rem;font-size:.9375rem;transition:border-color .15s,box-shadow .15s}.quote-form-card input:focus-visible,.quote-form-card select:focus-visible,.quote-form-card textarea:focus-visible{border-color:var(--color-cta);box-shadow:0 0 0 3px rgba(var(--color-cta-rgb), .35);outline:none}.quote-form-card textarea{resize:vertical;min-height:6.5rem}.quote-form-card__check{color:#ffffffbf;cursor:pointer;align-items:flex-start;gap:.5rem;margin:.35rem 0 1rem;font-size:.75rem;line-height:1.4;display:flex}.quote-form-card__check input{flex-shrink:0;width:auto;margin-top:.2rem}.quote-form-card__banner-error{color:#fff;border-radius:var(--radius);background:#dc354559;border:1px solid #ff787873;margin:0 0 1rem;padding:.65rem .75rem;font-size:.875rem;line-height:1.4}.quote-form-card__field--error input,.quote-form-card__field--error select,.quote-form-card__field--error textarea{border-color:#e85d4c;box-shadow:0 0 0 1px #e85d4c59}.quote-form-card__field-error{color:#ffb3a7;margin-top:.35rem;font-size:.78rem;font-weight:600;display:block}.quote-form-card__thanks{color:#ffffffe6;margin:0;font-size:.95rem;line-height:1.5}.quote-form-card__thanks a{color:var(--color-link-on-dark);font-weight:700}@media (width<=520px){.quote-form-card__row--3{grid-template-columns:1fr}}.section{padding:var(--section-padding-y) 0}.section--white{background:var(--color-bg)}.section--gray{background:var(--color-bg-gray)}.section--accent{background:var(--accent-section-bg);color:#ecebea}.section__title{letter-spacing:-.02em;color:var(--color-charcoal);margin:0 0 1rem;font-size:clamp(1.65rem,3vw,2.1rem);font-weight:800;line-height:1.15}.section__title--center{text-align:center;max-width:22ch;margin-inline:auto}.section__title--on-dark{color:#fff}.section__lead{color:var(--color-text-muted);max-width:36rem;margin:0 0 1.25rem;font-size:1.05rem}.section__subtitle{text-align:center;max-width:40rem;color:var(--color-text-muted);margin:-.25rem auto 2.5rem;font-size:1rem}.commercial-highlight__grid{align-items:start;gap:2.5rem;display:grid}@media (width>=880px){.commercial-highlight__grid{grid-template-columns:1.15fr .85fr;gap:3rem}}.commercial-highlight__list{color:var(--color-text-muted);margin:0 0 1.5rem;padding-left:1.15rem;line-height:1.7}.commercial-highlight__list li{margin-bottom:.35rem}.commercial-highlight__aside{flex-direction:column;gap:1rem;display:flex}.commercial-highlight__stat{background:var(--color-bg-gray);border-left:4px solid var(--color-green-muted);border-radius:0 var(--radius) var(--radius) 0;padding:1rem 1.15rem}.commercial-highlight__stat strong{text-transform:uppercase;letter-spacing:.06em;color:var(--color-green-muted);margin-bottom:.25rem;font-size:.85rem;display:block}.commercial-highlight__stat span{color:var(--color-text-muted);font-size:.95rem}.services-residential-heading{color:var(--color-text-muted);letter-spacing:.02em;margin:2.5rem 0 .5rem;font-size:1.15rem;font-weight:800}.services-residential-lead{max-width:40rem;color:var(--color-text-muted);margin:0 0 1.25rem;font-size:.95rem}.services-grid--residential{margin-bottom:0}.services-grid{grid-template-columns:1fr;gap:1.5rem;display:grid}@media (width>=600px){.services-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=960px){.services-grid{grid-template-columns:repeat(3,1fr)}}.service-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-card);border:1px solid var(--color-border);background:#fff;flex-direction:column;transition:box-shadow .2s,border-color .2s;display:flex;position:relative;overflow:hidden}.service-card:hover{border-color:rgba(var(--color-cta-rgb), .28);box-shadow:0 8px 32px #231f201a}.service-card--residential{opacity:.97}.service-card__badge{z-index:2;background:var(--color-ocean-deep);color:#fff;text-transform:uppercase;letter-spacing:.08em;border-radius:4px;padding:.35rem .6rem;font-size:.65rem;font-weight:800;position:absolute;top:.75rem;left:.75rem}.service-card__badge--muted{background:var(--color-green-dark)}.service-card__image-wrap{aspect-ratio:3/2;overflow:hidden}.service-card__image-wrap img{object-fit:cover;width:100%;height:100%;transition:transform .35s}@media (prefers-reduced-motion:no-preference){.service-card:hover .service-card__image-wrap img{transform:scale(1.03)}}.service-card__body{flex-direction:column;flex:1;gap:.65rem;padding:1.35rem 1.35rem 1.5rem;display:flex}.service-card__title{color:var(--color-charcoal);margin:0;font-size:1.1rem;font-weight:800}.service-card__desc{color:var(--color-text-muted);flex:1;margin:0;font-size:.9rem;line-height:1.5}.about-preview__grid{align-items:center;gap:2rem;display:grid}@media (width>=880px){.about-preview__grid{grid-template-columns:1fr 1fr;gap:3rem}}.about-preview__image img{border-radius:var(--radius-lg);object-fit:cover;aspect-ratio:4/3;width:100%}.about-preview__copy p{color:var(--color-text-muted);margin:0 0 1rem}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:clamp(.85rem,2vw,1.25rem);margin:0;padding:0;list-style:none;display:grid}@media (width>=720px){.gallery-grid{grid-template-columns:repeat(3,1fr)}}.gallery-grid__item figure{border-radius:var(--radius-lg);aspect-ratio:4/3;box-shadow:var(--shadow-card);border:1px solid var(--color-border);margin:0;overflow:hidden}.gallery-grid__item img{object-fit:cover;width:100%;height:100%}.trust-grid{grid-template-columns:1fr;gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}@media (width>=640px){.trust-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=960px){.trust-grid{grid-template-columns:repeat(3,1fr)}}@media (width>=1100px){.trust-grid{grid-template-columns:repeat(4,1fr)}}.trust-card{background:var(--color-bg);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-card);padding:1.35rem 1.25rem}.trust-card__title{color:var(--color-charcoal);margin:0 0 .5rem;font-size:.95rem;font-weight:800;line-height:1.25}.trust-card__text{color:var(--color-text-muted);margin:0;font-size:.85rem;line-height:1.45}.residential-secondary__inner{align-items:center;gap:2rem;display:grid}@media (width>=800px){.residential-secondary__inner{grid-template-columns:.9fr 1.1fr;gap:3rem}}.residential-secondary__image img{border-radius:var(--radius-lg);object-fit:cover;aspect-ratio:16/10;width:100%}.residential-secondary__copy p{color:var(--color-text-muted);margin:0 0 1.25rem}.residential-secondary__actions{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.link-phone{color:var(--color-cta);font-size:1.1rem;font-weight:800;text-decoration:none}.link-phone:hover{color:var(--color-cta-hover)}.contact-cta__hero-actions{flex-wrap:wrap;gap:.75rem;margin-bottom:.75rem;display:flex}.contact-cta__reassurance{color:#ffffffbf;max-width:28rem;margin:0 0 1rem;font-size:.9rem;line-height:1.45}.contact-cta__grid{align-items:start;gap:2.5rem;display:grid}@media (width>=960px){.contact-cta__grid{grid-template-columns:1fr min(440px,42%);align-items:start;gap:3rem}}.contact-cta__lead{color:#ffffffd1;max-width:32rem;margin:0 0 1.25rem;font-size:1.05rem}.contact-cta__phone-big{color:var(--color-cta);margin-bottom:.75rem;font-size:clamp(1.5rem,3vw,2rem);font-weight:800;text-decoration:none;display:inline-block}.contact-cta__phone-big:hover{color:var(--color-link-on-dark-hover)}.contact-cta__hint{color:#ffffffb3;margin:0;font-size:.95rem}.contact-cta__hint a{color:var(--color-link-on-dark);font-weight:600}.footer{background:var(--color-navy);color:var(--color-cloud);padding-top:var(--section-padding-y);border-top:1px solid #fbfdfd1f}.footer__grid{gap:2.25rem;padding-bottom:2.5rem;display:grid}@media (width>=800px){.footer__grid{grid-template-columns:1.2fr 1fr 1fr 1fr;gap:2rem}}.footer__logo{color:var(--color-cloud);flex-flow:wrap;align-items:center;gap:.5rem .75rem;margin-bottom:.5rem;text-decoration:none;display:inline-flex}.footer__logo-img{object-fit:contain;object-position:left center;width:auto;max-width:120px;height:2.25rem}.footer__logo-mark{display:none}.footer__logo-text{color:var(--color-cloud);font-size:1.05rem;font-weight:800;line-height:1.25}.footer__tagline{color:#fbfdfdbf;max-width:18rem;margin:0;font-size:.9rem;line-height:1.5}.footer__heading{text-transform:uppercase;letter-spacing:.09em;color:#fbfdfd8c;margin:0 0 .75rem;font-size:.72rem;font-weight:800}.footer__list{color:#fbfdfdd1;margin:0;padding:0;font-size:.9rem;line-height:1.65;list-style:none}.footer__list a{color:var(--color-cloud);font-weight:600;text-decoration:none}.footer__list a:hover{color:var(--color-cta)}.footer__hours{color:#fbfdfdd1;flex-direction:column;gap:.2rem;margin-top:.5rem;font-size:.88rem;line-height:1.45;display:flex}.footer__cta-text{color:var(--color-cloud);margin:0 0 .75rem;font-size:.95rem;font-weight:700}.footer__bottom{background:#0003;border-top:1px solid #fbfdfd1f;padding:1.15rem 0}.footer__bottom-inner{width:var(--container);margin-inline:auto}.footer__bottom-inner p{color:#fbfdfd8c;margin:0;font-size:.8rem}.hero--compact{min-height:min(56vh,520px)}.hero__inner--single{grid-template-columns:1fr}.hero__inner--single .hero__copy{max-width:44rem}.hero__inner--single .hero__title{max-width:none}@media (width>=960px){.hero__inner--single{grid-template-columns:1fr}}.split-image-text__grid{align-items:center;gap:2rem;display:grid}.split-image-text__copy .section__title{margin-top:0}.split-image-text__copy p{color:var(--color-text-muted);margin:0 0 1rem}.split-image-text__copy .btn{margin-top:.75rem}.split-image-text__image img{border-radius:var(--radius-lg);object-fit:cover;aspect-ratio:4/3;width:100%}@media (width>=880px){.split-image-text__grid{grid-template-columns:1fr 1fr;gap:3rem}}.page-intro__narrow{max-width:40rem;margin-inline:auto}.page-intro__narrow p{color:var(--color-text-muted);margin:0 0 1rem}.page-intro__commercial-note{color:var(--color-text-muted);margin-top:1.25rem;font-size:.95rem}.section-intro__subtitle{color:var(--color-text-muted);margin:0;font-size:1.05rem;line-height:1.55}.section-intro--center .section-intro__subtitle{max-width:40rem;margin-inline:auto}.cta-section-block__inner{text-align:center;max-width:38rem;margin-inline:auto}.cta-section-block__actions{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-bottom:.75rem;display:flex}.contact-form-section__grid{align-items:start;gap:2.5rem;display:grid}@media (width>=960px){.contact-form-section__grid{grid-template-columns:minmax(0,1fr) minmax(260px,320px);gap:3rem}}.contact-form-section__aside{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:1.35rem 1.25rem}.contact-form-section__aside-title{color:var(--color-charcoal);margin:0 0 1rem;font-size:1.1rem;font-weight:800}.contact-form-section__details{color:var(--color-text-muted);margin:0 0 1.5rem;padding:0;font-size:.9rem;line-height:1.6;list-style:none}.contact-form-section__details li{margin-bottom:.85rem}.contact-form-section__label{text-transform:uppercase;letter-spacing:.06em;color:var(--color-charcoal);margin-bottom:.15rem;font-size:.7rem;font-weight:800;display:block}.contact-form-section__next-title{color:var(--color-charcoal);margin:0 0 .65rem;font-size:.85rem;font-weight:800}.contact-form-section__steps{color:var(--color-text-muted);margin:0;padding-left:1.1rem;font-size:.9rem;line-height:1.55}.contact-page-reassurance p{color:var(--color-text-muted);margin:0;line-height:1.55}.sticky-call{z-index:60;background:var(--color-cta);color:#fff;letter-spacing:.03em;border-radius:999px;align-items:center;gap:.45rem;padding:.7rem 1.2rem;font-size:.875rem;font-weight:800;text-decoration:none;transition:background .18s,transform .18s,box-shadow .18s;display:none;position:fixed;bottom:1rem;right:1rem;box-shadow:0 8px 28px #231f2040}.sticky-call:hover{background:var(--color-cta-hover);color:#fff;box-shadow:0 12px 32px rgba(var(--color-cta-rgb), .4);transform:translateY(-2px)}.sticky-call:focus-visible{outline-offset:3px;outline:2px solid #fff}.sticky-call__icon{line-height:0;display:flex}@media (width<=959px){.sticky-call{display:inline-flex}}.gallery-page__group{margin-bottom:3rem}.gallery-page__group:last-child{margin-bottom:0}.gallery-page__group .section__title{margin-bottom:1.25rem}.gallery-grid__button{cursor:pointer;border-radius:var(--radius-lg);text-align:left;background:0 0;border:none;width:100%;margin:0;padding:0;transition:transform .15s,box-shadow .15s;display:block}.gallery-grid__button:hover{transform:translateY(-2px);box-shadow:0 12px 28px #0000001f}.gallery-grid__button:focus-visible{outline:2px solid var(--color-cta);outline-offset:3px}.gallery-grid__figure{margin:0}.gallery-grid__caption{color:var(--color-text-muted);margin:0;padding:.5rem 0 0;font-size:.8rem;line-height:1.35}.gallery-strip-section__more{text-align:center;margin:2rem 0 0}.gallery-lightbox{z-index:200;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.gallery-lightbox__backdrop{cursor:pointer;background:#0a0c10e0;border:none;margin:0;padding:0;position:absolute;inset:0}.gallery-lightbox__panel{z-index:1;border-radius:var(--radius-lg);background:#111;max-width:min(960px,100%);max-height:min(90vh,100%);padding:.5rem;position:relative;box-shadow:0 24px 80px #00000073}.gallery-lightbox__panel img{object-fit:contain;border-radius:var(--radius);width:auto;max-width:100%;height:auto;max-height:min(78vh,100%);margin:0 auto;display:block}.gallery-lightbox__close{z-index:2;color:#fff;border-radius:var(--radius);cursor:pointer;background:#0000008c;border:none;padding:.4rem .75rem;font-size:.8rem;font-weight:700;position:absolute;top:.35rem;right:.35rem}.gallery-lightbox__close:hover{background:#000000bf}.gallery-lightbox__cap{color:#ddd;text-align:center;margin:.5rem 0 0;padding:0 .35rem .35rem;font-size:.9rem}.property-types__grid{gap:.65rem 1.5rem;max-width:48rem;margin:0 auto;padding:0;list-style:none;display:grid}@media (width>=600px){.property-types__grid{grid-template-columns:repeat(2,1fr)}}.property-types__item{border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-charcoal);background:#fff;padding:.85rem 1rem;font-size:.95rem;font-weight:600}.property-types__closing{text-align:center;max-width:40rem;color:var(--color-text-muted);margin:1.75rem auto 0;font-size:1rem;line-height:1.55}.page-intro__narrow-p{color:var(--color-text-muted);text-align:center;margin:0 0 1rem;line-height:1.55}.page-intro__narrow-p:last-child{margin-bottom:0}.gallery-page-intro__body,.gallery-results-message__body{text-align:center;max-width:40rem;color:var(--color-text-muted);margin:0 auto;font-size:1.02rem;line-height:1.55}.contact-form-section__steps--detailed{padding-left:1.2rem;list-style:decimal}.contact-form-section__steps--detailed li{color:var(--color-text-muted);margin-bottom:.85rem;padding-left:.35rem;font-size:.9rem;line-height:1.45}.contact-form-section__steps--detailed li strong{color:var(--color-charcoal);margin-bottom:.2rem;font-size:.92rem;display:block}.contact-form-section__hours-lines{line-height:1.45;display:block}.about-apart-section__lead{color:var(--color-text-muted);margin:0 0 1rem;line-height:1.55}.about-apart-section__list{color:var(--color-text-muted);margin:0;padding-left:1.2rem;line-height:1.65}.about-apart-section__list li{margin-bottom:.45rem}.about-story-section__body{color:var(--color-text-muted);margin:0;line-height:1.55}.about-mission__grid{gap:2rem;display:grid}@media (width>=800px){.about-mission__grid{grid-template-columns:1fr 1fr;gap:3rem}}.about-mission__text{color:var(--color-text-muted);margin:0;line-height:1.55}.about-values__list{gap:.65rem;max-width:40rem;margin:0 auto 1.5rem;padding:0;list-style:none;display:grid}.about-values__list li{background:var(--color-bg-gray);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text-muted);padding:.75rem 1rem;font-size:.95rem}.about-values__note{text-align:center;max-width:36rem;color:var(--color-text-muted);margin:0 auto;font-size:.85rem}.about-philosophy p{color:var(--color-text-muted);margin:0 0 1rem;line-height:1.55}.home-residential-teaser__inner{max-width:40rem}.home-residential-teaser__list{color:var(--color-text-muted);margin:0 0 1.25rem;padding-left:1.15rem;line-height:1.65}.home-residential-teaser__list li{margin-bottom:.3rem}.trust-section__intro{margin-top:-.35rem}.footer__call-label{text-transform:uppercase;letter-spacing:.06em;color:#ffffff73;margin-bottom:.15rem;font-size:.72rem;font-weight:800}.footer__hours{color:#ffffffd1;flex-direction:column;gap:.2rem;margin-top:.5rem;font-size:.88rem;display:flex}.footer__hours-title{text-transform:uppercase;letter-spacing:.06em;color:#ffffff73;margin-bottom:.1rem;font-size:.72rem;font-weight:800}.testimonial-strip__inner{text-align:center;max-width:44rem;margin-inline:auto}.testimonial-strip__quote{margin:0}.testimonial-strip__quote p{color:var(--color-charcoal);margin:0;font-size:clamp(1.05rem,2.5vw,1.25rem);font-style:italic;font-weight:600;line-height:1.45}.testimonial-strip__attr{color:var(--color-text-muted);margin-top:1rem;font-size:.9rem;font-style:normal}.service-areas-body__list{color:var(--color-text-muted);margin:0 0 1.5rem;padding-left:1.2rem;line-height:1.65}.service-areas-body__note{color:var(--color-text-muted);margin:0;font-size:.95rem}
