*,*::before,*::after{box-sizing:border-box}html{background:var(--canvas);color:var(--ivory);scroll-behavior:auto;scrollbar-gutter:stable}body{margin:0;font:400 17px/1.6 var(--f-text);-webkit-font-smoothing:antialiased}h1,h2,h3,p,figure{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}img,video{display:block;max-width:100%}button,a,summary{-webkit-tap-highlight-color:transparent}button{border:0}button:disabled{cursor:default}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:6px}::selection{background:var(--gold);color:var(--canvas)}[hidden]{display:none!important}section,details{scroll-margin-top:110px}.wrap{width:min(1400px,100%);padding-inline:clamp(24px,5vw,80px);margin-inline:auto}.section{padding-block:124px}.eyebrow{font:400 12px/1.5 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}h1,h2,h3{font-family:var(--f-display);font-weight:300;line-height:1.1}h1{font-size:clamp(64px,8vw,124px);letter-spacing:-.04em}h2{font-size:clamp(42px,5.2vw,78px);letter-spacing:-.035em}h3{font-size:clamp(25px,2.2vw,34px)}em{color:var(--gold);font-weight:300}.skip{position:fixed;left:20px;top:15px;z-index:90;padding:14px 20px;background:var(--ivory);color:var(--canvas);transform:translateY(-180%)}.skip:focus{transform:none}.index{font:12px/1.4 var(--f-mono);color:var(--gold)}.pill{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-height:50px;border:1px solid #9a978f;border-radius:40px;padding:13px 24px;font-size:14px;line-height:1.4;transition:background .2s,border-color .2s}.pill:hover{border-color:var(--gold);background:#c9a96112}.pill.small{min-height:42px;padding:10px 19px;font-size:13px;gap:12px}.text-link{display:inline-flex;align-items:center;gap:20px;font-size:14px;min-height:44px;border-bottom:1px solid #f2efe836;width:fit-content}.text-link:hover{color:var(--gold);border-color:var(--gold)}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px 28px}
.header{position:absolute;top:0;left:0;width:100%;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:24px;height:102px;padding:0 clamp(24px,3vw,52px);background:#0b0b0cdd;border-bottom:1px solid #f2efe818}.brand{width:146px;height:83px;overflow:hidden;display:block;flex-shrink:0}.brand img{width:146px;height:146px;max-width:none;object-fit:contain;margin-top:-29px;mix-blend-mode:screen}.desktop-nav{display:flex;gap:28px;font-size:13px;letter-spacing:.04em}.desktop-nav a:hover{color:var(--gold)}.header-actions{display:flex;align-items:center;gap:22px}.header-phone{font:12px var(--f-mono);letter-spacing:.04em}.menu-button{display:none;background:transparent;font-size:14px;padding:12px 0}.menu-button span{padding-left:10px}.menu-logo{mix-blend-mode:screen}.menu-close{align-self:flex-end;background:transparent;padding:12px}dialog{position:fixed;inset:0;margin:0 0 0 auto;width:min(520px,100%);height:100%;max-height:100%;max-width:100%;border:0;background:var(--canvas);color:var(--ivory);padding:22px 32px}dialog[open]{display:flex;flex-direction:column;align-items:flex-start;gap:24px}dialog::backdrop{background:#000b}dialog nav{display:flex;flex-direction:column;gap:18px;font:300 32px var(--f-display);margin-bottom:20px}body.menu-open{overflow:hidden}
.hero{min-height:800px;height:100svh;position:relative;isolation:isolate;display:flex;align-items:center;padding-top:130px;padding-bottom:100px;overflow:hidden}.hero-media,.hero-media img,.hero-film,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-media img,.hero-film{object-fit:cover;object-position:100% 50%}.hero-film{max-width:none;opacity:0;pointer-events:none}.hero.has-frame .hero-film{opacity:1}.hero-shade{z-index:1}.hero-shade{background:linear-gradient(90deg,#080809bf,transparent 78%),linear-gradient(0deg,#0b0b0c 0%,#0b0b0c24 65%,#0b0b0c20)}.hero-content{position:relative;z-index:2;padding-top:70px}.hero-content>.eyebrow{margin-bottom:28px}.hero h1{max-width:850px}.hero-bottom{display:flex;justify-content:space-between;gap:40px;align-items:flex-end;margin-top:40px}.hero-bottom p{font-size:18px;line-height:1.6;color:#e2dfd7}.hero-bottom .actions{align-items:flex-start;flex-direction:column;gap:10px}.hero-foot{position:absolute;z-index:2;bottom:28px;left:clamp(24px,5vw,80px);right:clamp(24px,5vw,80px);display:flex;justify-content:space-between;font:12px var(--f-mono);color:#d0cbc0}.hero-foot>span{text-transform:uppercase;letter-spacing:.1em}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:58px}.section-head .eyebrow{margin-bottom:20px}.section-head>p{max-width:320px;color:#c4c0b7}.services-layout{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start}.service-photo{height:610px;position:relative}.service-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 50%}.service-photo:after{position:absolute;content:'';inset:55% 0 0;background:linear-gradient(transparent,#07080abf)}.service-photo figcaption{position:absolute;left:25px;bottom:24px;z-index:1;font-size:13px}.service{border-top:1px solid var(--hairline)}.service:last-child{border-bottom:1px solid var(--hairline)}.service summary{display:flex;align-items:center;gap:22px;list-style:none;padding:26px 0;cursor:pointer}.service summary::-webkit-details-marker{display:none}.service summary h3{font-size:clamp(24px,2vw,31px);flex:1}.service-plus{font:300 25px var(--f-text);color:var(--muted)}.service[open] .service-plus{font-size:0}.service[open] .service-plus:after{content:'−';font-size:25px;color:var(--gold)}.service[open] summary h3{color:var(--gold)}.service-body{padding:0 0 28px 39px;color:#c4c0b7;font-size:16px}.service-body .text-link{margin-top:15px;color:var(--ivory)}
.products-section{background:#121214;padding-block:124px}.product-picker{display:flex;gap:0;overflow-x:auto;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);margin-bottom:42px;scrollbar-width:thin;scrollbar-color:#6e5f3c transparent}.product-tab{min-width:145px;flex:1;padding:20px 12px;display:flex;flex-direction:column;gap:6px;font-size:13px;white-space:nowrap;border-bottom:2px solid transparent;margin-bottom:-1px}.product-tab>span{font:12px var(--f-mono);letter-spacing:.08em;color:#9e9a91}.product-tab[aria-selected=true]{border-color:var(--gold);color:var(--gold)}.product-tab[aria-selected=true]>span{color:var(--ivory)}.product-panel{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:center;min-height:530px;margin-bottom:50px}.product-panels.enhanced .product-panel{margin-bottom:0}.product-visual{height:510px;position:relative;display:flex;align-items:center;justify-content:center;background:#e8e8e6;padding:28px 25px 60px}.product-visual .packshot{width:100%;height:100%;object-fit:contain}.product-visual figcaption{position:absolute;bottom:18px;left:24px;right:24px;color:#535350;font-size:12px;line-height:1.5;text-align:center}.product-copy .eyebrow{margin-bottom:18px}.product-copy h3{font-size:clamp(38px,3.5vw,54px);line-height:1.15}.product-category{font-size:14px;color:var(--gold);margin-top:22px}.product-benefit{font-size:18px;color:#d0ccc4;max-width:440px;margin-top:24px}.product-links{display:flex;flex-direction:column;gap:12px;margin-top:30px}.product-note{color:#a5a097;font-size:13px;margin-top:24px;max-width:430px}.materials-footnote{padding-top:36px;margin-top:36px;border-top:1px solid var(--hairline);font-size:13px;max-width:780px;color:#aaa69d}
.process-list{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;padding:0;margin:0}.process-list img{width:100%;height:280px;object-fit:cover}.process-list li:nth-child(2) img{object-position:25% 50%}.process-label{display:flex;gap:14px;align-items:baseline;margin:24px 0 14px}.process-label h3{font-size:25px;line-height:1.2}.process-list p{font-size:15px;color:#c0bcb3;line-height:1.7}.projects-section{padding-top:30px}.projects{display:grid;grid-template-columns:1fr 1fr;gap:48px}.project-image{display:block;height:620px;overflow:hidden}.project-image img{width:100%;height:100%;object-fit:cover}.project:first-child .project-image img{object-position:50% 82%}.project:last-child{padding-top:100px}.project h3{font-size:34px;margin-top:25px}.project p{font-size:15px;color:#b7b2a8;margin-top:12px}.project .text-link{margin-top:12px}
.location{position:relative;min-height:790px;height:92svh;max-height:1000px;display:flex;align-items:center;isolation:isolate;overflow:hidden}.location-photo,.location-shade{position:absolute;inset:0;width:100%;height:100%}.location-photo{object-fit:cover;object-position:70% 50%}.location-shade{background:linear-gradient(90deg,#08080ae8 0%,#08080aa8 34%,#08080a14 75%),linear-gradient(0deg,#08080aa6,transparent 60%)}.location-content{position:relative;z-index:1}.location .eyebrow{margin-bottom:22px}.location h2{font-size:clamp(58px,7vw,100px)}.location address{font-style:normal;color:#d5d0c5;margin-top:28px;font-size:17px;line-height:1.7}.location .actions{margin-top:32px}.location-phone{display:block;margin-top:30px;font:18px var(--f-mono)}.closing{padding-block:94px 110px;text-align:center}.closing>img{width:140px;height:140px;margin:0 auto 24px;mix-blend-mode:screen}.closing h2{margin:20px 0 25px}.footer{padding-top:48px;padding-bottom:24px;border-top:1px solid var(--hairline);display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:36px;color:#c0bbae;font-size:14px}.footer-name{font:13px var(--f-mono);color:var(--ivory);letter-spacing:.14em}.footer p{margin-top:17px}.footer>div>a{display:block;width:fit-content;padding-bottom:12px}.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid var(--hairline);padding-top:24px;margin-top:20px;font-size:12px;color:#9b9588}
@media(min-width:1800px){.hero-content{padding-top:80px}.hero h1{font-size:140px}.hero-bottom{margin-top:50px}}
@media(max-width:1100px){.desktop-nav{gap:18px}.header-phone{display:none}.header{height:90px}.services-layout{gap:35px}.service-photo{height:570px}.product-panel{gap:36px}.process-list{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:44px}.process-list img{height:340px}.project-image{height:500px}.section,.products-section{padding-block:95px}.hero{min-height:780px}.hero-bottom{align-items:flex-start}.hero-bottom .actions{max-width:270px}.product-tab{min-width:145px}.product-visual{height:460px}}
@media(max-width:767px){html{scrollbar-gutter:auto}.wrap{padding-inline:24px}.header{height:82px;padding-inline:20px;gap:12px}.brand{width:116px;height:74px}.brand img{width:116px;height:116px;margin-top:-17px}.desktop-nav{display:none}.header .pill{display:none}.header-actions{gap:12px}.menu-button{display:block}.hero{height:100svh;min-height:760px;padding-top:100px;padding-bottom:64px;align-items:stretch}.hero-media img,.hero-film{object-position:50% 40%}.hero-shade{background:linear-gradient(0deg,#08080bef 0%,#08080b8a 43%,#08080b0d 78%)}.hero-content{padding-top:16px;display:flex;flex-direction:column}.hero h1{font-size:clamp(58px,13.8vw,90px);line-height:1.04}.hero-content>.eyebrow{max-width:280px;font-size:11px;line-height:1.8;margin-bottom:22px}.hero-bottom{display:block;margin-top:auto}.hero-bottom p{display:none}.hero-bottom .actions{margin-top:0;max-width:none;gap:8px}.hero .pill{font-size:13px;min-height:48px}.hero .text-link{font-size:13px}.hero-foot{left:24px;right:24px;bottom:22px;font-size:11px}.hero-foot>span{display:none}.hero-foot>a{margin-left:auto}.section,.products-section{padding-block:74px}.section-head{display:block;margin-bottom:36px}.section-head .eyebrow{margin-bottom:17px;font-size:11px}.section-head>p,.section-head>.text-link{margin-top:24px}.section-head>p{font-size:16px}.services-layout{display:block}.service-photo{height:340px;margin-bottom:30px}.service-photo figcaption{font-size:12px;left:20px;bottom:20px}.service summary{padding-block:23px;gap:14px}.service summary h3{font-size:26px}.service-body{padding-left:31px;font-size:16px}.product-picker{margin-inline:-24px;padding-inline:24px;margin-bottom:28px}.product-tab{min-width:153px;padding:18px 16px}.product-panel{display:block;min-height:0}.product-visual{height:365px;margin-bottom:30px;padding:22px 20px 62px}.product-visual figcaption{font-size:11px;left:18px;right:18px}.product-copy h3{font-size:42px}.product-copy .eyebrow{margin-bottom:14px}.product-category{margin-top:18px}.product-benefit{font-size:17px;margin-top:20px}.product-links{margin-top:22px;gap:8px}.materials-footnote{font-size:12px;margin-top:30px;padding-top:24px}.process-list{gap:30px 16px}.process-list img{height:210px}.process-label{display:block;margin-top:18px}.process-label .index{display:block;margin-bottom:10px}.process-label h3{font-size:23px;line-height:1.25}.process-list p{font-size:14px}.projects-section{padding-top:10px}.projects{display:block}.project-image{height:500px}.project:last-child{padding-top:45px}.project h3{font-size:31px}.project p{font-size:14px}.location{height:90svh;min-height:740px}.location-photo{object-position:62% 45%}.location-shade{background:linear-gradient(0deg,#08080be8 0%,#08080b95 55%,#08080b10 100%)}.location-content{padding-top:190px}.location .eyebrow{font-size:11px;max-width:240px}.location h2{font-size:65px}.location address{font-size:16px;max-width:290px}.location .actions{gap:14px;margin-top:25px;align-items:flex-start;flex-direction:column}.location-phone{font-size:17px;margin-top:20px}.closing{padding-block:50px 70px}.closing h2{font-size:44px}.closing .eyebrow{font-size:11px}.closing>img{width:125px;height:125px;margin-bottom:15px}.footer{grid-template-columns:1fr 1fr;gap:25px 20px;font-size:13px;padding-top:35px}.footer>div:first-child{grid-column:1/-1}.footer-name{font-size:12px}.footer-bottom{font-size:11px;gap:20px}.footer p{margin-top:12px}}
@media(max-width:370px){.wrap{padding-inline:20px}.hero h1{font-size:55px}.hero{min-height:730px}.process-list{grid-template-columns:1fr}.process-list img{height:300px}.service summary h3{font-size:24px}.product-copy h3{font-size:36px}.project-image{height:420px}.footer{grid-template-columns:1fr}.footer>div:first-child{grid-column:auto}.footer-bottom{flex-direction:column;gap:10px}.closing h2{font-size:39px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

.brand{mix-blend-mode:screen}.project:nth-child(2){padding-top:100px}.project:nth-child(3){grid-column:1/-1;padding-top:20px}.project:nth-child(3) .project-image{height:540px}.project:nth-child(3) .project-image img{object-position:50% 57%}@media(max-width:767px){.project:nth-child(2),.project:nth-child(3){padding-top:45px}.project:nth-child(3) .project-image{height:400px}}

.product-picker{overflow-y:hidden;min-height:84px}
.product-visual.photo{padding:0;background:#08080a}.product-visual.photo .packshot{object-fit:cover}.product-visual.photo:after{content:"";position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#050506d9)}.product-visual.photo figcaption{color:#f2efe8;z-index:1}.product-visual:not(.photo){background:#fff}

.header{background:#000}

@media(prefers-reduced-motion:reduce){.hero-film{opacity:0!important}}

/* Keep the front plate and application area clear of the contact links. */
@media(min-width:768px){.hero-bottom{flex-direction:column;align-items:flex-start;gap:22px;margin-top:30px}.hero-bottom .actions{flex-direction:row;align-items:center;gap:24px;max-width:none}}
@media(min-width:768px) and (max-aspect-ratio:4/5){.hero{align-items:stretch;padding-top:120px;padding-bottom:90px}.hero-content{display:flex;flex-direction:column;padding-top:24px}.hero h1{font-size:clamp(68px,9vw,94px)}.hero-bottom{display:block;margin-top:auto}.hero-bottom>p{display:none}.hero-media img,.hero-film{object-position:50% 40%}.hero-shade{background:linear-gradient(0deg,#08080bee 0%,#08080b55 34%,#08080b12 68%,#08080b36 100%)}}

/* Mobile products use native scrolling; desktop and no-JS stay readable tabs/articles. */
.product-navigation{display:none}
@media(max-width:767px){
  .product-navigation{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-10px 0 22px}
  .product-swipe-hint{color:#aaa69d;font-size:12px;letter-spacing:.02em}
  .product-navigation-actions{display:flex;align-items:center;gap:9px}
  .product-navigation button{display:grid;place-items:center;width:44px;min-width:44px;height:44px;padding:0;border:1px solid var(--hairline);border-radius:50%;background:transparent;font-size:21px;color:var(--ivory)}
  .product-navigation button:disabled{opacity:.3}
  .product-navigation button:not(:disabled):hover{border-color:var(--gold);color:var(--gold)}
  .product-count{min-width:49px;text-align:center;font:11px var(--f-mono);color:var(--gold);white-space:nowrap}
  .product-panels.is-carousel{display:flex;gap:20px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .product-panels.is-carousel::-webkit-scrollbar{display:none}
  .product-panels.is-carousel .product-panel{flex:0 0 100%;width:100%;min-width:0;margin:0;scroll-snap-align:start;scroll-snap-stop:always;padding:6px 6px 10px}
  .product-panels.is-carousel .product-visual{margin-top:-6px;margin-inline:-6px}
  .product-panels.is-carousel .product-panel:focus-visible{outline:1px solid var(--gold);outline-offset:-1px}
  .product-panels.is-carousel .product-links{padding-inline:1px}
}
@media(max-width:370px){.product-swipe-hint{font-size:11px}.product-navigation-actions{gap:5px}.product-count{min-width:43px}}
