@font-face{font-family:Zilla Slab;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/zilla-slab-latin-ext-500-normal.BtCblgyy.woff2) format("woff2"),url(/_astro/zilla-slab-latin-ext-500-normal.CU92Uk-1.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Zilla Slab;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/zilla-slab-latin-500-normal.CzZRcrUb.woff2) format("woff2"),url(/_astro/zilla-slab-latin-500-normal.B8-aa0aC.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Zilla Slab;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/zilla-slab-latin-ext-600-normal.9hyyVsz0.woff2) format("woff2"),url(/_astro/zilla-slab-latin-ext-600-normal.DTnoEnY3.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Zilla Slab;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/zilla-slab-latin-600-normal.BRgn6X7z.woff2) format("woff2"),url(/_astro/zilla-slab-latin-600-normal.iLPAhCz6.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Zilla Slab;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/zilla-slab-latin-ext-700-normal.C1-U_e_0.woff2) format("woff2"),url(/_astro/zilla-slab-latin-ext-700-normal.DQD_oLH8.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Zilla Slab;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/zilla-slab-latin-700-normal.CEKI1vVu.woff2) format("woff2"),url(/_astro/zilla-slab-latin-700-normal.C8aaVMsA.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Work Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/work-sans-vietnamese-400-normal.BxGuknnG.woff2) format("woff2"),url(/_astro/work-sans-vietnamese-400-normal.DFZk_KN_.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Work Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/work-sans-latin-ext-400-normal.zfQnhXzv.woff2) format("woff2"),url(/_astro/work-sans-latin-ext-400-normal.j7TZlk-s.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Work Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/work-sans-latin-400-normal.jUejSri3.woff2) format("woff2"),url(/_astro/work-sans-latin-400-normal.DE1_0GuN.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Work Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/work-sans-vietnamese-500-normal.Czn2Xkog.woff2) format("woff2"),url(/_astro/work-sans-vietnamese-500-normal.90nhZfxs.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Work Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/work-sans-latin-ext-500-normal.CAKEIVkc.woff2) format("woff2"),url(/_astro/work-sans-latin-ext-500-normal.CW9ss9Cz.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Work Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/work-sans-latin-500-normal.BKGnScDy.woff2) format("woff2"),url(/_astro/work-sans-latin-500-normal.BmdXWF6_.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Work Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/work-sans-vietnamese-600-normal.DizFELYt.woff2) format("woff2"),url(/_astro/work-sans-vietnamese-600-normal.ue5fzGW6.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Work Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/work-sans-latin-ext-600-normal.DNiHHggD.woff2) format("woff2"),url(/_astro/work-sans-latin-ext-600-normal.B1NFRnx8.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Work Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/work-sans-latin-600-normal.DB-2V89X.woff2) format("woff2"),url(/_astro/work-sans-latin-600-normal.Cg-NlmS7.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--forest: #1f3b2b;--forest-2: #16291e;--pine: #2f5a3e;--cedar: #d39a52;--cedar-deep: #b97f38;--cedar-light: #e7c48f;--cedar-pale: #f4ead6;--iron: #1c1c1a;--white: #ffffff;--paper: #fbf8f2;--line: #e6dccb;--ink: #1d1b16;--ink-2: #4a4537;--muted: #5f5747;--on-dark: #ffffff;--on-dark-2: #c4d3c6;--line-dark: #3a5646;--font-head: "Zilla Slab", "Rockwell", Georgia, serif;--font-body: "Work Sans", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--wrap: 72rem;--gutter: clamp(1.25rem, 5vw, 3rem);--section-y: clamp(3.5rem, 8.5vw, 6.5rem);--radius: 8px;--radius-card: 12px;--shadow: 0 2px 6px rgba(29, 27, 22, .06), 0 18px 36px rgba(29, 27, 22, .1);--header-h: 66px;--rev-dist: 18px;--rev-dur: .55s;--rev-ease: cubic-bezier(.22, .61, .36, 1);--hero-rise: 16px;--hero-dur: .6s;--picket-h: 16px;--pickets: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='16' viewBox='0 0 14 16'%3E%3Cpath fill='%23d39a52' d='M2.5 16V4.5L6 1l3.5 3.5V16z'/%3E%3Cpath fill='%23d39a52' fill-opacity='.7' d='M0 7h14v1.6H0zM0 12h14v1.6H0z'/%3E%3C/svg%3E") repeat-x left bottom / 14px var(--picket-h)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:1.0625rem;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}img{max-width:100%;height:auto;display:block}h1,h2,h3,h4{font-family:var(--font-head);color:var(--ink);line-height:1.04;letter-spacing:-.005em;margin:0 0 .4em;font-weight:700}h3,h4{font-weight:600}p{margin:0 0 1rem}a{color:var(--pine);text-underline-offset:3px;font-weight:600}a:hover{color:var(--ink)}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--cedar);outline-offset:2px;border-radius:3px}.skip-link{position:absolute;left:.5rem;top:-3.5rem;z-index:200;background:var(--forest);color:#fff;padding:.6rem 1rem;border-radius:var(--radius);transition:top .15s ease}.skip-link:focus{top:.5rem;color:#fff}.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gutter)}.section{padding-block:var(--section-y)}.eyebrow{display:inline-flex;align-items:center;gap:.7rem;font-family:var(--font-body);font-weight:600;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--pine);margin:0 0 .9rem}.eyebrow:before{content:"";flex:none;width:2.3rem;height:11px;background:radial-gradient(circle at 5px 50%,var(--paper) 1.4px,transparent 1.9px),radial-gradient(circle at 15px 50%,var(--paper) 1.3px,transparent 1.8px),var(--iron);clip-path:polygon(0 0,30% 0,100% 38%,100% 62%,30% 100%,0 100%);border-radius:2px}.eyebrow--ondark{color:var(--cedar-light)}.eyebrow--ondark:before{background:radial-gradient(circle at 5px 50%,var(--forest) 1.4px,transparent 1.9px),radial-gradient(circle at 15px 50%,var(--forest) 1.3px,transparent 1.8px),var(--cedar-light)}.section-head{max-width:46rem;margin-bottom:clamp(2rem,5vw,3rem)}.section-head h2{font-size:clamp(2.2rem,5.4vw,3.4rem);color:var(--ink)}.section-head p:not(.eyebrow){color:var(--ink-2);font-size:1.08rem;margin-bottom:0}.section-head--split{max-width:none;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem 3rem;align-items:end}.section-head--split h2{margin-bottom:0}[id]{scroll-margin-top:calc(var(--header-h) + 1rem)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;font-family:var(--font-body);font-size:1rem;font-weight:600;letter-spacing:.01em;line-height:1;padding:1rem 1.5rem;min-height:48px;border-radius:var(--radius);border:2px solid transparent;text-decoration:none;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .05s ease}.btn:active{transform:translateY(1px)}.btn--primary{color:#fff;background:var(--pine);border-color:var(--pine)}.btn--primary:hover{background:var(--forest);border-color:var(--forest);color:#fff}.btn--estimate{background:var(--cedar);color:var(--ink);border-color:var(--cedar)}.btn--estimate:hover{background:var(--cedar-light);border-color:var(--cedar-light);color:var(--ink)}.btn--outline{background:transparent;color:var(--ink);border-color:var(--ink)}.btn--outline:hover{background:var(--ink);color:#fff}.btn svg{width:1.15em;height:1.15em;flex:none}.u-visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.wordmark{display:inline-flex;align-items:baseline;gap:.4rem;text-decoration:none;color:var(--ink);margin:0}.wordmark__mark{width:1.35rem;height:1.35rem;color:var(--pine);align-self:center;flex:none}.wordmark__main{font-family:var(--font-head);font-weight:700;font-size:1.6rem;line-height:1;letter-spacing:-.01em;white-space:nowrap}.wordmark__sub{font-family:var(--font-body);font-weight:600;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);white-space:nowrap}.js-anim .section-head,.js-anim .service-card,.js-anim .gallery-grid__item,.js-anim .rating-card,.js-anim .contact__inner{opacity:0;transform:translateY(var(--rev-dist));transition:opacity var(--rev-dur) var(--rev-ease),transform var(--rev-dur) var(--rev-ease);transition-delay:var(--d, 0ms);will-change:opacity,transform}.js-anim .is-in{opacity:1;transform:none}.js-anim .hero__panel>*{opacity:0;transform:translateY(var(--hero-rise));transition:opacity var(--hero-dur) var(--rev-ease),transform var(--hero-dur) var(--rev-ease)}.js-anim.is-loaded .hero__panel>*{opacity:1;transform:none}.js-anim.is-loaded .hero__panel>*:nth-child(2){transition-delay:.06s}.js-anim.is-loaded .hero__panel>*:nth-child(3){transition-delay:.12s}.js-anim.is-loaded .hero__panel>*:nth-child(4){transition-delay:.18s}.js-anim.is-loaded .hero__panel>*:nth-child(5){transition-delay:.24s}.js-anim.is-loaded .hero__panel>*:nth-child(6){transition-delay:.3s}.site-header{position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--paper),transparent 4%);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}.site-header__inner{display:flex;align-items:center;gap:1.25rem;min-height:var(--header-h)}.brand{margin-right:auto}.site-nav{display:flex;align-items:center}.nav-list{display:flex;gap:1.75rem;list-style:none;margin:0;padding:0}.nav-list a{font-weight:500;font-size:.98rem;color:var(--ink-2);text-decoration:none;padding-block:.3rem;border-bottom:2px solid transparent}.nav-list a:hover{color:var(--ink);border-bottom-color:var(--cedar)}.header-call{padding:.65rem 1.05rem;min-height:44px;font-size:.98rem}.nav-toggle{display:none}.hero{position:relative;display:grid;grid-template-areas:"stack";min-height:clamp(560px,82vh,740px);background:var(--forest)}.hero__media,.hero__wrap{grid-area:stack}.hero__media{position:relative;overflow:hidden}.hero__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 55%}.hero__media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#16291e73,#16291e00 55%)}.hero__wrap{position:relative;z-index:2;display:flex;align-items:center;padding-block:calc(var(--picket-h) + 2.5rem) 2.5rem}.hero__panel{position:relative;background:var(--paper);max-width:39rem;padding:clamp(1.75rem,3.5vw,2.75rem);border-radius:0 0 var(--radius-card) var(--radius-card);box-shadow:0 24px 60px #0a140e59}.hero__panel:before{content:"";position:absolute;left:0;right:0;bottom:100%;height:var(--picket-h);background:var(--pickets)}.hero__title{font-size:clamp(2.5rem,5vw,3.75rem);margin:0 0 1rem;color:var(--ink)}.hero__title .l2{display:block;color:var(--ink);font-weight:500}.hero__lede{color:var(--ink-2);font-size:clamp(1.02rem,1.8vw,1.13rem);margin-bottom:1.4rem}.hero__phone{display:inline-flex;flex-direction:column;gap:.15rem;text-decoration:none;margin-bottom:1.2rem}.hero__phone-label{font-weight:600;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.hero__phone-num{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-head);font-weight:700;font-size:clamp(2rem,4.4vw,2.7rem);color:var(--ink);line-height:1}.hero__phone-num svg{width:.75em;height:.75em;color:var(--pine)}.hero__phone:hover .hero__phone-num{color:var(--pine)}.hero__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.4rem}.hero__rating{display:inline-flex;align-items:center;gap:.6rem;font-weight:500;font-size:.95rem;color:var(--ink-2);text-decoration:none;padding-top:1.1rem;border-top:1px solid var(--line);width:100%}.hero__rating strong,.hero__rating:hover{color:var(--ink)}.hero__stars{color:var(--cedar-deep);letter-spacing:2px}.services{background:var(--paper)}.service-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.75rem,1.6vw,1.1rem)}.service-card{min-width:0;display:flex;flex-direction:column;gap:.55rem;background:var(--white);border:1px solid var(--line);border-radius:var(--radius-card);padding:clamp(1.05rem,2.2vw,1.4rem);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.service-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:var(--cedar)}.service-card__icon{width:2.9rem;height:2.9rem;flex:none;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--cedar-pale);color:var(--pine)}.service-card__icon svg{width:1.65rem;height:1.65rem}.service-card__name{font-size:1.25rem;line-height:1.12;margin:.15rem 0 0;color:var(--ink)}.service-card__desc{color:var(--muted);font-size:.94rem;line-height:1.45;margin:0}.gallery{background:var(--cedar-pale);position:relative;margin-top:var(--picket-h)}.gallery:before{content:"";position:absolute;left:0;right:0;bottom:100%;height:var(--picket-h);background:var(--pickets)}.gallery .eyebrow:before{background:radial-gradient(circle at 5px 50%,var(--cedar-pale) 1.4px,transparent 1.9px),radial-gradient(circle at 15px 50%,var(--cedar-pale) 1.3px,transparent 1.8px),var(--iron)}.gallery-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.75rem,2.4vw,1.75rem)}.gallery-grid__item{min-width:0}.gallery-fig{margin:0}.gallery-thumb{display:block;width:100%;padding:0;border:0;cursor:zoom-in;background:var(--forest);overflow:hidden;border-radius:var(--radius-card);aspect-ratio:4 / 3}.gallery-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s var(--rev-ease)}.gallery-thumb:hover img{transform:scale(1.04)}.gallery-fig figcaption{margin-top:.7rem;font-size:.95rem;font-weight:500;color:var(--ink-2)}.lightbox{border:none;padding:0;background:transparent;max-width:100vw;max-height:100vh;width:100%;height:100%;margin:0}.lightbox::backdrop{background:#0e1611f0}.lightbox[open]{display:flex;align-items:center;justify-content:center}.lightbox__figure{margin:0;padding:clamp(1rem,5vw,3rem)}.lightbox__img{max-width:min(94vw,1100px);max-height:86vh;width:auto;height:auto;object-fit:contain;border-radius:var(--radius)}.lightbox__close,.lightbox__nav{position:fixed;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.4);width:3rem;height:3rem;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center}.lightbox__close svg,.lightbox__nav svg{width:1.4rem;height:1.4rem}.lightbox__close{top:1rem;right:1rem}.lightbox__nav--prev{left:1rem;top:50%;transform:translateY(-50%)}.lightbox__nav--next{right:1rem;top:50%;transform:translateY(-50%)}.lightbox__close:hover,.lightbox__nav:hover{background:var(--cedar);color:var(--ink);border-color:var(--cedar)}.reviews{background:var(--paper)}.reviews__inner{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:2rem clamp(2rem,6vw,5rem);align-items:center}.reviews .section-head{margin-bottom:0}.rating-card{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:1.5rem;background:var(--white);border:1px solid var(--line);border-radius:var(--radius-card);padding:clamp(1.5rem,3.5vw,2.25rem);border-top:6px solid var(--cedar)}.rating-card__score{margin:0;font-family:var(--font-head);line-height:.9;color:var(--ink);text-align:center}.rating-card__score strong{font-size:clamp(4.25rem,10vw,6rem);font-weight:700;display:block}.rating-card__score span{display:block;margin-top:.4rem;font-family:var(--font-body);color:var(--muted);font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;font-weight:600}.rating-card__stars{color:var(--cedar-deep);font-size:1.45rem;letter-spacing:3px;margin-bottom:.3rem}.rating-card__body p{color:var(--ink-2);margin-bottom:.8rem}.rating-card__body strong{color:var(--ink)}.rating-link{display:inline-flex;align-items:center;gap:.4rem;font-weight:600;color:var(--pine);text-decoration:none;border-bottom:2px solid var(--cedar);padding-bottom:2px}.rating-link:hover{color:var(--ink)}.contact{background:var(--forest);color:var(--on-dark-2);position:relative;margin-top:var(--picket-h);padding-block:var(--section-y)}.contact:before{content:"";position:absolute;left:0;right:0;bottom:100%;height:var(--picket-h);background:var(--pickets)}.contact__inner{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:2.5rem clamp(2rem,6vw,5rem);align-items:center}.contact__title{font-size:clamp(2.2rem,5.4vw,3.4rem);color:#fff;margin-bottom:.6rem}.contact__lede{color:var(--on-dark-2);font-size:1.1rem;max-width:32rem;margin-bottom:1.5rem}.contact__phone{display:inline-flex;flex-direction:column;gap:.15rem;text-decoration:none;margin-bottom:1.25rem}.contact__phone-label{font-weight:600;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--cedar-light)}.contact__phone-num{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-head);font-weight:700;font-size:clamp(2.2rem,5.5vw,3rem);color:#fff;line-height:1}.contact__phone-num svg{width:.75em;height:.75em;color:var(--cedar-light)}.contact__phone:hover .contact__phone-num{color:var(--cedar-light)}.contact__actions{display:flex;flex-wrap:wrap;gap:.75rem}.contact__facts{margin:0;display:grid;gap:0;border-top:1px solid var(--line-dark)}.contact__facts>div{padding-block:1rem;border-bottom:1px solid var(--line-dark)}.contact__facts dt{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--cedar-light);margin-bottom:.25rem;font-weight:600}.contact__facts dd{margin:0;color:#fff;font-weight:500}.contact__facts dd a{color:#fff;text-decoration:none}.contact__facts dd a:hover{color:var(--cedar-light)}.contact__facts dd a.contact__map{display:inline-block;margin-top:.35rem;font-size:.92rem;color:var(--cedar-light);border-bottom:1px solid currentColor}.site-footer{background:var(--forest-2);color:var(--on-dark-2);padding-block:clamp(2.5rem,6vw,3.5rem)}.site-footer__inner{display:flex;flex-wrap:wrap;gap:1.75rem 2.5rem;justify-content:space-between;align-items:flex-end}.wordmark--footer{color:#fff}.wordmark--footer .wordmark__mark{color:var(--cedar-light)}.wordmark--footer .wordmark__sub{color:var(--on-dark-2)}.site-footer__meta{margin:.7rem 0 0;font-size:.92rem}.site-footer__reg{margin:.25rem 0 0;font-size:.85rem;letter-spacing:.04em;color:var(--on-dark-2)}.site-footer__contact{display:grid;gap:.35rem;text-align:right}.site-footer__contact a{color:#fff;font-family:var(--font-head);font-size:1.4rem;font-weight:700;text-decoration:none}.site-footer__contact a:hover{color:var(--cedar-light)}.site-footer__contact span{font-size:.92rem}.site-footer__legal{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;justify-content:space-between;margin-top:2rem;padding-top:1.25rem;border-top:1px solid var(--line-dark);font-size:.85rem}.site-footer__legal p{margin:0}.site-footer__legal a{color:var(--on-dark-2);font-weight:500}.site-footer__legal a:hover{color:#fff}.call-bar{display:none}@media(max-width:959px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reviews__inner,.contact__inner,.section-head--split{grid-template-columns:1fr}}@media(max-width:767px){:root{--section-y: clamp(2.75rem, 11vw, 3.5rem);--gutter: 1.15rem;--rev-dist: 12px;--header-h: 60px}.wordmark__main{font-size:1.35rem}.wordmark__sub{font-size:.62rem}.header-call{padding:.5rem .7rem;font-size:0;gap:0;min-height:44px;min-width:44px}.header-call svg{width:1.3rem;height:1.3rem}.nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;background:transparent;border:2px solid var(--ink);border-radius:var(--radius);cursor:pointer;order:3}.nav-toggle__bars,.nav-toggle__bars:before,.nav-toggle__bars:after{content:"";display:block;width:1.1rem;height:2px;background:var(--ink);transition:transform .2s ease,opacity .2s ease}.nav-toggle__bars{position:relative}.nav-toggle__bars:before{position:absolute;top:-6px}.nav-toggle__bars:after{position:absolute;top:6px}.site-header.is-open .nav-toggle__bars{background:transparent}.site-header.is-open .nav-toggle__bars:before{transform:translateY(6px) rotate(45deg)}.site-header.is-open .nav-toggle__bars:after{transform:translateY(-6px) rotate(-45deg)}.site-nav{order:4}.nav-list{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;gap:0;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:var(--shadow);padding:.25rem var(--gutter) .75rem}.site-header.is-open .nav-list{display:flex}.nav-list li{border-top:1px solid var(--line)}.nav-list li:first-child{border-top:0}.nav-list a{display:block;padding:.85rem 0;font-size:1.05rem;border-bottom:0}.hero{grid-template-areas:"panel" "media";min-height:0;background:var(--paper)}.hero__wrap{grid-area:panel;padding:0;max-width:none}.hero__media{grid-area:media;aspect-ratio:4 / 3;position:relative;margin-top:var(--picket-h)}.hero__media:before{content:"";position:absolute;left:0;right:0;top:calc(-1 * var(--picket-h));height:var(--picket-h);background:var(--pickets);z-index:1}.hero__media{overflow:visible}.hero__media img{object-position:70% 50%}.hero__media:after{display:none}.hero__panel{max-width:none;box-shadow:none;border-radius:0;padding:1.4rem var(--gutter) 1.6rem}.hero__panel:before{display:none}.hero__title{font-size:clamp(2.2rem,10.5vw,2.9rem)}.hero__actions{flex-direction:column;align-items:stretch}.hero__actions .btn{width:100%}.service-grid{gap:.65rem}.service-card{padding:1rem .9rem;gap:.45rem}.service-card__icon{width:2.5rem;height:2.5rem}.service-card__icon svg{width:1.4rem;height:1.4rem}.service-card__name{font-size:1.08rem}.service-card__desc{font-size:.88rem}.gallery-grid{gap:.6rem}.gallery-fig figcaption{font-size:.85rem;line-height:1.35}.rating-card{grid-template-columns:1fr;text-align:center;gap:.75rem}.contact__actions .btn{width:100%}.site-footer__contact{text-align:left}.call-bar{display:block;position:fixed;left:0;right:0;bottom:0;z-index:160;padding:.55rem .75rem calc(.55rem + env(safe-area-inset-bottom));background:var(--forest)}.call-bar:before{content:"";position:absolute;left:0;right:0;bottom:100%;height:10px;background:var(--pickets);background-size:9px 10px}.call-bar__btn{width:100%;min-height:50px;background:var(--cedar);border-color:var(--cedar);color:var(--ink)}.call-bar__btn:hover{background:var(--cedar-light);border-color:var(--cedar-light);color:var(--ink)}body{padding-bottom:5.25rem}}
