@font-face{font-family:DM Sans Variable;font-style:normal;font-weight:100 1000;font-display:swap;src:url(/fonts/dm-sans-latin-wght-normal.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans Variable;font-style:normal;font-weight:100 1000;font-display:swap;src:url(/fonts/dm-sans-latin-ext-wght-normal.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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}:root{--bone:#f5f2eb;--bone-deep:#eae6dd;--surface:#fafaf8;--paper:#fff;--carbon:#1c1c1c;--carbon-soft:#3d3d3d;--stone:#6f6b65;--stone-light:#d4d0c8;--sage:#5e6f5c;--sage-deep:#4a5849;--ink:#1c1c1c;--ink-soft:#6b6862;--rule:color-mix(in srgb, var(--ink) 10%, transparent);--alert:#8f2f26;--focus:#1c1c1c;--focus-contrast:#f5f2eb;--white:#fff;--font-display:"DM Sans Variable", "DM Sans", system-ui, -apple-system, sans-serif;--font-body:"DM Sans Variable", "DM Sans", system-ui, -apple-system, sans-serif;--font-label:"DM Sans Variable", "DM Sans", system-ui, -apple-system, sans-serif;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4.5rem;--space-9:6rem;--shadow-soft:0 8px 24px #1c1c1c0f;--radius-control:2px;--radius-soft:4px;--measure:68ch;--page-gutter:clamp(1.25rem, 4vw, 3rem);color-scheme:light}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:80ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{min-width:320px;font-family:var(--font-body);color:var(--ink);background:var(--bone);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;font-size:1.0625rem;line-height:1.6}img,svg{max-width:100%;height:auto;display:block}a{color:inherit}button,input,select,textarea{font:inherit}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;box-shadow:0 0 0 4px var(--focus-contrast)}.skip-link{left:var(--space-4);z-index:1000;background:var(--paper);color:var(--ink);border:1px solid var(--ink);padding:.75rem 1rem;text-decoration:none;position:absolute;top:-100px}.skip-link:focus{top:var(--space-4)}.brand{flex-direction:column;gap:.1rem;text-decoration:none;display:flex}.brand-mark{font-family:var(--font-display);letter-spacing:-.02em;font-size:clamp(1.1rem,2vw,1.35rem);font-weight:500;line-height:1.1}.brand-sub{font-family:var(--font-label);letter-spacing:.04em;color:var(--stone);font-size:.75rem;font-weight:500}.btn{border-radius:var(--radius-control);cursor:pointer;min-height:2.75rem;font-family:var(--font-label);letter-spacing:.01em;border:0;justify-content:center;align-items:center;gap:.45rem;padding:.7rem 1.25rem;font-size:.9375rem;font-weight:500;text-decoration:none;transition:background-color .16s,color .16s,border-color .16s;display:inline-flex}.btn-primary{background:var(--carbon);color:var(--white)}.btn-primary:hover,.btn-primary:focus-visible{background:var(--carbon-soft)}.btn-secondary{color:var(--ink);border:1px solid var(--stone-light);background:0 0}.btn-secondary:hover,.btn-secondary:focus-visible{border-color:var(--carbon)}.btn-ghost{color:var(--ink);border:1px solid color-mix(in srgb, var(--ink) 20%, transparent);background:0 0}.btn-ghost:hover,.btn-ghost:focus-visible{border-color:var(--carbon)}.section{padding:var(--space-9) var(--space-5);scroll-margin-top:1rem}.section-kicker{font-family:var(--font-label);letter-spacing:.04em;color:var(--sage);margin:0 0 .5rem;font-size:.8125rem;font-weight:500}.section-title{max-width:18ch;font-family:var(--font-display);letter-spacing:-.03em;text-wrap:balance;margin:0 0 .75rem;font-size:clamp(2rem,4.5vw,3.25rem);font-weight:500;line-height:1.02}.section-lede{max-width:var(--measure);color:var(--ink-soft);margin:0 0 2rem}.services-grid{border-top:1px solid var(--rule);border-left:1px solid var(--rule);gap:0;display:grid}@media (width>=720px){.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=980px){.services-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.service-sheet{background:var(--surface);border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:1.5rem}.service-sheet:nth-child(2n){background:var(--bone)}.service-sheet h3{font-family:var(--font-display);letter-spacing:-.015em;margin:0 0 .5rem;font-size:1.125rem;font-weight:500}.service-sheet p{color:var(--ink-soft);margin:0;font-size:.98rem}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.preview-tool{gap:1.5rem;display:grid}@media (width>=960px){.preview-tool{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:start;gap:2rem}}.preview-stage{gap:.75rem;display:grid}.preview-specimen{background:var(--paper);border:1px solid var(--rule);position:relative;overflow:hidden}.preview-specimen>img{aspect-ratio:1;object-fit:cover;width:100%}.embroidery-layer{z-index:2;border-radius:var(--radius-soft);isolation:isolate;cursor:grab;touch-action:none;user-select:none;background:0 0;border:1px solid #0000;place-items:center;width:max-content;min-width:2.75rem;min-height:2.75rem;margin:0;padding:.35rem .5rem;transition:border-color .12s,background-color .12s;display:grid;position:absolute}.embroidery-layer:hover{border-color:color-mix(in srgb, var(--sage) 40%, transparent);background:color-mix(in srgb, var(--paper) 8%, transparent)}.embroidery-layer:focus-visible{border-color:var(--sage);background:color-mix(in srgb, var(--paper) 10%, transparent);outline:2px solid var(--focus);outline-offset:3px;box-shadow:0 0 0 4px var(--focus-contrast)}.embroidery-layer.is-dragging,.embroidery-layer.is-custom:focus-visible{border-color:var(--sage)}.embroidery-layer.is-dragging{cursor:grabbing;background:color-mix(in srgb, var(--paper) 12%, transparent)}.embroidery-text{--thread-highlight:color-mix(in srgb, var(--thread-color) 55%, white);--thread-glint:color-mix(in srgb, var(--thread-color) 32%, white);--thread-mid:var(--thread-color);--thread-shadow:color-mix(in srgb, var(--thread-color) 68%, black);--thread-deep:color-mix(in srgb, var(--thread-color) 48%, black);max-width:12ch;font-family:var(--font-body);letter-spacing:-.018em;text-align:center;white-space:pre-wrap;overflow-wrap:anywhere;filter:url(#tc-embroidery-warp)drop-shadow(0 .4px .2px #0c0a0847)drop-shadow(0 1.1px .6px #0c0a0852)drop-shadow(0 2.2px 1.6px #0c0a0833);margin:0;font-size:clamp(.95rem,2.4vw,1.45rem);font-weight:650;line-height:1.1;display:grid;position:relative}.embroidery-text:before,.embroidery-text:after,.embroidery-text__face{white-space:pre-wrap;overflow-wrap:anywhere;grid-area:1/1;max-width:12ch}.embroidery-text:before,.embroidery-text:after{content:attr(data-text);pointer-events:none}.embroidery-text:before{z-index:-1;color:var(--thread-deep);-webkit-text-stroke:1px color-mix(in srgb, var(--thread-deep) 70%, black);filter:blur(.55px);opacity:.78;text-shadow:0 .5px .4px #0c0a0866,0 1.4px 1.2px #0c0a0847;transform:translate(.2px,.85px)}.embroidery-text__face{z-index:1;color:#0000;background:linear-gradient(188deg, var(--thread-glint) 0%, var(--thread-highlight) 14%, var(--thread-mid) 42%, var(--thread-shadow) 76%, var(--thread-deep) 100%), repeating-linear-gradient(180deg, var(--thread-glint) 0 .28px, var(--thread-highlight) .28px .55px, var(--thread-mid) .55px .95px, var(--thread-shadow) .95px 1.25px, var(--thread-deep) 1.25px 1.4px, var(--thread-mid) 1.4px 1.55px), repeating-linear-gradient(6deg, transparent 0 3.2px, color-mix(in srgb, var(--thread-deep) 22%, transparent) 3.2px 3.55px, transparent 3.55px 6.8px);background-blend-mode:soft-light, normal, multiply;-webkit-text-fill-color:transparent;-webkit-text-stroke:.4px color-mix(in srgb, var(--thread-shadow) 82%, black);text-shadow:0 -.35px 0 color-mix(in srgb, var(--thread-highlight) 55%, transparent), 0 .55px 0 color-mix(in srgb, var(--thread-deep) 70%, transparent);background-clip:text;position:relative}.embroidery-text:after{z-index:2;color:#0000;-webkit-text-fill-color:transparent;opacity:.38;background:repeating-linear-gradient(#0000 0 .2px,#ffffff7a .2px .4px,#0000 .4px 1.55px) text;transform:translateY(-.2px)}.embroidery-mark{--thread-highlight:color-mix(in srgb, var(--thread-color) 52%, white);--thread-glint:color-mix(in srgb, var(--thread-color) 30%, white);--thread-mid:var(--thread-color);--thread-shadow:color-mix(in srgb, var(--thread-color) 66%, black);--thread-deep:color-mix(in srgb, var(--thread-color) 46%, black);aspect-ratio:1;background:linear-gradient(168deg, color-mix(in srgb, var(--thread-glint) 70%, transparent) 0%, transparent 38% 62%, color-mix(in srgb, var(--thread-deep) 45%, transparent) 100%), repeating-linear-gradient(58deg, var(--thread-glint) 0 .3px, var(--thread-highlight) .3px .65px, var(--thread-mid) .65px 1.15px, var(--thread-shadow) 1.15px 1.45px, var(--thread-deep) 1.45px 1.6px, var(--thread-mid) 1.6px 1.85px), repeating-linear-gradient(148deg, transparent 0 2.6px, color-mix(in srgb, var(--thread-deep) 18%, transparent) 2.6px 2.95px, transparent 2.95px 5.4px);background-blend-mode:soft-light, normal, multiply;width:clamp(2.5rem,8vw,4.5rem);mask-image:var(--thread-mask);mask-position:50%;mask-size:contain;mask-repeat:no-repeat;-webkit-mask-image:var(--thread-mask);filter:url(#tc-embroidery-warp) drop-shadow(0 -.3px 0 color-mix(in srgb, var(--thread-highlight) 40%, transparent)) drop-shadow(0 .55px 0 color-mix(in srgb, var(--thread-deep) 75%, transparent)) drop-shadow(0 .4px .2px #0c0a0842) drop-shadow(0 1.2px .7px #0c0a084d) drop-shadow(0 2.4px 1.8px #0c0a082e);display:block;position:relative;-webkit-mask-position:50%;-webkit-mask-size:contain;-webkit-mask-repeat:no-repeat}.embroidery-filters{pointer-events:none;width:0;height:0;position:absolute;overflow:hidden}.embroidery-layer--hat>*{transform:perspective(18rem)rotateX(-5deg)rotate(-1deg)}.embroidery-layer--backpack>*{transform:rotate(-.5deg)}.embroidery-layer--towel>*{transform:rotate(-.75deg)}.preview-caption{background:var(--bone);border-left:2px solid var(--sage);color:var(--ink-soft);margin:0;padding:.85rem 1rem;font-size:.9375rem;line-height:1.5}.preview-controls{background:var(--paper);border:1px solid var(--rule);gap:1.25rem;padding:1.25rem;display:grid}.preview-controls fieldset{border:0;min-inline-size:0;margin:0;padding:0}.preview-controls legend{font-family:var(--font-label);letter-spacing:.04em;color:var(--ink-soft);margin-bottom:.6rem;font-size:.8125rem;font-weight:500}.choice-grid{gap:.5rem;display:grid}.garment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sample-grid,.placement-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.choice-card{border:1px solid var(--rule);background:var(--surface);cursor:pointer;gap:.15rem;padding:.75rem;transition:border-color .12s,background-color .12s;display:grid;position:relative}.choice-card input{opacity:0;pointer-events:none;position:absolute}.choice-card:hover{border-color:var(--stone-light)}.choice-card.is-selected{border-color:var(--sage);background:color-mix(in srgb, var(--sage) 6%, var(--paper));box-shadow:inset 0 0 0 1px var(--sage)}.choice-title{font-family:var(--font-label);letter-spacing:0;font-size:.9375rem;font-weight:500}.choice-meta{color:var(--stone);font-size:.8125rem}.sample-card{text-align:center;place-items:center}.sample-card img{width:2.25rem;height:2.25rem}.mode-toggle{border:1px solid var(--rule);border-radius:var(--radius-control);grid-template-columns:1fr 1fr;gap:0;margin-bottom:.75rem;display:grid;overflow:hidden}.mode-toggle button{border:0;border-right:1px solid var(--rule);background:var(--surface);min-height:2.5rem;color:var(--ink-soft);font-family:var(--font-label);cursor:pointer;font-size:.875rem;font-weight:500;transition:background-color .12s,color .12s}.mode-toggle button:last-child{border-right:0}.mode-toggle button.is-active{background:var(--carbon);color:var(--white)}.field{gap:.35rem;display:grid}.field span{color:var(--ink-soft);font-size:.875rem}.field input{border:1px solid var(--stone-light);border-radius:var(--radius-control);background:var(--paper);min-height:2.75rem;color:var(--ink);padding:.6rem .75rem}.field input:focus{border-color:var(--carbon);outline:none}.swatch-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;display:grid}@media (width>=520px){.swatch-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}.swatch{cursor:pointer;align-content:center;justify-items:center;gap:.3rem;min-height:2.75rem;padding:.3rem .15rem;display:grid;position:relative}.swatch input{opacity:0;pointer-events:none;position:absolute}.swatch-chip{border:1px solid color-mix(in srgb, var(--ink) 12%, transparent);border-radius:50%;width:2rem;height:2rem}.swatch.is-selected .swatch-chip{outline:2px solid var(--carbon);outline-offset:2px}.swatch-label{text-align:center;color:var(--stone);font-size:.6875rem}.preview-cta{border-top:1px solid var(--rule);gap:.5rem;padding-top:.5rem;display:grid}.preview-cta p{color:var(--stone);margin:0;font-size:.875rem}@media (width<=719px){.garment-grid,.sample-grid,.placement-grid{grid-template-columns:1fr 1fr}}.home-page{background:var(--bone);width:min(1280px,100%);margin-inline:auto}.home-header{top:env(safe-area-inset-top,0);z-index:50;width:100%;position:sticky}.home-header__bar{z-index:2;width:100%;padding:1.25rem var(--page-gutter);background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-soft);box-shadow:var(--shadow-soft);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex;position:relative}.home-header__actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.75rem 1.25rem;display:flex}.home-header__nav{flex-wrap:wrap;gap:1rem;display:flex}.home-header__nav a{min-height:2.75rem;font-family:var(--font-label);letter-spacing:.02em;color:var(--ink-soft);align-items:center;padding:.25rem 0;font-size:.8125rem;font-weight:500;text-decoration:none;display:inline-flex}.home-header__nav a:hover,.home-header__nav a:focus-visible{color:var(--carbon)}.home-header__menu-toggle{border:1px solid var(--rule);border-radius:var(--radius-control);width:2.75rem;height:2.75rem;color:var(--ink);background:var(--surface);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:background-color .16s,border-color .16s;display:none}.home-header__menu-toggle:hover,.home-header__menu-toggle:focus-visible{border-color:var(--stone-light);background:var(--bone)}.home-header__menu-icon{--menu-bar-height:2px;--menu-bar-gap:.3125rem;gap:var(--menu-bar-gap);width:1.125rem;display:grid}.home-header__menu-icon span{height:var(--menu-bar-height);background:currentColor;border-radius:1px;transition:transform .16s,opacity .16s;display:block}.home-header.is-menu-open .home-header__menu-icon span:first-child{transform:translateY(calc(var(--menu-bar-height) + var(--menu-bar-gap))) rotate(45deg)}.home-header.is-menu-open .home-header__menu-icon span:nth-child(2){opacity:0}.home-header.is-menu-open .home-header__menu-icon span:nth-child(3){transform:translateY(calc(-1 * (var(--menu-bar-height) + var(--menu-bar-gap)))) rotate(-45deg)}.home-header__backdrop{cursor:pointer;border:0;padding:0;display:none}body.is-nav-open{overflow:hidden}.home-hero{gap:var(--space-6);background:var(--surface);display:grid}.home-hero__media{z-index:0;aspect-ratio:16/9;background:var(--bone-deep);width:100%;min-width:0;max-width:100%;position:relative;overflow:hidden}.home-hero__media img{object-fit:cover;object-position:center;width:100%;max-width:100%;height:100%;display:block}.home-hero__copy{z-index:1;min-width:0;max-width:100%;padding:clamp(2.5rem, 6vw, 4.5rem) var(--page-gutter);justify-items:start;gap:1.25rem;display:grid;position:relative}.home-hero__copy h1{font-family:var(--font-display);letter-spacing:-.035em;text-wrap:balance;margin:0;font-size:clamp(2.5rem,4.5vw,4.5rem);font-weight:500;line-height:1}.home-hero__lede{max-width:38ch;color:var(--ink-soft);margin:0;font-size:1.125rem}@media (width>=900px){.home-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(2rem,5vw,4rem)}.home-hero__media{order:2;justify-self:stretch}.home-hero__copy{padding-block:clamp(2.5rem,5vw,4rem);padding-inline:var(--page-gutter) 0;align-content:center}}.brand-marquee{background:var(--surface);border-top:1px solid var(--rule);gap:1.25rem;padding:clamp(1.75rem,4vw,2.5rem) 0;display:grid}.brand-marquee__kicker{padding-inline:var(--page-gutter);text-align:center;margin:0}.brand-marquee__viewport{overflow:hidden;mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000)}.brand-marquee__track{align-items:center;gap:clamp(2.5rem,5vw,3.75rem);width:max-content;margin:0;padding:.25rem 0;list-style:none;animation:36s linear infinite brand-marquee-scroll;display:flex}.brand-marquee__viewport:hover .brand-marquee__track,.brand-marquee__viewport:focus-within .brand-marquee__track{animation-play-state:paused}.brand-marquee__item{flex:none;place-items:center;height:2.5rem;display:grid}.brand-marquee__logo{object-fit:contain;filter:grayscale();opacity:.55;width:auto;max-width:7.5rem;height:2.25rem;display:block}@keyframes brand-marquee-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.brand-marquee__viewport{padding-inline:var(--page-gutter);mask-image:none}.brand-marquee__track{flex-wrap:wrap;justify-content:center;gap:1.75rem 2.5rem;width:100%;max-width:48rem;margin-inline:auto;animation:none}.brand-marquee__track .brand-marquee__item:nth-child(n+10){display:none}}.home-process{padding:var(--space-9) var(--page-gutter);background:var(--paper);border-top:1px solid var(--rule);gap:2.5rem;display:grid}.home-process__intro{max-width:36rem}.home-process__steps{border-top:1px solid var(--rule);gap:0;margin:0;padding:0;list-style:none;display:grid}.home-process__steps li{border-bottom:1px solid var(--rule);grid-template-columns:3.5rem 1fr;align-items:start;gap:1.5rem;padding:1.75rem 0;display:grid}.home-process__index{font-family:var(--font-label);letter-spacing:.04em;color:var(--stone);font-size:.8125rem;font-weight:500}.home-process__steps h3{font-family:var(--font-display);letter-spacing:-.015em;margin:0 0 .35rem;font-size:1.125rem;font-weight:500}.home-process__steps p{color:var(--ink-soft);margin:0;font-size:.98rem}@media (width>=800px){.home-process{grid-template-columns:minmax(16rem,.75fr) 1.25fr;align-items:start;gap:4rem}}.home-page .section{padding-inline:var(--page-gutter)}.home-preview{background:var(--surface);border-top:1px solid var(--rule)}.home-preview,.home-services,.home-about,.home-contact{scroll-margin-top:7rem}.home-services{background:var(--paper);border-top:1px solid var(--rule)}.home-services__layout{gap:var(--space-7);display:grid}.home-services__catalog{min-width:0}@media (width>=980px){.home-services__layout{grid-template-columns:minmax(0,1.35fr) minmax(21rem,.65fr);align-items:center;gap:clamp(3rem,6vw,5rem)}.home-services .services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.home-about{gap:var(--space-7);background:var(--surface);border-top:1px solid var(--rule);align-items:center;display:grid}.home-about__copy{max-width:52ch}.home-about__copy p{color:var(--ink-soft);margin:0 0 1rem}.home-about__copy p:last-child{margin-bottom:0}.home-about__copy strong{color:var(--ink);font-weight:500}.home-about__media{aspect-ratio:4/5;background:var(--bone-deep);width:100%;min-width:0;overflow:hidden}.home-about__media img{object-fit:cover;object-position:center;width:100%;height:100%;display:block}@media (width>=900px){.home-about{grid-template-columns:minmax(0,1fr) minmax(18rem,28rem);gap:clamp(2.5rem,5vw,4.5rem)}.home-about__media{justify-self:end}}.home-contact{gap:var(--space-7);padding:var(--space-9) var(--page-gutter);background:var(--sage-deep);color:var(--white);display:grid}.home-contact__primary{min-width:0}.home-contact .section-kicker{color:color-mix(in srgb, var(--white) 75%, transparent)}.home-contact h2{margin:0 0 var(--space-5);max-width:16ch;font-family:var(--font-display);letter-spacing:-.03em;text-wrap:balance;font-size:clamp(2rem,4.5vw,3rem);font-weight:500;line-height:1.05}.home-contact__lede{max-width:36rem;margin:0 0 var(--space-6);color:color-mix(in srgb, var(--white) 82%, transparent)}.home-contact .btn-secondary{color:var(--white);border-color:color-mix(in srgb, var(--white) 50%, transparent)}.home-contact .btn-secondary:hover,.home-contact .btn-secondary:focus-visible{background:color-mix(in srgb, var(--white) 12%, transparent);border-color:var(--white)}.home-contact__details{gap:var(--space-5);margin:var(--space-7) 0 0;padding-top:var(--space-5);border-top:1px solid color-mix(in srgb, var(--white) 22%, transparent);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.home-contact__details dt{font-family:var(--font-label);letter-spacing:.04em;color:color-mix(in srgb, var(--white) 70%, transparent);font-size:.75rem;font-weight:500}.home-contact__details dd{margin:.2rem 0 0;font-size:1.0625rem}.home-contact__details a{color:inherit;text-underline-offset:.2em}@media (width>=800px){.home-contact{grid-template-columns:minmax(0,.82fr) minmax(26rem,1.18fr);align-items:start;gap:clamp(3rem,7vw,6rem)}}.home-footer{padding:1.5rem var(--page-gutter);background:var(--carbon);color:color-mix(in srgb, var(--bone) 70%, transparent);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:1.25rem 2rem;font-size:.875rem;display:grid}.home-footer__credit{color:var(--bone);text-underline-offset:.2em;justify-self:center}.home-footer__nav{flex-wrap:wrap;justify-content:flex-end;justify-self:end;gap:.75rem 1.25rem;display:flex}.home-footer a{color:var(--bone);text-decoration:none}.home-footer__nav a:hover,.home-footer__nav a:focus-visible,.home-footer__credit:hover,.home-footer__credit:focus-visible{text-decoration:underline}@media (width<=799px){.home-header__bar{flex-wrap:nowrap;align-items:center}.home-header.is-menu-open .home-header__bar{border-bottom-color:#0000;border-bottom-right-radius:0;border-bottom-left-radius:0}.brand{flex:1;min-width:0}.home-header__menu-toggle{display:inline-flex}.home-header__backdrop{z-index:1;background:color-mix(in srgb, var(--carbon) 28%, transparent);opacity:0;pointer-events:none;transition:opacity .16s;display:block;position:fixed;inset:0}.home-header__backdrop:not([hidden]){opacity:1;pointer-events:auto}.home-header__actions{z-index:2;width:auto;padding:.25rem var(--page-gutter) 1.25rem;background:var(--paper);border:1px solid var(--rule);border-radius:0 0 var(--radius-soft) var(--radius-soft);box-shadow:var(--shadow-soft);opacity:0;visibility:hidden;pointer-events:none;border-top:0;justify-content:stretch;place-items:stretch stretch;gap:1rem;margin:0;transition:opacity .16s,transform .16s,visibility .16s;display:grid;position:absolute;top:100%;left:-1px;right:-1px;transform:translateY(-.5rem)}.home-header.is-menu-open .home-header__actions{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.home-header__nav{flex-direction:column;align-items:stretch;gap:0;width:100%}.home-header__nav a{border-bottom:1px solid var(--rule);justify-content:flex-start;width:100%;padding:.85rem 0;font-size:.9375rem;display:flex}.home-header__nav a:last-child{border-bottom:0}.home-page .btn{width:100%}.quote-form__handoff{flex-direction:column}.service-estimator__back{width:100%}.service-estimator__result-actions{flex-direction:column}.service-estimator__result-actions .btn{flex:none}.home-footer{text-align:center;grid-template-columns:1fr;justify-items:center}.home-footer__credit,.home-footer__nav{justify-self:center}.home-footer__nav{justify-content:center}.home-preview,.home-services,.home-about,.home-contact{scroll-margin-top:6rem}}@media (width<=520px){.home-contact__details{grid-template-columns:1fr}}.preview-fallback{background:var(--paper);border:1px solid var(--rule);color:var(--ink-soft);margin-top:1rem;padding:1rem;font-size:.95rem}.preview-fallback a{color:var(--sage-deep)}.service-estimator{text-align:center;width:100%;max-width:30rem;margin:0 auto;scroll-margin-top:6rem}.service-estimator__eyebrow{margin:0 0 var(--space-3);font-family:var(--font-label);letter-spacing:.04em;color:var(--stone);font-size:.8125rem;font-weight:500}.service-estimator__panel{text-align:left;background:var(--paper);border:1px solid var(--rule);padding:clamp(1.25rem,3vw,1.75rem)}.service-estimator__progress{margin:0 0 var(--space-4);font-family:var(--font-label);letter-spacing:.04em;color:var(--stone);font-size:.75rem;font-weight:500}.service-estimator__progress[hidden],.service-estimator__result[hidden],.service-estimator__back[hidden]{display:none}.service-estimator__title{margin:0 0 var(--space-5);font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);font-size:clamp(1.375rem,2.5vw,1.75rem);font-weight:500;line-height:1.2}.service-estimator__options{gap:.5rem;display:grid}.service-estimator__option{border:1px solid var(--rule);border-radius:var(--radius-control);width:100%;font-family:var(--font-body);text-align:left;color:var(--ink);background:var(--surface);cursor:pointer;padding:.85rem 1rem;font-size:.95rem;line-height:1.4;transition:background-color .16s,border-color .16s;display:block}.service-estimator__option:hover,.service-estimator__option:focus-visible{border-color:var(--stone-light);background:var(--bone)}.service-estimator__option.is-selected{border-color:var(--sage);background:color-mix(in srgb, var(--sage) 8%, var(--surface));box-shadow:inset 0 0 0 1px var(--sage)}.service-estimator__other{margin-top:var(--space-4)}.service-estimator__other-label{font-family:var(--font-label);letter-spacing:.04em;color:var(--ink-soft);font-size:.75rem;font-weight:500;display:block}.service-estimator__other-input{border:1px solid var(--rule);border-radius:var(--radius-control);width:100%;font-family:var(--font-body);color:var(--ink);background:var(--surface);resize:vertical;min-height:4.5rem;margin-top:.5rem;padding:.75rem .85rem;font-size:.95rem;line-height:1.5;transition:border-color .16s;display:block}.service-estimator__other-input:focus{border-color:var(--sage);outline:none}.service-estimator__other-hint{color:var(--stone);margin:.5rem 0 0;font-size:.875rem}.service-estimator__back{margin-top:var(--space-5);justify-content:center;display:flex}.service-estimator__back-btn{min-height:2.5rem}.service-estimator__result-label{font-family:var(--font-label);letter-spacing:.04em;color:var(--stone);margin:0 0 .35rem;font-size:.75rem;font-weight:500}.service-estimator__result-amount{margin:0 0 var(--space-4);font-family:var(--font-display);letter-spacing:-.03em;color:var(--ink);font-size:clamp(2rem,4.5vw,3.25rem);font-weight:500;line-height:1}.service-estimator__result-summary{margin:0 0 var(--space-5);color:var(--ink-soft);font-size:.95rem}.service-estimator__disclaimer{margin:0 0 var(--space-5);color:var(--stone);font-size:.875rem;line-height:1.55}.service-estimator__result-actions{flex-wrap:wrap;gap:.75rem;display:flex}.service-estimator__result-actions .btn{flex:auto}.quote-form{gap:var(--space-5);background:var(--surface);color:var(--ink);border:1px solid color-mix(in srgb, var(--white) 35%, transparent);border-radius:var(--radius-soft);margin:0;padding:clamp(1.5rem,4vw,2.5rem);display:grid;container:quote-form/inline-size}.quote-form__heading{gap:var(--space-2);padding-bottom:var(--space-5);border-bottom:1px solid var(--rule);display:grid}.quote-form__heading h3{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:1.375rem;font-weight:500;line-height:1.2}.quote-form__heading p{color:var(--ink-soft);margin:0;font-size:.9375rem}.quote-form__row{gap:var(--space-5);align-items:start;display:grid}.quote-form__field{gap:var(--space-2);min-width:0;display:grid}.quote-form__field label{font-family:var(--font-label);letter-spacing:.04em;color:var(--ink-soft);font-size:.75rem;font-weight:500}.quote-form__field input,.quote-form__field textarea{border:1px solid var(--stone-light);border-radius:var(--radius-control);background:var(--paper);width:100%;color:var(--ink);resize:vertical;padding:.75rem .85rem}.quote-form__field input:focus,.quote-form__field textarea:focus{border-color:var(--sage);outline:none}.quote-form__field [aria-invalid=true]{border-color:var(--alert)}.quote-form__error{color:var(--alert);margin:0;font-size:.875rem;line-height:1.45}.quote-form__status{color:var(--ink-soft);margin:0;font-size:.9375rem;line-height:1.55}.quote-form__status:empty{display:none}.quote-form__handoff{flex-wrap:wrap;gap:.75rem;display:flex}.quote-form__handoff[hidden]{display:none}.quote-form__field input{min-width:0;min-height:3rem}.quote-form__field textarea{min-height:8rem}.quote-form__field textarea::placeholder{color:var(--ink-soft);opacity:.75}.quote-form__submit{justify-self:start}@container quote-form (width>=20rem){.quote-form__row{grid-template-columns:repeat(2,minmax(0,1fr))}}
