@font-face{font-family:Sharp;src:url('assets/manrope-regular.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Sharp;src:url('assets/manrope-bold.ttf') format('truetype');font-weight:600 900;font-display:swap}
:root{--ink:#141414;--muted:#626262;--rule:#d2d2d2;--gutter:5vw;--ease:cubic-bezier(.2,.7,.2,1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:white;color:var(--ink);font-family:Sharp,'Helvetica Neue',sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;width:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1;letter-spacing:-.06em}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #15934d;outline-offset:7px}::selection{background:#141414;color:white}.skip{position:fixed;top:-100px;left:20px;background:white;color:black;z-index:200;padding:15px}.skip:focus{top:20px}.header{position:fixed;inset:0 0 auto;display:flex;align-items:flex-start;justify-content:space-between;padding:30px var(--gutter);z-index:100;color:white;mix-blend-mode:difference;pointer-events:none}.header a,.header button{pointer-events:auto}.brand{display:flex;gap:18px;align-items:center}.brand img{width:64px;height:76px;filter:invert(1)}.brand>span{font-size:11px;font-weight:700;letter-spacing:.08em;line-height:1.25}.menu-toggle{border:0;background:none;color:inherit;display:flex;align-items:center;gap:12px;padding:16px 0;cursor:pointer;font-size:20px;letter-spacing:-.05em}.menu-toggle i{height:17px;width:17px;border-radius:50%;background:currentColor;transition:transform .4s}.menu-toggle:hover i{transform:scale(.75)}.menu{position:fixed;inset:0;width:100%;max-width:none;height:100dvh;max-height:none;border:0;margin:0;padding:0;color:white;background:linear-gradient(90deg,#080808,#252525);overflow:auto;z-index:90}.menu[open]{animation:menu-in .6s var(--ease)}.menu-layout{display:grid;grid-template-columns:25% 50% 25%;min-height:100%;align-items:center}.menu-mark{font-size:25vw;line-height:.9;font-weight:800;text-align:center;letter-spacing:-.13em;transform:translateX(-.025em)}.menu nav{border-left:1px solid #444;border-right:1px solid #444;padding:170px 5vw 100px;display:flex;flex-direction:column;gap:25px;min-height:100%;justify-content:center}.menu nav a{font-size:clamp(30px,4.7vw,80px);font-weight:800;letter-spacing:-.075em;line-height:1;display:flex;justify-content:space-between;align-items:center;animation:item-in .8s var(--ease) both;animation-delay:calc(.16s + var(--i)*.07s);transition:opacity .3s}.menu nav a span{font-size:14px;letter-spacing:0;font-weight:400}.menu nav:has(a:hover) a:not(:hover){opacity:.3}.menu-contact{padding:130px 3vw 60px;display:flex;flex-direction:column;font-size:14px;gap:14px}.menu-contact p{margin-bottom:35px}.menu-contact a:last-child{margin-top:22px}.hero{height:max(760px,100svh);position:relative;color:white;overflow:hidden}.hero-photo{position:absolute;inset:0;overflow:hidden}.hero-photo img{height:100%;object-position:center 55%;animation:hero-image 1.8s var(--ease) both}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0008,#0001),linear-gradient(0deg,#0006,transparent 45%)}.hero-content{position:relative;height:100%;padding:165px var(--gutter) 45px;display:flex;flex-direction:column;justify-content:space-between}.eyebrow,.meta{font-size:12px;font-weight:600;letter-spacing:.1em;line-height:1.5}.hero-kicker{margin-bottom:26px}.hero h1{font-size:clamp(64px,9.3vw,166px);font-weight:800;letter-spacing:-.073em;line-height:.94;margin-bottom:auto}.line{display:block;overflow:hidden;padding-bottom:.09em;margin-bottom:-.09em}.line>span{display:block;animation:line-in 1.1s var(--ease) both}.line:nth-child(2)>span{animation-delay:.12s}.line:nth-child(3)>span{animation-delay:.24s}.hero-bottom{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-top:60px}.hero-bottom p{font-size:12px;letter-spacing:.04em;line-height:1.65}.scroll-note{writing-mode:vertical-rl;font-size:10px;letter-spacing:.14em}.pill{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;border:1px solid currentColor;border-radius:100px;padding:8px 9px 8px 24px;font-size:clamp(17px,1.8vw,27px);font-weight:400;letter-spacing:-.045em;line-height:1.4;min-height:53px;transition:background .4s,color .4s;white-space:nowrap;width:fit-content}.pill i{width:29px;height:29px;flex-shrink:0;border-radius:50%;background:currentColor}.pill:hover{background:var(--ink);color:white}.pill.light:hover{background:white;color:var(--ink)}.section{padding:100px var(--gutter)}.meta{display:flex;justify-content:space-between;gap:30px}.intro{padding-top:76px;padding-bottom:90px}.statement{font-size:clamp(40px,5.8vw,96px);font-weight:400;line-height:1.09;letter-spacing:-.065em;margin:95px 0 80px}.statement em{font-style:normal;color:#83837f}.intro-bottom{display:grid;grid-template-columns:1fr 1.6fr;align-items:start;gap:8vw}.intro-bottom p{font-size:clamp(22px,2.55vw,40px);font-weight:400;line-height:1.25;letter-spacing:-.045em}.materials{padding-top:70px;padding-bottom:80px}.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin-top:60px;align-items:start}.category:nth-child(2){margin-top:95px}.category:nth-child(3){margin-top:190px}.category-image{display:block;position:relative;overflow:hidden;aspect-ratio:.74}.category-image img{height:100%;transition:transform 1s var(--ease)}.category:first-child .category-image img{object-position:20% center}.category-image:hover img,.veneer:hover img{transform:scale(1.055)}.image-link{position:absolute;right:18px;bottom:18px;width:44px;height:44px;border-radius:50%;background:white;color:black;display:grid;place-items:center;font-size:27px;transition:transform .4s}.category-image:hover .image-link,.veneer:hover .image-link{transform:rotate(45deg)}.category-title{display:flex;align-items:center;justify-content:space-between;margin:20px 0 18px}.category-title h2{font-size:clamp(26px,3.4vw,58px);font-weight:400;letter-spacing:-.075em}.category-title>span{font-size:12px}.category>p{font-size:15px;line-height:1.65;color:var(--muted);max-width:350px}.category details{margin-top:23px;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}summary{list-style:none;cursor:pointer;padding:16px 0;font-size:12px;letter-spacing:.04em;display:flex;justify-content:space-between;align-items:center}summary::-webkit-details-marker{display:none}summary>span{font-size:23px;line-height:1;transition:transform .3s}details[open] summary>span{transform:rotate(45deg)}.range-content{padding:6px 0 24px;animation:item-in .4s var(--ease)}.small{font-size:14px;color:var(--muted)}.sample-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:18px}.sample-list figure{margin:0}.sample-list img{aspect-ratio:1;height:auto;object-fit:contain}.sample-list figcaption{font-size:12px;margin-top:8px}.laminate-brand{max-width:220px;height:auto;margin:8px 0 22px}.finish-list{list-style:none;padding:0;margin:22px 0;font-size:16px}.finish-list li{border-bottom:1px solid #ddd;padding:9px 0}.caption{font-size:12px;color:var(--muted)}.enquire{display:block;font-size:12px;font-weight:700;margin-top:23px;text-decoration:underline;text-underline-offset:5px}.materials-foot{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--rule);margin-top:100px;padding-top:30px;gap:25px}.materials-foot>span{font-size:12px;letter-spacing:.06em}.text-link{font-size:14px;border-bottom:1px solid currentColor;padding-bottom:5px}.grain{background:#171715;color:#fff;padding:80px var(--gutter) 85px}.grain-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin:75px 0 60px}.grain-heading h2{font-size:clamp(36px,5.8vw,95px);font-weight:400;letter-spacing:-.065em;line-height:1.02}.grain-heading p{font-size:15px;color:#b3b3ae;flex-shrink:0}.veneer-grid{display:grid;grid-template-columns:1fr 1.18fr 1fr;gap:28px;align-items:start}.veneer:nth-child(1){margin-top:70px}.veneer:nth-child(3){margin-top:140px}.veneer-photo{aspect-ratio:.7;overflow:hidden;position:relative}.veneer-photo img{height:100%;transition:transform 1s var(--ease)}.veneer>div:nth-child(2){display:flex;justify-content:space-between;align-items:start;gap:10px;margin-top:20px}.veneer h3{font-size:clamp(17px,1.65vw,27px);font-weight:400;letter-spacing:-.05em;line-height:1.2}.veneer>div>span:not(.image-link){font-size:12px;white-space:nowrap}.veneer small{display:block;font-size:10px;letter-spacing:.06em;color:#acaca5;margin-top:12px}.grain-footer{display:flex;justify-content:space-between;align-items:end;margin-top:75px;gap:30px}.grain-footer p{font-size:13px;color:#b3b3ae}.about{padding-top:100px;padding-bottom:65px}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:8vw;margin-top:90px}.about-year{font-size:clamp(90px,17vw,280px);line-height:.85;font-weight:600;letter-spacing:-.085em}.about-year span{font-size:11px;display:block;letter-spacing:.07em;margin-top:27px}.about-copy h2{font-size:clamp(32px,3.9vw,64px);font-weight:400;line-height:1.04;margin-bottom:35px}.about-copy p{font-size:16px;color:var(--muted);margin-bottom:22px}.about-copy .pill{margin-top:16px}.about-rule{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--rule);margin-top:90px;padding-top:25px;font-size:11px;letter-spacing:.03em}.closing-image{position:relative;height:800px;overflow:hidden;color:white}.closing-image>img{height:100%;object-position:center 60%}.closing-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0009,#0002)}.closing-image>div{position:absolute;inset:0;padding:70px var(--gutter);z-index:1;display:flex;flex-direction:column;align-items:start;justify-content:space-between}.closing-image h2{font-size:clamp(55px,8vw,140px);font-weight:400;line-height:.99;letter-spacing:-.065em}.contact{padding-top:85px;padding-bottom:100px}.contact-title{font-size:clamp(80px,16.8vw,275px);margin:80px 0;letter-spacing:-.08em;font-weight:600;white-space:nowrap}.contact-dot{color:#97988f}.contact-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:5vw}.contact-intro{font-size:24px;line-height:1.35;letter-spacing:-.035em;margin-bottom:30px}.contact-grid h3{font-size:12px;letter-spacing:.07em;font-weight:600;margin-bottom:24px}.phone{display:block;font-size:clamp(20px,2.5vw,40px);letter-spacing:-.065em;line-height:1.5}.contact-grid p:not(.contact-intro){font-size:14px;color:var(--muted);margin-top:22px}.contact-grid address{font-style:normal;font-size:16px;line-height:1.7;margin-bottom:24px}.footer-top{border-top:1px solid var(--rule);padding:30px var(--gutter);display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:10px;letter-spacing:.04em}.footer-top>a{font-weight:800}.footer-top nav{display:flex;gap:25px}.marquee{overflow:hidden;padding:15px 0 35px}.marquee>div{display:flex;width:max-content;animation:marquee 70s linear infinite}.marquee span{font-size:19vw;line-height:1;font-weight:800;letter-spacing:-.075em;padding-right:.2em}.floating-wa{position:fixed;bottom:24px;right:24px;display:flex;align-items:center;gap:10px;background:#fff;color:#111;border:1px solid #ddd;border-radius:60px;box-shadow:0 4px 25px #0002;padding:13px 18px;z-index:70;font-size:11px;letter-spacing:.06em;transition:background .3s,transform .3s}.floating-wa:hover{background:#d7ffdf;transform:translateY(-3px)}.floating-wa svg{width:26px;height:26px;color:#137b42}.menu-open{overflow:hidden}.menu-open .floating-wa{visibility:hidden}.js .reveal{opacity:0;transform:translateY(55px);transition:opacity .9s var(--ease),transform 1.1s var(--ease)}.js .reveal.visible{opacity:1;transform:none}.js .category-image,.js .veneer-photo{clip-path:inset(0 0 0 100%);transition:clip-path 1.2s var(--ease)}.js .visible .category-image,.js .visible .veneer-photo{clip-path:inset(0)}
@keyframes line-in{from{transform:translateY(110%);opacity:0}to{transform:none;opacity:1}}@keyframes hero-image{from{transform:scale(1.1)}to{transform:scale(1)}}@keyframes menu-in{from{transform:translateY(-100%)}to{transform:none}}@keyframes item-in{from{transform:translateY(30px);opacity:0}to{transform:none;opacity:1}}@keyframes marquee{to{transform:translateX(-50%)}}
@media(max-width:1000px){.brand>span{display:none}.hero{height:max(720px,100svh)}.hero h1{font-size:9.7vw}.category-grid{gap:18px}.category:nth-child(2){margin-top:65px}.category:nth-child(3){margin-top:130px}.category-title h2{font-size:3.5vw}.grain-heading{display:block}.grain-heading p{margin-top:30px}.about-layout{gap:5vw}.menu-layout{grid-template-columns:1fr 2fr}.menu-contact{grid-column:2;padding:0 5vw 40px}.menu nav{border-right:0;padding:150px 5vw 40px}.menu nav a{font-size:6vw}.menu-mark{font-size:30vw}.contact-grid{gap:3vw}.contact-grid address{font-size:14px}.footer-top{flex-wrap:wrap}}
@media(max-width:650px){:root{--gutter:6vw}html{scroll-padding-top:100px}.header{padding-top:21px}.brand img{width:40px;height:50px}.menu-toggle{font-size:18px;padding:10px 0}.menu-toggle i{width:14px;height:14px}.hero{height:100svh;min-height:650px}.hero-photo img{object-position:41% center}.hero-content{padding-top:146px;padding-bottom:38px}.hero-kicker{font-size:9px;letter-spacing:.05em;margin-bottom:28px}.hero h1{font-size:10.2vw;letter-spacing:-.075em;line-height:1.05}.hero-bottom{display:block;margin-top:35px}.hero-bottom p{margin-top:24px;font-size:9px}.hero-bottom .scroll-note{display:none}.pill{font-size:18px;gap:25px;padding-left:18px;min-height:49px}.pill i{width:27px;height:27px}.section{padding-top:65px;padding-bottom:65px}.meta{font-size:9px;letter-spacing:.04em;gap:15px}.meta span:last-child{text-align:right}.statement{font-size:9.1vw;margin:60px 0 45px;line-height:1.14}.intro-bottom{display:flex;flex-direction:column-reverse;gap:32px}.intro-bottom p{font-size:23px;line-height:1.35}.category-grid{display:block;margin-top:45px}.category,.category:nth-child(2),.category:nth-child(3){margin-top:0;margin-bottom:55px}.category-image{aspect-ratio:.95}.category:nth-child(2){width:90%;margin-left:auto}.category:nth-child(3){width:94%}.category-title h2{font-size:40px}.category>p{max-width:none;font-size:15px}.materials-foot{margin-top:0;display:block}.materials-foot>span{display:block;margin-bottom:15px}.grain{padding:65px var(--gutter)}.grain-heading{margin:55px 0 40px}.grain-heading h2{font-size:9.3vw;line-height:1.1}.grain-heading p{font-size:14px}.veneer-grid{display:block}.veneer{display:block;width:88%;margin-bottom:45px}.veneer:nth-child(1),.veneer:nth-child(3){margin-top:0}.veneer:nth-child(2){margin-left:auto}.veneer h3{font-size:19px}.veneer-photo{aspect-ratio:.8}.grain-footer{display:block;margin-top:15px}.grain-footer .pill{margin-top:25px}.about-layout{grid-template-columns:1fr;gap:55px;margin-top:65px}.about-year{font-size:36vw}.about-copy h2{font-size:9vw;line-height:1.1}.about-copy p{font-size:16px}.about-rule{margin-top:50px;flex-direction:column;gap:12px;font-size:10px}.closing-image{height:650px}.closing-image>div{padding:45px var(--gutter)}.closing-image .eyebrow{font-size:9px;max-width:230px}.closing-image h2{font-size:12.5vw}.contact-title{font-size:17vw;margin:55px 0}.contact-grid{grid-template-columns:1fr;gap:46px}.phone{font-size:35px}.contact-grid address{font-size:17px}.contact-grid h3{margin-bottom:17px}.contact-intro{font-size:27px}.footer-top{padding-top:25px;display:grid;grid-template-columns:1fr;gap:20px;font-size:10px}.marquee{padding-bottom:100px}.marquee span{font-size:26vw}.floating-wa{right:16px;bottom:16px;padding:12px}.floating-wa>span{display:none}.menu-layout{display:flex;flex-direction:column;align-items:stretch}.menu-mark{display:none}.menu nav{border:0;min-height:0;padding:150px 6vw 50px;gap:25px}.menu nav a{font-size:11vw}.menu-contact{padding:0 6vw 50px;font-size:14px;gap:10px}.menu-contact p{margin-bottom:10px}.menu-contact a:last-child{margin-top:10px}}
/* Keep secondary labels readable while preserving the reference's sparse hierarchy. */
.brand>span,.eyebrow,.meta,.hero-kicker,.hero-bottom p,.scroll-note,.category-title>span,.caption,.sample-list figcaption,.veneer small,.about-year span,.about-rule,.footer-top,.floating-wa{font-size:12px}
summary,.enquire,.contact-grid h3{font-size:14px}.category>p,.small{font-size:16px}.menu-mark{font-size:0;transform:none}.menu-mark:before{content:'';display:block;width:65%;aspect-ratio:78/92;margin:auto;background:white;mask:url('assets/s-mark.svg') center/contain no-repeat}.menu.closing{animation:menu-out .45s var(--ease) forwards}
.hero-photo{inset:-8% 0;transform:translate3d(0,var(--hero-offset,0px),0);will-change:transform}
.hero-photo img{object-position:50% center}
@media(max-width:650px){.hero-photo img{object-position:43% center}}
@media(prefers-reduced-motion:reduce){.hero-photo{transform:none;will-change:auto}}
@keyframes menu-out{to{transform:translateY(-100%)}}
@media(max-width:650px){.hero-kicker,.meta,.hero-bottom p,.closing-image .eyebrow{font-size:12px}.meta{letter-spacing:0}.hero h1{font-size:10.2vw}.footer-top{padding-bottom:30px}.contact-title{white-space:normal}.hero-bottom{padding-right:26px}}
/* A tighter, intentional handoff from the hero into the editorial introduction. */
.hero-bottom{padding-bottom:12px}
.intro{padding-top:58px;padding-bottom:82px}
.statement{margin-top:52px;margin-bottom:64px}
@media(max-width:650px){.hero-bottom{padding-bottom:6px}.intro{padding-top:48px;padding-bottom:62px}.statement{margin-top:42px;margin-bottom:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}.js .category-image,.js .veneer-photo{clip-path:none}}
/* Wide and portrait art direction with a slow cinematic drift into the next section. */
.hero-photo picture{display:block;height:100%}
.hero-photo img{animation:hero-image 12s var(--ease) both;transform-origin:52% 48%}
.hero-photo:after{background:linear-gradient(180deg,transparent 67%,rgba(20,20,20,.08) 76%,rgba(255,255,255,.96) 100%),linear-gradient(90deg,#0008,#0001),linear-gradient(0deg,#0005,transparent 45%)}
@keyframes hero-image{from{transform:scale(1.08)}to{transform:scale(1.16)}}
@media(max-width:650px){.hero-photo img{animation-duration:14s;transform-origin:50% 44%}.hero-photo:after{background:linear-gradient(180deg,transparent 68%,rgba(20,20,20,.1) 77%,rgba(255,255,255,.97) 100%),linear-gradient(90deg,#0008,#0001),linear-gradient(0deg,#0005,transparent 45%)}}
@media(prefers-reduced-motion:reduce){.hero-photo img{animation:none;transform:none}}
/* Add breathing room at the hero edge so the CTA and intro metadata never collide. */
.hero-bottom{margin-bottom:20px}
.intro{padding-top:46px}
.statement{margin-top:38px}
@media(max-width:650px){.hero-bottom{margin-bottom:14px}.intro{padding-top:40px}.statement{margin-top:30px}}
.veneer-brand-list{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 22px}.veneer-brand-list p{margin:0;min-height:78px;padding:14px;border:1px solid var(--rule);display:flex;flex-direction:column;justify-content:space-between;gap:8px}.veneer-brand-list strong{font-size:13px;letter-spacing:.02em}.veneer-brand-list span{font-size:11px;line-height:1.3;color:var(--muted)}
@media(max-width:1000px){.veneer-brand-list{grid-template-columns:1fr}.veneer-brand-list p{min-height:68px}}
@media(max-width:650px){.veneer-brand-list p{min-height:72px;padding:12px}.veneer-brand-list strong{font-size:11px}.veneer-brand-list span{font-size:10px}}
/* A pinned, three-act material transformation driven by scroll progress. */
.transformation{--surface:0;--finish:0;--progress:0;position:relative;height:410vh;scroll-margin-top:-110px;background:#111;color:#fff}.transformation-sticky{position:sticky;top:0;height:100svh;min-height:650px;overflow:hidden;background:#171512}.transformation-visual,.transformation-shade,.transformation-frame{position:absolute;inset:0}.transformation-frame{height:100%;object-fit:cover;object-position:center;will-change:opacity,transform;transform:scale(calc(1.035 + var(--progress)*.025))}.frame-surface{opacity:var(--surface)}.frame-finish{opacity:var(--finish)}.transformation-shade{z-index:1;background:linear-gradient(90deg,rgba(8,7,5,.72) 0%,rgba(8,7,5,.18) 46%,rgba(8,7,5,.12) 72%,rgba(8,7,5,.48) 100%),linear-gradient(0deg,rgba(8,7,5,.72),transparent 36%,rgba(8,7,5,.24))}.transformation-ui{position:relative;z-index:2;height:100%;padding:130px var(--gutter) 40px;display:flex;flex-direction:column;justify-content:space-between}.transformation-copy{width:min(920px,82vw);transform:translateY(calc(var(--progress)*-2.5vh));will-change:transform}.transformation-step{display:flex;align-items:center;gap:16px;margin-bottom:20px;font-size:11px;letter-spacing:.12em}.transformation-step span{display:grid;place-items:center;width:36px;height:36px;border:1px solid #fff8;border-radius:50%}.transformation-step strong{font-weight:600;font-size:11px}.transformation h2{font-size:clamp(68px,9.2vw,156px);font-weight:500;line-height:.84;letter-spacing:-.078em;text-shadow:0 2px 35px #0004}.transformation h2 em{font-style:normal;color:#d1b99d}.transformation-story{position:relative;margin-top:28px;min-height:40px;font-size:clamp(16px,1.45vw,24px);letter-spacing:-.025em}.transformation-story span{position:absolute;inset:0 auto auto 0;opacity:0;transform:translateY(12px);transition:opacity .45s var(--ease),transform .55s var(--ease)}.transformation-sticky:not([data-stage]) .story-raw,.transformation-sticky[data-stage='raw'] .story-raw,.transformation-sticky[data-stage='surface'] .story-surface,.transformation-sticky[data-stage='finish'] .story-finish{opacity:1;transform:none}.transformation-footer{display:grid;grid-template-columns:minmax(140px,1fr) auto auto;align-items:end;gap:28px}.stage-track{align-self:center;height:2px;background:#ffffff42;overflow:hidden}.stage-track i{display:block;width:calc(var(--progress)*100%);height:100%;background:#fff;transform-origin:left}.transformation-footer>p{font-size:10px;letter-spacing:.1em;white-space:nowrap}.transformation-footer>p span{padding:0 8px;color:#d1b99d}.transformation-cta{font-size:17px;min-height:48px;opacity:.42;transform:translateY(6px);transition:opacity .45s var(--ease),transform .45s var(--ease),background .4s,color .4s}.transformation-sticky[data-stage='finish'] .transformation-cta{opacity:1;transform:none}.transformation-summary{position:absolute;z-index:4;inset:auto 0 0;min-height:78vh;background:#fff;color:var(--ink);padding:11vh var(--gutter);display:flex;flex-direction:column;justify-content:center}.transformation-summary p{font-size:clamp(50px,8.1vw,138px);line-height:.92;letter-spacing:-.075em}.transformation-summary p:last-child{align-self:flex-end;color:#8a8178}.in-transformation .floating-wa{opacity:0;pointer-events:none;transform:translateY(12px)}
@media(max-width:800px){.transformation{height:380vh}.transformation-sticky{min-height:620px}.transformation-frame{object-position:50% center}.transformation-ui{padding:112px var(--gutter) 28px}.transformation-ui>.meta span:last-child{max-width:150px}.transformation-copy{width:100%}.transformation h2{font-size:clamp(54px,14vw,92px);line-height:.88}.transformation-story{font-size:16px;max-width:300px;min-height:55px}.transformation-footer{grid-template-columns:1fr auto;gap:18px}.stage-track{grid-column:1/-1;width:100%}.transformation-footer>p{font-size:9px}.transformation-footer>p span{padding:0 4px}.transformation-cta{font-size:14px;min-height:44px;padding-left:16px;gap:14px}.transformation-cta i{width:25px;height:25px}.transformation-summary{min-height:72vh;padding-top:10vh;padding-bottom:10vh}.transformation-summary p{font-size:15vw}.transformation-summary p:last-child{margin-top:12px;align-self:flex-start}}
@media(max-width:650px){.transformation{scroll-margin-top:-100px}.transformation-ui{padding-top:90px}}
@media(prefers-reduced-motion:reduce){.transformation{height:auto}.transformation-sticky{position:relative}.transformation-frame{display:none;transform:none}.transformation-frame.frame-finish{display:block;opacity:1}.transformation-story span{display:none;position:static}.transformation-story .story-finish{display:block;opacity:1;transform:none}.transformation-summary{position:relative;min-height:60vh}.transformation-cta{opacity:1;transform:none}}
/* Infinite sample wall: real product imagery moving like a material archive. */
.sample-wall{--wall-x:0px;--wall-y:0px;position:relative;height:980px;overflow:hidden;background:#0b0a08;color:#fff;isolation:isolate}.sample-wall-head{position:absolute;z-index:5;top:52px;left:var(--gutter);right:var(--gutter)}.sample-scene{position:absolute;z-index:0;inset:-190px -280px;display:flex;flex-direction:column;justify-content:center;gap:18px;transform:perspective(1400px) rotateX(5deg) rotateZ(-5deg) translate3d(var(--wall-x),var(--wall-y),0) scale(1.08);will-change:transform;transition:transform .35s var(--ease)}.sample-rail{width:100%;overflow:hidden}.sample-track{display:flex;width:max-content;gap:18px;animation:sample-left 42s linear infinite}.rail-two .sample-track{animation-name:sample-right;animation-duration:49s}.rail-three .sample-track{animation-duration:46s}.sample-wall:hover .sample-track{animation-play-state:paused}.sample-track figure{position:relative;width:230px;height:265px;flex:0 0 auto;margin:0;overflow:hidden;border:1px solid #ffffff45;background:#29251f;box-shadow:0 20px 60px #0008;transition:transform .5s var(--ease),border-color .4s}.sample-track figure.wide{width:360px}.sample-track figure:hover{transform:translateY(-8px) scale(1.025);border-color:#fff}.sample-track img{height:100%;object-fit:cover;filter:saturate(.78) contrast(1.07);transition:filter .5s,transform .8s var(--ease)}.sample-track figure:hover img{filter:saturate(1) contrast(1.02);transform:scale(1.045)}.sample-track figcaption{position:absolute;inset:auto 0 0;padding:13px 15px;background:linear-gradient(0deg,#090806f2,#090806b5 70%,transparent);display:flex;justify-content:space-between;gap:12px;font-size:11px;font-weight:600;letter-spacing:.08em}.sample-track figcaption span{font-weight:400;color:#c8b69e}.sample-wall-vignette{position:absolute;z-index:1;inset:0;background:radial-gradient(circle at center,transparent 4%,#08070624 32%,#080706c4 82%),linear-gradient(90deg,#080706b5,transparent 22%,transparent 78%,#080706b5)}.sample-wall-center{position:absolute;z-index:3;left:50%;top:51%;width:min(590px,78vw);padding:42px 46px;transform:translate(-50%,-50%);background:#0a0907a6;border:1px solid #ffffff5e;box-shadow:0 30px 100px #000b;backdrop-filter:blur(14px);text-align:center}.sample-wall-center .eyebrow{margin-bottom:28px}.sample-wall-center h2{font-size:clamp(62px,6.5vw,108px);font-weight:500;line-height:.77;letter-spacing:-.075em}.sample-wall-center h2 em{font-style:normal;color:#c8b69e}.sample-wall-center>p:not(.eyebrow){margin:30px auto 27px;max-width:390px;font-size:17px;color:#d1cfca}.sample-wall-center .pill{margin:auto;font-size:18px}.sample-wall-note{position:absolute;z-index:4;left:var(--gutter);bottom:38px;font-size:11px;letter-spacing:.12em;color:#d2cdc5}.in-sample-wall .floating-wa{opacity:0;pointer-events:none;transform:translateY(12px)}
@keyframes sample-left{to{transform:translateX(-50%)}}@keyframes sample-right{from{transform:translateX(-50%)}to{transform:translateX(0)}}
@media(max-width:800px){.sample-wall{height:850px}.sample-wall-head{top:30px}.sample-scene{inset:-90px -360px;gap:12px;transform:rotateZ(-7deg) translate3d(var(--wall-x),var(--wall-y),0) scale(1.08)}.sample-track{gap:12px;animation-duration:34s}.rail-two .sample-track{animation-duration:39s}.rail-three .sample-track{animation-duration:36s}.sample-track figure{width:155px;height:190px}.sample-track figure.wide{width:235px}.sample-track figcaption{padding:10px;font-size:9px}.sample-wall-center{top:51%;width:88vw;padding:34px 22px;backdrop-filter:blur(10px)}.sample-wall-center .eyebrow{font-size:10px;margin-bottom:24px}.sample-wall-center h2{font-size:15vw;line-height:.8}.sample-wall-center>p:not(.eyebrow){font-size:15px;margin:26px auto 24px}.sample-wall-center .pill{font-size:15px}.sample-wall-note{bottom:25px;font-size:9px}}
@media(prefers-reduced-motion:reduce){.sample-scene{transform:rotateZ(-5deg) scale(1.08);transition:none}.sample-track{animation-play-state:paused}.sample-wall-note{display:none}}

/* Cross-device polish: drawn interface icons, stable header and responsive rhythm. */
body{overflow-x:clip}.header{padding-left:max(var(--gutter),env(safe-area-inset-left));padding-right:max(var(--gutter),env(safe-area-inset-right));transition:padding .4s var(--ease),background-color .4s,color .4s,box-shadow .4s,backdrop-filter .4s}.image-link{font-size:0}.image-link:before,.inline-arrow:before{content:'';position:absolute;width:16px;height:1.5px;background:currentColor;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-45deg);transform-origin:center}.image-link:after,.inline-arrow:after{content:'';position:absolute;width:8px;height:8px;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;left:50%;top:50%;transform:translate(-12%,-88%)}.inline-arrow{position:relative;display:inline-block;width:16px;height:16px;flex:0 0 auto;vertical-align:-2px}.inline-arrow:before{width:15px}.inline-arrow:after{width:7px;height:7px}.icon-link{display:inline-flex;align-items:center;gap:7px}.plus-icon{position:relative;width:18px;height:18px;flex:0 0 18px;font-size:0}.plus-icon:before,.plus-icon:after{content:'';position:absolute;left:50%;top:50%;width:14px;height:1.5px;background:currentColor;transform:translate(-50%,-50%)}.plus-icon:after{transform:translate(-50%,-50%) rotate(90deg)}details[open] summary>.plus-icon{transform:rotate(45deg)}.down-arrow{position:relative;display:inline-block;width:10px;height:15px;margin-top:5px}.down-arrow:before{content:'';position:absolute;left:50%;top:0;width:1px;height:13px;background:currentColor}.down-arrow:after{content:'';position:absolute;left:2px;bottom:1px;width:6px;height:6px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg)}
.page-scrolled .header{background:rgba(255,255,255,.92);color:var(--ink);mix-blend-mode:normal;box-shadow:0 1px 0 rgba(20,20,20,.1);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.page-scrolled .brand img{filter:none}.page-scrolled.menu-open .header{background:transparent;color:#fff;box-shadow:none;backdrop-filter:none}.page-scrolled.menu-open .brand img{filter:invert(1)}
@media(min-width:651px) and (max-width:900px){html{scroll-padding-top:82px}.header{padding-top:14px;padding-bottom:12px;align-items:center}.brand img{width:40px;height:48px}.menu-toggle{font-size:16px;padding:9px 0}.category-grid{display:block}.category,.category:nth-child(2),.category:nth-child(3){width:min(620px,100%);margin:0 auto 80px}.category-image{aspect-ratio:.9}.category-title h2{font-size:56px}.category>p{max-width:540px}.materials-foot{margin-top:30px}.contact-grid{grid-template-columns:1fr 1fr}.contact-grid>div:first-child{grid-column:1/-1;max-width:620px}}
@media(max-width:650px){html{scroll-padding-top:76px}.header{padding-top:max(12px,env(safe-area-inset-top));padding-bottom:10px;align-items:center}.brand img{width:32px;height:38px}.menu-toggle{font-size:15px;gap:9px;padding:8px 0}.menu-toggle i{width:12px;height:12px}.page-scrolled .header{padding-top:max(9px,env(safe-area-inset-top));padding-bottom:8px}.hero-content{padding-top:max(126px,calc(env(safe-area-inset-top) + 108px))}.section{padding-top:72px;padding-bottom:72px}.materials{padding-top:68px}.category-grid{margin-top:48px}.category,.category:nth-child(2),.category:nth-child(3){width:100%;margin:0 0 72px}.category-image{aspect-ratio:.84}.category-title{margin:18px 0 14px}.category-title h2{font-size:clamp(36px,11vw,48px)}.category>p{font-size:15px;line-height:1.55}.category details{margin-top:20px}summary{min-height:56px;padding:16px 0;font-size:13px}.range-content{padding-bottom:28px}.sample-list{gap:6px}.sample-list figcaption{font-size:10px;line-height:1.35}.enquire{line-height:1.45}.materials-foot{padding-top:24px}.transformation-ui{padding-top:max(88px,calc(env(safe-area-inset-top) + 76px))}.contact-grid{gap:52px}.floating-wa{right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));width:58px;height:58px;justify-content:center;padding:0}.floating-wa svg{width:27px;height:27px}.footer-top nav{flex-wrap:wrap;row-gap:12px}}
@media(max-width:380px){:root{--gutter:20px}.hero h1{font-size:10vw}.pill{font-size:16px;gap:18px}.category-title h2{font-size:34px}.contact-intro{font-size:23px}.phone{font-size:29px}.sample-wall-center{width:calc(100vw - 30px);padding-inline:18px}}
@media(min-width:1800px){:root{--gutter:clamp(90px,6vw,150px)}.category-grid,.about-layout,.contact-grid{max-width:1800px;margin-left:auto;margin-right:auto}.materials-foot,.about-rule{max-width:1800px;margin-left:auto;margin-right:auto}.category>p{max-width:460px}.intro-bottom{max-width:1800px;margin-left:auto;margin-right:auto}}
@media(max-height:700px) and (orientation:landscape){.hero{min-height:620px}.transformation-sticky{min-height:100svh}.transformation-ui{padding-top:82px;padding-bottom:22px}.transformation h2{font-size:min(14vh,82px)}.transformation-story{margin-top:16px}.sample-wall{height:720px}}
.page-scrolled .header{background:transparent;color:white;mix-blend-mode:difference;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.page-scrolled .brand img{filter:invert(1)}.page-scrolled.menu-open .header{background:transparent;color:#fff;mix-blend-mode:normal}.page-scrolled.menu-open .brand img{filter:invert(1)}

/* Brand accent: reserve blood red for highlighted text only. */
.statement em,.transformation h2 em,.transformation-summary p:last-child,.sample-wall-center h2 em{color:#660000}
.flow-arrow{position:relative;display:inline-block;width:13px;height:8px;margin:0 8px;padding:0!important}.flow-arrow:before{content:'';position:absolute;left:0;top:50%;width:12px;height:1px;background:currentColor}.flow-arrow:after{content:'';position:absolute;right:0;top:2px;width:5px;height:5px;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg)}
@media(max-width:650px){.transformation-ui{padding-bottom:max(28px,calc(env(safe-area-inset-bottom) + 20px))}.transformation-footer{grid-template-columns:1fr;align-items:stretch;gap:16px;width:100%}.transformation-footer>p{width:100%;text-align:center;white-space:nowrap;line-height:1.4}.transformation-cta{width:100%;min-width:0;justify-content:space-between;padding-right:9px}}

/* Keep the hero controls inside the hero's stacking context at every viewport shape. */
.hero{isolation:isolate}
.hero-content{z-index:1;padding-bottom:clamp(64px,8vh,112px)}
.hero-bottom{position:relative;z-index:2;margin-bottom:0}
@media(max-width:650px){.hero-content{padding-bottom:max(56px,calc(env(safe-area-inset-bottom) + 44px))}.hero-bottom{margin-bottom:0}}
@media(max-height:700px) and (orientation:landscape){.hero-content{padding-bottom:clamp(48px,7vh,76px)}.hero-bottom{margin-top:32px}}
