:root{--ice:#ddf5f6;--red:#b40103;--ink:#202426;--muted:#526064;--line:#b9d1d2}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--ice);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--red);outline-offset:5px}.skip{position:fixed;top:-80px;z-index:100;background:white;padding:16px}.skip:focus{top:10px}header{position:fixed;top:0;left:0;right:0;z-index:30;padding:20px 5%;display:flex;justify-content:space-between;align-items:center;background:#ddf5f6f2;border-bottom:1px solid var(--line);transform:translateY(-110%);transition:transform .3s}header.visible{transform:translateY(0)}.brand{font-size:16px;font-weight:800;letter-spacing:-.5px}.brand span{display:block;font-size:8px;letter-spacing:3px;margin-top:5px}nav{display:flex;align-items:center;gap:30px;font-size:12px}.nav-cta{background:var(--ink);color:white;padding:12px 18px}.hero{height:440vh}.hero-stage{height:100svh;position:sticky;top:0;overflow:hidden;background:var(--ice)}#reveal,.slide-bg{position:absolute;width:100%;height:100%;inset:0}#reveal{object-fit:cover}.slide-bg{background:var(--ice)}.hero-copy{position:absolute;left:7%;top:50%;transform:translateY(-50%);width:44%;z-index:3}.eyebrow{font-size:11px;letter-spacing:2.3px;font-weight:700;color:var(--red);line-height:1.6}.hero-copy .eyebrow{border-left:2px solid var(--red);padding-left:16px;margin-bottom:36px}h1{font-size:clamp(36px,4.3vw,76px);line-height:1.07;font-weight:500;letter-spacing:-2.8px;margin:0 0 30px}p{line-height:1.7}.intro{color:var(--muted);font-size:15px;max-width:400px}.service-line{font-size:9px;font-weight:700;letter-spacing:2px;line-height:2;margin-top:30px}.service-line b{color:var(--red);padding:0 8px}#hero-logo{position:absolute;left:74%;top:49%;width:37%;transform:translate(-50%,-50%);z-index:4;text-align:center;will-change:left,top,width}.scroll-cue{position:absolute;bottom:8%;left:7%;font-size:10px;letter-spacing:2px;z-index:5}.scroll-cue span{color:var(--red);margin-left:30px;font-size:22px}.slide-number{position:absolute;right:6%;bottom:8%;font-size:8px;letter-spacing:2px;opacity:.55}.reveal-caption{position:absolute;bottom:6%;left:7%;color:white;opacity:0;background:linear-gradient(90deg,#172127dd,transparent);padding:25px;pointer-events:none}.reveal-caption .eyebrow{color:#e8dfe0}.reveal-caption h2{font-size:clamp(25px,3.5vw,54px);margin:10px 0 20px}.light-link{font-size:13px}.section{padding:110px 7%}.section-heading{display:grid;grid-template-columns:1fr 1.9fr 1.1fr;gap:35px;align-items:start;margin-bottom:55px}.section-heading p{margin:0}.section-heading>p:last-child{font-size:14px;color:var(--muted)}h2{font-weight:500;font-size:clamp(32px,3.5vw,55px);line-height:1.12;letter-spacing:-1.8px;margin:0}h3{font-weight:500}.services{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.service img{width:100%;height:300px;object-fit:cover;filter:saturate(.8);transition:filter .3s}.service:hover img{filter:saturate(1.1)}.service>div{position:relative;border-top:1px solid var(--ink);padding-top:18px;margin-top:18px}.service span{font-size:10px;color:var(--red)}.service h3{font-size:24px;margin:13px 0}.service p{font-size:13px;color:var(--muted);padding-right:10px}.service b{position:absolute;right:0;top:18px;font-size:22px;font-weight:400}.image-note{font-size:10px;color:var(--muted)}.builder{background:#cfe5e6;clip-path:polygon(0 30px,100% 0,100% 100%,0 100%)}.builder-layout{display:grid;grid-template-columns:2.3fr 1fr;gap:35px}.room-wrap{align-self:start;background:#bdc8c9}#room{display:block;width:100%}[data-equipment]{opacity:0;transition:opacity .35s}[data-equipment].active{opacity:1}.room-caption{display:flex;justify-content:space-between;padding:18px;font-size:8px;letter-spacing:1px;background:#bcd3d4}.builder-controls .eyebrow{margin-top:0}#equipment-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}.equipment{padding:13px 9px;background:transparent;border:1px solid #8fa8aa;text-align:left;font-size:11px;cursor:pointer;display:flex;justify-content:space-between}.equipment[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}#selection-summary{font-size:12px;min-height:40px}.button{background:var(--red);color:white;display:inline-block;padding:18px 23px;border:0;font-size:12px;cursor:pointer;line-height:1.4}.builder .button{display:block;text-align:center}.reset{background:none;border:0;border-bottom:1px solid;padding:0 0 4px;font-size:11px;cursor:pointer;margin:20px 0}.builder small{display:block;font-size:10px;color:var(--muted);line-height:1.7}.work figure{margin:0}.work img{width:100%;height:550px;object-fit:cover}.work figcaption{display:flex;justify-content:space-between;gap:20px;margin-top:20px;font-size:9px;letter-spacing:1px}.process{border-top:1px solid var(--line)}.process h2{margin:30px 0 60px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:55px}.steps article{border-top:1px solid #9aafb0;padding-top:25px}.steps span{font-size:10px;color:var(--red);letter-spacing:2px}.steps h3{font-size:24px;letter-spacing:-.6px}.steps p{font-size:14px;color:var(--muted)}.quote{background:#eff8f7;display:grid;grid-template-columns:1fr 1.4fr;gap:10%}.quote h2{margin:25px 0}.quote>div>p{font-size:14px}.quote>div>a{display:block;font-size:14px;margin:22px 0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}label{display:block;font-size:11px;color:#435155}input,textarea{display:block;width:100%;border:0;border-bottom:1px solid #97acad;background:transparent;padding:12px 0;color:var(--ink);border-radius:0}textarea{resize:vertical}fieldset{border:0;padding:0;margin:30px 0}legend{font-size:11px;margin-bottom:14px}#form-services{display:flex;flex-wrap:wrap;gap:12px 20px}#form-services label{display:flex;align-items:center;gap:7px}input[type=checkbox]{width:14px;accent-color:var(--red)}.upload{margin:24px 0}.upload input{font-size:11px}.upload small,.form-note{font-size:10px;line-height:1.7;color:var(--muted)}.upload small{display:block;margin-top:8px}#form-status{font-size:12px}.closing{position:relative;height:600px;color:white}.closing>img{width:100%;height:100%;object-fit:cover;filter:brightness(.4)}.closing>div{position:absolute;left:7%;top:25%}.closing .eyebrow{color:#f7bac0}.closing h2{font-size:clamp(38px,5vw,75px);margin:20px 0 30px}footer{padding:40px 7%;display:flex;justify-content:space-between;gap:25px;align-items:center}footer>span,footer>a:last-of-type{font-size:9px;letter-spacing:1px}@media(min-width:1600px){.section{padding-left:max(7%,calc((100vw - 1450px)/2));padding-right:max(7%,calc((100vw - 1450px)/2))}}@media(max-width:800px){nav{gap:15px}nav a:not(.nav-cta){display:none}.hero-copy{top:31%;width:86%}h1{font-size:clamp(32px,7vw,51px);letter-spacing:-1.5px}.hero-copy .eyebrow{margin-bottom:20px}.intro{font-size:12px;max-width:75%}.service-line{font-size:8px;margin-top:15px}#hero-logo{left:69%;top:74%;width:48%}.slide-number{display:none}.section{padding:70px 6%}.section-heading{grid-template-columns:1fr;gap:22px}.section-heading>p:last-child{max-width:450px}.services{grid-template-columns:1fr 1fr}.service img{height:250px}.service h3{font-size:21px}.builder-layout{grid-template-columns:1fr}.work img{height:360px}.work figcaption{flex-direction:column}.steps{grid-template-columns:1fr;gap:25px}.quote{grid-template-columns:1fr;gap:35px}.closing{height:480px}footer{flex-wrap:wrap}.reveal-caption{left:3%;right:3%;bottom:5%}.reveal-caption .eyebrow{font-size:8px}}@media(max-width:430px){.service img{height:190px}.hero-copy{top:32%}.intro{max-width:95%}.form-grid{gap:20px 14px}#hero-logo{top:75%}.scroll-cue{bottom:5%}.service-line{letter-spacing:1px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}.hero{height:100svh}.reveal-caption{display:none}}

#hero-logo img{display:block;width:100%;height:auto}

.service:first-child img{object-position:64% 65%}.service:nth-child(2) img{object-position:35% 50%}.service:nth-child(3) img{object-position:78% 50%}.production-image{margin:0 0 55px}.production-image img{display:block;width:100%;height:auto;max-height:570px;object-fit:cover;object-position:center 65%}.production-image figcaption{margin-top:15px;font-size:10px;color:var(--muted);letter-spacing:1px}@media(max-width:800px){.production-image img{max-height:none;aspect-ratio:3/2}.production-image{margin-bottom:35px}}

/* Targeted responsive and accessibility corrections. */
.arrow-icon{display:inline-block;width:1.2em;height:1.2em;vertical-align:-.2em;fill:none;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}
.service b .arrow-icon{width:22px;height:22px}.scroll-cue .arrow-icon{width:22px;height:22px}
.quote input:not([type=checkbox]):focus,.quote textarea:focus{outline:none;border-bottom:2px solid var(--red);box-shadow:0 2px 0 var(--red)}
.quote input:not([type=checkbox]),.quote textarea{margin-top:7px}
.service:first-child img{object-position:center}
@media(max-width:800px){.work img{height:auto;display:block;width:100%;object-fit:contain}.hero-copy{top:8%;transform:none}.intro{max-width:100%}.scroll-cue{bottom:4%}}
@media(max-width:800px) and (max-height:650px){.hero-copy{top:4%}h1{font-size:30px;margin-bottom:16px}.hero-copy .eyebrow{margin-bottom:12px}.intro{font-size:11px}.service-line{margin-top:10px}}

.service:first-child img{object-position:64% 65%}
