:root {
  --brand-green: #385f4e;
  --brand-deep: #173d31;
  --brand-dark: #0d2b22;
  --paper: #f7f3e9;
  --cream: #efe9dc;
  --gold: #bea052;
  --ink: #1a261f;
  --muted: #1a261f;
  --line: rgba(26,38,31,.17);
  --serif: Georgia, "Times New Roman", serif;
  --sans: Arial, Helvetica, sans-serif;
  --header-open: 118px;
  --header-closed: 76px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--paper); }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: var(--sans); overflow-x: hidden; }
body.drawer-open, body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
button { color: inherit; }
img { display: block; max-width: 100%; }
[hidden] { display: none !important; }
.skip-link { position: fixed; z-index: 1000; top: -60px; left: 18px; padding: 12px 16px; color: #fff; background: var(--brand-dark); transition: top .2s; }
.skip-link:focus { top: 12px; }
.page-shell { width: min(1540px, calc(100% - 96px)); margin-inline: auto; }
.section { padding: clamp(82px, 9vw, 148px) 0; }
.section--compact { padding: clamp(66px, 7vw, 112px) 0; }
.full-screen-section { min-height: 100svh; display: grid; align-items: center; }
.eyebrow { margin: 0 0 17px; color: var(--brand-green); text-transform: uppercase; letter-spacing: .2em; font-size: 11px; font-weight: 700; }
.eyebrow-gold { color: var(--gold); }
.eyebrow-light { color: #ead8aa; }
.display-title { margin: 0; font: 400 clamp(48px, 6.1vw, 94px)/.97 var(--serif); letter-spacing: -.045em; }
.section-heading { max-width: 980px; margin: 0 auto clamp(42px, 5vw, 78px); text-align: center; }
.section-heading h2 { margin: 0; font: 400 clamp(42px, 4.7vw, 72px)/1 var(--serif); letter-spacing: -.04em; }
.section-heading p:last-child:not(.eyebrow) { max-width: 730px; margin: 24px auto 0; color: var(--muted); line-height: 1.75; }
.lede { max-width: 760px; color: inherit; font: 400 clamp(18px, 1.45vw, 24px)/1.7 var(--serif); }
.body-copy { max-width: 720px; color: var(--muted); font-size: 16px; line-height: 1.8; }
.button-row { display: flex; flex-wrap: wrap; gap: 13px; }
.button { min-height: 54px; padding: 0 25px; border: 1px solid transparent; display: inline-flex; align-items: center; justify-content: center; gap: 28px; cursor: pointer; text-transform: uppercase; letter-spacing: .12em; font-size: 10px; font-weight: 700; transition: transform .3s, background .3s, border-color .3s, color .3s; }
.button:hover { transform: translateY(-2px); }
.button-solid { color: #fff; background: var(--brand-green); }
.button-gold { color: var(--brand-dark); background: var(--gold); }
.button-outline { color: #fff; border-color: rgba(255,255,255,.68); background: rgba(0,0,0,.08); backdrop-filter: blur(6px); }
.button-outline-dark { color: var(--brand-green); border-color: var(--brand-green); background: transparent; }
.text-link { display: inline-flex; align-items: center; gap: 22px; padding-bottom: 7px; border-bottom: 1px solid currentColor; color: var(--brand-green); text-transform: uppercase; letter-spacing: .13em; font-size: 10px; font-weight: 700; }

.site-header { position: fixed; z-index: 100; inset: 0 0 auto; height: var(--header-open); color: #fff; background: transparent; border-bottom: 1px solid rgba(255,255,255,.12); transition: height .55s cubic-bezier(.22,.61,.36,1), background .55s, box-shadow .55s, backdrop-filter .55s; }
.site-header.scrolled, .site-header.inner-page { height: var(--header-closed); background: rgba(54,95,77,.97); box-shadow: 0 10px 30px rgba(0,0,0,.18); backdrop-filter: blur(12px); }
.header-inner { height: 100%; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 34px; }
.desktop-nav { display: flex; align-items: center; gap: clamp(24px, 2.35vw, 48px); }
.nav-right { justify-content: flex-end; }
.desktop-nav a { position: relative; padding: 14px 0; text-transform: uppercase; letter-spacing: .12em; white-space: nowrap; font-size: 11px; font-weight: 700; text-shadow: 0 2px 10px rgba(0,0,0,.3); }
.desktop-nav a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: 7px; height: 1px; background: var(--gold); transition: right .3s; }
.desktop-nav a:hover::after, .desktop-nav a.active::after { right: 0; }
.employee-login { opacity: .82; }
.brand { width: 122px; display: flex; flex-direction: column; align-items: center; gap: 8px; transition: transform .5s; }
.brand img { width: 74px; height: 74px; object-fit: contain; transition: width .5s, height .5s; }
.brand span { text-transform: uppercase; letter-spacing: .28em; font-size: 8px; font-weight: 700; }
.site-header.scrolled .brand img, .site-header.inner-page .brand img { width: 48px; height: 48px; }
.site-header.scrolled .brand span, .site-header.inner-page .brand span { display: none; }
.mobile-menu-button { display: none; }
.mobile-menu { position: fixed; z-index: 99; top: var(--header-closed); inset-inline: 0; padding: 28px; color: #fff; background: var(--brand-green); box-shadow: 0 20px 40px rgba(0,0,0,.22); }
.mobile-menu a { padding: 12px 0; border-bottom: 1px solid rgba(255,255,255,.18); text-transform: uppercase; letter-spacing: .1em; font-size: 12px; }

.hero { position: relative; min-height: 100svh; display: flex; align-items: center; color: #fff; background: url("assets/site/hero-16x9.jpg") 62% center / cover no-repeat; overflow: hidden; }
.hero::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(3,13,9,.63), rgba(3,13,9,.19) 57%, rgba(3,13,9,.12)), linear-gradient(180deg, rgba(2,8,6,.26), transparent 35%, rgba(2,8,6,.25)); }
.hero-content { position: relative; z-index: 1; padding-top: var(--header-open); }
.hero h1 { max-width: 1030px; margin: 0; font: 400 clamp(58px, 6.25vw, 102px)/.95 var(--serif); letter-spacing: -.05em; text-shadow: 0 5px 34px rgba(0,0,0,.4); }
.hero h1 span { display: block; }
.hero-pillars { display: flex; margin: 38px 0 36px; }
.hero-pillars span { padding: 0 24px; border-left: 1px solid rgba(255,255,255,.46); font: 400 clamp(18px, 1.55vw, 25px)/1.2 var(--serif); }
.hero-pillars span:first-child { padding-left: 0; border-left: 0; }
.hero .button-row { margin-top: 16px; }
.hero-entrance { opacity: 0; transform: translateY(30px); animation: heroEnter 1.05s cubic-bezier(.18,.72,.22,1) forwards; }
.hero-entrance.delay-1 { animation-delay: 1.58s; }
.hero-entrance.delay-2 { animation-delay: 2.08s; }
.route-home .hero .button-row.hero-entrance { animation-delay: 2.36s; }
@keyframes heroEnter { to { opacity: 1; transform: none; } }

.split-story { min-height: 100svh; display: grid; grid-template-columns: 1fr 1fr; }
.story-panel { position: relative; min-height: 100svh; display: flex; align-items: center; background-position: center; background-size: cover; overflow: hidden; }
.story-origin { color: var(--ink); background-image: url("assets/site/story-origin-v6.webp"); }
.story-origin::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(248,245,237,.98), rgba(248,245,237,.75) 64%, rgba(248,245,237,.37)); }
.story-today { color: #fff; background-image: url("assets/site/story-today-v6.webp"); }
.story-today::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(10,26,19,.9), rgba(10,26,19,.62)); }
.story-copy { position: relative; z-index: 1; max-width: 680px; padding: clamp(82px, 8vw, 135px); }
.story-copy h2 { margin: 0 0 25px; font: 400 clamp(62px, 7vw, 106px)/.9 var(--serif); }
.story-lines { font: 400 clamp(20px, 1.55vw, 27px)/1.65 var(--serif); }
.story-body { max-width: 620px; font-size: 17px; line-height: 1.8; }
.value-list { margin: 30px 0 0; padding: 0; display: grid; gap: 15px; list-style: none; font: 400 18px var(--serif); }
.story-panel.reveal { opacity: 0; transform: translateY(34px); transition: opacity 1.28s cubic-bezier(.18,.72,.22,1), transform 1.28s cubic-bezier(.18,.72,.22,1); }
.story-panel.reveal.story-today { transition-delay: .72s; }
.story-panel.reveal.visible { opacity: 1; transform: none; }

.products-home { background: var(--paper); }
.product-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 14px; }
.product-card { position: relative; min-height: clamp(410px, 37vw, 610px); color: #fff; background: var(--brand-green); overflow: hidden; cursor: pointer; box-shadow: 0 16px 35px rgba(35,44,37,.1); transform: translateY(55px); opacity: 0; transition: transform 1.08s cubic-bezier(.18,.72,.22,1), opacity 1.08s, box-shadow .45s; }
.product-card.visible { transform: none; opacity: 1; }
.product-card:hover { box-shadow: 0 24px 48px rgba(35,44,37,.2); }
.product-card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .7s; }
.product-card:hover img { transform: scale(1.045); }
.product-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(14,44,32,.02) 30%, rgba(18,64,47,.84)); }
.product-card-copy { position: absolute; z-index: 1; inset: auto 20px 24px; }
.product-card-copy h3 { margin: 0 0 17px; font-size: clamp(18px, 1.25vw, 23px); line-height: 1.05; text-transform: uppercase; letter-spacing: .025em; }
.product-card-copy small { display: inline-block; margin-bottom: 12px; color: #efd795; text-transform: uppercase; letter-spacing: .13em; font-size: 9px; font-weight: 700; }
.product-card-copy span { text-transform: uppercase; letter-spacing: .11em; font-size: 9px; font-weight: 700; }
.product-home-footer { display: flex; justify-content: center; margin-top: 36px; }

.approach-section { position: relative; min-height: 100svh; overflow: hidden; color: #f7f3e9; background: linear-gradient(rgba(8,35,27,.90),rgba(8,35,27,.94)), url("assets/site/story-today-v6.webp") center 56% / cover no-repeat; }
.approach-section::before { content:""; position:absolute; inset:0; background:radial-gradient(circle at 74% 28%,rgba(190,160,82,.08),transparent 34%); pointer-events:none; }
.approach-section.reveal { opacity:1; transform:none; transition:none; }
.approach-shell { position:relative; z-index:1; }
.approach-upper { display:grid; grid-template-columns:minmax(0,.95fr) minmax(560px,1.05fr); gap:clamp(46px,6vw,104px); align-items:center; }
.approach-copy { max-width:760px; }
.approach-eyebrow { opacity:0; transform:translateY(12px); }
.approach-title { margin:0; font:400 clamp(58px,5.7vw,94px)/.86 var(--serif); letter-spacing:-.045em; }
.approach-title span { display:block; opacity:0; transform:translateY(24px); }
.approach-title em { color:#cbb16a; font-style:normal; }
.approach-positioning { max-width:690px; margin:34px 0 0; color:rgba(247,243,233,.82); font-size:clamp(16px,1.2vw,20px); line-height:1.65; opacity:0; transform:translateY(16px); }
.approach-global { align-self:stretch; display:flex; flex-direction:column; justify-content:center; opacity:0; }
.approach-map-head { max-width:610px; margin:0 0 12px auto; }
.approach-map-head .eyebrow { margin-bottom:9px; }
.approach-map-head > p:last-child { margin:0; color:rgba(247,243,233,.74); font:400 clamp(17px,1.25vw,21px)/1.45 var(--serif); }
.approach-map-wrap { width:100%; }
.approach-map { width:100%; height:auto; overflow:visible; color:rgba(220,224,216,.38); }
.approach-land path { fill:url(#approachDots); stroke:rgba(220,224,216,.12); stroke-width:1; }
.approach-route { fill:none; stroke:#bea052; stroke-width:1.45; stroke-linecap:round; stroke-dasharray:1200; stroke-dashoffset:1200; opacity:.78; }
.approach-source circle:first-child { fill:#d2b767; stroke:none; }
.approach-source circle:nth-child(2) { fill:none; stroke:#d2b767; stroke-width:1.2; opacity:.7; }
.approach-source text,.approach-destination text { fill:rgba(247,243,233,.72); font:700 12px var(--sans); letter-spacing:.09em; }
.approach-destination { opacity:0; }
.approach-destination circle { fill:#d2b767; stroke:#173d31; stroke-width:2; }
.approach-regions { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:-4px; border-top:1px solid rgba(255,255,255,.14); padding-top:18px; }
.approach-regions div { min-width:0; }
.approach-regions strong { display:block; margin-bottom:6px; color:#d2b767; text-transform:uppercase; letter-spacing:.16em; font-size:9px; }
.approach-regions span { display:block; color:rgba(247,243,233,.68); font-size:12px; line-height:1.5; }
.approach-global-note { max-width:620px; margin:18px 0 0 auto; color:rgba(247,243,233,.54); font-size:12px; line-height:1.6; }
.approach-principles { display:grid; grid-template-columns:repeat(3,1fr); margin-top:clamp(64px,7vw,112px); border-top:1px solid rgba(205,180,105,.55); }
.approach-principle { position:relative; padding:44px clamp(26px,3vw,46px) 0 0; opacity:0; transform:translateY(34px); }
.approach-principle + .approach-principle { padding-left:clamp(26px,3vw,46px); border-left:1px solid rgba(255,255,255,.16); }
.approach-number { position:absolute; top:-19px; left:0; width:40px; height:40px; display:grid; place-items:center; border:1px solid #cbb16a; border-radius:50%; color:#d2b767; background:#12392d; font:700 12px var(--sans); letter-spacing:.06em; }
.approach-principle + .approach-principle .approach-number { left:clamp(26px,3vw,46px); }
.approach-principle h3 { margin:0 0 10px; color:#f7f3e9; font:400 clamp(30px,2.3vw,42px)/1 var(--serif); letter-spacing:-.025em; }
.approach-principle h4 { margin:0 0 24px; max-width:360px; color:#d2b767; font:400 clamp(18px,1.35vw,22px)/1.3 var(--serif); }
.approach-principle p { max-width:440px; margin:0; color:rgba(247,243,233,.72); font-size:15px; line-height:1.72; }
.approach-terms { display:flex; flex-wrap:wrap; gap:0; margin-top:28px; border-top:1px solid rgba(255,255,255,.12); }
.approach-terms span { flex:1 1 33%; padding:15px 14px 0 0; color:rgba(247,243,233,.67); text-transform:uppercase; letter-spacing:.13em; font-size:9px; font-weight:700; }
.approach-terms span + span { padding-left:14px; border-left:1px solid rgba(255,255,255,.12); }
.approach-section.visible .approach-eyebrow { animation:approachFadeUp .58s cubic-bezier(.22,1,.36,1) .02s forwards; }
.approach-section.visible .approach-title span:nth-child(1) { animation:approachFadeUp .86s cubic-bezier(.22,1,.36,1) .28s forwards; }
.approach-section.visible .approach-title span:nth-child(2) { animation:approachFadeUp .86s cubic-bezier(.22,1,.36,1) .56s forwards; }
.approach-section.visible .approach-title span:nth-child(3) { animation:approachFadeUp .86s cubic-bezier(.22,1,.36,1) .84s forwards; }
.approach-section.visible .approach-positioning { animation:approachFadeUp .8s cubic-bezier(.22,1,.36,1) 1.08s forwards; }
.approach-section.visible .approach-global { animation:approachMapIn 1s cubic-bezier(.22,1,.36,1) .78s forwards; }
.approach-section.visible .approach-route { animation:approachTrace 1.02s cubic-bezier(.22,1,.36,1) var(--route-delay) forwards; }
.approach-section.visible .approach-destination { animation:approachNodeIn .48s ease-out var(--node-delay) forwards; }
.approach-section.visible .approach-principle { animation:approachFadeUp .84s cubic-bezier(.22,1,.36,1) var(--principle-delay) forwards; }
@keyframes approachFadeUp { to { opacity:1; transform:none; } }
@keyframes approachMapIn { from { opacity:0; transform:translateY(18px); } to { opacity:1; transform:none; } }
@keyframes approachTrace { to { stroke-dashoffset:0; } }
@keyframes approachNodeIn { from { opacity:0; transform:translateY(5px); } to { opacity:1; transform:none; } }
@media (max-width:1180px) { .approach-upper { grid-template-columns:1fr; gap:56px; } .approach-global { max-width:900px; } .approach-map-head,.approach-global-note { margin-left:0; } .approach-principles { margin-top:76px; } }
@media (max-width:780px) { .approach-section { min-height:auto; padding-top:96px; padding-bottom:94px; background-position:42% center; } .approach-title { font-size:clamp(48px,13vw,68px); line-height:.94; } .approach-positioning { margin-top:26px; font-size:16px; } .approach-global { margin-top:8px; } .approach-map-head { margin-bottom:18px; } .approach-map { min-width:720px; transform:translateX(-90px); } .approach-map-wrap { overflow:hidden; margin-inline:calc(-1 * clamp(21px,7vw,66px)); padding-inline:0; } .approach-regions { grid-template-columns:1fr; gap:12px; } .approach-regions div { display:grid; grid-template-columns:128px 1fr; gap:8px; } .approach-regions strong { margin:0; } .approach-principles { grid-template-columns:1fr; margin-top:66px; } .approach-principle { padding:42px 0 44px !important; border-left:0 !important; border-bottom:1px solid rgba(255,255,255,.14); } .approach-principle:last-child { border-bottom:0; } .approach-principle + .approach-principle .approach-number { left:0; } .approach-principle p { max-width:600px; } .approach-terms span { flex:0 0 auto; padding-right:18px; } }
@media (prefers-reduced-motion:reduce) { .approach-eyebrow,.approach-title span,.approach-positioning,.approach-global,.approach-principle,.approach-destination { opacity:1 !important; transform:none !important; animation:none !important; } .approach-route { stroke-dashoffset:0 !important; animation:none !important; } }

.news-preview { background: var(--cream); }
.news-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.news-card { min-height: 390px; padding: 32px; display: flex; flex-direction: column; justify-content: flex-end; background: #fff; border: 1px solid var(--line); transition: transform .3s, box-shadow .3s; }
.news-card.featured { color: #fff; background: linear-gradient(rgba(8,29,21,.46), rgba(8,29,21,.88)), url("assets/products/alfalfa-hay.webp") center/cover; }
.news-card:hover { transform: translateY(-5px); box-shadow: 0 20px 45px rgba(30,45,36,.12); }
.news-card small { color: var(--gold); text-transform: uppercase; letter-spacing: .14em; font-size: 9px; font-weight: 700; }
.news-card h3 { margin: 15px 0; font: 400 clamp(28px, 2.3vw, 42px)/1.05 var(--serif); }
.news-card p { margin: 0 0 24px; color: inherit; opacity: .78; line-height: 1.65; }

.locations-home, .locations-page { background: var(--paper); }
.location-layout { display: grid; grid-template-columns: .9fr 1.6fr; gap: 20px; }
.location-map { position: relative; min-height: 620px; padding: 28px; color: #fff; background: var(--brand-deep); overflow: hidden; }
.location-map img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .56; mix-blend-mode: screen; }
.location-map-content { position: relative; z-index: 1; display: flex; flex-direction: column; height: 100%; justify-content: space-between; }
.location-map h3 { margin: 0; font: 400 42px/1 var(--serif); }
.facility-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.facility-card { background: #fff; border: 1px solid var(--line); }
.facility-card img { width: 100%; aspect-ratio: 1.25; object-fit: cover; }
.facility-card-copy { padding: 24px; }
.facility-card small { color: var(--gold); text-transform: uppercase; letter-spacing: .14em; font-weight: 700; }
.facility-card h3 { margin: 12px 0 18px; font: 400 28px/1.05 var(--serif); }
.facility-card p { color: var(--muted); line-height: 1.65; }

.contact-section { min-height: 72svh; display: grid; align-items: center; color: #fff; background: var(--brand-deep); }
.contact-inner { max-width: 1000px; }
.contact-inner h2 { margin: 0 0 25px; font: 400 clamp(52px, 6vw, 92px)/.97 var(--serif); letter-spacing: -.045em; }
.contact-inner p { max-width: 730px; color: rgba(255,255,255,.75); font-size: 17px; line-height: 1.8; }
.footer { position:relative; overflow:hidden; padding:76px 0 32px; color:#fff; background:#0b2119; }
.footer::before { content:""; position:absolute; z-index:0; right:clamp(20px,4vw,88px); top:48%; width:clamp(210px,22vw,370px); aspect-ratio:1; transform:translateY(-50%); background:url("assets/brand/haykingdom-logo-white.png") center/contain no-repeat; opacity:.038; filter:grayscale(1) brightness(1.8); pointer-events:none; }
.footer > * { position:relative; z-index:1; }
.footer-grid { display:grid; grid-template-columns:1.15fr 1.75fr .78fr .86fr .82fr; gap:clamp(30px,3vw,55px); align-items:start; }
.footer-logo { width:82px; }
.footer-brand { max-width:350px; }
.footer-pillars { margin-top:24px; display:grid; gap:9px; color:#fff; font:400 16px/1.25 var(--serif); }
.footer-address { margin-top:26px; display:grid; gap:10px; color:rgba(255,255,255,.78); font-size:14px; line-height:1.58; }
.footer-address strong { color:#fff; letter-spacing:.14em; font-size:11px; }
.footer-address span, .footer-address a { display:block; margin:0; color:rgba(255,255,255,.76); }
.footer-address a:hover { color:#d9c382; }
.footer h3 { margin:0 0 20px; color:#d9c382; text-transform:uppercase; letter-spacing:.13em; font-size:11px; }
.footer a { display:block; margin:11px 0; color:rgba(255,255,255,.76); font-size:14px; line-height:1.35; }
.footer a:hover { color:#fff; }
.footer-product-links { display:grid; grid-template-columns:1fr 1fr; column-gap:25px; }
.footer-bottom { margin-top:54px; padding-top:22px; border-top:1px solid rgba(255,255,255,.14); display:flex; justify-content:space-between; color:rgba(255,255,255,.5); font-size:11px; }

.page-hero { position: relative; min-height: 88svh; display: flex; align-items: flex-end; padding: calc(var(--header-closed) + 65px) 0 clamp(74px, 9vw, 135px); color: #fff; background-position: center; background-size: cover; overflow: hidden; }
.page-hero::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(7,24,17,.88), rgba(7,24,17,.28)), linear-gradient(180deg, rgba(0,0,0,.18), rgba(0,0,0,.32)); }
.page-hero-content { position: relative; z-index: 1; max-width: 1040px; }
.page-hero h1 { margin: 0; font: 400 clamp(58px, 7.2vw, 112px)/.92 var(--serif); letter-spacing: -.055em; }
.page-hero p { max-width: 720px; color: rgba(255,255,255,.82); font-size: 18px; line-height: 1.75; }
.products-hero { background-image: url("assets/site/hero-16x9.jpg"); }
.products-hero h1 span { display: block; }

.source-section { background: var(--cream); }
.source-layout { display: grid; grid-template-columns: 1.05fr .95fr; gap: clamp(50px, 8vw, 130px); align-items: center; }
.source-image { min-height: 650px; background: url("assets/site/story-origin-v6.webp") center/cover; }
.source-copy h2 { margin: 0 0 26px; font: 400 clamp(46px, 5vw, 76px)/1 var(--serif); letter-spacing: -.04em; }
.source-qualities { margin: 28px 0; display: flex; flex-wrap: wrap; gap: 8px; }
.source-qualities span { padding: 9px 12px; border: 1px solid var(--line); color: var(--brand-green); text-transform: uppercase; letter-spacing: .1em; font-size: 9px; font-weight: 700; }

.process-section { color: #fff; background: var(--brand-dark); }
.process-grid { margin-top: 50px; display: grid; grid-template-columns: repeat(5, 1fr); border-top: 1px solid rgba(255,255,255,.25); }
.process-step { min-height: 360px; padding: 28px 24px; border-right: 1px solid rgba(255,255,255,.18); }
.process-step:last-child { border-right: 0; }
.process-step b { color: var(--gold); font: 400 40px var(--serif); }
.process-step h3 { margin: 45px 0 18px; font: 400 27px var(--serif); }
.process-step p { color: rgba(255,255,255,.68); font-size: 14px; line-height: 1.7; }
.process-closing { margin: 46px 0; font: 400 clamp(28px, 3vw, 45px)/1.2 var(--serif); }

.product-detail-hero { background-position: center; }
.product-detail-hero::before { background: linear-gradient(90deg, rgba(6,22,15,.91), rgba(6,22,15,.3)), linear-gradient(180deg, rgba(0,0,0,.12), rgba(0,0,0,.35)); }
.product-detail-subtitle { margin: 15px 0 0; color: #e5cf92 !important; font: 400 clamp(25px, 2.3vw, 38px)/1.2 var(--serif) !important; }
.detail-story { background: var(--paper); }
.detail-story-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(50px, 8vw, 120px); align-items: start; }
.detail-story h2 { margin: 0; font: 400 clamp(46px, 5vw, 76px)/1 var(--serif); }
.detail-values { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--line); }
.detail-values article { min-height: 280px; padding: 28px; background: var(--cream); }
.detail-values h3 { color: var(--brand-green); font: 400 25px var(--serif); }
.detail-values p { color: var(--muted); line-height: 1.7; }
.evaluation-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.evaluation-grid span { min-height: 90px; padding: 22px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); display: flex; align-items: center; color: var(--brand-green); font-family: var(--serif); font-size: 19px; }
.application-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.application-grid article { padding: 28px; border: 1px solid var(--line); background: #fff; }
.article-promo { color: #fff; background: var(--brand-green); }
.article-promo-inner { display: grid; grid-template-columns: 1fr auto; gap: 40px; align-items: end; }
.article-promo h2 { margin: 0; font: 400 clamp(42px, 4vw, 66px)/1 var(--serif); }
.article-promo p { max-width: 720px; color: rgba(255,255,255,.75); line-height: 1.75; }

.news-page { background: var(--paper); }
.news-page-hero { color: var(--ink); background: var(--cream); }
.news-page-hero::before { display: none; }
.news-page-hero p { color: var(--muted); }
.news-list-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.news-list-card { background: #fff; border: 1px solid var(--line); }
.news-list-card img { width: 100%; aspect-ratio: 1.55; object-fit: cover; }
.news-list-copy { padding: 26px; }
.news-list-copy small { color: var(--gold); text-transform: uppercase; letter-spacing: .12em; font-size: 9px; font-weight: 700; }
.news-list-copy h2 { margin: 14px 0; font: 400 34px/1.05 var(--serif); }
.news-list-copy p { color: var(--muted); line-height: 1.65; }
.article-header { padding: calc(var(--header-closed) + 80px) 0 80px; color: #fff; background: var(--brand-dark); }
.article-header h1 { max-width: 1150px; margin: 0; font: 400 clamp(58px, 7vw, 105px)/.94 var(--serif); letter-spacing: -.05em; }
.article-header p { max-width: 840px; color: rgba(255,255,255,.72); font: 400 22px/1.55 var(--serif); }
.article-layout { display: grid; grid-template-columns: 280px 1fr; gap: clamp(50px, 8vw, 120px); align-items: start; }
.article-toc { position: sticky; top: calc(var(--header-closed) + 30px); padding: 20px 0; border-top: 1px solid var(--line); }
.article-toc a { display: block; padding: 8px 0; color: var(--muted); font-size: 12px; line-height: 1.35; }
.article-body section { margin-bottom: 80px; scroll-margin-top: calc(var(--header-closed) + 30px); }
.article-body h2 { margin: 0 0 22px; font: 400 clamp(36px, 3.6vw, 56px)/1.05 var(--serif); }
.article-body p { color: var(--muted); font-size: 17px; line-height: 1.9; }
.article-placeholder { padding: 22px; border-left: 3px solid var(--gold); background: var(--cream); }

.auth-page { min-height: 100svh; padding: calc(var(--header-closed) + 70px) 0 70px; display: grid; align-items: center; background: var(--cream); }
.login-card { width: min(560px, 100%); margin: auto; padding: clamp(30px, 5vw, 60px); background: #fff; box-shadow: 0 30px 80px rgba(30,45,36,.13); }
.login-card h1 { margin: 0 0 16px; font: 400 58px/1 var(--serif); }
.form-grid { display: grid; gap: 15px; }
.form-grid label { color: var(--brand-green); text-transform: uppercase; letter-spacing: .1em; font-size: 9px; font-weight: 700; }
.form-grid input, .form-grid textarea, .form-grid select { width: 100%; margin-top: 7px; padding: 13px; border: 1px solid var(--line); background: #fff; color: var(--ink); text-transform: none; letter-spacing: 0; font-size: 14px; }
.preview-notice { margin: 20px 0; padding: 15px; color: #6b5a28; background: #f4e9c6; font-size: 12px; line-height: 1.6; }

.admin-page { min-height: 100svh; padding-top: var(--header-closed); background: #edf0eb; }
.admin-shell { min-height: calc(100svh - var(--header-closed)); display: grid; grid-template-columns: 250px 1fr; }
.admin-sidebar { padding: 28px 20px; color: #fff; background: var(--brand-dark); }
.admin-user { padding: 0 8px 28px; border-bottom: 1px solid rgba(255,255,255,.16); }
.admin-user img { width: 64px; height: 64px; border-radius: 50%; object-fit: cover; background: var(--brand-green); }
.admin-user strong { display: block; margin-top: 12px; font-family: var(--serif); font-size: 22px; }
.admin-user small { color: #d4c27d; text-transform: uppercase; letter-spacing: .12em; font-size: 9px; }
.admin-nav { margin-top: 24px; display: grid; gap: 5px; }
.admin-nav button { padding: 13px 12px; border: 0; color: rgba(255,255,255,.7); background: transparent; text-align: left; cursor: pointer; }
.admin-nav button.active, .admin-nav button:hover { color: #fff; background: rgba(255,255,255,.1); }
.admin-content { padding: clamp(26px, 5vw, 60px); overflow: auto; }
.admin-header { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-bottom: 34px; }
.admin-header h1 { margin: 0; font: 400 clamp(40px, 4vw, 64px)/1 var(--serif); }
.admin-kpis { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin-bottom: 30px; }
.kpi { padding: 24px; background: #fff; border: 1px solid var(--line); }
.kpi strong { display: block; color: var(--brand-green); font: 400 42px var(--serif); }
.kpi span { color: var(--muted); text-transform: uppercase; letter-spacing: .1em; font-size: 9px; }
.admin-panel { padding: 26px; background: #fff; border: 1px solid var(--line); }
.admin-table { width: 100%; border-collapse: collapse; }
.admin-table th, .admin-table td { padding: 13px 10px; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; font-size: 12px; }
.admin-table th { color: var(--brand-green); text-transform: uppercase; letter-spacing: .08em; font-size: 9px; }
.status-pill { display: inline-block; padding: 6px 8px; border-radius: 12px; background: #e7ece8; color: var(--brand-green); text-transform: uppercase; letter-spacing: .07em; font-size: 8px; font-weight: 700; }
.status-pill.pending { color: #795e1f; background: #f2e8c8; }
.status-pill.published { color: #215e3d; background: #dceee4; }
.status-pill.rejected { color: #8d3833; background: #f1deda; }
.admin-actions { display: flex; flex-wrap: wrap; gap: 7px; }
.admin-actions button { padding: 7px 10px; border: 1px solid var(--line); background: #fff; cursor: pointer; font-size: 10px; }
.post-editor { display: grid; grid-template-columns: minmax(0, 1fr) 310px; gap: 18px; }
.editor-main, .editor-aside { padding: 24px; background: #fff; border: 1px solid var(--line); }
.block-list { display: grid; gap: 12px; }
.content-block { padding: 16px; border: 1px solid var(--line); background: #faf9f5; }
.content-block textarea { min-height: 150px; }
.inquiry-admin-grid { display: grid; grid-template-columns: 360px 1fr; gap: 18px; }
.inquiry-list { display: grid; gap: 8px; }
.inquiry-list button { padding: 15px; border: 1px solid var(--line); background: #fff; text-align: left; cursor: pointer; }
.inquiry-list button.active { border-color: var(--brand-green); box-shadow: inset 4px 0 var(--brand-green); }
.inquiry-detail { padding: 26px; background: #fff; border: 1px solid var(--line); }
.profile-grid { display: grid; grid-template-columns: 180px 1fr; gap: 30px; align-items: start; }
.profile-avatar { width: 160px; height: 160px; border-radius: 50%; object-fit: cover; background: var(--brand-green); }

.inquiry-drawer { position: fixed; z-index: 300; top: 0; right: 0; width: min(470px, 100%); height: 100%; padding: 64px 38px 40px; background: var(--paper); box-shadow: -20px 0 60px rgba(0,0,0,.25); transform: translateX(105%); transition: transform .42s cubic-bezier(.22,.61,.36,1); overflow: auto; }
.inquiry-drawer.open { transform: none; }
.inquiry-drawer h2 { margin: 0; color: var(--brand-green); font: 400 48px/1 var(--serif); }
.inquiry-drawer > p { line-height: 1.65; }
.inquiry-drawer form { margin-top: 25px; display: grid; gap: 15px; }
.inquiry-drawer label { color: var(--brand-green); text-transform: uppercase; letter-spacing: .1em; font-size: 9px; font-weight: 700; }
.inquiry-drawer input, .inquiry-drawer textarea, .inquiry-drawer select { width: 100%; margin-top: 6px; padding: 12px; border: 1px solid var(--line); background: #fff; text-transform: none; letter-spacing: 0; }
.drawer-close { position: absolute; top: 18px; right: 20px; width: 40px; height: 40px; border: 0; border-radius: 50%; color: #fff; background: var(--brand-green); cursor: pointer; font-size: 24px; }
.drawer-backdrop { position: fixed; z-index: 250; inset: 0; background: rgba(5,14,10,.55); backdrop-filter: blur(4px); }
.form-note { margin: 0; color: var(--muted); font-size: 10px; line-height: 1.5; }
.submission-message { padding: 22px; color: var(--brand-green); background: #e4ece7; }

.editor-toggle { position: fixed; z-index: 180; left: 17px; bottom: 17px; min-height: 42px; padding: 0 15px; border: 1px solid rgba(255,255,255,.36); border-radius: 22px; color: #fff; background: var(--brand-green); box-shadow: 0 8px 22px rgba(0,0,0,.18); cursor: pointer; }
.editor-toggle span { margin-left: 5px; font-size: 11px; font-weight: 700; }
body:not(.site-edit-enabled) [data-edit]:hover, body:not(.site-edit-enabled) [data-edit-image]:hover { outline: none; }
.site-edit-enabled [data-edit], .site-edit-enabled [data-edit-image] { cursor: crosshair; }
.site-edit-enabled [data-edit]:hover, .site-edit-enabled [data-edit-image]:hover { outline: 2px dashed var(--gold); outline-offset: 3px; }
.toast { position: fixed; z-index: 500; left: 50%; bottom: 24px; padding: 11px 17px; color: #fff; background: var(--brand-dark); border-radius: 4px; transform: translate(-50%, 25px); opacity: 0; pointer-events: none; transition: opacity .25s, transform .25s; }
.toast.show { opacity: 1; transform: translate(-50%, 0); }

.reveal { opacity: 0; transform: translateY(38px); transition: opacity 1.12s cubic-bezier(.18,.72,.22,1), transform 1.12s cubic-bezier(.18,.72,.22,1); }
.reveal.visible { opacity: 1; transform: none; }

@media (max-width: 1180px) {
  .desktop-nav { gap: 20px; }
  .desktop-nav a { font-size: 10px; }
  .product-grid { grid-template-columns: repeat(3, 1fr); }
  .product-card { min-height: 440px; }
  .facility-grid { grid-template-columns: 1fr; }
  .facility-card { display: grid; grid-template-columns: .9fr 1.1fr; }
  .facility-card img { height: 100%; aspect-ratio: auto; }
  .process-grid { grid-template-columns: repeat(3, 1fr); }
  .process-step { border-bottom: 1px solid rgba(255,255,255,.18); }
  .detail-values { grid-template-columns: repeat(2, 1fr); }
  .admin-kpis { grid-template-columns: repeat(2, 1fr); }
  .news-list-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 820px) {
  :root { --header-open: 88px; --header-closed: 70px; }
  .page-shell { width: calc(100% - 30px); }
  .desktop-nav { display: none; }
  .header-inner { grid-template-columns: 1fr auto 1fr; }
  .brand { grid-column: 2; width: 70px; }
  .brand img { width: 56px; height: 56px; }
  .brand span { display: none; }
  .mobile-menu-button { grid-column: 1; display: grid; gap: 7px; align-content: center; width: 44px; height: 44px; padding: 10px; border: 0; background: transparent; }
  .mobile-menu-button span { width: 24px; height: 1px; background: #fff; }
  .mobile-menu:not([hidden]) { display: grid; }
  .hero { min-height: 100svh; background-position: 68% center; align-items: flex-end; padding-bottom: 62px; }
  .hero h1 { font-size: clamp(46px, 13vw, 68px); }
  .hero-pillars { flex-wrap: wrap; gap: 9px 0; }
  .hero-pillars span { width: 100%; padding: 0; border-left: 0; font-size: 19px; }
  .hero .button { width: 100%; }
  .split-story { grid-template-columns: 1fr; }
  .story-panel { min-height: 82svh; }
  .story-copy { padding: 70px 28px; }
  .product-grid { grid-template-columns: 1fr 1fr; }
  .product-card { min-height: 390px; }
  .platform-grid, .news-grid, .location-layout, .source-layout, .detail-story-grid, .article-promo-inner { grid-template-columns: 1fr; }
  .platform-grid article { padding: 27px 0 !important; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.18); }
  .news-grid { gap: 12px; }
  .location-map { min-height: 480px; }
  .facility-card { grid-template-columns: 1fr; }
  .source-image { min-height: 500px; order: -1; }
  .process-grid { grid-template-columns: 1fr 1fr; }
  .evaluation-grid { grid-template-columns: repeat(2, 1fr); }
  .application-grid { grid-template-columns: 1fr; }
  .news-list-grid { grid-template-columns: 1fr; }
  .article-layout { grid-template-columns: 1fr; }
  .article-toc { position: static; }
  .admin-shell { grid-template-columns: 1fr; }
  .admin-sidebar { padding: 18px; }
  .admin-user { display: flex; align-items: center; gap: 13px; padding-bottom: 16px; }
  .admin-user img { width: 48px; height: 48px; }
  .admin-user strong { margin: 0; }
  .admin-nav { grid-template-columns: repeat(3, 1fr); }
  .admin-nav button { text-align: center; font-size: 10px; }
  .post-editor, .inquiry-admin-grid, .profile-grid { grid-template-columns: 1fr; }
  .admin-table { min-width: 720px; }
  .admin-panel { overflow-x: auto; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .footer-brand { grid-column: 1 / -1; }
}

@media (max-width: 520px) {
  .section { padding: 72px 0; }
  .display-title { font-size: 48px; }
  .button-row { display: grid; }
  .button { width: 100%; }
  .product-grid { grid-template-columns: 1fr; }
  .product-card { min-height: 470px; }
  .process-grid, .detail-values, .evaluation-grid { grid-template-columns: 1fr; }
  .page-hero { min-height: 84svh; }
  .page-hero h1 { font-size: 55px; }
  .article-header h1 { font-size: 53px; }
  .admin-content { padding: 22px 15px; }
  .admin-kpis { grid-template-columns: 1fr 1fr; }
  .admin-nav { grid-template-columns: 1fr 1fr; }
  .footer-grid { grid-template-columns: 1fr; }
  .footer-bottom { display: grid; gap: 8px; }
  .editor-toggle span { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .001ms !important; transition-duration: .001ms !important; }
}


/* V10 cinematic entrance sequence */
@keyframes hkHeaderIntro { from { opacity:0; transform:translateY(-24px); } to { opacity:1; transform:translateY(0); } }
@keyframes hkHeroImageIntro { from { opacity:.16; filter:brightness(.52) saturate(.76); transform:scale(1.026); } to { opacity:1; filter:brightness(1) saturate(1); transform:scale(1); } }
@keyframes hkInnerHeroImage { from { opacity:.28; filter:brightness(.7); transform:scale(1.018); } to { opacity:1; filter:brightness(1); transform:scale(1); } }
@keyframes hkInnerHeroContent { from { opacity:0; transform:translateY(34px); } to { opacity:1; transform:translateY(0); } }
.site-header.home-intro { animation: hkHeaderIntro .9s cubic-bezier(.18,.76,.22,1) .92s both; }
.route-home .hero { animation: hkHeroImageIntro 1.34s cubic-bezier(.18,.76,.22,1) both; }
body:not(.route-home) .page-hero { animation:hkInnerHeroImage 1.42s cubic-bezier(.18,.76,.22,1) both; }
body:not(.route-home) .page-hero-content { animation:hkInnerHeroContent 1.15s cubic-bezier(.18,.76,.22,1) .52s both; }
@media (prefers-reduced-motion: reduce) { .site-header.home-intro, .route-home .hero, body:not(.route-home) .page-hero, body:not(.route-home) .page-hero-content { animation:none; } }

.catalog-hero { background-image:linear-gradient(90deg,rgba(6,24,17,.86),rgba(6,24,17,.32)),url("assets/site/hero-16x9.jpg"); }
.catalog-page { background:var(--paper); }
.catalog-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.catalog-card { min-height:470px; position:relative; overflow:hidden; color:#fff; background:var(--brand-green); cursor:pointer; }
.catalog-card img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .65s cubic-bezier(.2,.7,.2,1); }
.catalog-card::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(4,18,12,.02) 35%,rgba(4,18,12,.92)); }
.catalog-card:hover img { transform:scale(1.045); }
.catalog-card-copy { position:absolute; z-index:1; left:24px; right:24px; bottom:25px; }
.catalog-card-copy small { color:#e4cf91; text-transform:uppercase; letter-spacing:.13em; font-size:9px; font-weight:700; }
.catalog-card-copy h3 { margin:9px 0 20px; font:400 30px/1 var(--serif); }
.catalog-card-copy span { text-transform:uppercase; letter-spacing:.11em; font-size:9px; font-weight:700; }
.packaging-section { color:#fff; background:var(--brand-dark); }
.packaging-section .section-heading h2 { color:#fff; }
.packaging-section .section-heading > p:last-child { color:rgba(255,255,255,.65); }
.packaging-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(255,255,255,.22); border-left:1px solid rgba(255,255,255,.22); }
.packaging-card { min-height:420px; padding:34px; border-right:1px solid rgba(255,255,255,.22); border-bottom:1px solid rgba(255,255,255,.22); cursor:pointer; transition:background .3s,transform .3s; }
.packaging-card:hover { background:rgba(255,255,255,.06); transform:translateY(-3px); }
.packaging-card b { display:block; color:var(--gold); font:400 48px var(--serif); }
.packaging-card small { display:block; margin-top:65px; color:#d9c382; text-transform:uppercase; letter-spacing:.13em; font-size:9px; }
.packaging-card h3 { margin:14px 0; font:400 38px/1 var(--serif); }
.packaging-card p { color:rgba(255,255,255,.66); line-height:1.75; }
.packaging-card span { display:inline-block; margin-top:28px; text-transform:uppercase; letter-spacing:.1em; font-size:9px; font-weight:700; }
.packaging-detail-hero { background-image:linear-gradient(120deg,rgba(8,31,22,.97),rgba(54,95,77,.8)),url("assets/site/story-today-v6.webp"); }

.article-header.has-cover { position:relative; min-height:62svh; display:flex; align-items:flex-end; background-position:center; background-size:cover; }
.article-header.has-cover::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(5,23,16,.94),rgba(5,23,16,.42)),linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.58)); }
.article-header.has-cover .page-shell { position:relative; z-index:1; }
.article-author-card { margin-top:30px; padding-top:25px; border-top:1px solid var(--line); }
.article-author-card img { width:72px; height:72px; border-radius:50%; object-fit:cover; background:var(--brand-green); }
.article-author-card > div { margin-top:13px; }
.article-author-card small { display:block; color:var(--gold); text-transform:uppercase; letter-spacing:.12em; font-size:8px; }
.article-author-card strong { display:block; margin-top:6px; font:400 21px var(--serif); }
.article-author-card span { display:block; color:var(--muted); font-size:11px; line-height:1.4; }
.article-author-card h3 { margin:24px 0 9px; font:400 20px/1.15 var(--serif); }
.article-author-card > a { display:block; padding:4px 0; color:var(--brand-green); overflow-wrap:anywhere; font-size:11px; }
.article-author-card > p { color:var(--muted); font-size:11px; line-height:1.5; }
.article-section-image { width:100%; max-height:680px; margin:0 0 24px; object-fit:cover; }

.editor-section-header { margin:15px 0!important; }
.small-action { padding:9px 12px; border:1px solid var(--line); background:#fff; color:var(--brand-green); cursor:pointer; font-size:10px; }
.small-action.danger { color:#8d3833; }
.file-button { display:inline-flex!important; align-items:center; justify-content:center; margin-top:10px; padding:10px 13px; border:1px solid var(--line); color:var(--brand-green); background:#fff; cursor:pointer; text-transform:uppercase; letter-spacing:.08em; font-size:8px!important; }
.file-button input { position:absolute; width:1px!important; height:1px; opacity:0; pointer-events:none; }
.editor-image-control, .block-image-editor { padding:14px; border:1px solid var(--line); background:#faf9f5; }
.editor-image-preview { width:100%; max-height:220px; margin-top:10px; object-fit:cover; border:1px solid var(--line); }
.image-empty { min-height:90px; margin-top:10px; display:grid; place-items:center; border:1px dashed var(--line); color:var(--muted); background:#fff; font-size:11px; }
.author-editor { margin:0; padding:15px; border:1px solid var(--line); }
.author-editor legend { padding:0 7px; color:var(--brand-green); text-transform:uppercase; letter-spacing:.1em; font-size:9px; font-weight:700; }
.author-editor-avatar { width:76px; height:76px; border-radius:50%; object-fit:cover; background:var(--brand-green); }
.content-block { position:relative; }
.profile-grid .file-button { width:160px; }

@media (max-width:1180px) { .catalog-grid { grid-template-columns:repeat(3,1fr); } }
@media (max-width:820px) {
  .catalog-grid { grid-template-columns:repeat(2,1fr); }
  .catalog-card { min-height:400px; }
  .packaging-grid { grid-template-columns:1fr; }
  .packaging-card { min-height:auto; }
  .packaging-card small { margin-top:35px; }
  .article-header.has-cover { min-height:72svh; }
}
@media (max-width:520px) {
  .catalog-grid { grid-template-columns:1fr; }
  .catalog-card { min-height:500px; }
  .article-author-card { padding-bottom:10px; }
}


/* V12 open-metal HayKingdom Signature label — transparent center with metallic rails */
.signature-metal {
  position:absolute; z-index:7; top:54px; left:-64px; width:304px; height:52px;
  display:flex; align-items:center; justify-content:center; overflow:visible;
  transform:rotate(-45deg); transform-origin:center;
  background:rgba(5,22,15,.08); backdrop-filter:brightness(.72) saturate(.86);
  box-shadow:none; pointer-events:none;
}
.signature-metal::before, .signature-metal::after {
  content:""; position:absolute; left:0; right:0; height:3px;
  background:linear-gradient(90deg,#6f5112 0%,#f5df8b 18%,#a87a20 36%,#fff0ad 54%,#946816 73%,#e5c66d 100%);
  box-shadow:0 1px 0 rgba(255,246,194,.78),0 -1px 0 rgba(63,43,5,.72),0 0 8px rgba(214,180,82,.24);
}
.signature-metal::before { top:0; }
.signature-metal::after { bottom:0; }
.signature-metal span {
  position:relative; z-index:1; white-space:nowrap;
  font:italic 400 18px/1 var(--serif); letter-spacing:.01em;
  background:linear-gradient(180deg,#fff0a8 0%,#b98b2b 42%,#f0d47a 67%,#8f6719 100%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
  filter:drop-shadow(0 1px 0 rgba(255,247,205,.5)) drop-shadow(0 2px 3px rgba(0,0,0,.65));
}
.catalog-card .signature-metal { top:52px; left:-66px; width:310px; height:52px; }
.catalog-card .signature-metal span { font-size:18px; }
.product-detail-hero > .signature-metal { top:calc(var(--header-closed) + 72px); left:-78px; width:430px; height:66px; }
.product-detail-hero > .signature-metal span { font-size:25px; }

/* V10 antique-map Locations composition */
.locations-showcase-section { position:relative; min-height:100svh; display:flex; align-items:center; overflow:hidden; background:#efe5cd url("assets/site/locations-antique-map-v10.webp") center center / cover no-repeat; }
.locations-showcase-section::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(90deg,rgba(246,238,218,.02) 0 25%,rgba(246,238,218,.05) 50%,rgba(246,238,218,.12)); }
.locations-showcase-inner { position:relative; z-index:1; padding:clamp(104px,10vw,154px) 0 clamp(80px,8vw,120px); }
.locations-showcase-heading { width:min(1020px,72%); margin-left:auto; text-align:center; }
.locations-showcase-heading h2 { margin:0; color:var(--brand-dark); font:400 clamp(52px,5.2vw,84px)/.94 var(--serif); letter-spacing:-.045em; }
.locations-showcase-heading > b { display:block; width:54px; height:1px; margin:26px auto; background:var(--gold); }
.locations-showcase-heading > p:last-child { max-width:850px; margin:0 auto; color:#505b54; font-size:15px; line-height:1.65; }
.facility-showcase-grid { width:calc(78% - 12px); margin:48px 0 0 auto; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.facility-showcase-card { background:rgba(253,251,246,.96); border:1px solid rgba(49,66,56,.24); box-shadow:0 16px 36px rgba(68,58,37,.12); cursor:pointer; opacity:0; transform:translateX(-52px) translateY(18px); transition:opacity 1.2s cubic-bezier(.18,.72,.22,1),transform 1.2s cubic-bezier(.18,.72,.22,1),box-shadow .4s; }
.facility-showcase-card.visible { opacity:1; transform:none; }
.facility-showcase-card:hover { box-shadow:0 25px 52px rgba(62,53,33,.2); transform:translateY(-5px); }
.facility-showcase-card img { width:100%; aspect-ratio:1.42; object-fit:cover; }
.facility-showcase-copy { min-height:224px; padding:24px 25px 25px; }
.facility-showcase-copy small { color:var(--gold); text-transform:uppercase; letter-spacing:.14em; font-weight:700; }
.facility-showcase-copy h3 { margin:10px 0 12px; color:var(--ink); font:400 clamp(25px,2vw,35px)/1.05 var(--serif); }
.facility-showcase-copy i { display:block; width:38px; height:1px; margin-bottom:16px; background:var(--gold); }
.facility-showcase-copy p { min-height:48px; margin:0 0 20px; color:var(--muted); font-size:12px; line-height:1.55; }
.facility-showcase-copy span { display:inline-flex; padding:10px 18px; border:1px solid var(--brand-green); color:var(--brand-green); text-transform:uppercase; letter-spacing:.1em; font-size:9px; font-weight:700; }
.location-reveal { opacity:0; transform:translateX(-48px); transition:opacity 1.22s cubic-bezier(.18,.72,.22,1),transform 1.22s cubic-bezier(.18,.72,.22,1); }
.location-reveal.visible { opacity:1; transform:none; }
.locations-intro-band { background:var(--paper); }
.location-detail-hero { background-position:center; }
.location-detail-hero::before { background:linear-gradient(90deg,rgba(4,20,14,.86),rgba(4,20,14,.22)),linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.44)); }
.location-profile { background:var(--paper); }
.location-profile-grid { display:grid; grid-template-columns:1.4fr .65fr; gap:clamp(50px,7vw,120px); align-items:start; }
.location-profile-copy h2 { margin:0 0 28px; font:400 clamp(52px,5vw,82px)/.98 var(--serif); }
.location-facts { padding:34px; border-top:2px solid var(--gold); background:#ece4d3; }
.location-facts small { color:var(--gold); text-transform:uppercase; letter-spacing:.14em; font-weight:700; }
.location-facts h3 { margin:13px 0 28px; font:400 37px/1 var(--serif); }
.location-facts p { padding:14px 0; margin:0; border-top:1px solid rgba(36,53,44,.17); color:var(--muted); font-size:12px; line-height:1.5; }
.location-gallery-section { background:var(--cream); }
.location-gallery { display:grid; grid-template-columns:2fr 1fr 1fr; gap:16px; }
.location-gallery figure { margin:0; background:#fff; border:1px solid var(--line); }
.location-gallery figure img { width:100%; height:100%; min-height:430px; object-fit:cover; }
.location-gallery figcaption { padding:13px 17px; color:var(--muted); text-transform:uppercase; letter-spacing:.1em; font-size:8px; }
.location-gallery-placeholder { min-height:430px; padding:28px; display:flex; flex-direction:column; justify-content:flex-end; border:1px dashed rgba(37,58,47,.35); background:linear-gradient(135deg,#f5f1e7,#e5dcc9); }
.location-gallery-placeholder span { font:400 27px/1.05 var(--serif); }
.location-gallery-placeholder small { margin-top:12px; color:var(--muted); text-transform:uppercase; letter-spacing:.1em; font-size:8px; }

@media (max-width:1180px) {
  .locations-showcase-heading { width:74%; }
  .facility-showcase-grid { width:82%; grid-template-columns:1fr 1fr; }
  .facility-showcase-card:last-child { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; }
  .facility-showcase-card:last-child img { height:100%; aspect-ratio:auto; }
  .location-gallery { grid-template-columns:1fr 1fr; }
  .location-gallery figure { grid-column:1/-1; }
}
@media (max-width:820px) {
  .signature-metal { top:23px; left:-91px; width:285px; height:58px; }
  .signature-metal span { font-size:21px; }
  .locations-showcase-section { background-position:31% center; }
  .locations-showcase-section::before { content:""; position:absolute; inset:0; background:rgba(246,238,218,.28); }
  .locations-showcase-heading, .facility-showcase-grid { width:100%; margin-left:0; }
  .locations-showcase-heading { padding-top:60px; }
  .facility-showcase-grid { grid-template-columns:1fr; }
  .facility-showcase-card:last-child { grid-column:auto; display:block; }
  .facility-showcase-card:last-child img { height:auto; aspect-ratio:1.42; }
  .location-profile-grid { grid-template-columns:1fr; }
  .location-gallery { grid-template-columns:1fr; }
  .location-gallery figure { grid-column:auto; }
}
@media (max-width:520px) {
  .locations-showcase-inner { padding-top:108px; }
  .locations-showcase-heading h2 { font-size:47px; }
  .locations-showcase-heading > p:last-child { font-size:13px; }
  .facility-showcase-copy { min-height:0; }
  .location-gallery figure img, .location-gallery-placeholder { min-height:320px; }
  .product-detail-hero > .signature-metal { top:calc(var(--header-closed) + 30px); left:-102px; width:320px; height:67px; }
  .product-detail-hero > .signature-metal span { font-size:24px; }
}


/* V12 premium contact experience */
.contact-experience { position:relative; min-height:100svh; display:grid; align-items:center; overflow:hidden; color:#fff; background:var(--brand-dark); }
.contact-experience-bg { position:absolute; inset:0; background:linear-gradient(90deg,rgba(5,28,20,.86),rgba(5,28,20,.94) 58%,rgba(5,28,20,.98)),url("assets/site/hero-16x9.jpg") left center/cover no-repeat; opacity:.95; }
.contact-experience-grid { position:relative; z-index:1; padding:clamp(120px,10vw,170px) 0 clamp(90px,8vw,130px); display:grid; grid-template-columns:minmax(0,1fr) minmax(470px,.9fr); gap:clamp(60px,8vw,140px); align-items:center; }
.contact-story h2 { max-width:760px; margin:0 0 26px; font:400 clamp(58px,6vw,94px)/.94 var(--serif); letter-spacing:-.045em; }
.contact-story > p:not(.eyebrow) { max-width:650px; color:rgba(255,255,255,.8); font-size:17px; line-height:1.65; }
.contact-after-hours { max-width:620px; margin-top:34px; padding-top:28px; border-top:1px solid rgba(205,175,89,.45); }
.contact-after-hours p { color:rgba(255,255,255,.78); line-height:1.65; }
.contact-after-hours strong { display:block; margin-top:22px; color:#d6bd6d; font:400 19px/1.4 var(--serif); }
.contact-options { padding:clamp(30px,4vw,58px); border:1px solid rgba(204,174,89,.7); box-shadow:0 24px 70px rgba(0,0,0,.2); background:rgba(10,46,34,.36); backdrop-filter:blur(8px); }
.contact-options > .eyebrow { text-align:center; font-size:15px; }
.contact-option { width:100%; padding:27px 4px; border:0; border-bottom:1px solid rgba(204,174,89,.36); display:grid; grid-template-columns:70px 1fr auto; gap:22px; align-items:center; color:#fff; background:transparent; text-align:left; cursor:pointer; transition:transform .45s,background .45s; }
.contact-option:hover { transform:translateX(7px); background:rgba(255,255,255,.035); }
.contact-option > span { width:58px; height:58px; border:1px solid rgba(204,174,89,.65); border-radius:50%; display:grid; place-items:center; color:#d6bd6d; font:400 16px var(--serif); }
.contact-option h3 { margin:0 0 9px; text-transform:uppercase; letter-spacing:.1em; font-size:14px; }
.contact-option p { margin:0; color:rgba(255,255,255,.72); font-size:14px; line-height:1.55; }
.contact-option > b { color:#d6bd6d; font-size:28px; font-weight:400; }
.contact-options-meta { margin-top:28px; display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.contact-options-meta > div + div { padding-left:24px; border-left:1px solid rgba(204,174,89,.42); }
.contact-options-meta small { color:#d6bd6d; text-transform:uppercase; letter-spacing:.12em; font-size:9px; font-weight:700; }
.contact-options-meta p,.contact-options-meta a { color:rgba(255,255,255,.76); font-size:12px; line-height:1.6; }

/* V12 two-step inquiry */
.inquiry-page { min-height:100svh; padding:calc(var(--header-closed) + 62px) 0 100px; background:#fbfbfa; }
.inquiry-kicker { margin:0 0 30px; font-size:18px; }
.inquiry-progress { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:14px; margin-bottom:58px; }
.inquiry-progress > i { height:1px; background:#d8dcda; }
.progress-step { display:flex; align-items:center; gap:11px; color:#7d8480; white-space:nowrap; }
.progress-step span { width:34px; height:34px; border-radius:50%; display:grid; place-items:center; background:#d4d8d6; color:#59615d; font-weight:700; }
.progress-step.active,.progress-step.complete { color:#1a201d; }
.progress-step.active span { color:#fff; background:#171a18; }
.progress-step.complete span { color:#fff; background:#0d7162; }
.inquiry-wizard-section { margin-top:48px; }
.inquiry-wizard-section h2 { margin:0 0 22px; font:400 26px/1.1 var(--serif); }
.reason-grid { display:grid; grid-template-columns:repeat(2,minmax(0,430px)); gap:28px; }
.reason-card { min-height:150px; padding:20px 18px 18px 24px; border:2px solid transparent; display:grid; grid-template-columns:1fr 165px; align-items:center; overflow:hidden; background:#eef0ef; box-shadow:0 3px 8px rgba(0,0,0,.09); text-align:left; cursor:pointer; transition:border-color .35s,transform .35s,box-shadow .35s; }
.reason-card:hover { transform:translateY(-3px); box-shadow:0 10px 25px rgba(0,0,0,.11); }
.reason-card.selected { border-color:#0d7162; background:#fff; }
.reason-card strong { display:block; font-size:24px; }
.reason-card small { display:block; margin-top:10px; color:#656c68; line-height:1.45; }
.reason-card img { width:165px; height:112px; object-fit:contain; justify-self:end; }
.reason-card .reason-logo { width:92px; height:92px; margin-right:28px; }
.inquiry-product-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.inquiry-product-card { position:relative; min-height:126px; padding:18px 150px 18px 18px; border:2px solid transparent; overflow:hidden; background:#eef0ef; box-shadow:0 3px 8px rgba(0,0,0,.08); text-align:left; cursor:pointer; transition:border-color .3s,transform .3s; }
.inquiry-product-card:hover { transform:translateY(-2px); }
.inquiry-product-card.selected { border-color:#0d7162; background:#fff; }
.inquiry-product-card span { position:relative; z-index:2; font-size:20px; font-weight:600; }
.inquiry-product-card img { position:absolute; right:0; top:0; width:145px; height:100%; object-fit:cover; mask-image:linear-gradient(90deg,transparent,#000 32%); }
.inquiry-product-card i { position:absolute; z-index:3; right:10px; top:10px; width:26px; height:26px; border-radius:50%; display:none; place-items:center; color:#fff; background:#0d7162; font-style:normal; }
.inquiry-product-card.selected i { display:grid; }
.inquiry-continue { margin-top:42px; display:flex; justify-content:flex-end; }
.inquiry-continue .button:disabled { opacity:.38; cursor:not-allowed; transform:none; }
.inquiry-selection-summary { margin-bottom:38px; padding:18px 22px; border-left:4px solid #0d7162; display:flex; flex-wrap:wrap; gap:12px 24px; align-items:center; background:#eef3f0; }
.inquiry-selection-summary span { color:#0d7162; text-transform:uppercase; letter-spacing:.1em; font-size:10px; font-weight:700; }
.inquiry-selection-summary strong { font:400 25px var(--serif); }
.inquiry-selection-summary small { color:#69716c; }
.inquiry-contact-form { width:min(720px,100%); display:grid; gap:27px; }
.inquiry-contact-form fieldset { margin:0; padding:0; border:0; }
.inquiry-contact-form legend,.inquiry-contact-form label { color:#252a27; font-size:16px; }
.inquiry-contact-form legend small { color:#929793; }
.title-options { display:flex; gap:23px; margin-top:16px; }
.title-options label { display:flex; align-items:center; gap:8px; cursor:pointer; }
.title-options input { width:33px; height:33px; accent-color:#0d7162; }
.inquiry-form-row { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.inquiry-phone-row { display:grid; grid-template-columns:195px 1fr; gap:0; }
.inquiry-contact-form input,.inquiry-contact-form select,.inquiry-contact-form textarea { width:100%; margin-top:9px; padding:16px; border:1px solid #d8dcda; border-radius:0; background:#fff; font-size:16px; }
.inquiry-contact-form textarea { resize:vertical; }
.inquiry-form-actions { display:flex; justify-content:space-between; gap:16px; }
.inquiry-thank-you { min-height:70svh; display:grid; align-content:center; justify-items:start; }
.inquiry-thank-you h1 { margin:0 0 20px; font:400 clamp(70px,8vw,120px)/.9 var(--serif); }
.inquiry-thank-you p { max-width:700px; color:var(--muted); font-size:18px; line-height:1.7; }

/* V12 approval workflow */
.approval-grid { display:grid; gap:20px; }
.approval-card { display:grid; grid-template-columns:280px 1fr; background:#fff; border:1px solid var(--line); }
.approval-card-cover { min-height:260px; background:center/cover no-repeat; }
.approval-card-copy { padding:28px; }
.approval-card-copy h2 { margin:0 0 12px; font:400 40px/1 var(--serif); }
.approval-card-copy > p:not(.eyebrow) { color:var(--muted); line-height:1.65; }
.approval-card dl { display:flex; gap:35px; margin:20px 0; }
.approval-card dl div { display:grid; gap:4px; }
.approval-card dt { color:var(--muted); text-transform:uppercase; letter-spacing:.08em; font-size:8px; }
.approval-card dd { margin:0; font-size:12px; }
.admin-actions .approve-action { color:#fff; border-color:#2d6c4e; background:#2d6c4e; }
.admin-actions .reject-action { color:#8d3833; border-color:#c99a94; }
.approval-empty h2 { margin-top:0; font:400 38px/1.05 var(--serif); }

@media (max-width:1180px) {
  .footer-grid { grid-template-columns:1.1fr 1.6fr 1fr; }
  .footer-brand { grid-row:span 2; }
  .contact-experience-grid { grid-template-columns:1fr; }
  .contact-options { width:min(760px,100%); }
  .inquiry-product-grid { grid-template-columns:repeat(3,1fr); }
}
@media (max-width:820px) {
  .footer-grid { grid-template-columns:1fr 1fr; }
  .footer-brand,.footer-products { grid-column:1/-1; }
  .footer::before { width:250px; right:-30px; top:28%; }
  .contact-experience-grid { padding-top:110px; }
  .contact-options-meta { grid-template-columns:1fr; }
  .contact-options-meta > div + div { padding:20px 0 0; border-left:0; border-top:1px solid rgba(204,174,89,.42); }
  .reason-grid { grid-template-columns:1fr; }
  .inquiry-product-grid { grid-template-columns:repeat(2,1fr); }
  .approval-card { grid-template-columns:1fr; }
  .approval-card-cover { min-height:230px; }
}
@media (max-width:520px) {
  .footer-grid,.footer-product-links { grid-template-columns:1fr; }
  .footer-brand,.footer-products { grid-column:auto; }
  .footer a { font-size:15px; }
  .contact-story h2 { font-size:54px; }
  .contact-options { padding:25px 20px; }
  .contact-option { grid-template-columns:50px 1fr auto; gap:12px; }
  .contact-option > span { width:44px; height:44px; }
  .inquiry-progress { grid-template-columns:1fr; gap:9px; }
  .inquiry-progress > i { display:none; }
  .reason-card { grid-template-columns:1fr 105px; min-height:130px; }
  .reason-card img { width:105px; height:90px; }
  .reason-card .reason-logo { width:72px; height:72px; margin-right:10px; }
  .inquiry-product-grid { grid-template-columns:1fr; }
  .inquiry-product-card { min-height:112px; }
  .inquiry-form-row,.inquiry-phone-row { grid-template-columns:1fr; gap:18px; }
  .inquiry-form-actions { flex-direction:column-reverse; }
  .inquiry-form-actions .button { width:100%; }
  .signature-metal { top:48px; left:-70px; width:286px; height:48px; }
  .signature-metal span { font-size:16px; }
  .product-detail-hero > .signature-metal { top:calc(var(--header-closed) + 45px); left:-92px; width:350px; height:57px; }
  .product-detail-hero > .signature-metal span { font-size:21px; }
}


/* V13 — Beyond the Bale editorial article */
.news-list-copy h3 {
  margin: -5px 0 14px;
  color: var(--brand-green);
  font: 400 18px/1.35 var(--serif);
}
.article-hero-inner { max-width: 1240px; }
.article-header.has-cover::before {
  background:
    linear-gradient(90deg,rgba(5,23,16,.94) 0%,rgba(5,23,16,.74) 42%,rgba(5,23,16,.26) 78%,rgba(5,23,16,.12) 100%),
    linear-gradient(180deg,rgba(0,0,0,.10),rgba(0,0,0,.64));
}
.article-subtitle {
  max-width: 920px;
  margin: 18px 0 12px;
  color: #f2dfad;
  font: 400 clamp(30px,3.3vw,52px)/1.05 var(--serif);
  letter-spacing: -.025em;
}
.article-dek { max-width: 920px !important; margin-bottom: 20px; }
.article-byline {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-top: 28px;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}
.article-byline strong { color:#fff; font-size:15px; }
.article-byline small {
  margin-top: 5px;
  color: rgba(255,255,255,.68);
  font-size: 11px;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.author-initials,
.profile-avatar-initials {
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:var(--brand-green);
  color:#f3deb0;
  font-family:var(--serif);
  letter-spacing:.04em;
}
.author-initials { width:72px; height:72px; font-size:24px; }
.profile-avatar-initials { width:150px; height:150px; font-size:42px; }
.article-author-card .author-bio {
  margin: 16px 0 0;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.65;
}
.article-body .article-placeholder {
  border-left: none;
  padding: 0;
  background: transparent;
}
.article-body .article-placeholder p {
  max-width: 860px;
  margin: 0 0 22px;
}
.article-body #article-0 .article-placeholder p:first-child {
  font-size: 20px;
  color: var(--ink);
}
@media (max-width: 760px) {
  .article-header.has-cover { min-height: 82svh; }
  .article-byline { font-size: 12px; }
  .article-subtitle { font-size: 31px; }
  .article-body .article-placeholder p { font-size: 16px; line-height: 1.8; }
}

.news-card h4 {
  margin: -5px 0 12px;
  color: rgba(255,255,255,.84);
  font: 400 17px/1.35 var(--serif);
}
.news-card:not(.featured) h4 { color: var(--brand-green); }


/* V14 — premium editorial article template + visible CMS imagery + multilingual utility */
.news-card.has-cover { color:#fff; background-position:center; background-size:cover; }
.news-card.has-cover h4 { color:rgba(255,255,255,.88); }
.news-card.has-cover .text-link { color:#fff; }
.news-card.has-cover p { color:#fff; opacity:.82; }

.article-editorial-header { padding:calc(var(--header-closed) + 76px) 0 72px; color:#fff; background:var(--brand-dark); }
.article-editorial-header h1 { max-width:1050px; margin:0; font:400 clamp(64px,7vw,112px)/.92 var(--serif); letter-spacing:-.052em; }
.article-editorial-header .article-subtitle { max-width:900px; margin:20px 0 16px; color:#ead8aa; font-size:clamp(32px,3.3vw,52px); }
.article-editorial-header .article-dek { max-width:820px!important; margin:0 0 20px; color:rgba(255,255,255,.74); font:400 20px/1.55 var(--serif); }
.article-editorial-header .article-byline { margin-top:26px; }
.article-cover { width:min(1500px,calc(100% - clamp(42px,7vw,132px))); margin:54px auto 0; }
.article-cover img { width:100%; max-height:760px; aspect-ratio:16/8.4; object-fit:cover; object-position:center; }
.article-reading-section { padding:78px 0 120px; background:var(--paper); }
.article-reading-shell { max-width:1560px; }
.article-layout-editorial { grid-template-columns:270px minmax(0,880px) 1fr; column-gap:clamp(70px,5.6vw,92px); }
.article-layout-editorial::after { content:""; min-width:0; }
.article-toc { top:calc(var(--header-closed) + 32px); padding:18px 0 0; }
.article-toc nav { display:grid; }
.article-toc a { position:relative; padding:7px 0 7px 16px; color:#7a817c; font-size:12px; line-height:1.38; transition:color .28s,font-weight .28s; }
.article-toc a::before { content:""; position:absolute; left:0; top:5px; bottom:5px; width:2px; background:transparent; transition:background .28s; }
.article-toc a.active { color:var(--ink); font-weight:700; }
.article-toc a.active::before { background:var(--gold); }
.article-mobile-toc { display:none; }
.article-body { width:100%; min-width:0; }
.article-body .article-section { margin-bottom:72px; }
.article-body .article-section h2 { margin:0 0 24px; font:400 clamp(38px,3.5vw,55px)/1.07 var(--serif); letter-spacing:-.025em; }
.article-copy p { max-width:850px; margin:0 0 22px; color:#59625c; font-size:17px; line-height:1.88; }
.article-copy p:first-child { color:#343e37; }
.article-inline-figure { margin:0 0 30px; }
.article-inline-figure img { width:100%; max-height:620px; object-fit:cover; }
.article-inline-figure figcaption { margin-top:8px; color:#8a908b; font-size:11px; }
.article-references { padding-top:30px; border-top:1px solid var(--line); }
.references-heading span { color:var(--brand-green); text-transform:uppercase; letter-spacing:.16em; font-size:11px; font-weight:700; }
.reference-list { margin-top:25px; }
.reference-entry { margin:0 0 14px!important; padding-left:28px; text-indent:-28px; color:#59625c!important; font-size:15.5px!important; line-height:1.58!important; }
.about-author { margin:10px 0 64px!important; padding:34px 0 0; border-top:1px solid var(--line); }
.about-author-grid { display:grid; grid-template-columns:auto 1fr; gap:24px; align-items:start; }
.about-author-grid img { width:92px; height:92px; border-radius:2px; object-fit:cover; object-position:center 26%; }
.about-author h2 { margin:0 0 4px!important; font:400 31px/1.05 var(--serif)!important; }
.about-author .author-role,.about-author .author-education,.about-author .author-credential { margin:4px 0!important; color:var(--brand-green)!important; font-size:13px!important; line-height:1.45!important; }
.about-author .author-bio-end { max-width:700px; margin:15px 0 0!important; color:#687069!important; font-size:14.5px!important; line-height:1.7!important; }
.lab-report-cta { min-height:250px; margin:0!important; padding:42px 48px; display:grid; grid-template-columns:1fr auto; gap:35px; align-items:center; color:#fff; background:var(--brand-green); }
.lab-report-cta .eyebrow { margin-bottom:10px; }
.lab-report-cta h2 { margin:0 0 12px!important; color:#fff; font:400 clamp(36px,3.3vw,50px)/1 var(--serif)!important; }
.lab-report-cta p:not(.eyebrow) { max-width:610px; margin:0!important; color:rgba(255,255,255,.76)!important; font-size:16px!important; line-height:1.65!important; }

.inquiry-privacy { max-width:720px; margin:4px 0 0; padding-top:20px; border-top:1px solid #d8dcda; color:#454c47; font-size:13px; line-height:1.6; }

.language-control { position:relative; margin-left:4px; }
.language-toggle { padding:14px 0 14px 10px; border:0; display:flex; align-items:center; gap:4px; color:rgba(255,255,255,.74); background:transparent; cursor:pointer; text-transform:uppercase; letter-spacing:.12em; font-size:10px; font-weight:700; }
.language-toggle:hover,.language-toggle[aria-expanded="true"] { color:#fff; }
.language-toggle i { margin-top:-3px; font-style:normal; font-size:11px; opacity:.72; }
.language-menu { position:absolute; z-index:500; top:calc(100% + 12px); right:-12px; width:218px; padding:14px 0 10px; border:1px solid rgba(255,255,255,.13); border-radius:2px; color:#fff; background:rgba(13,43,34,.965); box-shadow:0 18px 45px rgba(0,0,0,.22); backdrop-filter:blur(12px); }
.language-menu p { margin:0; padding:7px 18px 10px; color:rgba(255,255,255,.48); text-transform:uppercase; letter-spacing:.16em; font-size:8px; font-weight:700; }
.language-menu button { width:100%; padding:9px 18px; border:0; display:flex; justify-content:space-between; align-items:center; color:rgba(255,255,255,.76); background:transparent; cursor:pointer; text-align:left; font-size:12px; }
.language-menu button:hover,.language-menu button.active { color:#fff; background:rgba(255,255,255,.055); }
.language-menu button b { color:#d8c27d; font-size:11px; }
.mobile-language { padding:16px 0 10px; border-top:1px solid rgba(255,255,255,.18); border-bottom:1px solid rgba(255,255,255,.18); }
.mobile-language > p { margin:0 0 8px; color:rgba(255,255,255,.55); text-transform:uppercase; letter-spacing:.14em; font-size:9px; font-weight:700; }
.mobile-language-options { display:grid; grid-template-columns:1fr 1fr; gap:2px 16px; }
.mobile-language-options button { padding:7px 0; border:0; display:flex; justify-content:space-between; color:rgba(255,255,255,.78); background:transparent; font-size:12px; text-align:left; }
.mobile-language-options button.active { color:#fff; font-weight:700; }
.mobile-language-options b { color:#d8c27d; }
.footer-language-link { padding:0; border:0; color:inherit; background:transparent; cursor:pointer; font-size:11px; }

html[dir="rtl"] .language-menu { right:auto; left:-12px; text-align:right; }
html[dir="rtl"] .language-menu button { text-align:right; }
html[dir="rtl"] .header-inner, html[dir="rtl"] .hero, html[dir="rtl"] .brand { direction:ltr; }

@media (max-width:1100px) {
  .article-layout-editorial { grid-template-columns:240px minmax(0,1fr); gap:55px; }
  .article-layout-editorial::after { display:none; }
}
@media (max-width:820px) {
  .article-cover { width:calc(100% - 40px); margin-top:34px; }
  .article-cover img { aspect-ratio:16/10; }
  .article-reading-section { padding:44px 0 80px; }
  .article-layout-editorial { display:block; }
  .article-toc { display:none; }
  .article-mobile-toc { display:block; margin:0 0 42px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
  .article-mobile-toc summary { padding:16px 0; color:var(--brand-green); text-transform:uppercase; letter-spacing:.13em; font-size:10px; font-weight:700; cursor:pointer; }
  .article-mobile-toc nav { padding:0 0 16px; display:grid; }
  .article-mobile-toc a { padding:7px 0; color:var(--muted); font-size:12px; }
  .lab-report-cta { grid-template-columns:1fr; min-height:auto; padding:34px 30px; }
}
@media (max-width:760px) {
  .article-editorial-header { padding:calc(var(--header-closed) + 48px) 0 46px; }
  .article-editorial-header h1 { font-size:58px; }
  .article-editorial-header .article-subtitle { font-size:31px; }
  .article-editorial-header .article-dek { font-size:18px; }
  .article-cover { width:100%; margin-top:0; }
  .article-cover img { aspect-ratio:4/3; }
  .about-author-grid { grid-template-columns:80px 1fr; gap:18px; }
  .about-author-grid img { width:80px; height:80px; }
}


/* V15 — header symmetry, About mega menu, article-cover integration, stored localization */
.header-inner { position:relative; }
.desktop-nav { min-width:0; }
.nav-left,.nav-right { width:100%; }
.nav-left { justify-content:flex-start; }
.nav-right { justify-content:flex-end; }
.desktop-nav .nav-trigger {
  position:relative; padding:14px 0; border:0; color:inherit; background:transparent; cursor:pointer;
  text-transform:uppercase; letter-spacing:.12em; white-space:nowrap; font-size:11px; font-weight:700;
  text-shadow:0 2px 10px rgba(0,0,0,.3);
}
.desktop-nav .nav-trigger::after { content:""; position:absolute; left:0; right:100%; bottom:7px; height:1px; background:var(--gold); transition:right .3s; }
.desktop-nav .nav-trigger:hover::after,.desktop-nav .nav-trigger.active::after,.desktop-nav .nav-trigger[aria-expanded="true"]::after { right:0; }
.header-language { position:absolute; left:calc(100% + 22px); top:50%; transform:translateY(-50%); margin:0; }
.language-toggle { color:rgba(255,255,255,.62); font-size:9px; }
.site-header.scrolled .language-toggle,.site-header.inner-page .language-toggle { color:rgba(255,255,255,.68); }
.language-menu { top:calc(100% + 13px); right:-12px; background:rgba(54,95,77,.985); }
.site-header.about-open {
  color:var(--ink); background:#f7f5f0; border-bottom-color:rgba(26,38,31,.12); box-shadow:none; backdrop-filter:none;
}
.site-header.about-open .desktop-nav a,.site-header.about-open .nav-trigger { color:var(--ink); text-shadow:none; }
.site-header.about-open .brand span { color:var(--brand-green); }
.site-header.about-open .language-toggle { color:#7b817d; }
.about-mega {
  position:absolute; z-index:102; top:100%; left:0; width:100%; color:var(--ink); background:#f7f5f0;
  border-top:1px solid rgba(26,38,31,.1); box-shadow:0 22px 44px rgba(17,34,27,.08);
}
.about-mega-grid { min-height:560px; display:grid; grid-template-columns:minmax(280px,30%) 1fr; gap:clamp(56px,6vw,104px); padding-top:58px; padding-bottom:66px; }
.about-mega-list h2 { margin:0 0 42px; color:#667069; font:400 clamp(34px,3vw,48px)/1 var(--serif); }
.about-mega-list nav { display:grid; border-top:1px solid var(--line); }
.about-mega-list button { padding:20px 4px; border:0; border-bottom:1px solid var(--line); color:#87908a; background:transparent; text-align:left; cursor:pointer; text-transform:uppercase; letter-spacing:.15em; font-size:10px; transition:color .25s,padding-left .25s; }
.about-mega-list button:hover,.about-mega-list button:focus,.about-mega-list button.active { color:var(--brand-green); padding-left:10px; outline:none; }
.about-mega-list button.active { font-weight:700; }
.about-mega-preview { min-width:0; display:grid; grid-template-columns:minmax(0,1.45fr) minmax(280px,.72fr); gap:38px; align-items:end; animation:aboutPreview .38s ease both; }
@keyframes aboutPreview { from{opacity:.35;transform:translateY(6px)} to{opacity:1;transform:none} }
.about-preview-image { min-height:390px; overflow:hidden; background:#e8e5dc; }
.about-preview-image img { width:100%; height:100%; min-height:390px; object-fit:cover; }
.about-preview-copy { padding-bottom:8px; }
.about-preview-copy h3 { margin:0 0 20px; font:400 clamp(40px,4vw,66px)/.98 var(--serif); letter-spacing:-.035em; }
.about-preview-copy > p:not(.eyebrow) { margin:0 0 30px; color:#687069; font-size:15px; line-height:1.75; }
.mobile-about-toggle { width:100%; padding:12px 0; border:0; border-bottom:1px solid rgba(255,255,255,.18); display:flex; justify-content:space-between; color:#fff; background:transparent; text-transform:uppercase; letter-spacing:.1em; font-size:12px; }
.mobile-about-links { padding:5px 0 10px 16px; }
.mobile-about-links a { padding:9px 0; border-bottom:0; color:rgba(255,255,255,.76); font-size:11px; }

.article-editorial-with-cover {
  position:relative; min-height:74svh; display:flex; align-items:flex-end; background-position:center; background-size:cover; background-repeat:no-repeat;
}
.article-editorial-with-cover::after { content:""; position:absolute; inset:0; pointer-events:none; box-shadow:inset 0 -110px 110px rgba(5,28,20,.16); }
.article-editorial-with-cover .article-hero-inner { position:relative; z-index:1; padding-bottom:72px; }
.article-cover { display:none!important; }
.about-author .author-credential { margin:4px 0!important; color:var(--brand-green)!important; font-size:13px!important; line-height:1.45!important; }

.about-page-hero { min-height:72svh; }
.about-destination { background:var(--paper); }
.about-destination-grid { display:grid; grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr); gap:clamp(60px,8vw,130px); }
.about-destination h2 { margin:0; font:400 clamp(48px,5.4vw,82px)/.98 var(--serif); letter-spacing:-.035em; }
.about-page-pillars { margin-top:42px; display:grid; gap:0; border-top:1px solid var(--line); }
.about-page-pillars article { padding:24px 0; border-bottom:1px solid var(--line); }
.about-page-pillars h3 { margin:0 0 8px; font:400 27px/1.1 var(--serif); }
.about-page-pillars p,.about-page-shell-note p { color:var(--muted); line-height:1.75; }
.about-page-shell-note { margin-top:36px; padding-top:24px; border-top:1px solid var(--line); }

html[dir="rtl"] .about-mega-list button { text-align:right; }
html[dir="rtl"] .about-mega-preview { direction:rtl; }

@media (max-width:1320px) {
  .header-language { left:auto; right:-54px; }
  .desktop-nav { gap:clamp(18px,1.8vw,32px); }
}
@media (max-width:1180px) {
  .header-language { right:-42px; }
  .desktop-nav a,.desktop-nav .nav-trigger { font-size:10px; }
}
@media (max-width:980px) {
  .header-language { display:none; }
  .about-mega { display:none!important; }
}
@media (max-width:820px) {
  .article-editorial-with-cover { min-height:78svh; background-position:center; }
  .article-editorial-with-cover .article-hero-inner { padding-bottom:48px; }
  .about-destination-grid { grid-template-columns:1fr; gap:30px; }
}


/* V16 — B2B capability, refined About unfold, facility cards, gallery lightbox, inquiry */
.about-mega {
  display:block;
  max-height:0;
  opacity:0;
  transform:translateY(-12px);
  transform-origin:top center;
  overflow:hidden;
  pointer-events:none;
  visibility:hidden;
  transition:max-height .58s cubic-bezier(.22,1,.36,1), opacity .34s ease, transform .58s cubic-bezier(.22,1,.36,1), visibility 0s linear .58s;
}
.about-mega.open {
  max-height:min(760px, calc(100vh - var(--header-closed)));
  opacity:1;
  transform:translateY(0);
  pointer-events:auto;
  visibility:visible;
  transition:max-height .58s cubic-bezier(.22,1,.36,1), opacity .34s ease, transform .58s cubic-bezier(.22,1,.36,1), visibility 0s;
}
.about-mega.closing {
  max-height:0;
  opacity:0;
  transform:translateY(-8px);
  pointer-events:none;
  transition:max-height .36s cubic-bezier(.4,0,.2,1), opacity .24s ease, transform .36s cubic-bezier(.4,0,.2,1), visibility 0s linear .36s;
}
.about-mega-list button { opacity:1; }
.about-mega-list button:hover,.about-mega-list button:focus { color:#263a31; opacity:1; }
.about-mega-list button.active { color:var(--brand-dark); opacity:1; }

.grower-relationships { background:#ece7da; }
.grower-relationships-grid { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr); gap:clamp(50px,7vw,110px); align-items:center; }
.grower-relationships-image { min-height:clamp(480px,52vw,760px); background:linear-gradient(180deg,rgba(8,38,27,.02),rgba(8,38,27,.12)),url('assets/site/story-origin-v6.webp') center/cover no-repeat; }
.grower-relationships h2,.sourcing-regions h2,.western-origin h2,.history-opening h2,.group-story h2 { margin:0 0 26px; font:400 clamp(44px,5vw,76px)/1 var(--serif); letter-spacing:-.04em; }
.relationship-line { display:block; margin-top:30px; color:var(--brand-green); font:400 clamp(22px,2vw,31px)/1.35 var(--serif); }
.compact-grower { background:#f0ebdf; }
.sourcing-regions { background:var(--paper); }
.region-list { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--line); }
.region-list span { padding:18px 0; border-bottom:1px solid var(--line); color:var(--brand-green); font:400 18px/1.3 var(--serif); }
.region-list span:nth-child(even) { padding-left:28px; border-left:1px solid var(--line); }
.region-list small { grid-column:1/-1; margin-top:18px; color:var(--muted); line-height:1.55; }
.supply-chain-flow { margin-top:36px; display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.supply-chain-flow span { min-height:110px; padding:22px; display:flex; flex-direction:column; justify-content:space-between; border-right:1px solid var(--line); border-bottom:1px solid var(--line); color:var(--brand-green); text-transform:uppercase; letter-spacing:.08em; font-size:10px; font-weight:700; }
.supply-chain-flow b { color:var(--gold); font-size:10px; }
.western-origin { background:#f7f3e9; }
.origin-caveat { margin-top:25px; padding-top:18px; border-top:1px solid var(--line); color:var(--muted); font-size:12px; }

.hq-badge { display:inline-flex; margin:0 0 22px; padding:9px 13px; border:1px solid rgba(234,216,170,.72); color:#ead8aa; text-transform:uppercase; letter-spacing:.15em; font-size:9px; font-weight:700; }
.location-profile { background:var(--paper); }
.location-profile-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(320px,.65fr); gap:clamp(55px,8vw,125px); }
.location-profile-copy h2 { margin:0 0 30px; font:400 clamp(44px,5vw,74px)/1 var(--serif); letter-spacing:-.04em; }
.location-profile-copy h3 { margin:38px 0 9px; font:400 29px/1.1 var(--serif); }
.location-facts { padding:38px; color:#fff; background:var(--brand-dark); align-self:start; }
.location-facts > small:first-child { color:var(--gold); font-weight:700; }
.location-facts h3 { margin:12px 0 32px; font:400 35px/1.05 var(--serif); }
.location-facts p { margin:9px 0; color:rgba(255,255,255,.78); }
.location-facts .fact-label { margin-top:27px; padding-top:20px; border-top:1px solid rgba(255,255,255,.16); color:#ead8aa; text-transform:uppercase; letter-spacing:.13em; font-size:9px; font-weight:700; }
.availability-note { display:block; margin-top:25px; color:rgba(255,255,255,.5)!important; line-height:1.55; }
.machinery-section { background:#eae5d8; }
.machine-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.machine-card { min-height:260px; padding:34px; display:grid; grid-template-columns:48px 1fr; gap:18px; background:#f9f6ef; border:1px solid rgba(26,38,31,.12); box-shadow:0 14px 35px rgba(30,40,34,.06); }
.machine-card > span { color:var(--gold); font:400 20px/1 var(--serif); }
.machine-card h3 { margin:0 0 25px; font:400 clamp(27px,2.3vw,38px)/1.05 var(--serif); }
.machine-card dl { margin:0; display:grid; }
.machine-card dl div { padding:10px 0; display:grid; grid-template-columns:150px 1fr; gap:18px; border-top:1px solid var(--line); }
.machine-card dt { color:var(--muted); text-transform:uppercase; letter-spacing:.09em; font-size:9px; font-weight:700; }
.machine-card dd { margin:0; color:#3f4a43; font-size:13px; line-height:1.55; }
.location-gallery-section { background:var(--paper); }
.location-gallery-real { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.location-gallery-real figure { margin:0; position:relative; min-height:430px; overflow:hidden; cursor:zoom-in; background:#ddd7c9; }
.location-gallery-real img { width:100%; height:100%; min-height:430px; object-fit:cover; transition:transform .7s cubic-bezier(.22,1,.36,1); }
.location-gallery-real figure:hover img { transform:scale(1.025); }
.location-gallery-real figcaption { position:absolute; inset:auto 0 0; padding:34px 28px 22px; color:#fff; background:linear-gradient(transparent,rgba(5,24,17,.78)); font:400 17px/1.35 var(--serif); }
.site-lightbox { position:fixed; z-index:1000; inset:0; display:grid; grid-template-columns:80px minmax(0,1fr) 80px; align-items:center; padding:40px 26px; color:#fff; background:rgba(6,14,11,.94); backdrop-filter:blur(6px); opacity:0; transition:opacity .24s ease; }
.site-lightbox.open { opacity:1; }
.site-lightbox figure { margin:0; min-width:0; max-height:calc(100vh - 80px); display:grid; justify-items:center; }
.site-lightbox img { max-width:min(1500px,100%); max-height:calc(100vh - 130px); object-fit:contain; box-shadow:0 18px 70px rgba(0,0,0,.42); }
.site-lightbox figcaption { width:min(1500px,100%); padding-top:12px; display:flex; justify-content:space-between; gap:20px; color:rgba(255,255,255,.7); font-size:12px; }
.lightbox-close,.lightbox-nav { border:0; color:#fff; background:transparent; cursor:pointer; }
.lightbox-close { position:absolute; top:22px; right:26px; font:300 38px/1 Arial; }
.lightbox-nav { font:300 54px/1 var(--serif); opacity:.72; transition:opacity .2s; }
.lightbox-nav:hover { opacity:1; }
body.lightbox-open { overflow:hidden; }

.history-editorial { background:var(--paper); }
.history-opening { max-width:880px; margin-bottom:70px; }
.history-opening > p:last-child { color:var(--muted); font-size:16px; line-height:1.85; }
.history-milestones { border-top:1px solid var(--line); }
.history-milestone { padding:34px 0; display:grid; grid-template-columns:180px 1fr; gap:clamp(30px,6vw,100px); border-bottom:1px solid var(--line); }
.history-milestone > b { color:var(--brand-green); font:400 clamp(32px,4vw,58px)/1 var(--serif); }
.history-milestone p:last-child { max-width:850px; margin:0; color:var(--muted); line-height:1.78; }
.history-milestone.major { margin-inline:-28px; padding:42px 28px; color:#fff; background:var(--brand-dark); border-bottom:0; }
.history-milestone.major > b,.history-milestone.major .eyebrow { color:#e4c870; }
.history-milestone.major p:last-child { color:rgba(255,255,255,.8); }
.group-story { background:var(--paper); }
.group-story-grid { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:clamp(60px,8vw,130px); }
.group-legal-note { margin-top:28px; padding-top:18px; border-top:1px solid var(--line); color:var(--muted); font-size:12px; line-height:1.6; }
.group-profile-grid { margin-top:70px; display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.group-profile-grid article { min-height:380px; padding:45px; display:flex; flex-direction:column; background:#ebe6da; }
.group-profile-grid h3 { margin:0 0 24px; font:400 clamp(34px,3.5vw,51px)/1 var(--serif); }
.group-profile-grid article > p:not(.eyebrow) { color:var(--muted); line-height:1.8; }
.group-profile-grid .text-link { margin-top:auto; align-self:flex-start; }
.expertise-page { background:var(--paper); }
.expertise-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.expertise-grid article { min-height:240px; padding:32px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.expertise-grid h3 { margin:0 0 20px; font:400 29px/1.1 var(--serif); }
.expertise-grid p { color:var(--muted); line-height:1.7; }

.reason-grid-b2b { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.reason-card.compact { min-height:150px; padding:24px; text-align:left; }
.reason-card.compact span { display:grid; gap:12px; }
.reason-card.compact small { color:var(--gold); font-size:9px; letter-spacing:.12em; }
.reason-card.compact strong { font:400 24px/1.1 var(--serif); }
.reason-card.compact em { color:var(--muted); font-size:11px; font-style:normal; line-height:1.45; }
.inquiry-contact-form { max-width:900px; }
.inquiry-contact-form > label { margin-bottom:18px; }
.inquiry-selection-summary { display:flex; flex-wrap:wrap; gap:12px 26px; }

.site-content-form .code-textarea { min-height:260px; font-family:Consolas,monospace; font-size:12px; line-height:1.5; }

@media (max-width:980px) {
  .grower-relationships-grid,.location-profile-grid,.group-story-grid { grid-template-columns:1fr; }
  .grower-relationships-image { min-height:520px; }
  .machine-grid,.group-profile-grid,.location-gallery-real { grid-template-columns:1fr; }
  .expertise-grid { grid-template-columns:repeat(2,1fr); }
  .reason-grid-b2b { grid-template-columns:repeat(2,1fr); }
  .site-lightbox { grid-template-columns:52px minmax(0,1fr) 52px; padding-inline:8px; }
}
@media (max-width:640px) {
  .region-list,.supply-chain-flow,.expertise-grid,.reason-grid-b2b { grid-template-columns:1fr; }
  .region-list span:nth-child(even) { padding-left:0; border-left:0; }
  .history-milestone { grid-template-columns:1fr; gap:12px; }
  .history-milestone.major { margin-inline:-18px; padding-inline:18px; }
  .machine-card { grid-template-columns:1fr; padding:25px; }
  .machine-card dl div { grid-template-columns:1fr; gap:4px; }
  .location-gallery-real figure,.location-gallery-real img { min-height:300px; }
  .site-lightbox { display:block; padding:64px 12px 28px; }
  .site-lightbox figure { height:100%; align-content:center; }
  .lightbox-nav { position:absolute; top:50%; transform:translateY(-50%); z-index:2; }
  .lightbox-prev { left:8px; }.lightbox-next { right:8px; }
  .group-profile-grid article { min-height:320px; padding:30px; }
}

.mobile-about-links { max-height:0; opacity:0; transform:translateY(-5px); overflow:hidden; transition:max-height .32s cubic-bezier(.22,1,.36,1),opacity .22s ease,transform .32s cubic-bezier(.22,1,.36,1); }
.mobile-about-links.open { max-height:320px; opacity:1; transform:none; }
.mobile-about-toggle b { transition:transform .3s cubic-bezier(.22,1,.36,1); }
.mobile-about-toggle[aria-expanded="true"] b { transform:rotate(180deg); }


/* =========================================================
   V17 — History & Heritage editorial brand-book composition
   ========================================================= */
.history-brandbook{background:var(--paper);color:var(--brand-green);overflow:hidden}
.history-brandbook figure{margin:0}
.history-brandbook img{display:block;width:100%;height:100%;object-fit:cover}
.history-gold-rule{display:block;width:42px;height:1px;background:var(--gold);margin:14px 0 24px}
.history-opening-editorial{min-height:72svh;display:grid;grid-template-columns:minmax(330px,.72fr) minmax(0,1.28fr);align-items:stretch;background:var(--paper)}
.history-opening-copy{padding:clamp(72px,9vw,140px) clamp(36px,6vw,92px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;position:relative;z-index:2;background:linear-gradient(90deg,var(--paper) 0%,rgba(248,245,236,.98) 74%,rgba(248,245,236,.74) 100%)}
.history-opening-copy h1{margin:10px 0 22px;font:400 clamp(58px,6.4vw,104px)/.88 var(--serif);letter-spacing:-.055em;max-width:650px}
.history-opening-copy>p:last-child{max-width:48ch;margin:0;color:#343c36;font-size:clamp(16px,1.12vw,20px);line-height:1.65}
.history-since{margin:0;color:var(--gold);font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.history-opening-image{min-height:72svh;position:relative;overflow:hidden}
.history-opening-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(248,245,236,.62),rgba(248,245,236,.08) 32%,rgba(255,255,255,0));pointer-events:none}
.history-opening-image img{filter:saturate(.55) sepia(.10) contrast(.92);object-position:center 68%}
.history-origin-editorial{min-height:54svh;display:grid;grid-template-columns:minmax(170px,.28fr) minmax(330px,.47fr) minmax(0,1fr);align-items:stretch;background:#faf8f2}
.history-origin-year{padding:clamp(54px,7vw,105px) 0 clamp(48px,6vw,90px) clamp(36px,5vw,80px);display:flex;flex-direction:column;justify-content:flex-start;gap:26px}
.history-origin-year strong{font:400 clamp(72px,8vw,130px)/.78 var(--serif);letter-spacing:-.06em;color:var(--brand-green)}
.history-nevada-mark{width:82px;height:110px;border:1px solid rgba(183,148,65,.55);clip-path:polygon(7% 0,86% 0,86% 78%,100% 91%,92% 100%,31% 55%,7% 55%);opacity:.72}
.history-origin-copy{padding:clamp(58px,7vw,108px) clamp(28px,5vw,80px) 58px 18px;display:flex;flex-direction:column;justify-content:flex-start}
.history-origin-copy h2{margin:0 0 24px;font:400 clamp(38px,4.6vw,72px)/.98 var(--serif);letter-spacing:-.045em}
.history-origin-copy>p:last-child{max-width:43ch;margin:0;color:#475049;font-size:clamp(16px,1.08vw,19px);line-height:1.65}
.history-origin-image{min-height:54svh;position:relative;overflow:hidden}
.history-origin-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#faf8f2 0%,rgba(250,248,242,.28) 26%,rgba(250,248,242,0) 58%);pointer-events:none}
.history-origin-image img{object-position:center 58%;filter:saturate(.68) contrast(.94) brightness(1.03)}
.history-footprint-editorial{padding:clamp(80px,9vw,145px) 0 clamp(90px,10vw,155px);background:var(--paper)}
.history-footprint-heading{text-align:center;margin:0 auto clamp(44px,5vw,72px)}
.history-footprint-heading h2{margin:10px auto 0;font:400 clamp(48px,5.5vw,84px)/.96 var(--serif);letter-spacing:-.05em}
.history-site-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(26px,3vw,46px)}
.history-site-card{min-width:0;padding-bottom:12px}
.history-site-satellite{aspect-ratio:1.58/1;overflow:hidden;background:#ddd9cd;margin:0 0 26px}
.history-site-satellite img{object-position:center 50%;transition:transform .8s cubic-bezier(.22,1,.36,1)}
.history-site-card:hover .history-site-satellite img{transform:scale(1.018)}
.history-site-meta{display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:start}
.history-site-meta>strong{font:400 clamp(48px,5vw,78px)/.9 var(--serif);letter-spacing:-.055em}
.history-site-meta p{margin:4px 0 5px;color:var(--gold);font-size:12px;font-weight:700;letter-spacing:.12em;line-height:1.35;text-transform:uppercase}
.history-site-meta small{display:block;color:#4b554f;font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.history-site-card>p{max-width:42ch;margin:0 0 22px;color:#3f4842;font-size:15px;line-height:1.68}
.history-site-card .text-link{color:var(--brand-green);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.history-2016-editorial{min-height:68svh;display:flex;align-items:center;position:relative;background:linear-gradient(90deg,rgba(7,52,39,.99),rgba(7,52,39,.95)),url('assets/site/story-today-v6.webp') center/cover no-repeat;color:#f7f3e8}
.history-2016-editorial:after{content:"";position:absolute;inset:auto -8vw -22% auto;width:42vw;height:42vw;border:1px solid rgba(201,168,81,.08);border-radius:50%;pointer-events:none}
.history-2016-inner{width:100%;display:grid;grid-template-columns:minmax(250px,.55fr) minmax(0,1fr);gap:clamp(44px,7vw,120px);align-items:center;padding-top:clamp(80px,9vw,140px);padding-bottom:clamp(80px,9vw,140px)}
.history-2016-year{color:#d4b65b;font:400 clamp(110px,15vw,240px)/.72 var(--serif);letter-spacing:-.075em}
.history-2016-copy{max-width:760px}
.history-2016-copy h2{margin:14px 0 28px;color:#f8f4e9;font:400 clamp(50px,6vw,92px)/.93 var(--serif);letter-spacing:-.052em}
.history-2016-copy>p:not(.eyebrow){max-width:57ch;margin:0;color:rgba(255,255,255,.82);font-size:clamp(17px,1.15vw,20px);line-height:1.7}
.history-group-link{display:inline-block;margin-top:30px;color:#e0c35e;border-bottom:1px solid rgba(224,195,94,.48);padding-bottom:6px;text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:700}
.history-today-editorial{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);background:var(--paper)}
.history-today-copy{padding:clamp(76px,8vw,130px) clamp(34px,6vw,92px);display:flex;flex-direction:column;justify-content:center}
.history-today-label{margin:0 0 18px;color:#606962;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.history-today-copy h2{margin:0 0 26px;font:400 clamp(48px,5.6vw,86px)/.94 var(--serif);letter-spacing:-.052em}
.history-today-copy>p:not(.eyebrow):not(.history-today-label){max-width:57ch;margin:0 0 20px;color:#414a44;font-size:clamp(16px,1.08vw,19px);line-height:1.65}
.history-today-copy>strong{margin-top:4px;text-transform:uppercase;letter-spacing:.08em;font-size:12px}
.history-today-copy>span:last-child{margin-top:6px;color:#4d564f;font-size:15px}
.history-today-image{min-height:58svh;position:relative;overflow:hidden}
.history-today-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(248,245,236,.58),rgba(248,245,236,0) 31%);pointer-events:none}
.history-today-image img{object-position:center 52%}
.history-summary-strip{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);padding:36px clamp(34px,5vw,80px) 46px;border-top:1px solid rgba(17,67,51,.16);background:#f8f5ed}
.history-summary-strip>div{min-height:92px;display:flex;align-items:center;gap:18px;padding:0 clamp(18px,2.3vw,38px);border-left:1px solid rgba(17,67,51,.16)}
.history-summary-strip>div:first-child{border-left:0;padding-left:0}
.history-summary-strip b{font:400 clamp(48px,5vw,78px)/.85 var(--serif);letter-spacing:-.05em;color:var(--brand-green)}
.history-summary-strip .history-summary-word{font-size:clamp(28px,2.6vw,42px);line-height:.96}
.history-summary-strip span{color:var(--brand-green);font-size:10px;font-weight:700;letter-spacing:.10em;line-height:1.55;text-transform:uppercase}
.history-summary-strip small{font:inherit;letter-spacing:.06em}

/* V17 — direct single-page B2B inquiry */
.inquiry-page-direct{background:#fbfbfa}
.inquiry-direct-shell{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(480px,1.28fr);gap:clamp(60px,8vw,130px);align-items:start}
.inquiry-direct-intro{position:sticky;top:calc(var(--header-closed) + 44px);padding-top:6px}
.inquiry-direct-intro h1{max-width:720px;margin:12px 0 24px;color:var(--brand-green);font:400 clamp(54px,6vw,92px)/.94 var(--serif);letter-spacing:-.05em}
.inquiry-direct-intro>p:not(.eyebrow){max-width:48ch;color:#515a54;font-size:17px;line-height:1.7}
.inquiry-direct-context{margin-top:34px;padding:18px 0;border-top:1px solid #d8dcda;border-bottom:1px solid #d8dcda;display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center}
.inquiry-direct-context small{width:100%;color:#7b827d;font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.inquiry-direct-context strong{font:400 25px var(--serif);color:var(--brand-green)}
.inquiry-direct-context span{color:#57605a;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.inquiry-contact-form-direct{max-width:none;width:100%;padding:clamp(30px,4vw,52px);background:#fff;border:1px solid #e1e3df}
.inquiry-form-actions-direct{justify-content:flex-start}
.inquiry-form-actions-direct .button{min-width:220px}

@media (max-width: 980px){
  .history-opening-editorial{grid-template-columns:1fr 1fr;min-height:auto}
  .history-opening-copy{padding:72px 40px}
  .history-opening-image{min-height:620px}
  .history-origin-editorial{grid-template-columns:150px 1fr}
  .history-origin-image{grid-column:1/-1;min-height:430px}
  .history-site-grid{grid-template-columns:1fr}
  .history-site-card{display:grid;grid-template-columns:minmax(240px,.72fr) 1fr;gap:26px 34px;align-items:start;padding:0 0 34px;border-bottom:1px solid rgba(17,67,51,.15)}
  .history-site-satellite{grid-row:1/5;margin:0}
  .history-site-meta,.history-site-card>.history-gold-rule,.history-site-card>p,.history-site-card>.text-link{grid-column:2}
  .history-2016-inner{grid-template-columns:1fr}
  .history-2016-year{font-size:150px}
  .history-today-editorial{grid-template-columns:1fr}
  .history-today-image{min-height:460px}
  .history-summary-strip{grid-template-columns:repeat(2,1fr)}
  .history-summary-strip>div:nth-child(3){border-left:0;border-top:1px solid rgba(17,67,51,.16);padding-top:24px}
  .history-summary-strip>div:nth-child(4){border-top:1px solid rgba(17,67,51,.16);padding-top:24px}
  .inquiry-direct-shell{grid-template-columns:1fr;gap:42px}
  .inquiry-direct-intro{position:static}
}
@media (max-width: 680px){
  .history-opening-editorial{display:flex;flex-direction:column}
  .history-opening-copy{padding:58px 22px 44px}
  .history-opening-copy h1{font-size:58px}
  .history-opening-image{min-height:360px;order:2}
  .history-opening-image:after{background:linear-gradient(180deg,rgba(248,245,236,.42),rgba(248,245,236,0) 38%)}
  .history-origin-editorial{display:flex;flex-direction:column}
  .history-origin-year{padding:54px 22px 10px;gap:12px}
  .history-origin-year strong{font-size:88px}
  .history-nevada-mark{display:none}
  .history-origin-copy{padding:14px 22px 44px}
  .history-origin-copy h2{font-size:44px}
  .history-origin-image{min-height:330px}
  .history-footprint-editorial{padding:70px 0 80px}
  .history-footprint-heading{padding:0 22px;text-align:left}
  .history-footprint-heading h2{font-size:48px}
  .history-site-grid{padding:0 22px}
  .history-site-card{display:block;padding-bottom:42px}
  .history-site-satellite{margin-bottom:22px}
  .history-site-meta{gap:18px}
  .history-site-meta>strong{font-size:58px}
  .history-2016-editorial{min-height:74svh}
  .history-2016-inner{padding:82px 22px}
  .history-2016-year{font-size:110px}
  .history-2016-copy h2{font-size:52px}
  .history-today-copy{padding:68px 22px 50px}
  .history-today-copy h2{font-size:48px}
  .history-today-image{min-height:330px}
  .history-summary-strip{grid-template-columns:1fr;padding:20px 22px 36px}
  .history-summary-strip>div,.history-summary-strip>div:first-child,.history-summary-strip>div:nth-child(3),.history-summary-strip>div:nth-child(4){border-left:0;border-top:1px solid rgba(17,67,51,.16);padding:24px 0;min-height:auto}
  .history-summary-strip>div:first-child{border-top:0}
  .inquiry-page{padding-top:calc(var(--header-closed) + 40px)}
  .inquiry-direct-shell{padding-inline:18px}
  .inquiry-direct-intro h1{font-size:52px}
  .inquiry-contact-form-direct{padding:28px 20px}
  .inquiry-form-actions-direct .button{width:100%}
}

/* V18 — slower Bentley-like About unfold, stable hover, group logos, inquiry reason refinement */
.about-mega{
  max-height:0;
  opacity:0;
  transform:translateY(-14px) scaleY(.985);
  transform-origin:top center;
  clip-path:inset(0 0 100% 0);
  visibility:hidden;
  pointer-events:none;
  overflow:hidden;
  transition:
    max-height .56s cubic-bezier(.4,0,.2,1),
    clip-path .56s cubic-bezier(.4,0,.2,1),
    transform .56s cubic-bezier(.4,0,.2,1),
    opacity .34s ease,
    visibility 0s linear .56s;
}
.about-mega.open{
  max-height:min(860px,calc(100vh - var(--header-closed)));
  opacity:1;
  transform:translateY(0) scaleY(1);
  clip-path:inset(0 0 0 0);
  visibility:visible;
  pointer-events:auto;
  transition:
    max-height .92s cubic-bezier(.22,1,.36,1),
    clip-path .92s cubic-bezier(.22,1,.36,1),
    transform .92s cubic-bezier(.22,1,.36,1),
    opacity .56s ease .08s,
    visibility 0s;
}
.about-mega.closing{
  max-height:0;
  opacity:0;
  transform:translateY(-9px) scaleY(.99);
  clip-path:inset(0 0 100% 0);
  visibility:visible;
  pointer-events:none;
  transition:
    max-height .54s cubic-bezier(.4,0,.2,1),
    clip-path .54s cubic-bezier(.4,0,.2,1),
    transform .54s cubic-bezier(.4,0,.2,1),
    opacity .32s ease;
}
.about-mega-grid{
  opacity:.2;
  transform:translateY(-18px);
  transition:opacity .58s ease .14s,transform .86s cubic-bezier(.22,1,.36,1) .06s;
}
.about-mega.open .about-mega-grid{opacity:1;transform:none}
.about-mega-list button{
  opacity:1!important;
  filter:none!important;
  transition:color .30s ease,padding-left .34s cubic-bezier(.22,1,.36,1),border-color .30s ease;
}
.about-mega-list button:hover,
.about-mega-list button:focus{
  color:#1e3329!important;
  opacity:1!important;
  filter:none!important;
  padding-left:10px;
}
.about-mega-list button.active{
  color:var(--brand-dark)!important;
  opacity:1!important;
  filter:none!important;
  font-weight:700;
}
.about-mega-preview{
  animation:none!important;
  opacity:1;
  transform:none;
  transition:opacity .30s ease,transform .34s cubic-bezier(.22,1,.36,1);
}
.about-mega-preview.is-changing{opacity:.18;transform:translateY(5px)}

.group-logo-frame{
  min-height:92px;
  margin:-4px 0 32px;
  padding:18px 0 20px;
  display:flex;
  align-items:center;
  border-bottom:1px solid rgba(33,51,41,.16);
}
.group-logo-frame img{
  display:block;
  max-width:min(250px,78%);
  max-height:64px;
  width:auto;
  height:auto;
  object-fit:contain;
}
.history-2016-logos{
  margin:30px 0 24px;
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}
.history-2016-logos>div{
  min-width:190px;
  min-height:76px;
  padding:15px 18px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#f2eee3;
  border:1px solid rgba(212,182,91,.32);
}
.history-2016-logos img{
  display:block;
  max-width:180px;
  max-height:48px;
  width:auto;
  height:auto;
  object-fit:contain;
}

/* Keep the original inquiry visual language, but reveal products only for Request Picture. */
.reason-grid .reason-card{opacity:1}
.reason-grid .reason-card:hover{opacity:1;transform:translateY(-2px)}
.reason-grid .reason-card.selected{border-color:#0d7162;background:#fff}

@media (max-width:820px){
  .group-logo-frame{min-height:72px;margin-bottom:24px}
  .history-2016-logos{display:grid;grid-template-columns:1fr;max-width:320px}
  .history-2016-logos>div{min-width:0}
}

/* Legacy platform-band styles remain for the Products overview page. */
.platform-band { background: var(--brand-dark); color: #fff; }
.platform-intro { max-width: 1120px; }
.platform-intro h2 { margin: 0; font: 400 clamp(50px, 6.5vw, 96px)/.94 var(--serif); letter-spacing: -.04em; }
.platform-grid { margin-top: clamp(48px, 6vw, 84px); display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid rgba(255,255,255,.24); }
.platform-grid article { padding: 32px clamp(18px, 3vw, 44px) 10px 0; border-right: 1px solid rgba(255,255,255,.2); }
.platform-grid article:last-child { border-right: 0; padding-left: clamp(18px, 3vw, 44px); }
.platform-grid article:nth-child(2) { padding-left: clamp(18px, 3vw, 44px); }
.platform-grid h3 { margin: 0 0 18px; color: #e7ce88; font: 400 29px var(--serif); }
.platform-grid p { margin: 0; color: rgba(255,255,255,.75); line-height: 1.75; }
@media (max-width: 760px) {
  .platform-grid { grid-template-columns: 1fr; }
  .platform-grid article { padding: 27px 0 !important; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.18); }
}


/* V20 — Bentley-inspired frosted editorial Approach; Global Reach moved to Global Perspective; click-only About */
.approach-editorial{position:relative;min-height:100svh;overflow:hidden;background:#0b2d23;color:#f5f0e4;isolation:isolate}
.approach-photo{position:absolute;inset:0;background:url("assets/site/approach-field-v20.webp") center 54%/cover no-repeat;transform:scale(1.012);z-index:-3}
.approach-photo-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,34,27,.42) 0%,rgba(7,34,27,.18) 46%,rgba(7,34,27,.14) 100%),linear-gradient(180deg,rgba(5,31,24,.18),rgba(5,31,24,.30));z-index:-2}
.approach-editorial-shell{min-height:100svh;display:flex;align-items:center;padding-top:clamp(80px,8vh,120px);padding-bottom:clamp(54px,7vh,100px)}
.approach-card-wrap{position:relative;width:min(660px,50vw);margin-left:clamp(0px,1.6vw,28px)}
.approach-card-layer{position:absolute;inset:0;border:1px solid rgba(203,177,106,.28);background:rgba(22,55,46,.14);pointer-events:none}
.approach-card-layer.layer-one{transform:translate(-24px,22px)}
.approach-card-layer.layer-two{transform:translate(8px,-10px)}
.approach-frosted-card{position:relative;padding:clamp(38px,4vw,62px) clamp(34px,4.3vw,68px) 28px;border:1px solid rgba(238,230,209,.48);background:linear-gradient(180deg,rgba(37,66,59,.78),rgba(17,53,42,.88));box-shadow:0 24px 70px rgba(4,23,18,.22);backdrop-filter:blur(18px) saturate(.88);-webkit-backdrop-filter:blur(18px) saturate(.88);overflow:hidden}
.approach-frosted-card:after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,rgba(255,255,255,.045),transparent 36%);pointer-events:none}
.approach-card-eyebrow{margin:0 0 22px;font-size:11px;letter-spacing:.24em}
.approach-rule{display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:center;margin:0 0 26px;opacity:.7}
.approach-rule span{height:1px;background:rgba(211,184,105,.44)}
.approach-rule b{width:6px;height:6px;background:#c7a755;transform:rotate(45deg)}
.approach-philosophy-title{margin:0;font:400 clamp(48px,4.2vw,72px)/.98 var(--serif);letter-spacing:-.035em;color:#f5f0e4}
.approach-philosophy-title span{display:block}
.approach-philosophy-title em{font-style:normal;color:#c8aa5d}
.approach-card-positioning{max-width:540px;margin:28px 0 0;color:rgba(245,240,228,.84);font:400 clamp(15px,1.06vw,18px)/1.58 var(--serif)}
.approach-card-divider{height:1px;margin:28px 0;background:rgba(238,230,209,.16)}
.approach-slide-copy{min-height:222px;transition:opacity .34s ease,transform .48s cubic-bezier(.22,1,.36,1);opacity:1;transform:none}
.approach-slide-copy.is-switching{opacity:0;transform:translateY(10px)}
.approach-slide-label{margin:0 0 10px;color:#c8aa5d;text-transform:uppercase;letter-spacing:.20em;font-size:10px;font-weight:700}
.approach-slide-copy h3{max-width:560px;margin:0 0 13px;color:#f5f0e4;font:400 clamp(23px,1.8vw,31px)/1.18 var(--serif)}
.approach-slide-body{max-width:560px;margin:0;color:rgba(245,240,228,.78);font-size:14px;line-height:1.65}
.approach-slide-terms{margin:18px 0 0;color:#c8aa5d;text-transform:uppercase;letter-spacing:.19em;font-size:9px;font-weight:700}
.approach-card-divider-bottom{margin:24px 0 16px}
.approach-slider-nav{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;gap:12px}
.approach-slider-nav button{border:0;background:transparent;color:rgba(245,240,228,.78);cursor:pointer;font-family:var(--serif);transition:color .25s ease,opacity .25s ease,transform .25s ease}
.approach-slider-nav button:hover,.approach-slider-nav button:focus-visible{color:#f7f2e7;outline:none}
.approach-arrow{font-size:31px;line-height:1;opacity:.9}
.approach-arrow:hover{transform:translateX(2px)}
.approach-arrow[data-approach-prev]:hover{transform:translateX(-2px)}
.approach-indexes{display:flex;align-items:center;justify-content:center;gap:clamp(34px,4vw,60px)}
.approach-indexes button{position:relative;padding:5px 2px 13px;font-size:20px;letter-spacing:.04em}
.approach-indexes button:after{content:"";position:absolute;left:50%;bottom:0;width:0;height:2px;background:#c8aa5d;transform:translateX(-50%);transition:width .35s cubic-bezier(.22,1,.36,1)}
.approach-indexes button.active{color:#c8aa5d}
.approach-indexes button.active:after{width:34px}
.approach-editorial.reveal{opacity:1;transform:none}
.approach-editorial .approach-card-wrap{opacity:0;transform:translateY(22px)}
.approach-editorial.visible .approach-card-wrap{animation:approachCardIn 1.12s cubic-bezier(.22,1,.36,1) .12s forwards}
@keyframes approachCardIn{to{opacity:1;transform:none}}

.global-reach-about{position:relative;min-height:72svh;display:flex;align-items:center;overflow:hidden;background:#0a2c22;color:#f5f0e4}
.global-reach-about-bg{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,35,26,.92),rgba(6,35,26,.72)),url("assets/site/approach-field-v20.webp") center 54%/cover no-repeat;filter:saturate(.82);transform:scale(1.01)}
.global-reach-about-inner{position:relative;z-index:1;padding-top:clamp(86px,10vh,132px);padding-bottom:clamp(86px,10vh,132px)}
.global-reach-about h2{max-width:900px;margin:12px 0 20px;color:#f5f0e4;font:400 clamp(48px,5vw,76px)/.98 var(--serif);letter-spacing:-.035em}
.global-reach-about-inner>p:not(.eyebrow){max-width:710px;margin:0;color:rgba(245,240,228,.74);font-size:16px;line-height:1.65}
.global-market-clusters{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:clamp(58px,7vh,90px);border-top:1px solid rgba(202,172,91,.38)}
.global-market-clusters article{padding:28px 34px 0 0}
.global-market-clusters article+article{padding-left:34px;border-left:1px solid rgba(245,240,228,.13)}
.global-market-clusters span{display:block;color:#c8aa5d;font:400 23px var(--serif);margin-bottom:14px}
.global-market-clusters strong{display:block;color:#f5f0e4;text-transform:uppercase;letter-spacing:.16em;font-size:11px;margin-bottom:10px}
.global-market-clusters p{margin:0;color:rgba(245,240,228,.66);font-size:14px;line-height:1.55}

/* Click is the only desktop trigger; keep the carpet unfold deliberate rather than hover-driven. */
.about-mega.open{transition:max-height .74s cubic-bezier(.22,1,.36,1),clip-path .74s cubic-bezier(.22,1,.36,1),transform .74s cubic-bezier(.22,1,.36,1),opacity .46s ease .06s,visibility 0s}
.about-mega.closing{transition:max-height .48s cubic-bezier(.4,0,.2,1),clip-path .48s cubic-bezier(.4,0,.2,1),transform .48s cubic-bezier(.4,0,.2,1),opacity .29s ease}
.about-mega.open .about-mega-grid{transition-delay:.08s}

@media(max-width:980px){
  .approach-editorial-shell{align-items:flex-end;padding-top:112px;padding-bottom:56px}
  .approach-card-wrap{width:min(720px,88vw);margin-left:0}
  .approach-philosophy-title{font-size:clamp(44px,7vw,66px)}
  .global-market-clusters{grid-template-columns:1fr}
  .global-market-clusters article,.global-market-clusters article+article{padding:24px 0;border-left:0;border-top:1px solid rgba(245,240,228,.12)}
  .global-market-clusters article:first-child{border-top:0}
}
@media(max-width:680px){
  .approach-editorial{min-height:auto}
  .approach-photo{background-position:57% center}
  .approach-photo-shade{background:linear-gradient(180deg,rgba(7,34,27,.25),rgba(7,34,27,.58))}
  .approach-editorial-shell{min-height:auto;padding:112px 18px 46px}
  .approach-card-wrap{width:100%}
  .approach-card-layer.layer-one{transform:translate(-7px,10px)}
  .approach-card-layer.layer-two{transform:translate(5px,-6px)}
  .approach-frosted-card{padding:34px 24px 20px;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
  .approach-card-eyebrow{font-size:9px}
  .approach-philosophy-title{font-size:clamp(42px,12vw,58px);line-height:1.0}
  .approach-card-positioning{font-size:15px}
  .approach-slide-copy{min-height:280px}
  .approach-slide-copy h3{font-size:26px}
  .approach-slide-body{font-size:14px}
  .approach-indexes{gap:28px}
  .approach-indexes button{font-size:18px}
  .global-reach-about{min-height:auto}
  .global-reach-about-inner{padding:82px 22px}
  .global-reach-about h2{font-size:48px}
}
@media(prefers-reduced-motion:reduce){.approach-editorial .approach-card-wrap{opacity:1;transform:none;animation:none!important}.approach-slide-copy{transition:none!important}}


/* =========================================================
   V21 — Refined translucent Approach + cinematic Global Perspective
   ========================================================= */

/* Approach: keep the approved field, but remove the heavy card treatment. */
.approach-editorial{
  min-height:100svh;
  background:#0b2d23;
}
.approach-photo{
  background-image:url("assets/site/approach-field-v20.webp");
  background-position:center 54%;
  transform:scale(1.006);
}
.approach-photo-shade{
  background:
    linear-gradient(90deg,rgba(6,42,34,.34) 0%,rgba(6,42,34,.18) 47%,rgba(6,42,34,.10) 100%),
    linear-gradient(180deg,rgba(4,29,22,.08),rgba(4,29,22,.24));
}
.approach-editorial-shell{
  padding-top:clamp(94px,10vh,138px);
  padding-bottom:clamp(64px,8vh,104px);
}
.approach-card-wrap{
  width:min(790px,58vw);
  margin-left:clamp(-10px,1.2vw,18px);
}
.approach-card-layer{display:none!important}
.approach-frosted-card{
  border:0;
  border-radius:0;
  padding:clamp(36px,4vw,58px) clamp(62px,5.4vw,92px) 28px clamp(38px,4.6vw,72px);
  background:
    linear-gradient(
      90deg,
      rgba(6,42,34,.78) 0%,
      rgba(6,42,34,.64) 62%,
      rgba(6,42,34,.18) 100%
    );
  box-shadow:none;
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
  overflow:visible;
}
.approach-frosted-card:after{display:none}
.approach-card-eyebrow{
  margin-bottom:26px;
  font-size:11px;
  letter-spacing:.24em;
}
.approach-rule{display:none}
.approach-philosophy-title{
  max-width:none;
  font-size:clamp(48px,4.15vw,70px);
  line-height:1.01;
}
.approach-philosophy-title span{
  display:block;
  white-space:nowrap;
}
.approach-philosophy-title b{
  font:inherit;
  font-weight:400;
  color:#f5f0e4;
}
.approach-philosophy-title em{color:#c6a75a}
.approach-card-positioning{
  max-width:590px;
  margin-top:30px;
  font:400 clamp(15px,1vw,17px)/1.62 var(--serif);
  color:rgba(245,240,228,.86);
}
.approach-card-divider{
  max-width:600px;
  margin:30px 0 26px;
  background:rgba(238,230,209,.15);
}
.approach-slide-copy{
  max-width:600px;
  min-height:212px;
}
.approach-slide-copy h3{
  font-size:clamp(25px,1.8vw,31px);
  line-height:1.18;
}
.approach-slide-body{
  max-width:570px;
  font-size:14.5px;
  line-height:1.7;
}
.approach-slide-terms{
  margin-top:18px;
  font-size:9px;
  letter-spacing:.19em;
}
.approach-card-divider-bottom{margin-top:22px}
.approach-slider-nav{
  max-width:600px;
}
.approach-editorial .approach-card-wrap{
  opacity:0;
  transform:translateY(18px);
}
.approach-editorial.visible .approach-card-wrap{
  animation:approachCardIn 1.18s cubic-bezier(.22,1,.36,1) .14s forwards;
}

/* Global Perspective — map artwork becomes the visual foundation, not a white content page. */
.global-perspective-cinematic{
  position:relative;
  min-height:100svh;
  overflow:hidden;
  isolation:isolate;
  background:#061c17;
  color:#f5f0e4;
}
.global-map-base,
.global-map-route-reveal{
  position:absolute;
  inset:0;
  z-index:-4;
  background-image:url("assets/site/global-route-map-v21.png");
  background-repeat:no-repeat;
  background-size:100% auto;
  background-position:center 43%;
  transform:scale(1.025);
}
.global-map-base{
  filter:brightness(.55) contrast(1.05) saturate(.75);
  opacity:0;
}
.global-map-route-reveal{
  z-index:-3;
  filter:brightness(.70) contrast(1.08) saturate(.90);
  opacity:.44;
  clip-path:inset(0 100% 0 0);
}
.global-perspective-shade{
  position:absolute;
  inset:0;
  z-index:-2;
  background:
    linear-gradient(90deg,rgba(4,24,20,.90) 0%,rgba(4,24,20,.66) 38%,rgba(4,24,20,.24) 68%,rgba(4,24,20,.12) 100%),
    linear-gradient(180deg,rgba(3,19,16,.20) 0%,rgba(3,19,16,.08) 48%,rgba(3,19,16,.84) 100%);
}
.global-perspective-shell{
  min-height:100svh;
  display:flex;
  flex-direction:column;
  padding-top:clamp(118px,13vh,166px);
  padding-bottom:clamp(42px,6vh,74px);
}
.global-perspective-intro{
  max-width:670px;
}
.global-perspective-eyebrow,
.global-perspective-intro h1 span,
.global-perspective-intro>p,
.global-market-groups,
.global-perspective-info article{
  opacity:0;
  transform:translateY(14px);
}
.global-perspective-intro h1{
  margin:14px 0 22px;
  color:#f5f0e4;
  font:400 clamp(56px,5.3vw,86px)/.96 var(--serif);
  letter-spacing:-.04em;
}
.global-perspective-intro h1 span{display:block}
.global-perspective-intro>p{
  max-width:620px;
  margin:0;
  color:rgba(245,240,228,.77);
  font-size:clamp(15px,1.05vw,18px);
  line-height:1.65;
}
.global-market-groups{
  margin-top:auto;
  margin-bottom:clamp(28px,4vh,46px);
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  max-width:780px;
  border-top:1px solid rgba(197,167,89,.34);
}
.global-market-groups article{
  padding:18px 26px 0 0;
}
.global-market-groups article+article{
  padding-left:26px;
  border-left:1px solid rgba(245,240,228,.13);
}
.global-market-groups strong{
  display:block;
  margin-bottom:7px;
  color:#c6a75a;
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:10px;
}
.global-market-groups p{
  margin:0;
  color:rgba(245,240,228,.72);
  font-size:13px;
  line-height:1.45;
}
.global-perspective-info{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border-top:1px solid rgba(197,167,89,.40);
}
.global-perspective-info article{
  position:relative;
  padding:28px clamp(28px,3vw,48px) 4px 0;
}
.global-perspective-info article+article{
  padding-left:clamp(28px,3vw,48px);
  border-left:1px solid rgba(245,240,228,.13);
}
.global-perspective-info article>span{
  display:block;
  margin-bottom:13px;
  color:rgba(198,167,90,.82);
  font:400 20px var(--serif);
}
.global-perspective-info .eyebrow{
  margin:0 0 10px;
  font-size:9px;
}
.global-perspective-info h2{
  margin:0 0 10px;
  max-width:310px;
  color:#f5f0e4;
  font:400 clamp(22px,1.7vw,29px)/1.13 var(--serif);
}
.global-perspective-info article>p:last-child{
  margin:0;
  max-width:350px;
  color:rgba(245,240,228,.68);
  font-size:13.5px;
  line-height:1.6;
}
.global-perspective-mobile-map{display:none}

/* Calm 2.8–3.0s entrance sequence. */
.global-perspective-cinematic.visible .global-map-base{
  animation:globalMapIn .60s ease forwards;
}
.global-perspective-cinematic.visible .global-map-route-reveal{
  animation:globalRouteReveal 1.55s cubic-bezier(.22,1,.36,1) .88s forwards;
}
.global-perspective-cinematic.visible .global-perspective-eyebrow{
  animation:globalTextIn .72s cubic-bezier(.22,1,.36,1) .30s forwards;
}
.global-perspective-cinematic.visible .global-perspective-intro h1 span:nth-child(1){
  animation:globalTextIn .82s cubic-bezier(.22,1,.36,1) .50s forwards;
}
.global-perspective-cinematic.visible .global-perspective-intro h1 span:nth-child(2){
  animation:globalTextIn .82s cubic-bezier(.22,1,.36,1) .72s forwards;
}
.global-perspective-cinematic.visible .global-perspective-intro>p{
  animation:globalTextIn .82s cubic-bezier(.22,1,.36,1) .98s forwards;
}
.global-perspective-cinematic.visible .global-market-groups{
  animation:globalTextIn .76s cubic-bezier(.22,1,.36,1) 1.35s forwards;
}
.global-perspective-cinematic.visible .global-perspective-info article:nth-child(1){
  animation:globalTextIn .78s cubic-bezier(.22,1,.36,1) 1.62s forwards;
}
.global-perspective-cinematic.visible .global-perspective-info article:nth-child(2){
  animation:globalTextIn .78s cubic-bezier(.22,1,.36,1) 1.90s forwards;
}
.global-perspective-cinematic.visible .global-perspective-info article:nth-child(3){
  animation:globalTextIn .78s cubic-bezier(.22,1,.36,1) 2.18s forwards;
}
@keyframes globalMapIn{to{opacity:1}}
@keyframes globalRouteReveal{to{clip-path:inset(0 0 0 0)}}
@keyframes globalTextIn{to{opacity:1;transform:none}}

@media(max-width:980px){
  .approach-card-wrap{width:min(760px,90vw)}
  .approach-frosted-card{
    padding-right:clamp(40px,8vw,82px);
    background:linear-gradient(90deg,rgba(6,42,34,.82),rgba(6,42,34,.62) 74%,rgba(6,42,34,.24));
  }
  .approach-philosophy-title span{white-space:normal}
  .global-perspective-intro{max-width:620px}
  .global-perspective-intro h1{font-size:clamp(52px,8vw,74px)}
  .global-market-groups{max-width:none}
}
@media(max-width:680px){
  .approach-photo{background-position:58% center}
  .approach-photo-shade{background:linear-gradient(180deg,rgba(7,34,27,.18),rgba(7,34,27,.42))}
  .approach-editorial-shell{padding:106px 16px 42px}
  .approach-card-wrap{width:100%;margin:0}
  .approach-frosted-card{
    padding:32px 22px 22px;
    background:linear-gradient(180deg,rgba(6,42,34,.80),rgba(6,42,34,.62) 72%,rgba(6,42,34,.30));
    backdrop-filter:blur(3px);
    -webkit-backdrop-filter:blur(3px);
  }
  .approach-philosophy-title{font-size:clamp(39px,10.5vw,52px)}
  .approach-philosophy-title span{white-space:normal}
  .approach-card-positioning{font-size:14px}
  .approach-slide-copy{min-height:292px}
  .approach-slide-body{font-size:14px}
  .approach-slider-nav{grid-template-columns:36px 1fr 36px}

  .global-perspective-cinematic{
    min-height:auto;
    background:#071f19;
  }
  .global-map-base,.global-map-route-reveal{
    display:none;
  }
  .global-perspective-shade{
    background:linear-gradient(180deg,rgba(4,24,20,.97),rgba(4,24,20,.92));
  }
  .global-perspective-shell{
    min-height:auto;
    display:block;
    padding:106px 20px 54px;
  }
  .global-perspective-intro h1{
    font-size:clamp(46px,13vw,62px);
    line-height:.99;
  }
  .global-perspective-intro>p{
    font-size:15px;
  }
  .global-perspective-mobile-map{
    display:block;
    width:calc(100% + 40px);
    margin:40px -20px 28px;
    aspect-ratio:1.42/1;
    background:
      linear-gradient(180deg,rgba(6,31,25,.08),rgba(6,31,25,.32)),
      url("assets/site/global-route-map-v21.png") center/contain no-repeat;
    filter:brightness(.70) contrast(1.03) saturate(.78);
  }
  .global-market-groups{
    grid-template-columns:1fr;
    margin:0;
    border-top:1px solid rgba(197,167,89,.34);
  }
  .global-market-groups article,
  .global-market-groups article+article{
    padding:17px 0;
    border-left:0;
    border-bottom:1px solid rgba(245,240,228,.11);
  }
  .global-perspective-info{
    grid-template-columns:1fr;
    margin-top:28px;
  }
  .global-perspective-info article,
  .global-perspective-info article+article{
    padding:28px 0;
    border-left:0;
    border-bottom:1px solid rgba(245,240,228,.12);
  }
  .global-perspective-info article:last-child{border-bottom:0}
  .global-perspective-info h2{font-size:28px}
  .global-perspective-info article>p:last-child{font-size:14px}
}
@media(prefers-reduced-motion:reduce){
  .global-map-base,.global-map-route-reveal,
  .global-perspective-eyebrow,.global-perspective-intro h1 span,
  .global-perspective-intro>p,.global-market-groups,.global-perspective-info article{
    animation:none!important;
    opacity:1!important;
    transform:none!important;
    clip-path:none!important;
  }
}

/* V22 — facility machine icons + real Winters gallery */
.machine-card { min-height: 292px; }
.machine-card-body { min-width: 0; }
.machine-card-head { display:flex; align-items:flex-start; justify-content:space-between; gap:28px; min-height:88px; margin-bottom:18px; }
.machine-card-head > div { min-width:0; }
.machine-card-head .eyebrow { margin-bottom:10px; }
.machine-card-head h3 { margin-bottom:0; }
.machine-icon { flex:0 0 auto; width:clamp(96px,9vw,150px); height:86px; object-fit:contain; object-position:right center; filter:none; }
.location-gallery-expanded { grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.location-gallery-expanded .gallery-aerial-feature { grid-column:1/-1; min-height:clamp(470px,48vw,700px); }
.location-gallery-expanded .gallery-aerial-feature img { min-height:clamp(470px,48vw,700px); }
.location-gallery-expanded figure:not(.gallery-aerial-feature), .location-gallery-expanded figure:not(.gallery-aerial-feature) img { min-height:330px; }
.location-gallery-aerial-only { grid-template-columns:minmax(0,1fr); }
.location-gallery-aerial-only .gallery-aerial-feature { width:min(1400px,100%); min-height:clamp(460px,52vw,720px); margin-inline:auto; }
.location-gallery-aerial-only .gallery-aerial-feature img { min-height:clamp(460px,52vw,720px); }
@media (max-width:1100px) {
  .machine-card-head { gap:18px; }
  .machine-icon { width:118px; height:76px; }
  .location-gallery-expanded { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .location-gallery-expanded .gallery-aerial-feature { grid-column:1/-1; }
}
@media (max-width:760px) {
  .machine-card-head { align-items:center; }
  .machine-icon { width:102px; height:70px; }
  .location-gallery-expanded { grid-template-columns:1fr; }
  .location-gallery-expanded .gallery-aerial-feature { grid-column:auto; }
  .location-gallery-expanded .gallery-aerial-feature, .location-gallery-expanded .gallery-aerial-feature img, .location-gallery-expanded figure:not(.gallery-aerial-feature), .location-gallery-expanded figure:not(.gallery-aerial-feature) img, .location-gallery-aerial-only .gallery-aerial-feature, .location-gallery-aerial-only .gallery-aerial-feature img { min-height:300px; }
}

/* V23 — Contact / Partnership full-bleed hero */
.contact-partnership-hero {
  position: relative;
  isolation: isolate;
  width: 100%;
  min-height: 100svh;
  overflow: hidden;
  color: #f6f1e7;
  background: url("assets/site/contact-container-yard-v60.webp") center center / cover no-repeat;
}
.contact-partnership-shade {
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(26,21,17,.23) 0%, rgba(26,21,17,.08) 48%, rgba(26,21,17,0) 76%),
    linear-gradient(180deg, rgba(16,14,12,.04) 0%, rgba(16,14,12,.02) 57%, rgba(16,14,12,.22) 100%);
}
.contact-partnership-shell {
  position: relative;
  min-height: 100svh;
  padding-top: clamp(105px, 9vh, 145px);
  padding-bottom: clamp(120px, 13vh, 165px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}
.contact-panel-stack {
  position: relative;
  width: min(680px, 48vw);
  margin-top: clamp(-38px, -3vh, -12px);
}
.contact-panel-offset {
  position: absolute;
  z-index: -1;
  top: -29px;
  left: -29px;
  width: 56%;
  height: 43%;
  border: 1px solid rgba(244,231,202,.20);
  background: rgba(220,204,174,.38);
  box-shadow: 0 18px 58px rgba(0,0,0,.08);
  backdrop-filter: blur(9px) saturate(.82);
  -webkit-backdrop-filter: blur(9px) saturate(.82);
}
.contact-glass-panel {
  position: relative;
  padding: clamp(48px, 4.4vw, 68px) clamp(48px, 4.5vw, 72px) clamp(42px, 4vw, 58px);
  border: 1px solid rgba(235,221,191,.20);
  background: rgba(66,57,49,.58);
  box-shadow: 0 24px 80px rgba(0,0,0,.18);
  backdrop-filter: blur(16px) saturate(.90);
  -webkit-backdrop-filter: blur(16px) saturate(.90);
}
.contact-glass-panel::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border: 1px solid rgba(255,255,255,.035);
}
.contact-glass-panel .eyebrow {
  margin: 0 0 28px;
  color: #d6bd72;
  font-size: 13px;
  letter-spacing: .18em;
}
.contact-glass-panel h2 {
  max-width: 590px;
  margin: 0 0 26px;
  color: #f6f1e7;
  font: 400 clamp(64px, 5.25vw, 86px) / .97 var(--serif);
  letter-spacing: -.045em;
  text-wrap: balance;
}
.contact-partnership-body {
  max-width: 555px;
  margin: 0;
  color: rgba(248,244,236,.86);
  font-size: clamp(19px, 1.45vw, 23px);
  line-height: 1.58;
}
.contact-primary-button {
  min-width: 292px;
  margin-top: 34px;
  padding: 18px 23px 18px 26px;
  border: 1px solid rgba(225,199,124,.42);
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 34px;
  color: #f7f0df;
  background: rgba(10,67,49,.84);
  box-shadow: 0 12px 34px rgba(0,0,0,.12);
  cursor: pointer;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: 12px;
  font-weight: 700;
  transition: transform .42s ease, background .42s ease, border-color .42s ease;
}
.contact-primary-button:hover {
  transform: translateY(-2px);
  background: rgba(8,76,54,.94);
  border-color: rgba(225,199,124,.72);
}
.contact-primary-button b {
  color: #dbc576;
  font-size: 25px;
  font-weight: 400;
  line-height: 1;
}
.contact-panel-rule {
  height: 1px;
  margin: 34px 0 26px;
  background: rgba(226,208,164,.42);
}
.contact-business-meta {
  display: grid;
  grid-template-columns: 1.35fr .84fr 1.18fr;
  gap: 0;
  align-items: start;
}
.contact-business-meta > div {
  min-width: 0;
  padding-right: 21px;
}
.contact-business-meta > div + div {
  padding-left: 21px;
  border-left: 1px solid rgba(226,208,164,.30);
}
.contact-business-meta small {
  display: block;
  margin-bottom: 9px;
  color: #d6bd72;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: 12px;
  font-weight: 700;
}
.contact-business-meta a,
.contact-business-meta span {
  display: block;
  color: rgba(249,246,239,.91);
  font-size: clamp(15px, 1.05vw, 18px);
  line-height: 1.48;
  overflow-wrap: anywhere;
}
.contact-closing-line {
  position: absolute;
  left: 0;
  bottom: clamp(42px, 6vh, 72px);
  margin: 0;
  color: #c9a956;
  font: 400 clamp(30px, 2.45vw, 38px) / 1.16 var(--serif);
  letter-spacing: -.018em;
  text-shadow: 0 2px 16px rgba(0,0,0,.22);
}
.contact-closing-line::after {
  content: "";
  display: block;
  width: 64px;
  height: 1px;
  margin-top: 23px;
  background: rgba(208,177,92,.84);
}

@media (max-width: 1180px) {
  .contact-panel-stack { width: min(650px, 58vw); }
  .contact-glass-panel h2 { font-size: clamp(58px, 6vw, 76px); }
  .contact-business-meta { grid-template-columns: 1.3fr .85fr 1fr; }
  .contact-business-meta a,
  .contact-business-meta span { font-size: 15px; }
}
@media (max-width: 820px) {
  .contact-partnership-hero {
    min-height: max(100svh, 900px);
    background-position: 58% center;
  }
  .contact-partnership-shade {
    background:
      linear-gradient(180deg, rgba(24,19,16,.08), rgba(24,19,16,.17) 60%, rgba(24,19,16,.32)),
      linear-gradient(90deg, rgba(24,19,16,.17), rgba(24,19,16,.03));
  }
  .contact-partnership-shell {
    min-height: max(100svh, 900px);
    padding: calc(var(--header-closed) + 48px) 18px 38px;
    justify-content: flex-start;
  }
  .contact-panel-stack {
    width: 100%;
    margin: 18px 0 0;
  }
  .contact-panel-offset {
    top: -16px;
    left: -10px;
    width: 48%;
    height: 28%;
  }
  .contact-glass-panel {
    padding: 34px 26px 30px;
    background: rgba(59,51,45,.62);
    backdrop-filter: blur(14px) saturate(.90);
    -webkit-backdrop-filter: blur(14px) saturate(.90);
  }
  .contact-glass-panel .eyebrow { margin-bottom: 20px; font-size: 11px; }
  .contact-glass-panel h2 {
    max-width: 540px;
    margin-bottom: 20px;
    font-size: clamp(46px, 11.5vw, 61px);
    line-height: .98;
  }
  .contact-partnership-body { font-size: 18px; line-height: 1.55; }
  .contact-primary-button { width: 100%; min-width: 0; margin-top: 27px; }
  .contact-panel-rule { margin: 28px 0 21px; }
  .contact-business-meta { grid-template-columns: 1fr; }
  .contact-business-meta > div { padding: 0; }
  .contact-business-meta > div + div { margin-top: 17px; padding: 17px 0 0; border-left: 0; border-top: 1px solid rgba(226,208,164,.28); }
  .contact-business-meta small { margin-bottom: 6px; font-size: 10px; }
  .contact-business-meta a,
  .contact-business-meta span { font-size: 16px; }
  .contact-closing-line {
    position: static;
    margin: 32px 6px 0;
    font-size: clamp(28px, 8vw, 34px);
  }
}
@media (max-width: 520px) {
  .contact-partnership-hero { background-position: 61% center; }
  .contact-partnership-shell { padding-left: 14px; padding-right: 14px; }
  .contact-glass-panel { padding: 30px 22px 27px; }
  .contact-glass-panel h2 { font-size: clamp(43px, 12vw, 54px); }
}

/* V23 contact typography tuning after responsive/localized text replacement */
.contact-glass-panel h2 { max-width: 600px; font-size: clamp(68px, 4.8vw, 82px); }
.contact-closing-line { max-width: 430px; }
@media (max-width: 1180px) { .contact-glass-panel h2 { font-size: clamp(60px, 5.8vw, 74px); } }
@media (max-width: 820px) { .contact-glass-panel h2 { font-size: clamp(46px, 11.5vw, 61px); } .contact-closing-line { max-width: 390px; } }
@media (max-width: 520px) { .contact-glass-panel h2 { font-size: clamp(43px, 12vw, 54px); } }

/* =========================================================
   V24 — wider Contact glass, matching Approach glass, Ellensburg gallery
   ========================================================= */

/* Contact: widen the editorial glass so the title, email, phone, and hours
   read naturally without invading the closing statement below. */
.contact-partnership-shell{
  padding-top:clamp(92px,8vh,126px);
  padding-bottom:clamp(92px,10vh,128px);
  justify-content:center;
}
.contact-panel-stack{
  width:min(900px,58vw);
  margin-top:clamp(-28px,-2vh,-8px);
}
.contact-glass-panel{
  padding:clamp(44px,3.6vw,58px) clamp(52px,4vw,66px) clamp(34px,3vw,46px);
  background:rgba(66,57,49,.56);
  backdrop-filter:blur(16px) saturate(.90);
  -webkit-backdrop-filter:blur(16px) saturate(.90);
}
.contact-glass-panel .eyebrow{margin-bottom:24px}
.contact-glass-panel h2{
  max-width:none;
  margin-bottom:24px;
  font-size:clamp(62px,4.2vw,76px);
  line-height:.98;
  letter-spacing:-.042em;
  text-wrap:balance;
}
.contact-partnership-body{
  max-width:700px;
  font-size:clamp(18px,1.25vw,22px);
  line-height:1.55;
}
.contact-primary-button{margin-top:28px}
.contact-panel-rule{margin:28px 0 22px}
.contact-business-meta{
  grid-template-columns:1.55fr .82fr 1.42fr;
}
.contact-business-meta>div{padding-right:24px}
.contact-business-meta>div+div{padding-left:24px}
.contact-business-meta a,
.contact-business-meta span{
  overflow-wrap:normal;
  word-break:normal;
  font-size:clamp(15px,.98vw,17px);
}
.contact-business-meta a{white-space:nowrap}
.contact-closing-line{
  bottom:clamp(24px,3.6vh,46px);
  max-width:500px;
  font-size:clamp(29px,2.25vw,36px);
}

/* Approach: use the supplied Alfalfa field and the same warm smoked-glass
   vocabulary as Contact instead of the previous green gradient block. */
.approach-photo{
  background-image:url("assets/site/approach-alfalfa-field-v24.png")!important;
  background-position:center 50%!important;
  background-size:cover!important;
  transform:scale(1.004)!important;
}
.approach-photo-shade{
  background:
    linear-gradient(90deg,rgba(26,21,17,.18) 0%,rgba(26,21,17,.06) 50%,rgba(26,21,17,0) 82%),
    linear-gradient(180deg,rgba(16,14,12,.02),rgba(16,14,12,.12))!important;
}
.approach-card-wrap{
  width:min(820px,56vw)!important;
  margin-left:clamp(-6px,1vw,14px)!important;
}
.approach-frosted-card{
  border:1px solid rgba(235,221,191,.20)!important;
  padding:clamp(40px,3.6vw,56px) clamp(48px,4vw,66px) 26px!important;
  background:rgba(66,57,49,.56)!important;
  box-shadow:0 24px 80px rgba(0,0,0,.18)!important;
  backdrop-filter:blur(16px) saturate(.90)!important;
  -webkit-backdrop-filter:blur(16px) saturate(.90)!important;
}
.approach-frosted-card:after{
  display:block!important;
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border:1px solid rgba(255,255,255,.035);
  background:linear-gradient(115deg,rgba(255,255,255,.035),transparent 34%);
}
.approach-philosophy-title{
  font-size:clamp(47px,3.95vw,66px)!important;
}
.approach-card-positioning{max-width:640px!important}
.approach-card-divider,.approach-slide-copy,.approach-slider-nav{max-width:650px!important}
.approach-slide-copy{min-height:200px!important}

/* Ellensburg now has a real-photo gallery just like Winters; Imperial remains aerial-only. */
.location-gallery-expanded .gallery-aerial-feature{
  grid-column:1/-1;
}

@media(max-width:1180px){
  .contact-panel-stack{width:min(820px,66vw)}
  .contact-glass-panel h2{font-size:clamp(56px,5.2vw,69px)}
  .contact-business-meta{grid-template-columns:1.48fr .82fr 1.30fr}
  .approach-card-wrap{width:min(790px,64vw)!important}
}
@media(max-width:920px){
  .contact-partnership-shell{padding-bottom:46px}
  .contact-panel-stack{width:min(760px,86vw)}
  .contact-closing-line{position:static;margin:28px 4px 0}
  .approach-card-wrap{width:min(760px,86vw)!important}
}
@media(max-width:820px){
  .contact-partnership-shell{padding-top:calc(var(--header-closed) + 42px);padding-bottom:38px}
  .contact-panel-stack{width:100%;margin-top:12px}
  .contact-glass-panel{padding:32px 25px 28px}
  .contact-glass-panel h2{font-size:clamp(44px,10.8vw,60px)}
  .contact-business-meta{grid-template-columns:1fr}
  .contact-business-meta a{white-space:normal}
  .contact-closing-line{margin:28px 6px 0}
  .approach-card-wrap{width:100%!important}
  .approach-frosted-card{padding:34px 26px 22px!important}
}


/* =========================================================
   V25 — Fixed About stage + neutral Approach glass + responsive Locations
   ========================================================= */

/* TASK 1 — About content changes in-place inside one stable editorial stage. */
@media (min-width:981px){
  .about-mega-grid{
    height:clamp(570px,61vh,660px)!important;
    min-height:570px!important;
    grid-template-columns:minmax(280px,30%) minmax(0,1fr)!important;
    align-items:stretch!important;
    padding-top:54px!important;
    padding-bottom:58px!important;
  }
  .about-mega-list{
    min-height:0;
    align-self:stretch;
  }
  .about-mega-preview{
    height:100%!important;
    min-height:0!important;
    grid-template-columns:minmax(0,1.42fr) minmax(300px,.74fr)!important;
    grid-template-rows:minmax(0,1fr)!important;
    align-items:stretch!important;
    gap:clamp(32px,3vw,48px)!important;
    overflow:hidden;
  }
  .about-preview-image{
    width:100%;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    overflow:hidden;
    background:#e8e5dc;
  }
  .about-preview-image img{
    display:block;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    object-fit:cover!important;
  }
  .about-preview-copy{
    min-height:0;
    align-self:end;
    padding:0 0 8px!important;
  }
  .about-preview-copy h3{
    min-height:2.02em;
    margin-bottom:18px!important;
  }
  .about-preview-copy>p:not(.eyebrow){
    min-height:7.0em;
    margin-bottom:26px!important;
  }
  .about-mega-preview,
  .about-mega-preview.is-changing{
    will-change:opacity,transform;
  }
}

/* TASK 2 — Smoked graphite / sage-gray Approach glass. Keep geometry fixed. */
.approach-frosted-card{
  background:rgba(39,45,43,.56)!important;
  border:1px solid rgba(245,239,219,.16)!important;
  box-shadow:0 24px 74px rgba(11,17,15,.17)!important;
  backdrop-filter:blur(14px) saturate(.92)!important;
  -webkit-backdrop-filter:blur(14px) saturate(.92)!important;
}
.approach-frosted-card:after{
  background:linear-gradient(115deg,rgba(255,255,255,.026),transparent 36%)!important;
  border-color:rgba(255,255,255,.025)!important;
}
@media (min-width:821px){
  .approach-frosted-card{
    min-height:748px!important;
    display:grid!important;
    grid-template-rows:auto auto auto auto minmax(238px,238px) auto auto!important;
    align-content:start;
  }
  .approach-card-eyebrow{align-self:start}
  .approach-philosophy-title{align-self:start}
  .approach-card-positioning{align-self:start}
  .approach-card-divider{align-self:center}
  .approach-slide-copy{
    min-height:238px!important;
    height:238px!important;
    overflow:visible;
    display:grid;
    grid-template-rows:auto auto minmax(0,1fr) auto;
    align-content:start;
  }
  .approach-slide-copy h3{min-height:2.36em}
  .approach-slide-body{align-self:start}
  .approach-slider-nav{align-self:end}
}
@media (max-width:820px){
  .approach-frosted-card{min-height:0!important;display:block!important}
  .approach-slide-copy{height:auto!important;min-height:292px!important}
}

/* TASK 3 — Preserve the entire meaningful map layer and reserve a real map safe zone. */
.locations-showcase-section{
  position:relative!important;
  isolation:isolate;
  min-height:100svh!important;
  background:#efe5cd!important;
}
.locations-showcase-section::before{
  content:"";
  position:absolute;
  z-index:0;
  inset:0;
  pointer-events:none;
  background-image:url("assets/site/locations-antique-map-v10.webp");
  background-repeat:no-repeat;
  background-position:left center;
  background-size:100% auto;
}
.locations-showcase-section::after{
  z-index:0!important;
  background:linear-gradient(90deg,rgba(246,238,218,.00) 0 34%,rgba(246,238,218,.035) 47%,rgba(246,238,218,.12) 100%)!important;
}
.locations-showcase-inner{
  z-index:1!important;
  width:min(1760px,calc(100% - 72px));
  max-width:none!important;
  padding-top:clamp(96px,9vh,136px)!important;
  padding-bottom:clamp(70px,8vh,108px)!important;
}
.locations-showcase-heading{
  width:62%!important;
  margin-left:38%!important;
  padding-left:clamp(24px,2.2vw,42px);
  text-align:center;
}
.facility-showcase-grid{
  width:62%!important;
  margin:clamp(34px,4.5vh,50px) 0 0 38%!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-auto-rows:1fr;
  gap:clamp(12px,1.2vw,20px)!important;
  align-items:stretch;
}
.facility-showcase-card{
  min-width:0;
  height:100%!important;
  min-height:430px;
  display:grid!important;
  grid-template-rows:clamp(148px,18vh,210px) minmax(0,1fr)!important;
  background:rgba(248,245,236,.76)!important;
  border:1px solid rgba(157,126,64,.18)!important;
  box-shadow:0 18px 50px rgba(49,40,25,.10)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
  border-radius:0!important;
  overflow:hidden;
}
.facility-showcase-card:hover{
  transform:translateY(-3px)!important;
  box-shadow:0 21px 46px rgba(49,40,25,.12)!important;
}
.facility-showcase-card img,
.facility-showcase-card:last-child img{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  aspect-ratio:auto!important;
  object-fit:cover!important;
}
.facility-showcase-card:nth-child(1) img{object-position:50% 49%!important}
.facility-showcase-card:nth-child(2) img{object-position:50% 50%!important}
.facility-showcase-card:nth-child(3) img{object-position:50% 48%!important}
.facility-showcase-copy{
  min-height:0!important;
  height:100%;
  padding:clamp(17px,1.45vw,24px)!important;
  display:grid;
  grid-template-rows:auto minmax(2.1em,auto) auto minmax(4.7em,1fr) auto;
  align-content:start;
}
.facility-showcase-copy h3{
  min-height:2.1em;
  margin:8px 0 10px!important;
  font-size:clamp(23px,1.6vw,31px)!important;
}
.facility-showcase-copy i{margin-bottom:12px!important}
.facility-showcase-copy p{
  min-height:4.7em!important;
  margin:0 0 16px!important;
  font-size:11.5px!important;
}
.facility-showcase-copy span{
  align-self:end;
  justify-self:start;
}

/* Common laptop widths: preserve map safe zone before giving card area more space. */
@media (max-width:1320px) and (min-width:1051px){
  .locations-showcase-inner{width:min(1280px,calc(100% - 44px))}
  .locations-showcase-heading{width:64%!important;margin-left:36%!important;padding-left:22px}
  .facility-showcase-grid{width:64%!important;margin-left:36%!important;gap:11px!important}
  .facility-showcase-card{min-height:410px;grid-template-rows:145px minmax(0,1fr)!important}
  .facility-showcase-copy{padding:16px!important}
  .facility-showcase-copy h3{font-size:23px!important}
  .facility-showcase-copy p{font-size:11px!important}
}

/* Tablet: deliberately recompose instead of covering the geographic story. */
@media (max-width:1050px){
  .locations-showcase-section{min-height:auto!important}
  .locations-showcase-section::before{
    inset:150px 0 auto 0;
    height:min(62vw,560px);
    background-size:100% auto;
    background-position:left center;
  }
  .locations-showcase-section::after{background:rgba(246,238,218,.08)!important}
  .locations-showcase-inner{width:min(920px,calc(100% - 40px));padding-top:92px!important}
  .locations-showcase-heading{width:100%!important;margin:0!important;padding:0!important}
  .facility-showcase-grid{
    width:100%!important;
    margin:clamp(320px,51vw,520px) 0 0!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  .facility-showcase-card{min-height:390px;grid-template-rows:150px 1fr!important}
}

@media (max-width:760px){
  .locations-showcase-section::before{
    inset:155px 0 auto 0;
    height:56vw;
    background-size:100% auto;
  }
  .locations-showcase-inner{width:calc(100% - 32px)!important;padding-top:84px!important;padding-bottom:72px!important}
  .locations-showcase-heading h2{font-size:clamp(42px,11vw,56px)!important}
  .facility-showcase-grid{
    margin-top:calc(56vw + 42px)!important;
    grid-template-columns:1fr!important;
    gap:18px!important;
  }
  .facility-showcase-card,
  .facility-showcase-card:last-child{
    min-height:0!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:minmax(205px,55vw) auto!important;
  }
  .facility-showcase-copy{padding:22px!important;grid-template-rows:auto auto auto auto auto}
  .facility-showcase-copy h3{min-height:0;font-size:30px!important}
  .facility-showcase-copy p{min-height:0!important;font-size:13px!important}
}

/* ========================================================================== 
   V26 — unified premium detail-page system
   Homepage composition / approved Products section / History & Heritage remain intact.
   ========================================================================== */
:root{
  --type-detail-h1:clamp(46px,4.35vw,72px);
  --type-section-h2:clamp(36px,3.1vw,54px);
  --type-editorial-h2:clamp(30px,2.45vw,44px);
  --type-feature-h3:clamp(23px,1.7vw,32px);
  --detail-panel:rgba(12,39,31,.88);
  --detail-panel-soft:rgba(20,42,35,.84);
}

/* Global detail-page typography: the homepage Hero remains the site-wide peak. */
body:not(.route-home) .page-hero-content h1,
.detail-hero h1,
.editorial-detail-hero h1,
.article-editorial-header h1,
.auth-page h1,
.inquiry-page h1{font-size:var(--type-detail-h1)!important;line-height:.98!important;letter-spacing:-.038em!important}
body:not(.route-home) .section-heading h2,
body:not(.route-home) .detail-story-grid h2,
body:not(.route-home) .contact-inner h2,
body:not(.route-home) .article-promo h2{font-size:var(--type-section-h2)!important;line-height:1.02!important;letter-spacing:-.03em!important}
body:not(.route-home) h3{line-height:1.14}
body:not(.route-home) .page-hero{min-height:70svh}
body:not(.route-home) .page-hero-content{max-width:790px;padding-top:calc(var(--header-closed) + 58px);padding-bottom:62px}
body:not(.route-home) .page-hero-content>p:last-of-type{max-width:690px;font-size:clamp(16px,1.15vw,19px);line-height:1.65}
.section-heading-left{max-width:900px;margin-left:0;text-align:left}
.section-heading-left p:last-child:not(.eyebrow){margin-left:0}
.section-intro{max-width:720px;color:var(--muted);font-size:16px;line-height:1.75}

/* TEMPLATE A — CINEMATIC DETAIL */
.detail-hero{position:relative;min-height:76svh;isolation:isolate;display:grid;align-items:center;overflow:hidden;background:var(--brand-dark)}
.detail-hero::before{content:"";position:absolute;inset:0;z-index:-3;background-image:var(--detail-hero-image);background-position:center;background-size:cover;transform:scale(1.008)}
.detail-hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(3,20,15,.58) 0%,rgba(3,20,15,.22) 50%,rgba(3,20,15,.10) 100%),linear-gradient(180deg,rgba(2,11,8,.12),rgba(2,11,8,.28))}
.detail-hero-shell{display:flex;align-items:center;min-height:76svh;padding-top:calc(var(--header-closed) + 38px);padding-bottom:70px}
.translucent-story-panel{width:min(650px,47vw);padding:clamp(34px,3.4vw,54px);color:#f8f4ea;background:var(--detail-panel);border:1px solid rgba(238,229,203,.16);box-shadow:0 24px 68px rgba(0,0,0,.19);backdrop-filter:blur(7px) saturate(.9);-webkit-backdrop-filter:blur(7px) saturate(.9)}
.translucent-story-panel h1{max-width:600px;margin:0;color:#f8f4ea;font:400 var(--type-detail-h1)/.98 var(--serif)}
.detail-hero-dek{max-width:600px;margin:24px 0 0;color:rgba(248,244,234,.82);font-size:clamp(16px,1.08vw,19px);line-height:1.65}
.detail-hero-cta{min-height:50px;margin-top:28px;padding:0 22px;border:1px solid rgba(201,169,82,.55);color:#f3e4b8;background:rgba(43,89,68,.58);cursor:pointer;text-transform:uppercase;letter-spacing:.13em;font-size:10px;font-weight:700;transition:background .25s ease,transform .25s ease}
.detail-hero-cta:hover{background:rgba(54,95,77,.78);transform:translateY(-2px)}
.locations-cinematic-hero::before{background-position:center 48%}
.facility-cinematic-hero::before{background-position:center 52%}
.catalog-detail-hero::before{background-position:center 56%}
.inside-cinematic-hero::before{background-position:center 50%}
.packaging-cinematic-hero::before{background-position:center 52%}

/* TEMPLATE B — EDITORIAL DETAIL */
.editorial-detail-hero{padding:calc(var(--header-closed) + 76px) 0 clamp(72px,8vw,120px);background:var(--paper);overflow:hidden}
.editorial-detail-hero-grid{display:grid;grid-template-columns:minmax(0,.78fr) minmax(440px,1.22fr);gap:clamp(55px,7vw,120px);align-items:center}
.editorial-detail-hero-copy{max-width:700px;padding-left:clamp(0px,2vw,28px)}
.editorial-detail-hero-copy h1{margin:0;font:400 var(--type-detail-h1)/.98 var(--serif);color:var(--brand-dark)}
.editorial-detail-hero-copy>p:last-child{max-width:620px;margin:26px 0 0;color:var(--muted);font-size:17px;line-height:1.72}
.editorial-detail-hero-image{margin:0;min-height:clamp(400px,44vw,680px);overflow:hidden}
.editorial-detail-hero-image img{width:100%;height:100%;min-height:inherit;object-fit:cover}
.news-editorial-hero .editorial-detail-hero-image img{object-position:center 40%}
.group-editorial-hero .editorial-detail-hero-image img{object-position:center 52%}
.people-editorial-hero .editorial-detail-hero-image img{object-position:center 43%}
.mission-editorial-hero .editorial-detail-hero-image img{object-position:center 54%}

.editorial-image-split{background:#f8f4ea}
.editorial-image-split:nth-of-type(even){background:#f2ecdf}
.editorial-image-split-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);gap:clamp(50px,7vw,120px);align-items:center}
.editorial-image-split.is-reverse .editorial-image-split-media{order:2}
.editorial-image-split-media{margin:0;min-height:clamp(440px,48vw,720px);overflow:hidden}
.editorial-image-split-media img{width:100%;height:100%;min-height:inherit;object-fit:cover}
.editorial-image-split-copy{max-width:660px}
.editorial-image-split-copy h2{margin:0 0 24px;font:400 var(--type-section-h2)/1.03 var(--serif);letter-spacing:-.03em;color:var(--brand-dark)}
.editorial-image-split-copy>p{margin:0 0 20px;color:var(--muted);font-size:16px;line-height:1.78}
.editorial-note{padding-top:22px;border-top:1px solid var(--line);font-size:13px!important}
.editorial-pullquote{margin-top:30px!important;padding:25px 0 0;border-top:1px solid rgba(190,160,82,.5);color:var(--brand-deep)!important;font:400 21px/1.55 var(--serif)!important}
.editorial-link-list{display:flex;flex-wrap:wrap;gap:18px 28px;margin-top:30px}

/* ABOUT editorial systems */
.mission-editorial{background:var(--paper)}
.mission-editorial-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.mission-editorial-grid article{position:relative;min-height:320px;padding:clamp(34px,4vw,60px);border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.mission-editorial-grid article>span{position:absolute;right:32px;top:28px;color:rgba(20,61,49,.14);font:400 76px/1 var(--serif)}
.mission-editorial-grid h2{max-width:470px;margin:0 0 18px;font:400 var(--type-editorial-h2)/1.04 var(--serif);color:var(--brand-dark)}
.mission-editorial-grid article>p:last-child{max-width:530px;color:var(--muted);font-size:15px;line-height:1.75}
.group-editorial-profiles{background:#f2ecdf}
.group-editorial-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line)}
.group-editorial-grid article{padding:clamp(38px,4vw,64px);background:var(--paper)}
.group-editorial-grid h2{margin:14px 0 16px;font:400 var(--type-editorial-h2)/1.04 var(--serif)}
.group-editorial-grid article>p:last-of-type{color:var(--muted);line-height:1.7}
.group-logo-frame{height:108px;margin-bottom:32px;display:flex;align-items:center;justify-content:flex-start;background:transparent!important;border:0!important}
.group-logo-frame img{max-width:250px;max-height:88px;object-fit:contain;filter:none!important}
.expertise-editorial-list{background:var(--paper)}
.expertise-editorial-rows{border-top:1px solid var(--line)}
.expertise-editorial-rows article{display:grid;grid-template-columns:82px minmax(260px,.48fr) minmax(0,1fr);gap:clamp(25px,4vw,70px);align-items:start;padding:30px 0;border-bottom:1px solid var(--line)}
.expertise-editorial-rows span{color:var(--gold);font:400 31px/1 var(--serif)}
.expertise-editorial-rows h3{margin:0;font:400 var(--type-feature-h3)/1.1 var(--serif)}
.expertise-editorial-rows p{max-width:650px;margin:0;color:var(--muted);font-size:15px;line-height:1.7}
.large-photo-break{position:relative;min-height:72svh;overflow:hidden;color:#fff;background:var(--brand-dark)}
.large-photo-break img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.large-photo-break::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 36%,rgba(4,24,18,.68))}
.large-photo-break>div{position:absolute;z-index:1;left:max(7vw,48px);bottom:max(8vw,70px);max-width:720px}
.large-photo-break h2{margin:0;color:#fff;font:400 var(--type-section-h2)/1 var(--serif)}

/* TEMPLATE C — OPERATIONAL DETAIL */
.operational-detail{background:var(--paper)}
.operational-detail-grid{display:grid;grid-template-columns:minmax(360px,.82fr) minmax(0,1.18fr);gap:clamp(50px,7vw,110px);align-items:center}
.operational-copy h2{max-width:580px;margin:0 0 24px;font:400 var(--type-section-h2)/1.02 var(--serif)}
.operational-copy>p{max-width:630px;color:var(--muted);font-size:16px;line-height:1.76}
.operational-photo{margin:0;min-height:520px;overflow:hidden}
.operational-photo img{width:100%;height:100%;min-height:inherit;object-fit:cover}

/* Locations index */
.location-editorial-index{background:var(--paper)}
.location-editorial-cards{display:grid;gap:clamp(52px,6vw,92px)}
.location-editorial-card{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(360px,.72fr);gap:clamp(42px,6vw,90px);align-items:center;cursor:pointer}
.location-editorial-card:nth-child(even) figure{order:2}
.location-editorial-card figure{margin:0;min-height:500px;overflow:hidden;background:#ddd}
.location-editorial-card figure img{width:100%;height:100%;min-height:inherit;object-fit:cover;transition:transform .6s cubic-bezier(.22,1,.36,1)}
.location-editorial-card:hover figure img{transform:scale(1.018)}
.location-editorial-card>div{max-width:570px}
.location-editorial-card small{color:var(--gold);text-transform:uppercase;letter-spacing:.16em;font-size:10px;font-weight:700}
.location-editorial-card h3{margin:15px 0 20px;font:400 var(--type-section-h2)/1 var(--serif)}
.location-editorial-card p{color:var(--muted);font-size:16px;line-height:1.72}
.location-editorial-card span{display:inline-block;margin-top:14px;padding-bottom:7px;border-bottom:1px solid var(--brand-green);color:var(--brand-green);text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:700}

/* Individual facility pages */
.location-role-section{background:var(--paper)}
.location-role-grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(48px,7vw,112px);align-items:center}
.location-role-copy h2{margin:12px 0 24px;font:400 var(--type-section-h2)/1.02 var(--serif)}
.location-role-copy>p{color:var(--muted);font-size:16px;line-height:1.76}
.location-role-columns{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:36px;padding-top:28px;border-top:1px solid var(--line)}
.location-role-columns small{display:block;margin-bottom:10px;color:var(--gold);text-transform:uppercase;letter-spacing:.15em;font-size:10px;font-weight:700}
.location-role-columns p{margin:0;color:var(--muted);font-size:14px;line-height:1.7}
.location-role-photo{margin:0;min-height:590px;overflow:hidden}
.location-role-photo img{width:100%;height:100%;min-height:inherit;object-fit:cover}
.hq-badge{display:inline-block;margin-bottom:24px;padding:9px 13px;border:1px solid rgba(190,160,82,.55);color:var(--brand-deep);text-transform:uppercase;letter-spacing:.13em;font-size:9px;font-weight:700}
.location-capability-strip{padding:46px 0;background:var(--brand-dark);color:#fff}
.location-capability-strip .page-shell>div{display:flex;flex-wrap:wrap;gap:10px 28px;margin:8px 0 16px}
.location-capability-strip .page-shell>div span{position:relative;padding-right:28px;color:#f6f1e5;font:400 19px/1.3 var(--serif)}
.location-capability-strip .page-shell>div span:not(:last-child)::after{content:"";position:absolute;right:0;top:50%;width:1px;height:18px;background:rgba(255,255,255,.20);transform:translateY(-50%)}
.location-capability-strip small{color:rgba(255,255,255,.58);font-size:11px;line-height:1.6}
.operational-machinery{background:#f2ecdf}
.operational-machinery .machine-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line)}
.operational-machinery .machine-card{min-height:0!important;padding:0!important;background:var(--paper)!important;box-shadow:none!important;border:0!important}
.operational-machinery .machine-card>span{padding:28px 0 0 28px;color:var(--gold);font:400 20px var(--serif)}
.operational-machinery .machine-card-body{padding:20px clamp(28px,3vw,46px) 38px}
.operational-machinery .machine-card h3{font-size:clamp(25px,2vw,34px)!important}
.operational-machinery .machine-icon{width:110px;height:70px;object-fit:contain;background:transparent!important;filter:none!important;box-shadow:none!important}
.location-gallery-section{background:var(--paper)}
.location-gallery-real{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.location-gallery-real figure{position:relative;margin:0;min-height:340px;overflow:hidden;background:#ddd;cursor:zoom-in}
.location-gallery-real .gallery-aerial-feature{grid-column:1/-1;min-height:clamp(480px,52vw,720px)}
.location-gallery-real img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transition:transform .55s ease}
.location-gallery-real figure:hover img{transform:scale(1.015)}
.location-gallery-real figcaption{position:absolute;z-index:1;left:24px;bottom:20px;padding:8px 11px;color:#fff;background:rgba(8,33,25,.76);text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:700}

/* News editorial list */
.editorial-news-page{background:var(--paper)}
.editorial-news-page .news-list-grid{display:grid;gap:1px;background:var(--line)}
.editorial-news-page .news-list-card{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);min-height:390px;background:var(--paper);cursor:pointer}
.editorial-news-page .news-list-card img{width:100%;height:100%;min-height:390px;object-fit:cover}
.editorial-news-page .news-list-copy{padding:clamp(36px,4vw,64px)}
.editorial-news-page .news-list-copy h2{font:400 var(--type-section-h2)/1 var(--serif)}
.editorial-news-page .news-list-copy h3{font:400 22px/1.25 var(--serif);color:var(--brand-green)}
.editorial-news-page .news-list-copy p{max-width:680px;color:var(--muted);line-height:1.7}

/* Catalog detail grid — approved product photography stays exactly as packaged. */
.editorial-catalog .catalog-grid{gap:1px;background:var(--line)}
.editorial-catalog .catalog-card{background:var(--paper);box-shadow:none!important}

/* Shared commercial close */
.detail-cta{padding:clamp(72px,8vw,120px) 0;background:var(--brand-dark);color:#fff}
.detail-cta-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:50px;align-items:end}
.detail-cta h2{max-width:800px;margin:0;font:400 var(--type-section-h2)/1 var(--serif);color:#fff}
.detail-cta p:not(.eyebrow){max-width:760px;margin:20px 0 0;color:rgba(255,255,255,.69);font-size:16px;line-height:1.7}

/* Inquiry — keep function, make it feel like a restrained B2B editorial utility page. */
.inquiry-page{background:var(--paper)!important}
.inquiry-page>.page-shell{max-width:1320px;padding-top:calc(var(--header-closed) + 70px);padding-bottom:100px}
.inquiry-progress{margin-bottom:52px}
.inquiry-wizard-section h2{font:400 clamp(28px,2.2vw,38px)/1.1 var(--serif)!important}
.reason-grid,.inquiry-product-grid{gap:1px!important;background:var(--line)}
.reason-card,.inquiry-product-card{border:0!important;border-radius:0!important;background:#faf7f0!important;box-shadow:none!important}
.reason-card.selected,.inquiry-product-card.selected{outline:1px solid var(--brand-green);outline-offset:-1px;background:#f4efe4!important}
.inquiry-contact-form{max-width:920px;background:transparent!important}
.inquiry-contact-form input,.inquiry-contact-form textarea{border-radius:0!important;background:#fbf8f1!important}

/* Article typography reduced into the internal hierarchy without changing content or cover selection. */
.article-editorial-header{min-height:68svh!important;padding-top:calc(var(--header-closed) + 68px)!important}
.article-editorial-header .article-subtitle{font-size:clamp(27px,2.6vw,40px)!important;line-height:1.07!important}
.article-editorial-header .article-dek{font-size:clamp(17px,1.15vw,19px)!important}
.article-body .article-section h2{font-size:clamp(30px,2.3vw,42px)!important;line-height:1.08!important}

/* Calm motion + layout stability */
.reveal{transition-duration:.62s!important;transition-timing-function:cubic-bezier(.22,1,.36,1)!important}
.detail-hero::before,.editorial-detail-hero-image img,.editorial-image-split-media img,.operational-photo img,.location-role-photo img{aspect-ratio:auto}

@media (max-width:1100px){
  .translucent-story-panel{width:min(720px,70vw)}
  .editorial-detail-hero-grid,.editorial-image-split-grid,.operational-detail-grid,.location-role-grid{grid-template-columns:1fr;gap:46px}
  .editorial-detail-hero-copy{padding-left:0}
  .editorial-detail-hero-image,.editorial-image-split-media,.operational-photo,.location-role-photo{min-height:clamp(380px,60vw,600px)}
  .editorial-image-split.is-reverse .editorial-image-split-media{order:0}
  .location-editorial-card{grid-template-columns:1fr;gap:30px}
  .location-editorial-card:nth-child(even) figure{order:0}
  .location-editorial-card figure{min-height:clamp(380px,58vw,600px)}
  .location-role-columns{grid-template-columns:1fr}
  .operational-machinery .machine-grid{grid-template-columns:1fr}
  .mission-editorial-grid,.group-editorial-grid{grid-template-columns:1fr}
  .expertise-editorial-rows article{grid-template-columns:56px minmax(220px,.5fr) minmax(0,1fr)}
  .editorial-news-page .news-list-card{grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr)}
}

@media (max-width:760px){
  body:not(.route-home) .page-hero-content h1,.detail-hero h1,.editorial-detail-hero h1,.article-editorial-header h1,.auth-page h1,.inquiry-page h1{font-size:clamp(40px,12vw,56px)!important}
  body:not(.route-home) .section-heading h2,body:not(.route-home) .detail-story-grid h2,.detail-cta h2{font-size:clamp(34px,9.4vw,46px)!important}
  .detail-hero,.detail-hero-shell{min-height:78svh}
  .detail-hero-shell{align-items:end;padding-top:calc(var(--header-closed) + 40px);padding-bottom:28px}
  .translucent-story-panel{width:100%;padding:28px 24px;background:rgba(12,39,31,.90);backdrop-filter:blur(5px)}
  .detail-hero-dek{font-size:15px}
  .editorial-detail-hero{padding-top:calc(var(--header-closed) + 46px)}
  .editorial-detail-hero-grid{gap:34px}
  .editorial-detail-hero-image{min-height:56vw}
  .editorial-image-split,.operational-detail,.location-role-section{padding-top:70px;padding-bottom:70px}
  .editorial-image-split-media,.operational-photo,.location-role-photo{min-height:70vw}
  .mission-editorial-grid{border-left:0}
  .mission-editorial-grid article{min-height:0;border-left:0;padding:34px 0}
  .expertise-editorial-rows article{grid-template-columns:44px 1fr;gap:16px 20px}
  .expertise-editorial-rows article p{grid-column:2}
  .location-editorial-cards{gap:56px}
  .location-editorial-card figure{min-height:64vw}
  .location-capability-strip .page-shell>div{display:grid;gap:8px}
  .location-capability-strip .page-shell>div span{padding-right:0}
  .location-capability-strip .page-shell>div span::after{display:none}
  .location-gallery-real{grid-template-columns:1fr}
  .location-gallery-real .gallery-aerial-feature{grid-column:auto;min-height:68vw}
  .location-gallery-real figure{min-height:64vw}
  .editorial-news-page .news-list-card{grid-template-columns:1fr;min-height:0}
  .editorial-news-page .news-list-card img{min-height:60vw}
  .detail-cta-inner{grid-template-columns:1fr;align-items:start;gap:32px}
  .inquiry-page>.page-shell{padding-top:calc(var(--header-closed) + 46px)}
}


/* ========================================================================== 
   V27 — targeted management-review correction pass
   Approved homepage structure, Products photography, and History & Heritage
   composition remain intact.
   ========================================================================== */
:root{--brand-green:#385f4e}

/* Homepage hierarchy: HayKingdom remains the anchor; supporting promise is calmer. */
.route-home .hero h1{max-width:1040px;font-size:inherit;line-height:.96}
.route-home .hero h1>span:first-child{font:400 clamp(64px,5.95vw,98px)/.92 var(--serif);letter-spacing:-.052em}
.route-home .hero h1>span:nth-child(2),
.route-home .hero h1>span:nth-child(3){max-width:920px;font:400 clamp(48px,4.8vw,78px)/.98 var(--serif);letter-spacing:-.045em}
.route-home .section-heading h2{font-size:clamp(38px,4.05vw,64px)}

/* About Mega: roomier rows, fully visible editorial copy, no clipping. */
@media (min-width:981px){
  .about-mega-grid{grid-template-columns:minmax(310px,31%) minmax(0,1fr)!important;gap:clamp(54px,5.4vw,96px)!important;height:clamp(590px,64vh,700px)!important;min-height:590px!important}
  .about-mega-list h2{margin-bottom:36px}
  .about-mega-list nav{gap:0}
  .about-mega-list button{min-height:58px;padding:21px 8px!important;display:flex;align-items:center;width:100%;font-size:10px;line-height:1.25}
  .about-mega-list button:hover,.about-mega-list button:focus,.about-mega-list button.active{padding-left:16px!important}
  .about-mega-preview{grid-template-columns:minmax(0,1.35fr) minmax(330px,.78fr)!important;gap:clamp(38px,3.4vw,58px)!important;overflow:visible!important;align-items:center!important}
  .about-preview-copy{align-self:center!important;min-width:0;padding:24px 0!important}
  .about-preview-copy h3{min-height:0!important;max-width:13ch;margin:0 0 20px!important;font-size:clamp(36px,3.05vw,56px)!important;line-height:.98!important;letter-spacing:-.04em!important;overflow-wrap:normal;word-break:normal;hyphens:none}
  .about-preview-copy>p:not(.eyebrow){min-height:0!important;max-width:46ch;margin:0 0 27px!important;font-size:15px;line-height:1.72}
}

/* 1982 / Today: neutralize the green cast and add a discreet history destination. */
.story-today::before{background:linear-gradient(90deg,rgba(20,20,18,.76),rgba(18,18,16,.48),rgba(18,18,16,.30))!important}
.story-today .story-body,.story-today .value-list{color:rgba(255,255,255,.94)}
.story-history-link{position:absolute;z-index:2;right:clamp(34px,5vw,84px);bottom:clamp(34px,5vw,76px);display:inline-flex;padding-bottom:8px;border-bottom:1px solid rgba(217,195,130,.85);color:#e5cf91;text-transform:uppercase;letter-spacing:.13em;font-size:10px;font-weight:700;transition:transform .25s ease,color .25s ease}
.story-history-link:hover{transform:translateX(3px);color:#fff0bf}

/* Correct P6 HayKingdom green: footer and selected green surfaces. */
.footer{background:var(--brand-green)!important}
.footer::before{opacity:.055}
.catalog-detail-hero .translucent-story-panel{background:rgba(56,95,78,.68)!important;border-color:rgba(243,234,210,.18)!important;backdrop-filter:blur(8px) saturate(.92)!important;-webkit-backdrop-filter:blur(8px) saturate(.92)!important}

/* Facility galleries: photo-first editorial captions, never a solid green strip. */
.location-gallery-real figure{border:0!important;background:#d8d1c4!important}
.location-gallery-real figure::after{content:"";position:absolute;z-index:1;left:0;right:0;bottom:0;height:34%;pointer-events:none;background:linear-gradient(180deg,transparent,rgba(10,12,10,.56))}
.location-gallery-real figcaption{z-index:2!important;left:28px!important;right:24px!important;bottom:22px!important;padding:0!important;background:transparent!important;border:0!important;color:#fff!important;font:700 14px/1.25 var(--serif)!important;letter-spacing:.11em!important;text-shadow:0 2px 12px rgba(0,0,0,.48)}
.location-gallery-real .gallery-aerial-feature figcaption{font-size:16px!important}

@media (max-width:760px){
  .route-home .hero h1>span:first-child{font-size:clamp(48px,13vw,66px)}
  .route-home .hero h1>span:nth-child(2),.route-home .hero h1>span:nth-child(3){font-size:clamp(38px,10.4vw,54px)}
  .story-history-link{position:static;margin:30px 22px 42px;align-self:flex-start}
  .story-today{display:flex;flex-direction:column;align-items:stretch}
  .location-gallery-real figcaption{left:18px!important;bottom:16px!important;font-size:12px!important}
}


/* V28 — targeted simplification and consistency pass */
/* Photography-first cinematic panels: approved HK green is only a translucent tint. */
.translucent-story-panel{
  background:rgba(56,95,78,.52)!important;
  border-color:rgba(247,239,217,.20)!important;
  box-shadow:0 20px 60px rgba(0,0,0,.16)!important;
  backdrop-filter:blur(9px) saturate(.92)!important;
  -webkit-backdrop-filter:blur(9px) saturate(.92)!important;
}
.detail-hero-shade{background:linear-gradient(90deg,rgba(4,16,12,.38) 0%,rgba(4,16,12,.14) 52%,rgba(4,16,12,.05) 100%),linear-gradient(180deg,rgba(2,8,6,.08),rgba(2,8,6,.18))!important}
.catalog-detail-hero .translucent-story-panel{background:rgba(56,95,78,.50)!important}
@media(max-width:760px){.translucent-story-panel{background:rgba(56,95,78,.68)!important;backdrop-filter:blur(7px) saturate(.92)!important;-webkit-backdrop-filter:blur(7px) saturate(.92)!important}}

/* Employee Login removed from public navigation; language now occupies that visual slot. */
.nav-right .header-language{position:relative!important;left:auto!important;right:auto!important;top:auto!important;transform:none!important;margin:0!important;display:block!important}
.nav-right .language-toggle{display:flex;align-items:center;gap:3px;padding:14px 0;border:0;background:transparent;color:inherit!important;text-transform:uppercase;letter-spacing:.10em;white-space:nowrap;font-size:10px;font-weight:700;cursor:pointer;text-shadow:0 2px 10px rgba(0,0,0,.3)}
.site-header.about-open .nav-right .language-toggle{text-shadow:none}
.nav-right .language-menu{top:calc(100% + 10px);right:0}
@media(max-width:980px){.nav-right .header-language{display:none!important}}

/* Location pages: cleaner, photography-led composition. */
.location-role-section{padding-bottom:clamp(58px,6vw,96px)}
.location-gallery-expanded{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important}
.location-gallery-expanded .gallery-aerial-feature{grid-column:1/-1!important;min-height:clamp(430px,42vw,640px)!important}
.location-gallery-expanded .gallery-aerial-feature img{min-height:inherit!important}
.location-gallery-expanded figure:not(.gallery-aerial-feature){min-height:330px!important}
.location-gallery-expanded figure:not(.gallery-aerial-feature) img{min-height:330px!important}
.location-gallery-real figure::after{height:30%!important;background:linear-gradient(180deg,transparent,rgba(8,10,8,.48))!important}
.location-gallery-real figcaption{left:24px!important;right:20px!important;bottom:18px!important}
@media(max-width:1080px){.location-gallery-expanded{grid-template-columns:repeat(2,minmax(0,1fr))!important}.location-gallery-expanded .gallery-aerial-feature{grid-column:1/-1!important}}
@media(max-width:700px){.location-gallery-expanded{grid-template-columns:1fr!important}.location-gallery-expanded .gallery-aerial-feature{grid-column:auto!important;min-height:66vw!important}.location-gallery-expanded figure:not(.gallery-aerial-feature),.location-gallery-expanded figure:not(.gallery-aerial-feature) img{min-height:64vw!important}}

/* News & Insights: P5-style direct listing destination, no intermediate editorial landing hero. */
.news-primary-page{padding-top:calc(var(--header-closed) + clamp(74px,8vw,118px));min-height:100svh;background:var(--paper)}
.news-primary-page .section-heading{max-width:1100px}
.news-primary-page .section-heading h1{margin:0;color:var(--brand-dark);font:400 clamp(48px,5.3vw,78px)/.96 var(--serif);letter-spacing:-.042em}
.news-primary-page .news-grid{margin-top:clamp(52px,6vw,86px)}

/* Global Perspective: unified premium detail template. */
.global-editorial-hero .editorial-detail-hero-image{background:#e4ded1}
.global-editorial-hero .editorial-detail-hero-image img{object-fit:cover;object-position:center}
.global-photo-break{min-height:clamp(520px,63vw,820px);display:grid;align-items:end}
.global-photo-break>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.global-photo-break::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,22,16,.22),rgba(7,22,16,.03) 60%),linear-gradient(180deg,transparent 52%,rgba(5,15,11,.42))}
.global-inline-panel{position:relative;z-index:2;margin:0 0 clamp(46px,6vw,84px) clamp(28px,6vw,100px);width:min(620px,calc(100% - 56px))}
.global-inline-panel h2{margin:0;color:#fff;font:400 clamp(42px,4.5vw,68px)/.98 var(--serif);letter-spacing:-.035em}
.global-inline-panel>p:last-child{margin:20px 0 0;color:rgba(255,255,255,.84);font-size:16px;line-height:1.7}
.global-editorial-principles{background:var(--paper)}
.global-editorial-rows{border-top:1px solid var(--line)}
.global-editorial-rows article{display:grid;grid-template-columns:80px minmax(0,1fr);gap:clamp(26px,4vw,70px);padding:clamp(38px,4.5vw,68px) 0;border-bottom:1px solid var(--line)}
.global-editorial-rows article>span{color:var(--gold);font:400 24px/1 var(--serif)}
.global-editorial-rows h2{max-width:850px;margin:0;font:400 clamp(34px,3.4vw,54px)/1 var(--serif);letter-spacing:-.03em}
.global-editorial-rows article div>p:last-child{max-width:760px;color:var(--muted);font-size:16px;line-height:1.75}
@media(max-width:700px){.global-inline-panel{margin:0 20px 30px;width:calc(100% - 40px)}.global-editorial-rows article{grid-template-columns:44px 1fr}}

/* Removed public inquiry strips must not leave accidental gaps. */
.detail-cta,.location-capability-strip{display:none!important}

/* ========================================================================== 
   V29 — visual product gallery + larger location photography + group hierarchy
   Targeted pass only; approved homepage composition and product imagery preserved.
   ========================================================================== */

/* Homepage Locations: photography is now the dominant 65–75% of each card. */
.facility-showcase-card{
  min-height:440px!important;
  grid-template-rows:minmax(285px,70%) minmax(118px,30%)!important;
}
.facility-showcase-copy{
  padding:18px 22px 20px!important;
  display:grid!important;
  grid-template-rows:auto 1fr auto!important;
  align-content:start!important;
}
.facility-showcase-copy h3{
  min-height:0!important;
  margin:8px 0 14px!important;
  align-self:start;
}
.facility-showcase-copy span{
  align-self:end;
  justify-self:start;
}

@media (max-width:1320px) and (min-width:1051px){
  .facility-showcase-card{
    min-height:410px!important;
    grid-template-rows:270px 140px!important;
  }
  .facility-showcase-copy{padding:15px 16px 17px!important}
}
@media (max-width:1050px) and (min-width:761px){
  .facility-showcase-card{
    min-height:380px!important;
    grid-template-rows:250px 130px!important;
  }
  .facility-showcase-copy h3{font-size:22px!important}
}
@media (max-width:760px){
  .facility-showcase-card,
  .facility-showcase-card:last-child{
    grid-template-rows:minmax(250px,64vw) auto!important;
  }
  .facility-showcase-copy{
    padding:20px 20px 22px!important;
    grid-template-rows:auto auto auto!important;
  }
  .facility-showcase-copy h3{margin-bottom:18px!important}
}

/* Products remain the approved photo treatment, but now behave as a gallery. */
.product-photo-trigger,
.product-gallery-card{cursor:zoom-in!important}
.product-card-copy h3{margin-bottom:0!important}
.product-gallery-page{
  min-height:100svh;
  padding-top:clamp(130px,13vw,190px)!important;
  padding-bottom:clamp(90px,9vw,140px)!important;
  background:var(--paper);
}
.product-gallery-heading{max-width:760px;margin-bottom:clamp(42px,5vw,72px)}
.product-gallery-heading h1{
  margin:0 0 20px;
  color:var(--brand-dark);
  font:400 clamp(44px,4.4vw,72px)/.98 var(--serif);
  letter-spacing:-.035em;
}
.product-gallery-heading .section-intro{max-width:620px}
.product-photo-gallery{gap:1px!important;background:rgba(32,62,50,.18)!important}
.product-gallery-card{min-height:clamp(390px,34vw,560px)!important}
.product-gallery-card .catalog-card-copy h3{margin-bottom:0!important}
.product-gallery-card:focus-visible,
.product-photo-trigger:focus-visible{outline:2px solid var(--gold);outline-offset:4px}

/* Footer keeps product names as simple text rather than obsolete detail links. */
.footer-product-links span{
  display:block;
  margin:11px 0;
  color:rgba(255,255,255,.72);
  font-size:14px;
  line-height:1.35;
}

/* Our Group: ownership/context is read as a hierarchy, not a partner-logo wall. */
.group-relationship-section{background:#f2ecdf}
.group-relationship-section .section-heading{max-width:780px;margin-bottom:42px}
.group-relationship-path{
  display:grid;
  grid-template-columns:minmax(0,1fr) 110px minmax(0,1fr) 110px minmax(0,1fr);
  align-items:stretch;
  gap:0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.group-relationship-node{
  min-width:0;
  padding:clamp(30px,3vw,48px);
  color:var(--ink);
  background:rgba(250,247,240,.86);
  text-decoration:none;
}
a.group-relationship-node{transition:background .28s ease,transform .28s ease}
a.group-relationship-node:hover{background:#fffaf0;transform:translateY(-2px)}
.group-relationship-logo{
  height:84px;
  margin-bottom:26px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
}
.group-relationship-logo img{max-width:220px;max-height:78px;object-fit:contain}
.group-relationship-logo-mengniu img{max-width:190px}
.group-relationship-node>small{
  display:block;
  margin-bottom:10px;
  color:var(--gold);
  font-size:10px;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.group-relationship-node h3{
  margin:0 0 14px;
  color:var(--brand-dark);
  font:400 clamp(28px,2.2vw,38px)/1.02 var(--serif);
}
.group-relationship-node p{
  margin:0 0 18px;
  color:var(--muted);
  font-size:14px;
  line-height:1.72;
}
.group-relationship-connector{
  display:grid;
  align-content:center;
  justify-items:center;
  gap:12px;
  padding:22px 10px;
  color:#7d7258;
  background:#ece4d3;
  text-align:center;
}
.group-relationship-connector span{
  max-width:90px;
  color:#75684e;
  font-size:9px;
  font-weight:700;
  letter-spacing:.12em;
  line-height:1.45;
  text-transform:uppercase;
}
.group-relationship-connector b{color:var(--gold);font:400 30px/1 var(--serif)}
.group-logo-link,.group-logo-frame-link{display:flex!important;text-decoration:none!important}
.group-logo-frame-link{width:max-content;max-width:100%}
.mengniu-logo-frame img{max-width:210px!important;max-height:82px!important}

@media (max-width:1050px){
  .group-relationship-path{
    grid-template-columns:1fr;
  }
  .group-relationship-connector{
    min-height:82px;
    grid-template-columns:auto auto;
    justify-content:center;
  }
  .group-relationship-connector b{transform:rotate(90deg)}
  .group-relationship-node{padding:34px}
}
@media (max-width:600px){
  .product-gallery-page{padding-top:110px!important}
  .product-gallery-heading h1{font-size:44px}
  .product-gallery-card{min-height:470px!important}
  .footer-product-links span{font-size:15px}
}


/* =========================================================
   V30 — Locations balance / About spacing / Our Group editorial
   Targeted pass only. Approved homepage/product/history systems remain intact.
   ========================================================= */

/* LOCATIONS OVERVIEW — equal visual weight for all alternating facilities. */
.location-editorial-cards{
  gap:clamp(72px,7vw,116px);
}
.location-editorial-card{
  grid-template-columns:minmax(0,1.28fr) minmax(340px,.72fr);
  gap:clamp(48px,6.2vw,104px);
  min-height:clamp(520px,34vw,620px);
  align-items:center;
}
.location-editorial-card figure{
  width:100%;
  height:clamp(520px,34vw,620px);
  min-height:0;
  aspect-ratio:auto;
}
.location-editorial-card figure img{
  width:100%;
  height:100%;
  min-height:0;
  object-fit:cover;
}
.location-editorial-card>div{
  width:100%;
  max-width:560px;
  padding:clamp(26px,3vw,48px) 0;
}
.location-editorial-card h3{
  margin:17px 0 26px;
}
.location-editorial-card span{
  margin-top:0;
}

/* ABOUT MEGA MENU — longer, more open, and calmer without enlarging row labels. */
.about-mega.open{
  max-height:min(930px,calc(100vh - var(--header-closed)));
}
.about-mega-grid{
  min-height:clamp(650px,72vh,790px);
  grid-template-columns:minmax(300px,29%) minmax(0,1fr);
  gap:clamp(76px,7.2vw,132px);
  padding-top:clamp(66px,7vh,84px);
  padding-bottom:clamp(74px,8vh,96px);
  align-items:stretch;
}
.about-mega-list{
  display:flex;
  flex-direction:column;
  min-height:100%;
}
.about-mega-list h2{
  margin-bottom:48px;
}
.about-mega-list nav{
  flex:1;
  display:grid;
  grid-template-rows:repeat(5,minmax(70px,1fr));
}
.about-mega-list button{
  width:100%;
  min-height:70px;
  padding:26px 6px;
  display:flex;
  align-items:center;
}
.about-mega-preview{
  grid-template-columns:minmax(0,1.34fr) minmax(300px,.66fr);
  gap:clamp(48px,5vw,82px);
  align-items:center;
}
.about-preview-image,
.about-preview-image img{
  min-height:440px;
}
.about-preview-copy{
  padding:18px 0;
}
.about-preview-copy h3{
  max-width:12ch;
  font-size:clamp(38px,3.35vw,58px);
  line-height:.98;
}
.about-preview-copy>p:not(.eyebrow){
  max-width:36ch;
}

/* OUR GROUP — warm editorial narrative with clear ownership hierarchy and equal company profiles. */
.group-v30-intro{
  background:var(--paper);
  padding:clamp(96px,10vw,156px) 0 clamp(104px,10vw,164px);
}
.group-v30-intro-grid{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(300px,.58fr);
  gap:clamp(76px,8.5vw,150px);
  align-items:start;
}
.group-v30-intro-copy h1{
  max-width:12.5ch;
  margin:16px 0 34px;
  color:var(--ink);
  font:400 clamp(52px,5vw,78px)/.98 var(--serif);
  letter-spacing:-.04em;
}
.group-v30-intro-body{
  max-width:900px;
}
.group-v30-intro-body p{
  margin:0 0 22px;
  color:var(--muted);
  font-size:clamp(16px,1.2vw,18px);
  line-height:1.82;
}
.group-v30-intro-body strong{
  color:var(--ink);
  font-weight:600;
}
.group-v30-closing{
  max-width:820px;
  margin:44px 0 0;
  padding-top:28px;
  border-top:1px solid rgba(33,51,41,.16);
  color:var(--brand-green);
  font:400 clamp(25px,2.4vw,36px)/1.18 var(--serif);
  letter-spacing:-.02em;
}
.group-v30-relationship{
  align-self:center;
  padding:16px 0;
}
.group-v30-rel-node{
  min-height:128px;
  padding:24px 0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  color:inherit;
  text-decoration:none;
  border-top:1px solid rgba(33,51,41,.16);
  border-bottom:1px solid rgba(33,51,41,.16);
}
.group-v30-rel-node img{
  display:block;
  max-width:220px;
  max-height:66px;
  width:auto;
  height:auto;
  object-fit:contain;
  object-position:left center;
  margin:0 0 20px;
}
.group-v30-rel-hk img{
  max-width:88px;
  max-height:70px;
}
.group-v30-rel-node small{
  margin-bottom:8px;
  color:var(--gold);
  text-transform:uppercase;
  letter-spacing:.15em;
  font-size:9px;
  font-weight:700;
}
.group-v30-rel-node strong{
  color:var(--ink);
  font:400 25px/1.08 var(--serif);
}
.group-v30-rel-connector{
  padding:16px 0 15px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  color:#7b817d;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:9px;
  line-height:1.45;
}
.group-v30-rel-connector b{
  color:var(--gold);
  font-size:18px;
  font-weight:400;
}
.group-v30-companies{
  background:#f0ece1;
}
.group-v30-companies-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  border-top:1px solid rgba(33,51,41,.16);
  border-bottom:1px solid rgba(33,51,41,.16);
}
.group-v30-company{
  min-width:0;
  padding:clamp(64px,6vw,100px) clamp(28px,5vw,78px) clamp(72px,7vw,112px) 0;
  display:flex;
  flex-direction:column;
}
.group-v30-company+ .group-v30-company{
  padding-left:clamp(28px,5vw,78px);
  padding-right:0;
  border-left:1px solid rgba(33,51,41,.16);
}
.group-v30-logo-link{
  min-height:96px;
  margin:0 0 34px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  text-decoration:none;
}
.group-v30-logo-link img{
  display:block;
  max-width:min(270px,82%);
  max-height:78px;
  width:auto;
  height:auto;
  object-fit:contain;
  object-position:left center;
}
.group-v30-logo-link .group-v30-mengniu-logo{
  max-width:min(245px,80%);
  max-height:80px;
}
.group-v30-company h2{
  max-width:13ch;
  margin:16px 0 30px;
  color:var(--ink);
  font:400 clamp(39px,3.6vw,56px)/1.02 var(--serif);
  letter-spacing:-.035em;
}
.group-v30-company>p:not(.eyebrow):not(.group-v30-company-statement){
  max-width:640px;
  margin:0 0 20px;
  color:var(--muted);
  font-size:16px;
  line-height:1.8;
}
.group-v30-company strong{
  color:var(--ink);
  font-weight:600;
}
.group-v30-company-statement{
  max-width:580px;
  margin:24px 0 36px;
  padding-top:25px;
  border-top:1px solid rgba(33,51,41,.15);
  color:var(--brand-green);
  font:400 clamp(23px,2vw,31px)/1.18 var(--serif);
}
.group-v30-company-cta{
  margin-top:auto;
  align-self:flex-start;
}

@media (max-width:980px){
  .location-editorial-card{
    grid-template-columns:1fr;
    min-height:0;
    gap:30px;
  }
  .location-editorial-card:nth-child(even) figure{order:0}
  .location-editorial-card figure{
    height:auto;
    aspect-ratio:16/10;
  }
  .location-editorial-card>div{padding:0 0 10px}
  .about-mega-grid{
    min-height:620px;
    gap:52px;
  }
  .about-mega-list nav{grid-template-rows:repeat(5,minmax(64px,1fr))}
  .about-mega-list button{min-height:64px;padding:22px 4px}
  .about-mega-preview{grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);gap:38px}
  .about-preview-image,.about-preview-image img{min-height:380px}
  .group-v30-intro-grid{grid-template-columns:1fr;gap:70px}
  .group-v30-relationship{max-width:520px}
  .group-v30-companies-grid{grid-template-columns:1fr}
  .group-v30-company,
  .group-v30-company+ .group-v30-company{padding:64px 0 72px;border-left:0}
  .group-v30-company+ .group-v30-company{border-top:1px solid rgba(33,51,41,.16)}
}

@media (max-width:760px){
  .location-editorial-cards{gap:58px}
  .location-editorial-card figure{aspect-ratio:4/3}
  .group-v30-intro{padding:74px 0 84px}
  .group-v30-intro-copy h1{font-size:clamp(44px,12vw,60px)}
  .group-v30-closing{font-size:26px}
  .group-v30-company{padding:54px 0 64px}
  .group-v30-company h2{max-width:16ch;font-size:clamp(36px,10vw,48px)}
}

.group-v30-name-link{display:inline-block;align-self:flex-start;text-decoration:none}
.group-v30-name-link:hover{color:var(--brand-green)}

/* =========================================================
   V31 — Locations parity / facility overview / footer polish
   Targeted pass only. Approved homepage, products, history,
   news, brand, and footer watermark systems are preserved.
   ========================================================= */

/* 1. LOCATIONS INDEX — Imperial is a true mirrored Winters row. */
@media (min-width:981px){
  .location-editorial-card{
    --location-row-height:clamp(520px,33vw,620px);
    height:var(--location-row-height)!important;
    min-height:var(--location-row-height)!important;
    grid-template-columns:minmax(0,1.28fr) minmax(360px,.72fr)!important;
    gap:clamp(48px,6.2vw,104px)!important;
    align-items:stretch!important;
  }
  .location-editorial-card figure{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    aspect-ratio:auto!important;
    align-self:stretch!important;
  }
  .location-editorial-card figure img{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    object-fit:cover!important;
  }
  .location-editorial-card>div{
    width:100%!important;
    height:100%!important;
    max-width:560px!important;
    padding:clamp(36px,3.4vw,56px) 0!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    align-items:flex-start!important;
    box-sizing:border-box!important;
  }
  .location-editorial-card:nth-child(even) figure{order:2!important}
  .location-editorial-card:nth-child(even)>div{order:1!important}
}
@media (max-width:980px){
  .location-editorial-card{
    grid-template-columns:1fr!important;
    min-height:0!important;
    height:auto!important;
    gap:28px!important;
  }
  .location-editorial-card:nth-child(even) figure{order:0!important}
  .location-editorial-card figure{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:16/10!important;
  }
  .location-editorial-card>div{
    width:100%!important;
    max-width:none!important;
    min-height:176px!important;
    padding:4px 0 18px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    align-items:flex-start!important;
  }
}
@media (max-width:760px){
  .location-editorial-card figure{aspect-ratio:4/3!important}
  .location-editorial-card>div{min-height:158px!important}
}

/* 2. FACILITIES OVERVIEW — use more of the available width and keep all names collision-free. */
@media (min-width:1051px){
  .locations-showcase-heading{
    width:66%!important;
    margin-left:34%!important;
    padding-left:clamp(18px,1.6vw,30px)!important;
  }
  .facility-showcase-grid{
    width:66%!important;
    margin-left:34%!important;
    gap:clamp(10px,.95vw,16px)!important;
  }
  .facility-showcase-card{
    min-height:382px!important;
    grid-template-rows:clamp(220px,22vh,260px) minmax(132px,auto)!important;
  }
  .facility-showcase-copy{
    min-height:132px!important;
    padding:clamp(15px,1.25vw,21px)!important;
    display:grid!important;
    grid-template-rows:auto minmax(2.05em,auto) 1fr!important;
    align-content:start!important;
    row-gap:5px!important;
  }
  .facility-showcase-copy small{
    align-self:start!important;
  }
  .facility-showcase-copy h3{
    min-height:2.05em!important;
    max-height:2.05em!important;
    margin:4px 0 8px!important;
    font-size:clamp(21px,1.45vw,28px)!important;
    line-height:1.025!important;
    letter-spacing:-.025em!important;
    overflow:hidden!important;
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
    text-wrap:balance;
  }
  .facility-showcase-copy span{
    align-self:end!important;
    justify-self:start!important;
    margin-top:2px!important;
  }
}
@media (max-width:1320px) and (min-width:1051px){
  .locations-showcase-heading{width:68%!important;margin-left:32%!important;padding-left:18px!important}
  .facility-showcase-grid{width:68%!important;margin-left:32%!important;gap:9px!important}
  .facility-showcase-card{min-height:360px!important;grid-template-rows:210px minmax(126px,auto)!important}
  .facility-showcase-copy{min-height:126px!important;padding:14px!important}
  .facility-showcase-copy h3{font-size:21px!important}
}
@media (max-width:1050px){
  .facility-showcase-card{
    grid-template-rows:minmax(190px,31vw) minmax(128px,auto)!important;
  }
  .facility-showcase-copy{
    min-height:128px!important;
    padding:18px!important;
    display:grid!important;
    grid-template-rows:auto minmax(2.05em,auto) 1fr!important;
  }
  .facility-showcase-copy h3{
    min-height:2.05em!important;
    max-height:2.05em!important;
    margin:5px 0 8px!important;
    font-size:clamp(21px,2.2vw,27px)!important;
    line-height:1.025!important;
    overflow:hidden!important;
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
  }
  .facility-showcase-copy span{align-self:end!important;justify-self:start!important}
}
@media (max-width:760px){
  .facility-showcase-card,
  .facility-showcase-card:last-child{
    grid-template-rows:minmax(220px,58vw) auto!important;
  }
  .facility-showcase-copy{
    min-height:0!important;
    grid-template-rows:auto auto auto!important;
  }
  .facility-showcase-copy h3{
    min-height:0!important;
    max-height:none!important;
    font-size:30px!important;
  }
}

/* 3–12. FOOTER — formal corporate hierarchy and lighter navigation. */
.footer{
  background:var(--brand-green)!important;
  padding:72px 0 30px!important;
}
.footer-grid{
  grid-template-columns:minmax(260px,1.45fr) minmax(120px,.78fr) minmax(145px,.9fr) minmax(145px,.9fr) minmax(120px,.72fr)!important;
  gap:clamp(32px,3.2vw,62px)!important;
  align-items:start!important;
}
.footer-brand{
  max-width:390px!important;
}
.footer-logo{
  width:86px!important;
}
.footer-legal-name{
  display:block;
  margin-top:14px;
  color:#fff;
  font:400 20px/1.2 var(--serif);
  letter-spacing:0;
  text-transform:none;
}
.footer-pillars{
  margin-top:19px!important;
  gap:7px!important;
  color:rgba(255,255,255,.94)!important;
  font:400 16px/1.24 var(--serif)!important;
}
.footer-address{
  margin-top:23px!important;
  gap:8px!important;
  color:rgba(255,255,255,.75)!important;
  font-size:13px!important;
  line-height:1.55!important;
}
.footer-address span,
.footer-address a{
  color:rgba(255,255,255,.75)!important;
}
.footer h3{
  margin-bottom:18px!important;
}
.footer a,
.footer-link-muted{
  display:block;
  margin:10px 0;
  color:rgba(255,255,255,.78);
  font-size:14px;
  line-height:1.4;
}
.footer a:hover{color:#fff!important}
.footer-products a{font-weight:600}
.footer-bottom{
  margin-top:52px!important;
  padding-top:21px!important;
  display:grid!important;
  grid-template-columns:1fr auto 1fr!important;
  align-items:center!important;
  gap:24px!important;
}
.footer-bottom>span:nth-child(2){justify-self:center}
.footer-bottom>span:last-child{justify-self:end}

/* Explicitly retain the existing watermark system while balancing the new columns. */
.footer::before{
  right:clamp(12px,3vw,70px)!important;
  top:46%!important;
  opacity:.04!important;
}

/* Careers is intentionally a small public placeholder until the page is authored. */
.careers-placeholder{
  min-height:72svh;
  padding-top:clamp(150px,17vh,210px);
  background:var(--paper);
}
.careers-placeholder-inner{max-width:760px}
.careers-placeholder h1{
  max-width:12ch;
  margin:0 0 24px;
  color:var(--brand-dark);
  font:400 clamp(50px,5.6vw,78px)/.98 var(--serif);
  letter-spacing:-.045em;
}
.careers-placeholder p{
  max-width:620px;
  margin:0 0 30px;
  color:var(--muted);
  font-size:17px;
  line-height:1.75;
}

@media (max-width:1180px){
  .footer-grid{
    grid-template-columns:minmax(260px,1.25fr) repeat(2,minmax(150px,1fr))!important;
  }
  .footer-brand{grid-row:span 2!important}
}
@media (max-width:820px){
  .footer-grid{
    grid-template-columns:1fr 1fr!important;
    gap:36px 42px!important;
  }
  .footer-brand{
    grid-column:1/-1!important;
    grid-row:auto!important;
    max-width:430px!important;
  }
  .footer-bottom{
    grid-template-columns:1fr 1fr!important;
    row-gap:10px!important;
  }
  .footer-bottom>span:nth-child(2){justify-self:end}
  .footer-bottom>span:last-child{justify-self:start;grid-column:1/-1}
}
@media (max-width:520px){
  .footer{padding-top:58px!important}
  .footer-grid{
    grid-template-columns:1fr!important;
    gap:30px!important;
  }
  .footer-brand{grid-column:auto!important}
  .footer-bottom{
    margin-top:38px!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  .footer-bottom>span,
  .footer-bottom>span:nth-child(2),
  .footer-bottom>span:last-child{
    justify-self:start!important;
    grid-column:auto!important;
  }
  .footer::before{
    width:220px!important;
    right:-48px!important;
    top:20%!important;
  }
}

/* V31 parity correction: reverse the column proportions as well as the item order.
   This makes Imperial a true geometric mirror of Winters instead of placing its
   image inside the narrower text track. */
@media (min-width:981px){
  .location-editorial-card:nth-child(even){
    grid-template-columns:minmax(360px,.72fr) minmax(0,1.28fr)!important;
  }
  .location-editorial-card:nth-child(even)>div{
    justify-self:end!important;
  }
}


/* =========================================================
   V32 — New Hero / Imperial + Winters gallery assets / Today copy polish
   Targeted pass only.
   ========================================================= */

/* Homepage Hero: retain approved scale, add a little breathing room
   between the HayKingdom brand line and the supporting headline. */
.route-home .hero h1 > span:first-child{
  margin-bottom:clamp(10px,.82vw,16px)!important;
}

/* 1982 / Today: the introductory copy and "Still..." statements now use
   the same serif family, weight, and size for a consistent editorial voice. */
.story-today .story-body,
.story-today .value-list{
  font-family:var(--serif)!important;
  font-size:clamp(17px,1.08vw,18px)!important;
  font-weight:400!important;
  font-style:normal!important;
  letter-spacing:0!important;
}
.story-today .story-body{line-height:1.72!important}
.story-today .value-list{line-height:1.72!important}

@media (max-width:760px){
  .route-home .hero h1 > span:first-child{margin-bottom:8px!important}
  .story-today .story-body,
  .story-today .value-list{font-size:17px!important}
}


/* V33 — Gallery / Western forage post: no unrelated visual redesign. */

/* V34 — brochure packaging reference system */
.packaging-reference-section{
  background:var(--ivory,#f4f0e6);
}
.packaging-reference-section .section-heading{
  margin-bottom:clamp(34px,4vw,58px);
}
.packaging-reference-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(18px,2vw,30px);
}
.packaging-reference-card{
  min-width:0;
  background:rgba(255,255,255,.48);
  border:1px solid rgba(24,58,45,.12);
  cursor:pointer;
  transition:transform .26s ease,border-color .26s ease,background .26s ease;
}
.packaging-reference-card:hover,
.packaging-reference-card:focus-visible{
  transform:translateY(-4px);
  border-color:rgba(42,93,71,.34);
  background:rgba(255,255,255,.7);
  outline:none;
}
.packaging-reference-card figure{
  margin:0;
  aspect-ratio:4/3;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:clamp(22px,3vw,42px);
  background:linear-gradient(180deg,rgba(255,255,255,.58),rgba(246,242,232,.78));
  border-bottom:1px solid rgba(24,58,45,.1);
  overflow:hidden;
}
.packaging-reference-card img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}
.packaging-reference-copy{
  min-height:150px;
  padding:24px 25px 26px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.packaging-reference-copy small{
  margin:0 0 10px;
  color:var(--gold);
  font-size:9px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.packaging-reference-copy h3{
  margin:0;
  color:var(--brand-green);
  font-family:var(--serif);
  font-size:clamp(27px,2.1vw,38px);
  font-weight:400;
  line-height:1.02;
}
.packaging-reference-copy span{
  margin-top:auto;
  padding-top:22px;
  color:var(--brand-green);
  border-bottom:1px solid rgba(42,93,71,.55);
  font-size:9px;
  font-weight:700;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.packaging-overview-page{
  padding-top:clamp(150px,14vw,215px);
  background:var(--ivory,#f4f0e6);
  min-height:100svh;
}
.packaging-overview-heading{
  max-width:900px;
  margin-bottom:clamp(42px,5vw,72px);
}
.packaging-overview-heading h1{
  max-width:850px;
  margin-bottom:22px;
  font-size:clamp(52px,5.1vw,78px);
  line-height:.98;
}
.packaging-detail-page{
  padding-top:clamp(150px,14vw,215px);
  padding-bottom:clamp(90px,9vw,150px);
  background:var(--ivory,#f4f0e6);
  min-height:100svh;
}
.packaging-detail-grid{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
  gap:clamp(48px,7vw,110px);
  align-items:center;
}
.packaging-detail-visual{
  margin:0;
  min-height:clamp(500px,48vw,720px);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:clamp(44px,6vw,90px);
  background:rgba(255,255,255,.56);
  border:1px solid rgba(24,58,45,.12);
}
.packaging-detail-visual img{
  width:100%;
  height:100%;
  max-height:560px;
  object-fit:contain;
}
.packaging-detail-copy{
  max-width:570px;
}
.packaging-detail-copy h1{
  margin:0 0 26px;
  color:var(--brand-green);
  font-family:var(--serif);
  font-size:clamp(58px,5vw,82px);
  font-weight:400;
  line-height:.96;
}
.packaging-detail-copy > p:not(.eyebrow){
  margin:0;
  color:#56615b;
  font-size:clamp(17px,1.25vw,20px);
  line-height:1.75;
}
.packaging-back-link{
  display:inline-block;
  margin-top:34px;
}
@media(max-width:1050px){
  .packaging-reference-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .packaging-detail-grid{grid-template-columns:1fr;gap:42px;}
  .packaging-detail-visual{min-height:460px;}
  .packaging-detail-copy{max-width:760px;}
}
@media(max-width:650px){
  .packaging-reference-grid{grid-template-columns:1fr;gap:16px;}
  .packaging-reference-card figure{aspect-ratio:5/3;padding:28px 38px;}
  .packaging-reference-copy{min-height:128px;padding:20px 21px 22px;}
  .packaging-reference-copy h3{font-size:30px;}
  .packaging-overview-page,.packaging-detail-page{padding-top:120px;}
  .packaging-overview-heading h1{font-size:clamp(44px,13vw,60px);}
  .packaging-detail-visual{min-height:330px;padding:34px 24px;}
  .packaging-detail-copy h1{font-size:clamp(48px,14vw,64px);}
}


/* =========================================================
   V35 — Short homepage / Contact relocation / Mission relocation
   Structural simplification only; approved visual systems preserved.
   ========================================================= */

/* Header stays truly centered with an intentionally asymmetric 3-left / 2-right nav. */
@media (min-width:981px){
  .header-inner{grid-template-columns:minmax(0,1fr) 122px minmax(0,1fr)!important;column-gap:clamp(28px,3vw,54px)!important}
  .nav-left{justify-content:flex-start!important;padding-right:clamp(0px,1.1vw,18px)}
  .nav-right{justify-content:flex-end!important;padding-left:clamp(0px,1.1vw,18px)}
}

/* Keep current Hero composition, but give the brand line and delivery line a more disciplined hierarchy. */
.route-home .hero h1{max-width:1040px}
.route-home .hero .hero-brand-line{margin-bottom:clamp(12px,1.1vw,18px)}
.route-home .hero .hero-delivery-line{max-width:13.5ch;font-size:.78em;line-height:1.01;letter-spacing:-.043em}

/* The homepage is intentionally only Hero + one concise company introduction + Footer. */
.home-company-intro{background:var(--paper);padding:clamp(82px,9vw,138px) 0}
.home-company-intro-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(360px,.7fr);gap:clamp(70px,8vw,138px);align-items:end}
.home-company-intro-copy{max-width:860px}
.home-company-intro-copy h2{max-width:14ch;margin:0 0 30px;color:var(--brand-dark);font:400 clamp(48px,5vw,74px)/.98 var(--serif);letter-spacing:-.045em}
.home-company-intro-copy>p:not(.eyebrow){max-width:760px;margin:0;color:var(--muted);font-size:clamp(17px,1.2vw,20px);line-height:1.78}
.home-intro-links{margin-top:38px;display:flex;flex-wrap:wrap;gap:22px 34px}
.home-company-intro-facts{display:grid;border-top:1px solid var(--line)}
.home-company-intro-facts>div{padding:24px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:minmax(110px,.7fr) 1fr;align-items:baseline;gap:22px}
.home-company-intro-facts strong{color:var(--brand-dark);font:400 clamp(31px,3vw,46px)/1 var(--serif)}
.home-company-intro-facts span{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:700}

/* Dedicated Contact page reuses the approved homepage Contact section at page scale. */
.contact-page-hero{min-height:100svh;padding-top:var(--header-closed)}
.contact-page-hero .contact-glass-panel h1{max-width:590px;margin:0 0 26px;color:#f6f1e7;font:400 clamp(64px,5.25vw,86px)/.97 var(--serif);letter-spacing:-.045em;text-wrap:balance}

/* Mission page now owns the existing Right Hay / Right Quality / Right Price component. */
.mission-approach-section{margin:0}

/* Footer tagline removed; social links are understated and accessible. */
.footer-socials{display:flex;gap:12px;margin-top:24px}
.footer-socials a{width:36px;height:36px;margin:0!important;border:1px solid rgba(255,255,255,.28);display:grid;place-items:center;color:rgba(255,255,255,.82);transition:color .25s ease,border-color .25s ease,transform .25s ease}
.footer-socials a:hover,.footer-socials a:focus-visible{color:#fff!important;border-color:rgba(255,255,255,.72);transform:translateY(-2px);outline:none}
.footer-socials svg{width:18px;height:18px;fill:currentColor}

@media (max-width:980px){
  .home-company-intro-grid{grid-template-columns:1fr;gap:58px}
  .home-company-intro-facts{max-width:720px}
}
@media (max-width:760px){
  .route-home .hero .hero-delivery-line{max-width:12.5ch;font-size:.78em}
  .home-company-intro{padding:68px 0 76px}
  .home-company-intro-copy h2{font-size:clamp(42px,11vw,58px)}
  .home-intro-links{display:grid;gap:18px;justify-items:start}
  .home-company-intro-facts>div{grid-template-columns:1fr;gap:8px}
  .contact-page-hero .contact-glass-panel h1{font-size:clamp(48px,12vw,64px)}
}

/* =========================================================
   V36 — Facilities simplification / useful information first
   ========================================================= */

/* Facilities landing: no marketing hero, immediate facility choice. */
.facilities-index-simple{
  min-height:calc(100svh - var(--header-closed));
  padding-top:calc(var(--header-closed) + clamp(58px,7vw,104px));
  padding-bottom:clamp(80px,9vw,140px);
  background:var(--paper);
}
.facilities-index-simple h1{
  max-width:900px;
  margin:0 0 clamp(36px,4.5vw,66px);
  color:var(--brand-dark);
  font:400 var(--type-detail-h1)/.98 var(--serif);
  letter-spacing:-.035em;
}
.facilities-simple-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(18px,2vw,30px);
}
.facilities-simple-card{
  min-width:0;
  background:#f6f1e6;
  cursor:pointer;
  border-top:1px solid rgba(34,64,51,.14);
  transition:transform .28s ease,box-shadow .28s ease;
}
.facilities-simple-card:hover,
.facilities-simple-card:focus-visible{
  transform:translateY(-3px);
  box-shadow:0 20px 42px rgba(39,48,40,.10);
  outline:none;
}
.facilities-simple-card figure{
  margin:0;
  aspect-ratio:16/10;
  overflow:hidden;
  background:#d9d4c9;
}
.facilities-simple-card img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .55s cubic-bezier(.22,1,.36,1);
}
.facilities-simple-card:hover img{transform:scale(1.018)}
.facilities-simple-copy{
  min-height:150px;
  padding:clamp(22px,2.1vw,32px);
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.facilities-simple-copy h2{
  margin:0;
  color:var(--brand-dark);
  font:400 clamp(28px,2.15vw,39px)/1.04 var(--serif);
  letter-spacing:-.025em;
}
.facilities-simple-copy span{
  display:inline-block;
  margin-top:auto;
  padding-top:26px;
  padding-bottom:6px;
  border-bottom:1px solid var(--brand-green);
  color:var(--brand-green);
  text-transform:uppercase;
  letter-spacing:.13em;
  font-size:10px;
  font-weight:700;
}

/* Individual facility hero: image first, title only, light/translucent panel. */
.facility-cinematic-hero-minimal .detail-hero-shell{
  min-height:72svh;
}
.facility-cinematic-hero-minimal .translucent-story-panel{
  width:min(590px,43vw)!important;
  padding:clamp(28px,2.8vw,44px)!important;
  background:rgba(56,95,78,.25)!important;
  border-color:rgba(247,239,217,.18)!important;
  box-shadow:0 18px 52px rgba(0,0,0,.12)!important;
  backdrop-filter:blur(4px) saturate(.96)!important;
  -webkit-backdrop-filter:blur(4px) saturate(.96)!important;
}
.facility-cinematic-hero-minimal .translucent-story-panel h1{
  max-width:540px;
  margin:0;
  font-size:clamp(52px,5vw,78px);
  line-height:.96;
}
.facility-cinematic-hero-minimal .detail-hero-shade{
  background:linear-gradient(90deg,rgba(3,18,13,.20) 0%,rgba(3,18,13,.07) 52%,rgba(3,18,13,.02) 100%),linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.12))!important;
}

/* Facility facts: only three customer-useful categories. */
.facility-facts-section{
  background:var(--paper);
  padding-top:clamp(70px,7vw,112px);
  padding-bottom:clamp(70px,7vw,112px);
}
.facility-facts-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.facility-fact{
  min-width:0;
  padding:clamp(30px,3.5vw,52px) clamp(24px,3vw,48px);
}
.facility-fact + .facility-fact{border-left:1px solid var(--line)}
.facility-fact h2{
  margin:0 0 24px;
  color:var(--gold);
  text-transform:uppercase;
  letter-spacing:.16em;
  font:700 11px/1.3 var(--sans);
}
.facility-fact ul{
  margin:0;
  padding:0;
  list-style:none;
  display:grid;
  gap:11px;
}
.facility-fact li{
  color:var(--brand-dark);
  font:400 clamp(20px,1.65vw,28px)/1.2 var(--serif);
}

/* Shared compact section headings on facility pages. */
.facility-section-heading{
  margin-bottom:clamp(30px,3.6vw,52px);
}
.facility-section-heading h2{
  margin:0;
  color:var(--brand-dark);
  font:400 var(--type-section-h2)/1 var(--serif);
  letter-spacing:-.03em;
}

/* Press machines: name + icon only. */
.facility-machinery-minimal{
  background:#f2ecdf;
  padding-top:clamp(72px,7vw,112px);
  padding-bottom:clamp(72px,7vw,112px);
}
.facility-machinery-minimal .machine-grid-minimal{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1px;
  background:var(--line);
  border:1px solid var(--line);
}
.facility-machinery-minimal .machine-card-minimal{
  min-height:0!important;
  padding:0!important;
  background:var(--paper)!important;
  border:0!important;
  box-shadow:none!important;
}
.facility-machinery-minimal .machine-card-minimal .machine-card-body{
  padding:clamp(28px,3vw,44px)!important;
}
.facility-machinery-minimal .machine-card-minimal .machine-card-head{
  min-height:104px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
}
.facility-machinery-minimal .machine-card-minimal h3{
  max-width:520px;
  margin:0;
  color:var(--brand-dark);
  font:400 clamp(26px,2.25vw,38px)/1.03 var(--serif)!important;
  letter-spacing:-.025em;
}
.facility-machinery-minimal .machine-card-minimal .machine-icon{
  flex:0 0 auto;
  width:110px!important;
  height:72px!important;
  object-fit:contain!important;
  background:transparent!important;
  box-shadow:none!important;
  filter:none!important;
}

/* Photo gallery: one useful heading, then photography. */
.facility-gallery-minimal{
  background:var(--paper);
  padding-top:clamp(72px,7vw,112px);
}
.facility-gallery-minimal .facility-section-heading{
  margin-bottom:clamp(34px,4vw,58px);
}

@media(max-width:1080px){
  .facilities-simple-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .facilities-simple-card:last-child{grid-column:1/-1;width:calc(50% - 10px);justify-self:center}
  .facility-cinematic-hero-minimal .translucent-story-panel{width:min(650px,62vw)!important}
  .facility-fact li{font-size:clamp(20px,2.4vw,27px)}
}

@media(max-width:760px){
  .facilities-index-simple{padding-top:calc(var(--header-closed) + 42px);padding-bottom:72px}
  .facilities-index-simple h1{font-size:clamp(44px,12vw,62px);margin-bottom:32px}
  .facilities-simple-grid{grid-template-columns:1fr;gap:20px}
  .facilities-simple-card:last-child{grid-column:auto;width:100%}
  .facilities-simple-card figure{aspect-ratio:16/10}
  .facilities-simple-copy{min-height:128px;padding:22px}
  .facilities-simple-copy h2{font-size:clamp(29px,8vw,38px)}

  .facility-cinematic-hero-minimal .detail-hero-shell{min-height:74svh;align-items:end;padding-bottom:26px}
  .facility-cinematic-hero-minimal .translucent-story-panel{
    width:100%!important;
    padding:25px 22px!important;
    background:rgba(56,95,78,.38)!important;
    backdrop-filter:blur(4px) saturate(.96)!important;
    -webkit-backdrop-filter:blur(4px) saturate(.96)!important;
  }
  .facility-cinematic-hero-minimal .translucent-story-panel h1{font-size:clamp(43px,12vw,60px)}

  .facility-facts-section{padding-top:62px;padding-bottom:62px}
  .facility-facts-grid{grid-template-columns:1fr}
  .facility-fact{padding:28px 4px}
  .facility-fact + .facility-fact{border-left:0;border-top:1px solid var(--line)}
  .facility-fact h2{margin-bottom:18px}
  .facility-fact li{font-size:24px}

  .facility-machinery-minimal .machine-grid-minimal{grid-template-columns:1fr}
  .facility-machinery-minimal .machine-card-minimal .machine-card-head{min-height:84px;gap:18px}
  .facility-machinery-minimal .machine-card-minimal h3{font-size:clamp(25px,7.2vw,34px)!important}
  .facility-machinery-minimal .machine-card-minimal .machine-icon{width:92px!important;height:60px!important}
  .facility-section-heading h2{font-size:clamp(38px,10vw,52px)}
}

/* =========================================================
   V37 — Targeted corrections: alternating locations, compact
   facility opening, restored machine icons, simplified copy.
   ========================================================= */

/* LOCATIONS LANDING — restore the editorial left / right / left rhythm. */
.facilities-alternating-page{
  padding:calc(var(--header-closed) + clamp(54px,6vw,92px)) 0 clamp(86px,9vw,142px);
  background:var(--paper);
}
.facilities-alternating-shell>h1{
  margin:0 0 clamp(46px,5vw,76px);
  color:var(--brand-dark);
  font:400 var(--type-detail-h1)/.98 var(--serif);
  letter-spacing:-.038em;
}
.facilities-alternating-list{display:grid;gap:clamp(54px,6vw,92px)}
.facility-alternating-row{
  display:grid;
  grid-template-columns:minmax(0,1.38fr) minmax(300px,.62fr);
  min-height:clamp(390px,31vw,520px);
  align-items:stretch;
  background:#f6f1e6;
  border-top:1px solid rgba(34,64,51,.14);
  cursor:pointer;
  overflow:hidden;
  transition:transform .28s ease,box-shadow .28s ease;
}
.facility-alternating-row.is-reverse{grid-template-columns:minmax(300px,.62fr) minmax(0,1.38fr)}
.facility-alternating-row.is-reverse figure{order:2}
.facility-alternating-row.is-reverse .facility-alternating-copy{order:1}
.facility-alternating-row:hover,.facility-alternating-row:focus-visible{transform:translateY(-3px);box-shadow:0 22px 46px rgba(39,48,40,.09);outline:none}
.facility-alternating-row figure{margin:0;min-height:100%;overflow:hidden;background:#d7d2c7}
.facility-alternating-row img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .55s cubic-bezier(.22,1,.36,1)}
.facility-alternating-row:hover img{transform:scale(1.012)}
.facility-alternating-copy{
  padding:clamp(34px,4vw,64px);
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  min-width:0;
}
.facility-alternating-copy h2{
  max-width:11ch;
  margin:0;
  color:var(--brand-dark);
  font:400 clamp(39px,3.55vw,60px)/1.02 var(--serif);
  letter-spacing:-.035em;
  text-wrap:balance;
}
.facility-alternating-copy span{
  margin-top:clamp(32px,4vw,56px);
  padding-bottom:7px;
  border-bottom:1px solid var(--brand-green);
  color:var(--brand-green);
  text-transform:uppercase;
  letter-spacing:.13em;
  font-size:10px;
  font-weight:700;
}

/* FACILITY DETAIL — compact hero + facts should read as one opening composition. */
.facility-cinematic-hero-minimal,
.facility-cinematic-hero-minimal .detail-hero-shell{
  min-height:46svh!important;
}
.facility-cinematic-hero-minimal .detail-hero-shell{
  padding-top:calc(var(--header-closed) + 18px)!important;
  padding-bottom:24px!important;
  align-items:end!important;
}
.facility-cinematic-hero-minimal .translucent-story-panel{
  width:min(540px,40vw)!important;
  padding:clamp(22px,2.2vw,34px)!important;
  background:rgba(56,95,78,.20)!important;
  border-color:rgba(247,239,217,.16)!important;
  box-shadow:0 14px 40px rgba(0,0,0,.10)!important;
  backdrop-filter:blur(3px) saturate(.98)!important;
  -webkit-backdrop-filter:blur(3px) saturate(.98)!important;
}
.facility-cinematic-hero-minimal .translucent-story-panel h1{
  max-width:500px;
  font-size:clamp(44px,4.25vw,68px)!important;
  line-height:.97!important;
}
.facility-facts-section{
  padding-top:clamp(26px,2.8vw,40px)!important;
  padding-bottom:clamp(30px,3.2vw,46px)!important;
}
.facility-facts-grid{border-top:0!important}
.facility-fact{padding:clamp(22px,2.2vw,32px) clamp(22px,2.6vw,38px)!important}
.facility-fact h2{margin-bottom:16px!important}
.facility-fact ul{gap:7px!important}
.facility-fact li{font-size:clamp(18px,1.35vw,23px)!important}

/* PRESS MACHINES — real Hunterwood photograph, deliberately blurred and subdued. */
.facility-machinery-minimal{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:#e8e1d4!important;
}
.facility-machinery-minimal::before{
  content:"";
  position:absolute;
  inset:-26px;
  z-index:-2;
  background:url("assets/site/hunterwood-10000-section-bg.webp") center 47% / cover no-repeat;
  filter:blur(12px) saturate(.78);
  transform:scale(1.045);
  opacity:.42;
}
.facility-machinery-minimal::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:rgba(244,239,229,.78);
}
.facility-machinery-minimal .page-shell{position:relative;z-index:1}
.facility-machinery-minimal .machine-grid-minimal{
  background:rgba(77,86,78,.18)!important;
  border-color:rgba(60,72,63,.18)!important;
}
.facility-machinery-minimal .machine-card-minimal{
  background:rgba(250,247,239,.90)!important;
  backdrop-filter:blur(2px);
  -webkit-backdrop-filter:blur(2px);
}
.facility-machinery-minimal .machine-card-minimal .machine-icon{
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
}

/* PRODUCT GALLERY — only the requested single opening sentence. */
.product-gallery-page{padding-top:calc(var(--header-closed) + clamp(54px,6vw,86px))!important}
.product-gallery-heading-minimal{margin:0 0 clamp(38px,4vw,58px)}
.product-gallery-heading-minimal p{
  max-width:720px;
  margin:0;
  color:var(--brand-dark);
  font:400 clamp(20px,1.65vw,27px)/1.45 var(--serif);
}

/* HOME HERO — tagline remains clear but is intentionally subordinate to Haykingdom. */
.route-home .hero .hero-delivery-line{
  max-width:15.5ch!important;
  font-size:.66em!important;
  line-height:1.04!important;
}

/* CONTACT — preserve the container-yard visual, strip the copy down to essentials. */
.contact-page-simplified .contact-partnership-shell{align-items:center!important}
.contact-page-simplified .contact-panel-stack{width:min(720px,54vw)}
.contact-page-simplified .contact-glass-panel-simple{padding:clamp(34px,3.4vw,52px)!important}
.contact-page-simplified .contact-glass-panel-simple h1{
  margin:0;
  color:#f6f1e7;
  font:400 clamp(52px,4.6vw,74px)/.98 var(--serif);
  letter-spacing:-.04em;
}
.contact-page-simplified .contact-panel-rule{margin:28px 0 30px!important}
.contact-page-simplified .contact-primary-button{margin-top:32px!important}
.contact-page-simplified .contact-business-meta{grid-template-columns:1.55fr .85fr 1.22fr!important}

@media(max-width:980px){
  .facility-alternating-row,
  .facility-alternating-row.is-reverse{grid-template-columns:1fr 1fr;min-height:360px}
  .facility-cinematic-hero-minimal .translucent-story-panel{width:min(560px,58vw)!important}
  .contact-page-simplified .contact-panel-stack{width:min(720px,72vw)}
}

@media(max-width:760px){
  .facilities-alternating-page{padding-top:calc(var(--header-closed) + 42px);padding-bottom:72px}
  .facilities-alternating-shell>h1{font-size:clamp(44px,12vw,60px);margin-bottom:34px}
  .facilities-alternating-list{gap:28px}
  .facility-alternating-row,
  .facility-alternating-row.is-reverse{grid-template-columns:1fr;min-height:0}
  .facility-alternating-row.is-reverse figure,
  .facility-alternating-row.is-reverse .facility-alternating-copy{order:initial}
  .facility-alternating-row figure{aspect-ratio:16/10;min-height:0}
  .facility-alternating-copy{padding:25px 22px 28px}
  .facility-alternating-copy h2{max-width:none;font-size:clamp(34px,9.5vw,46px)}
  .facility-alternating-copy span{margin-top:24px}

  .facility-cinematic-hero-minimal,
  .facility-cinematic-hero-minimal .detail-hero-shell{min-height:52svh!important}
  .facility-cinematic-hero-minimal .detail-hero-shell{padding-top:calc(var(--header-closed) + 14px)!important;padding-bottom:16px!important}
  .facility-cinematic-hero-minimal .translucent-story-panel{
    width:calc(100% - 10px)!important;
    padding:20px 18px!important;
    background:rgba(56,95,78,.30)!important;
  }
  .facility-cinematic-hero-minimal .translucent-story-panel h1{font-size:clamp(39px,11vw,54px)!important}
  .facility-facts-section{padding-top:18px!important;padding-bottom:42px!important}
  .facility-fact{padding:22px 2px!important}
  .facility-fact li{font-size:22px!important}

  .facility-machinery-minimal::before{filter:blur(10px) saturate(.76);opacity:.36}

  .product-gallery-page{padding-top:calc(var(--header-closed) + 36px)!important}
  .product-gallery-heading-minimal p{font-size:21px}

  .route-home .hero .hero-delivery-line{max-width:14ch!important;font-size:.62em!important}

  .contact-page-simplified .contact-panel-stack{width:100%}
  .contact-page-simplified .contact-glass-panel-simple{padding:28px 22px!important}
  .contact-page-simplified .contact-glass-panel-simple h1{font-size:clamp(46px,12vw,58px)}
  .contact-page-simplified .contact-business-meta{grid-template-columns:1fr!important}
}


/* =========================================================
   V38 — correction pass: restore hero hierarchy, machine graphics,
   photographic machinery background, product title scale, concise
   two-layer Contact composition, and borderless footer socials.
   ========================================================= */

/* HOME HERO — the delivery promise is a true secondary hero headline,
   approximately 40–50% of the visual size of the Haykingdom brand line. */
.route-home .hero .hero-delivery-line{
  display:block!important;
  max-width:17ch!important;
  margin-top:0!important;
  font-family:var(--serif)!important;
  font-size:clamp(34px,3vw,46px)!important;
  font-weight:400!important;
  line-height:1.02!important;
  letter-spacing:-.04em!important;
}

/* PRESS MACHINES — keep the real Hunterwood 10000 photograph visible
   behind the card system. Earlier negative stacking placed it behind the
   section's own background, making it disappear. */
.facility-machinery-minimal{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  background:#ddd6ca!important;
}
.facility-machinery-minimal::before{
  z-index:0!important;
  inset:-32px!important;
  background-image:url("assets/site/hunterwood-10000-section-bg.webp")!important;
  background-position:center 47%!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
  filter:blur(11px) saturate(.78) brightness(.84)!important;
  transform:scale(1.055)!important;
  opacity:.72!important;
}
.facility-machinery-minimal::after{
  z-index:1!important;
  background:rgba(242,237,227,.58)!important;
}
.facility-machinery-minimal .page-shell{
  position:relative!important;
  z-index:2!important;
}
.facility-machinery-minimal .machine-grid-minimal{
  background:rgba(66,76,69,.20)!important;
  border-color:rgba(53,65,57,.22)!important;
}
.facility-machinery-minimal .machine-card-minimal{
  background:rgba(250,247,239,.91)!important;
  backdrop-filter:blur(3px)!important;
  -webkit-backdrop-filter:blur(3px)!important;
}
.facility-machinery-minimal .machine-card-minimal .machine-card-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  min-height:104px!important;
}
.facility-machinery-minimal .machine-card-minimal .machine-icon{
  display:block!important;
  flex:0 0 auto!important;
  width:clamp(112px,9vw,154px)!important;
  height:88px!important;
  object-fit:contain!important;
  object-position:center!important;
  opacity:1!important;
  visibility:visible!important;
  filter:none!important;
}

/* PRODUCT GALLERY — the requested single sentence is the page title. */
.product-gallery-heading-minimal{
  max-width:1120px!important;
  margin:0 0 clamp(48px,5vw,76px)!important;
}
.product-gallery-heading-minimal p{
  max-width:17ch!important;
  margin:0!important;
  color:var(--brand-dark)!important;
  font-family:var(--serif)!important;
  font-size:clamp(48px,4.65vw,72px)!important;
  font-weight:400!important;
  line-height:.99!important;
  letter-spacing:-.042em!important;
  text-wrap:balance;
}

/* CONTACT — retain the original two overlapping translucent rectangles,
   remove all message/inquiry UI, and use a two-column information layout:
   Email + Phone stacked left, Hours right. */
.contact-page-information-only .contact-partnership-shell{
  align-items:flex-start!important;
  justify-content:center!important;
}
.contact-page-information-only .contact-panel-stack{
  position:relative!important;
  width:min(780px,56vw)!important;
  margin-top:0!important;
}
.contact-page-information-only .contact-panel-offset{
  display:block!important;
  z-index:0!important;
  top:-29px!important;
  left:-29px!important;
  width:56%!important;
  height:43%!important;
  border:1px solid rgba(244,231,202,.20)!important;
  background:rgba(220,204,174,.30)!important;
  box-shadow:0 18px 58px rgba(0,0,0,.08)!important;
  backdrop-filter:blur(9px) saturate(.82)!important;
  -webkit-backdrop-filter:blur(9px) saturate(.82)!important;
}
.contact-page-information-only .contact-glass-panel-simple{
  position:relative!important;
  z-index:1!important;
  padding:clamp(40px,4vw,58px) clamp(42px,4vw,62px)!important;
  background:rgba(66,57,49,.57)!important;
  border:1px solid rgba(235,221,191,.20)!important;
  backdrop-filter:blur(14px) saturate(.90)!important;
  -webkit-backdrop-filter:blur(14px) saturate(.90)!important;
}
.contact-page-information-only .contact-glass-panel-simple h1{
  max-width:none!important;
  margin:0!important;
  font-size:clamp(52px,4.3vw,70px)!important;
}
.contact-page-information-only .contact-panel-rule{
  margin:28px 0 30px!important;
}
.contact-page-information-only .contact-business-meta-two-column{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:clamp(34px,4vw,64px)!important;
  align-items:stretch!important;
}
.contact-page-information-only .contact-business-meta-two-column>div{
  padding:0!important;
  border:0!important;
}
.contact-page-information-only .contact-left-stack{
  display:grid!important;
  gap:24px!important;
}
.contact-page-information-only .contact-left-stack>div+div{
  padding-top:22px!important;
  border-top:1px solid rgba(226,208,164,.28)!important;
}
.contact-page-information-only .contact-hours{
  padding-left:clamp(28px,3vw,48px)!important;
  border-left:1px solid rgba(226,208,164,.30)!important;
}
.contact-page-information-only .contact-business-meta small{
  margin-bottom:8px!important;
}
.contact-page-information-only .contact-business-meta a,
.contact-page-information-only .contact-business-meta span{
  display:block;
  color:rgba(248,244,236,.92)!important;
  font-size:clamp(16px,1vw,18px)!important;
  line-height:1.55!important;
}
.contact-page-information-only .contact-business-meta a{
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}

/* FOOTER — social icons are standalone utilities, never boxed buttons. */
.footer-socials{
  gap:18px!important;
  align-items:center!important;
}
.footer-socials a,
.footer-socials a:hover,
.footer-socials a:focus-visible{
  width:auto!important;
  height:auto!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:none!important;
  outline:none;
}
.footer-socials a{color:rgba(255,255,255,.74)!important}
.footer-socials a:hover,.footer-socials a:focus-visible{color:#fff!important}
.footer-socials svg{width:20px!important;height:20px!important}

@media (max-width:760px){
  .route-home .hero .hero-delivery-line{
    max-width:16ch!important;
    font-size:clamp(30px,8vw,38px)!important;
  }
  .facility-machinery-minimal .machine-card-minimal .machine-icon{
    width:104px!important;
    height:68px!important;
  }
  .product-gallery-heading-minimal p{
    max-width:18ch!important;
    font-size:clamp(40px,10.8vw,54px)!important;
  }
  .contact-page-information-only .contact-panel-stack{width:100%!important}
  .contact-page-information-only .contact-panel-offset{
    top:-18px!important;
    left:-12px!important;
    width:62%!important;
    height:38%!important;
  }
  .contact-page-information-only .contact-business-meta-two-column{
    grid-template-columns:1fr!important;
    gap:28px!important;
  }
  .contact-page-information-only .contact-hours{
    padding:24px 0 0!important;
    border-left:0!important;
    border-top:1px solid rgba(226,208,164,.30)!important;
  }
}
\n\n/* =========================================================
   V39 — facility opening fills one viewport; hero title is
   vertically centered; Press Machines fills one viewport;
   exact user-provided Hunterwood background; canonical logos.
   ========================================================= */

/* HERO + FACTS = one complete desktop viewport. */
.facility-opening-fullscreen{
  min-height:100svh;
  display:grid;
  grid-template-rows:46svh 54svh;
  background:var(--paper);
  overflow:hidden;
}
.facility-opening-fullscreen .facility-cinematic-hero-minimal,
.facility-opening-fullscreen .facility-cinematic-hero-minimal .detail-hero-shell{
  min-height:0!important;
  height:46svh!important;
}
.facility-opening-fullscreen .facility-cinematic-hero-minimal .detail-hero-shell{
  align-items:center!important;
  padding-top:var(--header-closed)!important;
  padding-bottom:0!important;
}
.facility-opening-fullscreen .facility-cinematic-hero-minimal .translucent-story-panel{
  margin-top:0!important;
  margin-bottom:0!important;
}
.facility-opening-fullscreen .facility-facts-section{
  min-height:54svh!important;
  padding-top:0!important;
  padding-bottom:0!important;
  display:flex!important;
  align-items:center!important;
}
.facility-opening-fullscreen .facility-facts-section>.page-shell{
  width:100%;
}
.facility-opening-fullscreen .facility-facts-grid{
  width:100%;
}

/* PRESS MACHINES = one complete viewport, exact supplied background image. */
.facility-machinery-minimal{
  min-height:100svh!important;
  padding:0!important;
  display:flex!important;
  align-items:stretch!important;
  background:#d7d0c4!important;
}
.facility-machinery-minimal::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  background-image:url("assets/site/hunterwood-bg-exact.png")!important;
  background-position:center center!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
  filter:none!important;
  transform:none!important;
  opacity:1!important;
}
.facility-machinery-minimal::after{
  display:none!important;
  content:none!important;
}
.facility-machinery-minimal>.page-shell{
  width:100%!important;
  min-height:100svh!important;
  padding-top:clamp(64px,8vh,92px)!important;
  padding-bottom:clamp(64px,8vh,92px)!important;
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr)!important;
  position:relative!important;
  z-index:1!important;
}
.facility-machinery-minimal .facility-section-heading{
  margin-bottom:clamp(34px,4vh,52px)!important;
}
.facility-machinery-minimal .machine-grid-minimal{
  min-height:0!important;
  align-self:stretch!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,minmax(0,1fr))!important;
  gap:1px!important;
  background:rgba(55,65,58,.34)!important;
  border:1px solid rgba(55,65,58,.34)!important;
}
.facility-machinery-minimal .machine-card-minimal{
  min-height:0!important;
  height:100%!important;
  background:rgba(250,247,239,.94)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.facility-machinery-minimal .machine-card-minimal .machine-card-body{
  height:100%!important;
  padding:clamp(30px,3.2vw,50px)!important;
  display:flex!important;
  align-items:center!important;
}
.facility-machinery-minimal .machine-card-minimal .machine-card-head{
  width:100%!important;
  min-height:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:clamp(24px,3vw,54px)!important;
}
.facility-machinery-minimal .machine-card-minimal h3{
  max-width:14ch!important;
  margin:0!important;
  font-size:clamp(30px,2.45vw,42px)!important;
  line-height:1.03!important;
}
.facility-machinery-minimal .machine-card-minimal .machine-icon{
  display:block!important;
  flex:0 0 auto!important;
  width:clamp(118px,9.5vw,166px)!important;
  height:clamp(74px,7vw,104px)!important;
  object-fit:contain!important;
  object-position:center!important;
  opacity:1!important;
  visibility:visible!important;
  filter:none!important;
  mix-blend-mode:normal!important;
}

@media(max-width:980px) and (min-width:761px){
  .facility-opening-fullscreen{grid-template-rows:45svh 55svh}
  .facility-opening-fullscreen .facility-cinematic-hero-minimal,
  .facility-opening-fullscreen .facility-cinematic-hero-minimal .detail-hero-shell{height:45svh!important}
  .facility-opening-fullscreen .facility-facts-section{min-height:55svh!important}
  .facility-machinery-minimal>.page-shell{padding-top:56px!important;padding-bottom:56px!important}
  .facility-machinery-minimal .machine-card-minimal .machine-icon{width:118px!important;height:76px!important}
}

@media(max-width:760px){
  .facility-opening-fullscreen{
    min-height:0;
    display:block;
    overflow:visible;
  }
  .facility-opening-fullscreen .facility-cinematic-hero-minimal,
  .facility-opening-fullscreen .facility-cinematic-hero-minimal .detail-hero-shell{
    min-height:48svh!important;
    height:48svh!important;
  }
  .facility-opening-fullscreen .facility-cinematic-hero-minimal .detail-hero-shell{
    align-items:center!important;
    padding-top:var(--header-closed)!important;
    padding-bottom:0!important;
  }
  .facility-opening-fullscreen .facility-facts-section{
    min-height:0!important;
    display:block!important;
    padding:24px 0 42px!important;
  }
  .facility-machinery-minimal{
    min-height:0!important;
  }
  .facility-machinery-minimal>.page-shell{
    min-height:0!important;
    padding-top:58px!important;
    padding-bottom:58px!important;
    display:block!important;
  }
  .facility-machinery-minimal .machine-grid-minimal{
    grid-template-columns:1fr!important;
    grid-template-rows:none!important;
  }
  .facility-machinery-minimal .machine-card-minimal .machine-card-body{
    min-height:150px!important;
  }
  .facility-machinery-minimal .machine-card-minimal .machine-icon{
    width:104px!important;
    height:70px!important;
  }
}

/* ============================================================
   V40 — IMPERIAL MACHINERY PHOTO PANELS
   Uses the exact supplied Hunterwood 10000 photograph and exact
   supplied machine-logo files. No image filters or generated art.
   ============================================================ */
.facility-machinery-imperial{
  position:relative!important;
  isolation:isolate!important;
  min-height:100svh!important;
  overflow:hidden!important;
  background:#171b18!important;
}
.facility-machinery-imperial::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  background-image:url("assets/site/imperial-hunterwood-10000-original.png")!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  filter:none!important;
  transform:none!important;
  opacity:1!important;
}
.facility-machinery-imperial::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  background:rgba(0,0,0,.18)!important;
  pointer-events:none!important;
}
.facility-machinery-imperial>.page-shell{
  position:relative!important;
  z-index:2!important;
  width:100%!important;
  min-height:100svh!important;
  padding-top:clamp(62px,8vh,92px)!important;
  padding-bottom:clamp(62px,8vh,92px)!important;
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr)!important;
}
.facility-machinery-imperial .facility-section-heading{
  margin:0 0 clamp(30px,4vh,48px)!important;
}
.facility-machinery-imperial .facility-section-heading .eyebrow{
  margin:0 0 12px!important;
  color:#c7a95a!important;
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:.19em!important;
  text-transform:uppercase!important;
}
.facility-machinery-imperial .facility-section-heading h2{
  margin:0!important;
  max-width:15ch!important;
  color:#f3efe5!important;
  font-family:var(--serif)!important;
  font-size:clamp(42px,4.4vw,68px)!important;
  font-weight:400!important;
  line-height:.98!important;
  letter-spacing:-.035em!important;
}
.facility-machinery-imperial .imperial-machine-grid{
  min-height:0!important;
  align-self:stretch!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,minmax(0,1fr))!important;
  gap:clamp(16px,1.35vw,24px)!important;
  background:transparent!important;
  border:0!important;
}
.facility-machinery-imperial .imperial-machine-card{
  min-width:0!important;
  min-height:0!important;
  height:100%!important;
  padding:clamp(26px,2.65vw,42px)!important;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  align-items:center!important;
  column-gap:clamp(20px,2vw,34px)!important;
  background:rgba(20,24,21,.58)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  box-shadow:0 18px 42px rgba(0,0,0,.10)!important;
  backdrop-filter:blur(3px)!important;
  -webkit-backdrop-filter:blur(3px)!important;
}
.facility-machinery-imperial .imperial-machine-number{
  align-self:start!important;
  padding-top:3px!important;
  color:#c7a95a!important;
  font-family:var(--serif)!important;
  font-size:clamp(18px,1.45vw,24px)!important;
  font-weight:400!important;
  line-height:1!important;
}
.facility-machinery-imperial .imperial-machine-copy{
  min-width:0!important;
}
.facility-machinery-imperial .imperial-machine-copy p{
  margin:0 0 10px!important;
  color:#c7a95a!important;
  font-size:10px!important;
  font-weight:700!important;
  line-height:1.2!important;
  letter-spacing:.18em!important;
  text-transform:uppercase!important;
}
.facility-machinery-imperial .imperial-machine-card h3{
  max-width:13ch!important;
  margin:0!important;
  color:#f3efe5!important;
  font-family:var(--serif)!important;
  font-size:clamp(28px,2.2vw,44px)!important;
  font-weight:400!important;
  line-height:1.02!important;
  letter-spacing:-.025em!important;
}
.facility-machinery-imperial .imperial-machine-icon{
  display:block!important;
  flex:0 0 auto!important;
  width:clamp(112px,9.2vw,162px)!important;
  height:clamp(70px,6.6vw,104px)!important;
  object-fit:contain!important;
  object-position:center!important;
  opacity:1!important;
  visibility:visible!important;
  filter:none!important;
  mix-blend-mode:normal!important;
  background:transparent!important;
}

/* Product gallery opening line requested in V40. */
.product-gallery-heading-minimal p{
  max-width:780px!important;
}

@media(max-width:980px){
  .facility-machinery-imperial>.page-shell{
    padding-top:54px!important;
    padding-bottom:54px!important;
  }
  .facility-machinery-imperial .imperial-machine-card{
    grid-template-columns:auto minmax(0,1fr) auto!important;
    padding:28px!important;
  }
  .facility-machinery-imperial .imperial-machine-icon{
    width:112px!important;
    height:78px!important;
  }
}

@media(max-width:760px){
  .facility-machinery-imperial{
    min-height:0!important;
  }
  .facility-machinery-imperial>.page-shell{
    min-height:0!important;
    display:block!important;
    padding-top:54px!important;
    padding-bottom:54px!important;
  }
  .facility-machinery-imperial .facility-section-heading{
    margin-bottom:30px!important;
  }
  .facility-machinery-imperial .facility-section-heading h2{
    font-size:clamp(38px,11vw,52px)!important;
  }
  .facility-machinery-imperial .imperial-machine-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:none!important;
    gap:14px!important;
  }
  .facility-machinery-imperial .imperial-machine-card{
    min-height:150px!important;
    grid-template-columns:34px minmax(0,1fr) auto!important;
    gap:16px!important;
    padding:24px 20px!important;
  }
  .facility-machinery-imperial .imperial-machine-card h3{
    font-size:clamp(26px,7.6vw,36px)!important;
  }
  .facility-machinery-imperial .imperial-machine-icon{
    width:88px!important;
    height:64px!important;
  }
}

/* ============================================================
   V41 — LOCATION FACILITY PROFILE + DATA-DRIVEN MACHINERY PANELS
   Same design system across Winters / Ellensburg / Imperial.
   ============================================================ */

/* HERO + editorial facility profile remain a compact opening composition. */
.facility-opening-fullscreen{
  grid-template-rows:46svh 54svh!important;
  background:var(--paper)!important;
}
.facility-opening-fullscreen .facility-facts-section{
  min-height:54svh!important;
  background:var(--paper)!important;
}
.facility-profile{
  width:100%;
  display:grid;
  grid-template-columns:minmax(0,.44fr) minmax(0,.56fr);
  gap:clamp(48px,6vw,108px);
  align-items:center;
}
.facility-profile-identity{
  min-width:0;
  padding-right:clamp(8px,2vw,28px);
}
.facility-profile-identity h2{
  margin:0;
  color:var(--brand-green);
  font:400 clamp(48px,4.8vw,76px)/.95 var(--serif);
  letter-spacing:-.045em;
}
.facility-profile-accent{
  display:block;
  width:42px;
  height:1px;
  margin:22px 0 25px;
  background:var(--gold);
}
.facility-profile-label{
  margin:0 0 18px;
  color:#9b7c31;
  font-size:10px;
  font-weight:700;
  line-height:1.3;
  letter-spacing:.19em;
  text-transform:uppercase;
}
.facility-profile-description{
  max-width:38ch;
  margin:0;
  color:#424b45;
  font-size:clamp(15px,1.02vw,18px);
  line-height:1.58;
}
.facility-profile-details{
  min-width:0;
}
.facility-profile-row{
  display:grid;
  grid-template-columns:92px minmax(0,1fr);
  align-items:center;
  gap:clamp(22px,2.5vw,38px);
  min-height:112px;
  padding:18px 0;
}
.facility-profile-row + .facility-profile-row{
  border-top:1px solid rgba(17,67,51,.15);
}
.facility-profile-number{
  display:flex;
  align-items:center;
  gap:15px;
  color:#b08c37;
  font:400 clamp(34px,3vw,48px)/1 var(--serif);
  letter-spacing:-.035em;
}
.facility-profile-number span{
  display:block;
  width:1px;
  height:34px;
  background:rgba(176,140,55,.42);
}
.facility-profile-copy h3{
  margin:0 0 9px;
  color:var(--brand-green);
  font-size:10px;
  font-weight:700;
  line-height:1.2;
  letter-spacing:.17em;
  text-transform:uppercase;
}
.facility-profile-copy p{
  margin:0;
  color:#2f3933;
  font:400 clamp(20px,1.55vw,27px)/1.38 var(--serif);
  letter-spacing:-.012em;
}

/* Shared machinery treatment: real photography + restrained dark translucent panels. */
.facility-machinery-editorial{
  position:relative!important;
  isolation:isolate!important;
  min-height:100svh!important;
  padding:0!important;
  overflow:hidden!important;
  background:#171b18!important;
}
.facility-machinery-editorial::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  background-image:var(--machinery-bg)!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  filter:none!important;
  transform:none!important;
  opacity:1!important;
}
.facility-machinery-editorial::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  display:block!important;
  background:rgba(0,0,0,.14)!important;
  pointer-events:none!important;
}
.facility-machinery-editorial>.page-shell{
  position:relative!important;
  z-index:2!important;
  width:100%!important;
  min-height:100svh!important;
  padding-top:clamp(58px,7.5vh,84px)!important;
  padding-bottom:clamp(58px,7.5vh,84px)!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
}
.facility-machinery-editorial .facility-section-heading{
  width:100%!important;
  margin:0 0 clamp(72px,10vh,116px)!important;
}
.facility-machinery-editorial .facility-section-heading .eyebrow{
  margin:0 0 12px!important;
  color:#c7a95a!important;
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:.19em!important;
  text-transform:uppercase!important;
}
.facility-machinery-editorial .facility-section-heading h2{
  max-width:none!important;
  width:max-content!important;
  margin:0!important;
  color:#f3efe5!important;
  font-family:var(--serif)!important;
  font-size:clamp(38px,3.6vw,58px)!important;
  font-weight:400!important;
  line-height:1!important;
  letter-spacing:-.032em!important;
  white-space:nowrap!important;
}
.facility-machinery-editorial .machine-grid-editorial{
  width:100%!important;
  margin-top:auto!important;
  margin-bottom:clamp(36px,5vh,64px)!important;
  display:grid!important;
  gap:18px!important;
  background:transparent!important;
  border:0!important;
}
.facility-machinery-editorial .machine-grid-editorial[data-count="2"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.facility-machinery-editorial .machine-grid-editorial[data-count="3"]{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.facility-machinery-editorial .machine-grid-editorial[data-count="4"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.facility-machinery-editorial .machine-card-editorial{
  min-width:0!important;
  min-height:190px!important;
  height:auto!important;
  padding:24px 30px!important;
  display:grid!important;
  grid-template-rows:auto 1fr!important;
  background:rgba(18,22,19,.58)!important;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:0!important;
  box-shadow:none!important;
  backdrop-filter:blur(1.5px)!important;
  -webkit-backdrop-filter:blur(1.5px)!important;
}
.facility-machinery-editorial .machine-number{
  display:block!important;
  margin:0 0 14px!important;
  color:#c7a95a!important;
  font-family:var(--serif)!important;
  font-size:20px!important;
  font-weight:400!important;
  line-height:1!important;
}
.facility-machinery-editorial .machine-card-inner{
  min-width:0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  column-gap:32px!important;
}
.facility-machinery-editorial .machine-copy{
  min-width:0!important;
}
.facility-machinery-editorial .machine-copy p{
  margin:0 0 9px!important;
  color:#c7a95a!important;
  font-size:10px!important;
  font-weight:700!important;
  line-height:1.2!important;
  letter-spacing:.18em!important;
  text-transform:uppercase!important;
}
.facility-machinery-editorial .machine-copy h3{
  max-width:15ch!important;
  margin:0!important;
  color:#f3efe5!important;
  font-family:var(--serif)!important;
  font-size:clamp(28px,2vw,40px)!important;
  font-weight:400!important;
  line-height:1.05!important;
  letter-spacing:-.025em!important;
}
.facility-machinery-editorial .machine-icon{
  display:block!important;
  width:clamp(92px,8vw,122px)!important;
  max-height:72px!important;
  height:auto!important;
  object-fit:contain!important;
  object-position:center!important;
  opacity:1!important;
  filter:none!important;
  transform:none!important;
  mix-blend-mode:normal!important;
}

@media(max-width:1100px) and (min-width:761px){
  .facility-profile{grid-template-columns:minmax(0,.42fr) minmax(0,.58fr);gap:42px}
  .facility-profile-row{grid-template-columns:78px minmax(0,1fr)}
  .facility-machinery-editorial .machine-grid-editorial[data-count="3"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .facility-machinery-editorial .machine-grid-editorial[data-count="3"] .machine-card-editorial:last-child{grid-column:1/-1!important}
  .facility-machinery-editorial .machine-card-editorial{min-height:180px!important;padding:22px 24px!important}
  .facility-machinery-editorial .machine-card-inner{column-gap:22px!important}
}

@media(max-width:760px){
  .facility-opening-fullscreen{display:block!important;min-height:0!important;overflow:visible!important}
  .facility-opening-fullscreen .facility-facts-section{min-height:0!important;padding:48px 0 54px!important}
  .facility-profile{grid-template-columns:1fr!important;gap:42px!important}
  .facility-profile-identity{padding-right:0!important}
  .facility-profile-identity h2{font-size:clamp(44px,12vw,60px)!important}
  .facility-profile-row{grid-template-columns:64px minmax(0,1fr)!important;gap:18px!important;min-height:0!important;padding:22px 0!important}
  .facility-profile-number{gap:10px!important;font-size:31px!important}
  .facility-profile-number span{height:28px!important}
  .facility-profile-copy p{font-size:clamp(20px,5.8vw,25px)!important}
  .facility-machinery-editorial{min-height:0!important}
  .facility-machinery-editorial>.page-shell{min-height:0!important;padding-top:52px!important;padding-bottom:56px!important}
  .facility-machinery-editorial .facility-section-heading{margin-bottom:46px!important}
  .facility-machinery-editorial .facility-section-heading h2{width:auto!important;white-space:normal!important;font-size:clamp(38px,10.8vw,50px)!important}
  .facility-machinery-editorial .machine-grid-editorial,
  .facility-machinery-editorial .machine-grid-editorial[data-count="2"],
  .facility-machinery-editorial .machine-grid-editorial[data-count="3"],
  .facility-machinery-editorial .machine-grid-editorial[data-count="4"]{grid-template-columns:1fr!important;margin:0!important;gap:14px!important}
  .facility-machinery-editorial .machine-grid-editorial[data-count="3"] .machine-card-editorial:last-child{grid-column:auto!important}
  .facility-machinery-editorial .machine-card-editorial{min-height:0!important;padding:22px 20px 24px!important}
  .facility-machinery-editorial .machine-card-inner{grid-template-columns:minmax(0,1fr) auto!important;column-gap:16px!important}
  .facility-machinery-editorial .machine-copy h3{font-size:clamp(26px,7.5vw,35px)!important}
  .facility-machinery-editorial .machine-icon{width:88px!important;max-height:62px!important}
}

/* ============================================================
   V42 — LOCATION DETAIL CENTERED LAYOUT / LARGER MAP HERO
   Shared across Winters / Ellensburg / Imperial.
   Background photography remains full bleed; all functional
   content is constrained to a centered inner container.
   ============================================================ */

/* Prevent viewport-width / scrollbar interactions from visually clipping location content. */
.facility-opening-fullscreen,
.facility-machinery-editorial,
.facility-gallery-minimal{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  overflow-x:clip!important;
}
.facility-opening-fullscreen *,
.facility-machinery-editorial *,
.facility-gallery-minimal *{box-sizing:border-box!important}

/* One shared horizontal rhythm for all three detail pages. */
.facility-opening-fullscreen .page-shell,
.facility-machinery-editorial>.page-shell,
.facility-gallery-minimal>.page-shell{
  width:min(calc(100% - 96px),1540px)!important;
  max-width:1540px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Larger satellite / aerial hero, compact information area below. */
.facility-opening-fullscreen{
  min-height:0!important;
  display:grid!important;
  grid-template-rows:clamp(420px,48vh,620px) auto!important;
  overflow:visible!important;
}
.facility-opening-fullscreen .facility-cinematic-hero-minimal,
.facility-opening-fullscreen .facility-cinematic-hero-minimal .detail-hero-shell{
  min-height:420px!important;
  height:clamp(420px,48vh,620px)!important;
}
.facility-opening-fullscreen .facility-cinematic-hero-minimal .detail-hero-shell{
  width:min(calc(100% - 96px),1540px)!important;
  max-width:1540px!important;
  margin-inline:auto!important;
  align-items:center!important;
  padding-top:var(--header-closed)!important;
  padding-bottom:0!important;
}
.facility-opening-fullscreen .facility-cinematic-hero-minimal .translucent-story-panel{
  margin-left:0!important;
  margin-right:auto!important;
}
.facility-opening-fullscreen .facility-facts-section{
  min-height:0!important;
  height:auto!important;
  padding:64px 0!important;
  display:block!important;
}
.facility-opening-fullscreen .facility-facts-section>.page-shell{
  width:min(calc(100% - 96px),1540px)!important;
  max-width:1540px!important;
  margin-inline:auto!important;
}

/* Rebalanced editorial information layout. */
.facility-profile{
  width:100%!important;
  grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr)!important;
  gap:clamp(64px,6.5vw,100px)!important;
  align-items:center!important;
}
.facility-profile-identity{
  min-width:0!important;
  padding-right:0!important;
}
.facility-profile.no-role .facility-profile-label{
  margin-top:0!important;
  margin-bottom:20px!important;
}
.facility-profile.no-role .facility-profile-description{
  max-width:34ch!important;
  color:#39443d!important;
  font:400 clamp(19px,1.4vw,25px)/1.42 var(--serif)!important;
  letter-spacing:-.012em!important;
}
.facility-profile.has-role .facility-profile-identity h2{
  font-size:clamp(46px,4.2vw,70px)!important;
}
.facility-profile-details{min-width:0!important}
.facility-profile-row{
  min-height:0!important;
  grid-template-columns:88px minmax(0,1fr)!important;
  gap:clamp(22px,2.2vw,34px)!important;
  padding:24px 0!important;
}
.facility-profile-row:first-child{padding-top:0!important}
.facility-profile-row:last-child{padding-bottom:0!important}
.facility-profile-number{
  font-size:clamp(32px,2.6vw,44px)!important;
}
.facility-profile-number span{height:31px!important}
.facility-profile-copy p{
  font-size:clamp(19px,1.42vw,25px)!important;
  line-height:1.34!important;
}

/* Machinery remains full-bleed photography; heading + cards share the centered container. */
.facility-machinery-editorial>.page-shell{
  width:min(calc(100% - 96px),1540px)!important;
  max-width:1540px!important;
  margin-inline:auto!important;
}
.facility-machinery-editorial .facility-section-heading{
  width:min(100%,1450px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.facility-machinery-editorial .machine-grid-editorial{
  width:min(100%,1450px)!important;
  max-width:1450px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.facility-machinery-editorial .machine-grid-editorial[data-count="2"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.facility-machinery-editorial .machine-grid-editorial[data-count="3"]{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.facility-machinery-editorial .machine-grid-editorial[data-count="4"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}

@media(max-width:1100px) and (min-width:761px){
  .facility-opening-fullscreen .page-shell,
  .facility-opening-fullscreen .facility-cinematic-hero-minimal .detail-hero-shell,
  .facility-opening-fullscreen .facility-facts-section>.page-shell,
  .facility-machinery-editorial>.page-shell,
  .facility-gallery-minimal>.page-shell{
    width:min(calc(100% - 64px),1540px)!important;
  }
  .facility-profile{
    grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr)!important;
    gap:48px!important;
  }
  .facility-profile-row{grid-template-columns:74px minmax(0,1fr)!important;padding:22px 0!important}
  .facility-machinery-editorial .machine-grid-editorial[data-count="3"]{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .facility-machinery-editorial .machine-grid-editorial[data-count="3"] .machine-card-editorial:last-child{
    grid-column:1/-1!important;
  }
}

@media(max-width:760px){
  .facility-opening-fullscreen{
    display:block!important;
    min-height:0!important;
  }
  .facility-opening-fullscreen .page-shell,
  .facility-opening-fullscreen .facility-cinematic-hero-minimal .detail-hero-shell,
  .facility-opening-fullscreen .facility-facts-section>.page-shell,
  .facility-machinery-editorial>.page-shell,
  .facility-gallery-minimal>.page-shell{
    width:calc(100% - 36px)!important;
    max-width:none!important;
    margin-inline:auto!important;
  }
  .facility-opening-fullscreen .facility-cinematic-hero-minimal,
  .facility-opening-fullscreen .facility-cinematic-hero-minimal .detail-hero-shell{
    min-height:52svh!important;
    height:52svh!important;
  }
  .facility-opening-fullscreen .facility-facts-section{
    padding:46px 0 50px!important;
  }
  .facility-profile{
    grid-template-columns:1fr!important;
    gap:38px!important;
  }
  .facility-profile.has-role .facility-profile-identity h2{
    font-size:clamp(42px,11vw,58px)!important;
  }
  .facility-profile.no-role .facility-profile-description{
    max-width:32ch!important;
    font-size:clamp(20px,5.7vw,25px)!important;
  }
  .facility-profile-row{
    grid-template-columns:62px minmax(0,1fr)!important;
    gap:16px!important;
    padding:21px 0!important;
  }
  .facility-profile-row:first-child{padding-top:0!important}
  .facility-profile-row:last-child{padding-bottom:0!important}
  .facility-machinery-editorial .facility-section-heading,
  .facility-machinery-editorial .machine-grid-editorial{
    width:100%!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .facility-machinery-editorial .machine-grid-editorial,
  .facility-machinery-editorial .machine-grid-editorial[data-count="2"],
  .facility-machinery-editorial .machine-grid-editorial[data-count="3"],
  .facility-machinery-editorial .machine-grid-editorial[data-count="4"]{
    grid-template-columns:1fr!important;
  }
  .facility-machinery-editorial .machine-grid-editorial[data-count="3"] .machine-card-editorial:last-child{
    grid-column:auto!important;
  }
}


/* ============================================================
   V43 — Homepage scale + first-screen Location intro refinement
   Requested 2026-08-21. Existing photography/assets are preserved.
   ============================================================ */

/* Shared desktop navigation: larger type without enlarging the logo. */
@media (min-width:981px){
  :root{
    --header-open:110px;
    --header-closed:84px;
  }
  .desktop-nav a,
  .desktop-nav .nav-trigger{
    font-size:14px!important;
    letter-spacing:.115em!important;
  }
  .nav-right .language-toggle{
    font-size:13px!important;
    letter-spacing:.105em!important;
  }
  .brand span{
    font-size:10.5px!important;
  }
}

/* Homepage hero: approximately 1.5x stronger left-side typography,
   using real font sizing rather than transform scaling. */
@media (min-width:981px){
  .route-home .hero-content{
    max-width:1540px!important;
  }
  .route-home .hero h1{
    max-width:1120px!important;
    line-height:.94!important;
  }
  .route-home .hero h1>span:first-child{
    max-width:100%!important;
    font-size:clamp(92px,8.8vw,146px)!important;
    line-height:.88!important;
    margin-bottom:clamp(13px,1vw,20px)!important;
  }
  .route-home .hero h1>span:nth-child(2),
  .route-home .hero h1>span:nth-child(3){
    max-width:1050px!important;
    font-size:clamp(70px,7.2vw,116px)!important;
    line-height:.96!important;
  }
  .route-home .hero-pillars{
    margin:clamp(34px,3.2vh,46px) 0 clamp(30px,3vh,42px)!important;
  }
  .route-home .hero-pillars span{
    padding:0 clamp(24px,1.8vw,34px)!important;
    font-size:clamp(25px,2.25vw,36px)!important;
    line-height:1.14!important;
  }
  .route-home .hero .button{
    min-height:60px!important;
    padding-inline:30px!important;
    font-size:15px!important;
    letter-spacing:.115em!important;
  }
  .route-home .hero .button-row{
    gap:16px!important;
    margin-top:18px!important;
  }
}

@media (min-width:761px) and (max-width:1280px){
  .route-home .hero h1>span:first-child{font-size:clamp(76px,8.7vw,112px)!important}
  .route-home .hero h1>span:nth-child(2),
  .route-home .hero h1>span:nth-child(3){font-size:clamp(58px,6.8vw,88px)!important;max-width:850px!important}
  .route-home .hero-pillars span{font-size:clamp(21px,2vw,27px)!important}
  .route-home .hero .button{font-size:13px!important;min-height:58px!important}
}

/* Location opening: navbar + satellite hero + complete summary form exactly
   the first viewport on normal desktop displays. */
@media (min-width:761px){
  .facility-opening-fullscreen{
    height:100svh!important;
    min-height:100svh!important;
    display:grid!important;
    grid-template-rows:minmax(0,57fr) minmax(0,43fr)!important;
    overflow:hidden!important;
  }
  .facility-opening-fullscreen .facility-cinematic-hero-minimal,
  .facility-opening-fullscreen .facility-cinematic-hero-minimal .detail-hero-shell{
    min-height:0!important;
    height:100%!important;
  }
  .facility-opening-fullscreen .facility-cinematic-hero-minimal .detail-hero-shell{
    padding-top:var(--header-closed)!important;
    padding-bottom:0!important;
  }
  .facility-opening-fullscreen .facility-facts-section{
    min-height:0!important;
    height:100%!important;
    padding:clamp(26px,3.1svh,42px) 0!important;
    display:flex!important;
    align-items:center!important;
  }
  .facility-opening-fullscreen .facility-facts-section>.page-shell{
    width:min(calc(100% - 96px),1540px)!important;
    max-width:1540px!important;
    margin-inline:auto!important;
  }
  .facility-profile{
    grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr)!important;
    gap:clamp(58px,6vw,96px)!important;
    align-items:center!important;
  }
  .facility-profile-label{
    font-size:clamp(15px,1vw,18px)!important;
    letter-spacing:.18em!important;
    font-weight:600!important;
    line-height:1.2!important;
  }
  .facility-profile.no-role .facility-profile-label{
    margin-bottom:clamp(22px,2.2svh,30px)!important;
  }
  .facility-profile.no-role .facility-profile-description{
    max-width:35ch!important;
    font-size:clamp(18px,1.25vw,23px)!important;
    line-height:1.36!important;
  }
  .facility-profile.has-role .facility-profile-identity h2{
    margin-bottom:14px!important;
    font-size:clamp(40px,3.5vw,60px)!important;
    line-height:.98!important;
  }
  .facility-profile.has-role .facility-profile-accent{
    margin-bottom:18px!important;
  }
  .facility-profile-row{
    grid-template-columns:78px minmax(0,1fr)!important;
    gap:clamp(20px,2vw,30px)!important;
    padding:clamp(15px,1.8svh,22px) 0!important;
  }
  .facility-profile-row:first-child{padding-top:0!important}
  .facility-profile-row:last-child{padding-bottom:0!important}
  .facility-profile-number{font-size:clamp(29px,2.2vw,39px)!important}
  .facility-profile-number span{height:27px!important}
  .facility-profile-copy h3{
    margin-bottom:7px!important;
  }
  .facility-profile-copy p{
    font-size:clamp(17px,1.22vw,22px)!important;
    line-height:1.28!important;
  }
}

/* Machinery cards: center number + text + logo as one visual group vertically. */
@media (min-width:761px){
  .facility-machinery-editorial .machine-card-editorial{
    min-height:190px!important;
    padding:26px 30px!important;
    display:grid!important;
    grid-template-columns:44px minmax(0,1fr)!important;
    grid-template-rows:1fr!important;
    column-gap:20px!important;
    align-items:center!important;
  }
  .facility-machinery-editorial .machine-number{
    align-self:center!important;
    margin:0!important;
  }
  .facility-machinery-editorial .machine-card-inner{
    width:100%!important;
    align-self:center!important;
    align-items:center!important;
  }
}

/* Footer contact information: exact address/phone, bright white and 1.3x scale. */
.footer-address{
  font-size:clamp(16px,1vw,18px)!important;
  line-height:1.6!important;
  gap:8px!important;
}
.footer-address span,
.footer-address a{
  color:#fff!important;
  opacity:1!important;
}
.footer-address a:hover{
  color:#fff!important;
  text-decoration:underline!important;
  text-underline-offset:4px!important;
  opacity:.84!important;
}

/* Keep mobile fluid and avoid forcing the desktop first-screen composition. */
@media (max-width:760px){
  .facility-opening-fullscreen{height:auto!important;min-height:0!important;overflow:visible!important}
  .facility-profile-label{font-size:15px!important;letter-spacing:.16em!important;font-weight:600!important}
  .facility-machinery-editorial .machine-card-editorial{display:grid!important;grid-template-columns:38px minmax(0,1fr)!important;align-items:center!important}
  .facility-machinery-editorial .machine-number{margin:0!important;align-self:center!important}
}

/* ============================================================
   V44 — restrained homepage Hero scale and factual group copy.
   Existing layout, imagery, typefaces, and visual language remain intact.
   ============================================================ */

.group-v30-company .group-v30-company-supporting{
  max-width:560px;
  margin:-16px 0 28px;
  color:var(--brand-green);
  font:400 clamp(19px,1.45vw,24px)/1.3 var(--serif);
}

@media (min-width:981px){
  .route-home .hero h1{
    max-width:980px!important;
  }
  .route-home .hero h1>span:first-child{
    font-size:clamp(66px,6.35vw,105px)!important;
    margin-bottom:clamp(9px,.75vw,14px)!important;
  }
  .route-home .hero .hero-delivery-line{
    max-width:15.5ch!important;
    font-size:clamp(50px,5.2vw,84px)!important;
    line-height:1!important;
  }
  .route-home .hero-pillars{
    margin:clamp(24px,2.25vh,32px) 0 clamp(21px,2vh,28px)!important;
  }
  .route-home .hero-pillars span{
    padding:0 clamp(18px,1.35vw,25px)!important;
    font-size:clamp(18px,1.62vw,26px)!important;
  }
  .route-home .hero .button{
    min-height:50px!important;
    padding-inline:25px!important;
    font-size:12px!important;
  }
  .route-home .hero .button-row{
    gap:13px!important;
    margin-top:10px!important;
  }
}

@media (min-width:761px) and (max-width:980px){
  .route-home .hero h1>span:first-child{font-size:clamp(58px,8vw,82px)!important}
  .route-home .hero .hero-delivery-line{max-width:15ch!important;font-size:clamp(44px,6.2vw,64px)!important;line-height:1!important}
  .route-home .hero-pillars{margin:24px 0 22px!important}
  .route-home .hero-pillars span{font-size:clamp(16px,1.85vw,20px)!important;padding:0 17px!important}
  .route-home .hero .button{min-height:49px!important;padding-inline:23px!important;font-size:11px!important}
  .route-home .hero .button-row{gap:12px!important;margin-top:10px!important}
}

/* ============================================================
   V45 — compact delivery line, single-line Products title,
   and homepage Company Overview with the supplied route map.
   ============================================================ */

@media (min-width:981px){
  .route-home .hero .hero-delivery-line{
    max-width:15.5ch!important;
    font-size:clamp(34px,3.47vw,56px)!important;
    line-height:1.04!important;
  }
  .products-hero .page-hero-content{
    max-width:none!important;
  }
  .products-hero .page-hero-content h1{
    max-width:none!important;
    white-space:nowrap!important;
    font-size:clamp(34px,3.35vw,54px)!important;
    line-height:1.02!important;
    letter-spacing:-.042em!important;
  }
}

@media (min-width:761px) and (max-width:980px){
  .route-home .hero .hero-delivery-line{
    max-width:15ch!important;
    font-size:clamp(30px,4.15vw,43px)!important;
    line-height:1.04!important;
  }
}

.home-overview{
  min-height:100svh;
  padding:clamp(88px,8vw,132px) 0;
  display:flex;
  align-items:center;
  background:var(--paper);
  overflow:hidden;
}
.home-overview-grid{
  width:100%;
  display:grid;
  grid-template-columns:minmax(420px,.82fr) minmax(0,1.18fr);
  gap:clamp(54px,6vw,108px);
  align-items:center;
}
.home-overview-copy{
  max-width:660px;
}
.home-overview-copy h2{
  max-width:16ch;
  margin:0 0 30px;
  color:var(--brand-dark);
  font:400 clamp(46px,4.35vw,70px)/.98 var(--serif);
  letter-spacing:-.045em;
}
.home-overview-copy>p:not(.eyebrow){
  max-width:620px;
  margin:0 0 17px;
  color:var(--muted);
  font-size:clamp(16px,1.05vw,18px);
  line-height:1.7;
}
.home-overview-facts{
  margin-top:32px;
  padding-top:24px;
  border-top:1px solid var(--line);
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.home-overview-facts div{
  min-width:0;
}
.home-overview-facts strong{
  display:block;
  color:var(--brand-dark);
  font:400 clamp(25px,2vw,34px)/1 var(--serif);
}
.home-overview-facts span{
  display:block;
  margin-top:8px;
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:.105em;
  font-size:9px;
  font-weight:700;
  line-height:1.35;
}
.home-overview-map{
  width:100%;
  margin:0;
  background:#0c0d0e;
  box-shadow:0 26px 70px rgba(13,26,20,.16);
  overflow:hidden;
}
.home-overview-map img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:1672/941;
  object-fit:contain;
}

@media (max-width:1100px){
  .home-overview-grid{grid-template-columns:1fr;gap:48px}
  .home-overview-copy{max-width:820px}
  .home-overview-copy h2{max-width:15ch}
  .home-overview-copy>p:not(.eyebrow){max-width:780px}
  .home-overview-map{max-width:920px}
}

@media (max-width:760px){
  .home-overview{min-height:0;padding:70px 0 76px}
  .home-overview-grid{gap:38px}
  .home-overview-copy h2{max-width:14ch;margin-bottom:24px;font-size:clamp(40px,11vw,54px)}
  .home-overview-copy>p:not(.eyebrow){font-size:16px;line-height:1.65}
  .home-overview-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 20px}
  .products-hero .page-hero-content h1{font-size:clamp(39px,11vw,54px)!important;line-height:1.02!important}
}

/* ============================================================
   V46 — authoritative layout and readability locks.
   These selectors intentionally outrank all legacy version rules.
   ============================================================ */

/* The legacy V43 selector carried greater specificity and kept the delivery
   line at up to 116px. This ID-backed selector is the single final authority. */
body.route-home main#app .hero .hero-content h1 > span.hero-delivery-line:nth-child(2){
  display:block!important;
  max-width:20ch!important;
  font-size:clamp(40px,3.3vw,60px)!important;
  line-height:1.12!important;
  letter-spacing:-.035em!important;
}

/* No page-shell may be widened to 100% by a component-specific class. */
@media (min-width:761px){
  body .page-shell.page-shell.page-shell{
    width:min(1540px,calc(100% - 96px))!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

@media (max-width:760px){
  body .page-shell.page-shell.page-shell{
    width:calc(100% - 30px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  body.route-home main#app .hero .hero-content h1 > span.hero-delivery-line:nth-child(2){
    max-width:16ch!important;
    font-size:clamp(28px,8.5vw,36px)!important;
  }
}

/* Descriptive and detail text on light surfaces uses the main ink color.
   --muted is also mapped to --ink at the root for future components. */
.home-overview-copy>p:not(.eyebrow),
.home-overview-facts span,
.section-heading p:last-child:not(.eyebrow),
.body-copy,
.section-intro,
.detail-values p,
.facility-card p,
.news-list-copy p,
.article-body p,
.editorial-detail-hero-copy>p:last-child,
.editorial-image-split-copy>p,
.mission-editorial-grid article>p:last-child,
.expertise-editorial-rows p,
.operational-copy>p,
.location-editorial-card p,
.location-role-copy>p,
.location-role-columns p,
.group-v30-company>p:not(.eyebrow),
.group-v30-intro-body p{
  color:var(--ink)!important;
}

/* V48 — the Product title stays on one line on standard desktop widths. */
@media (min-width:981px){
  body.route-catalog .product-gallery-heading-minimal{
    max-width:none!important;
  }
  body.route-catalog .product-gallery-heading-minimal p{
    max-width:none!important;
    width:100%!important;
    white-space:nowrap!important;
    text-wrap:nowrap!important;
    font-size:clamp(34px,3.25vw,52px)!important;
    line-height:1.08!important;
  }
}

/* V48 — Arabic is a true RTL interface, not only an RTL text translation. */
html[dir="rtl"] body{direction:rtl;text-align:right}
html[dir="rtl"] .header-inner,
html[dir="rtl"] .desktop-nav,
html[dir="rtl"] .mobile-menu,
html[dir="rtl"] main,
html[dir="rtl"] .hero,
html[dir="rtl"] .hero-content,
html[dir="rtl"] .footer,
html[dir="rtl"] .footer-grid,
html[dir="rtl"] .footer-bottom{
  direction:rtl!important;
  text-align:right;
}
html[dir="rtl"] .brand,
html[dir="rtl"] .footer-brand,
html[dir="rtl"] .contact-business-meta a,
html[dir="rtl"] [data-locale-current]{direction:ltr;unicode-bidi:isolate}
html[dir="rtl"] .hero-content{margin-left:auto!important;margin-right:auto!important}
html[dir="rtl"] .hero-pillars,
html[dir="rtl"] .button-row{justify-content:flex-start}
html[dir="rtl"] .language-menu{right:auto!important;left:-12px!important;text-align:right}
html[dir="rtl"] .language-menu button,
html[dir="rtl"] .mobile-language-options button{direction:rtl;text-align:right}
html[dir="rtl"] [data-locale-option] span{unicode-bidi:plaintext;text-align:start}
html[dir="rtl"] .contact-business-meta-two-column,
html[dir="rtl"] .home-overview-grid,
html[dir="rtl"] .home-overview-facts,
html[dir="rtl"] .catalog-grid,
html[dir="rtl"] .footer-grid{direction:rtl}
html[dir="rtl"] .product-gallery-heading-minimal,
html[dir="rtl"] .home-overview-copy,
html[dir="rtl"] .contact-glass-panel,
html[dir="rtl"] .footer-grid>div{text-align:right}

/* V49 — simplified About / Our Team photography layout. */
.about-team-gallery{
  padding:calc(var(--header-closed) + clamp(72px,8vw,118px)) 0 clamp(100px,11vw,170px);
  background:var(--paper);
  overflow:hidden;
}
.about-team-gallery-inner>h1{
  max-width:18ch;
  margin:0 0 clamp(68px,8vw,120px);
  color:var(--brand-dark);
  font:400 clamp(52px,5.5vw,86px)/1.02 var(--serif);
  letter-spacing:-.04em;
}
.about-team-gallery-photos{
  display:flex;
  flex-direction:column;
  gap:clamp(72px,8vw,126px);
}
.about-team-photo{
  width:min(74%,1040px);
  margin:0;
  overflow:hidden;
}
.about-team-photo-right{align-self:flex-end}
.about-team-photo-left{align-self:flex-start}
.about-team-photo img{
  display:block;
  width:100%;
  aspect-ratio:16/9;
  object-fit:cover;
}
html[dir="rtl"] .about-team-gallery-inner>h1{text-align:right}
html[dir="rtl"] .about-team-photo-left{align-self:flex-end}
html[dir="rtl"] .about-team-photo-right{align-self:flex-start}

@media(max-width:760px){
  .about-team-gallery{padding-top:calc(var(--header-closed) + 48px);padding-bottom:84px}
  .about-team-gallery-inner>h1{max-width:15ch;margin-bottom:48px;font-size:clamp(42px,11vw,58px)}
  .about-team-gallery-photos{gap:34px}
  .about-team-photo{width:100%}
}

/* ============================================================
   V50 — static packaging and corrected About menu proportions.
   ============================================================ */
.packaging-reference-card-static{
  cursor:default!important;
}
.packaging-reference-card-static:hover,
.packaging-reference-card-static:focus-visible{
  transform:none!important;
  border-color:rgba(24,58,45,.12)!important;
  background:rgba(255,255,255,.48)!important;
}
.packaging-reference-card-static .packaging-reference-copy{
  min-height:94px;
  padding:22px 25px 24px;
  justify-content:center;
}
.packaging-overview-heading h1{
  max-width:none;
}

@media (min-width:981px){
  body .about-mega .page-shell.page-shell.page-shell{
    width:min(1740px,calc(100% - 56px))!important;
  }
  .about-mega-grid{
    grid-template-columns:minmax(260px,22%) minmax(0,1fr)!important;
    gap:clamp(38px,3.2vw,60px)!important;
  }
  .about-mega-list nav{
    flex:0 1 auto!important;
    grid-template-rows:repeat(3,minmax(76px,1fr))!important;
  }
  .about-mega-preview{
    grid-template-columns:minmax(560px,1.7fr) minmax(280px,.66fr)!important;
    gap:clamp(44px,3.5vw,66px)!important;
  }
  .about-preview-image{
    width:100%!important;
    min-height:0!important;
    aspect-ratio:16/9!important;
  }
  .about-preview-image img{
    display:block;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    object-fit:cover!important;
  }
  .about-preview-copy h3{
    max-width:13ch!important;
  }
}

@media (min-width:981px) and (max-width:1240px){
  .about-mega-preview{
    grid-template-columns:minmax(0,1.48fr) minmax(260px,.72fr)!important;
  }
}

@media (min-width:761px) and (max-width:980px){
  .about-mega-list nav{grid-template-rows:repeat(3,minmax(64px,1fr))!important}
  .about-preview-image{min-height:0!important;aspect-ratio:16/10}
  .about-preview-image img{height:100%!important;min-height:0!important}
}

/* V51 — Packaging destination removed; footer rebalances its remaining columns. */
@media (min-width:1181px){
  .footer-grid{
    grid-template-columns:minmax(260px,1.45fr) repeat(3,minmax(145px,.9fr))!important;
  }
}

/* ============================================================
   V52 — expanded editorial composition for the shorter Group copy.
   ============================================================ */
.group-v30-intro{
  min-height:100svh!important;
  padding:calc(var(--header-closed) + clamp(42px,5vh,72px)) 0 clamp(56px,7vh,88px)!important;
  display:flex;
  align-items:center;
  background:var(--paper)!important;
}
.group-v30-intro .group-v30-intro-grid{
  width:100%;
  grid-template-columns:minmax(0,3fr) minmax(390px,2fr)!important;
  gap:0!important;
  align-items:center!important;
}
.group-v30-intro-copy{
  min-width:0;
  padding-right:clamp(64px,7vw,132px);
}
.group-v30-intro-copy h1{
  max-width:none!important;
  margin:0!important;
  color:var(--brand-dark)!important;
  font-size:clamp(72px,6.7vw,112px)!important;
  line-height:.86!important;
  letter-spacing:-.052em!important;
}
.group-v52-accent{
  display:block;
  width:clamp(76px,7vw,112px);
  height:3px;
  margin:clamp(48px,6vh,72px) 0 clamp(42px,5vh,62px);
  background:var(--gold);
}
.group-v30-intro-body{
  max-width:59ch!important;
}
.group-v30-intro-body p{
  margin:0!important;
  color:var(--ink)!important;
  font-size:clamp(18px,1.34vw,22px)!important;
  line-height:1.7!important;
}
.group-v30-relationship{
  width:100%;
  max-width:none!important;
  min-height:clamp(620px,70vh,760px);
  padding:clamp(10px,2vh,24px) 0 clamp(10px,2vh,24px) clamp(58px,6.5vw,118px)!important;
  border-left:1px solid rgba(33,51,41,.24);
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
}
.group-v30-rel-node{
  width:100%;
  min-height:0!important;
  padding:0!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center;
  border:0!important;
}
.group-v30-rel-node img{
  margin:0 auto clamp(14px,1.8vh,20px)!important;
  object-position:center!important;
}
.group-v30-rel-hk img{
  max-width:clamp(86px,6.5vw,112px)!important;
  max-height:96px!important;
}
.group-v30-rel-modern img{
  max-width:clamp(250px,18vw,330px)!important;
  max-height:88px!important;
}
.group-v30-rel-mengniu img{
  max-width:clamp(210px,15vw,286px)!important;
  max-height:92px!important;
}
.group-v30-rel-node strong{
  color:var(--brand-dark)!important;
  font-size:clamp(27px,2.15vw,36px)!important;
  line-height:1.08!important;
}
.group-v30-rel-node small{
  order:3;
  margin:clamp(10px,1.3vh,14px) 0 0!important;
  color:var(--gold)!important;
  font-size:clamp(9px,.72vw,11px)!important;
  line-height:1.45!important;
  letter-spacing:.17em!important;
}
.group-v30-rel-connector{
  width:100%;
  min-height:clamp(66px,8vh,92px);
  padding:0!important;
  justify-content:center!important;
  color:var(--gold)!important;
}
.group-v30-rel-connector b{
  color:var(--gold)!important;
  font-size:clamp(27px,2vw,34px)!important;
  line-height:1;
}

html[dir="rtl"] .group-v30-intro-copy{
  padding-right:0;
  padding-left:clamp(64px,7vw,132px);
}
html[dir="rtl"] .group-v30-relationship{
  padding-left:0!important;
  padding-right:clamp(58px,6.5vw,118px)!important;
  border-left:0;
  border-right:1px solid rgba(33,51,41,.24);
}

@media (max-width:980px){
  .group-v30-intro{
    min-height:0!important;
    padding:calc(var(--header-closed) + 58px) 0 84px!important;
  }
  .group-v30-intro .group-v30-intro-grid{
    grid-template-columns:1fr!important;
    gap:68px!important;
  }
  .group-v30-intro-copy,
  html[dir="rtl"] .group-v30-intro-copy{
    padding:0!important;
  }
  .group-v30-intro-copy h1{
    font-size:clamp(56px,10.5vw,84px)!important;
    line-height:.9!important;
  }
  .group-v30-relationship,
  html[dir="rtl"] .group-v30-relationship{
    min-height:0;
    padding:64px 0 0!important;
    border-left:0;
    border-right:0;
    border-top:1px solid rgba(33,51,41,.24);
  }
}

@media (max-width:600px){
  .group-v30-intro{padding-top:calc(var(--header-closed) + 42px)!important}
  .group-v30-intro-copy h1{font-size:clamp(46px,13vw,64px)!important;line-height:.94!important}
  .group-v52-accent{margin:38px 0 34px}
  .group-v30-intro-body p{font-size:17px!important;line-height:1.65!important}
  .group-v30-rel-modern img{max-width:min(290px,88%)!important}
  .group-v30-rel-mengniu img{max-width:min(250px,78%)!important}
  .group-v30-rel-connector{min-height:72px}
}

/* ============================================================
   V53 — single full-bleed Our Mission composition.
   ============================================================ */
.mission-v53{
  position:relative;
  min-height:100svh;
  overflow:hidden;
  isolation:isolate;
  display:flex;
  align-items:center;
  background:#33443a;
  color:#f5efe2;
}
.mission-v53-photo{
  position:absolute;
  inset:0;
  z-index:-3;
  background:url("assets/site/approach-alfalfa-field-v24.png") center 50%/cover no-repeat;
  transform:scale(1.003);
}
.mission-v53-shade{
  position:absolute;
  inset:0;
  z-index:-2;
  background:
    linear-gradient(90deg,rgba(19,30,25,.18) 0%,rgba(19,30,25,.05) 58%,rgba(19,30,25,.02) 100%),
    linear-gradient(180deg,rgba(23,28,24,.05),rgba(23,28,24,.16));
}
.mission-v53-shell{
  width:100%;
  padding-top:calc(var(--header-closed) + clamp(46px,6vh,78px));
  padding-bottom:clamp(58px,7vh,92px);
}
.mission-v53-panel{
  width:min(760px,57vw);
  padding:clamp(48px,5vw,78px) clamp(44px,5.2vw,82px) clamp(50px,5vw,74px);
  border:1px solid rgba(239,226,195,.20);
  background:rgba(34,42,38,.64);
  box-shadow:0 28px 78px rgba(12,18,15,.18);
  backdrop-filter:blur(11px) saturate(.88);
  -webkit-backdrop-filter:blur(11px) saturate(.88);
}
.mission-v53-label{
  margin:0 0 clamp(24px,3vh,36px);
  color:#c7a85d;
  font-size:11px;
  font-weight:700;
  line-height:1.2;
  letter-spacing:.22em;
  text-transform:uppercase;
}
.mission-v53-panel h1{
  margin:0;
  color:#f5efe2;
  font:400 clamp(52px,4.8vw,80px)/1.01 var(--serif);
  letter-spacing:-.042em;
}
.mission-v53-panel h1 span{display:block}
.mission-v53-copy{
  max-width:580px;
  margin:clamp(30px,3.8vh,46px) 0 0;
  color:rgba(248,243,233,.88);
  font-size:clamp(16px,1.15vw,19px);
  line-height:1.68;
}
html[dir="rtl"] .mission-v53-panel{margin-left:auto}

@media (max-width:980px){
  .mission-v53-panel{width:min(760px,82vw)}
}
@media (max-width:680px){
  .mission-v53{min-height:calc(100svh - var(--header-closed))}
  .mission-v53-photo{background-position:58% center}
  .mission-v53-shade{
    background:linear-gradient(180deg,rgba(19,28,24,.10),rgba(19,28,24,.30));
  }
  .mission-v53-shell{
    padding-top:calc(var(--header-closed) + 34px);
    padding-bottom:42px;
  }
  .mission-v53-panel{
    width:100%;
    padding:36px 25px 40px;
    background:rgba(34,42,38,.68);
    backdrop-filter:blur(9px) saturate(.88);
    -webkit-backdrop-filter:blur(9px) saturate(.88);
  }
  .mission-v53-label{margin-bottom:22px;font-size:10px}
  .mission-v53-panel h1{font-size:clamp(42px,12vw,58px);line-height:1.03}
  .mission-v53-copy{margin-top:28px;font-size:16px;line-height:1.62}
}

@media (prefers-reduced-motion:reduce){
  .mission-v53-panel{opacity:1!important;transform:none!important;transition:none!important}
}

/* ============================================================
   V54 — three-part corporate footer and Incoming Hay Truck mission.
   ============================================================ */
.footer.footer-v54{
  min-height:430px;
  padding:58px 0 28px!important;
  background:var(--brand-green)!important;
  color:#f4efe3;
}
.footer.footer-v54::before{display:none!important}
.footer-v54-watermark{
  position:absolute!important;
  z-index:0!important;
  top:50%;
  right:clamp(20px,3vw,54px);
  width:clamp(250px,20vw,350px);
  aspect-ratio:1;
  transform:translateY(-54%);
  background:url("assets/brand/haykingdom-logo-white.png") center/contain no-repeat;
  opacity:.045;
  filter:grayscale(1) brightness(1.8);
  pointer-events:none;
}
.footer-v54-main{
  position:relative;
  z-index:1;
  min-height:300px;
  display:grid;
  grid-template-columns:minmax(390px,1.6fr) minmax(190px,.85fr) minmax(210px,.9fr);
  gap:clamp(58px,4.5vw,76px);
  align-items:center;
  padding-right:clamp(240px,18vw,300px);
}
.footer-v54-company{align-self:center;max-width:460px}
.footer-v54-logo{display:block;width:88px;height:auto}
.footer-v54-company>strong{
  display:block;
  margin-top:18px;
  color:#f4efe3;
  font:400 31px/1.12 var(--serif);
  letter-spacing:-.01em;
}
.footer-v54-company>strong::after{
  content:"";
  display:block;
  width:64px;
  height:2px;
  margin-top:23px;
  background:var(--gold);
}
.footer-v54-contact{
  display:grid;
  gap:11px;
  margin-top:25px;
}
.footer-v54-contact>div{
  display:grid;
  grid-template-columns:20px minmax(0,1fr);
  gap:14px;
  align-items:start;
  color:rgba(247,242,232,.82);
  font-size:15px;
  line-height:1.5;
}
.footer-v54-contact svg{
  width:17px;
  height:17px;
  margin-top:3px;
  fill:none;
  stroke:#bfa45f;
  stroke-width:1.45;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.footer-v54-contact a,
.footer-v54-contact span{
  display:block;
  margin:0!important;
  color:rgba(247,242,232,.82)!important;
  font-size:15px!important;
  line-height:1.5!important;
}
.footer-v54-contact a:hover{color:#fff!important}
.footer-v54-nav{align-self:center}
.footer-v54-nav h3{
  margin:0 0 26px!important;
  color:#c4a65a!important;
  font-size:12px!important;
  font-weight:700;
  line-height:1.2;
  letter-spacing:.20em!important;
}
.footer-v54-nav>a{
  width:100%;
  max-width:235px;
  margin:0 0 14px!important;
  padding:0 0 14px;
  border-bottom:1px solid rgba(244,239,227,.13);
  color:rgba(247,242,232,.80)!important;
  font-size:16px!important;
  line-height:1.35!important;
}
.footer-v54-nav>a:last-child{margin-bottom:0!important;padding-bottom:0;border-bottom:0}
.footer-v54-nav>a:hover{color:#fff!important}
.footer-v54-connect>a{
  max-width:none;
  padding:0;
  border:0;
  display:flex!important;
  align-items:center;
  gap:14px;
  margin-bottom:18px!important;
}
.footer-v54-connect svg{
  flex:0 0 auto;
  width:18px;
  height:18px;
  fill:none;
  stroke:var(--gold);
  stroke-width:1.6;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.footer-v54-connect a:nth-of-type(3) svg{fill:var(--gold);stroke:none}
.footer-v54-connect .footer-icon-fill{fill:var(--gold);stroke:none}
.footer-v54-bottom{
  position:relative;
  z-index:1;
  margin-top:30px;
  padding-top:20px;
  border-top:1px solid rgba(244,239,227,.18);
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:center;
  color:rgba(247,242,232,.48);
  font-size:13px;
  line-height:1.3;
}
.footer-v54-bottom>span:last-child{justify-self:end}

.mission-v53-photo{
  background-image:url("assets/site/winters-gallery/mike-lowrie-truck.webp")!important;
  background-position:center 52%!important;
}
.mission-v53-panel h1 .mission-v54-gold{color:#c7a85d}

html[dir="rtl"] .footer-v54-main{
  padding-right:0;
  padding-left:clamp(240px,18vw,300px);
}
html[dir="rtl"] .footer-v54-watermark{right:auto;left:clamp(20px,3vw,54px)}
html[dir="rtl"] .footer-v54-contact>div{grid-template-columns:20px minmax(0,1fr)}

@media (max-width:1100px){
  .footer-v54-main{
    grid-template-columns:minmax(300px,1.4fr) minmax(150px,.75fr) minmax(150px,.75fr);
    gap:44px;
    padding-right:70px;
  }
  html[dir="rtl"] .footer-v54-main{padding-left:70px}
  .footer-v54-watermark{right:-34px;width:225px}
  html[dir="rtl"] .footer-v54-watermark{left:-34px}
}
@media (max-width:820px){
  .footer.footer-v54{min-height:0;padding:58px 0 26px!important}
  .footer-v54-main,
  html[dir="rtl"] .footer-v54-main{
    min-height:0;
    grid-template-columns:minmax(0,1.35fr) minmax(140px,.65fr);
    gap:48px 40px;
    padding-right:0;
    padding-left:0;
    align-items:start;
  }
  .footer-v54-company{grid-column:1/-1}
  .footer-v54-watermark{top:100px;right:-60px;width:230px}
  html[dir="rtl"] .footer-v54-watermark{left:-60px}
  .footer-v54-bottom{margin-top:44px}
}
@media (max-width:520px){
  .footer-v54-main,
  html[dir="rtl"] .footer-v54-main{grid-template-columns:1fr;gap:38px}
  .footer-v54-company{grid-column:auto}
  .footer-v54-logo{width:62px}
  .footer-v54-nav h3{margin-bottom:18px!important}
  .footer-v54-bottom{grid-template-columns:1fr;gap:10px}
  .footer-v54-bottom>span:last-child{justify-self:start}
  html[dir="rtl"] .footer-v54-bottom>span:last-child{justify-self:end}
  .footer-v54-watermark{top:88px;right:-72px;width:215px}
  html[dir="rtl"] .footer-v54-watermark{left:-72px}
  .mission-v53-photo{background-position:53% center!important}
}

/* ============================================================
   V56 — minimal Careers page using the Imperial Loading Containers image.
   ============================================================ */
.careers-v56{
  min-height:100svh;
  padding:calc(var(--header-closed) + clamp(58px,6vw,96px)) 0 clamp(72px,7vw,112px);
  display:flex;
  align-items:center;
  background:var(--paper);
}
.careers-v56-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(420px,.85fr);
  gap:clamp(64px,7vw,118px);
  align-items:center;
}
.careers-v56-copy{max-width:680px}
.careers-v56-label{
  margin:0 0 23px;
  color:var(--gold);
  font-size:11px;
  font-weight:700;
  line-height:1.2;
  letter-spacing:.22em;
  text-transform:uppercase;
}
.careers-v56-copy h1{
  max-width:11ch;
  margin:0;
  color:var(--brand-dark);
  font:400 clamp(58px,5.8vw,92px)/.96 var(--serif);
  letter-spacing:-.045em;
}
.careers-v56-accent{
  display:block;
  width:82px;
  height:2px;
  margin:clamp(32px,4vh,48px) 0 clamp(28px,3.4vh,42px);
  background:var(--gold);
}
.careers-v56-intro{
  max-width:520px;
  margin:0;
  color:var(--ink);
  font-size:clamp(17px,1.2vw,20px);
  line-height:1.7;
}
.careers-v56-contacts{
  max-width:640px;
  margin-top:clamp(38px,4.5vh,58px);
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(180px,.75fr);
  gap:0;
  border-top:1px solid var(--line);
}
.careers-v56-contacts>div{
  min-width:0;
  padding:24px 28px 0 0;
  display:grid;
  grid-template-columns:22px minmax(0,1fr);
  gap:15px;
  align-items:start;
}
.careers-v56-contacts>div+div{
  padding-left:28px;
  border-left:1px solid var(--line);
}
.careers-v56-contacts svg{
  width:19px;
  height:19px;
  fill:none;
  stroke:var(--gold);
  stroke-width:1.5;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.careers-v56-contacts p{min-width:0;margin:0}
.careers-v56-contacts small{
  display:block;
  margin:1px 0 12px;
  color:var(--gold);
  font-size:10px;
  font-weight:700;
  line-height:1.2;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.careers-v56-contacts a{
  color:var(--brand-dark);
  font-size:clamp(15px,1.05vw,18px);
  line-height:1.45;
  overflow-wrap:anywhere;
}
.careers-v56-contacts a:hover{color:var(--brand-green)}
.careers-v56-image{
  width:min(100%,590px);
  margin:0;
  justify-self:end;
  aspect-ratio:1086/1093;
  overflow:hidden;
  background:var(--cream);
}
.careers-v56-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
html[dir="rtl"] .careers-v56-image{justify-self:start}
html[dir="rtl"] .careers-v56-contacts>div{padding-right:0;padding-left:28px}
html[dir="rtl"] .careers-v56-contacts>div+div{padding-right:28px;border-left:0;border-right:1px solid var(--line)}

/* Increase only the vertical spacing between Homepage Hero title lines. */
body.route-home main#app .hero .hero-content h1 > span.hero-delivery-line:nth-child(2){
  line-height:1.18!important;
}

@media (max-width:980px){
  .careers-v56{min-height:0;padding-top:calc(var(--header-closed) + 62px)}
  .careers-v56-grid{grid-template-columns:1fr;gap:64px}
  .careers-v56-copy{max-width:760px}
  .careers-v56-image,
  html[dir="rtl"] .careers-v56-image{width:min(100%,680px);justify-self:start}
}
@media (max-width:620px){
  .careers-v56{padding-top:calc(var(--header-closed) + 44px);padding-bottom:74px}
  .careers-v56-grid{gap:48px}
  .careers-v56-copy h1{font-size:clamp(48px,14vw,66px)}
  .careers-v56-contacts{grid-template-columns:1fr;gap:0}
  .careers-v56-contacts>div,
  html[dir="rtl"] .careers-v56-contacts>div{padding:22px 0}
  .careers-v56-contacts>div+div,
  html[dir="rtl"] .careers-v56-contacts>div+div{border-left:0;border-right:0;border-top:1px solid var(--line)}
  .careers-v56-image{aspect-ratio:1086/1093}
}

/* V57: give both footer navigation columns one shared top baseline. */
@media (min-width:821px){
  .footer.footer-v54 .footer-v54-nav{
    align-self:start;
    padding-top:44px;
  }
}


/* ============================================================
   V58 — SINGLE AUTHORITATIVE MOBILE LAYER (375px–767px)
   Desktop 1280px+ remains governed by the approved existing rules.
   This block intentionally sits last so historical 520/600/620/680/760
   breakpoints cannot compete with the mobile composition.
   ============================================================ */

/* Mission color correction: only the final keyword is gold in English. */
.mission-v53-panel h1 b.mission-v54-gold{
  display:inline;
  color:#c7a85d;
  font:inherit;
  font-weight:400;
}

/* Site captions are a mobile association aid; desktop composition stays unchanged. */
.about-team-photo figcaption{display:none}

@media (max-width:767px){
  :root{
    --header-open:78px;
    --header-closed:78px;
  }

  html,body{
    width:100%;
    max-width:100%;
    overflow-x:hidden!important;
  }
  body{min-width:0}
  main#app,
  main#app>*,
  section,
  footer{
    max-width:100%;
  }
  img,video,canvas,svg{max-width:100%}
  .page-shell,
  body .page-shell.page-shell.page-shell,
  .facility-opening-fullscreen .page-shell,
  .facility-opening-fullscreen .facility-cinematic-hero-minimal .detail-hero-shell,
  .facility-opening-fullscreen .facility-facts-section>.page-shell,
  .facility-machinery-editorial>.page-shell,
  .facility-gallery-minimal>.page-shell{
    width:calc(100% - 40px)!important;
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .section{padding:68px 0}
  .section--compact{padding:58px 0}

  /* HEADER — one centered logo + left hamburger. */
  .site-header,
  .site-header.scrolled,
  .site-header.inner-page{
    height:78px!important;
  }
  .site-header.inner-page,
  .site-header.scrolled{
    background:rgba(56,95,78,.97)!important;
  }
  .header-inner{
    position:relative!important;
    width:calc(100% - 40px)!important;
    height:78px!important;
    grid-template-columns:1fr auto 1fr!important;
    column-gap:0!important;
  }
  .desktop-nav,
  .header-language,
  .about-mega{display:none!important}
  .brand{
    grid-column:2!important;
    justify-self:center!important;
    width:62px!important;
    height:62px!important;
    gap:0!important;
  }
  .brand img,
  .site-header.scrolled .brand img,
  .site-header.inner-page .brand img{
    width:54px!important;
    height:54px!important;
    object-fit:contain!important;
  }
  .brand span{display:none!important}
  .mobile-menu-button{
    grid-column:1!important;
    grid-row:1!important;
    justify-self:start!important;
    align-self:center!important;
    display:grid!important;
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
    padding:10px!important;
    gap:7px!important;
    align-content:center!important;
    border:0!important;
    background:transparent!important;
  }
  .mobile-menu-button span{width:24px!important;height:1px!important;background:#fff!important}
  .mobile-menu{
    top:78px!important;
    max-height:calc(100svh - 78px)!important;
    padding:18px 20px 24px!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
    background:var(--brand-green)!important;
  }
  .mobile-menu:not([hidden]){display:grid!important}
  .mobile-menu a,
  .mobile-about-toggle,
  .mobile-language-options button{
    min-height:44px!important;
    display:flex!important;
    align-items:center!important;
  }

  /* HOME HERO — independent mobile crop, typography and CTA stack. */
  .route-home .hero{
    min-height:100svh!important;
    padding:0 0 30px!important;
    align-items:flex-end!important;
    background-position:72% center!important;
    background-size:cover!important;
  }
  .route-home .hero::before{
    background:
      linear-gradient(180deg,rgba(3,13,9,.18) 0%,rgba(3,13,9,.18) 35%,rgba(3,13,9,.74) 78%,rgba(3,13,9,.86) 100%),
      linear-gradient(90deg,rgba(3,13,9,.36),rgba(3,13,9,.04) 72%)!important;
  }
  .route-home .hero-content{
    width:calc(100% - 40px)!important;
    max-width:100%!important;
    margin-inline:auto!important;
    padding-top:96px!important;
  }
  .route-home .hero h1{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    line-height:1!important;
    letter-spacing:-.04em!important;
  }
  .route-home .hero .hero-brand-line{
    max-width:none!important;
    font-size:clamp(46px,12.5vw,52px)!important;
    line-height:.98!important;
  }
  body.route-home main#app .hero .hero-content h1 > span.hero-delivery-line:nth-child(2),
  .route-home .hero .hero-delivery-line{
    max-width:18ch!important;
    margin-top:12px!important;
    font-size:clamp(31px,8.6vw,35px)!important;
    line-height:1.06!important;
    letter-spacing:-.03em!important;
  }
  .route-home .hero-pillars{
    margin:24px 0 22px!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:6px!important;
  }
  .route-home .hero-pillars span{
    width:100%!important;
    padding:0!important;
    border:0!important;
    font:400 16px/1.25 var(--serif)!important;
    color:rgba(255,255,255,.86)!important;
  }
  .route-home .hero .button-row{
    width:100%!important;
    margin-top:0!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:11px!important;
  }
  .route-home .hero .button{
    width:100%!important;
    min-height:54px!important;
    padding:0 20px!important;
  }

  /* MOBILE TYPE SCALE — keeps serif hierarchy without desktop-sized overflow. */
  .display-title{font-size:clamp(40px,11vw,50px)!important}
  .section-heading h2,
  body:not(.route-home) .section-heading h2,
  body:not(.route-home) .detail-story-grid h2,
  .detail-cta h2{
    font-size:clamp(32px,9vw,40px)!important;
    line-height:1.03!important;
  }
  body:not(.route-home) .page-hero-content h1,
  .detail-hero h1,
  .editorial-detail-hero h1,
  .article-editorial-header h1,
  .auth-page h1,
  .inquiry-page h1{
    font-size:clamp(40px,11vw,50px)!important;
    line-height:1!important;
  }
  .body-copy,
  .section-intro,
  .lede{font-size:16px!important;line-height:1.68!important}

  /* HOME OVERVIEW */
  .home-overview{
    min-height:0!important;
    padding:68px 0 72px!important;
    overflow:hidden!important;
  }
  .home-overview-grid{
    grid-template-columns:1fr!important;
    gap:36px!important;
  }
  .home-overview-copy,
  .home-overview-map{max-width:100%!important}
  .home-overview-copy h2{
    max-width:14ch!important;
    margin-bottom:22px!important;
    font-size:clamp(40px,10.8vw,48px)!important;
    line-height:1!important;
  }
  .home-overview-copy>p:not(.eyebrow){font-size:16px!important;line-height:1.65!important}
  .home-overview-facts{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:22px 18px!important;
  }
  .home-overview-map img{
    width:100%!important;
    height:auto!important;
    object-fit:contain!important;
  }

  /* OUR TEAM — one full-width real site image per row. */
  .about-team-gallery{
    padding:calc(78px + 42px) 0 76px!important;
  }
  .about-team-gallery-inner>h1{
    max-width:15ch!important;
    margin-bottom:42px!important;
    font-size:clamp(40px,10.8vw,48px)!important;
    line-height:1.03!important;
  }
  .about-team-gallery-photos{gap:34px!important}
  .about-team-photo,
  .about-team-photo-left,
  .about-team-photo-right{
    width:100%!important;
    max-width:100%!important;
    align-self:stretch!important;
    overflow:visible!important;
  }
  .about-team-photo img{
    width:100%!important;
    height:auto!important;
    aspect-ratio:auto!important;
    object-fit:contain!important;
  }
  .about-team-photo figcaption{
    display:block!important;
    margin-top:12px;
    padding-top:10px;
    border-top:1px solid var(--line);
    color:var(--brand-green);
    font-size:10px;
    font-weight:700;
    letter-spacing:.16em;
    text-transform:uppercase;
  }

  /* OUR MISSION */
  .mission-v53{
    min-height:calc(100svh - 78px)!important;
  }
  .mission-v53-photo{
    background-position:54% center!important;
  }
  .mission-v53-shade{
    background:linear-gradient(180deg,rgba(19,28,24,.08),rgba(19,28,24,.34))!important;
  }
  .mission-v53-shell{
    width:calc(100% - 40px)!important;
    padding-top:calc(78px + 26px)!important;
    padding-bottom:32px!important;
    display:flex!important;
    align-items:flex-end!important;
  }
  .mission-v53-panel{
    width:100%!important;
    max-width:100%!important;
    padding:30px 22px 32px!important;
    background:rgba(34,42,38,.68)!important;
  }
  .mission-v53-label{margin-bottom:18px!important;font-size:10px!important}
  .mission-v53-panel h1{
    font-size:clamp(40px,10.8vw,48px)!important;
    line-height:1.04!important;
  }
  .mission-v53-copy{
    margin-top:24px!important;
    font-size:15px!important;
    line-height:1.62!important;
  }

  /* OUR GROUP */
  .group-v30-intro{
    min-height:0!important;
    padding:calc(78px + 44px) 0 76px!important;
  }
  .group-v30-intro-grid{
    grid-template-columns:1fr!important;
    gap:48px!important;
  }
  .group-v30-intro-copy h1{
    max-width:12ch!important;
    margin:0 0 24px!important;
    font-size:clamp(40px,10.8vw,48px)!important;
    line-height:1.02!important;
  }
  .group-v30-intro-body p{font-size:16px!important;line-height:1.7!important}
  .group-v30-relationship{padding:0!important}
  .group-v30-rel-node{
    min-height:0!important;
    padding:22px 0!important;
  }
  .group-v30-rel-node img{
    max-width:min(230px,78vw)!important;
    max-height:72px!important;
    margin-bottom:16px!important;
  }
  .group-v30-rel-hk img{max-width:82px!important}
  .group-v30-rel-node strong{font-size:24px!important}
  .group-v30-rel-connector{
    min-height:44px!important;
    padding:7px 0!important;
    justify-content:center!important;
  }

  /* PRODUCTS / CATALOG */
  .product-gallery-page,
  .catalog-page{
    min-height:0!important;
    padding-top:calc(78px + 46px)!important;
    padding-bottom:76px!important;
  }
  .product-gallery-heading-minimal,
  body.route-catalog .product-gallery-heading-minimal{
    max-width:100%!important;
    margin-bottom:36px!important;
  }
  .product-gallery-heading-minimal p,
  body.route-catalog .product-gallery-heading-minimal p{
    width:100%!important;
    max-width:18ch!important;
    white-space:normal!important;
    text-wrap:balance!important;
    font-size:clamp(38px,10.5vw,46px)!important;
    line-height:1.04!important;
  }
  .catalog-grid,
  .editorial-catalog .catalog-grid,
  .product-grid{
    grid-template-columns:1fr!important;
    gap:14px!important;
    background:transparent!important;
  }
  .catalog-card,
  .product-gallery-card,
  .product-card{
    min-height:0!important;
    aspect-ratio:4/5!important;
  }
  .catalog-card-copy,
  .product-card-copy{inset:auto 20px 22px!important}

  /* LOCATIONS LANDING */
  .facilities-alternating-page{
    padding:calc(78px + 42px) 0 74px!important;
  }
  .facilities-alternating-shell>h1{
    margin-bottom:32px!important;
    font-size:clamp(42px,11vw,50px)!important;
    line-height:1!important;
  }
  .facilities-alternating-list{gap:26px!important}
  .facility-alternating-row,
  .facility-alternating-row.is-reverse{
    grid-template-columns:1fr!important;
    min-height:0!important;
  }
  .facility-alternating-row.is-reverse figure,
  .facility-alternating-row.is-reverse .facility-alternating-copy{order:initial!important}
  .facility-alternating-row figure{
    min-height:0!important;
    aspect-ratio:16/10!important;
  }
  .facility-alternating-copy{padding:23px 20px 26px!important}
  .facility-alternating-copy h2{
    max-width:none!important;
    font-size:clamp(32px,8.8vw,40px)!important;
  }
  .facility-alternating-copy span{
    min-height:44px!important;
    margin-top:18px!important;
    display:inline-flex!important;
    align-items:center!important;
  }

  /* LOCATION DETAILS */
  .facility-opening-fullscreen{
    display:block!important;
    min-height:0!important;
    overflow:visible!important;
  }
  .facility-opening-fullscreen .facility-cinematic-hero-minimal,
  .facility-opening-fullscreen .facility-cinematic-hero-minimal .detail-hero-shell{
    min-height:54svh!important;
    height:54svh!important;
  }
  .facility-opening-fullscreen .facility-cinematic-hero-minimal .detail-hero-shell{
    width:calc(100% - 40px)!important;
    padding-top:78px!important;
    padding-bottom:18px!important;
    align-items:flex-end!important;
  }
  .facility-opening-fullscreen .facility-cinematic-hero-minimal .translucent-story-panel{
    width:100%!important;
    max-width:100%!important;
    padding:20px 18px!important;
    margin:0!important;
    background:rgba(56,95,78,.34)!important;
  }
  .facility-opening-fullscreen .facility-cinematic-hero-minimal .translucent-story-panel h1{
    font-size:clamp(38px,10.5vw,48px)!important;
    line-height:1!important;
  }
  .facility-opening-fullscreen .facility-facts-section{
    min-height:0!important;
    height:auto!important;
    padding:48px 0 54px!important;
  }
  .facility-profile{
    grid-template-columns:1fr!important;
    gap:36px!important;
  }
  .facility-profile-identity{padding:0!important}
  .facility-profile-identity h2{font-size:clamp(40px,10.8vw,48px)!important}
  .facility-profile.no-role .facility-profile-description,
  .facility-profile-description{
    max-width:100%!important;
    font-size:18px!important;
    line-height:1.48!important;
  }
  .facility-profile-row{
    grid-template-columns:54px minmax(0,1fr)!important;
    gap:15px!important;
    min-height:0!important;
    padding:20px 0!important;
  }
  .facility-profile-number{font-size:28px!important;gap:8px!important}
  .facility-profile-number span{height:25px!important}
  .facility-profile-copy p{
    font-size:clamp(18px,5.2vw,22px)!important;
    line-height:1.38!important;
    overflow-wrap:anywhere;
  }
  .facility-machinery-editorial{
    min-height:0!important;
    overflow:hidden!important;
  }
  .facility-machinery-editorial>.page-shell{
    min-height:0!important;
    padding-top:50px!important;
    padding-bottom:54px!important;
  }
  .facility-machinery-editorial .facility-section-heading{
    width:100%!important;
    margin:0 0 36px!important;
  }
  .facility-machinery-editorial .facility-section-heading h2{
    width:auto!important;
    max-width:100%!important;
    white-space:normal!important;
    font-size:clamp(34px,9.5vw,42px)!important;
    line-height:1.02!important;
  }
  .facility-machinery-editorial .machine-grid-editorial,
  .facility-machinery-editorial .machine-grid-editorial[data-count="2"],
  .facility-machinery-editorial .machine-grid-editorial[data-count="3"],
  .facility-machinery-editorial .machine-grid-editorial[data-count="4"]{
    width:100%!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
    margin:0!important;
  }
  .facility-machinery-editorial .machine-grid-editorial[data-count="3"] .machine-card-editorial:last-child{grid-column:auto!important}
  .facility-machinery-editorial .machine-card-editorial{
    min-height:0!important;
    padding:20px 18px 22px!important;
  }
  .facility-machinery-editorial .machine-card-inner{
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:14px!important;
  }
  .facility-machinery-editorial .machine-copy h3{
    font-size:clamp(25px,7vw,32px)!important;
    overflow-wrap:anywhere;
  }
  .facility-machinery-editorial .machine-icon{
    width:82px!important;
    height:auto!important;
    max-height:58px!important;
  }
  .facility-gallery-minimal{padding:62px 0 72px!important}
  .facility-gallery-minimal .facility-section-heading h2{
    font-size:clamp(34px,9.5vw,42px)!important;
  }
  .location-gallery-real,
  .location-gallery-expanded{
    grid-template-columns:1fr!important;
    gap:16px!important;
  }
  .location-gallery-real figure,
  .location-gallery-real .gallery-aerial-feature,
  .location-gallery-expanded figure{
    min-height:0!important;
    aspect-ratio:auto!important;
  }
  .location-gallery-real figure img,
  .location-gallery-expanded figure img{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    object-fit:contain!important;
  }

  /* CAREERS */
  .careers-v56{
    min-height:0!important;
    padding:calc(78px + 44px) 0 74px!important;
    align-items:flex-start!important;
  }
  .careers-v56-grid{
    grid-template-columns:1fr!important;
    gap:40px!important;
  }
  .careers-v56-copy{max-width:100%!important}
  .careers-v56-copy h1{
    max-width:11ch!important;
    font-size:clamp(42px,11vw,50px)!important;
    line-height:1!important;
  }
  .careers-v56-accent{margin:28px 0 24px!important}
  .careers-v56-intro{font-size:16px!important;line-height:1.65!important}
  .careers-v56-contacts{
    grid-template-columns:1fr!important;
    margin-top:30px!important;
  }
  .careers-v56-contacts>div,
  html[dir="rtl"] .careers-v56-contacts>div{
    min-height:66px!important;
    padding:20px 0!important;
  }
  .careers-v56-contacts>div+div,
  html[dir="rtl"] .careers-v56-contacts>div+div{
    border-left:0!important;
    border-right:0!important;
    border-top:1px solid var(--line)!important;
  }
  .careers-v56-contacts a{
    min-height:44px!important;
    display:inline-flex!important;
    align-items:center!important;
    font-size:16px!important;
  }
  .careers-v56-image,
  html[dir="rtl"] .careers-v56-image{
    width:100%!important;
    max-width:100%!important;
    justify-self:stretch!important;
    aspect-ratio:auto!important;
    overflow:visible!important;
  }
  .careers-v56-image img{
    width:100%!important;
    height:auto!important;
    object-fit:contain!important;
  }

  /* CONTACT */
  .contact-page-hero,
  .contact-page-information-only{
    min-height:100svh!important;
    padding-top:78px!important;
    background-position:center center!important;
  }
  .contact-page-information-only .contact-partnership-shell{
    width:calc(100% - 40px)!important;
    min-height:calc(100svh - 78px)!important;
    padding:34px 0 42px!important;
    align-items:stretch!important;
    justify-content:center!important;
  }
  .contact-page-information-only .contact-panel-stack{
    width:100%!important;
    max-width:100%!important;
  }
  .contact-page-information-only .contact-panel-offset{
    top:-14px!important;
    left:-8px!important;
    width:58%!important;
    height:34%!important;
  }
  .contact-page-information-only .contact-glass-panel-simple{
    padding:30px 22px 32px!important;
  }
  .contact-page-information-only .contact-glass-panel-simple h1{
    font-size:clamp(42px,11vw,50px)!important;
  }
  .contact-page-information-only .contact-panel-rule{margin:22px 0 24px!important}
  .contact-page-information-only .contact-business-meta-two-column{
    grid-template-columns:1fr!important;
    gap:0!important;
  }
  .contact-page-information-only .contact-left-stack{gap:0!important}
  .contact-page-information-only .contact-left-stack>div,
  .contact-page-information-only .contact-hours{
    padding:18px 0!important;
    border-left:0!important;
    border-top:1px solid rgba(226,208,164,.30)!important;
  }
  .contact-page-information-only .contact-left-stack>div:first-child{border-top:0!important;padding-top:0!important}
  .contact-page-information-only .contact-business-meta a{
    min-height:44px!important;
    display:flex!important;
    align-items:center!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }

  /* FOOTER — compact company block + Explore/Connect two-column grid. */
  .footer.footer-v54{
    min-height:0!important;
    padding:44px 0 22px!important;
    background:var(--brand-green)!important;
    overflow:hidden!important;
  }
  .footer-v54-watermark,
  html[dir="rtl"] .footer-v54-watermark{
    top:24px!important;
    right:20px!important;
    left:auto!important;
    width:min(210px,52vw)!important;
    height:auto!important;
    aspect-ratio:1!important;
    transform:none!important;
    background-position:center!important;
    background-size:contain!important;
    background-repeat:no-repeat!important;
    opacity:.045!important;
  }
  .footer-v54-main,
  html[dir="rtl"] .footer-v54-main{
    width:calc(100% - 40px)!important;
    min-height:0!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:34px 22px!important;
    padding:0!important;
    align-items:start!important;
  }
  .footer-v54-company{
    grid-column:1/-1!important;
    max-width:100%!important;
    padding-right:76px!important;
  }
  html[dir="rtl"] .footer-v54-company{padding-right:0!important;padding-left:76px!important}
  .footer-v54-logo{width:72px!important}
  .footer-v54-company>strong{
    margin-top:14px!important;
    font-size:27px!important;
  }
  .footer-v54-company>strong::after{margin-top:18px!important}
  .footer-v54-contact{
    gap:7px!important;
    margin-top:19px!important;
  }
  .footer-v54-contact>div{
    grid-template-columns:18px minmax(0,1fr)!important;
    gap:11px!important;
    font-size:14px!important;
  }
  .footer-v54-contact a,
  .footer-v54-contact span{
    font-size:14px!important;
    line-height:1.45!important;
  }
  .footer-v54-contact a{
    min-height:44px!important;
    display:flex!important;
    align-items:center!important;
    overflow-wrap:anywhere!important;
  }
  .footer-v54-nav,
  .footer.footer-v54 .footer-v54-nav{
    align-self:start!important;
    padding-top:0!important;
    min-width:0!important;
  }
  .footer-v54-nav h3{
    margin-bottom:14px!important;
    font-size:11px!important;
  }
  .footer-v54-nav>a{
    width:100%!important;
    max-width:100%!important;
    min-height:44px!important;
    margin:0!important;
    padding:10px 0!important;
    display:flex!important;
    align-items:center!important;
    font-size:14px!important;
    line-height:1.3!important;
  }
  .footer-v54-connect>a{
    gap:9px!important;
    border-bottom:0!important;
  }
  .footer-v54-connect svg{
    width:16px!important;
    height:16px!important;
  }
  .footer-v54-bottom{
    width:calc(100% - 40px)!important;
    margin-top:26px!important;
    padding-top:17px!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:16px!important;
    font-size:11px!important;
  }
  .footer-v54-bottom>span:last-child{justify-self:end!important;text-align:right!important}

  /* Generic tap-target protection without inflating visible type. */
  a.button,
  button.button,
  .text-link,
  [data-nav][tabindex="0"]{
    min-height:44px;
  }

  /* RTL mirrors mobile spacing but keeps the same one-column/two-column logic. */
  html[dir="rtl"] .facility-opening-fullscreen .facility-cinematic-hero-minimal .translucent-story-panel{
    margin:0!important;
  }
}


/* ============================================================
   V59 — OUR MISSION desktop composition refinement.
   - English Hay. / Quality. / Price. use the gold accent.
   - On desktop, move the glass panel to the far-right half so the
     incoming truck cab remains visually unobstructed.
   - The authoritative <=767px V58 mobile composition is unchanged.
   ============================================================ */
@media (min-width:1100px){
  .mission-v53-shell{
    width:calc(100% - clamp(40px,3vw,64px));
    max-width:none;
  }
  .mission-v53-panel{
    width:clamp(430px,31vw,560px);
    margin-left:auto;
    margin-right:0;
    padding:clamp(42px,3.2vw,58px) clamp(34px,2.6vw,48px) clamp(44px,3.2vw,58px);
  }
  .mission-v53-panel h1{
    font-size:clamp(50px,3.5vw,64px);
    line-height:1.01;
  }
  .mission-v53-label{
    margin-bottom:clamp(22px,2.2vh,30px);
  }
  .mission-v53-copy{
    margin-top:clamp(26px,3vh,36px);
  }
}


/* ============================================================
   V60 — Contact background loading + Mission 3-line desktop lock.
   - Contact uses the same source photograph converted to a lightweight WebP.
   - Desktop Mission headline is always exactly three lines.
   - Panel remains on the right side, widened without moving back over the truck cab.
   - <=767px V58 mobile rules remain authoritative and unchanged.
   ============================================================ */
@media (min-width:1100px){
  .mission-v53-panel{
    width:clamp(560px,37vw,680px)!important;
    margin-left:auto!important;
    margin-right:0!important;
    padding:clamp(42px,3.0vw,56px) clamp(36px,2.5vw,46px) clamp(44px,3.0vw,56px)!important;
  }
  .mission-v53-panel h1{
    font-size:clamp(44px,3.2vw,60px)!important;
    line-height:1.01!important;
  }
  html[lang="en"] .mission-v53-panel h1 span{
    display:block!important;
    white-space:nowrap!important;
  }
}
