:root {
  --navy: #071d37;
  --blue: #3865df;
  --blue-deep: #193d9c;
  --green: #178b25;
  --ice: #edf5ff;
  --mist: #f5f8fa;
  --ink: #122033;
  --muted: #526174;
  --line: #dbe4ed;
  --white: #fff;
  --shadow: 0 18px 45px rgba(8, 29, 55, .12);
  --radius: 24px;
  --wrap: min(1180px, calc(100% - 40px));
}

* { box-sizing: border-box; }
html { overflow-x: hidden; scroll-behavior: smooth; }
body { margin: 0; overflow-x: hidden; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: var(--ink); background: var(--white); line-height: 1.58; }
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
img { max-width: 100%; }
.skip-link { position: absolute; z-index: 99; left: 1rem; top: -5rem; background: var(--white); color: var(--navy); padding: .8rem 1rem; border-radius: 0 0 10px 10px; box-shadow: var(--shadow); }
.skip-link:focus { top: 0; }
.wrap { width: var(--wrap); margin: 0 auto; }
.eyebrow { margin: 0 0 .75rem; color: var(--green); font-size: .73rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
h1, h2, h3, h4, p { margin-top: 0; }
h1, h2, h3 { color: var(--navy); letter-spacing: -.035em; line-height: 1.08; }
h1 { font-size: clamp(2.75rem, 6vw, 5.7rem); margin-bottom: 1.4rem; }
h2 { font-size: clamp(2rem, 3.4vw, 3.35rem); margin-bottom: 1rem; }
h3 { font-size: 1.25rem; margin-bottom: .55rem; }
.lead { max-width: 730px; color: var(--muted); font-size: clamp(1rem, 1.6vw, 1.2rem); }
.section { padding: clamp(4rem, 8vw, 7.3rem) 0; }
.section--mist { background: var(--mist); }
.section--ice { background: var(--ice); }
.section-head { display: grid; grid-template-columns: minmax(0, 650px) 1fr; gap: 2rem; align-items: end; margin-bottom: 2.5rem; }
.section-head > p:last-child { color: var(--muted); max-width: 470px; justify-self: end; }

/* Header */
.site-header { position: sticky; z-index: 30; top: 0; background: rgba(255,255,255,.94); border-bottom: 1px solid rgba(219,228,237,.8); backdrop-filter: blur(16px); }
.header-inner { min-height: 76px; display: flex; align-items: center; gap: 1.2rem; }
.brand { display: flex; align-items: center; gap: .7rem; margin-right: auto; min-width: 0; }
.brand-logo { width: 42px; height: 54px; object-fit: contain; object-position: center; border-radius: 3px; }
.brand-wording { display: grid; gap: .03rem; min-width: 0; }
.brand-name { color: var(--navy); font-size: .88rem; font-weight: 850; letter-spacing: -.025em; line-height: 1.06; }
.brand-sub { color: var(--muted); font-size: .59rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.site-nav { display: flex; align-items: center; gap: 1.1rem; }
.site-nav a { color: #304258; font-size: .78rem; font-weight: 750; white-space: nowrap; }
.site-nav a:hover, .site-nav a[aria-current="page"] { color: var(--blue); }
.nav-cta, .button { display: inline-flex; align-items: center; justify-content: center; gap: .55rem; background: var(--green); border: 1px solid var(--green); color: var(--white); font-size: .75rem; font-weight: 850; letter-spacing: .06em; padding: .85rem 1.1rem; text-transform: uppercase; transition: .2s ease; }
.nav-cta { border-radius: 7px; margin-left: .4rem; }
.button { border-radius: 9px; }
.button:hover, .nav-cta:hover { background: #0d6d19; border-color: #0d6d19; transform: translateY(-2px); }
.button--light { background: rgba(255,255,255,.12); border-color: rgba(255,255,255,.52); color: var(--white); }
.button--light:hover { background: var(--white); border-color: var(--white); color: var(--navy); }
.button--blue { background: var(--blue); border-color: var(--blue); }
.button--blue:hover { background: var(--blue-deep); border-color: var(--blue-deep); }
.button--text { background: transparent; color: var(--blue-deep); border-color: transparent; padding-left: 0; }
.button--text:hover { transform: none; background: transparent; color: var(--green); border-color: transparent; }
.menu-button { display: none; height: 42px; width: 42px; padding: 0; border: 1px solid var(--line); background: var(--white); border-radius: 8px; color: var(--navy); }
.menu-button svg { width: 22px; height: 22px; }

/* Hero & decorative engineering drawings */
.hero { position: relative; overflow: hidden; min-height: min(785px, calc(100vh - 76px)); display: grid; align-items: center; background: var(--navy); color: var(--white); isolation: isolate; }
.hero-media { position: absolute; z-index: -3; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; filter: saturate(.85) contrast(1.06); }
.hero::before, .hero::after { content: ""; position: absolute; inset: 0; pointer-events: none; }
.hero::before { z-index: -2; background: linear-gradient(90deg, rgba(3,15,31,.99) 0%, rgba(5,24,48,.93) 37%, rgba(7,29,55,.67) 62%, rgba(5,22,46,.47) 100%); }
.hero::after { z-index: -1; opacity: .55; background-image: linear-gradient(rgba(135,184,255,.1) 1px, transparent 1px), linear-gradient(90deg, rgba(135,184,255,.1) 1px, transparent 1px); background-size: 52px 52px; mask-image: linear-gradient(90deg, #000 0%, #000 42%, transparent 88%); }
.hero-inner { position: relative; padding: 7rem 0 6.5rem; }
.hero .eyebrow { color: #80dd8b; }
.hero h1 { max-width: 900px; color: var(--white); }
.hero h1 em { color: #a8bbff; font-style: normal; }
.hero-copy { color: #c8d5e8; max-width: 655px; font-size: clamp(1.05rem, 1.7vw, 1.24rem); }
.hero-actions { display: flex; flex-wrap: wrap; gap: .85rem; margin-top: 2.2rem; }
.hero-chips { display: flex; flex-wrap: wrap; gap: .55rem; margin-top: 3.3rem; max-width: 710px; }
.hero-chips span { padding: .45rem .67rem; border: 1px solid rgba(174,203,245,.27); border-radius: 99px; color: #cbd9ec; font-size: .72rem; font-weight: 700; }
.plant-visual { position: absolute; z-index: -1; right: max(3vw, calc((100vw - 1260px)/2)); top: 50%; width: min(47vw, 620px); aspect-ratio: 1 / .84; transform: translateY(-46%); opacity: .56; mix-blend-mode: screen; }
.plant-visual .orb { position: absolute; inset: 4% 9% 7% 3%; border: 1px solid rgba(150,182,255,.33); border-radius: 50%; transform: rotate(-20deg); box-shadow: 0 0 100px rgba(45,98,223,.34), inset 0 0 80px rgba(45,98,223,.15); }
.plant-visual .orb::before, .plant-visual .orb::after { content: ""; position: absolute; inset: 16%; border: 1px solid rgba(67,207,87,.4); border-radius: 50%; }
.plant-visual .orb::after { inset: 34%; border-color: rgba(214,229,255,.5); }
.plant-visual .pipe { position: absolute; display: block; border: 20px solid #3159bf; border-left-width: 15px; border-bottom: 0; opacity: .8; }
.plant-visual .pipe-a { width: 64%; height: 40%; bottom: 7%; left: 1%; border-radius: 150px 150px 0 0; transform: rotate(-15deg); }
.plant-visual .pipe-b { width: 39%; height: 55%; top: 6%; right: 2%; border-color: #168c2d; border-width: 13px; border-top: 0; border-right: 0; border-radius: 0 0 0 150px; transform: rotate(16deg); }
.plant-visual .gauge { position: absolute; width: 108px; aspect-ratio: 1; right: 10%; bottom: 14%; border: 9px solid #dce9ff; border-radius: 50%; box-shadow: 0 0 0 9px rgba(48,99,219,.3); }
.plant-visual .gauge::before { content:""; position: absolute; left: 50%; top: 50%; height: 36%; width: 3px; background: #6de87d; transform-origin: bottom; transform: rotate(45deg); }
.plant-visual .gauge::after { content:""; position: absolute; width: 14px; aspect-ratio: 1; left: calc(50% - 7px); top: calc(50% - 7px); background: #fff; border-radius: 50%; }

.trustbar { background: #fff; border-bottom: 1px solid var(--line); }
.trustbar .wrap { display: grid; grid-template-columns: repeat(3, 1fr); }
.trust-item { padding: 1.45rem 2rem; display: grid; gap: .18rem; border-right: 1px solid var(--line); }
.trust-item:last-child { border-right: 0; }
.trust-item strong { color: var(--navy); font-size: .83rem; letter-spacing: -.01em; }
.trust-item span { color: var(--muted); font-size: .76rem; }

/* Page hero */
.page-hero { position: relative; overflow: hidden; padding: clamp(4rem, 9vw, 8rem) 0; background-color: var(--navy); background-image: linear-gradient(90deg, rgba(3,16,34,.98) 0%, rgba(5,25,50,.92) 40%, rgba(6,25,49,.55) 72%, rgba(5,23,46,.42) 100%), var(--page-hero-image, linear-gradient(115deg, var(--navy), #10336b)); background-position: center; background-size: cover; color: var(--white); }
.page-hero::after { content:""; position:absolute; width: 50vw; height: 50vw; min-width: 540px; min-height: 540px; right: -18vw; top: -26vw; border: 1px solid rgba(155,193,255,.4); border-radius: 50%; box-shadow: 0 0 0 68px rgba(70,116,224,.1), 0 0 0 137px rgba(70,116,224,.07); }
.page-hero--cold-storage { background-color: var(--navy); background-image: linear-gradient(90deg, rgba(3,16,34,.97) 0%, rgba(5,25,50,.9) 39%, rgba(6,25,49,.48) 72%, rgba(5,23,46,.3) 100%), url('../images/cold-storage-hero-v2.png'); background-position: center; background-size: cover; }
.page-hero--cold-storage::after { right: -22vw; border-color: rgba(133,236,148,.28); box-shadow: 0 0 0 68px rgba(24,139,37,.09), 0 0 0 137px rgba(70,116,224,.06); }
body[data-page="about"] { --page-hero-image: url("../images/project-discussion-v4.png"); }
body[data-page="solutions"] { --page-hero-image: url("../images/project-commissioning-v4.png"); }
body[data-page="industries"] { --page-hero-image: url("../images/cold-chain-produce-v3.png"); }
body[data-page="equipment"] { --page-hero-image: url("../images/industrial-refrigeration-hero-v2.png"); }
body[data-page="frick"] { --page-hero-image: url("../images/industrial-refrigeration-hero-v2.png"); }
body[data-page="projects"] { --page-hero-image: url("../images/project-commissioning-v4.png"); }
body[data-page="service"] { --page-hero-image: url("../images/service-maintenance-v4.png"); }
body[data-page="intelligence"] { --page-hero-image: url("../images/cold-chain-intelligence-v4.png"); }
body[data-page="knowledge"] { --page-hero-image: url("../images/cold-chain-intelligence-v4.png"); }
body[data-page="contact"] { --page-hero-image: url("../images/project-discussion-v4.png"); }
body[data-page="privacy"] { --page-hero-image: url("../images/automation-controls-v3.png"); }
.page-hero .wrap { position: relative; z-index: 1; }
.page-hero h1 { max-width: 860px; color: var(--white); font-size: clamp(2.7rem, 5.2vw, 5rem); }
.page-hero .lead { color: #cad8ec; }
.crumb { color: #9cb6df; font-size: .78rem; font-weight: 750; margin-bottom: 1.6rem; }
.crumb a:hover { color: var(--white); }

/* Content patterns */
.grid { display: grid; gap: 1.15rem; }
.grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.card { position: relative; padding: 1.55rem; border: 1px solid var(--line); border-radius: var(--radius); background: var(--white); overflow: hidden; }
.card--lift { transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.card--lift:hover { transform: translateY(-5px); box-shadow: var(--shadow); border-color: rgba(56,101,223,.35); }
.card-number { display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px; color: var(--blue-deep); background: #e8efff; border-radius: 8px; font-size: .75rem; font-weight: 850; margin-bottom: 1.25rem; }
.card p { color: var(--muted); font-size: .92rem; margin-bottom: 0; }
.link-arrow { display: inline-flex; gap: .4rem; margin-top: 1rem; color: var(--blue-deep); font-size: .8rem; font-weight: 800; }
.link-arrow::after { content: "→"; }
.icon-tile { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; margin-bottom: 1.15rem; background: #e9f0ff; border-radius: 12px; color: var(--blue-deep); font-weight: 900; font-size: 1.15rem; }
.feature-list { display: grid; gap: .85rem; padding: 0; margin: 1.5rem 0 0; list-style: none; }
.feature-list li { position: relative; padding-left: 1.45rem; color: var(--muted); }
.feature-list li::before { content: ""; position: absolute; width: .5rem; height: .5rem; left: 0; top: .52rem; border-radius: 50%; background: var(--green); box-shadow: 0 0 0 4px #e1f5e5; }
.split { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(300px, .95fr); gap: clamp(2rem, 6vw, 6rem); align-items: center; }
.split--reverse > :first-child { order: 2; }
.visual-card { min-height: 390px; display: grid; place-items: center; position: relative; overflow: hidden; border-radius: var(--radius); background-color: #092140; background-image: linear-gradient(130deg, rgba(4,19,43,.88), rgba(4,19,43,.32)), var(--visual-image, linear-gradient(140deg, #092140, #1746a3)); background-position: center; background-size: cover; box-shadow: var(--shadow); }
.visual-card::before { content:""; position:absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,0) 24%, rgba(4,19,43,.42) 100%); }
.visual-card::after { content:""; position:absolute; inset: 0; border: 1px solid rgba(255,255,255,.17); border-radius: inherit; pointer-events: none; }
.visual-card--engineering { --visual-image: url("../images/industrial-refrigeration-hero-v2.png"); }
.visual-card--cold-storage { --visual-image: url("../images/cold-storage-hero-v2.png"); }
.visual-card--produce { --visual-image: url("../images/cold-chain-produce-v3.png"); }
.visual-card--dairy { --visual-image: url("../images/dairy-process-v3.png"); }
.visual-card--food { --visual-image: url("../images/vegetarian-food-freezing-v3.png"); }
.visual-card--automation { --visual-image: url("../images/automation-controls-v3.png"); }
.visual-card--process { --visual-image: url("../images/process-cooling-v3.png"); }
.visual-card .visual-label { position: relative; z-index: 1; width: 62%; padding: 1.3rem; color: var(--white); border: 1px solid rgba(255,255,255,.25); background: rgba(4,19,43,.5); border-radius: 14px; backdrop-filter: blur(8px); }
.visual-label span { display: block; color: #99f0a5; font-size: .7rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.visual-label strong { display: block; margin-top: .35rem; font-size: 1.25rem; line-height: 1.1; }
.band { padding: 3rem 0; background: var(--navy); color: var(--white); }
.band .wrap { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; }
.band h2 { margin: 0; color: var(--white); font-size: clamp(1.6rem, 2.7vw, 2.5rem); }
.band p { margin: .4rem 0 0; color: #c8d6e8; }
.pill { display: inline-block; padding: .38rem .65rem; border: 1px solid rgba(56,101,223,.28); border-radius: 999px; color: var(--blue-deep); background: #f2f6ff; font-size: .7rem; font-weight: 800; }
.stat { padding: 1.5rem; border-left: 2px solid var(--green); background: #fff; }
.stat strong { display:block; color: var(--navy); font-size: 1.38rem; letter-spacing: -.03em; }
.stat span { color: var(--muted); font-size: .8rem; }
.project-path { position: relative; overflow: hidden; padding: clamp(3rem, 6vw, 5rem); border-radius: var(--radius); background: linear-gradient(135deg, #071e3b 0%, #0e3c7e 100%); color: var(--white); }
.project-path::before { content:""; position:absolute; width: 42%; aspect-ratio: 1; right: -8%; top: -25%; border: 1px solid rgba(161,195,255,.3); border-radius: 50%; box-shadow: 0 0 0 48px rgba(44,99,224,.12), 0 0 0 96px rgba(24,139,37,.08); }
.project-path > * { position: relative; z-index: 1; }
.project-path h2 { color: var(--white); max-width: 650px; }
.project-path .lead { color: #c8d8ec; }
.project-path-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 1rem; margin-top: 2rem; }
.project-path-card { min-height: 156px; padding: 1.25rem; border: 1px solid rgba(206,224,250,.2); border-radius: 14px; background: rgba(4,20,42,.45); backdrop-filter: blur(10px); }
.project-path-card span { display:block; color: #8af397; font-size: .7rem; font-weight: 850; letter-spacing: .1em; }
.project-path-card strong { display:block; margin: .6rem 0 .3rem; color: #fff; font-size: 1.05rem; line-height: 1.15; }
.project-path-card p { margin: 0; color: #c7d7eb; font-size: .82rem; }

/* Specific blocks */
.process { counter-reset: process; }
.process .card { padding-top: 4rem; }
.process .card::before { counter-increment: process; content: "0" counter(process); position: absolute; top: 1rem; left: 1.4rem; color: var(--blue); font-size: .78rem; font-weight: 900; letter-spacing: .12em; }
.application { min-height: 230px; display: flex; flex-direction: column; justify-content: flex-end; color: var(--white); background-color: var(--navy); background-image: linear-gradient(0deg, rgba(4,19,43,.94) 0%, rgba(4,19,43,.52) 58%, rgba(4,19,43,.2) 100%), var(--application-image, linear-gradient(140deg, #092140, #1746a3)); background-position: center; background-size: cover; border: 0; }
.application::before { content:""; position:absolute; inset: 0; z-index: 0; background: linear-gradient(120deg, rgba(54,104,232,.24), transparent 52%); }
.application--produce { --application-image: url("../images/cold-chain-produce-v3.png"); }
.application--cold-storage { --application-image: url("../images/cold-storage-hero-v2.png"); }
.application--dairy { --application-image: url("../images/dairy-process-v3.png"); }
.application--food { --application-image: url("../images/vegetarian-food-freezing-v3.png"); }
.application--beverage { --application-image: url("../images/beverage-process-v3.png"); }
.application--pharma { --application-image: url("../images/pharma-cold-room-v3.png"); }
.application--process { --application-image: url("../images/process-cooling-v3.png"); }
.application--hvac { --application-image: url("../images/industrial-hvac-v3.png"); }
.application--automation { --application-image: url("../images/automation-controls-v3.png"); }
.application > * { position: relative; z-index: 1; }
.application h3 { color: var(--white); }
.application p { color: #d0def1; }
.application .pill { width: max-content; margin-bottom: .9rem; color: #b5f9bd; background: rgba(23,139,37,.18); border-color: rgba(123,239,138,.45); }
.storage-panels { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.storage-panel { min-height: 340px; padding: 1.65rem; border-radius: var(--radius); background: linear-gradient(145deg, #edf7ff, #fff); border: 1px solid var(--line); }
.storage-panel:nth-child(2) { background: linear-gradient(145deg, #ecf8ed, #fff); }
.storage-panel:nth-child(3) { background: linear-gradient(145deg, #f4f5fe, #fff); }
.storage-panel .count { color: var(--blue); font-size: .75rem; font-weight: 850; letter-spacing: .11em; }
.storage-panel p { color: var(--muted); }
.equipment-card { min-height: 285px; padding: 1.65rem; border: 1px solid var(--line); border-radius: var(--radius); background: var(--white); }
.equipment-card { display: flex; flex-direction: column; }
.equipment-media { height: 138px; flex: 0 0 138px; margin: 0 0 1.15rem; overflow: hidden; border-radius: 10px; background: var(--navy); }
.equipment-media img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.equipment-card h3 { margin-top: 0; }
.equipment-card p { margin-bottom: 0; }
.equipment-drawing { height: 118px; margin: 0 0 1.4rem; position: relative; overflow: hidden; border-radius: 10px; background-color: var(--navy); background-image: linear-gradient(120deg, rgba(4,19,43,.5), rgba(4,19,43,.08)), var(--equipment-image, url("../images/industrial-refrigeration-hero-v2.png")); background-position: center; background-size: cover; }
.equipment-drawing::before, .equipment-drawing::after { display: none; }
.equipment-card:nth-child(1), .equipment-card:nth-child(2) { --equipment-image: url("../images/industrial-refrigeration-hero-v2.png"); }
.equipment-card:nth-child(3), .equipment-card:nth-child(5), .equipment-card:nth-child(6) { --equipment-image: url("../images/process-cooling-v3.png"); }
.equipment-card:nth-child(4) { --equipment-image: url("../images/cold-storage-hero-v2.png"); }
.equipment-card:nth-child(7) { --equipment-image: url("../images/dairy-process-v3.png"); }
.equipment-card:nth-child(8) { --equipment-image: url("../images/vegetarian-food-freezing-v3.png"); }
.equipment-card:nth-child(9) { --equipment-image: url("../images/automation-controls-v3.png"); }
.project-card { padding: 0; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; overflow: hidden; }
.project-art { height: 160px; position: relative; overflow: hidden; background-color: #0b2a50; background-image: linear-gradient(115deg, rgba(4,19,43,.62), rgba(4,19,43,.08)), var(--project-image, url("../images/industrial-refrigeration-hero-v2.png")); background-position: center; background-size: cover; }
.project-art::before, .project-art::after { display: none; }
.project-art--cold-storage { --project-image: url("../images/cold-storage-hero-v2.png"); }
.project-art--engineering { --project-image: url("../images/industrial-refrigeration-hero-v2.png"); }
.project-art--food { --project-image: url("../images/vegetarian-food-freezing-v3.png"); }
.project-art--automation { --project-image: url("../images/automation-controls-v3.png"); }
.project-copy { padding: 1.45rem; }
.project-copy p { color: var(--muted); font-size: .88rem; margin-bottom: 0; }
.project-media { height: 180px; margin: 0; overflow: hidden; background: var(--navy); }
.project-media img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.visual-card { isolation: isolate; }
.visual-card-image { position: absolute; z-index: 0; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.visual-card::before { z-index: 1; }
.visual-card::after { z-index: 2; }
.visual-card .visual-label { z-index: 3; }
.tagline-card { min-height: 390px; position: relative; display: grid; place-items: center; overflow: hidden; border-radius: var(--radius); background: var(--navy); box-shadow: var(--shadow); isolation: isolate; }
.tagline-card > img { position: absolute; z-index: 0; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.tagline-card::after { content:""; position: absolute; z-index: 1; inset: 0; background: linear-gradient(130deg, rgba(3,16,34,.88), rgba(3,16,34,.28)); }
.tagline-card-copy { position: relative; z-index: 2; width: min(78%, 360px); padding: 1.35rem; border: 1px solid rgba(255,255,255,.25); border-radius: 14px; background: rgba(4,19,43,.58); color: var(--white); backdrop-filter: blur(8px); }
.tagline-card-copy img { display: block; width: 150px; height: auto; margin-bottom: 1.25rem; filter: drop-shadow(0 2px 7px rgba(0,0,0,.45)); }
.tagline-card-copy span { display: block; color: #99f0a5; font-size: .7rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.tagline-card-copy strong { display: block; margin-top: .35rem; font-size: clamp(1.45rem, 2.3vw, 2rem); line-height: 1.08; }
.notice { padding: 1.15rem 1.3rem; border-left: 3px solid var(--green); border-radius: 0 12px 12px 0; background: #eff9f0; color: #356146; font-size: .88rem; }

/* Intelligence */
.intelligence-tool { padding: clamp(1.2rem, 3vw, 2rem); border: 1px solid #cbdaf4; border-radius: var(--radius); background: linear-gradient(135deg, #f7faff, #edf7ff); box-shadow: var(--shadow); }
.tool-top { display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 1rem; margin-bottom: 1.2rem; }
.tool-top h2 { font-size: clamp(1.6rem, 3vw, 2.5rem); margin-bottom: .4rem; }
.tool-top p { margin: 0; color: var(--muted); }
.filter-row { display: grid; grid-template-columns: minmax(0, 1fr) repeat(2, minmax(150px, .28fr)); gap: .75rem; }
.field { display: grid; gap: .35rem; }
.field label { color: var(--navy); font-size: .72rem; font-weight: 800; }
.field input, .field select, .form-field input, .form-field select, .form-field textarea { width: 100%; min-height: 47px; padding: .74rem .86rem; border: 1px solid #bac9dc; border-radius: 8px; background: #fff; color: var(--ink); outline-color: var(--blue); }
.field input::placeholder { color: #7f8ea2; }
.results-count { margin: 1.4rem 0 .75rem; color: var(--muted); font-size: .82rem; }
.table-scroll { overflow-x: auto; border: 1px solid var(--line); border-radius: 14px; background: #fff; }
.commodity-table { width: 100%; border-collapse: collapse; min-width: 960px; font-size: .83rem; }
.commodity-table th { padding: .85rem .9rem; background: #eff5fd; color: var(--navy); font-size: .69rem; letter-spacing: .04em; text-align: left; text-transform: uppercase; }
.commodity-table td { padding: .95rem .9rem; border-top: 1px solid var(--line); color: #35485e; vertical-align: top; }
.commodity-table tr:hover td { background: #fbfdff; }
.commodity-table strong { color: var(--navy); }
.compat-good { color: #087a20; font-weight: 800; }
.compat-separate { color: #a75200; font-weight: 800; }
.commodity-card { display: none; margin-top: 1rem; padding: 1.35rem; border: 1px solid #bad1f7; border-radius: 14px; background: #fff; }
.commodity-card.active { display: block; }
.commodity-card h3 { margin-bottom: .35rem; }
.commodity-card p { color: var(--muted); margin-bottom: .7rem; }
.commodity-card-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: .7rem; margin: 1rem 0; }
.commodity-card-grid div { padding: .7rem; background: var(--mist); border-radius: 8px; }
.commodity-card-grid span { display:block; color: var(--muted); font-size: .67rem; font-weight: 750; text-transform: uppercase; }
.commodity-card-grid strong { display:block; margin-top: .16rem; color: var(--navy); font-size: .89rem; }

/* Knowledge & accordions */
.article-card { padding: 1.5rem; border-top: 3px solid var(--blue); border-radius: 0 0 var(--radius) var(--radius); background: var(--white); box-shadow: 0 8px 25px rgba(12,39,80,.06); }
.article-card:nth-child(2n) { border-color: var(--green); }
.article-card .meta { color: var(--blue-deep); font-size: .7rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.article-card p { margin-bottom: 0; color: var(--muted); font-size: .9rem; }
.accordion { border-top: 1px solid var(--line); }
.accordion-item { border-bottom: 1px solid var(--line); }
.accordion-trigger { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1.2rem 0; background: transparent; border: 0; color: var(--navy); font-size: 1rem; font-weight: 800; text-align: left; }
.accordion-trigger span:last-child { color: var(--blue); font-size: 1.25rem; }
.accordion-panel { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .25s ease; }
.accordion-panel > div { overflow: hidden; }
.accordion-item.open .accordion-panel { grid-template-rows: 1fr; }
.accordion-panel p { margin: 0 0 1.2rem; color: var(--muted); }

/* Forms/footer */
.contact-grid { display: grid; grid-template-columns: minmax(0,.72fr) minmax(0,1.28fr); gap: clamp(2rem, 6vw, 6rem); }
.contact-direct { display: grid; gap: .8rem; margin-top: 1.65rem; padding: 1.25rem; border: 1px solid var(--line); border-radius: 12px; background: rgba(255,255,255,.72); }
.contact-direct strong { display: block; color: var(--navy); font-size: .77rem; letter-spacing: .08em; text-transform: uppercase; }
.contact-direct a { color: var(--blue-deep); font-weight: 800; }
.contact-direct address { margin: 0; color: var(--muted); font-style: normal; font-size: .9rem; line-height: 1.55; }
.form-panel { padding: clamp(1.2rem, 4vw, 2.5rem); border-radius: var(--radius); background: var(--white); box-shadow: var(--shadow); }
.form-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; }
.form-field { display: grid; gap: .38rem; }
.form-field label { color: var(--navy); font-size: .74rem; font-weight: 800; }
.form-field--full { grid-column: 1 / -1; }
.form-field textarea { min-height: 135px; resize: vertical; }
.form-note { margin: 1rem 0 0; color: var(--muted); font-size: .77rem; }
.form-status { display: none; margin-top: 1rem; padding: .8rem 1rem; border-radius: 8px; background: #eaf7ec; color: #1c632a; font-size: .85rem; }
.form-status.active { display:block; }
.form-status.error { background: #fff1ef; color: #9a2d20; }
.honeypot { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; }
.site-footer { background: #06192f; color: #c7d5e7; padding: 4.5rem 0 2rem; }
.footer-top { display: grid; grid-template-columns: 1.35fr 1fr 1fr 1.25fr; gap: 2rem; }
.footer-brand { display: flex; gap: 1rem; align-items: flex-start; }
.footer-logo { width: 62px; height: 75px; object-fit: contain; background: #fff; border-radius: 4px; }
.footer-brand strong { color: #fff; display: block; line-height: 1.15; }
.footer-brand p { font-size: .84rem; margin: .6rem 0 0; }
.footer-title { margin: .25rem 0 1rem; color: #fff; font-size: .76rem; font-weight: 850; letter-spacing: .11em; text-transform: uppercase; }
.footer-links { display:grid; gap: .5rem; }
.footer-links a { color: #c7d5e7; font-size: .84rem; }
.footer-links a:hover { color: #8cf299; }
.footer-bottom { display: flex; justify-content: space-between; gap: 1rem; margin-top: 3rem; padding-top: 1.3rem; border-top: 1px solid rgba(205,221,245,.17); color: #93a7bf; font-size: .72rem; }
.footer-bottom a { color: #bcd1e9; }
.mobile-cta { display: none; }

@media (max-width: 1050px) {
  .site-nav { gap: .7rem; }
  .site-nav a { font-size: .7rem; }
  .nav-cta { font-size: .68rem; padding: .75rem .75rem; }
  .plant-visual { opacity: .64; right: -8vw; }
}
@media (max-width: 820px) {
  :root { --wrap: min(100% - 32px, 1180px); }
  .menu-button { display: inline-grid; place-items: center; }
  .site-nav { position: fixed; z-index: 40; top: 77px; right: 0; left: 0; height: calc(100dvh - 77px); display: grid; align-content: start; gap: 0; padding: 1.5rem 1rem; background: rgba(5,20,39,.97); transform: translateX(100%); transition: transform .25s ease; }
  .site-nav.open { transform: translateX(0); }
  .site-nav a { padding: 1rem .65rem; border-bottom: 1px solid rgba(206,222,244,.15); color: #e0e9f8; font-size: .95rem; }
  .site-nav a[aria-current="page"] { color: #94ee9d; }
  .nav-cta { width: 100%; margin: 1.5rem 0 0; padding: 1rem; }
  .section-head { grid-template-columns: 1fr; gap: .3rem; }
  .section-head > p:last-child { justify-self: start; }
  .hero { min-height: 680px; }
  .hero-inner { padding: 5.6rem 0 5rem; }
  .plant-visual { top: auto; bottom: -5%; right: -18%; width: 600px; transform: none; opacity: .42; }
  .trustbar .wrap { grid-template-columns: 1fr; }
  .trust-item { padding: 1.05rem 0; border-right: 0; border-bottom: 1px solid var(--line); }
  .trust-item:last-child { border-bottom: 0; }
  .grid--4 { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .grid--3, .storage-panels { grid-template-columns: 1fr 1fr; }
  .project-path-grid { grid-template-columns: 1fr; }
  .split, .contact-grid { grid-template-columns: 1fr; }
  .split--reverse > :first-child { order: 0; }
  .footer-top { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .mobile-cta { position: fixed; z-index: 29; bottom: 1rem; right: 1rem; display: inline-flex; gap: .4rem; align-items: center; padding: .75rem .9rem; border-radius: 8px; background: var(--green); box-shadow: 0 12px 30px rgba(5,24,48,.24); color: #fff; font-size: .71rem; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; }
  .tool-top, .filter-row { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
  :root { --wrap: min(100% - 28px, 1180px); }
  .header-inner { min-height: 70px; }
  .site-nav { top: 71px; height: calc(100dvh - 71px); }
  .brand-logo { width: 36px; height: 48px; }
  .brand-name { font-size: .78rem; }
  .brand-sub { font-size: .53rem; }
  .hero { min-height: 640px; }
  .hero h1 { font-size: clamp(2.48rem, 12vw, 4rem); }
  .hero-copy { font-size: 1rem; }
  .hero-actions .button { width: 100%; }
  .hero-chips { margin-top: 2.3rem; }
  .page-hero { padding: 4.2rem 0; }
  .grid--2, .grid--3, .grid--4, .storage-panels { grid-template-columns: 1fr; }
  .visual-card { min-height: 300px; }
  .tagline-card { min-height: 300px; }
  .band .wrap, .footer-bottom { flex-direction: column; align-items: flex-start; }
  .form-grid, .commodity-card-grid { grid-template-columns: 1fr; }
  .footer-top { grid-template-columns: 1fr; }
  .footer-logo { width: 56px; height: 69px; }
}

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