:root { --navy:#0a2157; --navy-2:#102e6f; --red:#e52025; --ink:#111827; --muted:#657084; --line:#e4e7ec; --soft:#f5f7fa; --white:#fff; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--white); color:var(--ink); font-family:Arial,Helvetica,sans-serif; }
a { color:inherit; text-decoration:none; }
img { display:block; max-width:100%; }
h1,h2,h3,p { margin-top:0; }

.site-header { position:sticky; z-index:20; top:0; display:flex; align-items:center; justify-content:space-between; min-height:88px; padding:0 clamp(24px,5vw,80px); border-bottom:1px solid rgba(10,33,87,.08); background:rgba(255,255,255,.96); backdrop-filter:blur(14px); }
.brand img { width:164px; height:auto; }
.desktop-nav { display:flex; align-items:center; gap:clamp(20px,2.5vw,38px); color:#26344f; font-size:16px; font-weight:700; }
.desktop-nav a { transition:color 160ms ease; }
.desktop-nav a:hover,.desktop-nav a:focus-visible { color:var(--red); }
.language { padding-left:24px; border-left:1px solid var(--line); color:var(--navy); }
.language span { padding:0 5px; color:#a4aaba; }
.mobile-nav { display:none; }

.hero { position:relative; display:grid; grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr); align-items:center; min-height:690px; overflow:hidden; padding:76px clamp(24px,7vw,112px) 82px; background:linear-gradient(90deg,#fff 0%,#fff 48%,rgba(245,247,250,.2) 48%),#fff; }
.hero::before { position:absolute; top:0; bottom:0; left:0; width:7px; background:var(--red); content:""; }
.hero-copy { position:relative; z-index:2; max-width:620px; padding-right:clamp(20px,4vw,72px); }
.eyebrow { margin:0 0 18px; color:var(--red); font-size:12px; font-weight:800; letter-spacing:.2em; }
.eyebrow.light { color:#ff777a; }
h1 { max-width:600px; margin-bottom:28px; color:var(--navy); font-size:clamp(50px,5.8vw,86px); font-weight:700; letter-spacing:-.055em; line-height:.98; }
h2 { margin-bottom:24px; color:var(--navy); font-size:clamp(34px,4vw,58px); font-weight:700; letter-spacing:-.045em; line-height:1.03; }
h3 { color:var(--navy); font-size:22px; line-height:1.2; }
.hero-text { max-width:590px; margin-bottom:38px; color:#4d5b72; font-size:19px; line-height:1.75; }
.hero-actions { display:flex; align-items:center; gap:28px; }
.button { display:inline-flex; align-items:center; justify-content:center; min-height:52px; padding:0 28px; border:1px solid transparent; font-size:14px; font-weight:800; transition:transform 160ms ease,background 160ms ease; }
.button-primary { background:var(--red); color:var(--white); }
.button:hover,.button:focus-visible { transform:translateY(-2px); background:#c9151a; }
.text-link { color:var(--navy); font-size:14px; font-weight:800; }
.text-link span { margin-left:8px; color:var(--red); }
.hero-image-wrap { position:relative; min-height:500px; background:var(--soft); }
.hero-image-accent { position:absolute; top:-36px; right:-40px; width:46%; height:72%; background:var(--navy); }
.hero-image { position:absolute; z-index:1; right:0; bottom:0; width:91%; height:92%; object-fit:cover; object-position:center; box-shadow:0 30px 70px rgba(10,33,87,.14); }
.hero-note { position:absolute; z-index:2; right:0; bottom:0; display:flex; flex-direction:column; min-width:190px; padding:22px 26px; background:var(--navy); color:var(--white); }
.hero-note strong { margin-bottom:5px; font-size:17px; letter-spacing:.06em; }
.hero-note span { color:#cbd5eb; font-size:13px; }

.section { padding:110px clamp(24px,7vw,112px); }
.intro { display:grid; grid-template-columns:minmax(300px,.85fr) minmax(360px,1.15fr); gap:clamp(60px,10vw,170px); border-top:1px solid var(--line); }
.intro h2 { max-width:560px; }
.intro-copy { padding-top:34px; border-top:3px solid var(--red); }
.intro-copy p { color:#526078; font-size:18px; line-height:1.8; }
.intro-copy p:last-child { margin-bottom:0; }

.products { background:var(--soft); }
.section-heading { display:flex; align-items:end; justify-content:space-between; gap:40px; margin-bottom:54px; }
.section-heading h2 { margin-bottom:0; }
.section-heading>p { max-width:430px; margin-bottom:7px; color:var(--muted); font-size:16px; line-height:1.7; }
.product-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.product-card { display:block; overflow:hidden; background:var(--white); box-shadow:0 12px 35px rgba(22,34,61,.06); transition:transform 180ms ease,box-shadow 180ms ease; }
.product-card:hover,.product-card:focus-visible { transform:translateY(-5px); box-shadow:0 20px 45px rgba(22,34,61,.1); outline:none; }
.product-image-wrap { position:relative; aspect-ratio:1.5/1; overflow:hidden; background:#e8eeea; }
.product-image-wrap img { width:100%; height:100%; object-fit:cover; transition:transform 500ms ease; }
.product-card:hover img { transform:scale(1.025); }
.product-content { min-height:220px; padding:26px 28px 30px; }
.product-content p { margin-bottom:22px; color:var(--muted); font-size:15px; line-height:1.7; }
.product-detail-link { display:inline-flex; align-items:center; gap:9px; color:var(--navy); font-size:13px; font-weight:800; }
.product-detail-link span { color:var(--red); transition:transform 160ms ease; }
.product-card:hover .product-detail-link span,.product-card:focus-visible .product-detail-link span { transform:translateX(4px); }

.materials { display:grid; grid-template-columns:minmax(300px,.95fr) minmax(360px,1.05fr); gap:clamp(60px,9vw,150px); background:var(--navy); color:var(--white); }
.materials h2,.materials h3 { color:var(--white); }
.materials-heading>p:last-child { max-width:570px; color:#cbd5eb; font-size:17px; line-height:1.8; }
.material-list { border-top:1px solid rgba(255,255,255,.2); }
.material-item { display:grid; grid-template-columns:42px 1fr; gap:24px; padding:26px 0; border-bottom:1px solid rgba(255,255,255,.2); }
.material-item h3 { margin-bottom:7px; font-size:19px; }
.material-item p { margin-bottom:0; color:#cbd5eb; font-size:14px; line-height:1.6; }
.material-swatch { width:34px; height:34px; margin-top:4px; border:1px solid rgba(255,255,255,.28); border-radius:50%; }
.material-pure { background:#f6f6ef; } .material-carbon { background:#202225; } .material-bronze { background:#9d6945; }

.quality { display:grid; grid-template-columns:minmax(360px,1fr) minmax(360px,1fr); align-items:center; gap:clamp(60px,9vw,150px); }
.quality-image-wrap { position:relative; min-height:520px; background:var(--soft); }
.quality-image-wrap::before { position:absolute; z-index:1; top:-24px; left:-24px; width:38%; height:44%; border-top:8px solid var(--red); border-left:8px solid var(--red); content:""; }
.quality-image-wrap img { width:100%; height:520px; object-fit:cover; }
.quality-copy>p:not(.eyebrow) { color:var(--muted); font-size:17px; line-height:1.8; }
.quality-points { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:34px; }
.quality-points div { min-height:90px; padding:18px 16px; border-top:3px solid var(--red); background:var(--soft); }
.quality-points strong { color:var(--navy); font-size:14px; line-height:1.45; }
.certificate-teaser { margin-top:30px; padding-top:24px; border-top:1px solid var(--line); }
.certificate-teaser-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:16px; }
.certificate-teaser-heading>span { color:#526078; font-size:11px; font-weight:800; letter-spacing:.14em; }
.certificate-teaser-heading a { color:var(--navy); font-size:12px; font-weight:800; }
.certificate-teaser-heading a span { margin-left:6px; color:var(--red); }
.certificate-teaser-heading a:hover,.certificate-teaser-heading a:focus-visible { color:var(--red); }
.certificate-teaser-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.certificate-teaser-grid a { display:flex; flex-direction:column; min-height:94px; padding:18px 20px; border-left:4px solid var(--red); background:var(--soft); transition:transform 160ms ease,background 160ms ease; }
.certificate-teaser-grid a:hover,.certificate-teaser-grid a:focus-visible { transform:translateY(-2px); background:#eef1f6; outline:none; }
.certificate-teaser-grid strong { margin-bottom:10px; color:var(--navy); font-size:16px; }
.certificate-teaser-grid span { color:var(--muted); font-size:12px; }

.contact { background:var(--navy); color:var(--white); }
.contact-title { display:grid; grid-template-columns:.8fr 1.2fr; gap:40px; align-items:end; margin-bottom:60px; }
.contact-title .eyebrow { grid-column:1/-1; margin-bottom:-8px; }
.contact-title h2 { margin-bottom:0; color:var(--white); }
.contact-title>p:last-child { max-width:540px; margin-bottom:7px; color:#cbd5eb; font-size:17px; line-height:1.7; }
.contact-grid { display:grid; grid-template-columns:.8fr 1fr 1.7fr; border-top:1px solid rgba(255,255,255,.2); }
.contact-grid>* { display:flex; flex-direction:column; gap:11px; min-height:150px; padding:30px 28px 0 0; border-right:1px solid rgba(255,255,255,.2); }
.contact-grid>*:not(:first-child) { padding-left:28px; }
.contact-grid>*:last-child { border-right:0; }
.contact-grid span { color:#9babc9; font-size:12px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.contact-grid strong { max-width:540px; font-size:16px; line-height:1.6; }
.contact-grid a:hover strong,.contact-grid a:focus-visible strong { color:#ff777a; }

.site-footer { display:grid; grid-template-columns:1fr 1fr 1fr; align-items:center; gap:30px; padding:34px clamp(24px,7vw,112px); background:#071944; color:#9babc9; font-size:12px; }
.site-footer img { width:128px; padding:8px; background:var(--white); }
.site-footer p { margin-bottom:0; }
.site-footer p:last-child { text-align:right; }

.product-detail-hero { display:grid; grid-template-columns:minmax(360px,.9fr) minmax(440px,1.1fr); align-items:stretch; min-height:610px; padding:70px clamp(24px,7vw,112px) 78px; background:var(--soft); }
.product-detail-copy { display:flex; flex-direction:column; justify-content:center; max-width:650px; padding:18px clamp(30px,6vw,90px) 18px 0; }
.product-detail-copy h1 { margin-bottom:25px; font-size:clamp(48px,5vw,76px); }
.product-detail-copy>p:last-child { margin-bottom:0; color:var(--muted); font-size:19px; line-height:1.75; }
.back-link { display:inline-flex; align-items:center; gap:9px; align-self:flex-start; margin-bottom:62px; color:var(--navy); font-size:13px; font-weight:800; }
.back-link span { color:var(--red); }
.back-link:hover,.back-link:focus-visible { color:var(--red); }
.product-detail-image-wrap { position:relative; min-height:460px; overflow:hidden; background:#e6ebe7; box-shadow:0 28px 70px rgba(10,33,87,.12); }
.product-detail-image-wrap::before { position:absolute; z-index:1; top:0; right:0; width:19%; height:18px; background:var(--red); content:""; }
.product-detail-image-wrap img { width:100%; height:100%; object-fit:cover; }
.product-information { display:grid; grid-template-columns:minmax(360px,1.1fr) minmax(360px,.9fr); gap:clamp(60px,9vw,150px); }
.product-overview h2 { margin-bottom:32px; }
.product-overview>p:not(.eyebrow) { max-width:760px; color:#526078; font-size:18px; line-height:1.8; }
.product-facts { display:grid; gap:22px; align-content:start; }
.product-facts article { padding:30px 34px; border-top:4px solid var(--red); background:var(--soft); }
.product-facts h3 { margin-bottom:20px; font-size:19px; }
.product-facts ul { display:grid; gap:13px; margin:0; padding:0; list-style:none; }
.product-facts li { position:relative; padding-left:20px; color:#526078; font-size:15px; line-height:1.55; }
.product-facts li::before { position:absolute; top:.62em; left:0; width:6px; height:6px; border-radius:50%; background:var(--red); content:""; }
.product-contact { display:flex; align-items:center; justify-content:space-between; gap:60px; padding:74px clamp(24px,7vw,112px); background:var(--navy); color:var(--white); }
.product-contact h2 { margin-bottom:16px; color:var(--white); font-size:clamp(34px,3.5vw,52px); }
.product-contact p:last-child { max-width:700px; margin-bottom:0; color:#cbd5eb; font-size:17px; line-height:1.7; }
.button-light { flex:0 0 auto; border-color:rgba(255,255,255,.35); background:var(--white); color:var(--navy); }
.button-light span { margin-left:10px; color:var(--red); }
.button-light:hover,.button-light:focus-visible { background:#f1f4fa; color:var(--navy); }

.certificates-hero { position:relative; padding:90px clamp(24px,7vw,112px) 92px; overflow:hidden; background:var(--soft); }
.certificates-hero::after { position:absolute; top:0; right:clamp(24px,7vw,112px); width:26%; height:14px; background:var(--red); content:""; }
.certificates-hero>div { max-width:920px; }
.certificates-hero h1 { max-width:900px; margin-bottom:28px; }
.certificates-hero>div>p:last-child { max-width:760px; margin-bottom:0; color:var(--muted); font-size:19px; line-height:1.75; }
.certificates-section { background:var(--white); }
.certificates-grid { display:grid; gap:56px; }
.certificate-document { display:grid; grid-template-columns:minmax(340px,.75fr) minmax(440px,1.25fr); gap:clamp(50px,8vw,130px); align-items:start; padding-bottom:56px; border-bottom:1px solid var(--line); scroll-margin-top:110px; }
.certificate-document:last-child { padding-bottom:0; border-bottom:0; }
.certificate-preview { display:block; padding:18px; background:var(--soft); box-shadow:0 20px 55px rgba(10,33,87,.1); transition:transform 180ms ease,box-shadow 180ms ease; }
.certificate-preview:hover,.certificate-preview:focus-visible { transform:translateY(-4px); box-shadow:0 28px 65px rgba(10,33,87,.15); outline:3px solid rgba(229,32,37,.18); }
.certificate-preview img { width:100%; height:auto; }
.certificate-document-copy { padding-top:18px; }
.certificate-document-copy h2 { margin-bottom:24px; font-size:clamp(36px,4vw,54px); }
.certificate-scope { max-width:720px; margin-bottom:30px; color:#526078; font-size:17px; line-height:1.75; }
.certificate-meta { margin:0 0 30px; border-top:1px solid var(--line); }
.certificate-meta div { display:grid; grid-template-columns:190px 1fr; gap:28px; padding:15px 0; border-bottom:1px solid var(--line); }
.certificate-meta dt { color:var(--muted); font-size:12px; font-weight:800; letter-spacing:.05em; text-transform:uppercase; }
.certificate-meta dd { margin:0; color:var(--navy); font-size:15px; font-weight:700; line-height:1.5; }
.certificate-note { margin:-12px 0 28px; padding:14px 16px; border-left:3px solid var(--red); background:var(--soft); color:#526078; font-size:13px; line-height:1.6; }
.certificate-document-copy .button span { margin-left:10px; }

@media (max-width:1040px) {
  .desktop-nav { display:none; }
  .mobile-nav { position:relative; display:block; }
  .mobile-nav summary { cursor:pointer; color:var(--navy); font-size:14px; font-weight:800; list-style:none; }
  .mobile-nav summary::-webkit-details-marker { display:none; }
  .mobile-nav nav { position:absolute; top:38px; right:0; display:flex; flex-direction:column; width:210px; padding:16px; background:var(--white); border:1px solid var(--line); box-shadow:0 20px 50px rgba(10,33,87,.15); }
  .mobile-nav nav a { padding:11px 8px; color:var(--navy); font-size:14px; font-weight:700; }
  .hero { grid-template-columns:1fr; gap:72px; padding-top:70px; }
  .hero-copy { max-width:760px; padding-right:0; }
  .product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .product-detail-hero { grid-template-columns:1fr; gap:54px; }
  .product-detail-copy { max-width:760px; padding-right:0; }
  .back-link { margin-bottom:44px; }
  .certificate-document { grid-template-columns:minmax(300px,.8fr) minmax(360px,1.2fr); gap:48px; }
  .contact-grid { grid-template-columns:1fr; }
  .contact-grid>* { min-height:0; padding:24px 0; border-right:0; border-bottom:1px solid rgba(255,255,255,.2); }
  .contact-grid>*:not(:first-child) { padding-left:0; }
}

@media (max-width:760px) {
  .site-header { min-height:76px; } .brand img { width:142px; }
  .hero { min-height:0; gap:50px; padding-top:58px; padding-bottom:60px; }
  h1 { font-size:clamp(44px,14vw,64px); }
  .hero-text { font-size:17px; }
  .hero-actions { align-items:flex-start; flex-direction:column; }
  .hero-image-wrap { min-height:390px; }
  .hero-image { width:96%; height:90%; }
  .section { padding-top:78px; padding-bottom:78px; }
  .intro,.materials,.quality,.contact-title { grid-template-columns:1fr; gap:36px; }
  .intro-copy { padding-top:28px; }
  .section-heading { align-items:flex-start; flex-direction:column; margin-bottom:38px; }
  .product-grid { grid-template-columns:1fr; }
  .product-content { min-height:0; }
  .product-detail-hero { min-height:0; padding-top:48px; padding-bottom:58px; }
  .product-detail-copy h1 { font-size:clamp(42px,13vw,62px); }
  .product-detail-copy>p:last-child { font-size:17px; }
  .product-detail-image-wrap { min-height:340px; }
  .product-information { grid-template-columns:1fr; gap:48px; }
  .product-overview>p:not(.eyebrow) { font-size:16px; }
  .product-contact { align-items:flex-start; flex-direction:column; gap:34px; padding-top:58px; padding-bottom:58px; }
  .quality-image-wrap,.quality-image-wrap img { min-height:350px; height:350px; }
  .quality-image-wrap::before { top:-14px; left:-14px; }
  .quality-points { grid-template-columns:1fr; }
  .quality-points div { min-height:0; }
  .certificate-teaser-heading { align-items:flex-start; flex-direction:column; }
  .certificate-teaser-grid { grid-template-columns:1fr; }
  .certificates-hero { padding-top:58px; padding-bottom:64px; }
  .certificates-hero h1 { font-size:clamp(42px,13vw,62px); }
  .certificates-hero>div>p:last-child { font-size:17px; }
  .certificate-document { grid-template-columns:1fr; gap:36px; }
  .certificate-preview { max-width:520px; }
  .certificate-document-copy { padding-top:0; }
  .certificate-meta div { grid-template-columns:1fr; gap:6px; }
  .contact-title .eyebrow { grid-column:auto; margin-bottom:-12px; }
  .site-footer { grid-template-columns:1fr; }
  .site-footer p:last-child { text-align:left; }
}

/* Editorial corporate home */
body { background:#f1f0ec; font-family:"Segoe UI","Helvetica Neue",Arial,sans-serif; }
.site-header { min-height:94px; padding-inline:clamp(26px,5.5vw,92px); }
.site-header .brand img { width:172px; }
.home-page { overflow:hidden; background:#f1f0ec; }

.home-hero { position:relative; display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); min-height:760px; padding:70px clamp(26px,6vw,104px) 0; overflow:hidden; background:#071944; color:#fff; }
.home-hero::before { position:absolute; top:0; left:clamp(26px,6vw,104px); width:74px; height:7px; background:var(--red); content:""; }
.home-hero-copy { z-index:2; grid-column:1/7; align-self:center; max-width:690px; padding:24px clamp(28px,5vw,86px) 72px 0; }
.home-hero-copy h1 { max-width:760px; margin-bottom:32px; color:#fff; font-size:clamp(56px,6vw,92px); font-weight:720; letter-spacing:-.06em; line-height:.94; }
.home-hero-copy h1 span { color:#aebcda; }
.home-hero-copy>p:last-of-type { max-width:610px; margin-bottom:38px; color:#d1d9e9; font-size:18px; line-height:1.8; }
.home-hero-actions { display:flex; align-items:center; gap:30px; }
.home-hero-link { color:#fff; font-size:14px; font-weight:750; }
.home-hero-link span { margin-left:8px; color:#ff6468; }
.home-hero-link:hover,.home-hero-link:focus-visible { color:#ff8a8d; }
.home-hero-media { position:relative; grid-column:7/13; align-self:center; height:535px; overflow:hidden; background:#d9ddd9; }
.home-hero-media::after { position:absolute; inset:0; background:linear-gradient(180deg,transparent 45%,rgba(2,11,34,.48)); content:""; }
.home-hero-media img { width:100%; height:100%; object-fit:cover; transition:transform 900ms cubic-bezier(.2,.7,.2,1); }
.home-hero:hover .home-hero-media img { transform:scale(1.025); }
.home-hero-image-label { position:absolute; z-index:1; right:0; bottom:0; display:flex; flex-direction:column; min-width:260px; padding:22px 28px; border-top:1px solid rgba(255,255,255,.34); border-left:1px solid rgba(255,255,255,.34); color:#fff; backdrop-filter:blur(10px); }
.home-hero-image-label span { margin-bottom:7px; color:#c6d1e7; font-size:10px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.home-hero-image-label strong { font-size:15px; }
.home-proof-strip { grid-column:1/13; display:grid; grid-template-columns:repeat(3,1fr); margin-top:20px; border-top:1px solid rgba(255,255,255,.17); }
.home-proof-strip div { display:flex; flex-direction:column; min-height:116px; padding:27px 30px 24px 0; border-right:1px solid rgba(255,255,255,.17); }
.home-proof-strip div:not(:first-child) { padding-left:30px; }
.home-proof-strip div:last-child { border-right:0; }
.home-proof-strip span { margin-bottom:9px; color:#8fa0c4; font-size:10px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.home-proof-strip strong { color:#fff; font-size:17px; font-weight:650; }

.home-intro { display:grid; grid-template-columns:1.3fr 5fr 3.2fr; gap:clamp(36px,6vw,96px); padding:132px clamp(26px,6vw,104px); background:#f1f0ec; }
.home-section-index { display:flex; flex-direction:column; gap:17px; padding-top:10px; }
.home-section-index span { color:var(--red); font-size:11px; font-weight:850; letter-spacing:.18em; }
.home-section-index i { width:100%; height:1px; background:#c8c9c8; }
.home-intro-statement h2 { max-width:790px; margin:0; color:#101d3f; font-size:clamp(43px,4.8vw,72px); font-weight:650; letter-spacing:-.055em; line-height:1.02; }
.home-intro-copy { align-self:end; padding-bottom:4px; }
.home-intro-copy p { color:#5d6573; font-size:16px; line-height:1.85; }
.home-intro-copy p:last-child { margin-bottom:0; }

.home-products { padding:120px clamp(26px,6vw,104px) 132px; background:#fff; }
.home-heading-row { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr); gap:70px; align-items:end; margin-bottom:58px; }
.home-heading-row h2 { max-width:850px; margin-bottom:0; font-size:clamp(42px,4.6vw,68px); }
.home-heading-row>p { max-width:460px; margin-bottom:4px; color:#687181; font-size:16px; line-height:1.75; }
.home-product-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:22px; }
.home-product-card { display:flex; flex-direction:column; overflow:hidden; border:1px solid #dddfe2; background:#f6f6f3; transition:transform 220ms ease,border-color 220ms ease; }
.home-product-card:hover,.home-product-card:focus-visible { transform:translateY(-5px); border-color:#aab1bd; outline:none; }
.home-product-card-1 { grid-column:span 7; }
.home-product-card-2 { grid-column:span 5; }
.home-product-card-3,.home-product-card-4,.home-product-card-5,.home-product-card-6 { grid-column:span 3; }
.home-product-image { aspect-ratio:1.58/1; overflow:hidden; background:#dbe2dc; }
.home-product-card:nth-child(n+3) .home-product-image { aspect-ratio:1.15/1; }
.home-product-image img { width:100%; height:100%; object-fit:cover; transition:transform 650ms cubic-bezier(.2,.7,.2,1); }
.home-product-card:hover img,.home-product-card:focus-visible img { transform:scale(1.04); }
.home-product-copy { display:flex; flex:1; flex-direction:column; min-height:230px; padding:28px 30px 27px; }
.home-product-card:nth-child(n+3) .home-product-copy { min-height:250px; padding:24px 22px; }
.home-product-copy h3 { margin-bottom:13px; font-size:clamp(20px,1.75vw,27px); font-weight:650; letter-spacing:-.025em; }
.home-product-card:nth-child(n+3) h3 { font-size:20px; }
.home-product-copy p { margin-bottom:24px; color:#687181; font-size:14px; line-height:1.65; }
.home-product-copy>span { display:flex; align-items:center; justify-content:space-between; margin-top:auto; padding-top:17px; border-top:1px solid #d7dadd; color:#12234f; font-size:12px; font-weight:800; letter-spacing:.03em; }
.home-product-copy b { color:var(--red); font-size:17px; transition:transform 180ms ease; }
.home-product-card:hover b,.home-product-card:focus-visible b { transform:translateX(5px); }

.home-applications { display:grid; grid-template-columns:minmax(320px,.9fr) minmax(480px,1.1fr); gap:clamp(65px,9vw,150px); padding:92px clamp(26px,6vw,104px); background:#dfe4eb; }
.home-applications h2 { max-width:650px; margin-bottom:0; font-size:clamp(34px,3.5vw,52px); }
.home-applications .eyebrow.light { color:var(--red); }
.home-applications ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-content:start; margin:0; padding:0; border-top:1px solid #9fa9b8; list-style:none; }
.home-applications li { min-height:72px; padding:23px 18px 18px 0; border-bottom:1px solid #9fa9b8; color:#11234e; font-size:15px; font-weight:700; }
.home-applications li:nth-child(even) { padding-left:24px; border-left:1px solid #9fa9b8; }

.home-materials { display:grid; grid-template-columns:minmax(360px,.95fr) minmax(440px,1.05fr); gap:clamp(70px,10vw,165px); padding:124px clamp(26px,6vw,104px); background:#091b42; color:#fff; }
.home-materials h2,.home-materials h3 { color:#fff; }
.home-materials-copy h2 { max-width:680px; font-size:clamp(42px,4.6vw,68px); }
.home-materials-copy>p:last-child { max-width:620px; color:#b5c2db; font-size:17px; line-height:1.8; }
.home-material-list { border-top:1px solid rgba(255,255,255,.25); }
.home-material-list article { display:grid; grid-template-columns:58px 1fr; gap:24px; align-items:start; padding:30px 0; border-bottom:1px solid rgba(255,255,255,.25); }
.home-material-list h3 { margin-bottom:8px; font-size:21px; font-weight:650; }
.home-material-list p { margin-bottom:0; color:#aebbd4; font-size:14px; line-height:1.65; }
.home-material-swatch { width:46px; height:46px; border:1px solid rgba(255,255,255,.36); border-radius:50%; box-shadow:inset 0 0 0 6px rgba(255,255,255,.06); }

.home-quality { display:grid; grid-template-columns:minmax(390px,.9fr) minmax(500px,1.1fr); background:#f1f0ec; }
.home-quality-visual { position:relative; min-height:850px; overflow:hidden; background:#d8dfda; }
.home-quality-visual::after { position:absolute; inset:0; background:linear-gradient(180deg,transparent 55%,rgba(7,25,68,.72)); content:""; }
.home-quality-visual img { width:100%; height:100%; object-fit:cover; }
.home-quality-visual p { position:absolute; z-index:1; right:42px; bottom:44px; left:42px; max-width:480px; margin:0; color:#fff; font-size:clamp(25px,2.3vw,38px); font-weight:600; letter-spacing:-.035em; line-height:1.15; }
.home-quality-body { align-self:center; padding:100px clamp(42px,7vw,118px); }
.home-quality-body h2 { max-width:700px; font-size:clamp(42px,4.8vw,70px); }
.home-quality-lead { max-width:650px; color:#5f6877; font-size:17px; line-height:1.8; }
.home-quality-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:34px; border-top:1px solid #bcc1c8; }
.home-quality-list span { min-height:78px; padding:22px 16px 17px 0; border-bottom:1px solid #bcc1c8; color:#132650; font-size:14px; font-weight:700; line-height:1.45; }
.home-quality-list span:nth-child(even) { padding-left:22px; border-left:1px solid #bcc1c8; }
.home-certificates { margin-top:42px; }
.home-certificates-heading { display:flex; align-items:center; justify-content:space-between; gap:22px; margin-bottom:15px; }
.home-certificates-heading>span { color:#707886; font-size:10px; font-weight:850; letter-spacing:.15em; }
.home-certificates-heading a { color:#11234e; font-size:12px; font-weight:800; }
.home-certificates-heading a b { margin-left:8px; color:var(--red); }
.home-certificate-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); border-top:4px solid var(--red); background:#fff; }
.home-certificate-row a { display:flex; flex-direction:column; min-height:148px; padding:25px 26px; border-right:1px solid #d8dade; transition:background 160ms ease; }
.home-certificate-row a:last-child { border-right:0; }
.home-certificate-row a:hover,.home-certificate-row a:focus-visible { background:#f7f7f4; outline:none; }
.home-certificate-row span { margin-bottom:13px; color:#747c89; font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.home-certificate-row strong { margin-bottom:18px; color:#10224f; font-size:19px; }
.home-certificate-row small { margin-top:auto; color:#7b8390; font-size:11px; }

.home-contact { display:grid; grid-template-columns:minmax(340px,.9fr) minmax(520px,1.1fr); gap:clamp(65px,10vw,165px); padding:112px clamp(26px,6vw,104px); background:#e52025; color:#fff; }
.home-contact h2 { max-width:700px; margin-bottom:0; color:#fff; font-size:clamp(43px,4.8vw,72px); }
.home-contact .eyebrow.light { color:#ffd4d5; }
.home-contact-details { border-top:1px solid rgba(255,255,255,.45); }
.home-contact-details>* { position:relative; display:flex; flex-direction:column; gap:8px; min-height:98px; padding:24px 46px 20px 0; border-bottom:1px solid rgba(255,255,255,.45); }
.home-contact-details span { color:#ffd4d5; font-size:10px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.home-contact-details strong { max-width:690px; font-size:17px; line-height:1.55; }
.home-contact-details b { position:absolute; top:36px; right:4px; font-size:20px; font-weight:400; transition:transform 160ms ease; }
.home-contact-details a:hover b,.home-contact-details a:focus-visible b { transform:translate(4px,-4px); }

.home-footer { display:grid; grid-template-columns:1.15fr 1fr .85fr; gap:60px; align-items:end; padding:54px clamp(26px,6vw,104px); background:#050f28; color:#8f9ab2; font-size:12px; }
.home-footer img { width:148px; margin-bottom:18px; padding:8px; background:#fff; }
.home-footer p { margin-bottom:0; }
.home-footer nav { display:flex; flex-wrap:wrap; gap:13px 24px; color:#d0d7e6; font-weight:650; }
.home-footer nav a:hover,.home-footer nav a:focus-visible { color:#ff777a; }
.home-footer>p { text-align:right; }

@media (max-width:1120px) {
  .home-hero { min-height:0; padding-top:72px; }
  .home-hero-copy { grid-column:1/13; max-width:820px; padding:28px 0 64px; }
  .home-hero-media { grid-column:1/13; height:520px; }
  .home-proof-strip { margin-top:0; }
  .home-intro { grid-template-columns:1fr 4fr; }
  .home-intro-copy { grid-column:2; max-width:650px; }
  .home-product-card-3,.home-product-card-4,.home-product-card-5,.home-product-card-6 { grid-column:span 6; }
  .home-product-card:nth-child(n+3) .home-product-image { aspect-ratio:1.5/1; }
  .home-applications,.home-materials { gap:60px; }
  .home-quality { grid-template-columns:1fr; }
  .home-quality-visual { min-height:560px; }
  .home-quality-body { max-width:980px; }
}

@media (max-width:760px) {
  .site-header { min-height:78px; }
  .site-header .brand img { width:145px; }
  .home-hero { padding:48px 22px 0; }
  .home-hero::before { left:22px; width:54px; }
  .home-hero-copy { padding-bottom:48px; }
  .home-hero-copy h1 { font-size:clamp(46px,13.5vw,64px); }
  .home-hero-copy>p:last-of-type { font-size:16px; }
  .home-hero-actions { align-items:flex-start; flex-direction:column; gap:24px; }
  .home-hero-media { height:350px; }
  .home-hero-image-label { min-width:220px; padding:18px 20px; }
  .home-proof-strip { grid-template-columns:1fr; }
  .home-proof-strip div { min-height:88px; padding:21px 0; border-right:0; border-bottom:1px solid rgba(255,255,255,.17); }
  .home-proof-strip div:not(:first-child) { padding-left:0; }
  .home-proof-strip div:last-child { border-bottom:0; }
  .home-intro { grid-template-columns:1fr; gap:35px; padding:82px 22px; }
  .home-section-index { max-width:210px; }
  .home-intro-copy { grid-column:auto; }
  .home-intro-statement h2 { font-size:clamp(38px,11vw,52px); }
  .home-products { padding:78px 22px 84px; }
  .home-heading-row { grid-template-columns:1fr; gap:28px; margin-bottom:38px; }
  .home-heading-row h2 { font-size:clamp(38px,11vw,52px); }
  .home-product-grid { gap:16px; }
  .home-product-card-1,.home-product-card-2,.home-product-card-3,.home-product-card-4,.home-product-card-5,.home-product-card-6 { grid-column:span 12; }
  .home-product-card:nth-child(n) .home-product-image { aspect-ratio:1.45/1; }
  .home-product-card:nth-child(n) .home-product-copy { min-height:0; padding:24px 22px; }
  .home-applications,.home-materials,.home-contact { grid-template-columns:1fr; gap:42px; padding:76px 22px; }
  .home-applications h2,.home-materials-copy h2,.home-contact h2 { font-size:clamp(38px,11vw,52px); }
  .home-applications ul { grid-template-columns:1fr; }
  .home-applications li:nth-child(even) { padding-left:0; border-left:0; }
  .home-quality-visual { min-height:430px; }
  .home-quality-visual p { right:24px; bottom:26px; left:24px; }
  .home-quality-body { padding:76px 22px; }
  .home-quality-body h2 { font-size:clamp(38px,11vw,54px); }
  .home-quality-list,.home-certificate-row { grid-template-columns:1fr; }
  .home-quality-list span:nth-child(even) { padding-left:0; border-left:0; }
  .home-certificate-row a { border-right:0; border-bottom:1px solid #d8dade; }
  .home-certificate-row a:last-child { border-bottom:0; }
  .home-certificates-heading { align-items:flex-start; flex-direction:column; }
  .home-footer { grid-template-columns:1fr; gap:34px; align-items:start; padding:46px 22px; }
  .home-footer>p { text-align:left; }
}

/* Photo-led industrial editorial direction */
body { background:#f7f6f2; color:#181a1f; }
.studio-page { overflow:hidden; background:#f7f6f2; }
.studio-header { background:rgba(247,246,242,.96); border-bottom-color:#d9d7d1; }
.studio-header .desktop-nav { color:#20242c; }

.studio-section-label { margin:0; }
.studio-section-label span { display:inline-block; color:#e52025; font-size:10px; font-weight:850; letter-spacing:.18em; line-height:1.3; }

.studio-hero { padding:54px clamp(26px,5.5vw,94px) 0; border-bottom:1px solid #d5d3cc; }
.studio-hero-meta { display:flex; justify-content:space-between; gap:24px; padding-bottom:24px; border-bottom:1px solid #b9b7b1; color:#676b73; font-size:10px; font-weight:750; letter-spacing:.14em; }
.studio-hero h1 { max-width:none; margin:58px 0 46px; color:#0a1f50; font-family:"Arial Narrow","Bahnschrift Condensed","Segoe UI",sans-serif; font-size:clamp(76px,10.5vw,164px); font-stretch:condensed; font-weight:700; letter-spacing:-.078em; line-height:.83; }
.studio-hero-intro { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:end; margin:0 0 52px 32%; }
.studio-hero-intro>p { max-width:660px; margin:0; color:#555a64; font-size:18px; line-height:1.75; }
.studio-hero-intro>div { display:flex; justify-content:flex-end; gap:30px; }
.studio-hero-intro a { padding-bottom:7px; border-bottom:1px solid #6a6e75; color:#172348; font-size:13px; font-weight:800; }
.studio-hero-intro a span { margin-left:13px; color:#e52025; }
.studio-hero-intro a:hover,.studio-hero-intro a:focus-visible { border-color:#e52025; color:#e52025; }
.studio-hero-figure { position:relative; margin:0; }
.studio-hero-figure img { width:100%; height:clamp(500px,60vw,790px); object-fit:cover; object-position:center 55%; }
.studio-hero-figure figcaption { position:absolute; right:0; bottom:0; display:flex; flex-direction:column; min-width:320px; padding:23px 26px; background:#f7f6f2; color:#151b2a; }
.studio-hero-figure figcaption span { margin-bottom:7px; color:#e52025; font-size:9px; font-weight:850; letter-spacing:.16em; }
.studio-hero-figure figcaption strong { font-size:13px; }
.studio-assurance { display:grid; grid-template-columns:repeat(3,1fr); }
.studio-assurance div { display:flex; flex-direction:column; min-height:116px; padding:28px 30px 24px 0; border-right:1px solid #d5d3cc; }
.studio-assurance div:not(:first-child) { padding-left:30px; }
.studio-assurance div:last-child { border-right:0; }
.studio-assurance span { margin-bottom:10px; color:#858990; font-size:9px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.studio-assurance strong { color:#121f44; font-size:15px; font-weight:700; }

.studio-about { display:grid; grid-template-columns:1.2fr 5.4fr 3.1fr; gap:clamp(38px,6vw,100px); padding:142px clamp(26px,5.5vw,94px); border-bottom:1px solid #d5d3cc; }
.studio-about-main h2 { max-width:880px; margin:0; font-family:"Arial Narrow","Bahnschrift Condensed","Segoe UI",sans-serif; font-size:clamp(46px,5.1vw,78px); font-stretch:condensed; font-weight:650; letter-spacing:-.06em; line-height:1; }
.studio-about-copy { align-self:end; }
.studio-about-copy p { color:#5a5f69; font-size:16px; line-height:1.85; }
.studio-about-copy p:last-child { margin-bottom:0; }

.studio-products { display:grid; grid-template-columns:minmax(300px,.85fr) minmax(500px,1.45fr); gap:clamp(65px,9vw,150px); align-items:start; padding:130px clamp(26px,5.5vw,94px); background:#eeece6; }
.studio-products-aside { position:sticky; top:126px; }
.studio-products-aside h2 { max-width:520px; margin:30px 0 22px; font-size:clamp(42px,4.4vw,66px); }
.studio-products-aside>p:not(.studio-section-label) { max-width:480px; color:#656a74; font-size:15px; line-height:1.75; }
.studio-products-aside img { width:70%; max-height:460px; margin-top:43px; object-fit:cover; object-position:center 62%; filter:saturate(.85) contrast(1.03); }
.studio-product-list { border-top:1px solid #a9a8a3; }
.studio-product-list a { position:relative; display:grid; grid-template-columns:minmax(190px,.7fr) minmax(260px,1.3fr) 24px; gap:28px; align-items:start; padding:30px 0; border-bottom:1px solid #a9a8a3; transition:padding 180ms ease,color 180ms ease; }
.studio-product-list a::before { position:absolute; top:-1px; left:0; width:0; height:2px; background:#e52025; content:""; transition:width 230ms ease; }
.studio-product-list a:hover::before,.studio-product-list a:focus-visible::before { width:100%; }
.studio-product-list a:hover,.studio-product-list a:focus-visible { padding-left:12px; outline:none; }
.studio-product-list h3 { margin:0; color:#0e204a; font-size:22px; font-weight:680; letter-spacing:-.025em; }
.studio-product-list p { margin:0; color:#686d77; font-size:14px; line-height:1.65; }
.studio-product-list span { justify-self:end; color:#e52025; font-size:18px; }

.studio-gallery { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr); gap:18px; padding:18px; background:#181a1f; }
.studio-gallery figure { position:relative; margin:0; overflow:hidden; }
.studio-gallery img { width:100%; height:660px; object-fit:cover; transition:transform 850ms cubic-bezier(.2,.7,.2,1); }
.studio-gallery-large img { height:780px; }
.studio-gallery figure:hover img { transform:scale(1.018); }
.studio-gallery figcaption { position:absolute; right:0; bottom:0; left:0; padding:22px 24px; background:linear-gradient(180deg,transparent,rgba(10,11,13,.76)); color:#fff; font-size:12px; font-weight:650; }

.studio-applications { display:grid; grid-template-columns:minmax(130px,.55fr) minmax(0,1.8fr); column-gap:clamp(45px,7vw,110px); row-gap:34px; padding:86px clamp(26px,5.5vw,94px) 92px; border-bottom:1px solid #d5d3cc; }
.studio-applications h2 { max-width:690px; margin:0; font-size:clamp(36px,3.6vw,54px); line-height:1.04; }
.studio-applications ul { grid-column:2; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); margin:0; padding:0; border-top:1px solid #b8b6b0; list-style:none; }
.studio-applications li { padding:24px 20px 22px 0; border-bottom:1px solid #b8b6b0; color:#202b49; font-size:15px; font-weight:700; }
.studio-applications li:nth-child(even) { padding-left:25px; border-left:1px solid #b8b6b0; }

.studio-materials { display:grid; grid-template-columns:1.15fr .85fr; gap:clamp(60px,9vw,150px); padding:132px clamp(26px,5.5vw,94px); background:#fff; }
.studio-materials-heading h2 { max-width:760px; margin:31px 0 0; font-size:clamp(44px,4.8vw,72px); }
.studio-materials-intro p { max-width:620px; color:#5c626c; font-size:17px; line-height:1.8; }
.studio-material-rows { grid-column:1/-1; margin-top:30px; border-top:1px solid #aaa9a5; }
.studio-material-rows article { display:grid; grid-template-columns:1fr 2fr; gap:70px; padding:27px 0; border-bottom:1px solid #aaa9a5; }
.studio-material-rows h3 { margin:0; font-size:22px; }
.studio-material-rows p { max-width:720px; margin:0; color:#606670; font-size:15px; line-height:1.65; }

.studio-quality { display:grid; grid-template-columns:1.15fr .85fr; gap:clamp(65px,9vw,150px); padding:132px clamp(26px,5.5vw,94px); background:#e7e5df; }
.studio-quality-heading h2 { max-width:820px; margin:30px 0 0; font-size:clamp(47px,5.3vw,80px); }
.studio-quality-copy>p { max-width:620px; color:#565d68; font-size:17px; line-height:1.8; }
.studio-quality-points { display:grid; margin-top:35px; border-top:1px solid #aaa9a4; }
.studio-quality-points span { padding:18px 0; border-bottom:1px solid #aaa9a4; color:#17264a; font-size:14px; font-weight:720; }
.studio-certificates { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr 1fr; margin-top:38px; border-top:1px solid #9e9d99; border-bottom:1px solid #9e9d99; }
.studio-certificates>div,.studio-certificates>a { display:flex; flex-direction:column; min-height:168px; padding:27px 30px 25px 0; border-right:1px solid #9e9d99; }
.studio-certificates>*:not(:first-child) { padding-left:30px; }
.studio-certificates>*:last-child { border-right:0; }
.studio-certificates>div>span { color:#757a82; font-size:9px; font-weight:850; letter-spacing:.14em; }
.studio-certificates>div>a { margin-top:auto; color:#142650; font-size:13px; font-weight:800; }
.studio-certificates b { margin-left:10px; color:#e52025; }
.studio-certificates small { margin-bottom:18px; color:#777c84; font-size:9px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.studio-certificates strong { color:#12234d; font-size:21px; }
.studio-certificates>a>span { margin-top:auto; color:#747982; font-size:11px; }
.studio-certificates>a:hover strong,.studio-certificates>a:focus-visible strong { color:#e52025; }

.studio-contact { padding:92px clamp(26px,5.5vw,94px) 96px; background:#dfe4ea; color:#111b35; }
.studio-contact .studio-section-label span { color:#e52025; }
.studio-contact h2 { max-width:900px; margin:30px 0 54px; color:#0a2157; font-family:"Arial Narrow","Bahnschrift Condensed","Segoe UI",sans-serif; font-size:clamp(42px,4.8vw,72px); font-stretch:condensed; font-weight:650; letter-spacing:-.058em; line-height:.98; }
.studio-contact-grid { display:grid; grid-template-columns:.8fr 1fr 1.7fr; border-top:1px solid #aab2be; }
.studio-contact-grid>* { position:relative; display:flex; flex-direction:column; gap:12px; min-height:126px; padding:26px 42px 18px 0; border-right:1px solid #aab2be; }
.studio-contact-grid>*:not(:first-child) { padding-left:30px; }
.studio-contact-grid>*:last-child { border-right:0; }
.studio-contact-grid span { color:#687383; font-size:9px; font-weight:850; letter-spacing:.14em; text-transform:uppercase; }
.studio-contact-grid strong { max-width:680px; color:#10224c; font-size:16px; line-height:1.6; }
.studio-contact-grid b { position:absolute; top:28px; right:18px; color:#e52025; font-size:19px; }

.studio-footer { display:grid; grid-template-columns:1.2fr 1fr .8fr; gap:50px; align-items:end; padding:50px clamp(26px,5.5vw,94px); border-top:1px solid #d5d3cc; background:#f7f6f2; color:#747981; font-size:11px; }
.studio-footer img { width:142px; margin-bottom:17px; }
.studio-footer p { margin:0; }
.studio-footer nav { display:flex; flex-wrap:wrap; gap:13px 22px; color:#23304e; font-weight:700; }
.studio-footer nav a:hover,.studio-footer nav a:focus-visible { color:#e52025; }
.studio-footer>p { text-align:right; }

@media (max-width:1050px) {
  .studio-hero-intro { margin-left:15%; }
  .studio-about { grid-template-columns:1fr 4fr; }
  .studio-about-copy { grid-column:2; max-width:680px; }
  .studio-products { grid-template-columns:1fr; }
  .studio-products-aside { position:static; }
  .studio-products-aside img { width:48%; }
  .studio-gallery { grid-template-columns:1fr 1fr; }
  .studio-gallery img,.studio-gallery-large img { height:620px; }
  .studio-applications { grid-template-columns:1fr 3fr; }
  .studio-quality,.studio-materials { gap:65px; }
}

@media (max-width:760px) {
  .studio-hero { padding:34px 22px 0; }
  .studio-hero-meta { flex-wrap:wrap; gap:10px 18px; }
  .studio-hero h1 { margin:46px 0 34px; font-size:clamp(58px,20vw,86px); line-height:.87; }
  .studio-hero-intro { grid-template-columns:1fr; gap:28px; margin:0 0 38px; }
  .studio-hero-intro>p { font-size:16px; }
  .studio-hero-intro>div { justify-content:flex-start; }
  .studio-hero-figure img { height:430px; object-position:54% center; }
  .studio-hero-figure figcaption { right:0; left:0; min-width:0; padding:18px 20px; }
  .studio-assurance { grid-template-columns:1fr; }
  .studio-assurance div { min-height:86px; padding:21px 0; border-right:0; border-bottom:1px solid #d5d3cc; }
  .studio-assurance div:not(:first-child) { padding-left:0; }
  .studio-about { grid-template-columns:1fr; gap:34px; padding:82px 22px; }
  .studio-about-main h2 { font-size:clamp(40px,12.5vw,57px); }
  .studio-about-copy { grid-column:auto; }
  .studio-products { gap:52px; padding:82px 22px; }
  .studio-products-aside h2 { font-size:clamp(39px,12vw,54px); }
  .studio-products-aside img { width:72%; }
  .studio-product-list a { grid-template-columns:1fr 22px; gap:14px; padding:24px 0; }
  .studio-product-list p { grid-column:1; }
  .studio-product-list span { grid-column:2; grid-row:1; }
  .studio-gallery { grid-template-columns:1fr; gap:10px; padding:10px; }
  .studio-gallery img,.studio-gallery-large img { height:520px; }
  .studio-applications,.studio-materials,.studio-quality { grid-template-columns:1fr; gap:30px; padding:68px 22px 72px; }
  .studio-applications h2,.studio-materials-heading h2,.studio-quality-heading h2 { font-size:clamp(37px,11vw,52px); }
  .studio-applications ul { grid-column:auto; grid-template-columns:1fr; }
  .studio-applications li:nth-child(even) { padding-left:0; border-left:0; }
  .studio-material-rows { grid-column:auto; }
  .studio-material-rows article { grid-template-columns:1fr; gap:8px; }
  .studio-certificates { grid-column:auto; grid-template-columns:1fr; }
  .studio-certificates>div,.studio-certificates>a { min-height:135px; padding:23px 0; border-right:0; border-bottom:1px solid #9e9d99; }
  .studio-certificates>*:not(:first-child) { padding-left:0; }
  .studio-certificates>*:last-child { border-bottom:0; }
  .studio-contact { padding:68px 22px 72px; }
  .studio-contact h2 { margin-bottom:42px; font-size:clamp(40px,12vw,56px); }
  .studio-contact-grid { grid-template-columns:1fr; }
  .studio-contact-grid>* { min-height:105px; padding:23px 42px 18px 0; border-right:0; border-bottom:1px solid #aab2be; }
  .studio-contact-grid>*:not(:first-child) { padding-left:0; }
  .studio-footer { grid-template-columns:1fr; gap:30px; align-items:start; padding:44px 22px; }
  .studio-footer>p { text-align:left; }
}

/* Scale refinement and detail-page alignment */
.studio-hero h1 { font-size:clamp(68px,8.4vw,128px); }
.studio-hero-figure img { height:clamp(450px,49vw,650px); }
.studio-about { padding-top:108px; padding-bottom:108px; }
.studio-about-main h2 { font-size:clamp(42px,4.2vw,64px); }
.studio-products { padding-top:102px; padding-bottom:106px; }
.studio-products-aside h2 { font-size:clamp(38px,3.6vw,54px); }
.studio-products-aside img { max-height:380px; }
.studio-gallery img { height:520px; }
.studio-gallery-large img { height:620px; }
.studio-materials,.studio-quality { padding-top:104px; padding-bottom:108px; }
.studio-materials-heading h2 { font-size:clamp(39px,4vw,60px); }
.studio-quality-heading h2 { font-size:clamp(42px,4.3vw,65px); }
.studio-hero-figure figcaption,.studio-gallery figcaption { display:none; }

.product-detail-hero { grid-template-columns:minmax(320px,.78fr) minmax(430px,1.22fr); min-height:520px; padding:58px clamp(26px,5.5vw,94px) 64px; border-bottom:1px solid #d5d3cc; background:#f7f6f2; }
.product-detail-copy { max-width:620px; padding-right:clamp(28px,5vw,78px); }
.product-detail-copy h1 { margin-bottom:22px; font-family:"Arial Narrow","Bahnschrift Condensed","Segoe UI",sans-serif; font-size:clamp(44px,4.4vw,66px); font-stretch:condensed; letter-spacing:-.055em; line-height:.96; }
.product-detail-copy>p:last-child { font-size:16px; line-height:1.7; }
.product-detail-hero .back-link { margin-bottom:42px; }
.product-detail-image-wrap { align-self:center; width:100%; height:clamp(380px,33vw,520px); min-height:0; box-shadow:none; }
.product-detail-image-wrap::before { display:none; }
.product-information { gap:clamp(50px,8vw,120px); padding-top:90px; padding-bottom:94px; background:#fff; }
.product-overview h2 { margin-bottom:26px; font-size:clamp(36px,3.6vw,54px); }
.product-overview>p:not(.eyebrow) { font-size:16px; line-height:1.75; }
.product-facts { gap:0; border-top:1px solid #b8b7b2; }
.product-facts article { padding:25px 0 27px; border-top:0; border-bottom:1px solid #b8b7b2; background:transparent; }
.product-facts h3 { margin-bottom:17px; font-size:18px; }
.product-contact { padding:70px clamp(26px,5.5vw,94px); background:#dfe4ea; color:#10224c; }
.product-contact h2 { color:#0a2157; font-size:clamp(35px,3.7vw,54px); }
.product-contact p:last-child { color:#5c6675; font-size:16px; }
.product-contact .eyebrow.light { color:#e52025; }
.product-contact .button-light { border-color:#bcc3cd; background:#fff; }
.site-footer { border-top:1px solid #d5d3cc; background:#f7f6f2; color:#747981; }
.site-footer img { padding:0; background:transparent; }

.certificates-hero { padding-top:70px; padding-bottom:72px; background:#f1f0ec; }
.certificates-hero::after { height:5px; }
.certificates-hero h1 { font-size:clamp(44px,4.8vw,70px); }
.certificates-hero>div>p:last-child { font-size:17px; }
.certificates-section { padding-top:92px; padding-bottom:98px; }
.certificate-document-copy h2 { font-size:clamp(34px,3.5vw,50px); }

@media (max-width:1050px) {
  .product-detail-hero { grid-template-columns:1fr; gap:46px; }
  .product-detail-copy { max-width:760px; padding-right:0; }
  .product-detail-image-wrap { height:clamp(360px,58vw,500px); min-height:0; }
}

@media (max-width:760px) {
  .studio-hero h1 { font-size:clamp(54px,17vw,76px); }
  .studio-hero-figure img { height:390px; }
  .studio-about { padding-top:72px; padding-bottom:74px; }
  .studio-about-main h2 { font-size:clamp(36px,10.5vw,49px); }
  .studio-products { padding-top:72px; padding-bottom:76px; }
  .studio-gallery img,.studio-gallery-large img { height:440px; }
  .studio-materials,.studio-quality { padding-top:74px; padding-bottom:78px; }
  .product-detail-hero { padding:42px 22px 50px; }
  .product-detail-copy h1 { font-size:clamp(39px,12vw,54px); }
  .product-detail-image-wrap { height:320px; min-height:0; }
  .product-information { gap:42px; padding-top:70px; padding-bottom:74px; }
  .product-contact { padding:58px 22px 62px; }
  .certificates-hero { padding-top:54px; padding-bottom:58px; }
  .certificates-section { padding-top:72px; padding-bottom:76px; }
}

@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { transition-duration:.01ms!important; } .cover-carousel-controls { display:none; } }

/* Multi-page corporate catalogue */
.corp-page { min-height:100vh; overflow:hidden; background:#f6f5f1; color:#171a20; }
.corp-header { position:sticky; z-index:40; top:0; display:flex; align-items:center; justify-content:space-between; min-height:86px; padding:0 clamp(26px,5.2vw,88px); border-bottom:1px solid #d9d8d3; background:rgba(249,248,245,.96); backdrop-filter:blur(14px); }
.corp-brand img { width:176px; height:auto; }
.corp-nav { display:flex; align-items:center; gap:clamp(22px,2.4vw,36px); color:#17213b; font-size:14px; font-weight:700; }
.corp-nav a { position:relative; padding:34px 0 32px; }
.corp-nav a::after { position:absolute; right:0; bottom:0; left:0; height:2px; background:#e52025; content:""; transform:scaleX(0); transform-origin:left; transition:transform 180ms ease; }
.corp-nav a:hover::after,.corp-nav a:focus-visible::after,.corp-nav a[aria-current="page"]::after { transform:scaleX(1); }
.corp-nav a[aria-current="page"] { color:#071f58; }
.corp-language { margin-left:8px; padding-left:24px; border-left:1px solid #d4d5d8; color:#0a2157; }
.corp-language i { padding:0 5px; color:#a5a9b0; font-style:normal; }
.corp-language a { padding:0; color:#6e7480; }
.corp-language a::after { display:none; }
.corp-language a:hover,.corp-language a:focus-visible { color:#e52025; }
.corp-language b { font-weight:800; }
.corp-mobile-nav { display:none; }
.corp-kicker { margin:0 0 22px; color:#e52025; font-size:10px; font-weight:850; letter-spacing:.18em; line-height:1.3; }

.cover-hero { display:grid; grid-template-columns:minmax(370px,.86fr) minmax(540px,1.14fr); min-height:650px; border-bottom:1px solid #d4d3ce; }
.cover-copy { display:flex; flex-direction:column; justify-content:center; padding:68px clamp(42px,6vw,104px) 74px clamp(26px,5.2vw,88px); background:#f6f5f1; }
.cover-copy h1 { max-width:650px; margin:0 0 30px; color:#082158; font-family:"Arial Narrow","Bahnschrift Condensed","Segoe UI",sans-serif; font-size:clamp(49px,5.1vw,76px); font-weight:680; letter-spacing:-.06em; line-height:.94; }
.cover-lead { max-width:590px; margin:0; color:#59616d; font-size:17px; line-height:1.78; }
.cover-links { display:flex; flex-wrap:wrap; gap:25px 36px; margin-top:36px; }
.cover-links a { padding-bottom:7px; border-bottom:1px solid #8e929a; color:#132650; font-size:13px; font-weight:800; }
.cover-links a span,.simple-contact-strip a span,.material-note a span,.quality-cert-band>a span { margin-left:10px; color:#e52025; }
.cover-links a:hover,.cover-links a:focus-visible { border-color:#e52025; color:#e52025; }
.cover-media { min-height:650px; overflow:hidden; background:#d8ded9; }
.cover-media img { width:100%; height:100%; object-fit:cover; object-position:center 54%; transition:transform 900ms cubic-bezier(.2,.7,.2,1); }
.cover-carousel { position:relative; }
.cover-slide { position:absolute; inset:0; opacity:0; transform:scale(1.01); transition:opacity 1100ms ease,transform 6500ms cubic-bezier(.2,.7,.2,1); }
.cover-slide.is-active { z-index:1; opacity:1; transform:scale(1.025); }
.cover-carousel-controls { position:absolute; z-index:2; right:30px; bottom:28px; display:flex; gap:8px; }
.cover-carousel-controls button { width:34px; height:3px; padding:0; border:0; background:rgba(255,255,255,.55); cursor:pointer; transition:background 180ms ease,width 180ms ease; }
.cover-carousel-controls button.is-active { width:48px; background:#fff; }
.cover-carousel-controls button:focus-visible { outline:2px solid #fff; outline-offset:5px; }

.home-featured { padding:78px clamp(26px,5.2vw,88px) 88px; border-bottom:1px solid #cdccc7; background:#e9e8e3; }
.home-featured-heading { display:flex; align-items:end; justify-content:space-between; gap:45px; margin-bottom:38px; }
.home-featured-heading h2 { margin:0; color:#10234f; font-size:clamp(34px,3.2vw,48px); font-weight:650; letter-spacing:-.05em; }
.home-featured-heading>a { flex:0 0 auto; padding-bottom:7px; border-bottom:1px solid #8e929a; color:#132650; font-size:13px; font-weight:800; }
.home-featured-heading>a span { margin-left:10px; color:#e52025; }
.home-featured-heading>a:hover,.home-featured-heading>a:focus-visible { border-color:#e52025; color:#e52025; }
.home-featured-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(18px,2vw,30px); }
.home-featured-product { position:relative; display:grid; grid-template-columns:1fr 24px; column-gap:15px; align-items:center; padding-bottom:17px; border-bottom:1px solid #aaa9a5; }
.home-featured-product>div { grid-column:1/-1; height:300px; margin-bottom:20px; overflow:hidden; background:#d7ddd8; }
.home-featured-product img { width:100%; height:100%; object-fit:cover; transition:transform 650ms cubic-bezier(.2,.7,.2,1); }
.home-featured-product h3 { margin:0; color:#10234f; font-size:20px; font-weight:700; letter-spacing:-.025em; }
.home-featured-product>span { justify-self:end; color:#e52025; font-size:18px; }
.home-featured-product:hover img,.home-featured-product:focus-visible img { transform:scale(1.025); }
.home-featured-product:hover h3,.home-featured-product:focus-visible h3 { color:#e52025; }
.home-featured-product:focus-visible { outline:2px solid rgba(229,32,37,.25); outline-offset:5px; }

.home-gateways { display:grid; grid-template-columns:minmax(310px,.78fr) minmax(560px,1.22fr); gap:clamp(60px,9vw,150px); padding:104px clamp(26px,5.2vw,88px); background:#fff; }
.home-gateways-intro { max-width:510px; }
.home-gateways-intro h2 { margin:0 0 24px; color:#10234f; font-size:clamp(36px,3.4vw,52px); font-weight:650; letter-spacing:-.05em; line-height:1.03; }
.home-gateways-intro>p:last-child { color:#626a76; font-size:15px; line-height:1.75; }
.gateway-list { border-top:1px solid #aaa9a5; }
.gateway-list>a { display:grid; grid-template-columns:100px 1fr 26px; gap:30px; align-items:start; padding:27px 0 29px; border-bottom:1px solid #aaa9a5; transition:padding 180ms ease; }
.gateway-list>a>span { padding-top:4px; color:#e52025; font-size:10px; font-weight:850; letter-spacing:.14em; text-transform:uppercase; }
.gateway-list h3 { margin:0 0 8px; color:#10234f; font-size:21px; font-weight:700; letter-spacing:-.02em; }
.gateway-list p { max-width:580px; margin:0; color:#676e78; font-size:14px; line-height:1.65; }
.gateway-list b { justify-self:end; color:#e52025; font-size:18px; font-weight:500; }
.gateway-list>a:hover,.gateway-list>a:focus-visible { padding-left:10px; outline:none; }
.home-evidence { display:grid; grid-template-columns:repeat(4,1fr); padding:0 clamp(26px,5.2vw,88px); border-top:1px solid #c8c7c2; border-bottom:1px solid #c8c7c2; background:#e9e8e3; }
.home-evidence>* { position:relative; display:flex; flex-direction:column; min-height:122px; padding:27px 26px 23px 0; border-right:1px solid #c8c7c2; }
.home-evidence>*:not(:first-child) { padding-left:26px; }
.home-evidence>*:last-child { border-right:0; }
.home-evidence span { margin-bottom:13px; color:#777c84; font-size:9px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.home-evidence strong { color:#132650; font-size:15px; font-weight:720; }
.home-evidence b { position:absolute; top:28px; right:0; color:#e52025; font-size:18px; font-weight:500; }

.corp-footer { display:grid; grid-template-columns:1.25fr 1fr 1fr; gap:60px; align-items:start; padding:47px clamp(26px,5.2vw,88px) 50px; background:#f6f5f1; color:#6a707a; font-size:11px; }
.corp-footer-brand img { width:136px; margin-bottom:17px; }
.corp-footer p { margin:0; line-height:1.6; }
.corp-footer nav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 30px; color:#22304f; font-weight:700; }
.corp-footer a:hover,.corp-footer a:focus-visible { color:#e52025; }
.footer-cookie-button { padding:0; border:0; background:transparent; color:#22304f; font:inherit; font-weight:700; text-align:left; cursor:pointer; }
.footer-cookie-button:hover,.footer-cookie-button:focus-visible { color:#e52025; }
.corp-footer-contact { display:flex; flex-direction:column; gap:9px; align-items:flex-end; color:#22304f; font-weight:650; }
.corp-footer-contact p { margin-top:12px; color:#7b8088; font-weight:400; }

.page-intro { padding:92px clamp(26px,7.5vw,128px) 96px; border-bottom:1px solid #d1d0cb; background:#f6f5f1; }
.page-intro h1,.contact-heading h1 { max-width:890px; margin:0; color:#0a2157; font-family:"Arial Narrow","Bahnschrift Condensed","Segoe UI",sans-serif; font-size:clamp(46px,4.8vw,70px); font-weight:670; letter-spacing:-.06em; line-height:.96; }
.page-intro>p:last-child { max-width:680px; margin:30px 0 0; color:#5d6571; font-size:17px; line-height:1.78; }
.page-intro-split { display:grid; grid-template-columns:minmax(420px,1.25fr) minmax(330px,.75fr); gap:clamp(65px,10vw,170px); align-items:end; }
.page-intro-split>p:last-child { margin:0 0 5px; }
.page-wide-image { height:min(58vw,660px); min-height:430px; padding:18px; background:#171a20; }
.page-wide-image img { width:100%; height:100%; object-fit:cover; object-position:center 52%; }
.corporate-story { display:grid; grid-template-columns:1.2fr .8fr; gap:clamp(65px,10vw,170px); padding:105px clamp(26px,7.5vw,128px); background:#fff; }
.corporate-story h2 { max-width:760px; margin:0; font-size:clamp(38px,3.8vw,57px); font-weight:650; }
.corporate-copy { padding-top:33px; border-top:1px solid #b8b7b2; }
.corporate-copy p { color:#5b636f; font-size:16px; line-height:1.82; }
.corporate-copy p:last-child { margin-bottom:0; }
.corporate-band { display:grid; grid-template-columns:1.1fr repeat(3,1fr); padding:0 clamp(26px,5.2vw,88px); border-top:1px solid #bcbab4; border-bottom:1px solid #bcbab4; background:#e7e5df; }
.corporate-band>* { display:flex; flex-direction:column; justify-content:center; min-height:136px; padding:25px 28px 22px 0; border-right:1px solid #bcbab4; }
.corporate-band>*:not(:first-child) { padding-left:28px; }
.corporate-band>*:last-child { border-right:0; }
.corporate-band>p { margin:0; color:#0c2458; font-size:21px; font-weight:720; }
.corporate-band strong { margin-bottom:10px; color:#142750; font-size:14px; }
.corporate-band span { color:#6c727b; font-size:12px; line-height:1.5; }

.catalogue-intro h1 { max-width:none; }
.catalogue-list { display:grid; grid-template-columns:repeat(8,minmax(0,1fr)); gap:1px; padding:1px; background:#c9c8c4; }
.catalogue-item { grid-column:span 2; display:flex; min-width:0; flex-direction:column; background:#f8f7f4; }
.catalogue-item:nth-last-child(3):nth-child(4n+1) { grid-column:2/span 2; }
.catalogue-image { aspect-ratio:1.25/1; overflow:hidden; background:#d7ddd8; }
.catalogue-image img { width:100%; height:100%; object-fit:cover; transition:transform 650ms cubic-bezier(.2,.7,.2,1); }
.catalogue-copy { display:flex; min-height:218px; flex:1; flex-direction:column; padding:27px 25px 23px; }
.catalogue-copy h2 { margin:0 0 13px; color:#0d2457; font-size:clamp(22px,1.65vw,28px); font-weight:650; letter-spacing:-.035em; line-height:1.08; }
.catalogue-copy p { margin:0; color:#626a75; font-size:13px; line-height:1.65; }
.catalogue-copy>span { display:flex; justify-content:space-between; margin-top:auto; padding-top:17px; border-top:1px solid #c8c8c4; color:#172a53; font-size:10px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.catalogue-copy b { color:#e52025; font-size:16px; font-weight:500; }
.catalogue-item:hover img,.catalogue-item:focus-visible img { transform:scale(1.025); }
.catalogue-item:hover h2,.catalogue-item:focus-visible h2 { color:#e52025; }
.simple-contact-strip,.material-note { display:flex; align-items:center; justify-content:space-between; gap:45px; padding:46px clamp(26px,7.5vw,128px); background:#e8e7e2; }
.simple-contact-strip p,.material-note p { max-width:760px; margin:0; color:#17264a; font-size:16px; line-height:1.65; }
.simple-contact-strip a,.material-note a { flex:0 0 auto; padding-bottom:7px; border-bottom:1px solid #8f9298; color:#132650; font-size:13px; font-weight:800; }

.materials-intro { display:grid; grid-template-columns:1fr 1fr; column-gap:85px; }
.materials-intro .corp-kicker { grid-column:1/-1; }
.materials-intro>p:last-child { align-self:end; margin:0 0 5px; }
.materials-layout,.quality-layout { display:grid; grid-template-columns:minmax(420px,.9fr) minmax(460px,1.1fr); gap:clamp(65px,8vw,130px); align-items:start; padding:18px clamp(26px,7.5vw,128px) 98px 18px; background:#fff; }
.materials-photo,.quality-photo { position:sticky; top:104px; height:690px; overflow:hidden; background:#d7ddd8; }
.materials-photo img,.quality-photo img { width:100%; height:100%; object-fit:cover; }
.materials-rows,.quality-rows { padding-top:72px; border-top:1px solid #aaa9a5; }
.materials-rows article,.quality-rows article { display:grid; grid-template-columns:minmax(150px,.7fr) minmax(240px,1.3fr); gap:38px; padding:28px 0 30px; border-bottom:1px solid #aaa9a5; }
.materials-rows h2,.quality-rows h2 { margin:0; color:#10234f; font-size:21px; font-weight:700; letter-spacing:-.025em; line-height:1.2; }
.materials-rows p,.quality-rows p { margin:0; color:#606873; font-size:14px; line-height:1.72; }
.quality-layout { padding-top:18px; background:#efeee9; }
.quality-photo { height:650px; }
.quality-cert-band { display:grid; grid-template-columns:1fr auto; gap:70px; align-items:end; padding:83px clamp(26px,7.5vw,128px) 88px; background:#dfe4ea; }
.quality-cert-band h2 { margin:0 0 17px; color:#0b2255; font-size:clamp(34px,3.2vw,47px); }
.quality-cert-band p:last-child { max-width:750px; margin:0; color:#5e6876; font-size:15px; line-height:1.72; }
.quality-cert-band>a { padding-bottom:8px; border-bottom:1px solid #9098a3; color:#102650; font-size:13px; font-weight:800; }

.contact-page { display:grid; grid-template-columns:minmax(420px,1.05fr) minmax(400px,.95fr); gap:clamp(70px,8vw,135px); padding:68px clamp(26px,7.5vw,128px) 72px; background:#edf0f3; }
.contact-heading>p:last-child { max-width:590px; margin:30px 0 0; color:#5e6876; font-size:17px; line-height:1.78; }
.contact-details { border-top:1px solid #aeb5be; }
.contact-details>* { position:relative; display:flex; flex-direction:column; gap:11px; padding:25px 44px 26px 0; border-bottom:1px solid #aeb5be; }
.contact-details span { color:#707a88; font-size:9px; font-weight:850; letter-spacing:.15em; text-transform:uppercase; }
.contact-details strong { color:#102650; font-size:16px; line-height:1.65; }
.contact-details b { position:absolute; top:25px; right:4px; color:#e52025; font-size:17px; font-weight:500; }
.contact-details a:hover strong,.contact-details a:focus-visible strong { color:#e52025; }
.contact-map { position:relative; height:360px; padding:14px; background:#171a20; }
.contact-map iframe { width:100%; height:100%; border:0; filter:grayscale(.28) saturate(.72) contrast(1.04); }
.contact-map>a { position:absolute; right:34px; bottom:34px; padding:13px 17px; border:1px solid #d7d8dc; background:rgba(255,255,255,.94); color:#102650; font-size:12px; font-weight:800; box-shadow:0 8px 24px rgba(13,24,49,.14); }
.contact-map>a span { margin-left:9px; color:#e52025; }
.contact-map>a:hover,.contact-map>a:focus-visible { color:#e52025; }
.map-consent-placeholder { display:flex; height:100%; align-items:center; justify-content:center; flex-direction:column; padding:38px 24px 74px; background:#e4e8eb; text-align:center; }
.map-consent-placeholder span { margin-bottom:14px; color:#e52025; font-size:9px; font-weight:850; letter-spacing:.16em; }
.map-consent-placeholder strong { color:#102650; font-size:26px; }
.map-consent-placeholder p { max-width:540px; margin:13px 0 23px; color:#65707d; font-size:14px; line-height:1.65; }
.map-consent-placeholder button { padding:12px 17px; border:1px solid #aeb6c0; background:#fff; color:#102650; font-size:12px; font-weight:800; cursor:pointer; }
.map-consent-placeholder button:hover,.map-consent-placeholder button:focus-visible { border-color:#e52025; color:#e52025; }

.legal-hero { padding:76px clamp(26px,7.5vw,128px) 72px; border-bottom:1px solid #d1d0cb; background:#f1f0ec; }
.legal-hero h1 { max-width:980px; margin:0; color:#0a2157; font-family:"Arial Narrow","Bahnschrift Condensed","Segoe UI",sans-serif; font-size:clamp(44px,4.8vw,70px); font-weight:670; letter-spacing:-.055em; line-height:.98; }
.legal-hero>p:last-child { margin:25px 0 0; color:#737983; font-size:12px; }
.legal-content { max-width:1080px; margin:0 auto; padding:70px clamp(26px,7.5vw,90px) 90px; background:#fff; }
.legal-content section { padding:0 0 34px; border-bottom:1px solid #d0cfca; }
.legal-content section+section { padding-top:34px; }
.legal-content h2 { margin:0 0 17px; color:#102650; font-size:23px; font-weight:700; letter-spacing:-.02em; }
.legal-content p { margin:0; color:#59626e; font-size:15px; line-height:1.78; }
.legal-content p+p { margin-top:15px; }
.legal-content a { color:#0c3471; font-weight:700; text-decoration:underline; text-underline-offset:3px; }
.legal-content a:hover,.legal-content a:focus-visible { color:#e52025; }
.legal-table-wrap { margin:8px 0 24px; overflow-x:auto; }
.legal-content table { width:100%; border-collapse:collapse; color:#59626e; font-size:14px; line-height:1.55; }
.legal-content th,.legal-content td { padding:16px 18px; border:1px solid #cacbc8; text-align:left; vertical-align:top; }
.legal-content th { background:#e9e9e5; color:#102650; font-size:12px; letter-spacing:.04em; text-transform:uppercase; }
.legal-content code { color:#233351; font-family:inherit; font-weight:700; }
.legal-content .footer-cookie-button { margin-top:20px; padding:12px 17px; border:1px solid #aeb6c0; background:#f8f7f4; }

.cookie-banner { position:fixed; z-index:100; right:22px; bottom:22px; left:22px; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:34px; align-items:end; max-width:1240px; margin:0 auto; padding:24px 26px; border:1px solid #aeb4bd; background:rgba(249,248,245,.98); color:#172348; box-shadow:0 20px 55px rgba(14,25,49,.22); backdrop-filter:blur(12px); }
.cookie-banner strong { display:block; margin-bottom:8px; color:#0a2157; font-size:18px; }
.cookie-banner p { max-width:850px; margin:0; color:#5b6471; font-size:13px; line-height:1.65; }
.cookie-banner p a { color:#173b75; font-weight:700; text-decoration:underline; text-underline-offset:2px; }
.cookie-banner small { display:block; margin-top:8px; color:#7a8089; font-size:10px; }
.cookie-actions { display:flex; gap:10px; }
.cookie-button { min-width:145px; padding:12px 16px; border:1px solid #aeb5bf; font-size:12px; font-weight:800; cursor:pointer; }
.cookie-button.secondary { background:#fff; color:#102650; }
.cookie-button.primary { border-color:#e52025; background:#e52025; color:#fff; }
.cookie-button:hover,.cookie-button:focus-visible { transform:translateY(-1px); }

.corp-page .product-detail-hero,.corp-page .certificates-hero { margin-top:0; }
.corp-page .product-contact { background:#dfe4ea; }
.corp-page .site-footer { display:none; }

/* WordPress and Elementor integration */
body.admin-bar .corp-header { top:32px; }
.aydin-elementor-content > .elementor { background:#f6f5f1; }
.corp-mobile-nav summary { cursor:pointer; }
.corp-brand img,.corp-footer-brand img { height:auto; }
.wp-block-image img { height:auto; }
@media (max-width:782px) { body.admin-bar .corp-header { top:46px; } }

@media (max-width:1080px) {
  .corp-nav { display:none; }
  .corp-mobile-nav { position:relative; display:block; }
  .corp-mobile-nav summary { cursor:pointer; color:#0a2157; font-size:14px; font-weight:800; list-style:none; }
  .corp-mobile-nav summary::-webkit-details-marker { display:none; }
  .corp-mobile-nav nav { position:absolute; top:34px; right:0; display:flex; flex-direction:column; width:220px; padding:14px; border:1px solid #d9d8d3; background:#fff; box-shadow:0 20px 50px rgba(10,33,87,.14); }
  .corp-mobile-nav a { padding:11px 9px; color:#102650; font-size:14px; font-weight:700; }
  .cover-hero { grid-template-columns:1fr 1fr; }
  .home-featured-product>div { height:250px; }
  .home-gateways { gap:60px; }
  .catalogue-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .catalogue-list .catalogue-item { grid-column:auto; }
  .catalogue-list .catalogue-item:last-child:nth-child(odd) { grid-column:1/-1; width:50%; justify-self:center; }
  .catalogue-image { min-height:0; aspect-ratio:1.35/1; }
  .catalogue-copy { min-height:220px; }
  .materials-layout,.quality-layout { gap:55px; }
  .materials-rows article,.quality-rows article { grid-template-columns:1fr; gap:10px; }
}

@media (max-width:760px) {
  .corp-header { min-height:76px; padding:0 22px; }
  .corp-brand img { width:150px; }
  .cover-hero { grid-template-columns:1fr; min-height:0; }
  .cover-copy { padding:62px 22px 66px; }
  .cover-copy h1 { font-size:clamp(45px,14vw,61px); }
  .cover-lead { font-size:16px; }
  .cover-media { min-height:380px; }
  .home-featured { padding:64px 22px 70px; }
  .home-featured-heading { align-items:flex-start; flex-direction:column; gap:24px; margin-bottom:32px; }
  .home-featured-grid { grid-template-columns:1fr; gap:34px; }
  .home-featured-product>div { height:300px; }
  .home-gateways { grid-template-columns:1fr; gap:45px; padding:72px 22px; }
  .gateway-list>a { grid-template-columns:1fr 24px; gap:12px; }
  .gateway-list>a>span { grid-column:1; }
  .gateway-list>a>div { grid-column:1; }
  .gateway-list b { grid-column:2; grid-row:1/3; }
  .home-evidence { grid-template-columns:1fr; padding:0 22px; }
  .home-evidence>* { min-height:88px; padding:21px 0; border-right:0; border-bottom:1px solid #c8c7c2; }
  .home-evidence>*:not(:first-child) { padding-left:0; }
  .corp-footer { grid-template-columns:1fr; gap:32px; padding:42px 22px; }
  .corp-footer-contact { align-items:flex-start; }
  .page-intro,.contact-page { padding:66px 22px 70px; }
  .page-intro h1,.contact-heading h1 { font-size:clamp(42px,12.5vw,57px); }
  .page-intro-split,.materials-intro,.corporate-story,.contact-page { grid-template-columns:1fr; gap:38px; }
  .page-intro-split>p:last-child,.materials-intro>p:last-child { margin:0; }
  .page-wide-image { min-height:360px; height:440px; padding:10px; }
  .corporate-story { padding:72px 22px; }
  .corporate-band { grid-template-columns:1fr; padding:0 22px; }
  .corporate-band>* { min-height:96px; padding:21px 0; border-right:0; border-bottom:1px solid #bcbab4; }
  .corporate-band>*:not(:first-child) { padding-left:0; }
  .catalogue-list { grid-template-columns:1fr; }
  .catalogue-list .catalogue-item,.catalogue-list .catalogue-item:last-child:nth-child(odd) { grid-column:1; width:auto; }
  .catalogue-image { min-height:0; aspect-ratio:1.28/1; }
  .catalogue-copy { min-height:205px; padding:25px 22px 22px; }
  .simple-contact-strip,.material-note { align-items:flex-start; flex-direction:column; padding:39px 22px; }
  .materials-layout,.quality-layout { grid-template-columns:1fr; gap:0; padding:10px 22px 68px; }
  .materials-photo,.quality-photo { position:static; height:420px; margin:0 -22px; }
  .materials-rows,.quality-rows { padding-top:55px; }
  .quality-cert-band { grid-template-columns:1fr; gap:37px; padding:65px 22px 69px; }
  .contact-page { min-height:0; }
  .contact-map { height:330px; padding:10px; }
  .contact-map>a { right:22px; bottom:22px; }
  .legal-hero { padding:58px 22px 55px; }
  .legal-content { padding:52px 22px 68px; }
  .legal-content h2 { font-size:21px; }
  .legal-content th,.legal-content td { min-width:180px; padding:14px; }
  .cookie-banner { right:10px; bottom:10px; left:10px; grid-template-columns:1fr; gap:19px; padding:20px; }
  .cookie-actions { flex-direction:column-reverse; }
  .cookie-button { width:100%; }
}
