:root {
    --ink: #090a0b;
    --ink-2: #0f1113;
    --ink-3: #17191c;
    --paper: #f1f1ee;
    --paper-2: #deded9;
    --white: #fff;
    --text: #f6f5f0;
    --muted: #a9aaac;
    --dark-text: #17181a;
    --dark-muted: #66696d;
    --gold: #c5a56b;
    --gold-light: #e4cd9e;
    --gold-dark: #8c6d3e;
    --line: rgba(255,255,255,.12);
    --dark-line: rgba(9,10,11,.13);
    --radius: 2px;
    --container: min(1240px, calc(100% - 64px));
    color-scheme: dark;
    font-family: Inter, "Avenir Next", Avenir, "Segoe UI", Helvetica, Arial, sans-serif;
}

* { box-sizing: border-box; }
html { background: var(--ink); scroll-behavior: smooth; scroll-padding-top: 96px; }
body { margin: 0; min-width: 320px; color: var(--text); background: var(--ink); font-size: 16px; line-height: 1.6; -webkit-font-smoothing: antialiased; }
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
img, svg { display: block; max-width: 100%; }
button, input, select, textarea { font: inherit; }
button { color: inherit; }
.container { width: var(--container); margin-inline: auto; }
.skip-link { position: fixed; z-index: 9999; top: 12px; left: 12px; padding: 10px 16px; background: var(--gold); color: var(--ink); transform: translateY(-150%); }
.skip-link:focus { transform: none; }

.topline { border-bottom: 1px solid var(--line); background: #050607; color: #8f9295; font-size: 11px; letter-spacing: .11em; text-transform: uppercase; }
.topline-inner { min-height: 33px; display: flex; align-items: center; justify-content: space-between; }
.topline-inner div { display: flex; gap: 28px; }
.topline a:hover { color: var(--gold-light); }
.site-header { position: relative; z-index: 100; height: 88px; border-bottom: 1px solid var(--line); background: rgba(9,10,11,.94); backdrop-filter: blur(18px); }
.site-header.is-sticky { position: sticky; top: 0; height: 74px; box-shadow: 0 18px 50px rgba(0,0,0,.28); }
.header-inner { height: 100%; display: flex; align-items: center; justify-content: space-between; }
.brand { display: inline-flex; align-items: center; gap: 13px; font-size: 14px; font-weight: 500; letter-spacing: .17em; line-height: 1; }
.brand strong { color: var(--gold-light); font-weight: 800; }
.brand span { display: grid; }
.brand small { margin-top: 7px; color: #777b7f; font-size: 7px; font-weight: 700; letter-spacing: .28em; }
.brand-symbol { width: 36px; height: 36px; overflow: visible; }
.brand-symbol path:first-child { fill: none; stroke: var(--gold); stroke-width: 1.35; }
.brand-symbol path:last-child { fill: none; stroke: var(--text); stroke-width: 1.3; }
.site-nav { height: 100%; display: flex; align-items: center; gap: clamp(18px, 2vw, 31px); color: #b5b6b7; font-size: 12px; font-weight: 650; letter-spacing: .04em; }
.site-nav > a:not(.button) { position: relative; display: inline-flex; height: 100%; align-items: center; }
.site-nav > a:not(.button)::after { content: ""; position: absolute; right: 0; bottom: -1px; left: 0; height: 1px; background: var(--gold); transform: scaleX(0); transition: transform .25s ease; }
.site-nav > a:not(.button):hover, .site-nav > a[aria-current="page"] { color: var(--white); }
.site-nav > a:not(.button):hover::after, .site-nav > a[aria-current="page"]::after { transform: scaleX(1); }
.language-link { color: var(--gold-light) !important; }
.menu-toggle { display: none; border: 0; background: none; }

.button { display: inline-flex; min-height: 52px; align-items: center; justify-content: center; gap: 24px; border: 1px solid transparent; padding: 0 25px; font-size: 12px; font-weight: 800; letter-spacing: .065em; text-transform: uppercase; transition: transform .25s ease, background .25s ease, color .25s ease, border-color .25s ease; }
.button:hover { transform: translateY(-2px); }
.button-gold { color: #15120d; background: linear-gradient(135deg, var(--gold-light), var(--gold)); box-shadow: 0 16px 45px rgba(197,165,107,.13); }
.button-gold:hover { background: var(--gold-light); }
.button-outline { border-color: var(--line); background: rgba(255,255,255,.02); color: var(--text); }
.button-outline:hover { border-color: var(--gold); }
.button-small { min-height: 39px; padding: 0 17px; font-size: 10px; gap: 12px; }
.text-link { display: inline-flex; color: var(--gold-light); font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.text-link:hover { color: var(--white); }
.eyebrow, .section-kicker { display: inline-flex; align-items: center; gap: 12px; color: var(--gold-light); font-size: 10px; font-weight: 800; letter-spacing: .22em; text-transform: uppercase; }
.eyebrow span { width: 32px; height: 1px; background: var(--gold); }

.hero-home { min-height: calc(100vh - 121px); position: relative; overflow: hidden; background: radial-gradient(circle at 76% 45%, rgba(197,165,107,.09), transparent 25rem), linear-gradient(120deg, #08090a 45%, #101214); }
.hero-home::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(90deg, transparent 49.93%, rgba(255,255,255,.035) 50%, transparent 50.07%); }
.hero-noise { position: absolute; inset: 0; opacity: .23; background-image: linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px); background-size: 72px 72px; mask-image: linear-gradient(90deg, black, transparent 85%); }
.hero-home-grid { min-height: calc(100vh - 166px); display: grid; grid-template-columns: 1.08fr .92fr; align-items: center; position: relative; z-index: 2; }
.hero-home-copy { max-width: 740px; padding: 80px 0; }
.hero-home h1, .page-hero h1, .quote-intro h1, .success-panel h1 { margin: 27px 0 0; font-size: clamp(49px, 6.1vw, 92px); font-weight: 620; letter-spacing: -.062em; line-height: .98; text-wrap: balance; }
.hero-home h1 { max-width: 830px; }
.hero-lead { max-width: 660px; margin: 30px 0 0; color: #b7b8b9; font-size: clamp(17px, 1.5vw, 21px); line-height: 1.65; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 38px; }
.hero-trust { display: flex; margin-top: 60px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.hero-trust span { min-width: 150px; display: grid; gap: 2px; padding: 16px 24px 16px 0; color: #85888a; font-size: 9px; letter-spacing: .12em; text-transform: uppercase; }
.hero-trust span + span { padding-left: 24px; border-left: 1px solid var(--line); }
.hero-trust b { color: var(--text); font-size: 13px; letter-spacing: .05em; }
.hero-visual { display: grid; place-items: center; min-height: 620px; }
.hazard-stage { width: min(580px, 48vw); aspect-ratio: 1; display: grid; place-items: center; position: relative; }
.hazard-rings { position: absolute; inset: 0; overflow: visible; animation: slow-spin 34s linear infinite; }
.hazard-rings circle, .hazard-rings path { fill: none; stroke: rgba(197,165,107,.25); stroke-width: 1; stroke-dasharray: 4 10; }
.hazard-rings circle:nth-child(2) { stroke: rgba(255,255,255,.09); stroke-dasharray: none; }
.hazard-rings circle:nth-child(3) { stroke: rgba(197,165,107,.12); stroke-dasharray: 2 7; }
.fixture-hero { position: relative; z-index: 2; width: 58%; filter: drop-shadow(0 40px 45px rgba(0,0,0,.65)); animation: fixture-float 6s ease-in-out infinite; }
.fixture-hero img { width: 100%; }
.orbit-label { position: absolute; z-index: 3; padding: 5px 9px; border: 1px solid rgba(197,165,107,.28); color: var(--gold-light); background: rgba(9,10,11,.78); font-size: 9px; font-weight: 800; letter-spacing: .14em; }
.orbit-label-a { top: 18%; right: 13%; }.orbit-label-b { right: 5%; bottom: 28%; }.orbit-label-c { bottom: 13%; left: 19%; }
.hero-scan { position: absolute; z-index: 4; width: 70%; height: 1px; background: linear-gradient(90deg, transparent, var(--gold-light), transparent); box-shadow: 0 0 17px var(--gold); animation: scan 5s ease-in-out infinite; }
.hero-index { height: 45px; position: relative; z-index: 3; display: flex; align-items: center; gap: 16px; color: #6f7274; font-size: 8px; letter-spacing: .2em; }
.hero-index i { width: 70px; height: 1px; background: var(--gold-dark); }

.proof-strip { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); background: #0c0d0f; }
.proof-grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.proof-grid div { min-height: 115px; display: grid; align-content: center; gap: 5px; padding: 0 28px; border-right: 1px solid var(--line); }
.proof-grid div:first-child { border-left: 1px solid var(--line); }
.proof-grid strong { font-size: 17px; letter-spacing: -.02em; }
.proof-grid span { color: #797c7f; font-size: 10px; letter-spacing: .09em; text-transform: uppercase; }

.section { padding: clamp(85px, 10vw, 145px) 0; }
.section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 50px; margin-bottom: 56px; }
.section-heading h2, .engineering-copy h2, .split-content h2, .contact-action h2, .data-grid h2, .feature-grid h2 { max-width: 760px; margin: 14px 0 0; font-size: clamp(36px, 4.3vw, 62px); font-weight: 560; letter-spacing: -.052em; line-height: 1.04; }
.section-heading > p { max-width: 470px; margin: 0; color: var(--dark-muted); }
.section-categories { color: var(--dark-text); background: var(--paper); }
.category-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--dark-line); border-left: 1px solid var(--dark-line); }
.category-card { min-height: 460px; display: grid; grid-template-rows: auto 170px 1fr; padding: 25px 28px 30px; border-right: 1px solid var(--dark-line); border-bottom: 1px solid var(--dark-line); background: rgba(255,255,255,.12); transition: background .3s ease, transform .3s ease; }
.category-card:hover { position: relative; z-index: 2; background: var(--white); transform: translateY(-5px); box-shadow: 0 30px 60px rgba(16,17,18,.09); }
.card-index { color: var(--gold-dark); font-size: 10px; font-weight: 800; letter-spacing: .13em; }
.category-card img { width: 70%; height: 150px; align-self: center; justify-self: center; object-fit: contain; opacity: .86; }
.category-card h3 { margin: 10px 0 10px; font-size: 23px; letter-spacing: -.035em; }
.category-card p { min-height: 72px; margin: 0 0 22px; color: var(--dark-muted); font-size: 13px; }
.category-card b { color: var(--gold-dark); font-size: 9px; letter-spacing: .12em; text-transform: uppercase; }

.engineering-section { background: var(--ink-2); }
.engineering-grid { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: clamp(60px, 9vw, 130px); }
.engineering-visual { min-height: 560px; position: relative; display: grid; align-content: center; justify-items: center; overflow: hidden; border: 1px solid var(--line); background: #0b0c0e; }
.blueprint-grid { position: absolute; inset: 0; opacity: .28; background-image: linear-gradient(rgba(197,165,107,.11) 1px, transparent 1px), linear-gradient(90deg, rgba(197,165,107,.11) 1px, transparent 1px); background-size: 34px 34px; }
.blueprint-ring { position: absolute; width: 380px; aspect-ratio: 1; border: 1px solid rgba(197,165,107,.24); border-radius: 50%; box-shadow: inset 0 0 0 54px rgba(197,165,107,.025), inset 0 0 0 55px rgba(197,165,107,.13); }
.engineering-visual > span { position: relative; z-index: 2; color: var(--gold); font-size: 11px; font-weight: 800; letter-spacing: .35em; }
.engineering-visual > strong { position: relative; z-index: 2; margin-top: 16px; text-align: center; font-size: clamp(40px, 5vw, 70px); line-height: .88; letter-spacing: -.065em; }
.engineering-visual > small { position: absolute; z-index: 2; bottom: 28px; color: #696d70; font-size: 8px; letter-spacing: .18em; }
.engineering-copy > p { max-width: 600px; margin: 26px 0; color: var(--muted); font-size: 17px; }
.engineering-list { margin: 38px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.engineering-list li { display: grid; grid-template-columns: 48px 1fr; gap: 18px; padding: 21px 0; border-bottom: 1px solid var(--line); }
.engineering-list li > span { color: var(--gold); font-size: 10px; font-weight: 800; }
.engineering-list b { font-size: 14px; }.engineering-list p { margin: 4px 0 0; color: #74777a; font-size: 12px; }

.section-products, .catalog-section, .related-section { color: var(--dark-text); background: #e6e6e2; }
.section-products .section-kicker, .catalog-section .section-kicker, .related-section .section-kicker { color: var(--gold-dark); }
.product-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--dark-line); border: 1px solid var(--dark-line); }
.product-card { min-width: 0; background: #ededeb; transition: box-shadow .25s ease, transform .25s ease; }
.product-card:hover { position: relative; z-index: 2; transform: translateY(-4px); box-shadow: 0 24px 55px rgba(15,16,17,.14); }
.product-visual { height: 310px; position: relative; display: grid; place-items: center; overflow: hidden; border-bottom: 1px solid var(--dark-line); background: linear-gradient(145deg, #d5d5d0, #efefec); }
.product-visual::before { content: ""; position: absolute; width: 240px; aspect-ratio: 1; border: 1px solid rgba(90,72,42,.13); border-radius: 50%; box-shadow: inset 0 0 0 45px rgba(255,255,255,.18); }
.product-visual > span { position: absolute; z-index: 2; top: 18px; left: 20px; color: #7d6948; font-size: 9px; font-weight: 800; letter-spacing: .13em; }
.product-visual img { position: relative; z-index: 1; width: 60%; height: 205px; object-fit: contain; filter: drop-shadow(0 25px 22px rgba(0,0,0,.22)); transition: transform .4s ease; }
.product-card:hover .product-visual img { transform: scale(1.045) rotate(-1deg); }
.visual-badges { position: absolute; z-index: 2; right: 16px; bottom: 16px; display: flex; gap: 5px; }
.visual-badges b { padding: 5px 7px; border: 1px solid rgba(0,0,0,.12); color: #5f513a; background: rgba(255,255,255,.55); font-size: 8px; letter-spacing: .08em; }
.product-card-body { padding: 26px 26px 22px; }
.product-card-body > small { color: var(--gold-dark); font-size: 9px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.product-card h2, .product-card h3 { margin: 9px 0 11px; font-size: 22px; line-height: 1.2; letter-spacing: -.035em; }
.product-card h2 { font-size: 24px; }
.product-card-body > p { min-height: 63px; margin: 0 0 23px; color: var(--dark-muted); font-size: 12px; line-height: 1.7; }
.product-card-foot { display: flex; align-items: center; justify-content: space-between; padding-top: 17px; border-top: 1px solid var(--dark-line); }
.product-card-foot b { color: #5f6264; font-size: 9px; letter-spacing: .12em; }
.product-card-foot a { width: 31px; height: 31px; display: grid; place-items: center; color: var(--paper); background: var(--ink); transition: background .2s; }
.product-card-foot a:hover { background: var(--gold-dark); }

.industry-preview { background: #0c0d0e; }
.industry-preview-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.industry-card { min-height: 280px; padding: 34px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.industry-card > span { color: var(--gold); font-size: 10px; letter-spacing: .15em; }
.industry-card h3 { max-width: 280px; margin: 65px 0 14px; font-size: 25px; line-height: 1.2; letter-spacing: -.035em; }
.industry-card p { margin: 0; color: #7f8284; font-size: 13px; }
.blog-preview { color: var(--dark-text); background: var(--paper); }
.post-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; border: 1px solid var(--dark-line); background: var(--dark-line); }
.post-card { min-height: 340px; padding: 30px; background: var(--paper); }
.post-meta { display: flex; gap: 17px; color: #7c7f81; font-size: 9px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.post-card h3 { margin: 58px 0 18px; font-size: 24px; line-height: 1.2; letter-spacing: -.04em; }
.post-card > p { margin: 0 0 28px; color: var(--dark-muted); font-size: 13px; }

.page-hero { padding: clamp(95px, 12vw, 170px) 0 95px; border-bottom: 1px solid var(--line); background: radial-gradient(circle at 80% 20%, rgba(197,165,107,.1), transparent 30rem), #0b0c0e; }
.page-hero-grid { display: grid; grid-template-columns: 1.25fr .75fr; align-items: end; gap: 70px; }
.page-hero h1 { max-width: 880px; font-size: clamp(50px, 6.8vw, 96px); }
.page-hero-lead { max-width: 500px; margin: 0 0 4px; color: #a3a5a7; font-size: 18px; line-height: 1.7; }
.page-hero-catalog { padding-bottom: 70px; }
.about-story { background: var(--paper); color: var(--dark-text); }
.split-content { display: grid; grid-template-columns: .85fr 1.15fr; gap: 100px; }
.split-content .section-kicker { color: var(--gold-dark); }
.prose { padding-left: 60px; border-left: 1px solid var(--dark-line); }
.prose p { margin: 0 0 27px; color: #585b5f; font-size: 18px; }
.values-section { padding-top: 0; color: var(--dark-text); background: var(--paper); }
.values-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--dark-line); border-left: 1px solid var(--dark-line); }
.values-grid article { min-height: 280px; padding: 30px; border-right: 1px solid var(--dark-line); border-bottom: 1px solid var(--dark-line); }
.values-grid span { color: var(--gold-dark); font-size: 10px; }.values-grid h3 { margin: 70px 0 13px; font-size: 23px; }.values-grid p { color: var(--dark-muted); font-size: 13px; }
.mission-section { background: var(--ink-2); }.mission-section .engineering-visual > strong { font-size: 90px; }.mission-section .button { margin-top: 14px; }

.industry-full-grid { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.industry-full-card { min-height: 300px; display: grid; grid-template-columns: 70px 1fr; gap: 30px; padding: 43px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: #0d0f10; }
.industry-full-card > span { color: var(--gold); font-size: 11px; font-weight: 800; }.industry-full-card h2 { margin: 0 0 18px; font-size: 29px; line-height: 1.18; }.industry-full-card p { margin: 0 0 35px; color: var(--muted); }
.process-section { color: var(--dark-text); background: var(--paper); }
.process-section .section-kicker { color: var(--gold-dark); }
.process-grid { display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid var(--dark-line); border-left: 1px solid var(--dark-line); }
.process-grid article { min-height: 230px; padding: 28px; border-right: 1px solid var(--dark-line); border-bottom: 1px solid var(--dark-line); }
.process-grid span { color: var(--gold-dark); font-size: 10px; }.process-grid h3 { margin: 70px 0 8px; font-size: 20px; }.process-grid p { margin: 0; color: var(--dark-muted); font-size: 11px; letter-spacing: .05em; }

.contact-section { background: var(--paper); color: var(--dark-text); }
.contact-grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: 1px; background: var(--dark-line); border: 1px solid var(--dark-line); }
.contact-cards { display: grid; gap: 1px; background: var(--dark-line); }
.contact-card { min-height: 150px; position: relative; display: grid; align-content: center; gap: 9px; padding: 30px 40px; background: #e8e8e4; }
.contact-card span { color: var(--gold-dark); font-size: 9px; font-weight: 800; letter-spacing: .15em; }.contact-card strong { max-width: 450px; font-size: 22px; }.contact-card i { position: absolute; right: 30px; font-style: normal; }
.contact-action { padding: 65px; background: #d9d9d4; }.contact-action .section-kicker { color: var(--gold-dark); }.contact-action h2 { margin-bottom: 23px; }.contact-action p { color: var(--dark-muted); }.contact-action .button { margin-top: 24px; }

.catalog-toolbar { position: sticky; z-index: 30; top: 74px; border-bottom: 1px solid var(--line); background: rgba(12,13,15,.97); backdrop-filter: blur(15px); }
.filter-bar { min-height: 72px; display: flex; align-items: center; gap: 7px; overflow-x: auto; scrollbar-width: none; }
.filter-bar::-webkit-scrollbar { display: none; }
.filter-bar button { flex: 0 0 auto; display: inline-flex; gap: 10px; padding: 9px 13px; border: 1px solid var(--line); color: #979a9d; background: transparent; font-size: 10px; cursor: pointer; }
.filter-bar button span { color: #606366; }.filter-bar button:hover, .filter-bar button.is-active { color: #17130d; border-color: var(--gold); background: var(--gold-light); }.filter-bar button.is-active span { color: #5b472a; }
.catalog-section { padding-top: 45px; }.catalog-status { margin-bottom: 15px; color: #76797c; font-size: 10px; letter-spacing: .12em; text-transform: uppercase; }.product-card[hidden] { display: none; }

.breadcrumbs { min-height: 61px; display: flex; align-items: center; gap: 10px; overflow: hidden; color: #6f7275; font-size: 10px; letter-spacing: .06em; white-space: nowrap; }
.breadcrumbs a:hover { color: var(--gold-light); }.breadcrumbs span:last-child { overflow: hidden; color: #9a9c9e; text-overflow: ellipsis; }
.product-detail-hero { padding: 35px 0 110px; background: #0c0d0f; }
.product-detail-grid { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 90px; }
.product-detail-visual { min-height: 590px; position: relative; display: grid; place-items: center; overflow: hidden; border: 1px solid var(--line); background: radial-gradient(circle, rgba(197,165,107,.09), transparent 46%), #101214; }
.product-detail-visual > img { position: relative; z-index: 2; width: 62%; max-height: 380px; filter: drop-shadow(0 40px 35px rgba(0,0,0,.6)); }.model-label { position: absolute; z-index: 3; top: 24px; left: 26px; color: var(--gold-light); font-size: 9px; letter-spacing: .15em; }.detail-rings { position: absolute; width: 390px; aspect-ratio: 1; border: 1px solid rgba(197,165,107,.19); border-radius: 50%; box-shadow: 0 0 0 70px rgba(197,165,107,.018), 0 0 0 71px rgba(197,165,107,.09); }
.product-detail-copy h1 { margin: 23px 0 0; font-size: clamp(45px, 5vw, 72px); line-height: 1; letter-spacing: -.055em; }.detail-badges { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 27px; }.detail-badges span { padding: 6px 9px; border: 1px solid rgba(197,165,107,.3); color: var(--gold-light); font-size: 9px; letter-spacing: .08em; }
.sku-line { display: grid; grid-template-columns: 1fr 1fr; margin: 30px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }.sku-line div { padding: 17px 0; }.sku-line div + div { padding-left: 25px; border-left: 1px solid var(--line); }.sku-line dt { color: #6d7073; font-size: 9px; letter-spacing: .11em; text-transform: uppercase; }.sku-line dd { margin: 3px 0 0; font-size: 13px; }
.product-data { color: var(--dark-text); background: var(--paper); }.data-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 100px; }.data-grid .section-kicker { color: var(--gold-dark); }.data-grid p { color: var(--dark-muted); }.spec-table { margin: 0; border-top: 1px solid var(--dark-line); }.spec-table div { display: grid; grid-template-columns: .7fr 1.3fr; padding: 21px 0; border-bottom: 1px solid var(--dark-line); }.spec-table dt { color: #777a7d; font-size: 10px; letter-spacing: .09em; text-transform: uppercase; }.spec-table dd { margin: 0; font-weight: 700; }
.feature-section { background: var(--ink-2); }.feature-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 100px; }.check-list, .application-list { margin: 35px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }.check-list li { position: relative; padding: 18px 0 18px 30px; border-bottom: 1px solid var(--line); color: #b5b7b8; }.check-list li::before { content: "✓"; position: absolute; left: 0; color: var(--gold); }.application-list li { display: flex; gap: 25px; padding: 18px 0; border-bottom: 1px solid var(--line); }.application-list span { color: var(--gold); font-size: 10px; }

.post-list { border-top: 1px solid var(--line); }.post-row { min-height: 250px; display: grid; grid-template-columns: 70px 1fr 45px; align-items: center; gap: 30px; border-bottom: 1px solid var(--line); }.post-number { color: var(--gold); font-size: 10px; }.post-row-main h2 { max-width: 850px; margin: 16px 0 12px; font-size: clamp(28px, 3.2vw, 45px); line-height: 1.1; letter-spacing: -.045em; }.post-row-main > p { max-width: 760px; margin: 0; color: var(--muted); }.post-arrow { width: 45px; height: 45px; display: grid; place-items: center; border: 1px solid var(--line); }.post-row:hover .post-arrow { color: var(--ink); border-color: var(--gold); background: var(--gold); }
.article-page { padding-bottom: 130px; }.article-header { max-width: 1000px; padding: 90px 0 75px; text-align: center; }.article-header .post-meta { justify-content: center; }.article-header h1 { margin: 24px auto; font-size: clamp(46px, 6vw, 80px); line-height: 1.02; letter-spacing: -.06em; }.article-header > p { max-width: 740px; margin: auto; color: var(--muted); font-size: 19px; }.article-body { max-width: 1000px; display: grid; grid-template-columns: 210px 1fr; gap: 80px; padding-top: 55px; border-top: 1px solid var(--line); }.article-body aside { display: flex; flex-direction: column; gap: 12px; align-self: start; position: sticky; top: 105px; }.article-body aside span { color: var(--gold); font-size: 10px; letter-spacing: .15em; }.article-body aside b { font-size: 12px; }.article-body aside a { margin-top: 20px; color: var(--gold-light); font-size: 10px; }.article-content p { margin: 0 0 27px; color: #b4b6b7; font-size: 18px; line-height: 1.85; }.article-content h2 { margin: 55px 0 24px; font-size: 37px; letter-spacing: -.04em; }.article-note { margin-top: 50px; padding: 30px; border-left: 2px solid var(--gold); background: var(--ink-3); }.article-note b { color: var(--gold-light); }.article-note p { margin: 8px 0 0; font-size: 14px; }

.quote-hero { padding: 95px 0 120px; background: radial-gradient(circle at 14% 25%, rgba(197,165,107,.08), transparent 28rem), #0b0c0e; }.quote-layout { display: grid; grid-template-columns: .82fr 1.18fr; align-items: start; gap: clamp(60px, 8vw, 115px); }.quote-intro { position: sticky; top: 110px; }.quote-intro h1 { font-size: clamp(50px, 5.5vw, 79px); }.quote-intro > p:not(.eyebrow) { max-width: 520px; color: var(--muted); font-size: 17px; }.quote-intro ol { margin: 42px 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }.quote-intro li { display: flex; gap: 22px; padding: 17px 0; border-bottom: 1px solid var(--line); font-size: 13px; }.quote-intro li span { color: var(--gold); font-size: 9px; }.quote-contact { display: grid; gap: 6px; }.quote-contact small { color: #74777a; }.quote-contact a { width: fit-content; font-size: 14px; }.quote-contact a:hover { color: var(--gold-light); }
.quote-form-wrap { border: 1px solid var(--line); background: #111315; }.quote-form { padding: clamp(28px, 5vw, 55px); }.form-head { display: flex; justify-content: space-between; margin-bottom: 35px; color: var(--gold-light); font-size: 10px; letter-spacing: .14em; }.form-head b { color: #686b6e; font-weight: 500; }.form-alert { margin-bottom: 25px; padding: 13px 15px; border: 1px solid #a8625a; color: #ffd4cf; background: rgba(168,98,90,.12); font-size: 13px; }.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 23px 20px; }.quote-form label { display: grid; gap: 8px; color: #898c8f; font-size: 9px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }.quote-form input, .quote-form select, .quote-form textarea { width: 100%; min-height: 48px; border: 0; border-bottom: 1px solid #34373a; border-radius: 0; outline: 0; color: var(--text); background: transparent; font-size: 14px; letter-spacing: 0; text-transform: none; transition: border-color .2s; }.quote-form select { color-scheme: dark; }.quote-form option { color: var(--text); background: var(--ink-2); }.quote-form textarea { min-height: 110px; padding-top: 13px; resize: vertical; }.quote-form input:focus, .quote-form select:focus, .quote-form textarea:focus { border-color: var(--gold); }.quote-form [aria-invalid="true"] { border-color: #b96b61; }.field-error { color: #e9a098; font-size: 10px; letter-spacing: 0; text-transform: none; }.form-divider { margin: 40px 0 23px; border-bottom: 1px solid var(--line); }.form-divider span { display: inline-block; padding: 0 12px 7px 0; color: var(--gold-light); font-size: 9px; letter-spacing: .13em; }.form-full { margin-top: 23px; }.consent { grid-template-columns: 18px 1fr !important; align-items: start; margin-top: 27px; line-height: 1.55; letter-spacing: 0 !important; text-transform: none !important; }.consent input { min-height: 0; width: 16px; height: 16px; accent-color: var(--gold); }.consent span { color: #96999b; font-size: 11px; }.consent-error { display: block; margin: 8px 0 0 27px; }.button-submit { width: 100%; margin-top: 28px; justify-content: space-between; cursor: pointer; }.form-note { margin: 14px 0 0; text-align: center; color: #626568; font-size: 9px; }.honeypot { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; opacity: 0 !important; }
.success-page { min-height: 760px; display: grid; place-items: center; padding: 80px 32px; background: radial-gradient(circle, rgba(197,165,107,.1), transparent 30rem); }.success-panel { max-width: 850px; text-align: center; }.success-icon { width: 72px; height: 72px; display: grid; place-items: center; margin: 0 auto 30px; border: 1px solid var(--gold); border-radius: 50%; color: var(--gold-light); font-size: 25px; box-shadow: 0 0 45px rgba(197,165,107,.15); }.success-panel .eyebrow { justify-content: center; }.success-panel h1 { font-size: clamp(46px, 6vw, 78px); }.success-panel > p:not(.eyebrow) { max-width: 650px; margin: 25px auto; color: var(--muted); }.reference-box { width: fit-content; display: grid; gap: 5px; margin: 33px auto; padding: 16px 25px; border: 1px solid var(--line); }.reference-box span { color: #6d7072; font-size: 8px; letter-spacing: .15em; }.reference-box strong { color: var(--gold-light); letter-spacing: .09em; }.success-panel .hero-actions { justify-content: center; }

.footer-cta { padding: 85px 0; border-top: 1px solid var(--line); background: #101214; }.footer-cta-inner { display: flex; align-items: flex-end; justify-content: space-between; gap: 60px; }.footer-cta h2 { max-width: 820px; margin: 14px 0 0; font-size: clamp(38px, 4.5vw, 64px); font-weight: 560; line-height: 1.04; letter-spacing: -.052em; }.footer-cta .button { flex: 0 0 auto; }
.site-footer { padding: 70px 0 0; border-top: 1px solid var(--line); background: #070809; }.footer-grid { display: grid; grid-template-columns: 1.7fr repeat(3, 1fr); gap: 70px; padding-bottom: 65px; }.brand-footer { margin-bottom: 24px; }.footer-grid > div > p { max-width: 330px; color: #74777a; font-size: 13px; }.footer-grid h3 { margin: 0 0 20px; color: #777a7d; font-size: 9px; letter-spacing: .15em; text-transform: uppercase; }.footer-grid > div:not(:first-child) { display: flex; flex-direction: column; align-items: flex-start; }.footer-grid > div:not(:first-child) a { margin-bottom: 11px; color: #b5b7b8; font-size: 12px; }.footer-grid > div:not(:first-child) a:hover { color: var(--gold-light); }.footer-bottom { min-height: 70px; display: flex; align-items: center; justify-content: space-between; border-top: 1px solid var(--line); color: #5c5f62; font-size: 9px; letter-spacing: .08em; }

.admin-shell, .error-shell { width: var(--container); min-height: 70vh; margin-inline: auto; display: grid; place-items: center; }.admin-panel { max-width: 720px; padding: 60px; border: 1px solid var(--line); background: var(--ink-2); }.admin-panel h1, .error-shell h1 { margin: 15px 0; font-size: clamp(42px, 6vw, 70px); line-height: 1; letter-spacing: -.05em; }.admin-panel > p { color: var(--muted); }.admin-checks { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 30px 0; }.admin-checks span { display: flex; align-items: center; gap: 9px; font-size: 12px; }.admin-checks i { width: 6px; height: 6px; border-radius: 50%; background: var(--gold); }.error-shell { text-align: center; }.error-code { color: var(--gold); }.error-shell p { color: var(--muted); }

.reveal { opacity: 0; transform: translateY(18px); transition: opacity .75s cubic-bezier(.2,.7,.2,1), transform .75s cubic-bezier(.2,.7,.2,1); }.reveal.is-visible { opacity: 1; transform: none; }
@keyframes slow-spin { to { transform: rotate(360deg); } }
@keyframes fixture-float { 0%,100% { transform: translateY(-5px); } 50% { transform: translateY(12px); } }
@keyframes scan { 0%,100% { transform: translateY(-145px); opacity: 0; } 15%,85% { opacity: .65; } 50% { transform: translateY(145px); } }

@media (max-width: 1100px) {
    :root { --container: min(100% - 40px, 1240px); }
    .site-nav { gap: 17px; }.site-nav { font-size: 11px; }.nav-quote { display: none; }
    .hero-home-grid { grid-template-columns: 1fr .8fr; }.hero-home h1 { font-size: clamp(52px, 7vw, 78px); }.hazard-stage { width: 48vw; }
    .category-card { min-height: 420px; }.product-visual { height: 270px; }
    .quote-layout { grid-template-columns: .75fr 1.25fr; gap: 55px; }.footer-grid { gap: 35px; }
}

@media (max-width: 860px) {
    :root { --container: min(100% - 32px, 1240px); }
    .topline-inner > span { display: none; }.topline-inner { justify-content: flex-end; }.topline-inner div { gap: 18px; }
    .site-header, .site-header.is-sticky { height: 72px; }.menu-toggle { width: 45px; height: 45px; position: relative; display: grid; align-content: center; gap: 5px; padding: 8px; cursor: pointer; }.menu-toggle span { width: 23px; height: 1px; display: block; background: var(--text); transition: .25s; }.menu-toggle b { position: absolute; left: -45px; font-size: 9px; font-weight: 600; }.menu-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(6px) rotate(45deg); }.menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }.menu-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }
    .site-nav { height: calc(100vh - 72px); position: fixed; inset: 72px 0 auto; display: grid; align-content: center; gap: 0; padding: 30px 32px 80px; background: rgba(7,8,9,.985); opacity: 0; visibility: hidden; transform: translateY(-10px); transition: .25s; }.site-nav.is-open { opacity: 1; visibility: visible; transform: none; }.site-nav > a:not(.button) { height: auto; min-height: 58px; border-bottom: 1px solid var(--line); font-size: 18px; }.site-nav > a:not(.button)::after { display: none; }.site-nav .nav-quote { display: inline-flex; margin-top: 25px; }.language-link { position: absolute !important; top: 22px; right: 32px; min-height: 35px !important; border: 0 !important; font-size: 11px !important; }
    .hero-home { min-height: auto; }.hero-home-grid { min-height: auto; grid-template-columns: 1fr; }.hero-home-copy { padding: 100px 0 40px; }.hero-visual { min-height: 500px; }.hazard-stage { width: min(560px, 85vw); }.hero-index { margin-top: 20px; }
    .proof-grid { grid-template-columns: 1fr 1fr; }.proof-grid div:nth-child(2) { border-right: 0; }.proof-grid div:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
    .section-heading { align-items: flex-start; flex-direction: column; }.section-heading > p { max-width: 650px; }
    .category-grid { grid-template-columns: 1fr 1fr; }.product-grid { grid-template-columns: 1fr 1fr; }.industry-preview-grid, .post-grid { grid-template-columns: 1fr; }.industry-card { min-height: 230px; }.industry-card h3 { margin-top: 45px; }.post-card { min-height: 280px; }
    .engineering-grid, .page-hero-grid, .split-content, .product-detail-grid, .data-grid, .feature-grid, .contact-grid, .quote-layout { grid-template-columns: 1fr; }.engineering-visual { min-height: 480px; }.page-hero-grid { gap: 45px; }.page-hero-lead { max-width: 650px; }.prose { padding: 0; border: 0; }.values-grid, .process-grid { grid-template-columns: 1fr 1fr; }.industry-full-grid { grid-template-columns: 1fr; }
    .product-detail-grid { gap: 55px; }.product-detail-visual { min-height: 500px; }.data-grid, .feature-grid { gap: 55px; }.contact-action { padding: 50px; }.quote-intro { position: static; }.quote-layout { gap: 60px; }
    .article-body { grid-template-columns: 1fr; gap: 30px; }.article-body aside { position: static; padding-bottom: 30px; border-bottom: 1px solid var(--line); }.footer-cta-inner { align-items: flex-start; flex-direction: column; }.footer-grid { grid-template-columns: 1.6fr 1fr 1fr; }.footer-grid > div:first-child { grid-column: 1 / -1; }
}

@media (max-width: 560px) {
    :root { --container: min(100% - 24px, 1240px); }
    .topline-inner div { width: 100%; justify-content: space-between; gap: 8px; font-size: 8px; }.brand { font-size: 12px; }.brand-symbol { width: 32px; }.brand small { font-size: 6px; }
    .hero-home-copy { padding-top: 75px; }.hero-home h1, .page-hero h1, .quote-intro h1 { font-size: 48px; }.hero-lead, .page-hero-lead { font-size: 16px; }.hero-actions { flex-direction: column; }.hero-actions .button { width: 100%; }.hero-trust { display: grid; grid-template-columns: 1fr 1fr; }.hero-trust span { min-width: 0; padding: 13px !important; }.hero-trust span + span { border-left: 0; }.hero-trust span:nth-child(even) { border-left: 1px solid var(--line); }.hero-trust span:last-child { grid-column: 1 / -1; border-top: 1px solid var(--line); }.hero-visual { min-height: 370px; }.hazard-stage { width: 100%; }.orbit-label { display: none; }.fixture-hero { width: 60%; }
    .proof-grid { grid-template-columns: 1fr; }.proof-grid div, .proof-grid div:first-child { min-height: 90px; border: 0; border-bottom: 1px solid var(--line); }.section { padding: 80px 0; }.section-heading { margin-bottom: 38px; }.section-heading h2, .engineering-copy h2, .split-content h2, .contact-action h2, .data-grid h2, .feature-grid h2 { font-size: 39px; }
    .category-grid, .product-grid, .values-grid, .process-grid { grid-template-columns: 1fr; }.category-card { min-height: 400px; }.product-visual { height: 280px; }.engineering-visual { min-height: 390px; }.blueprint-ring { width: 280px; }.mission-section .engineering-visual > strong { font-size: 67px; }
    .page-hero { padding: 85px 0 70px; }.values-grid article { min-height: 220px; }.values-grid h3 { margin-top: 45px; }.industry-full-card { min-height: 0; grid-template-columns: 38px 1fr; gap: 13px; padding: 28px 20px; }.industry-full-card h2 { font-size: 24px; }.process-grid article { min-height: 190px; }.process-grid h3 { margin-top: 45px; }
    .contact-action { padding: 35px 25px; }.contact-card { padding: 25px; }.contact-card strong { font-size: 17px; }.catalog-toolbar { top: 72px; }.filter-bar { min-height: 63px; }.catalog-section { padding-top: 35px; }
    .product-detail-hero { padding-bottom: 80px; }.product-detail-visual { min-height: 380px; }.product-detail-copy h1 { font-size: 46px; }.sku-line { grid-template-columns: 1fr; }.sku-line div + div { padding-left: 0; border-top: 1px solid var(--line); border-left: 0; }.spec-table div { grid-template-columns: 1fr; gap: 6px; }.post-row { min-height: 0; grid-template-columns: 34px 1fr; gap: 13px; padding: 35px 0; }.post-row-main h2 { font-size: 29px; }.post-arrow { display: none; }.article-header { padding: 65px 0 50px; }.article-header h1 { font-size: 45px; }.article-content p { font-size: 16px; }.article-content h2 { font-size: 31px; }
    .quote-hero { padding: 70px 0 80px; }.quote-form { padding: 25px 18px; }.form-grid { grid-template-columns: 1fr; }.form-head b { display: none; }.footer-cta { padding: 70px 0; }.footer-grid { grid-template-columns: 1fr 1fr; }.footer-grid > div:first-child { grid-column: 1 / -1; }.footer-bottom { align-items: flex-start; flex-direction: column; justify-content: center; gap: 5px; }.admin-panel { padding: 30px 22px; }.admin-checks { grid-template-columns: 1fr; }
}

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

/* v0.3 — immersive, image-led public experience */
.home-shell .topline { width: 100%; position: absolute; z-index: 130; top: 0; border-color: rgba(255,255,255,.16); background: rgba(2,5,8,.22); backdrop-filter: blur(12px); }
.home-shell .site-header { width: 100%; position: absolute; top: 33px; border-color: rgba(255,255,255,.16); background: rgba(2,5,8,.12); }
.home-shell .site-header.is-sticky { position: fixed; top: 0; height: 72px; background: rgba(7,9,11,.86); box-shadow: 0 12px 38px rgba(0,0,0,.2); }
.site-header { transition: height .3s ease, background .3s ease, box-shadow .3s ease; }
.scene-refinery { --scene: url('/assets/images/scenes/refinery.webp'); }
.scene-factory { --scene: url('/assets/images/scenes/factory.webp'); }
.scene-tunnel { --scene: url('/assets/images/scenes/tunnel.webp'); }
.button-light { color: #0c0d0f; border-color: #f4f4f1; background: rgba(248,248,245,.95); }
.button-light:hover { border-color: var(--gold-light); background: var(--gold-light); }
.button-glass { color: var(--text); border-color: rgba(255,255,255,.48); background: rgba(12,14,16,.28); backdrop-filter: blur(13px); }
.button-glass:hover { border-color: var(--white); background: rgba(255,255,255,.12); }
.immersive-home .button { min-width: 220px; border-radius: 4px; }
.immersive-panel { min-height: max(720px, 100svh); position: relative; display: grid; overflow: hidden; isolation: isolate; background: #07090b; }
.immersive-panel::before { content: ""; position: absolute; z-index: -3; inset: -4%; background-image: var(--scene); background-position: center calc(50% + var(--scene-shift, 0px)); background-size: cover; transform: scale(1.045); transition: transform 1.2s cubic-bezier(.2,.75,.2,1); }
.immersive-panel.is-current::before { transform: scale(1); }
.immersive-shade { position: absolute; z-index: -2; inset: 0; background: linear-gradient(180deg, rgba(2,5,8,.68) 0%, rgba(2,5,8,.08) 40%, rgba(2,5,8,.72) 100%), linear-gradient(90deg, rgba(2,5,8,.32), transparent 65%); }
.immersive-hero-inner { min-height: max(720px, 100svh); position: relative; display: grid; grid-template-rows: 1fr auto; padding-top: 155px; padding-bottom: 62px; }
.immersive-title { align-self: start; justify-self: center; max-width: 980px; text-align: center; }
.immersive-title .eyebrow { justify-content: center; }
.immersive-title h1 { margin: 18px 0 16px; font-size: clamp(57px, 7.1vw, 108px); font-weight: 580; letter-spacing: -.067em; line-height: .92; text-wrap: balance; text-shadow: 0 4px 35px rgba(0,0,0,.35); }
.immersive-title > p:last-child { max-width: 650px; margin: 0 auto; color: rgba(255,255,255,.82); font-size: clamp(16px, 1.4vw, 20px); }
.immersive-bottom { display: grid; grid-template-columns: 1fr auto 1fr; align-items: end; gap: 40px; }
.immersive-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.immersive-bottom .immersive-actions { grid-column: 2; }
.immersive-specs { grid-column: 3; display: flex; justify-self: end; }
.immersive-specs span { min-width: 105px; display: grid; gap: 2px; padding-left: 18px; border-left: 1px solid rgba(255,255,255,.32); color: rgba(255,255,255,.62); font-size: 8px; letter-spacing: .14em; text-transform: uppercase; }
.immersive-specs strong { color: var(--white); font-size: 12px; letter-spacing: .04em; }
.scroll-cue { width: 32px; height: 48px; position: absolute; right: 24px; bottom: 23px; display: grid; place-items: center; }
.scroll-cue span { width: 1px; height: 27px; overflow: hidden; background: rgba(255,255,255,.32); }
.scroll-cue span::after { content: ""; width: 1px; height: 13px; display: block; background: var(--white); animation: scroll-cue 2s ease-in-out infinite; }
@keyframes scroll-cue { 0% { transform: translateY(-14px); } 60%,100% { transform: translateY(28px); } }

.product-story::before { filter: brightness(.7) saturate(.8); }
.product-story .immersive-shade { background: linear-gradient(90deg, rgba(3,5,7,.9) 0%, rgba(3,5,7,.7) 38%, rgba(3,5,7,.2) 67%, rgba(3,5,7,.62) 100%), linear-gradient(180deg, transparent 55%, rgba(3,5,7,.58)); }
.product-story-grid { min-height: max(720px, 100svh); display: grid; grid-template-columns: .88fr 1.12fr; align-items: center; gap: 8vw; padding-top: 120px; padding-bottom: 80px; }
.product-story-copy { max-width: 610px; }
.product-story-copy h2, .mission-story-copy h2 { margin: 20px 0 24px; font-size: clamp(50px, 6.2vw, 91px); font-weight: 570; letter-spacing: -.065em; line-height: .96; text-wrap: balance; }
.product-story-copy > p:not(.eyebrow), .mission-story-copy > p:not(.eyebrow) { max-width: 580px; margin: 0 0 34px; color: rgba(255,255,255,.74); font-size: 18px; }
.floating-product { min-height: 560px; position: relative; display: grid; place-items: center; padding: 55px; border: 1px solid rgba(255,255,255,.2); background: linear-gradient(145deg, rgba(255,255,255,.12), rgba(255,255,255,.025)); backdrop-filter: blur(8px); transition: background .35s ease, transform .35s ease; }
.floating-product:hover { background: linear-gradient(145deg, rgba(255,255,255,.18), rgba(255,255,255,.04)); transform: translateY(-8px); }
.floating-product > span { position: absolute; top: 24px; left: 25px; color: var(--gold-light); font-size: 9px; font-weight: 800; letter-spacing: .15em; }
.floating-product img { width: min(440px, 86%); height: 390px; object-fit: contain; filter: drop-shadow(0 35px 36px rgba(0,0,0,.58)); transition: transform .5s ease; }
.floating-product:hover img { transform: scale(1.035) rotate(-1deg); }
.floating-product b { position: absolute; right: 25px; bottom: 23px; left: 25px; padding-top: 14px; border-top: 1px solid rgba(255,255,255,.2); font-size: 11px; letter-spacing: .06em; }

.visual-catalog { padding: clamp(100px, 11vw, 160px) 0; color: var(--dark-text); background: #e9e9e5; }
.visual-heading { display: flex; align-items: end; justify-content: space-between; gap: 40px; margin-bottom: 55px; }
.visual-heading h2 { max-width: 850px; margin: 15px 0 0; font-size: clamp(45px, 5.4vw, 76px); font-weight: 570; letter-spacing: -.06em; line-height: .96; }
.visual-heading .text-link { color: var(--gold-dark); }
.visual-grid { display: grid; grid-template-columns: repeat(3, 1fr); grid-auto-flow: dense; gap: 14px; }
.visual-tile { min-height: 520px; position: relative; display: grid; align-content: end; overflow: hidden; color: var(--dark-text); background: #f5f5f1; transition: transform .4s cubic-bezier(.2,.75,.2,1), box-shadow .4s ease; }
.visual-tile:hover { z-index: 2; transform: translateY(-5px); box-shadow: 0 28px 70px rgba(12,13,14,.13); }
.visual-tile-feature { grid-column: span 2; min-height: 650px; color: var(--white); background: #151719; }
.visual-tile-feature::before, .industry-image-card::before, .editorial-card::before { content: ""; position: absolute; inset: 0; background-image: var(--scene); background-position: center; background-size: cover; transition: transform .7s cubic-bezier(.2,.75,.2,1); }
.visual-tile-feature::after, .industry-image-card::after, .editorial-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 30%, rgba(2,4,6,.84)); }
.visual-tile-feature:hover::before, .industry-image-card:hover::before, .editorial-card:hover::before { transform: scale(1.035); }
.visual-tile-feature > div { max-width: 610px; position: relative; z-index: 2; padding: 46px; }
.visual-tile-feature small { color: var(--gold-light); font-size: 9px; font-weight: 800; letter-spacing: .18em; }
.visual-tile-feature h3 { margin: 13px 0 25px; font-size: clamp(36px, 4vw, 59px); letter-spacing: -.052em; line-height: 1; }
.visual-tile-feature span, .visual-tile-product b { font-size: 10px; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.visual-tile-product { grid-template-rows: 260px 1fr; padding: 26px; }
.visual-tile-product .tile-index { position: absolute; top: 21px; left: 22px; color: var(--gold-dark); font-size: 9px; font-weight: 800; letter-spacing: .14em; }
.visual-tile-product > img { width: 90%; height: 245px; align-self: center; justify-self: center; object-fit: contain; filter: drop-shadow(0 24px 25px rgba(0,0,0,.14)); transition: transform .5s ease; }
.visual-tile-product:hover > img { transform: scale(1.04) rotate(-1deg); }
.visual-tile-product h3 { margin: 15px 0 8px; font-size: 25px; letter-spacing: -.04em; line-height: 1.05; }
.visual-tile-product p { min-height: 64px; margin: 0 0 18px; color: var(--dark-muted); font-size: 12px; }
.visual-tile-product b { color: var(--gold-dark); }

.product-showroom { padding: clamp(100px, 11vw, 160px) 0; background: #0b0d0f; }
.showroom-heading > p { color: var(--muted); }
.showroom-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.showroom-card { min-width: 0; border: 1px solid var(--line); background: #121416; transition: transform .35s ease, border-color .35s ease; }
.showroom-card:hover { transform: translateY(-5px); border-color: rgba(197,165,107,.5); }
.showroom-card-wide { grid-column: span 2; }
.showroom-card > a { height: 100%; display: grid; grid-template-rows: 360px 1fr; }
.showroom-card-wide > a { grid-template-columns: 1.1fr .9fr; grid-template-rows: 1fr; }
.showroom-visual { min-width: 0; position: relative; display: grid; place-items: center; overflow: hidden; background: radial-gradient(circle, rgba(255,255,255,.11), transparent 55%), linear-gradient(145deg, #202327, #121416); }
.showroom-visual > span { position: absolute; z-index: 2; top: 20px; left: 22px; color: var(--gold-light); font-size: 9px; font-weight: 800; letter-spacing: .14em; }
.showroom-visual img { width: 72%; height: 290px; object-fit: contain; filter: drop-shadow(0 26px 28px rgba(0,0,0,.48)); transition: transform .5s ease; }
.showroom-card:hover .showroom-visual img { transform: scale(1.045) rotate(-1deg); }
.showroom-copy { display: grid; align-content: start; padding: 28px; }
.showroom-card-wide .showroom-copy { align-content: center; padding: 50px; }
.showroom-copy small { color: var(--gold-light); font-size: 9px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.showroom-copy h3 { margin: 10px 0 12px; font-size: clamp(24px, 2.6vw, 37px); letter-spacing: -.045em; line-height: 1.05; }
.showroom-copy p { margin: 0 0 25px; color: var(--muted); font-size: 13px; }
.showroom-copy b { margin-top: auto; padding-top: 17px; border-top: 1px solid var(--line); color: #d9d9d6; font-size: 9px; letter-spacing: .1em; }

.mission-story::before { background-position: center; filter: brightness(.65); }
.mission-story .immersive-shade { background: linear-gradient(90deg, rgba(2,4,6,.18), rgba(2,4,6,.75) 50%, rgba(2,4,6,.92)); }
.mission-story-inner { min-height: max(720px, 100svh); display: grid; grid-template-columns: 1fr .85fr; align-items: center; gap: 9vw; padding-top: 110px; padding-bottom: 80px; }
.mission-story-copy { max-width: 660px; }
.mission-steps { margin: 0; padding: 0; list-style: none; border-top: 1px solid rgba(255,255,255,.26); backdrop-filter: blur(4px); }
.mission-steps li { display: grid; grid-template-columns: 44px 1fr; gap: 20px; padding: 27px 8px; border-bottom: 1px solid rgba(255,255,255,.26); }
.mission-steps li > span { color: var(--gold-light); font-size: 9px; letter-spacing: .15em; }
.mission-steps div { display: grid; gap: 4px; }
.mission-steps b { font-size: 17px; }
.mission-steps small { color: rgba(255,255,255,.57); font-size: 10px; letter-spacing: .07em; }

.industry-gallery { padding: clamp(100px, 11vw, 160px) 0; color: var(--dark-text); background: #efefec; }
.industry-gallery .text-link { color: var(--gold-dark); }
.industry-gallery-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.industry-image-card { min-height: 570px; position: relative; display: grid; align-content: end; overflow: hidden; color: var(--white); background: #191b1d; }
.industry-image-card::after { background: linear-gradient(180deg, rgba(0,0,0,.05), rgba(0,0,0,.86)); }
.industry-image-card > span { position: absolute; z-index: 2; top: 24px; left: 24px; color: var(--gold-light); font-size: 9px; font-weight: 800; letter-spacing: .15em; }
.industry-image-card > div { position: relative; z-index: 2; padding: 31px; }
.industry-image-card h3 { margin: 0 0 11px; font-size: 30px; letter-spacing: -.045em; line-height: 1.05; }
.industry-image-card p { margin: 0 0 22px; color: rgba(255,255,255,.7); font-size: 12px; }
.industry-image-card b { color: var(--gold-light); font-size: 9px; letter-spacing: .12em; text-transform: uppercase; }
.references-strip { padding: 70px 0; border-top: 1px solid #d0d0cc; color: var(--dark-text); background: #efefec; }
.references-strip p { margin: 0 0 25px; color: #777a7c; font-size: 9px; font-weight: 800; letter-spacing: .15em; text-align: center; text-transform: uppercase; }
.references-strip div > div { display: flex; flex-wrap: wrap; justify-content: center; gap: clamp(26px, 5vw, 70px); }
.references-strip span { color: #2e3032; font-size: clamp(14px, 1.5vw, 19px); font-weight: 800; letter-spacing: .05em; }
.editorial-grid { padding: clamp(100px, 11vw, 150px) 0; background: #0b0d0f; }
.editorial-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.editorial-card { min-height: 520px; position: relative; display: grid; align-content: end; overflow: hidden; padding: 31px; isolation: isolate; }
.editorial-card::before { z-index: -2; }
.editorial-card::after { z-index: -1; background: linear-gradient(180deg, rgba(2,4,6,.08) 10%, rgba(2,4,6,.92) 88%); }
.editorial-card .post-meta { position: absolute; top: 25px; right: 25px; left: 25px; }
.editorial-card h3 { margin: 0 0 26px; font-size: 30px; letter-spacing: -.045em; line-height: 1.08; }
.editorial-card .button { width: 100%; min-width: 0; }

.page-hero { position: relative; overflow: hidden; isolation: isolate; }
.page-hero::before { content: ""; position: absolute; z-index: -2; inset: 0; background-image: var(--page-scene, url('/assets/images/scenes/refinery.webp')); background-position: center; background-size: cover; filter: brightness(.38) saturate(.8); }
.page-hero::after { content: ""; position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, rgba(4,6,8,.88), rgba(4,6,8,.25)), linear-gradient(180deg, transparent, rgba(4,6,8,.6)); }
.page-hero-products { --page-scene: url('/assets/images/scenes/factory.webp'); }
.page-hero-industries, .page-hero-blog { --page-scene: url('/assets/images/scenes/tunnel.webp'); }
.product-visual img, .product-detail-visual img { object-fit: contain; }
.product-card .product-visual { background: radial-gradient(circle, #fafaf7, #dddeda); }
.product-card .product-visual img { width: 76%; height: 78%; }
.product-detail-visual { background: radial-gradient(circle at 50% 45%, #f8f8f3, #d5d6d3); }
.product-detail-visual img { width: 76%; height: 70%; filter: drop-shadow(0 30px 34px rgba(0,0,0,.28)); }

@media (max-width: 1100px) {
    .immersive-bottom { grid-template-columns: 1fr; justify-items: center; }.immersive-bottom .immersive-actions, .immersive-specs { grid-column: auto; }.immersive-specs { justify-self: center; }
    .visual-grid { grid-template-columns: repeat(2, 1fr); }.visual-tile-feature { grid-column: span 2; }
    .showroom-grid { grid-template-columns: repeat(2, 1fr); }.showroom-card-wide { grid-column: span 2; }
    .industry-gallery-grid, .editorial-cards { grid-template-columns: 1fr 1fr; }.industry-image-card:last-child, .editorial-card:last-child { grid-column: span 2; min-height: 450px; }
}

@media (max-width: 860px) {
    .home-shell .site-header, .home-shell .site-header.is-sticky { height: 72px; top: 33px; }.home-shell .site-header.is-sticky { top: 0; }
    .home-shell .site-nav { inset: 72px 0 auto; height: calc(100svh - 72px); padding-top: 30px; }
    .home-shell .site-header:not(.is-sticky) .site-nav { inset: 105px 0 auto; height: calc(100svh - 105px); }
    .immersive-hero-inner { padding-top: 150px; padding-bottom: 52px; }
    .immersive-title h1 { font-size: clamp(55px, 11vw, 82px); }
    .product-story-grid, .mission-story-inner { grid-template-columns: 1fr; gap: 45px; padding-top: 115px; padding-bottom: 70px; }
    .product-story-copy, .mission-story-copy { max-width: 660px; }
    .floating-product { min-height: 460px; }.floating-product img { height: 320px; }
    .mission-story .immersive-shade { background: linear-gradient(180deg, rgba(2,4,6,.55), rgba(2,4,6,.9)); }.mission-steps { max-width: 650px; }
    .industry-gallery-grid, .editorial-cards { grid-template-columns: 1fr; }.industry-image-card:last-child, .editorial-card:last-child { grid-column: auto; min-height: 520px; }
}

@media (max-width: 560px) {
    .home-shell .topline { display: none; }.home-shell .site-header { top: 0; }.home-shell .site-header:not(.is-sticky) .site-nav { inset: 72px 0 auto; height: calc(100svh - 72px); }
    .immersive-panel { min-height: max(680px, 100svh); }
    .immersive-hero-inner { min-height: max(680px, 100svh); padding-top: 112px; padding-bottom: 42px; }
    .immersive-title { align-self: start; }.immersive-title h1 { margin-top: 15px; font-size: clamp(50px, 15vw, 68px); }.immersive-title > p:last-child { font-size: 15px; }
    .immersive-title .eyebrow span { display: none; }.immersive-title .eyebrow { font-size: 8px; letter-spacing: .13em; }
    .immersive-bottom { gap: 25px; }.immersive-actions { width: 100%; flex-direction: column; }.immersive-home .button { width: 100%; min-width: 0; }
    .immersive-specs { width: 100%; }.immersive-specs span { min-width: 0; flex: 1; padding-left: 9px; }.immersive-specs strong { font-size: 10px; }
    .scroll-cue { display: none; }
    .product-story-grid, .mission-story-inner { min-height: max(680px, 100svh); padding-top: 95px; }.product-story-copy h2, .mission-story-copy h2 { font-size: 50px; }
    .product-story-copy > p:not(.eyebrow), .mission-story-copy > p:not(.eyebrow) { font-size: 15px; }.floating-product { min-height: 360px; padding: 40px 20px; }.floating-product img { height: 245px; }.floating-product b { font-size: 9px; }
    .visual-catalog, .product-showroom, .industry-gallery, .editorial-grid { padding: 85px 0; }.visual-heading { align-items: flex-start; flex-direction: column; }.visual-heading h2 { font-size: 45px; }
    .visual-grid { grid-template-columns: 1fr; }.visual-tile-feature { grid-column: auto; min-height: 520px; }.visual-tile-feature > div { padding: 28px; }.visual-tile-feature h3 { font-size: 40px; }.visual-tile { min-height: 450px; }
    .showroom-grid { grid-template-columns: 1fr; }.showroom-card-wide { grid-column: auto; }.showroom-card-wide > a { grid-template-columns: 1fr; grid-template-rows: 320px 1fr; }.showroom-card > a { grid-template-rows: 310px 1fr; }.showroom-card-wide .showroom-copy { padding: 28px; }.showroom-visual img { height: 245px; }
    .mission-steps li { padding: 20px 5px; }.industry-image-card, .editorial-card, .industry-image-card:last-child, .editorial-card:last-child { min-height: 470px; }
    .references-strip div > div { display: grid; grid-template-columns: 1fr 1fr; gap: 18px 30px; text-align: center; }
}

@media (prefers-reduced-motion: reduce) {
    .immersive-panel::before, .visual-tile, .floating-product, .floating-product img, .visual-tile-feature::before, .industry-image-card::before, .editorial-card::before, .showroom-card, .showroom-visual img { transition: none !important; transform: none !important; }
}
