@font-face{font-family:Alegreya Variable;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_astro/alegreya-latin-wght-normal.BG9rTJo4.woff2)format("woff2-variations")}@font-face{font-family:Alegreya Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_astro/alegreya-sans-latin-400-normal.DtLlO8BS.woff2)format("woff2")}@font-face{font-family:Alegreya Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/_astro/alegreya-sans-latin-700-normal.DEbcy2sF.woff2)format("woff2")}@font-face{font-family:Alegreya Fallback;font-style:normal;font-weight:400 900;src:local(Georgia);size-adjust:92.34%;ascent-override:110.46%;descent-override:37.9%;line-gap-override:0%}@font-face{font-family:Alegreya Sans Fallback;font-style:normal;font-weight:400;src:local(Arial),local(ArialMT);size-adjust:85.65%;ascent-override:105.08%;descent-override:35.03%;line-gap-override:0%}@font-face{font-family:Alegreya Sans Fallback;font-style:normal;font-weight:700;src:local(Arial Bold),local(Arial-BoldMT);size-adjust:82.11%;ascent-override:109.61%;descent-override:36.54%;line-gap-override:0%}:root{--color-ink:#282420;--color-paper:#f4f1eb;--color-surface:#fff;--color-muted:#6b655c;--color-brick:#9a3a28;--color-brick-hover:#7f2f20;--color-sage:#9da994;--color-sage-deep:#556150;--color-sage-tint:#e7eadf;--color-tile:#f5f4f0;--color-line:#e3ded6;--color-control:#8c8478;--color-brick-pressed:#572c22;--color-press-tint:#28242024;--color-draft-bg:oklch(96.2% .059 95.617);--color-draft-text:oklch(41.4% .112 45.904);--font-serif:"Alegreya Variable", "Alegreya Fallback", Georgia, serif;--font-sans:"Alegreya Sans", "Alegreya Sans Fallback", system-ui, sans-serif;--leading-xs:calc(1 / .75);--leading-sm:calc(1.25 / .875);--leading-lg:calc(1.75 / 1.125);--leading-2xl:calc(2 / 1.5);--leading-4xl:calc(2.5 / 2.25);--radius:.375rem;--radius-small:.25rem;--page-width:72rem;--grid-gap:.75rem;--section-space:3rem;--sticky-bar-height:calc(1px + 3.5rem + max(.5rem, env(safe-area-inset-bottom)));--sticky-header-height:calc(4rem + 1px);--focus-clearance:.5rem}@media (width>=48rem){:root{--section-space:4rem}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;line-height:1.5;font-family:var(--font-sans);scroll-padding-bottom:calc(var(--sticky-bar-height) + var(--focus-clearance))}@media (width>=48rem){html{scroll-padding-top:calc(var(--sticky-header-height) + var(--focus-clearance));scroll-padding-bottom:0}}body{background-color:var(--color-paper);min-height:100dvh;color:var(--color-ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:1.0625rem}h1,h2,h3{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}ul{list-style:none}img{max-width:100%;height:auto;display:block}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0}[hidden]{display:none!important}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}:focus-visible{outline:3px solid var(--color-brick);outline-offset:3px}.site-header{border-bottom:1px solid var(--color-line);background-color:var(--color-paper)}.site-header__inner{min-height:3.5rem;max-width:var(--page-width);flex-wrap:wrap;align-items:center;gap:1rem;margin-inline:auto;padding-inline:1rem;display:flex}.wordmark{align-items:center;min-height:2.75rem;margin-right:auto;display:flex}.wordmark__svg{width:8rem;height:auto;display:block}.header-draft{flex-basis:100%;order:1;margin-top:-.25rem;padding-bottom:.5rem}.site-nav{display:none}.site-nav a{min-height:2.75rem;color:var(--color-ink);text-underline-offset:4px;align-items:center;padding-inline:.5rem;font-weight:700;display:inline-flex}.site-header .header-quote{min-height:2.75rem;padding-inline:1.25rem;display:none}@media (hover:hover){.site-nav a:hover{text-decoration-line:underline}}@media (width>=48rem){.site-header{z-index:40;backdrop-filter:blur(8px);background-color:#f4f1ebf2;position:sticky;top:0}.site-header__inner{flex-wrap:nowrap;min-height:4rem;padding-inline:1.5rem}.wordmark{margin-right:0}.wordmark__svg{width:9.5rem}.header-draft{flex-basis:auto;order:0;margin:0 auto 0 0;padding:0}.site-nav{display:block}.site-header .header-quote{display:inline-flex}}.btn{border-radius:var(--radius);justify-content:center;align-items:center;min-height:3rem;font-weight:700;display:inline-flex}.btn--primary{background-color:var(--color-brick);color:#fff}.btn--outline{border:1.5px solid var(--color-ink);background-color:var(--color-surface);color:var(--color-ink)}@media (hover:hover){.btn--primary:hover{background-color:var(--color-brick-hover)}}.btn--primary:not(:disabled):active{background-color:var(--color-brick-pressed)}.btn--outline:not(.btn--pending,:disabled):active,.choice:active{background-image:linear-gradient(var(--color-press-tint), var(--color-press-tint))}.btn--pending{cursor:not-allowed;opacity:.7;border-style:dashed}.btn__pending-text{flex-direction:column;align-items:center;line-height:1.25;display:flex}.btn__pending-note,.pending-note{letter-spacing:.05em;text-transform:uppercase;color:var(--color-brick);font-size:.65rem;font-weight:700}.hero{max-width:var(--page-width);margin-inline:auto}.hero__grid{gap:1.25rem;display:grid}.hero__photo{aspect-ratio:4/3;width:100%}.hero__text{padding-inline:1rem}.hero__kicker{font-size:.875rem;line-height:var(--leading-sm);letter-spacing:.025em;color:var(--color-muted);margin-top:.5rem;font-weight:700}.hero__headline{font-family:var(--font-serif);letter-spacing:-.025em;text-wrap:balance;margin-top:.25rem;font-size:clamp(2.125rem,1.25rem + 4.4vw,2.5rem);font-weight:500;line-height:1.04}.hero__intro{border-radius:var(--radius);min-height:5rem;margin-top:1rem}.hero__actions{flex-wrap:wrap;gap:.75rem;margin-top:1.25rem;display:flex}.hero__actions .btn--primary{width:100%;font-size:1.125rem;line-height:var(--leading-lg);padding-inline:1.5rem}.hero__actions .btn--outline{padding-inline:1.25rem;display:none}@media (hover:hover){.hero__actions .btn--outline:hover{background-color:var(--color-tile)}}@media (width>=48rem){.hero{padding:var(--section-space) 1.5rem 0}.hero__grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:3rem}.hero__photo{aspect-ratio:4/5;border-radius:var(--radius);height:auto}.hero__text{padding-inline:0}.hero__headline{font-size:3.75rem}.hero__actions .btn--primary{width:auto}.hero__actions .btn--outline{display:inline-flex}}.section{max-width:var(--page-width);padding:var(--section-space) 1rem 0;margin-inline:auto}.section__heading{font-family:var(--font-serif);letter-spacing:-.025em;margin-top:.5rem;font-size:1.875rem;font-weight:500;line-height:1.2}.service-facts{margin-top:.75rem}.service-list{gap:var(--grid-gap);margin-top:1.5rem;display:grid}.service-card{border:1px solid var(--color-line);border-radius:var(--radius);background-color:var(--color-surface);flex-direction:column;padding:1.25rem;display:flex}.service-card__photo{aspect-ratio:16/9;border-radius:calc(var(--radius) - 1px) calc(var(--radius) - 1px) 0 0;margin:-1.25rem -1.25rem 1rem}.photo-pending{background-color:var(--color-sage-tint);color:var(--color-sage-deep);justify-content:center;align-items:center;font-weight:700;display:flex}.service-card__name{font-family:var(--font-serif);font-size:1.5rem;line-height:var(--leading-2xl);font-weight:500}.service-card__details{text-wrap:pretty;margin-top:.5rem}.service-card--other{background-color:var(--color-sage-tint);justify-content:center}.service-card__link{align-self:flex-start;margin-top:1rem;padding-inline:1.25rem}@media (hover:hover){.service-card__link:hover{background-color:var(--color-tile)}}.gallery{gap:var(--grid-gap);grid-template-columns:repeat(2,minmax(0,1fr));margin-top:1.5rem;display:grid}.gallery__item{aspect-ratio:1}.gallery__item--feature,.gallery__item--last{aspect-ratio:4/3;grid-column:span 2}.gallery__photo{border-radius:var(--radius-small);height:100%}.gallery__more{margin-top:1.25rem;padding-inline:1.25rem}.photo-grid{gap:1.5rem var(--grid-gap);margin-top:1.5rem;display:grid}.photo-grid__link{border-radius:var(--radius-small);display:block}.photo-grid__photo{aspect-ratio:4/3;border-radius:var(--radius-small)}.photo-grid__caption{font-size:.9375rem;line-height:var(--leading-sm);color:var(--color-muted);margin-top:.5rem}@media (hover:hover){.gallery__more:hover{background-color:var(--color-tile)}.photo-grid__link:hover .photo__img{opacity:.9}}@media (width>=40rem){.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-list{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr}.service-card__photo{aspect-ratio:4/3}}@media (width>=48rem){.section{padding-inline:1.5rem}.section__heading{font-size:2.25rem;line-height:var(--leading-4xl)}.gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery__item--feature{aspect-ratio:auto;grid-row:span 2}.gallery__item--last{aspect-ratio:1;grid-column:auto}}@media (width>=64rem){.service-list,.photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=40rem){.quote-top{max-width:43rem;padding-inline:1.5rem}}.quote-intro{font-size:1.125rem;line-height:var(--leading-lg);color:var(--color-muted);margin-top:.5rem}.quote-band{background-color:var(--color-sage-tint);margin-top:1.5rem;padding:1.5rem 1rem 2rem}.quote-card{max-width:40rem;margin-inline:auto}.quote-card>.draft-tag{margin-bottom:1rem}.quote-progress__text{font-size:.875rem;line-height:var(--leading-sm);letter-spacing:.05em;text-transform:uppercase;color:var(--color-sage-deep);font-weight:700}.quote-progress__bar{grid-template-columns:repeat(5,minmax(0,1fr));gap:.25rem;margin:.5rem 0 1.5rem;display:grid}.quote-progress__segment{background-color:color-mix(in oklab, var(--color-sage-deep) 22%, transparent);border-radius:999px;height:.375rem}.quote-progress__segment.is-done{background-color:var(--color-sage-deep)}.quote-step{border:0;min-width:0}.quote-step:not([hidden])~.quote-step:not([hidden]){margin-top:2.5rem}.quote-step__legend{padding:0}.quote-step__heading{font-family:var(--font-serif);font-size:1.5rem;line-height:var(--leading-2xl);letter-spacing:-.015em;font-weight:500}.quote-step__heading:focus{outline:none}.quote-step .draft-tag{margin-top:.5rem}.quote-field{margin-top:1.25rem}.quote-field__label{font-weight:700;display:block}.quote-field__hint{color:var(--color-muted);margin-top:.25rem}.quote-field__input{border:1.5px solid var(--color-control);border-radius:var(--radius);background-color:var(--color-surface);width:100%;min-height:3rem;font:inherit;color:var(--color-ink);margin-top:.5rem;padding:.625rem .75rem;font-size:1.125rem;display:block}.quote-field__input--zip{letter-spacing:.1em;max-width:9rem}.quote-field__input--area{resize:vertical;min-height:6rem}.quote-field__input[aria-invalid=true]{border-color:var(--color-brick);box-shadow:inset 0 0 0 1px var(--color-brick)}.quote-field__error{color:var(--color-brick);margin-top:.5rem;font-weight:700}.choice-grid{gap:.625rem;margin-top:1rem;display:grid}.choice{border:1.5px solid var(--color-control);border-radius:var(--radius);background-color:var(--color-surface);cursor:pointer;align-items:center;gap:.75rem;min-height:3.5rem;padding:.75rem 1rem;line-height:1.3;display:flex}.choice__input{width:1.25rem;height:1.25rem;accent-color:var(--color-sage-deep);cursor:pointer;flex:none;scroll-margin-block:1.5rem}.choice:has(:checked){border-color:var(--color-sage-deep);box-shadow:inset 0 0 0 1.5px var(--color-sage-deep);font-weight:700}.choice:has([aria-invalid=true]){border-color:var(--color-brick)}@supports selector(:has(*)){.choice__input:focus-visible{outline:none}.choice:has(:focus-visible){outline:3px solid var(--color-brick);outline-offset:2px}}.quote-field input[type=file]{max-width:100%;margin-top:.5rem;display:block}.quote-field input[type=file]::file-selector-button{border:1.5px solid var(--color-ink);border-radius:var(--radius);background-color:var(--color-surface);min-height:3rem;font:inherit;cursor:pointer;margin-right:.75rem;padding-inline:1.25rem;font-weight:700}.quote-field input[type=file]::file-selector-button:active{background-image:linear-gradient(var(--color-press-tint), var(--color-press-tint))}.photo-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:1rem;display:grid}.photo-list:empty{display:none}.photo-slot{flex-direction:column;gap:.5rem;min-width:0;display:flex}.photo-slot__img{aspect-ratio:1;object-fit:cover;border-radius:var(--radius);background-color:var(--color-tile);width:100%}.photo-slot__button{width:100%;padding-inline:.5rem}.photo-slot--working,.photo-slot--error{border:1.5px dashed var(--color-control);border-radius:var(--radius);background-color:var(--color-surface);justify-content:center;padding:.75rem}.photo-slot--working{aspect-ratio:1;text-align:center;color:var(--color-muted);align-items:center}.photo-slot--error{border-style:solid;border-color:var(--color-brick)}.photo-slot--error .photo-slot__message{color:var(--color-brick);font-weight:700}.photo-slot__file{font-size:.875rem;line-height:var(--leading-sm);color:var(--color-muted);overflow-wrap:anywhere;margin-top:.25rem;font-weight:400;display:block}.photo-count{margin-top:.75rem;font-weight:700}.photo-add{gap:.5rem;width:100%;margin-top:1rem;padding-inline:1.25rem}.photo-add:before{content:"+";content:"+" / "";font-size:1.375rem;line-height:1}.quote-nav{gap:.75rem;margin-top:2rem;display:flex}.quote-nav .btn{padding-inline:1.25rem}.quote-nav__next{flex:1}.quote-nav .btn:disabled{cursor:progress;opacity:.7}.quote-notice{border-left:4px solid var(--color-sage-deep);border-radius:var(--radius-small);background-color:var(--color-surface);margin-top:1.5rem;padding:1rem}.quote-notice>*+*{margin-top:.75rem}.quote-notice--noscript{margin:0 0 2rem}.quote-notice--preview{border:2px dashed var(--color-draft-text);background-color:var(--color-draft-bg);color:var(--color-draft-text);font-weight:700}.quote-notice--error{border-left-color:var(--color-brick);font-weight:700}.quote-notice__retry{padding-inline:1.5rem}.quote-notice__actions{flex-wrap:wrap;gap:.75rem;display:flex}.quote-notice__actions .btn{flex:8rem;padding-inline:1rem}.quote-success>*+*{margin-top:1rem}.quote-success .placeholder{min-height:6rem}@media (prefers-reduced-motion:no-preference){.quote-step{animation:.18s ease-out quote-step-in}@keyframes quote-step-in{0%{opacity:0;transform:translateY(.5rem)}}}@media (hover:hover){.choice:hover:not(:has([aria-invalid=true])){border-color:var(--color-sage-deep)}.photo-slot__button:hover,.photo-add:hover,.quote-nav__back:hover{background-color:var(--color-tile)}}@media (width>=40rem){.quote-band{padding:2.5rem 1.5rem 3rem}.quote-card{border:1px solid var(--color-line);border-radius:var(--radius);background-color:var(--color-surface);padding:2rem}.choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-list{grid-template-columns:repeat(4,minmax(0,1fr))}.photo-add{width:auto}.quote-field__input--name{max-width:24rem}.quote-field__input--phone{max-width:16rem}.quote-nav__next{flex:0 auto;min-width:12rem;margin-left:auto}}.site-footer{margin-top:var(--section-space);border-top:1px solid var(--color-line);background-color:var(--color-surface);padding:2.5rem 1rem 7rem}.site-footer__inner{max-width:var(--page-width);gap:2rem;margin-inline:auto;display:grid}.site-footer .wordmark{margin-right:0}.site-footer__tagline{font-family:var(--font-serif);font-size:1.125rem;line-height:var(--leading-lg);margin-top:.5rem}.site-footer__area,.site-footer__email,.site-footer__copyright{font-size:.875rem;line-height:var(--leading-sm);color:var(--color-muted)}.site-footer__area{margin-top:.5rem}.site-footer__heading{font-size:.875rem;line-height:var(--leading-sm);letter-spacing:.05em;text-transform:uppercase;color:var(--color-muted);font-weight:700}.site-footer__buttons{gap:.75rem;margin-top:.75rem;display:flex}.site-footer__buttons .btn{min-width:7rem;padding-inline:1.25rem}.site-footer__email{margin-top:.75rem}.site-footer__email a,.site-footer__link,.site-footer__social a{color:var(--color-ink);text-underline-offset:.2em;text-decoration:underline}.site-footer__social{gap:1rem;margin-top:.25rem;display:flex}.site-footer__link,.site-footer__social a{align-items:center;min-height:2.75rem;font-size:.875rem;display:inline-flex}.site-footer__bottom{border-top:1px solid var(--color-line);flex-wrap:wrap;align-items:center;gap:.75rem 1.5rem;padding-top:1.5rem;display:flex}@media (width>=48rem){.site-footer{padding:3rem 1.5rem}.site-footer__inner{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:3rem}.site-footer__bottom{grid-column:1/-1}}.sticky-bar{inset-inline:0;z-index:40;padding:.5rem .75rem;padding-bottom:max(.5rem, env(safe-area-inset-bottom));border-top:1px solid var(--color-line);backdrop-filter:blur(8px);background-color:#fffffff2;position:fixed;bottom:0}.sticky-bar__buttons{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:.75rem;max-width:28rem;margin-inline:auto;display:grid}.sticky-bar .btn{text-align:center;padding-inline:.5rem;display:flex}@media (width>=48rem){.sticky-bar{display:none}}.placeholder{border:2px dashed var(--color-control);background-image:repeating-linear-gradient(135deg, var(--color-tile) 0 12px, var(--color-line) 12px 24px);text-align:center;justify-content:center;align-items:center;padding:1rem;display:flex}.placeholder__label{border-radius:var(--radius-small);background-color:color-mix(in oklab, var(--color-surface) 90%, transparent);max-width:16rem;color:var(--color-ink);padding:.5rem .75rem;font-size:.875rem;line-height:1.375}.placeholder__tag{font-size:.75rem;line-height:var(--leading-xs);letter-spacing:.05em;text-transform:uppercase;color:var(--color-brick);font-weight:700;display:block}.photo,.sample-image{background-color:var(--color-tile);position:relative;overflow:hidden}.photo picture,.photo__img,.sample-image picture,.sample-image__img{width:100%;height:100%;display:block}.photo__img,.sample-image__img{object-fit:cover}.sample-image__label{border-radius:var(--radius-small);letter-spacing:.05em;text-transform:uppercase;color:var(--color-paper);background-color:#282420cc;padding:.125rem .375rem;font-size:.6875rem;font-weight:700;line-height:1.4;position:absolute;top:.5rem;left:.5rem}.draft-tag{border-radius:var(--radius-small);background-color:var(--color-draft-bg);font-family:var(--font-sans);font-size:.75rem;line-height:var(--leading-xs);letter-spacing:.025em;text-transform:uppercase;color:var(--color-draft-text);padding:.125rem .5rem;font-weight:700;display:inline-block}
