:root {
  --paper:#f5f2e9; --ink:#20241e; --muted:#4e574b; --line:#d0d3c6;
  --blue:#d7f46b; --blue-dark:#334718; --pale:#e9edde;
  --gutter:clamp(18px,4.4vw,72px); --display:"Bahnschrift","Arial Narrow","Segoe UI",sans-serif;
}
body { font-family:"Segoe UI",sans-serif; }
h1,h2,h3,.studio-copy h1 { font-family:var(--display); }
h1,h2,h3 { letter-spacing:-.043em; }
.utility { background:#181d18; color:#e1e8d7; }
.nav { background:#f5f2e9; color:#20241e; border-color:#cbd0be; }
.nav .brand small,.nav nav a { color:#3e493a; }
.nav nav a[aria-current]::after,.reading-progress { background:#496321; }
.nav .brand-mark { border-color:#e5ead9; background:#e5ead9; }
.nav .brand strong { letter-spacing:.08em; }
.button,.filters button { border-radius:2px; }
.button.primary { color:#172012; background:#d7f46b; border:1px solid #8eac3e; }
.button.primary:hover { background:#e7ff9a; }
.button.secondary { color:#263722; border-color:#aab3a0; background:#fbfaf5; }
.studio-link { color:#3c5421; }
.eyebrow,.card-category { color:#435c27; }
.eyebrow span { background:#607b35; }
.studio-hero { background:#1b211a; color:#fff; border-bottom:0; }
.studio-layout { position:relative; isolation:isolate; display:grid; grid-template-columns:1fr; min-height:650px; padding:64px 0 110px; }
.studio-copy { position:relative; z-index:2; max-width:600px; pointer-events:none; padding:0 clamp(16px,3vw,44px); }
.studio-copy a { pointer-events:auto; }
.studio-copy h1 { color:#fff; font-size:clamp(3.5rem,6.9vw,7.4rem); letter-spacing:-.05em; line-height:.88; }
.studio-copy h1 em { color:#d7f46b; }
.studio-kicker,.studio-copy .company-tagline { color:#e4f6b3; }
.studio-kicker span { background:#d7f46b; }
.studio-copy .studio-lede { color:#e8eee1; max-width:40ch; }
.studio-copy .studio-link { color:#fff; }
.hero-carousel { position:absolute; inset:0; z-index:0; box-shadow:none; border:none; background:transparent; border-radius:0; padding:0; animation:none; }
.hero-slide-frame,.hero-slide,.hero-slide-art { position:absolute; inset:0; border-radius:0; }
.hero-slide-art { aspect-ratio:auto; }
.hero-slide-art .hero-photo { position:absolute; width:100%; height:100%; object-position:75% 54%; }
.hero-slide-art .crop { left:70%; width:max(67cqw,calc(100cqh * (var(--ratio)))); }
.hero-slide::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(90deg,#1a211afc 6%,#1a211af0 28%,#1a211a7a 52%,transparent 85%),linear-gradient(0deg,#151b16 0%,transparent 43%); }
.hero-slide-caption { position:absolute; right:20px; bottom:70px; z-index:1; width:min(390px,37%); background:#1a211aed; border:1px solid #aab6a083; border-inline-start:3px solid #d7f46b; }
.hero-slide-caption p { color:#e1ebd8; }
.hero-slide-link { background:#d7f46b; color:#172012; border-radius:2px; }
.hero-slide-link:hover { background:#efffa9; }
.hero-slider-controls { position:absolute; right:20px; bottom:15px; width:min(390px,37%); }
#hero-slide-count { color:#fff; }
.hero-slider-controls button { color:#e8f2dd; }
.hero-dots button::before { background:#a5ae9f; }
.hero-dots button[aria-pressed="true"]::before { background:#d7f46b; }
.hero-slider-buttons button { background:#293227; border-color:#697762; }
.hero-slider-buttons button:hover { background:#45573c; }
.studio-index { background:#d7f46b; color:#172012; border:0; }
.studio-index a { display:flex; align-items:center; gap:9px; color:#172012; padding:12px clamp(9px,2vw,28px); border-color:#94aa54; font-weight:750; }
.studio-index a strong { font:700 clamp(1.3rem,3vw,2.55rem)/1 var(--display); }
.studio-index a:last-child { justify-content:space-between; }
.studio-index a:hover { background:#e7ff9a; }
.section-title h2,.procurement h2,.faq h2 { font-family:var(--display); letter-spacing:-.04em; }
.sector-grid { grid-template-columns:repeat(6,minmax(0,1fr)); gap:8px; }
.sector,.sector:nth-child(-n+2) { border-radius:0; }
.sector-overlay { background:linear-gradient(0deg,#192018fd,#1c241b96 37%,transparent 72%); }
.sector-content span { border-radius:2px; background:#d7f46b; color:#1a2416; }
.finder-section,.parts-section,.application-band { background:#242e23; color:white; }
.finder-section .eyebrow,.parts-section .eyebrow,.application-grid .eyebrow { color:#d7f46b; }
.parts-layout p:not(.eyebrow),.finder-section .section-title>p { color:#e5ebde; }
.finder-options a { border-color:#74816d; border-radius:0; }
.finder-options a:hover { background:#465642; }
.finder-options a[aria-current] { background:#d7f46b; color:#1a2416; }
.finder-panels article { border-radius:0; border-top:5px solid #d7f46b; background:#f5f2e9; }
.feature-band,.product-top { background:#e8ecdd; border-color:#cbd1bf; }
.card,.brand-entry,.company-services-grid article,.office-grid article,.about-grid article,.about-portfolio li,.spec-grid div { border-radius:0; border-color:#c5ceba; }
.card { background:#fffefa; }
.card-foot .detail { color:#375020; }
.company-overview,.company-brand-preview { background:#fdfcf7; }
.company-brand-preview .brand-sample li { border-radius:0; background:#e8ecdd; }
.mast { background:linear-gradient(115deg,#20291f,#374935); }
.mast-grid { border-bottom:5px solid #d7f46b; }
.mast .eyebrow,.closing .eyebrow,.foot-grid p { color:#d7f46b; }
.mast-mark { -webkit-text-stroke-color:#becbb582; }
.mast-mark span { -webkit-text-stroke-color:#d7f46b8c; }
.closing,.new-footer { background:#20291f; }
.closing { border-top-color:#d7f46b; }
.closing .button.primary { background:#d7f46b; color:#172012; }
.filters button[aria-pressed=true] { background:#34472f; border-color:#34472f; }
.product-visual { background:#21291f; border-color:#3d4b37; }
.product-caption .text-link { color:#d7f46b; }
.office-band { background:#fdfcf7; }
@media(max-width:820px) {
  .studio-layout { min-height:590px; }
  .studio-copy h1 { font-size:clamp(3.6rem,9vw,5.8rem); }
  .hero-slide-caption,.hero-slider-controls { width:min(320px,44%); right:10px; }
  .sector-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:560px) {
  .studio-layout { display:flex; flex-direction:column; min-height:0; gap:0; padding:34px 0 0; width:100%; }
  .studio-copy { padding-inline:var(--gutter); padding-bottom:22px; }
  .studio-copy h1 { font-size:clamp(3rem,12vw,4.4rem); }
  .hero-carousel { position:relative; inset:auto; margin-inline:var(--gutter); padding-bottom:7px; }
  .hero-slide-frame,.hero-slide,.hero-slide-art { position:relative; inset:auto; }
  .hero-slide-art { aspect-ratio:1.82; }
  .hero-slide-art .crop { left:50%; width:max(100cqw,calc(100cqh * (var(--ratio)))); }
  .hero-slide::after { display:none; }
  .hero-slide-caption { position:relative; bottom:auto; right:auto; width:100%; background:#293227; min-height:83px; }
  .hero-slider-controls { position:relative; bottom:auto; right:auto; width:100%; }
  .studio-index { width:100%; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .studio-index a { min-height:48px; }
}
.foot-social { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.foot-social a { min-height:44px; border:1px solid #66775f; padding:0 10px; text-decoration:underline; text-underline-offset:4px; }
