:root{color-scheme:light;--rose:#bf456f;--rose-dark:#7e2545;--rose-deep:#5b1933;--plum:#342232;--blush:#fff1f5;--paper:#fffdf9;--chalk:#fffaf4;--linen:#f4eee6;--charcoal:#202126;--ink:#303136;--muted:#68636a;--timber:#a76f43;--sage:#4f7467;--brass:#ba8c2f;--border:#e2d7cf;--border-strong:#cdbdb3;--shadow:0 18px 45px #2021261c;--soft-shadow:0 10px 28px #20212614;--radius:8px;--max:1180px;background:var(--paper);color:var(--charcoal);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:linear-gradient(90deg, #e2d7cf61 1px, transparent 1px), linear-gradient(180deg, #e2d7cf52 1px, transparent 1px), var(--paper);color:var(--charcoal);background-size:42px 42px;margin:0;font-size:16px;line-height:1.55;overflow-x:hidden}body.menu-open{overflow:hidden}a{color:var(--rose-dark);text-underline-offset:.18em;text-decoration-thickness:.08em}a:hover{color:var(--rose)}img,svg,picture{max-width:100%}picture{display:block}img{height:auto}button,input,select,textarea{font:inherit}:focus-visible{outline:3px solid var(--sage);outline-offset:3px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:1000;background:var(--charcoal);color:#fff;border-radius:4px;padding:.7rem 1rem;position:absolute;top:1rem;left:1rem;transform:translateY(-140%)}.skip-link:focus{transform:translateY(0)}.nav-wrap,.section-inner{width:min(100% - 2rem, var(--max));margin:0 auto}.section-inner>*,.grid>*,.form-layout>*,.hero-copy,.feature-copy{min-width:0}.site-header{z-index:100;backdrop-filter:blur(16px);background:#fffdf9f0;border-bottom:1px solid #7e254529;position:sticky;top:0}.nav-wrap{justify-content:space-between;align-items:center;gap:1rem;min-height:76px;display:flex}.brand{min-width:0;color:var(--charcoal);align-items:center;gap:.72rem;font-weight:900;text-decoration:none;display:inline-flex}.brand-mark{border:2px solid var(--rose-dark);background:var(--blush);width:44px;height:44px;color:var(--rose-dark);letter-spacing:0;border-radius:10px;flex:none;place-items:center;display:grid}.brand small{color:var(--muted);font-size:.76rem;font-weight:700;display:block}.nav-links{align-items:center;gap:.2rem;display:flex}.nav-links a{color:var(--ink);border-radius:8px;padding:.6rem .68rem;font-weight:800;text-decoration:none}.nav-links a:hover,.nav-links a[aria-current=page]{background:var(--blush);color:var(--rose-dark)}.nav-actions{align-items:center;gap:.55rem;display:flex}.icon-button,.menu-toggle{border:1px solid var(--border);width:44px;height:44px;color:var(--charcoal);cursor:pointer;background:#fff;border-radius:8px;place-items:center;display:inline-grid}.menu-toggle{display:none}.menu-lines,.menu-lines:before,.menu-lines:after{background:var(--rose-dark);content:"";border-radius:2px;width:20px;height:2px;display:block}.menu-lines:before{transform:translateY(-7px)}.menu-lines:after{transform:translateY(5px)}.button,.button-secondary,.button-quiet,.text-link{white-space:normal;cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:.45rem;min-width:0;min-height:44px;padding:.72rem 1rem;font-weight:900;line-height:1.15;text-decoration:none;display:inline-flex}.button{background:var(--rose-dark);color:#fff;box-shadow:0 10px 18px #7e254538}.button:hover{background:var(--rose);color:#fff}.button-secondary{border-color:var(--rose-dark);color:var(--rose-dark);background:#ffffffe0}.button-secondary:hover{background:var(--blush)}.button-quiet{color:var(--charcoal);background:0 0}.text-link{color:var(--rose-dark);padding-inline:0}.hero,.page-hero{border-bottom:1px solid var(--border);background:radial-gradient(circle at 18% 10%,#fff1f5e6,#0000 34%),linear-gradient(#fff1f594,#fffdf9db);position:relative;overflow:hidden}.hero .section-inner,.page-hero--visual .section-inner{grid-template-columns:minmax(0,.92fr) minmax(320px,.78fr);align-items:center;gap:clamp(2rem,5vw,5rem);padding:clamp(3.2rem,7vw,6rem) 0;display:grid}.hero{min-height:min(780px,100vh - 76px)}.hero .section-inner{min-height:inherit}.hero h1,.page-hero h1{max-width:12ch;color:var(--charcoal);letter-spacing:0;overflow-wrap:break-word;margin:0;font-size:clamp(2.65rem,7vw,5.45rem);line-height:.98}.page-hero{padding:clamp(3rem,6vw,4.6rem) 0}.page-hero--visual{padding:0}.page-hero h1{max-width:14ch;font-size:clamp(2.35rem,5.6vw,4.7rem)}.hero p,.page-hero p,.lead{max-width:62ch;color:var(--ink);overflow-wrap:anywhere;font-size:clamp(1.02rem,1.4vw,1.16rem)}.eyebrow{color:var(--rose-dark);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:.5rem;margin-bottom:1rem;font-size:.76rem;font-weight:900;display:inline-flex}.eyebrow:before{background:var(--rose);content:"";width:28px;height:2px}.hero-actions,.button-row{flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;display:flex}.hero-gallery{isolation:isolate;min-height:520px;position:relative}.hero-photo{background:var(--linen);box-shadow:var(--shadow);border:1px solid #7e254529;border-radius:12px;overflow:hidden}.hero-photo img,.page-hero__image img,.feature-photo img,.card-media img,.case-card__image img{object-fit:cover;width:100%;height:100%}.hero-photo--main{position:absolute;inset:0 0 54px 58px}.hero-photo--small{z-index:2;aspect-ratio:4/5;width:min(47%,250px);position:absolute;bottom:22px;left:0}.quote-chip{z-index:3;width:min(54%,280px);box-shadow:var(--soft-shadow);background:#fffdf9f0;border:1px solid #7e254538;border-radius:12px;padding:1rem;position:absolute;bottom:4px;right:18px}.quote-chip span,.card-kicker,.stock-note{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.83rem;font-weight:850}.quote-chip strong{color:var(--plum);font-size:1.15rem;display:block}.assembly-path{z-index:3;grid-template-columns:repeat(4,42px);gap:.42rem;display:grid;position:absolute;bottom:88px;right:11%}.assembly-path span{background:var(--rose);border-radius:99px;height:8px;animation:2.6s ease-in-out infinite pathPulse}.assembly-path span:nth-child(4){background:var(--sage)}.trust-strip,.trust-row .section-inner{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;display:grid}.trust-strip{margin-top:2rem}.trust-strip span,.trust-row span{border-left:3px solid var(--sage);color:var(--ink);background:#ffffffd1;padding:.75rem;font-weight:800;box-shadow:0 8px 16px #2021260a}.section{padding:clamp(3rem,6vw,5rem) 0}.section--tight{padding:1.2rem 0}.section.linen{border-block:1px solid var(--border);background:#f4eee6d1}.section-header{grid-template-columns:minmax(0,.85fr) minmax(260px,.45fr);align-items:end;gap:1.25rem;margin-bottom:2rem;display:grid}h2,.page-hero h2{color:var(--charcoal);letter-spacing:0;overflow-wrap:break-word;margin:0;font-size:clamp(1.85rem,4.2vw,3.35rem);line-height:1.04}h3{color:var(--charcoal);letter-spacing:0;margin:0 0 .65rem;font-size:1.35rem;line-height:1.2}.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.service-showcase{grid-template-columns:repeat(6,minmax(0,1fr));gap:1rem;display:grid}.service-card,.info-card,.step-card,.case-card,.business-grid article,.accordion-list details{border:1px solid var(--border);box-shadow:var(--soft-shadow);background:#ffffffe6;border-radius:8px}.service-card,.info-card,.step-card,.case-card,.business-grid article{padding:1.25rem}.service-card{grid-column:span 2;align-content:start;min-height:100%;display:grid;overflow:hidden}.service-showcase .service-card:nth-child(-n+2){grid-column:span 3}.service-card--image{padding:0}.service-card--image h3,.service-card--image p,.service-card--image a,.service-card--image .card-kicker{margin-inline:1.15rem}.service-card--image h3{margin-top:1rem}.service-card--image a{margin-bottom:1.15rem}.card-media{aspect-ratio:16/11;background:var(--linen);overflow:hidden}.service-card a{margin-top:.75rem;font-weight:900;display:inline-flex}.service-icon{background:var(--blush);width:44px;height:44px;color:var(--rose-dark);border-radius:8px;place-items:center;margin-bottom:1rem;display:grid}.page-hero__image,.feature-photo,.case-card__image{border:1px solid var(--border);background:var(--linen);box-shadow:var(--shadow);border-radius:12px;overflow:hidden}.page-hero__image{aspect-ratio:5/4}.feature-photo{aspect-ratio:4/3}.case-card__image{aspect-ratio:16/10;box-shadow:none;border-width:0 0 1px;border-radius:8px 8px 0 0;margin:-1.25rem -1.25rem 1rem}.journey-line{counter-reset:step;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.journey-line li{border:1px solid var(--border);box-shadow:var(--soft-shadow);background:#fff;border-radius:10px;padding:1.2rem;position:relative}.journey-line li:after{background:var(--rose);content:"";width:1rem;height:2px;position:absolute;top:2rem;right:-1rem}.journey-line li:last-child:after{display:none}.journey-line span{border:2px solid var(--rose-dark);width:38px;height:38px;color:var(--rose-dark);border-radius:50%;place-items:center;margin-bottom:1rem;font-weight:900;display:grid}.visual-stack{min-height:430px;position:relative}.visual-stack .feature-photo{position:absolute;inset:0 10% 72px 0}.mini-form{width:min(78%,360px);box-shadow:var(--shadow);background:#fffdf9f5;border:1px solid #7e254538;border-radius:12px;padding:1rem;position:absolute;bottom:0;right:0}.mini-form__bar{background:var(--rose-dark);border-radius:99px;width:42%;height:8px;margin-bottom:.85rem;display:block}.feature-copy>*+*{margin-top:1rem}.before-after{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.before-after figure{border:1px solid var(--border);box-shadow:var(--soft-shadow);background:#fff;border-radius:12px;margin:0;overflow:hidden}.before-after picture{aspect-ratio:16/11}.before-after img{object-fit:cover;width:100%;height:100%}.before-after figcaption{padding:.95rem 1rem;font-weight:850}.proof-list,.tag-list,.photo-prompts,.prep-grid{flex-wrap:wrap;gap:.55rem;margin-top:1rem;display:flex}.proof-list span,.tag-list span,.photo-prompts span,.prep-grid span{border:1px solid var(--border);color:var(--ink);background:#fff;border-radius:999px;padding:.48rem .72rem;font-size:.92rem;font-weight:800}.business-feature{border-block:1px solid var(--border);background:linear-gradient(135deg,#fffaf4,#fff1f5)}.map-motif{border:1px solid var(--border);min-height:320px;box-shadow:var(--soft-shadow);background-color:#fffaf4;background-image:linear-gradient(90deg,#a76f4329 1px,#0000 1px),linear-gradient(#a76f4321 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:34px 34px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border-radius:12px;position:relative;overflow:hidden}.map-pin{z-index:3;background:var(--rose-dark);color:#fff;border-radius:999px;padding:.72rem 1rem;font-weight:900;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ring{border:2px solid #7e25453d;border-radius:50%;position:absolute;inset:18%}.ring--two{border-color:#4f74675c;inset:32%}.business-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.capability{background:#fffdf9b8}.info-card--accent{background:linear-gradient(#fff,#fff6f8);border-color:#7e254547}.prep-grid{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.step-list{counter-reset:step;gap:.9rem;margin:0;padding:0;list-style:none;display:grid}.step-list li{counter-increment:step;grid-template-columns:44px minmax(0,1fr);align-items:start;gap:.85rem;display:grid}.step-list li:before{border:2px solid var(--rose-dark);width:38px;height:38px;color:var(--rose-dark);content:counter(step);background:#fff;border-radius:50%;place-items:center;font-weight:900;display:grid}.content-narrow{width:min(100% - 2rem,820px);margin:0 auto}.copy-block>*+*{margin-top:1rem}.form-section{background:linear-gradient(#f4eee6a8,#fffdf9eb)}.form-layout{grid-template-columns:minmax(260px,.42fr) minmax(0,.72fr);align-items:start;gap:clamp(1rem,4vw,2rem);display:grid}.form-aside{border:1px solid var(--border);box-shadow:var(--soft-shadow);background:#fffdf9eb;border-radius:12px;padding:1.25rem;position:sticky;top:98px}.quote-form{gap:1rem;display:grid}.form-shell{border:1px solid var(--border);min-width:0;box-shadow:var(--shadow);background:#fff;border-radius:12px;overflow:hidden}.form-toolbar{background:var(--linen);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:1rem;display:grid}.form-progress{grid-template-columns:repeat(5,minmax(0,1fr));gap:.35rem;display:grid}.form-progress span{background:#b83f6838;border-radius:99px;height:8px}.form-progress span.active{background:var(--rose-dark)}.autosave-pill{color:var(--sage);background:#fff;border:1px solid #4f746747;border-radius:999px;padding:.36rem .65rem;font-size:.84rem;font-weight:850}.form-step{border:0;min-width:0;margin:0;padding:clamp(1rem,4vw,2rem);display:none}.form-step.active{animation:.18s ease-out stepIn;display:block}.form-step legend{color:var(--charcoal);padding:0;font-size:clamp(1.35rem,3vw,1.8rem);font-weight:900}.form-note,.review-panel{border-left:4px solid var(--sage);background:#eef7f2;padding:.85rem 1rem}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem;display:grid}.field{gap:.35rem;min-width:0;display:grid}.field.full{grid-column:1/-1}label,legend{color:var(--charcoal);font-weight:850}input,select,textarea{width:100%;min-width:0;min-height:46px;color:var(--charcoal);background:#fff;border:1px solid #b9aea8;border-radius:8px;padding:.72rem .78rem}textarea{resize:vertical;min-height:128px}.upload-field input[type=file]{background:var(--blush);border-style:dashed;border-color:#7e254573;min-height:90px}.checkbox-field span{grid-template-columns:22px minmax(0,1fr);align-items:start;gap:.55rem;display:grid}.checkbox-field input{width:18px;min-height:18px;margin-top:.2rem}.turnstile-box{background:#fff8fa;border:1px solid #7e254529;border-radius:10px;grid-column:1/-1;justify-items:start;gap:.35rem;min-width:0;padding:.85rem;display:grid}.hint,.small,.error-text{color:var(--muted);font-size:.92rem}.error-text{color:#9f1d35;font-weight:800}.form-message{border-left:4px solid var(--sage);background:#eef7f2;margin-top:1rem;padding:1rem}.form-message[hidden]{display:none}.check-list{gap:.65rem;padding-left:1.2rem;display:grid}.accordion-list{gap:.75rem;display:grid}.accordion-list details{padding:1rem 1.15rem}.accordion-list summary{cursor:pointer;color:var(--charcoal);font-weight:900}.stock-note{text-transform:none;letter-spacing:0;margin-top:1rem}.cta-band{background:linear-gradient(135deg, #7e254559, transparent), var(--plum);color:#fff;padding:clamp(2.2rem,5vw,3.4rem) 0}.cta-band h2,.cta-band p{color:#fff}.cta-band .section-inner{justify-content:space-between;align-items:center;gap:1rem;display:flex}.cta-band .button-secondary{color:#fff;background:0 0;border-color:#ffffffa6}.site-footer{border-top:1px solid var(--border);color:#fff;background:#2b292d;padding:2rem 0 6rem}.site-footer a{color:#fff}.footer-grid{grid-template-columns:1.2fr repeat(3,minmax(0,.6fr));gap:1.25rem;display:grid}.footer-grid ul{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.mobile-actions{z-index:90;border:1px solid var(--border);box-shadow:var(--shadow);background:#fffdf9f5;border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;padding:.5rem;display:none;position:fixed;bottom:.75rem;left:.75rem;right:.75rem}.mobile-actions a{background:var(--rose-dark);color:#fff;border-radius:8px;place-items:center;min-width:0;min-height:46px;font-size:.94rem;font-weight:900;text-decoration:none;display:grid}.mobile-actions a:nth-child(2){background:var(--sage)}.mobile-actions a:nth-child(3){background:var(--charcoal)}[data-reveal]{opacity:1;transform:none}@keyframes pathPulse{0%,to{transform-origin:0;opacity:.72;transform:scaleX(.72)}50%{opacity:1;transform:scaleX(1)}}@keyframes stepIn{0%{opacity:.72;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.js [data-reveal]{opacity:1;transform:none}}@media (width<=1080px){.nav-links{border-bottom:1px solid var(--border);background:var(--paper);max-height:calc(100vh - 76px);padding:1rem;display:none;position:fixed;inset:76px 0 auto;overflow:auto}.nav-links.open{display:grid}.nav-links a{min-height:44px}.menu-toggle{display:inline-grid}}@media (width<=980px){.hero .section-inner,.page-hero--visual .section-inner,.section-header,.grid,.grid.two,.footer-grid,.form-layout,.business-grid{grid-template-columns:1fr}.service-showcase{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card,.service-showcase .service-card:nth-child(-n+2){grid-column:auto}.hero-gallery{min-height:430px}.form-aside{position:static}.journey-line{grid-template-columns:repeat(2,minmax(0,1fr))}.journey-line li:after{display:none}}@media (width<=720px){body{padding-bottom:74px}.nav-wrap,.section-inner,.content-narrow{width:min(100% - 1.25rem, var(--max))}.hero{min-height:auto}.hero .section-inner,.page-hero--visual .section-inner{padding:2.6rem 0}.hero-copy,.page-hero--visual .section-inner>div:first-child{width:min(100%,100vw - 1.25rem);max-width:calc(100vw - 1.25rem)}.hero p,.page-hero p,.lead{max-width:min(31ch,100%)}.form-aside h2,.info-card h2,.accordion-list+h2{max-width:14ch}.form-aside p,.info-card p,.case-card p{overflow-wrap:break-word;max-width:min(34ch,100%)}.hero h1,.page-hero h1{max-width:11ch}.hero-gallery{min-height:360px}.hero-photo--main{inset:0 0 52px 32px}.hero-photo--small{width:44%}.quote-chip{width:min(68%,280px);right:0}.assembly-path{grid-template-columns:repeat(4,28px);bottom:76px;right:4%}.trust-strip,.trust-row .section-inner,.before-after,.form-grid,.journey-line,.prep-grid,.service-showcase,.form-toolbar{grid-template-columns:1fr}.visual-stack{min-height:auto}.visual-stack .feature-photo,.mini-form{width:100%;position:relative;inset:auto}.mini-form{margin-top:1rem}.nav-actions .button-secondary,.nav-actions .button{display:none}.mobile-actions,.cta-band .section-inner{display:grid}}@media (width<=390px){.brand span:last-child{max-width:13rem}.brand small{font-size:.7rem}}@media (width<=360px){.nav-wrap,.section-inner,.content-narrow{width:min(100% - 1rem, var(--max))}.button,.button-secondary,.button-quiet,.text-link{width:100%}.mobile-actions{left:.5rem;right:.5rem}}
