@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Manrope:wght@500;600;700&display=swap');

:root {
  --ink: #151713;
  --paper: #f2f1ed;
  --paper-2: #e7e4dd;
  --copper: #b98250;
  --copper-light: #d6aa7e;
  --muted: #6f736c;
  --line: rgba(21, 23, 19, .16);
  --white-line: rgba(255,255,255,.18);
  --max: 1360px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: "DM Sans", sans-serif; font-size: 16px; line-height: 1.6; overflow-x: hidden; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
img { display: block; max-width: 100%; }
.skip-link { position: fixed; left: 1rem; top: -4rem; z-index: 1000; background: #fff; padding: .8rem 1rem; }
.skip-link:focus { top: 1rem; }

.site-header { position: absolute; z-index: 20; top: 0; left: 0; right: 0; height: 92px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; padding: 0 clamp(1.25rem, 4vw, 4.5rem); color: #fff; border-bottom: 1px solid rgba(255,255,255,.16); transition: background .25s, height .25s; }
.site-header.scrolled { position: fixed; height: 74px; background: rgba(17,18,16,.96); backdrop-filter: blur(18px); }
.brand { display: inline-flex; align-items: center; gap: .75rem; width: max-content; font: 700 1rem/1 "Manrope", sans-serif; letter-spacing: .08em; }
.brand small { display: block; margin-top: .38rem; font: 500 .53rem/1 "DM Sans", sans-serif; letter-spacing: .2em; opacity: .62; }
.brand-mark { width: 27px; height: 36px; display: block; border: 1.5px solid var(--copper-light); position: relative; }
.brand-mark::before { content:""; position:absolute; inset: 4px 5px; border: 1px solid rgba(255,255,255,.55); }
.brand-mark i { position: absolute; width: 3px; height: 3px; border-radius: 50%; background: var(--copper-light); right: 7px; top: 16px; }
.site-nav { display: flex; align-items: center; gap: clamp(1rem, 2.5vw, 2.7rem); font-size: .88rem; }
.site-nav a { position: relative; opacity: .78; }
.site-nav a::after { content:""; position:absolute; left:0; right:100%; bottom:-.5rem; height:1px; background:var(--copper-light); transition:right .25s; }
.site-nav a:hover { opacity: 1; }
.site-nav a:hover::after { right:0; }
.nav-products,.nav-dropdown { position:relative; display:flex; align-items:center; }
.mega-menu { position:absolute; z-index:40; top:calc(100% + 1.65rem); left:50%; width:min(760px,82vw); padding:1.6rem; display:grid; grid-template-columns:1.25fr 1fr 1fr; gap:2rem; background:#171815; border:1px solid rgba(255,255,255,.14); box-shadow:0 30px 70px rgba(0,0,0,.36); transform:translate(-36%,-8px); opacity:0; visibility:hidden; pointer-events:none; transition:opacity .2s,transform .2s; }
.mega-menu::before { content:""; position:absolute; left:0; right:0; top:-1.7rem; height:1.7rem; }
.nav-products:hover .mega-menu,.nav-products.is-open .mega-menu,.nav-dropdown:hover .mega-menu,.nav-dropdown.is-open .mega-menu { opacity:1; visibility:visible; pointer-events:auto; transform:translate(-36%,0); }
.menu-solutions .mega-menu,.menu-finishes .mega-menu,.menu-projects .mega-menu,.menu-about .mega-menu,.menu-contact .mega-menu { width:min(560px,82vw); grid-template-columns:1fr 1fr; transform:translate(-42%,-8px); }
.menu-solutions:hover .mega-menu,.menu-solutions.is-open .mega-menu,.menu-finishes:hover .mega-menu,.menu-finishes.is-open .mega-menu,.menu-projects:hover .mega-menu,.menu-projects.is-open .mega-menu,.menu-about:hover .mega-menu,.menu-about.is-open .mega-menu,.menu-contact:hover .mega-menu,.menu-contact.is-open .mega-menu { transform:translate(-42%,0); }
.menu-about .mega-menu,.menu-contact .mega-menu { left:auto; right:0; transform:translate(0,-8px); }
.menu-about:hover .mega-menu,.menu-about.is-open .mega-menu,.menu-contact:hover .mega-menu,.menu-contact.is-open .mega-menu { transform:translate(0,0); }
.mega-menu div { display:flex; flex-direction:column; gap:.55rem; }
.mega-menu b { color:var(--copper-light); font-size:.58rem; letter-spacing:.16em; margin-bottom:.4rem; }
.mega-menu a { color:rgba(255,255,255,.66); font-size:.78rem; padding:.16rem 0; opacity:1; }
.mega-menu a::after { display:none; }.mega-menu a:hover{color:#fff}
.header-cta { justify-self: end; display: flex; align-items: center; gap: 1.3rem; font-size: .84rem; text-transform: uppercase; letter-spacing: .08em; border: 1px solid rgba(255,255,255,.48); padding: .76rem 1.1rem .76rem 1.3rem; }
.header-cta span { color: var(--copper-light); }
.menu-toggle { display: none; }

.hero { min-height: 780px; height: 100svh; color: #fff; position: relative; display: grid; align-items: center; overflow: hidden; background: #24251f; }
.hero-image, .hero-shade { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.hero-image { object-position: center; transform: scale(1.02); animation: hero-in 1.4s cubic-bezier(.2,.75,.2,1) both; }
.hero-shade { background: linear-gradient(90deg, rgba(11,12,10,.82) 0%, rgba(11,12,10,.55) 34%, rgba(11,12,10,.08) 72%), linear-gradient(0deg, rgba(11,12,10,.32), transparent 45%); }
@keyframes hero-in { from { transform: scale(1.08); opacity:.2; } to { transform: scale(1.02); opacity:1; } }
.hero-content { position: relative; z-index: 2; width: min(800px, 75vw); margin-left: clamp(1.3rem, 8vw, 9rem); padding-top: 5rem; }
.eyebrow { margin: 0 0 1.7rem; display: flex; align-items: center; gap: .8rem; font-size: .7rem; font-weight: 600; letter-spacing: .19em; text-transform: uppercase; }
.eyebrow span { width: 36px; height: 1px; background: var(--copper-light); }
.eyebrow.dark { color: #62675f; }
.eyebrow.dark span { background: var(--copper); }
.eyebrow.light { color: rgba(255,255,255,.6); }
.hero h1, .section h2, .collection h2, .performance h2, .contact h2 { font: 600 clamp(3.4rem, 7vw, 7.2rem)/.98 "Manrope", sans-serif; letter-spacing: -.065em; margin: 0; }
h1 em, h2 em { font-style: normal; color: var(--copper-light); font-weight: 500; }
.hero-copy { max-width: 610px; margin: 2.1rem 0 2.2rem; color: rgba(255,255,255,.76); font-size: 1.06rem; line-height: 1.8; }
.hero-actions { display: flex; gap: .9rem; flex-wrap: wrap; }
.button { min-height: 52px; display: inline-flex; align-items: center; justify-content: center; gap: 1.8rem; padding: .85rem 1.4rem; border: 1px solid transparent; cursor: pointer; text-transform: uppercase; letter-spacing: .1em; font-size: .72rem; font-weight: 600; transition: transform .2s, background .2s, color .2s; }
.button:hover { transform: translateY(-2px); }
.button-primary { background: var(--copper); color: #fff; }
.button-primary:hover { background: #c48d59; }
.button-ghost { border-color: rgba(255,255,255,.5); color: #fff; }
.button-ghost:hover { background:#fff; color:var(--ink); }
.hero-note { position:absolute; z-index:2; right: clamp(1.3rem, 4vw, 4.5rem); bottom: 2.4rem; display:flex; gap:1.1rem; align-items:flex-start; font-size:.72rem; letter-spacing:.08em; color:rgba(255,255,255,.7); }
.hero-note p { margin:0; line-height:1.7; }
.note-index { color:var(--copper-light); font:600 .75rem "Manrope"; padding-top:.2rem; }
.scroll-cue { position:absolute; z-index:2; left:2rem; bottom:1.8rem; display:flex; flex-direction:column; gap:.7rem; align-items:center; font-size:.55rem; letter-spacing:.2em; color:rgba(255,255,255,.6); writing-mode:vertical-rl; }
.scroll-cue span { width:1px; height:42px; background:rgba(255,255,255,.35); }

.proof-strip { max-width:var(--max); margin:-1px auto 0; display:grid; grid-template-columns:repeat(4,1fr); background:var(--ink); color:#fff; }
.proof-strip div { min-height:140px; display:flex; align-items:center; gap:1rem; padding:1.5rem clamp(1rem,2vw,2.3rem); border-right:1px solid rgba(255,255,255,.12); }
.proof-strip strong { font:500 clamp(1.8rem,3vw,3rem)/1 "Manrope"; color:var(--copper-light); letter-spacing:-.06em; }
.proof-strip span { color:rgba(255,255,255,.6); font-size:.73rem; line-height:1.5; }

.section { max-width:var(--max); margin:0 auto; padding:clamp(6rem,10vw,10rem) clamp(1.3rem,5vw,4.5rem); }
.section-heading { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr); gap:4rem; align-items:end; margin-bottom:4.5rem; }
.section-heading h2 { font-size:clamp(2.7rem,5vw,5.4rem); }
.section-heading h2 em { color:var(--copper); }
.section-heading > p { max-width:500px; margin:0 0 .4rem; color:var(--muted); line-height:1.85; }
.solution-grid { display:grid; grid-template-columns:repeat(3,1fr); border:1px solid var(--line); }
.solution-card { min-height:520px; padding:2rem; display:flex; flex-direction:column; border-right:1px solid var(--line); transition:background .25s,color .25s; }
.solution-card:last-child { border-right:0; }
.solution-card:hover, .solution-card.featured { background:var(--ink); color:#fff; }
.solution-card:hover p, .solution-card:hover li, .solution-card.featured p, .solution-card.featured li { color:rgba(255,255,255,.62); }
.card-number { text-align:right; color:var(--copper); font-size:.72rem; letter-spacing:.15em; }
.line-icon { width:54px; height:72px; margin:2.8rem 0 2rem; border:1px solid currentColor; position:relative; opacity:.72; }
.line-icon.fire::before { content:""; position:absolute; width:14px; height:23px; border:1px solid var(--copper); border-radius:70% 30% 60% 40%; left:18px; top:22px; transform:rotate(25deg); }
.line-icon.acoustic i { position:absolute; border:1px solid var(--copper); border-left:0; border-radius:0 50% 50% 0; width:9px; top:20px; bottom:20px; left:18px; }
.line-icon.acoustic i:nth-child(2){width:16px}.line-icon.acoustic i:nth-child(3){width:23px}
.line-icon.project i { position:absolute; inset:7px; border:1px solid var(--copper); }
.line-icon.project i::after { content:""; position:absolute; right:5px; top:26px; width:3px; height:3px; border-radius:50%; background:var(--copper); }
.solution-card h3 { font:600 1.55rem/1.25 "Manrope"; margin:0 0 1.1rem; letter-spacing:-.03em; }
.solution-card p { color:var(--muted); margin:0 0 1.3rem; }
.solution-card ul { list-style:none; padding:0; margin:0 0 2rem; color:var(--muted); font-size:.86rem; }
.solution-card li { padding:.3rem 0 .3rem 1rem; position:relative; }
.solution-card li::before { content:""; width:4px; height:4px; background:var(--copper); position:absolute; left:0; top:.83rem; }
.solution-card a { margin-top:auto; font-size:.73rem; text-transform:uppercase; letter-spacing:.12em; display:flex; justify-content:space-between; border-top:1px solid currentColor; padding-top:1rem; opacity:.8; }
.solution-card a span { color:var(--copper); }

.collection { display:grid; grid-template-columns:minmax(0,1.18fr) minmax(420px,.82fr); min-height:840px; background:var(--ink); color:#fff; }
.collection-media { position:relative; min-height:700px; overflow:hidden; }
.collection-media img { width:100%; height:100%; object-fit:cover; }
.media-label { position:absolute; left:0; bottom:0; background:var(--paper); color:var(--ink); padding:1rem 1.4rem; font-size:.63rem; letter-spacing:.17em; }
.media-label span { color:var(--copper); margin-right:.7rem; }
.collection-copy { padding:clamp(4rem,8vw,8rem) clamp(2rem,6vw,6rem); align-self:center; }
.collection h2 { font-size:clamp(2.7rem,4.2vw,4.7rem); }
.collection .lead { color:rgba(255,255,255,.62); max-width:560px; margin:1.8rem 0 2rem; }
.collection-tabs { display:flex; border-bottom:1px solid var(--white-line); margin-bottom:2rem; }
.collection-tabs button { flex:1; border:0; background:none; color:rgba(255,255,255,.45); padding:1rem .2rem; cursor:pointer; position:relative; font-size:.78rem; text-transform:uppercase; letter-spacing:.1em; }
.collection-tabs button[aria-selected="true"] { color:#fff; }
.collection-tabs button[aria-selected="true"]::after { content:""; position:absolute; left:0; right:0; bottom:-1px; height:2px; background:var(--copper); }
.collection-panel h3 { font:600 1.4rem "Manrope"; margin:0 0 .7rem; }
.collection-panel h3 span { float:right; color:var(--copper-light); font-size:.65rem; letter-spacing:.1em; }
.collection-panel > p { color:rgba(255,255,255,.6); }
.collection-panel dl { margin:2rem 0 1rem; border-top:1px solid var(--white-line); }
.collection-panel dl div { display:flex; justify-content:space-between; gap:1rem; padding:.75rem 0; border-bottom:1px solid var(--white-line); }
.collection-panel dt { color:rgba(255,255,255,.45); font-size:.78rem; }
.collection-panel dd { margin:0; font-size:.82rem; }
.collection-panel small { color:rgba(255,255,255,.38); font-size:.68rem; }

.spec-builder { display:grid; grid-template-columns:190px 1.1fr .9fr; min-height:560px; border:1px solid var(--line); }
.spec-steps { display:flex; flex-direction:column; border-right:1px solid var(--line); }
.spec-steps button { flex:1; border:0; border-bottom:1px solid var(--line); background:transparent; text-align:left; padding:1rem 1.3rem; color:var(--muted); cursor:pointer; }
.spec-steps button:last-child { border-bottom:0; }
.spec-steps button span { display:block; font-size:.58rem; color:var(--copper); margin-bottom:.3rem; }
.spec-steps button.active { background:var(--ink); color:#fff; }
.spec-visual { position:relative; overflow:hidden; background:#9c6e43; transition:background .35s; }
.spec-visual::before { content:""; position:absolute; inset:0; opacity:.52; background:repeating-linear-gradient(88deg,transparent 0 18px,rgba(48,26,10,.28) 20px,transparent 23px), linear-gradient(105deg,transparent 0 33%,rgba(255,255,255,.17) 34%,transparent 35%); }
.spec-visual.core { background:#c7b195; }
.spec-visual.core::before { background:repeating-linear-gradient(90deg,rgba(90,58,30,.18) 0 3px, transparent 3px 36px); }
.spec-visual.frame { background:#403a34; }
.spec-visual.frame::before { inset:8% 12%; border:18px solid #9b6e43; background:#d7d0c6; opacity:1; }
.spec-visual.hardware { background:#c8c2b7; }
.spec-visual.hardware::before { inset:20% 18%; background:linear-gradient(90deg,transparent 0 62%,#1c1c1a 62% 72%,transparent 72%),linear-gradient(0deg,transparent 0 47%,#1c1c1a 47% 52%,transparent 52%); opacity:1; }
.grain { position:absolute; border:1px solid rgba(34,18,7,.25); border-radius:50%; transform:rotate(-6deg); }
.g1 { width:250px; height:85px; left:-70px; top:16%; }.g2 { width:360px;height:115px;right:-150px;top:45%;}.g3{width:220px;height:70px;left:25%;bottom:10%;}
.spec-caption { position:absolute; left:1.5rem; right:1.5rem; bottom:1.5rem; background:rgba(17,18,16,.92); color:#fff; padding:1rem 1.2rem; display:flex; justify-content:space-between; gap:1rem; align-items:center; }
.spec-caption b { font:600 .9rem "Manrope"; }
.spec-caption span { color:rgba(255,255,255,.5); font-size:.7rem; text-align:right; }
.spec-detail { padding:clamp(2rem,4vw,4rem); align-self:center; }
.spec-kicker { color:var(--copper); font-size:.62rem; letter-spacing:.16em; }
.spec-kicker span { float:right; color:var(--muted); }
.spec-detail h3 { font:600 clamp(1.9rem,3vw,3rem)/1.15 "Manrope"; letter-spacing:-.04em; margin:2.2rem 0 1.2rem; }
.spec-detail > p:not(.spec-kicker) { color:var(--muted); }
.finish-swatches { display:flex; gap:.75rem; margin-top:2rem; }
.finish-swatches button { width:34px;height:34px;border:2px solid var(--paper);outline:1px solid transparent;cursor:pointer; }
.finish-swatches button.active { outline-color:var(--ink); }
.finish-swatches .oak { background:#a6774b; }.finish-swatches .walnut{background:#59402f}.finish-swatches .ash{background:#c4ae8b}.finish-swatches .charcoal{background:#302f2c}

.performance { display:grid; grid-template-columns:1fr 1fr; background:#191b18; color:#fff; }
.performance-intro { padding:clamp(5rem,9vw,9rem) clamp(1.3rem,7vw,7rem); border-right:1px solid var(--white-line); }
.performance h2 { font-size:clamp(2.8rem,4.5vw,5rem); }
.performance-intro > p:not(.eyebrow) { color:rgba(255,255,255,.58); max-width:590px; margin:2rem 0; }
.text-link { display:inline-flex; gap:2rem; margin-top:1rem; border-bottom:1px solid rgba(255,255,255,.4); padding-bottom:.6rem; font-size:.72rem; text-transform:uppercase; letter-spacing:.12em; }
.text-link span { color:var(--copper); }
.performance-list { display:grid; grid-template-columns:1fr 1fr; }
.performance-list article { padding:clamp(2rem,4vw,4rem); border-right:1px solid var(--white-line); border-bottom:1px solid var(--white-line); min-height:260px; display:flex; gap:1.4rem; }
.performance-list article:nth-child(2n){border-right:0}.performance-list article:nth-last-child(-n+2){border-bottom:0}
.performance-list article > span { color:var(--copper); font-size:.65rem; }
.performance-list h3 { margin:0 0 1rem; font:600 1.2rem/1.3 "Manrope"; }
.performance-list p { margin:0; color:rgba(255,255,255,.5); font-size:.84rem; }

.industries { padding-bottom:6rem; }
.industry-row { display:grid; grid-template-columns:1.2fr 1fr auto; align-items:center; gap:1.5rem; min-height:120px; border-top:1px solid var(--line); }
.industry-row:last-child { border-bottom:1px solid var(--line); }
.industry-row h2 { font-size:clamp(1.9rem,4vw,4rem); transition:color .2s,transform .2s; }
.industry-row span { color:var(--muted); }
.industry-row b { font-size:.65rem; color:var(--copper); }
.industry-row:hover h2 { color:var(--copper); transform:translateX(.5rem); }

.process { border-top:1px solid var(--line); }
.process-title { display:flex; justify-content:space-between; gap:3rem; align-items:end; }
.process-title h2 { font-size:clamp(2.7rem,5vw,5.4rem); }
.process-title h2 em { color:var(--copper); }
.process-grid { list-style:none; padding:0; margin:4rem 0 0; display:grid; grid-template-columns:repeat(4,1fr); counter-reset:steps; }
.process-grid li { min-height:260px; border-top:1px solid var(--ink); border-right:1px solid var(--line); padding:1.5rem; }
.process-grid li:last-child { border-right:0; }
.process-grid span { color:var(--copper); font-size:.64rem; }
.process-grid h3 { font:600 1.3rem "Manrope"; margin:3rem 0 .8rem; }
.process-grid p { color:var(--muted); font-size:.87rem; }

.contact { display:grid; grid-template-columns:1fr 1fr; background:var(--ink); color:#fff; }
.contact-copy, .enquiry-form { padding:clamp(4rem,8vw,8rem) clamp(1.3rem,6vw,6rem); }
.contact-copy { border-right:1px solid var(--white-line); }
.contact h2 { font-size:clamp(2.8rem,4.5vw,5rem); }
.contact-copy > p:not(.eyebrow) { max-width:580px; color:rgba(255,255,255,.6); margin:2rem 0 3rem; }
.contact-points { display:flex; gap:4rem; }
.contact-points small { display:block; color:var(--copper-light); font-size:.58rem; letter-spacing:.15em; margin-bottom:.4rem; }
.contact-points strong { font-size:.82rem; font-weight:500; }
.enquiry-form { background:#22241f; display:flex; flex-direction:column; gap:1.1rem; }
.field-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.enquiry-form label span { display:block; font-size:.66rem; text-transform:uppercase; letter-spacing:.12em; color:rgba(255,255,255,.55); margin-bottom:.42rem; }
.enquiry-form input, .enquiry-form select, .enquiry-form textarea { width:100%; border:1px solid var(--white-line); color:#fff; background:rgba(255,255,255,.025); padding:.9rem 1rem; outline:none; border-radius:0; }
.enquiry-form select { color:rgba(255,255,255,.78); }
.enquiry-form select option { color:var(--ink); }
.enquiry-form input:focus, .enquiry-form select:focus, .enquiry-form textarea:focus { border-color:var(--copper); }
.enquiry-form textarea { resize:vertical; }
.form-submit { margin-top:.5rem; border:0; width:100%; }
.form-note { margin:0; font-size:.66rem; color:rgba(255,255,255,.4); text-align:center; }
.form-note b { color:var(--copper-light); font-weight:500; }

.site-footer { background:#0e0f0d; color:#fff; padding:4rem clamp(1.3rem,5vw,5rem) 1.4rem; display:grid; grid-template-columns:2fr 1fr 1fr; gap:4rem; }
.footer-brand p { color:rgba(255,255,255,.42); max-width:340px; font-size:.8rem; margin-top:1.6rem; }
.footer-links { display:flex; flex-direction:column; align-items:flex-start; gap:.65rem; font-size:.78rem; color:rgba(255,255,255,.48); }
.footer-links b { color:var(--copper-light); font-size:.62rem; letter-spacing:.16em; margin-bottom:.6rem; }
.footer-links a:hover { color:#fff; }
.footer-bottom { grid-column:1/-1; margin-top:2.2rem; padding-top:1.2rem; border-top:1px solid rgba(255,255,255,.1); display:flex; justify-content:space-between; color:rgba(255,255,255,.3); font-size:.63rem; letter-spacing:.08em; }

.reveal { opacity:0; transform:translateY(22px); transition:opacity .7s ease,transform .7s ease; }
.reveal.visible { opacity:1; transform:none; }

@media (max-width: 1050px) {
  .site-header { grid-template-columns:1fr auto; }
  .site-nav { position:fixed; inset:74px 0 0; overflow-y:auto; background:#111210; padding:2rem; flex-direction:column; align-items:flex-start; transform:translateY(calc(-100% - 74px)); opacity:0; visibility:hidden; pointer-events:none; transition:transform .25s, opacity .2s; z-index:-1; }
  .site-nav.open { transform:none; opacity:1; visibility:visible; pointer-events:auto; }
  .header-cta { display:none; }
  .menu-toggle { justify-self:end; display:flex; align-items:center; gap:4px; border:0; background:none; color:#fff; padding:.5rem; cursor:pointer; }
  .menu-toggle span { width:16px; height:1px; background:currentColor; display:block; }
  .menu-toggle b { margin-left:.45rem; font-size:.65rem; letter-spacing:.12em; text-transform:uppercase; }
  .nav-products,.nav-dropdown{display:block;width:100%}.nav-products>a,.nav-dropdown>a{display:block}.mega-menu,.menu-solutions .mega-menu,.menu-finishes .mega-menu,.menu-projects .mega-menu,.menu-about .mega-menu,.menu-contact .mega-menu{position:static;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));padding:1rem 0 0;border:0;border-top:1px solid rgba(255,255,255,.12);box-shadow:none;opacity:1;visibility:visible;pointer-events:auto;transform:none;background:transparent;margin-top:1rem}.mega-menu::before{display:none}.mega-menu div{gap:.35rem}.mega-menu b{margin-top:.7rem}.mega-menu a{font-size:.72rem;padding:.1rem 0}
  .proof-strip { grid-template-columns:1fr 1fr; }
  .proof-strip div:nth-child(2){border-right:0}.proof-strip div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.12)}
  .section-heading { grid-template-columns:1fr; gap:1.5rem; }
  .collection { grid-template-columns:1fr; }
  .collection-media { min-height:520px; }
  .spec-builder { grid-template-columns:140px 1fr; }
  .spec-detail { grid-column:1/-1; border-top:1px solid var(--line); }
  .performance { grid-template-columns:1fr; }
  .performance-intro { border-right:0; border-bottom:1px solid var(--white-line); }
  .contact { grid-template-columns:1fr; }
  .contact-copy { border-right:0; border-bottom:1px solid var(--white-line); }
}

@media (max-width: 740px) {
  .site-header { height:74px; padding:0 1.2rem; }
  .brand { font-size:.82rem; }.brand-mark{width:23px;height:31px}.brand small{font-size:.45rem}
  .hero { min-height:760px; }
  .hero-image { object-position:62% center; }
  .hero-shade { background:linear-gradient(90deg,rgba(11,12,10,.86),rgba(11,12,10,.28)),linear-gradient(0deg,rgba(11,12,10,.55),transparent); }
  .hero-content { width:auto; margin:0 1.3rem; padding-top:3rem; }
  .hero h1 { font-size:clamp(3rem,15vw,4.6rem); }
  .hero-copy { font-size:.95rem; }
  .hero-note { display:none; }.scroll-cue{display:none}
  .proof-strip { margin:0; }.proof-strip div{min-height:110px;padding:1.2rem}.proof-strip strong{font-size:1.75rem}.proof-strip span{font-size:.66rem}
  .section { padding:5.5rem 1.25rem; }
  .section-heading { margin-bottom:2.7rem; }
  .section-heading h2, .collection h2, .performance h2, .contact h2, .process-title h2 { font-size:2.65rem; }
  .solution-grid { grid-template-columns:1fr; }.solution-card{min-height:450px;border-right:0;border-bottom:1px solid var(--line)}.solution-card:last-child{border-bottom:0}
  .collection-media { min-height:340px; }.collection-copy{padding:4.5rem 1.25rem}.collection-tabs button{font-size:.68rem}
  .spec-builder { display:block; }.spec-steps{display:grid;grid-template-columns:1fr 1fr;border-right:0}.spec-steps button{min-height:72px}.spec-steps button:nth-child(odd){border-right:1px solid var(--line)}.spec-visual{min-height:440px}.spec-detail{padding:2rem 1.3rem}
  .performance-intro { padding:5rem 1.3rem; }.performance-list{grid-template-columns:1fr}.performance-list article,.performance-list article:nth-child(2n){border-right:0;border-bottom:1px solid var(--white-line)}.performance-list article:last-child{border-bottom:0}
  .industry-row { grid-template-columns:1fr auto; padding:1.4rem 0; }.industry-row span{grid-column:1/-1;grid-row:2}.industry-row h2{font-size:2rem}
  .process-title { display:block; }.process-grid{grid-template-columns:1fr 1fr}.process-grid li{min-height:230px;border-bottom:1px solid var(--line)}.process-grid li:nth-child(2n){border-right:0}
  .contact-copy,.enquiry-form{padding:4.5rem 1.25rem}.contact-points{gap:2rem;flex-direction:column}.field-grid{grid-template-columns:1fr}
  .site-footer { grid-template-columns:1fr;gap:2.5rem}.footer-bottom{display:block}.footer-bottom span{display:block;margin:.35rem 0}
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *, *::before, *::after { animation-duration:.01ms !important; transition-duration:.01ms !important; }
  .reveal { opacity:1; transform:none; }
}

/* Interior pages */
.subpage { background:#f0efea; }
.subpage .site-header,
.subpage .site-header.scrolled { position:sticky; top:0; height:82px; background:#111210; backdrop-filter:blur(18px); }
.site-nav a.active { color:var(--copper-light); opacity:1; }
.site-nav a.active::after { right:0; }
.inner-hero { min-height:560px; display:grid; grid-template-columns:minmax(0,1.1fr) minmax(380px,.9fr); background:#181a17; color:#fff; overflow:hidden; }
.inner-hero-copy { padding:clamp(5rem,10vw,9rem) clamp(1.3rem,7vw,8rem); display:flex; flex-direction:column; justify-content:center; }
.inner-hero h1 { margin:0; font:600 clamp(3.4rem,6.5vw,7rem)/.95 "Manrope",sans-serif; letter-spacing:-.065em; }
.inner-hero h1 em { display:block; font-style:normal; color:var(--copper-light); font-weight:500; }
.inner-hero-copy > p:last-child { max-width:660px; margin:2rem 0 0; color:rgba(255,255,255,.58); font-size:1rem; }
.inner-hero-media { min-height:560px; position:relative; }
.inner-hero-media img { width:100%; height:100%; object-fit:cover; }
.inner-hero-media::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#181a17 0%,transparent 22%); }
.inner-index { position:absolute; z-index:2; right:2rem; bottom:1.5rem; color:rgba(255,255,255,.65); font-size:.65rem; letter-spacing:.16em; }
.page-section { max-width:var(--max); margin:0 auto; padding:clamp(5rem,9vw,9rem) clamp(1.3rem,5vw,4.5rem); }
.page-intro { display:grid; grid-template-columns:1.15fr .85fr; gap:clamp(2rem,8vw,8rem); align-items:end; margin-bottom:4rem; }
.page-intro h2 { margin:0; font:600 clamp(2.5rem,4.8vw,5.2rem)/1.02 "Manrope",sans-serif; letter-spacing:-.055em; }
.page-intro h2 em { color:var(--copper); font-style:normal; font-weight:500; }
.page-intro > p { margin:0; color:var(--muted); line-height:1.9; }
.product-list { border-top:1px solid var(--ink); }
.product-row { display:grid; grid-template-columns:110px 1.1fr 1fr auto; gap:2rem; align-items:center; min-height:190px; border-bottom:1px solid var(--line); padding:2rem 0; }
.product-row > span { color:var(--copper); font-size:.66rem; letter-spacing:.14em; }
.product-row h3 { margin:0; font:600 clamp(1.7rem,3vw,3.1rem)/1.1 "Manrope",sans-serif; letter-spacing:-.045em; }
.product-row p { color:var(--muted); margin:0; }
.round-link { width:52px; height:52px; border:1px solid var(--line); border-radius:50%; display:grid; place-items:center; transition:.2s; }
.product-row:hover .round-link { background:var(--copper); color:#fff; border-color:var(--copper); transform:rotate(45deg); }
.product-specs { display:grid; grid-template-columns:repeat(4,1fr); border:1px solid var(--line); }
.product-specs div { padding:1.5rem; border-right:1px solid var(--line); }
.product-specs div:last-child { border-right:0; }
.product-specs small { display:block; color:var(--muted); font-size:.64rem; letter-spacing:.12em; text-transform:uppercase; }
.product-specs strong { display:block; margin-top:.65rem; font:600 1rem "Manrope"; }
.split-feature { display:grid; grid-template-columns:1fr 1fr; background:#1a1c18; color:#fff; }
.split-feature-media { min-height:620px; }
.split-feature-media img { width:100%; height:100%; object-fit:cover; }
.split-feature-copy { padding:clamp(4rem,8vw,8rem); align-self:center; }
.split-feature h2 { margin:0; font:600 clamp(2.6rem,4.5vw,5rem)/1 "Manrope"; letter-spacing:-.06em; }
.split-feature h2 em { display:block; color:var(--copper-light); font-style:normal; }
.split-feature-copy > p { color:rgba(255,255,255,.58); margin:2rem 0; max-width:560px; }
.feature-bullets { list-style:none; padding:0; margin:2rem 0 0; border-top:1px solid var(--white-line); }
.feature-bullets li { display:flex; justify-content:space-between; gap:1rem; padding:1rem 0; border-bottom:1px solid var(--white-line); color:rgba(255,255,255,.72); }
.feature-bullets span { color:var(--copper-light); font-size:.7rem; }
.matrix { border-top:1px solid var(--ink); }
.matrix-row { display:grid; grid-template-columns:1fr 1.2fr .9fr; gap:2rem; padding:1.8rem 0; border-bottom:1px solid var(--line); align-items:start; }
.matrix-row h3 { margin:0; font:600 1.25rem "Manrope"; }
.matrix-row p { margin:0; color:var(--muted); }
.matrix-row b { color:var(--copper); font-size:.68rem; font-weight:600; letter-spacing:.12em; text-transform:uppercase; }
.card-explore { display:inline-flex; align-items:center; gap:.7rem; margin-top:1.1rem; color:var(--copper); font-size:.65rem; font-weight:600; letter-spacing:.12em; text-transform:uppercase; }
.matrix-row h3 a span { color:var(--copper); font-size:.75rem; margin-left:.4rem; }
.finish-grid { display:grid; grid-template-columns:repeat(4,1fr); border:1px solid var(--line); }
.finish-card { min-height:410px; padding:1.5rem; border-right:1px solid var(--line); display:flex; flex-direction:column; }
.finish-card:last-child { border-right:0; }
.finish-sample { flex:1; min-height:250px; margin-bottom:1.3rem; position:relative; overflow:hidden; }
.finish-sample::before,.finish-sample::after { content:""; position:absolute; inset:0; }
.finish-sample::after { opacity:.38; background:repeating-linear-gradient(88deg,transparent 0 20px,rgba(27,13,4,.25) 22px,transparent 25px); }
.finish-sample.oak { background:#aa7d51; }.finish-sample.walnut{background:#5c4130}.finish-sample.ash{background:#c5b08d}.finish-sample.paint{background:#3b3d39}
.finish-card h3 { margin:0; font:600 1.1rem "Manrope"; }
.finish-card p { margin:.5rem 0 0; color:var(--muted); font-size:.78rem; }
.project-band { min-height:620px; position:relative; color:#fff; display:grid; align-items:end; overflow:hidden; }
.project-band > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.project-band::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(10,11,9,.92),rgba(10,11,9,.05) 72%); }
.project-band-content { position:relative; z-index:2; padding:clamp(3rem,7vw,7rem); display:grid; grid-template-columns:1.2fr .8fr; align-items:end; gap:4rem; }
.project-band h2 { margin:0; font:600 clamp(2.8rem,5vw,5.4rem)/1 "Manrope"; letter-spacing:-.06em; }
.project-band-content p { margin:0; color:rgba(255,255,255,.65); }
.principles { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--ink); }
.principle { padding:2.2rem 2rem 2.2rem 0; border-right:1px solid var(--line); }
.principle + .principle { padding-left:2rem; }
.principle:last-child { border-right:0; }
.principle span { color:var(--copper); font-size:.65rem; }
.principle h3 { font:600 1.3rem "Manrope"; margin:2rem 0 .8rem; }
.principle p { color:var(--muted); font-size:.86rem; }
.cta-band { background:var(--copper); color:#fff; padding:clamp(3rem,6vw,6rem) clamp(1.3rem,7vw,8rem); display:flex; align-items:center; justify-content:space-between; gap:2rem; }
.cta-band h2 { margin:0; font:600 clamp(2rem,4vw,4rem)/1.05 "Manrope"; letter-spacing:-.05em; }
.cta-band .button { background:#111210; }
.contact-page { display:grid; grid-template-columns:.8fr 1.2fr; max-width:var(--max); margin:0 auto; padding:clamp(5rem,9vw,9rem) clamp(1.3rem,5vw,4.5rem); gap:clamp(3rem,8vw,8rem); }
.contact-aside h2 { margin:0; font:600 clamp(2.6rem,4vw,4.7rem)/1.02 "Manrope"; letter-spacing:-.055em; }
.contact-aside h2 em { color:var(--copper); font-style:normal; }
.contact-aside > p { color:var(--muted); margin:2rem 0 3rem; }
.contact-card { border-top:1px solid var(--line); padding:1rem 0; }
.contact-card small { color:var(--copper); font-size:.62rem; letter-spacing:.12em; }
.contact-card p { margin:.35rem 0 0; }
.contact-page .enquiry-form { padding:clamp(2rem,5vw,4rem); color:#fff; }
.taxonomy-grid { display:grid; grid-template-columns:1.2fr .8fr .8fr; border:1px solid var(--line); }
.taxonomy-group { padding:clamp(1.5rem,3vw,2.6rem); border-right:1px solid var(--line); }
.taxonomy-group:last-child { border-right:0; }
.taxonomy-group > span { color:var(--copper); font-size:.62rem; letter-spacing:.15em; }
.taxonomy-group h3 { font:600 1.45rem "Manrope"; margin:.8rem 0 1.6rem; }
.taxonomy-group nav { display:flex; flex-direction:column; }
.taxonomy-group a { display:flex; justify-content:space-between; gap:1rem; padding:.72rem 0; border-top:1px solid var(--line); color:var(--muted); font-size:.84rem; transition:color .2s,padding .2s; }
.taxonomy-group a:hover { color:var(--ink); padding-left:.4rem; }.taxonomy-group a span{color:var(--copper)}
.category-hero { min-height:680px; display:grid; grid-template-columns:.9fr 1.1fr; background:#161814; color:#fff; overflow:hidden; }
.category-hero-copy { padding:clamp(4.5rem,9vw,9rem) clamp(1.3rem,6vw,6.5rem); display:flex; flex-direction:column; justify-content:center; }
.category-code { color:var(--copper-light); font-size:.65rem; letter-spacing:.18em; margin-bottom:2rem; }
.category-hero h1 { margin:0; font:600 clamp(3.2rem,5.8vw,6.2rem)/.96 "Manrope",sans-serif; letter-spacing:-.065em; }
.category-hero h1 em { display:block; color:var(--copper-light); font-style:normal; font-weight:500; }
.category-hero-copy > p { color:rgba(255,255,255,.58); max-width:600px; margin:2rem 0; }
.category-hero-media { position:relative; min-height:600px; }
.category-hero-media img { width:100%; height:100%; object-fit:cover; }
.category-hero-media::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#161814 0%,transparent 18%); }
.category-facts { max-width:var(--max); margin:0 auto; display:grid; grid-template-columns:repeat(4,1fr); border-left:1px solid var(--line); border-bottom:1px solid var(--line); }
.category-fact { padding:1.5rem; border-right:1px solid var(--line); }
.category-fact small { display:block; color:var(--muted); font-size:.61rem; letter-spacing:.14em; text-transform:uppercase; }
.category-fact strong { display:block; margin-top:.6rem; font:600 .9rem/1.4 "Manrope"; }
.category-story { display:grid; grid-template-columns:.75fr 1.25fr; gap:clamp(3rem,8vw,8rem); }
.category-story h2 { margin:0; font:600 clamp(2.5rem,4.8vw,5rem)/1 "Manrope"; letter-spacing:-.055em; }
.category-story h2 em { display:block; color:var(--copper); font-style:normal; font-weight:500; }
.category-story-copy > p { color:var(--muted); font-size:1rem; line-height:1.9; margin:0 0 2.2rem; }
.feature-list { border-top:1px solid var(--ink); }
.feature-item { display:grid; grid-template-columns:52px 1fr; gap:1rem; padding:1.25rem 0; border-bottom:1px solid var(--line); }
.feature-item span { color:var(--copper); font-size:.65rem; }.feature-item h3{font:600 1rem "Manrope";margin:0 0 .3rem}.feature-item p{margin:0;color:var(--muted);font-size:.82rem}
.application-grid { display:grid; grid-template-columns:repeat(3,1fr); border:1px solid var(--line); }
.application-card { min-height:180px; padding:1.6rem; border-right:1px solid var(--line); border-bottom:1px solid var(--line); display:flex; flex-direction:column; justify-content:space-between; }
.application-card:nth-child(3n){border-right:0}.application-card:nth-last-child(-n+3){border-bottom:0}
.application-card span{color:var(--copper);font-size:.64rem}.application-card h3{font:600 1.08rem "Manrope";margin:2.8rem 0 0}
.configuration-band { background:#1a1c18; color:#fff; padding:clamp(5rem,9vw,9rem) clamp(1.3rem,7vw,8rem); }
.configuration-head { max-width:var(--max); margin:0 auto 3.5rem; display:grid; grid-template-columns:1fr 1fr; gap:4rem; align-items:end; }
.configuration-head h2 { margin:0; font:600 clamp(2.6rem,4.7vw,5rem)/1 "Manrope"; letter-spacing:-.06em; }.configuration-head h2 em{display:block;color:var(--copper-light);font-style:normal}.configuration-head p{color:rgba(255,255,255,.55);margin:0}
.configuration-grid { max-width:var(--max); margin:0 auto; display:grid; grid-template-columns:repeat(3,1fr); border:1px solid var(--white-line); }
.configuration-card { min-height:260px; padding:2rem; border-right:1px solid var(--white-line); }.configuration-card:last-child{border-right:0}.configuration-card span{color:var(--copper-light);font-size:.62rem}.configuration-card h3{font:600 1.3rem "Manrope";margin:3rem 0 .8rem}.configuration-card p{color:rgba(255,255,255,.5);font-size:.82rem}
.resource-grid { display:grid; grid-template-columns:repeat(3,1fr); border:1px solid var(--line); }.resource-card{padding:2rem;border-right:1px solid var(--line);min-height:260px;display:flex;flex-direction:column}.resource-card:last-child{border-right:0}.resource-card small{color:var(--copper);letter-spacing:.13em}.resource-card h3{font:600 1.35rem "Manrope";margin:2rem 0 .7rem}.resource-card p{color:var(--muted);font-size:.84rem}.resource-card a{margin-top:auto;border-top:1px solid var(--line);padding-top:.8rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;display:flex;justify-content:space-between}

@media (max-width:1050px) {
  .inner-hero { grid-template-columns:1fr; }.inner-hero-media{min-height:420px}.inner-hero-media::after{background:linear-gradient(0deg,#181a17 0%,transparent 22%)}
  .finish-grid { grid-template-columns:1fr 1fr; }.finish-card:nth-child(2){border-right:0}.finish-card:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .contact-page { grid-template-columns:1fr; }
  .mega-menu { left:-100px; transform:translate(0,-8px); }.nav-products:hover .mega-menu,.nav-products.is-open .mega-menu{transform:none}
  .category-hero { grid-template-columns:1fr; }.category-hero-media{min-height:480px}.category-hero-media::after{background:linear-gradient(0deg,#161814 0%,transparent 18%)}
  .taxonomy-grid{grid-template-columns:1fr 1fr}.taxonomy-group:first-child{grid-column:1/-1;border-right:0;border-bottom:1px solid var(--line)}
}
@media (max-width:740px) {
  .subpage .site-header,.subpage .site-header.scrolled{height:74px}
  .inner-hero{min-height:0}.inner-hero-copy{padding:4.8rem 1.25rem}.inner-hero h1{font-size:3.2rem}.inner-hero-media{min-height:320px}
  .page-section{padding:5rem 1.25rem}.page-intro{grid-template-columns:1fr;gap:1.4rem}.page-intro h2{font-size:2.7rem}
  .product-row{grid-template-columns:48px 1fr auto;gap:1rem}.product-row p{grid-column:2/-1}.product-row h3{font-size:1.65rem}.product-specs{grid-template-columns:1fr 1fr}.product-specs div:nth-child(2){border-right:0}.product-specs div:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .split-feature{grid-template-columns:1fr}.split-feature-media{min-height:380px}.split-feature-copy{padding:4.5rem 1.25rem}
  .matrix-row{grid-template-columns:1fr;gap:.6rem;padding:1.4rem 0}.finish-grid{grid-template-columns:1fr}.finish-card,.finish-card:nth-child(2){border-right:0;border-bottom:1px solid var(--line)}
  .project-band{min-height:600px}.project-band-content{grid-template-columns:1fr;gap:1.5rem;padding:3rem 1.25rem}.project-band h2{font-size:2.8rem}
  .principles{grid-template-columns:1fr}.principle,.principle + .principle{padding:2rem 0;border-right:0;border-bottom:1px solid var(--line)}
  .cta-band{display:block}.cta-band .button{margin-top:1.5rem}.contact-page{padding:5rem 1.25rem}.contact-page .enquiry-form{padding:2rem 1.2rem}
  .nav-products,.nav-dropdown{display:block;width:100%}.nav-products>a,.nav-dropdown>a{display:block}.mega-menu,.menu-solutions .mega-menu,.menu-finishes .mega-menu,.menu-projects .mega-menu,.menu-about .mega-menu,.menu-contact .mega-menu{position:static;width:100%;grid-template-columns:1fr;padding:1rem 0 0;border:0;border-top:1px solid rgba(255,255,255,.12);box-shadow:none;opacity:1;visibility:visible;pointer-events:auto;transform:none;background:transparent;margin-top:1rem}.mega-menu::before{display:none}.mega-menu div{gap:.35rem}.mega-menu b{margin-top:.7rem}.mega-menu a{font-size:.72rem;padding:.1rem 0}
  .taxonomy-grid{grid-template-columns:1fr}.taxonomy-group,.taxonomy-group:first-child{grid-column:auto;border-right:0;border-bottom:1px solid var(--line)}.taxonomy-group:last-child{border-bottom:0}
  .category-hero{min-height:0}.category-hero-copy{padding:4.5rem 1.25rem}.category-hero h1{font-size:3.1rem}.category-hero-media{min-height:330px}.category-facts{grid-template-columns:1fr 1fr}.category-fact:nth-child(2){border-right:0}.category-story{grid-template-columns:1fr;gap:2.5rem}.application-grid{grid-template-columns:1fr}.application-card,.application-card:nth-child(3n),.application-card:nth-last-child(-n+3){border-right:0;border-bottom:1px solid var(--line)}.application-card:last-child{border-bottom:0}.configuration-head{grid-template-columns:1fr;gap:1.5rem}.configuration-grid{grid-template-columns:1fr}.configuration-card{border-right:0;border-bottom:1px solid var(--white-line)}.configuration-card:last-child{border-bottom:0}.resource-grid{grid-template-columns:1fr}.resource-card{border-right:0;border-bottom:1px solid var(--line)}.resource-card:last-child{border-bottom:0}
}
