:root {
  --ink: #142033;
  --ink-soft: #415066;
  --navy: #0e1b2c;
  --navy-2: #172a43;
  --navy-3: #23405e;
  --paper: #fffdf9;
  --cream: #f6f1e9;
  --cream-2: #eee4d6;
  --white: #ffffff;
  --line: #dbe1e7;
  --line-dark: rgba(255,255,255,.14);
  --coral: #d45d3d;
  --coral-dark: #ae4029;
  --coral-soft: #fae6de;
  --sage: #2f7768;
  --sage-dark: #245d53;
  --sage-soft: #dff0eb;
  --gold: #d7a342;
  --gold-soft: #f7edd5;
  --muted: #68768a;
  --success: #21725e;
  --danger: #a53d31;
  --shadow-sm: 0 8px 24px rgba(15, 27, 44, .08);
  --shadow-md: 0 22px 58px rgba(15, 27, 44, .13);
  --shadow-lg: 0 34px 90px rgba(15, 27, 44, .20);
  --radius-sm: 10px;
  --radius: 18px;
  --radius-lg: 28px;
  --radius-xl: 40px;
  --container: 1240px;
  --header-height: 82px;
  --font-body: "Aptos", "Segoe UI", Arial, sans-serif;
  --font-display: "Aptos Display", "Segoe UI", Arial, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 110px; }
body {
  margin: 0;
  color: var(--ink);
  background: var(--paper);
  font-family: var(--font-body);
  font-size: 17px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration-thickness: .08em; text-underline-offset: .16em; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
::selection { background: var(--coral-soft); color: var(--ink); }

.skip-link {
  position: fixed;
  top: 8px;
  left: 8px;
  z-index: 9999;
  transform: translateY(-150%);
  padding: .72rem 1rem;
  border-radius: 8px;
  background: var(--white);
  color: var(--navy);
  box-shadow: var(--shadow-sm);
  font-weight: 800;
}
.skip-link:focus { transform: translateY(0); }

.container { width: min(calc(100% - 40px), var(--container)); margin-inline: auto; }
.container.narrow { width: min(calc(100% - 40px), 960px); }
.container.wide { width: min(calc(100% - 32px), 1390px); }

.utility-bar {
  background: var(--navy);
  color: rgba(255,255,255,.82);
  font-size: .81rem;
  letter-spacing: .01em;
}
.utility-inner {
  min-height: 39px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}
.utility-links { display: flex; align-items: center; gap: 20px; }
.utility-links a { color: var(--white); text-decoration: none; }
.utility-links a:hover { text-decoration: underline; }
.utility-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--gold); display: inline-block; margin-right: 9px; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: rgba(255,253,249,.95);
  border-bottom: 1px solid rgba(20,32,51,.09);
  backdrop-filter: blur(18px);
}
.header-inner {
  min-height: var(--header-height);
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center;
  gap: 30px;
}
.brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-width: 230px;
  text-decoration: none;
}
.brand-mark { width: 42px; height: 48px; flex: 0 0 auto; }
.brand-copy { display: grid; line-height: 1.05; }
.brand-title { font-family: var(--font-display); font-weight: 900; letter-spacing: -.035em; font-size: 1.03rem; }
.brand-subtitle { margin-top: 5px; color: var(--muted); font-size: .68rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }

.main-nav { justify-self: center; display: flex; align-items: center; gap: 2px; }
.nav-item { position: relative; }
.nav-link,
.nav-trigger {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 44px;
  padding: .66rem .72rem;
  border: 0;
  border-radius: 9px;
  background: transparent;
  color: #28374b;
  text-decoration: none;
  font-size: .88rem;
  font-weight: 760;
  white-space: nowrap;
}
.nav-link:hover,
.nav-trigger:hover,
.nav-trigger[aria-expanded="true"],
.nav-link[aria-current="page"] { background: var(--cream); color: var(--navy); }
.nav-chevron { width: 10px; height: 10px; transition: transform .2s ease; }
.nav-trigger[aria-expanded="true"] .nav-chevron { transform: rotate(180deg); }
.nav-panel {
  position: absolute;
  left: 50%;
  top: calc(100% + 13px);
  width: min(620px, 90vw);
  transform: translateX(-50%) translateY(-8px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  padding: 14px;
  border: 1px solid rgba(20,32,51,.10);
  border-radius: 20px;
  background: var(--white);
  box-shadow: var(--shadow-lg);
  transition: opacity .18s ease, transform .18s ease, visibility .18s;
}
.nav-item:last-child .nav-panel { left: auto; right: 0; transform: translateY(-8px); }
.nav-item:last-child .nav-trigger[aria-expanded="true"] + .nav-panel { transform: translateY(0); }
.nav-trigger[aria-expanded="true"] + .nav-panel {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateX(-50%) translateY(0);
}
.nav-panel-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 7px; }
.nav-card {
  display: grid;
  grid-template-columns: 39px 1fr;
  gap: 11px;
  align-items: start;
  padding: 12px;
  border-radius: 13px;
  color: var(--ink);
  text-decoration: none;
}
.nav-card:hover { background: var(--cream); }
.nav-card-icon {
  width: 39px;
  height: 39px;
  display: grid;
  place-items: center;
  border-radius: 11px;
  background: var(--coral-soft);
  color: var(--coral-dark);
}
.nav-card:nth-child(2n) .nav-card-icon { background: var(--sage-soft); color: var(--sage-dark); }
.nav-card svg { width: 19px; height: 19px; }
.nav-card strong { display: block; font-size: .88rem; line-height: 1.25; }
.nav-card span { display: block; margin-top: 3px; color: var(--muted); font-size: .74rem; line-height: 1.35; }
.nav-panel-footer {
  margin-top: 9px;
  padding: 10px 12px 2px;
  border-top: 1px solid var(--line);
  display: flex;
  justify-content: space-between;
  gap: 20px;
  color: var(--muted);
  font-size: .76rem;
}
.nav-panel-footer a { color: var(--coral-dark); font-weight: 800; text-decoration: none; }

.header-cta,
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 48px;
  padding: .76rem 1.15rem;
  border: 1px solid transparent;
  border-radius: 11px;
  text-decoration: none;
  font-size: .88rem;
  font-weight: 850;
  line-height: 1.2;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease;
}
.header-cta,
.btn-primary { background: var(--coral); color: var(--white); box-shadow: 0 11px 25px rgba(212,93,61,.22); }
.header-cta:hover,
.btn-primary:hover { background: var(--coral-dark); transform: translateY(-2px); box-shadow: 0 15px 31px rgba(174,64,41,.27); }
.btn-secondary { background: var(--white); color: var(--navy); border-color: rgba(20,32,51,.17); box-shadow: var(--shadow-sm); }
.btn-secondary:hover { transform: translateY(-2px); border-color: var(--navy-3); }
.btn-dark { background: var(--navy); color: var(--white); }
.btn-dark:hover { background: var(--navy-3); transform: translateY(-2px); }
.btn-light { background: var(--white); color: var(--navy); }
.btn-small { min-height: 40px; padding: .58rem .85rem; font-size: .79rem; }
.btn-icon { width: 17px; height: 17px; }
.nav-toggle {
  display: none;
  width: 46px;
  height: 46px;
  border: 1px solid rgba(20,32,51,.14);
  border-radius: 11px;
  background: var(--white);
  color: var(--navy);
}
.nav-toggle-lines,
.nav-toggle-lines::before,
.nav-toggle-lines::after { width: 20px; height: 2px; background: currentColor; display: block; position: relative; margin: auto; transition: .2s ease; }
.nav-toggle-lines::before,
.nav-toggle-lines::after { content: ""; position: absolute; left: 0; }
.nav-toggle-lines::before { top: -6px; }
.nav-toggle-lines::after { top: 6px; }
.nav-toggle[aria-expanded="true"] .nav-toggle-lines { background: transparent; }
.nav-toggle[aria-expanded="true"] .nav-toggle-lines::before { transform: translateY(6px) rotate(45deg); }
.nav-toggle[aria-expanded="true"] .nav-toggle-lines::after { transform: translateY(-6px) rotate(-45deg); }

/* Hero */
.hero {
  position: relative;
  overflow: hidden;
  padding: clamp(72px, 9vw, 126px) 0 0;
  background:
    radial-gradient(circle at 88% 13%, rgba(215,163,66,.17), transparent 28%),
    radial-gradient(circle at 6% 84%, rgba(47,119,104,.13), transparent 30%),
    linear-gradient(135deg, #fbf7f1 0%, #f5ebdf 56%, #edf3f0 100%);
}
.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .38;
  pointer-events: none;
  background-image: radial-gradient(rgba(14,27,44,.12) .8px, transparent .8px);
  background-size: 24px 24px;
  mask-image: linear-gradient(to bottom, black, transparent 75%);
}
.hero-grid { position: relative; display: grid; grid-template-columns: minmax(0,1.02fr) minmax(440px,.98fr); gap: clamp(45px,7vw,90px); align-items: center; }
.hero-copy { padding-bottom: 90px; }
.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 19px;
  color: var(--coral-dark);
  font-size: .77rem;
  font-weight: 900;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.eyebrow::before { content: ""; width: 34px; height: 2px; background: currentColor; }
.hero h1,
.page-hero h1 {
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(3rem, 5.2vw, 5.2rem);
  line-height: .98;
  letter-spacing: -.055em;
  max-width: 830px;
}
.hero h1 em { color: var(--coral); font-style: normal; }
.hero-lead { max-width: 720px; margin: 27px 0 0; color: #435269; font-size: clamp(1.06rem,1.4vw,1.24rem); line-height: 1.6; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 13px; margin-top: 31px; }
.hero-proof { display: flex; flex-wrap: wrap; gap: 12px 24px; margin-top: 28px; color: #4e5c6d; font-size: .84rem; font-weight: 730; }
.hero-proof span { display: inline-flex; align-items: center; gap: 8px; }
.hero-proof svg { width: 17px; height: 17px; color: var(--sage); }
.hero-visual { position: relative; min-height: 610px; align-self: end; }
.hero-image-shell {
  position: absolute;
  right: 0;
  bottom: 48px;
  width: min(100%, 585px);
  aspect-ratio: 1 / .86;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.9);
  border-radius: 36px;
  background: rgba(255,255,255,.84);
  box-shadow: var(--shadow-lg);
}
.hero-image-shell::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(145deg, rgba(255,255,255,.36), transparent 45%); pointer-events: none; }
.hero-image-shell img { width: 100%; height: 100%; object-fit: contain; padding: 30px; }
.hero-chip {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 10px;
  max-width: 215px;
  padding: 11px 14px;
  border: 1px solid rgba(20,32,51,.10);
  border-radius: 999px;
  background: rgba(255,255,255,.95);
  box-shadow: var(--shadow-sm);
  font-size: .77rem;
  font-weight: 850;
  line-height: 1.2;
}
.hero-chip::before { content: ""; width: 10px; height: 10px; flex: 0 0 auto; border-radius: 50%; background: var(--coral); box-shadow: 0 0 0 5px var(--coral-soft); }
.hero-chip.one { top: 56px; left: -19px; }
.hero-chip.two { top: 172px; right: -12px; }
.hero-chip.two::before { background: var(--sage); box-shadow: 0 0 0 5px var(--sage-soft); }
.hero-chip.three { bottom: 74px; left: -28px; }
.hero-chip.three::before { background: var(--gold); box-shadow: 0 0 0 5px var(--gold-soft); }
.hero-mini-card {
  position: absolute;
  z-index: 4;
  right: 25px;
  bottom: 19px;
  width: 245px;
  padding: 16px 18px;
  border-radius: 16px;
  background: var(--navy);
  color: var(--white);
  box-shadow: var(--shadow-md);
}
.hero-mini-card small { display: block; color: rgba(255,255,255,.61); font-size: .68rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.hero-mini-card strong { display: block; margin-top: 4px; font-size: .92rem; line-height: 1.35; }
.hero-mini-card a { display: inline-flex; margin-top: 9px; color: #f4c674; font-size: .76rem; font-weight: 850; text-decoration: none; }

.journey-wrap { position: relative; z-index: 5; margin-top: -2px; transform: translateY(32px); }
.journey-bar { display: grid; grid-template-columns: repeat(4,1fr); overflow: hidden; border: 1px solid rgba(20,32,51,.10); border-radius: 23px; background: var(--white); box-shadow: var(--shadow-md); }
.journey-item { position: relative; padding: 22px 24px 24px; }
.journey-item + .journey-item { border-left: 1px solid var(--line); }
.journey-number { display: inline-flex; align-items: center; justify-content: center; width: 29px; height: 29px; margin-bottom: 11px; border-radius: 9px; background: var(--navy); color: var(--white); font-size: .75rem; font-weight: 900; }
.journey-item:nth-child(2) .journey-number { background: var(--coral); }
.journey-item:nth-child(3) .journey-number { background: var(--sage); }
.journey-item:nth-child(4) .journey-number { background: var(--gold); color: var(--navy); }
.journey-item strong { display: block; font-size: .94rem; }
.journey-item span { display: block; margin-top: 4px; color: var(--muted); font-size: .76rem; line-height: 1.4; }

/* General section styles */
.section { padding: clamp(74px, 8vw, 118px) 0; }
.section-tight { padding: clamp(52px, 6vw, 84px) 0; }
.section-cream { background: var(--cream); }
.section-navy { background: var(--navy); color: var(--white); }
.section-sage { background: #eaf3ef; }
.section-coral { background: #f9ece6; }
.section-pattern { position: relative; overflow: hidden; }
.section-pattern::before { content:""; position:absolute; inset:0; opacity:.34; background-image: linear-gradient(rgba(20,32,51,.06) 1px, transparent 1px), linear-gradient(90deg, rgba(20,32,51,.06) 1px, transparent 1px); background-size: 42px 42px; pointer-events:none; }
.section-header { display: grid; grid-template-columns: minmax(0,.75fr) minmax(320px,.55fr); align-items: end; gap: 60px; margin-bottom: 46px; }
.section-header.single { display: block; max-width: 850px; }
.section-kicker { color: var(--coral-dark); font-size: .76rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.section-navy .section-kicker { color: #f1b780; }
.section-title { margin: 10px 0 0; font-family: var(--font-display); font-size: clamp(2.2rem,4vw,4rem); line-height: 1.05; letter-spacing: -.045em; }
.section-intro { margin: 0; color: var(--ink-soft); font-size: 1.05rem; }
.section-navy .section-intro { color: rgba(255,255,255,.72); }
.section-actions { margin-top: 29px; display: flex; flex-wrap: wrap; gap: 12px; }

.grid-2 { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px; }
.grid-3 { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
.grid-4 { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 20px; }
.grid-5 { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 18px; }

.card {
  border: 1px solid rgba(20,32,51,.10);
  border-radius: var(--radius);
  background: var(--white);
  box-shadow: var(--shadow-sm);
}
.card-pad { padding: 27px; }
.card-hover { transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.card-hover:hover { transform: translateY(-5px); box-shadow: var(--shadow-md); border-color: rgba(20,32,51,.18); }
.icon-tile { width: 50px; height: 50px; display: grid; place-items: center; border-radius: 14px; background: var(--coral-soft); color: var(--coral-dark); }
.icon-tile.sage { background: var(--sage-soft); color: var(--sage-dark); }
.icon-tile.gold { background: var(--gold-soft); color: #916515; }
.icon-tile.navy { background: #e5ebf2; color: var(--navy-3); }
.icon-tile svg { width: 25px; height: 25px; }
.card h3 { margin: 18px 0 8px; font-size: 1.19rem; line-height: 1.25; letter-spacing: -.018em; }
.card p { margin: 0; color: var(--muted); font-size: .91rem; }
.card-link { display: inline-flex; align-items: center; gap: 7px; margin-top: 18px; color: var(--coral-dark); font-size: .82rem; font-weight: 900; text-decoration: none; }
.card-link:hover { text-decoration: underline; }
.card-link svg { width: 14px; height: 14px; }

.behaviour-card { position: relative; overflow: hidden; min-height: 238px; padding: 27px; }
.behaviour-card::after { content:""; position:absolute; width:130px; height:130px; right:-52px; bottom:-52px; border-radius:50%; background:var(--coral-soft); }
.behaviour-card:nth-child(2n)::after { background:var(--sage-soft); }
.behaviour-card:nth-child(3n)::after { background:var(--gold-soft); }
.behaviour-card .metric { display:inline-flex; padding:.35rem .57rem; border-radius:8px; background:var(--cream); color:var(--ink-soft); font-size:.67rem; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }
.behaviour-card h3 { max-width:210px; }
.behaviour-card p { position:relative; z-index:1; }

.pack-card { overflow: hidden; }
.pack-visual { position: relative; min-height: 210px; padding: 24px; background: linear-gradient(145deg,#fff,#f5eee5); }
.pack-visual svg { width: 100%; height: 168px; }
.pack-tag { position:absolute; top:17px; left:17px; padding:.4rem .62rem; border-radius:999px; background:rgba(14,27,44,.92); color:white; font-size:.66rem; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }
.pack-body { padding: 24px 25px 27px; }
.pack-body h3 { margin:0 0 8px; }
.pack-route { display:flex; flex-wrap:wrap; align-items:center; gap:6px; margin-top:17px; color:var(--ink-soft); font-size:.72rem; font-weight:800; }
.route-pill { padding:.34rem .49rem; border-radius:7px; background:var(--cream); }
.route-arrow { color:var(--coral); }

.process-rail { position: relative; display: grid; gap: 15px; }
.process-rail::before { content:""; position:absolute; left:30px; top:35px; bottom:35px; width:2px; background:linear-gradient(var(--coral),var(--sage)); }
.process-step { position:relative; display:grid; grid-template-columns:62px minmax(0,1fr) auto; gap:20px; align-items:center; padding:20px 22px 20px 0; border:1px solid rgba(20,32,51,.09); border-radius:16px; background:var(--white); box-shadow:var(--shadow-sm); }
.process-icon { position:relative; z-index:1; width:62px; height:62px; display:grid; place-items:center; border-radius:50%; background:var(--navy); color:white; border:8px solid var(--cream); }
.process-step:nth-child(2n) .process-icon { background:var(--coral); }
.process-step:nth-child(3n) .process-icon { background:var(--sage); }
.process-icon svg { width:22px; height:22px; }
.process-step h3 { margin:0; font-size:1.03rem; }
.process-step p { margin:4px 0 0; color:var(--muted); font-size:.84rem; }
.process-step .step-output { max-width:180px; color:var(--ink-soft); font-size:.72rem; line-height:1.45; text-align:right; }
.process-step .step-output strong { display:block; color:var(--ink); font-size:.66rem; text-transform:uppercase; letter-spacing:.08em; }

.split-feature { display:grid; grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr); gap:50px; align-items:center; }
.split-feature.reverse { grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr); }
.feature-image { position:relative; overflow:hidden; min-height:500px; border-radius:var(--radius-lg); background:white; box-shadow:var(--shadow-md); }
.feature-image img { width:100%; height:100%; min-height:500px; object-fit:contain; padding:36px; }
.feature-image-caption { position:absolute; left:18px; right:18px; bottom:18px; padding:15px 17px; border-radius:13px; background:rgba(14,27,44,.94); color:white; font-size:.78rem; }
.feature-image-caption strong { display:block; font-size:.91rem; }
.feature-copy h2 { margin:0; font-family:var(--font-display); font-size:clamp(2.2rem,3.7vw,3.7rem); line-height:1.05; letter-spacing:-.045em; }
.feature-copy > p { color:var(--ink-soft); }
.tick-list { display:grid; gap:12px; margin:25px 0 0; padding:0; list-style:none; }
.tick-list li { display:grid; grid-template-columns:24px 1fr; gap:10px; align-items:start; color:var(--ink-soft); font-size:.91rem; }
.tick-list svg { width:21px; height:21px; color:var(--sage); margin-top:2px; }
.tick-list strong { color:var(--ink); }

.compare-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.compare-card { overflow:hidden; border:1px solid rgba(20,32,51,.11); border-radius:21px; background:var(--white); box-shadow:var(--shadow-sm); }
.compare-head { padding:26px 27px; background:var(--coral); color:white; }
.compare-card:nth-child(2) .compare-head { background:var(--sage); }
.compare-head small { display:block; opacity:.72; text-transform:uppercase; letter-spacing:.09em; font-size:.66rem; font-weight:900; }
.compare-head h3 { margin:5px 0 0; font-size:1.5rem; }
.compare-body { padding:25px 27px 28px; }
.compare-body dl { margin:0; }
.compare-body dl > div { display:grid; grid-template-columns:125px 1fr; gap:15px; padding:12px 0; border-bottom:1px solid var(--line); }
.compare-body dl > div:last-child { border-bottom:0; }
.compare-body dt { font-size:.76rem; font-weight:900; color:var(--ink); }
.compare-body dd { margin:0; color:var(--muted); font-size:.82rem; }

.table-wrap { overflow-x:auto; border:1px solid rgba(20,32,51,.11); border-radius:16px; background:var(--white); box-shadow:var(--shadow-sm); }
.data-table { width:100%; border-collapse:collapse; min-width:760px; }
.data-table th { padding:15px 17px; background:var(--navy); color:white; text-align:left; font-size:.75rem; letter-spacing:.04em; text-transform:uppercase; }
.data-table th:first-child { border-top-left-radius:15px; }
.data-table th:last-child { border-top-right-radius:15px; }
.data-table td { padding:15px 17px; border-top:1px solid var(--line); vertical-align:top; color:var(--ink-soft); font-size:.84rem; }
.data-table tr:nth-child(even) td { background:#faf8f4; }
.data-table td strong { color:var(--ink); }
.data-table .status { display:inline-flex; align-items:center; gap:6px; padding:.28rem .48rem; border-radius:7px; background:var(--sage-soft); color:var(--sage-dark); font-size:.68rem; font-weight:900; }

.scale-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.scale-card { position:relative; overflow:hidden; padding:24px; border-radius:17px; background:white; border:1px solid rgba(20,32,51,.1); box-shadow:var(--shadow-sm); }
.scale-card::before { content:""; position:absolute; inset:0 0 auto; height:5px; background:var(--navy); }
.scale-card:nth-child(2)::before { background:var(--coral); }
.scale-card:nth-child(3)::before { background:var(--sage); }
.scale-card:nth-child(4)::before { background:var(--gold); }
.scale-card small { color:var(--muted); font-size:.68rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.scale-card strong { display:block; margin:6px 0 5px; font-size:1.1rem; }
.scale-card p { margin:0; color:var(--muted); font-size:.8rem; }
.scale-card .range { display:block; margin-top:19px; color:var(--coral-dark); font-size:.82rem; font-weight:900; }

.machine-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.machine-card { overflow:hidden; border:1px solid rgba(20,32,51,.1); border-radius:20px; background:white; box-shadow:var(--shadow-sm); transition:transform .2s ease, box-shadow .2s ease; }
.machine-card:hover { transform:translateY(-5px); box-shadow:var(--shadow-md); }
.machine-image { height:250px; display:grid; place-items:center; padding:24px; background:linear-gradient(145deg,#fff,#f4f5f5); }
.machine-image img { width:100%; height:100%; object-fit:contain; }
.machine-body { padding:24px 25px 27px; }
.machine-type { color:var(--coral-dark); font-size:.67rem; font-weight:900; letter-spacing:.09em; text-transform:uppercase; }
.machine-body h3 { margin:7px 0 9px; font-size:1.16rem; }
.machine-body p { margin:0; color:var(--muted); font-size:.84rem; }
.machine-meta { display:flex; flex-wrap:wrap; gap:7px; margin-top:17px; }
.machine-meta span { padding:.35rem .5rem; border-radius:7px; background:var(--cream); color:var(--ink-soft); font-size:.68rem; font-weight:800; }

.reference-panel { position:relative; overflow:hidden; display:grid; grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr); border-radius:28px; background:var(--navy); color:white; box-shadow:var(--shadow-lg); }
.reference-image { min-height:520px; background:white; display:grid; place-items:center; }
.reference-image img { width:100%; height:100%; object-fit:contain; padding:34px; }
.reference-copy { padding:clamp(35px,5vw,68px); }
.reference-label { display:inline-flex; padding:.42rem .65rem; border-radius:8px; background:rgba(255,255,255,.12); color:#f0c47d; font-size:.67rem; font-weight:900; letter-spacing:.09em; text-transform:uppercase; }
.reference-copy h2 { margin:15px 0 14px; font-size:clamp(2rem,3.4vw,3.35rem); line-height:1.08; letter-spacing:-.04em; }
.reference-copy p { color:rgba(255,255,255,.72); }
.reference-specs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; margin-top:25px; }
.reference-spec { padding:14px 15px; border:1px solid rgba(255,255,255,.13); border-radius:11px; background:rgba(255,255,255,.06); }
.reference-spec small { display:block; color:rgba(255,255,255,.54); font-size:.62rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.reference-spec strong { display:block; margin-top:4px; font-size:.82rem; line-height:1.35; }
.reference-note { margin-top:19px; padding-left:15px; border-left:3px solid var(--gold); color:rgba(255,255,255,.65); font-size:.75rem; }

.callout { padding:23px 24px; border-left:4px solid var(--coral); border-radius:0 14px 14px 0; background:var(--coral-soft); }
.callout.sage { border-color:var(--sage); background:var(--sage-soft); }
.callout.gold { border-color:var(--gold); background:var(--gold-soft); }
.callout.navy { border-color:var(--navy-3); background:#e9eef4; }
.callout strong { display:block; margin-bottom:5px; }
.callout p { margin:0; color:var(--ink-soft); font-size:.88rem; }

.quote-panel { padding:32px; border-radius:20px; background:var(--cream); }
.quote-panel blockquote { margin:0; font-family:var(--font-display); font-size:1.55rem; line-height:1.35; letter-spacing:-.03em; }
.quote-panel cite { display:block; margin-top:17px; color:var(--muted); font-style:normal; font-size:.78rem; font-weight:850; }

/* Page hero / content */
.page-hero { position:relative; overflow:hidden; padding:72px 0 62px; background:linear-gradient(135deg,#f7f1e8,#edf3ef); }
.page-hero::after { content:""; position:absolute; width:520px; height:520px; right:-170px; top:-220px; border-radius:50%; background:rgba(212,93,61,.10); }
.breadcrumbs { position:relative; z-index:1; display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-bottom:35px; color:var(--muted); font-size:.76rem; }
.breadcrumbs a { text-decoration:none; }
.breadcrumbs a:hover { text-decoration:underline; }
.breadcrumbs svg { width:12px; height:12px; opacity:.6; }
.page-hero-grid { position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,1fr) 430px; gap:70px; align-items:center; }
.page-hero h1 { font-size:clamp(2.75rem,5vw,4.9rem); }
.page-hero-lead { max-width:790px; margin:23px 0 0; color:var(--ink-soft); font-size:1.12rem; }
.page-hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:27px; }
.page-hero-visual { position:relative; min-height:380px; border-radius:26px; background:white; box-shadow:var(--shadow-md); overflow:hidden; }
.page-hero-visual img { width:100%; height:100%; min-height:380px; object-fit:contain; padding:27px; }
.page-hero-notes { position:absolute; left:16px; right:16px; bottom:16px; display:flex; flex-wrap:wrap; gap:7px; }
.page-hero-notes span { padding:.42rem .6rem; border-radius:8px; background:rgba(14,27,44,.91); color:white; font-size:.65rem; font-weight:850; }

.page-shell { display:grid; grid-template-columns:260px minmax(0,1fr); gap:60px; align-items:start; padding:75px 0 105px; }
.page-sidebar { position:sticky; top:120px; }
.toc { padding:20px; border:1px solid rgba(20,32,51,.10); border-radius:16px; background:white; box-shadow:var(--shadow-sm); }
.toc-title { color:var(--muted); font-size:.68rem; font-weight:900; letter-spacing:.09em; text-transform:uppercase; }
.toc nav { display:grid; gap:4px; margin-top:11px; }
.toc a { display:block; padding:.47rem .58rem; border-radius:8px; color:var(--ink-soft); text-decoration:none; font-size:.79rem; line-height:1.35; }
.toc a:hover { background:var(--cream); color:var(--ink); }
.sidebar-cta { margin-top:18px; padding:21px; border-radius:16px; background:var(--navy); color:white; }
.sidebar-cta strong { display:block; font-size:.95rem; }
.sidebar-cta p { margin:7px 0 13px; color:rgba(255,255,255,.68); font-size:.75rem; }
.sidebar-cta a { color:#f4c674; font-size:.76rem; font-weight:900; text-decoration:none; }

.article { min-width:0; }
.article > section { padding:0 0 58px; margin:0 0 58px; border-bottom:1px solid var(--line); }
.article > section:last-child { border-bottom:0; margin-bottom:0; padding-bottom:0; }
.article h2 { margin:0 0 18px; font-family:var(--font-display); font-size:clamp(1.85rem,3vw,2.8rem); line-height:1.12; letter-spacing:-.035em; }
.article h3 { margin:29px 0 11px; font-size:1.23rem; line-height:1.3; }
.article p { margin:0 0 18px; color:var(--ink-soft); }
.article ul,
.article ol { margin:18px 0; padding-left:1.25rem; color:var(--ink-soft); }
.article li { margin:.55rem 0; padding-left:.22rem; }
.article strong { color:var(--ink); }
.article .lead-paragraph { font-size:1.13rem; color:#314157; }
.article-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin-top:24px; }
.mini-card { padding:21px; border:1px solid rgba(20,32,51,.10); border-radius:14px; background:#fff; }
.mini-card h3 { margin:0 0 7px; font-size:1rem; }
.mini-card p { margin:0; font-size:.84rem; }
.numbered-list { display:grid; gap:15px; margin-top:22px; }
.numbered-item { display:grid; grid-template-columns:42px 1fr; gap:14px; align-items:start; }
.numbered-item .num { width:42px; height:42px; display:grid; place-items:center; border-radius:12px; background:var(--navy); color:white; font-size:.78rem; font-weight:900; }
.numbered-item:nth-child(2n) .num { background:var(--coral); }
.numbered-item:nth-child(3n) .num { background:var(--sage); }
.numbered-item h3 { margin:1px 0 4px; font-size:1rem; }
.numbered-item p { margin:0; font-size:.84rem; }
.article-figure { margin:27px 0; overflow:hidden; border:1px solid rgba(20,32,51,.1); border-radius:18px; background:white; box-shadow:var(--shadow-sm); }
.article-figure img { width:100%; max-height:520px; object-fit:contain; padding:25px; }
.article-figure figcaption { padding:13px 18px; border-top:1px solid var(--line); color:var(--muted); font-size:.72rem; }

.decision-strip { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:23px 0; }
.decision-strip > div { padding:17px; border-radius:13px; background:var(--cream); }
.decision-strip small { display:block; color:var(--muted); font-size:.64rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.decision-strip strong { display:block; margin-top:5px; font-size:.86rem; line-height:1.35; }

.next-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:17px; }
.next-card { position:relative; min-height:190px; padding:23px; overflow:hidden; border-radius:16px; background:var(--navy); color:white; text-decoration:none; }
.next-card:nth-child(2) { background:var(--sage); }
.next-card:nth-child(3) { background:var(--coral-dark); }
.next-card small { color:rgba(255,255,255,.58); font-size:.65rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.next-card strong { display:block; max-width:220px; margin-top:8px; font-size:1.1rem; line-height:1.3; }
.next-card span { position:absolute; left:23px; bottom:20px; font-size:.74rem; font-weight:900; }
.next-card svg { position:absolute; right:20px; bottom:18px; width:28px; height:28px; opacity:.7; }

/* Selector and calculators */
.tool-shell { display:grid; grid-template-columns:minmax(0,.86fr) minmax(380px,1.14fr); gap:29px; align-items:start; }
.tool-form,
.tool-result { border:1px solid rgba(20,32,51,.11); border-radius:22px; background:white; box-shadow:var(--shadow-md); }
.tool-form { padding:30px; }
.tool-result { position:sticky; top:115px; min-height:650px; overflow:hidden; }
.tool-result-head { padding:27px 30px; background:var(--navy); color:white; }
.tool-result-head small { color:#f1b780; font-size:.67rem; font-weight:900; letter-spacing:.09em; text-transform:uppercase; }
.tool-result-head h2 { margin:7px 0 0; font-size:1.55rem; }
.tool-result-body { padding:29px 30px 32px; }
.form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.form-field { display:grid; gap:7px; }
.form-field.full { grid-column:1/-1; }
.form-field label { font-size:.77rem; font-weight:850; color:var(--ink); }
.form-field small { color:var(--muted); font-size:.66rem; }
.form-control {
  width:100%;
  min-height:49px;
  padding:.73rem .82rem;
  border:1px solid #cbd4df;
  border-radius:10px;
  background:#fff;
  color:var(--ink);
  outline:none;
}
textarea.form-control { min-height:150px; resize:vertical; }
.form-control:focus { border-color:var(--sage); box-shadow:0 0 0 4px rgba(47,119,104,.12); }
.form-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:23px; }
.route-result { display:grid; gap:12px; }
.result-stage { display:grid; grid-template-columns:37px 1fr; gap:12px; padding:14px; border:1px solid var(--line); border-radius:12px; background:#faf9f6; }
.result-stage .index { width:37px; height:37px; display:grid; place-items:center; border-radius:10px; background:var(--coral-soft); color:var(--coral-dark); font-size:.72rem; font-weight:900; }
.result-stage:nth-child(2n) .index { background:var(--sage-soft); color:var(--sage-dark); }
.result-stage strong { display:block; font-size:.86rem; }
.result-stage p { margin:3px 0 0; color:var(--muted); font-size:.75rem; }
.result-warning { margin-top:18px; padding:15px 16px; border-radius:11px; background:var(--gold-soft); color:#5f4a24; font-size:.76rem; }
.empty-result { display:grid; place-items:center; min-height:470px; text-align:center; color:var(--muted); }
.empty-result svg { width:72px; height:72px; color:#c4ccd5; }
.empty-result strong { display:block; margin-top:15px; color:var(--ink); }
.empty-result p { max-width:360px; margin:7px auto 0; font-size:.84rem; }

.calc-output { margin-top:24px; padding:24px; border-radius:16px; background:var(--navy); color:white; }
.calc-number { font-family:var(--font-display); font-size:3rem; line-height:1; letter-spacing:-.05em; }
.calc-output small { color:rgba(255,255,255,.62); }
.calc-details { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; margin-top:19px; }
.calc-details > div { padding:11px; border-radius:10px; background:rgba(255,255,255,.08); }
.calc-details span { display:block; color:rgba(255,255,255,.55); font-size:.59rem; font-weight:900; letter-spacing:.07em; text-transform:uppercase; }
.calc-details strong { display:block; margin-top:3px; font-size:.79rem; }

/* Checklist */
.checklist-layout { display:grid; grid-template-columns:minmax(0,1fr) 350px; gap:30px; align-items:start; }
.checklist-groups { display:grid; gap:17px; }
.checklist-group { border:1px solid rgba(20,32,51,.1); border-radius:16px; background:white; overflow:hidden; box-shadow:var(--shadow-sm); }
.checklist-head { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:20px 22px; border:0; width:100%; background:white; color:var(--ink); text-align:left; }
.checklist-head strong { font-size:1rem; }
.checklist-head span { color:var(--muted); font-size:.72rem; }
.checklist-body { display:grid; gap:1px; padding:0 22px 22px; }
.check-row { display:grid; grid-template-columns:23px 1fr; gap:11px; align-items:start; padding:11px 0; border-top:1px solid var(--line); }
.check-row input { width:18px; height:18px; margin-top:3px; accent-color:var(--sage); }
.check-row label { cursor:pointer; font-size:.84rem; color:var(--ink-soft); }
.check-row label strong { display:block; color:var(--ink); }
.checklist-summary { position:sticky; top:115px; padding:25px; border-radius:18px; background:var(--navy); color:white; box-shadow:var(--shadow-md); }
.summary-progress { height:9px; margin:17px 0 10px; overflow:hidden; border-radius:99px; background:rgba(255,255,255,.14); }
.summary-progress span { display:block; width:0; height:100%; border-radius:inherit; background:var(--gold); transition:width .25s ease; }
.summary-count { color:rgba(255,255,255,.68); font-size:.77rem; }
.summary-missing { display:grid; gap:6px; margin:18px 0; color:rgba(255,255,255,.73); font-size:.74rem; }

/* FAQs */
.faq-list { display:grid; gap:11px; }
.faq-item { border:1px solid rgba(20,32,51,.11); border-radius:14px; background:white; overflow:hidden; }
.faq-question { width:100%; display:grid; grid-template-columns:1fr 26px; gap:20px; align-items:center; padding:20px 22px; border:0; background:white; color:var(--ink); text-align:left; font-weight:850; }
.faq-question svg { width:20px; height:20px; transition:transform .2s ease; }
.faq-question[aria-expanded="true"] svg { transform:rotate(45deg); }
.faq-answer { display:none; padding:0 22px 21px; color:var(--ink-soft); font-size:.9rem; }
.faq-question[aria-expanded="true"] + .faq-answer { display:block; }
.faq-answer p:last-child { margin-bottom:0; }

/* Contact */
.contact-grid { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(340px,.72fr); gap:38px; align-items:start; }
.contact-form { padding:32px; border:1px solid rgba(20,32,51,.10); border-radius:22px; background:white; box-shadow:var(--shadow-md); }
.contact-panel { overflow:hidden; border-radius:22px; background:var(--navy); color:white; box-shadow:var(--shadow-md); }
.contact-panel-top { padding:34px; }
.contact-panel h2 { margin:0; font-size:1.7rem; }
.contact-panel p { color:rgba(255,255,255,.68); }
.contact-details { display:grid; gap:15px; margin-top:25px; }
.contact-detail { display:grid; grid-template-columns:42px 1fr; gap:13px; align-items:start; }
.contact-detail-icon { width:42px; height:42px; display:grid; place-items:center; border-radius:11px; background:rgba(255,255,255,.1); color:#f1b780; }
.contact-detail-icon svg { width:20px; height:20px; }
.contact-detail small { display:block; color:rgba(255,255,255,.49); font-size:.62rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.contact-detail a,
.contact-detail address { color:white; font-style:normal; font-size:.86rem; text-decoration:none; }
.contact-panel-bottom { padding:25px 34px 32px; background:rgba(255,255,255,.05); }
.contact-panel-bottom strong { display:block; }
.contact-panel-bottom ul { margin:12px 0 0; padding-left:1.1rem; color:rgba(255,255,255,.7); font-size:.78rem; }
.hp-field { position:absolute !important; left:-10000px !important; opacity:0 !important; pointer-events:none !important; }
.form-status { display:none; margin-top:16px; padding:14px; border-radius:10px; font-size:.8rem; }
.form-status.show { display:block; }
.form-status.error { background:#fce5e1; color:#7e2e25; }

/* StockPack */
.stockpack-panel { position:relative; overflow:hidden; display:grid; grid-template-columns:minmax(0,1fr) minmax(360px,.78fr); border-radius:30px; background:linear-gradient(135deg,#173d39,#2f7768); color:white; box-shadow:var(--shadow-lg); }
.stockpack-copy { padding:clamp(38px,6vw,75px); }
.stockpack-copy h2 { margin:0; font-size:clamp(2.3rem,4vw,4rem); line-height:1.05; letter-spacing:-.045em; }
.stockpack-copy p { color:rgba(255,255,255,.75); }
.stockpack-products { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:24px; }
.stockpack-products span { display:flex; align-items:center; gap:9px; padding:11px 12px; border-radius:10px; background:rgba(255,255,255,.09); font-size:.77rem; font-weight:800; }
.stockpack-products svg { width:16px; height:16px; color:#f3c97e; }
.stockpack-visual { min-height:480px; display:grid; place-items:center; padding:35px; background:rgba(255,255,255,.06); }
.pack-collage { width:100%; height:100%; min-height:390px; position:relative; }
.pack-shape { position:absolute; bottom:30px; border:3px solid rgba(255,255,255,.78); background:rgba(255,255,255,.08); box-shadow:0 25px 40px rgba(0,0,0,.14); }
.pack-shape.jar { left:10%; width:105px; height:170px; border-radius:18px 18px 27px 27px; }
.pack-shape.jar::before { content:""; position:absolute; left:-5px; right:-5px; top:-22px; height:25px; border:3px solid rgba(255,255,255,.78); border-radius:8px; background:#d7a342; }
.pack-shape.bottle { left:39%; width:85px; height:230px; border-radius:28px 28px 19px 19px; }
.pack-shape.bottle::before { content:""; position:absolute; width:39px; height:43px; left:20px; top:-39px; border:3px solid rgba(255,255,255,.78); border-bottom:0; border-radius:9px 9px 0 0; }
.pack-shape.pouch { right:7%; width:125px; height:190px; border-radius:11px 11px 24px 24px; transform:skewY(-2deg); }
.pack-shape.pouch::before { content:""; position:absolute; left:11px; right:11px; top:13px; height:3px; background:rgba(255,255,255,.5); }
.pack-label { position:absolute; left:12px; right:12px; top:48%; transform:translateY(-50%); padding:10px 4px; border-radius:8px; background:rgba(212,93,61,.85); color:white; text-align:center; font-size:.62rem; font-weight:900; letter-spacing:.07em; text-transform:uppercase; }
.pack-shape.pouch .pack-label { background:rgba(215,163,66,.88); color:var(--navy); }

/* CTA / footer */
.cta-band { padding:64px 0; background:var(--coral); color:white; }
.cta-inner { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:40px; align-items:center; }
.cta-inner h2 { margin:0; font-size:clamp(2rem,3.5vw,3.3rem); line-height:1.08; letter-spacing:-.04em; }
.cta-inner p { max-width:760px; margin:13px 0 0; color:rgba(255,255,255,.78); }
.cta-actions { display:flex; flex-wrap:wrap; gap:10px; justify-content:flex-end; }

.site-footer { background:#091522; color:white; }
.footer-main { display:grid; grid-template-columns:1.28fr repeat(3,minmax(0,.8fr)); gap:50px; padding:72px 0 55px; }
.footer-brand .brand-title { color:white; font-size:1.12rem; }
.footer-brand .brand-subtitle { color:rgba(255,255,255,.48); }
.footer-brand p { max-width:350px; color:rgba(255,255,255,.62); font-size:.82rem; }
.footer-contact { display:grid; gap:7px; margin-top:19px; }
.footer-contact a,
.footer-contact address { color:white; font-style:normal; text-decoration:none; font-size:.81rem; }
.footer-contact a:hover { text-decoration:underline; }
.footer-column h3 { margin:0 0 15px; color:#f1b780; font-size:.71rem; letter-spacing:.1em; text-transform:uppercase; }
.footer-links { display:grid; gap:8px; }
.footer-links a { color:rgba(255,255,255,.67); text-decoration:none; font-size:.78rem; }
.footer-links a:hover { color:white; text-decoration:underline; }
.footer-bottom { border-top:1px solid rgba(255,255,255,.1); }
.footer-bottom-inner { min-height:72px; display:flex; align-items:center; justify-content:space-between; gap:20px; color:rgba(255,255,255,.46); font-size:.7rem; }
.footer-legal { display:flex; flex-wrap:wrap; gap:16px; }
.footer-legal a { color:inherit; text-decoration:none; }
.footer-legal a:hover { color:white; }

.back-to-top { position:fixed; right:18px; bottom:18px; z-index:50; width:45px; height:45px; display:grid; place-items:center; border:0; border-radius:50%; background:var(--navy); color:white; box-shadow:var(--shadow-md); opacity:0; visibility:hidden; transform:translateY(10px); transition:.2s ease; }
.back-to-top.show { opacity:1; visibility:visible; transform:translateY(0); }
.back-to-top svg { width:19px; height:19px; }

.cookie-note { display:none; }

/* Utility */
.text-muted { color:var(--muted); }
.text-coral { color:var(--coral-dark); }
.text-sage { color:var(--sage-dark); }
.mt-0 { margin-top:0 !important; }
.mt-2 { margin-top:20px !important; }
.mt-3 { margin-top:30px !important; }
.mt-4 { margin-top:40px !important; }
.mb-0 { margin-bottom:0 !important; }
.center { text-align:center; }
.visually-hidden { 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; }

/* Print */
@media print {
  .utility-bar,.site-header,.page-sidebar,.cta-band,.site-footer,.back-to-top,.no-print { display:none !important; }
  body { background:white; font-size:12pt; }
  .page-shell,.checklist-layout { display:block; padding:0; }
  .checklist-summary { position:static; color:black; background:white; border:1px solid #bbb; box-shadow:none; margin-top:20px; }
  .page-hero { padding:25px 0; background:white; }
  .page-hero-grid { display:block; }
  .page-hero-visual { display:none; }
  a { text-decoration:none; }
  .checklist-group { break-inside:avoid; box-shadow:none; }
}

/* Responsive */
@media (max-width: 1120px) {
  :root { --header-height:74px; }
  .header-inner { grid-template-columns:auto auto auto; justify-content:space-between; }
  .nav-toggle { display:grid; place-items:center; justify-self:end; }
  .main-nav {
    position:fixed;
    left:18px;
    right:18px;
    top:calc(39px + var(--header-height) + 8px);
    max-height:calc(100vh - 135px);
    overflow-y:auto;
    display:none;
    align-items:stretch;
    padding:13px;
    border:1px solid rgba(20,32,51,.12);
    border-radius:18px;
    background:white;
    box-shadow:var(--shadow-lg);
  }
  .main-nav.open { display:grid; }
  .nav-item { width:100%; }
  .nav-link,.nav-trigger { width:100%; justify-content:space-between; padding:.8rem .9rem; }
  .nav-panel,
  .nav-item:last-child .nav-panel { position:static; width:auto; transform:none !important; display:none; opacity:1; visibility:visible; pointer-events:auto; margin:4px 0 8px; padding:8px; box-shadow:none; background:var(--cream); }
  .nav-trigger[aria-expanded="true"] + .nav-panel { display:block; }
  .nav-panel-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .header-cta { display:none; }
  .hero-grid { grid-template-columns:minmax(0,1fr) minmax(360px,.8fr); gap:35px; }
  .hero h1 { font-size:clamp(3rem,6vw,4.5rem); }
  .hero-visual { min-height:530px; }
  .hero-chip.one { left:4px; }
  .hero-chip.three { left:4px; }
  .grid-4,.scale-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .grid-5 { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .page-hero-grid { grid-template-columns:minmax(0,1fr) 360px; gap:40px; }
  .page-shell { grid-template-columns:220px minmax(0,1fr); gap:38px; }
  .footer-main { grid-template-columns:1.2fr repeat(3,1fr); gap:30px; }
}

@media (max-width: 900px) {
  body { font-size:16px; }
  .utility-inner { justify-content:center; }
  .utility-links { display:none; }
  .hero { padding-top:70px; }
  .hero-grid { grid-template-columns:1fr; }
  .hero-copy { padding-bottom:15px; }
  .hero-visual { min-height:540px; width:min(100%,650px); margin:auto; }
  .journey-wrap { margin-top:0; }
  .journey-bar { grid-template-columns:repeat(2,1fr); }
  .journey-item:nth-child(3) { border-left:0; border-top:1px solid var(--line); }
  .journey-item:nth-child(4) { border-top:1px solid var(--line); }
  .section { padding:75px 0; }
  .section-header { grid-template-columns:1fr; gap:18px; }
  .grid-3,.machine-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .split-feature,.split-feature.reverse { grid-template-columns:1fr; }
  .split-feature.reverse .feature-image { order:2; }
  .feature-image,.feature-image img { min-height:420px; }
  .reference-panel { grid-template-columns:1fr; }
  .reference-image { min-height:420px; }
  .page-hero-grid { grid-template-columns:1fr; }
  .page-hero-visual { max-width:650px; min-height:360px; }
  .page-hero-visual img { min-height:360px; }
  .page-shell { grid-template-columns:1fr; padding-top:48px; }
  .page-sidebar { position:static; display:grid; grid-template-columns:1fr 1fr; gap:16px; }
  .tool-shell { grid-template-columns:1fr; }
  .tool-result { position:static; min-height:0; }
  .checklist-layout { grid-template-columns:1fr; }
  .checklist-summary { position:static; }
  .stockpack-panel { grid-template-columns:1fr; }
  .stockpack-visual { min-height:400px; }
  .contact-grid { grid-template-columns:1fr; }
  .cta-inner { grid-template-columns:1fr; }
  .cta-actions { justify-content:flex-start; }
  .footer-main { grid-template-columns:repeat(2,1fr); }
}

@media (max-width: 650px) {
  .container { width:min(calc(100% - 28px),var(--container)); }
  .utility-inner { min-height:35px; font-size:.69rem; text-align:center; }
  .site-header { top:0; }
  .header-inner { min-height:68px; gap:10px; }
  .brand { min-width:0; }
  .brand-mark { width:36px; height:41px; }
  .brand-title { font-size:.9rem; }
  .brand-subtitle { font-size:.56rem; }
  .main-nav { top:calc(35px + 68px + 7px); left:10px; right:10px; }
  .nav-panel-grid { grid-template-columns:1fr; }
  .nav-card span { display:none; }
  .hero { padding-top:53px; }
  .hero h1 { font-size:clamp(2.65rem,12vw,4rem); }
  .hero-lead { font-size:1rem; }
  .hero-actions .btn { width:100%; }
  .hero-visual { min-height:430px; }
  .hero-image-shell { bottom:40px; border-radius:24px; }
  .hero-image-shell img { padding:18px; }
  .hero-chip { max-width:178px; padding:9px 11px; font-size:.68rem; }
  .hero-chip.one { top:28px; }
  .hero-chip.two { top:125px; right:0; }
  .hero-chip.three { bottom:52px; }
  .hero-mini-card { right:9px; bottom:9px; width:210px; padding:13px 14px; }
  .journey-bar { grid-template-columns:1fr; }
  .journey-item + .journey-item { border-left:0; border-top:1px solid var(--line); }
  .section-header { margin-bottom:31px; }
  .section-title { font-size:2.25rem; }
  .grid-2,.grid-3,.grid-4,.grid-5,.machine-grid,.scale-grid,.compare-grid,.article-grid,.decision-strip,.next-grid { grid-template-columns:1fr; }
  .process-step { grid-template-columns:55px minmax(0,1fr); padding-right:15px; }
  .process-step .step-output { display:none; }
  .process-icon { width:55px; height:55px; }
  .process-rail::before { left:27px; }
  .feature-image,.feature-image img { min-height:330px; }
  .reference-image { min-height:330px; }
  .reference-specs { grid-template-columns:1fr; }
  .compare-body dl > div { grid-template-columns:1fr; gap:4px; }
  .page-hero { padding:48px 0 44px; }
  .breadcrumbs { margin-bottom:25px; }
  .page-hero h1 { font-size:2.8rem; }
  .page-hero-visual,.page-hero-visual img { min-height:300px; }
  .page-sidebar { grid-template-columns:1fr; }
  .form-grid { grid-template-columns:1fr; }
  .form-field.full { grid-column:auto; }
  .tool-form,.contact-form { padding:22px; }
  .tool-result-head,.tool-result-body { padding-left:22px; padding-right:22px; }
  .calc-details { grid-template-columns:1fr; }
  .stockpack-products { grid-template-columns:1fr; }
  .stockpack-visual { min-height:330px; padding:20px; }
  .pack-collage { min-height:300px; transform:scale(.86); }
  .footer-main { grid-template-columns:1fr; gap:32px; padding-top:55px; }
  .footer-bottom-inner { align-items:flex-start; flex-direction:column; padding:20px 0; }
  .cta-actions .btn { width:100%; }
}

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


/*
  Sauce & Preserve Production — premium visual layer
  Integrated in production build 4.0 | 07 August 2026
  Loaded after site.css so existing functionality remains intact.
*/
:root{
  --ink:#182724;
  --ink-soft:#52615d;
  --navy:#10221f;
  --navy-2:#19312c;
  --navy-3:#27473f;
  --paper:#fcfaf5;
  --cream:#f4efe6;
  --cream-2:#e9e0d3;
  --white:#fff;
  --line:#ded8cd;
  --line-dark:rgba(255,255,255,.16);
  --coral:#b95637;
  --coral-dark:#91412d;
  --coral-soft:#f4ded3;
  --marmalade:#d47b3f;
  --sage:#718878;
  --sage-dark:#445f53;
  --sage-soft:#e4ece6;
  --gold:#c5a56a;
  --gold-soft:#eee2c9;
  --berry:#a43c4a;
  --muted:#6e7975;
  --success:#406e60;
  --danger:#9d3d36;
  --shadow-sm:0 10px 30px rgba(20,35,31,.07);
  --shadow-md:0 24px 70px rgba(20,35,31,.11);
  --shadow-lg:0 42px 110px rgba(9,25,21,.18);
  --radius-sm:8px;
  --radius:14px;
  --radius-lg:22px;
  --radius-xl:32px;
  --container:1320px;
  --header-height:82px;
  --font-body:"Aptos","Segoe UI",Arial,sans-serif;
  --font-display:"Iowan Old Style","Palatino Linotype","Book Antiqua",Georgia,serif;
  --space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;--space-10:128px;
}
html{scroll-padding-top:112px}
body{background:var(--paper);color:var(--ink);font-size:16.5px;line-height:1.68;letter-spacing:-.005em}
::selection{background:#e7d2a8;color:var(--navy)}
img{image-rendering:auto}
a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(197,165,106,.78);outline-offset:3px}
.container{width:min(calc(100% - 48px),var(--container))}
.container.narrow{width:min(calc(100% - 48px),980px)}
.container.wide{width:min(calc(100% - 40px),1450px)}

/* Header */
.utility-bar{background:#0a1916;color:rgba(255,255,255,.78);border-bottom:1px solid rgba(255,255,255,.06);font-size:.73rem;letter-spacing:.025em}
.utility-inner{min-height:34px}
.utility-message{display:inline-flex;align-items:center}
.utility-dot{width:5px;height:5px;margin-right:10px;background:var(--gold);box-shadow:0 0 0 4px rgba(197,165,106,.12)}
.utility-links{gap:26px}.utility-links a{color:rgba(255,255,255,.93);font-weight:650}
.site-header{background:rgba(252,250,245,.94);border-bottom-color:rgba(24,39,36,.11);backdrop-filter:blur(22px) saturate(125%);box-shadow:0 1px 0 rgba(255,255,255,.65)}
.site-header.is-scrolled{box-shadow:0 16px 40px rgba(12,31,26,.08)}
.header-inner{gap:26px;min-height:82px}.brand{min-width:252px;gap:0}.brand-logo{display:block;width:252px;height:auto}
.main-nav{gap:0}.nav-link,.nav-trigger{min-height:42px;padding:.62rem .67rem;border-radius:7px;color:#364641;font-size:.77rem;font-weight:760;letter-spacing:.015em}
.nav-link:hover,.nav-trigger:hover,.nav-trigger[aria-expanded=true],.nav-link[aria-current=page]{background:#eee8dc;color:var(--navy)}
.nav-link[aria-current=page]{box-shadow:inset 0 -2px 0 var(--coral)}
.nav-panel{top:calc(100% + 15px);padding:12px;border:1px solid rgba(24,39,36,.12);border-radius:16px;background:rgba(255,255,255,.98);box-shadow:0 32px 90px rgba(9,28,23,.17)}
.nav-card{padding:13px;border-radius:10px}.nav-card:hover{background:#f5f1e9}.nav-card-icon{background:#eee1d7;color:var(--coral-dark);border-radius:9px}.nav-card:nth-child(2n) .nav-card-icon{background:#e3ebe5;color:var(--sage-dark)}
.nav-card strong{font-size:.84rem}.nav-card span{color:#707b77}.nav-panel-footer{border-top-color:var(--line)}.nav-panel-footer a{color:var(--coral-dark)}
.header-cta,.btn{border-radius:8px;font-size:.82rem;font-weight:800;letter-spacing:.005em}
.header-cta,.btn-primary{background:var(--coral);color:#fff;box-shadow:0 12px 28px rgba(145,65,45,.22)}
.header-cta:hover,.btn-primary:hover{background:var(--coral-dark);box-shadow:0 16px 36px rgba(145,65,45,.28)}
.btn-dark{background:var(--navy)}.btn-dark:hover{background:var(--navy-3)}
.btn-light{background:#fffdf8;color:var(--navy)}.btn-light:hover{background:#fff;color:var(--navy)}
.btn-secondary{background:transparent;border-color:rgba(24,39,36,.25);box-shadow:none}.btn-secondary:hover{background:#fff}
.btn-large{min-height:54px;padding:.93rem 1.3rem;font-size:.88rem}
.btn-outline-light,.btn-ghost-light{background:transparent;border-color:rgba(255,255,255,.55);color:#fff;box-shadow:none}.btn-outline-light:hover,.btn-ghost-light:hover{background:rgba(255,255,255,.11);border-color:rgba(255,255,255,.82);transform:translateY(-2px)}
.text-link{color:var(--coral-dark);font-size:.79rem;font-weight:850;text-decoration:none}.text-link:hover{text-decoration:underline}.text-link.light{color:#fff}

/* Global type and sections */
h1,h2,h3{font-family:var(--font-display);font-weight:500;letter-spacing:-.035em;color:var(--navy)}
h1{font-size:clamp(3.1rem,6vw,6.25rem);line-height:.93}h2{font-size:clamp(2.25rem,4.2vw,4.6rem);line-height:1.02}h3{line-height:1.13}
.section{padding:clamp(76px,8.3vw,124px) 0}.section-intro{margin-bottom:clamp(36px,5vw,66px)}
.split-intro{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.62fr);gap:clamp(50px,9vw,128px);align-items:end}.split-intro>p{max-width:560px;margin:0 0 8px;color:var(--ink-soft);font-size:1.03rem}
.premium-kicker,.premium-eyebrow{display:inline-flex;align-items:center;gap:11px;color:var(--coral-dark);font-size:.69rem;font-weight:850;letter-spacing:.16em;line-height:1.4;text-transform:uppercase}.premium-eyebrow{color:#e5c99a}.premium-eyebrow>span{width:34px;height:1px;background:var(--gold)}
.section-intro h2,.behaviour-copy h2,.stockpack-copy h2,.faq-layout h2{margin:.72rem 0 0}.on-dark h2,.on-dark p{color:#fff}.on-dark p{color:rgba(255,255,255,.67)}.on-dark .premium-kicker{color:#d8bd87}
.inline-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:28px}

/* Hero */
.home-hero{position:relative;isolation:isolate;min-height:790px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;background:var(--navy);color:#fff}
.home-hero-media,.home-hero-media img{position:absolute;inset:0;width:100%;height:100%}.home-hero-media{z-index:-3}.home-hero-media img{object-fit:cover;object-position:center}
.home-hero-texture{position:absolute;inset:0;z-index:-2;opacity:.22;background-image:radial-gradient(circle at 65% 30%,rgba(255,255,255,.13),transparent 28%),repeating-linear-gradient(115deg,rgba(255,255,255,.022) 0 1px,transparent 1px 7px);pointer-events:none}
.home-hero:after{content:"";position:absolute;inset:auto 0 0;z-index:-1;height:38%;background:linear-gradient(transparent,rgba(6,19,16,.8));pointer-events:none}
.home-hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.62fr);gap:clamp(52px,7vw,108px);align-items:end;padding-top:clamp(92px,12vh,145px);padding-bottom:54px}
.home-hero-copy{max-width:820px}.home-hero h1{max-width:820px;margin:28px 0 26px;color:#fff;font-size:clamp(4.15rem,6.25vw,7rem);line-height:.91}.home-hero h1 em{color:#edaa72;font-weight:500}.home-hero-copy>p{max-width:730px;margin:0;color:rgba(255,255,255,.78);font-size:1.08rem;line-height:1.75}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.hero-microcopy{display:flex;align-items:center;gap:10px!important;margin-top:15px!important;font-size:.76rem!important;color:rgba(255,255,255,.66)!important}.hero-microcopy span{color:#e8c77f}
.decision-card{overflow:hidden;border:1px solid rgba(255,255,255,.19);border-radius:19px;background:rgba(9,28,23,.83);box-shadow:var(--shadow-lg);backdrop-filter:blur(15px)}.decision-card-head{padding:24px 26px 19px;border-bottom:1px solid rgba(255,255,255,.13)}.decision-card-head span{color:#e4c27d;font-size:.64rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.decision-card-head p{margin:6px 0 0;font-family:var(--font-display);font-size:1.02rem}
.decision-card ol{list-style:none;margin:0;padding:6px 26px}.decision-card li{display:grid;grid-template-columns:32px 1fr;gap:12px;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.12)}.decision-card li:last-child{border:0}.decision-card li>span{color:#d8b56e;font-size:.68rem;font-weight:800}.decision-card strong{display:block;color:#fff;font-size:.82rem}.decision-card small{display:block;margin-top:4px;color:rgba(255,255,255,.58);font-size:.7rem;line-height:1.45}.decision-card>a{display:flex;justify-content:space-between;padding:19px 26px;background:rgba(197,165,106,.15);color:#efd89f;font-size:.72rem;font-weight:800;text-decoration:none}.decision-card>a:hover{background:rgba(197,165,106,.24)}
.hero-trust{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid rgba(255,255,255,.15);border-bottom:0;background:rgba(7,23,19,.58);backdrop-filter:blur(10px)}.hero-trust>div{min-height:99px;padding:22px 25px;border-right:1px solid rgba(255,255,255,.14)}.hero-trust>div:last-child{border:0}.hero-trust strong{display:block;font-size:.75rem}.hero-trust span{display:block;margin-top:6px;color:rgba(255,255,255,.56);font-size:.68rem;line-height:1.45}

/* Pack formats */
.section-pack-formats{background:var(--paper)}.format-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.format-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid rgba(24,39,36,.1);border-radius:10px;background:#fff;color:var(--ink);box-shadow:var(--shadow-sm);text-decoration:none;transition:transform .25s ease,box-shadow .25s ease}.format-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md)}.format-image{position:relative;aspect-ratio:1.12/1;overflow:hidden;background:#ede8df}.format-image img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.format-card:hover img{transform:scale(1.035)}.format-image>span{position:absolute;right:13px;top:13px;display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:rgba(16,34,31,.88);color:#fff;font-size:.65rem;font-weight:800}.format-content{display:flex;flex:1;flex-direction:column;padding:24px}.format-content small{color:var(--coral-dark);font-size:.63rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.format-content h3{margin:8px 0 9px;font-size:1.55rem}.format-content p{margin:0;color:var(--ink-soft);font-size:.82rem;line-height:1.6}.format-content .text-link{margin-top:auto;padding-top:22px}

/* Process */
.process-architecture{background:var(--navy);color:#fff}.process-rail{display:grid;grid-template-columns:repeat(7,1fr);border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18)}.process-rail a{position:relative;min-height:145px;padding:25px 14px 20px;border-right:1px solid rgba(255,255,255,.13);color:#fff;text-decoration:none}.process-rail a:last-child{border:0}.process-rail a:hover{background:rgba(255,255,255,.055)}.process-rail span{display:block;color:#c8a761;font-size:.65rem;font-weight:850}.process-rail strong{display:block;margin-top:25px;font-family:var(--font-display);font-size:1.2rem;font-weight:500}.process-rail small{display:block;margin-top:5px;color:rgba(255,255,255,.54);font-size:.68rem;line-height:1.4}.process-note{display:grid;grid-template-columns:auto 1fr auto;gap:25px;align-items:center;margin-top:18px;padding:16px 18px;background:rgba(255,255,255,.05)}.process-note>span{color:#e3c67f;font-size:.63rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.process-note p{margin:0;color:rgba(255,255,255,.68);font-size:.76rem}.process-note a{color:#fff;font-size:.72rem;font-weight:800;text-decoration:none}

/* Product behaviour */
.behaviour-section{background:var(--cream)}.behaviour-grid{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:clamp(55px,8vw,118px);align-items:center}.behaviour-image{position:relative}.behaviour-image img{width:100%;aspect-ratio:.91/1;object-fit:cover;border-radius:9px;box-shadow:var(--shadow-md)}.behaviour-image>span{position:absolute;right:-22px;bottom:30px;width:230px;padding:18px 19px;background:var(--navy);color:rgba(255,255,255,.78);font-size:.7rem;line-height:1.45}.behaviour-copy>p{max-width:650px;color:var(--ink-soft);font-size:1rem}.behaviour-points{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:30px}.behaviour-points article{display:grid;grid-template-columns:27px 1fr;gap:10px;padding:18px;border:1px solid rgba(24,39,36,.1);background:rgba(255,255,255,.56)}.behaviour-points article>span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--navy);color:#fff;font-size:.59rem;font-weight:800}.behaviour-points h3{margin:0;font-family:var(--font-body);font-size:.8rem;font-weight:850;letter-spacing:0}.behaviour-points p{margin:5px 0 0;color:var(--ink-soft);font-size:.7rem;line-height:1.5}

/* Thermal */
.thermal-section{background:var(--paper)}.thermal-grid{display:grid;grid-template-columns:1fr 1fr .92fr;gap:16px;align-items:stretch}.thermal-card{padding:34px 31px;border:1px solid var(--line);border-radius:10px;background:#fff}.thermal-card.hot{border-top:4px solid var(--coral)}.thermal-card.cold{border-top:4px solid var(--sage)}.thermal-label{display:inline-flex;padding:6px 9px;border-radius:4px;background:var(--coral-soft);color:var(--coral-dark);font-size:.62rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.thermal-card.cold .thermal-label{background:var(--sage-soft);color:var(--sage-dark)}.thermal-card h3{margin:17px 0 10px;font-size:1.85rem}.thermal-card p{color:var(--ink-soft);font-size:.83rem}.thermal-card ul{margin:20px 0;padding:18px 0 0;border-top:1px solid var(--line);list-style:none}.thermal-card li{position:relative;margin:9px 0;padding-left:17px;color:var(--ink-soft);font-size:.75rem}.thermal-card li:before{content:"";position:absolute;left:0;top:.65em;width:5px;height:5px;border-radius:50%;background:var(--coral)}.thermal-card.cold li:before{background:var(--sage)}.thermal-card>a{display:inline-flex;margin-top:16px;color:var(--coral-dark);font-size:.73rem;font-weight:850;text-decoration:none}.thermal-card.cold>a{color:var(--sage-dark)}.thermal-photo{position:relative;min-height:100%;margin:0;overflow:hidden;border-radius:10px}.thermal-photo img{width:100%;height:100%;min-height:430px;object-fit:cover}.thermal-photo figcaption{position:absolute;left:16px;right:16px;bottom:16px;padding:14px 16px;background:rgba(10,30,25,.84);color:#fff;font-size:.7rem}

/* Throughput */
.throughput-section{background:var(--navy);color:#fff}.throughput-section .section-intro{align-items:center}.throughput-bands{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18)}.throughput-bands a{min-height:220px;padding:30px 25px;border-right:1px solid rgba(255,255,255,.15);color:#fff;text-decoration:none}.throughput-bands a:last-child{border:0}.throughput-bands a:hover{background:rgba(255,255,255,.055)}.throughput-bands strong{display:block;color:#d6b96f;font-family:var(--font-display);font-size:2.25rem;font-weight:500;letter-spacing:-.03em}.throughput-bands> a>span{display:block;margin-top:-3px;color:rgba(255,255,255,.5);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase}.throughput-bands h3{margin:26px 0 8px;color:#fff;font-family:var(--font-body);font-size:.83rem;font-weight:850;letter-spacing:0}.throughput-bands p{margin:0;color:rgba(255,255,255,.58);font-size:.72rem;line-height:1.55}.throughput-disclaimer{margin:19px 0 0;color:rgba(255,255,255,.5);font-size:.7rem}

/* Machinery */
.machinery-section{background:var(--cream)}.machine-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.machine-card{display:grid;grid-template-columns:43% 1fr;min-height:270px;overflow:hidden;border:1px solid rgba(24,39,36,.1);border-radius:10px;background:#fff;color:var(--ink);text-decoration:none;box-shadow:var(--shadow-sm);transition:transform .22s ease,box-shadow .22s ease}.machine-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.machine-card img{width:100%;height:100%;object-fit:contain;padding:24px;background:#f7f5f0}.machine-card>div{display:flex;flex-direction:column;padding:28px 26px}.machine-card span{color:var(--coral-dark);font-size:.61rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.machine-card h3{margin:10px 0 10px;font-size:1.55rem}.machine-card p{margin:0;color:var(--ink-soft);font-size:.78rem}.machine-card strong{margin-top:auto;padding-top:20px;color:var(--navy);font-size:.68rem}.machine-note{display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;margin-top:15px;padding:17px 20px;background:var(--navy);color:#fff}.machine-note>span{color:#e0c27c;font-size:.62rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.machine-note p{margin:0;color:rgba(255,255,255,.66);font-size:.74rem}.machine-note a{color:#fff;font-size:.72rem;font-weight:800;text-decoration:none}

/* StockPack */
.stockpack-section{background:var(--paper)}.stockpack-grid{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.08fr);gap:clamp(55px,8vw,118px);align-items:center}.stockpack-copy p{color:var(--ink-soft)}.stockpack-copy ul{margin:27px 0 0;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);list-style:none}.stockpack-copy li{position:relative;margin:10px 0;padding-left:22px;color:var(--ink-soft);font-size:.82rem}.stockpack-copy li:before{content:"→";position:absolute;left:0;color:var(--coral-dark)}.stockpack-image img{width:100%;aspect-ratio:1.28/1;object-fit:cover;border-radius:9px;box-shadow:var(--shadow-md)}

/* Evidence */
.evidence-section{padding-top:0}.evidence-card{padding:clamp(42px,5vw,70px);border-radius:10px;background:linear-gradient(135deg,#10221f,#1c352f);color:#fff;box-shadow:var(--shadow-lg)}.evidence-card h2{max-width:820px;margin:10px 0;color:#fff;font-size:clamp(2.2rem,4vw,4.15rem)}.evidence-card>p{max-width:760px;color:rgba(255,255,255,.67)}.evidence-card .premium-kicker{color:#e0c27c}.evidence-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:34px;border:1px solid rgba(255,255,255,.14)}.evidence-grid article{padding:25px;border-right:1px solid rgba(255,255,255,.14)}.evidence-grid article:last-child{border:0}.evidence-grid span{color:#d7b66f;font-size:.64rem;font-weight:850}.evidence-grid h3{margin:12px 0 7px;color:#fff;font-family:var(--font-body);font-size:.82rem;font-weight:850;letter-spacing:0}.evidence-grid p{margin:0;color:rgba(255,255,255,.56);font-size:.7rem;line-height:1.5}

/* FAQs and final CTA */
.faq-section{background:var(--cream)}.faq-layout{display:grid;grid-template-columns:minmax(260px,.55fr) minmax(0,1fr);gap:clamp(60px,9vw,130px);align-items:start}.faq-layout>div:first-child{position:sticky;top:135px}.faq-layout>div:first-child p{color:var(--ink-soft)}.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line);background:transparent;box-shadow:none}.faq-question{padding:21px 2px;background:transparent;color:var(--ink);font-size:.86rem}.faq-question svg{width:20px;height:20px;stroke-width:1.6}.faq-answer p{padding:0 30px 22px 2px;color:var(--ink-soft);font-size:.8rem}.faq-question[aria-expanded=true]{color:var(--coral-dark)}
.final-cta{background:var(--coral);color:#fff}.final-cta-inner{display:grid;grid-template-columns:1fr auto;gap:60px;align-items:center;padding-top:62px;padding-bottom:62px}.final-cta h2{max-width:830px;margin:8px 0 12px;color:#fff;font-size:clamp(2.35rem,4.2vw,4.6rem)}.final-cta p{max-width:800px;margin:0;color:rgba(255,255,255,.79)}.final-cta .premium-kicker{color:#fff}.final-cta-inner>div:last-child{display:grid;gap:12px;min-width:235px}.final-cta-inner>div:last-child>span{font-size:.72rem;color:rgba(255,255,255,.76);text-align:center}.final-cta-inner>div:last-child>span a{font-weight:850}

/* Inner pages */
.page-hero{padding:70px 0 84px;background:linear-gradient(180deg,#f1ebdf 0,var(--paper) 100%)}.breadcrumbs{margin-bottom:38px;color:var(--muted);font-size:.7rem}.breadcrumbs a{font-weight:700}.page-hero-grid{grid-template-columns:minmax(0,1.02fr) minmax(390px,.74fr);gap:clamp(55px,8vw,110px);align-items:center}.page-hero .eyebrow{display:inline-flex;color:var(--coral-dark);font-size:.68rem;letter-spacing:.15em}.page-hero h1{max-width:800px;margin:18px 0 23px;font-size:clamp(3.4rem,5.7vw,6.2rem);line-height:.95}.page-hero-lead{max-width:760px;color:var(--ink-soft);font-size:1.04rem}.page-hero-actions{margin-top:29px}.page-hero-visual{overflow:hidden;border-radius:10px;background:#fff;box-shadow:var(--shadow-lg)}.page-hero-visual img{width:100%;height:430px;object-fit:contain;padding:28px;background:#fff}.page-hero-visual.photo-led img{object-fit:cover;padding:0}.page-hero-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:0;padding:0;background:var(--navy);color:#fff}.page-hero-notes span{padding:15px 14px;border-right:1px solid rgba(255,255,255,.13);font-size:.65rem;line-height:1.4}.page-hero-notes span:last-child{border:0}
.page-shell{padding:90px 0 115px}.article-grid{grid-template-columns:minmax(210px,.28fr) minmax(0,1fr);gap:clamp(55px,8vw,110px)}.page-sidebar{position:relative}.toc{position:sticky;top:125px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:var(--shadow-sm)}.toc-title{padding:18px 20px;border-bottom:1px solid var(--line);color:var(--navy);font-size:.7rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.toc a{padding:11px 20px;color:var(--ink-soft);font-size:.72rem}.toc a:hover{background:var(--cream);color:var(--coral-dark)}.sidebar-cta{border-radius:10px;background:var(--navy);box-shadow:var(--shadow-md)}
.article{max-width:900px}.article h2{margin:2.2em 0 .55em;font-size:clamp(2.2rem,3.7vw,3.75rem)}.article h3{margin-top:1.8em;font-size:1.75rem}.article p,.lead-paragraph{color:var(--ink-soft)}.lead-paragraph{font-size:1.15rem;line-height:1.75}.article-figure{overflow:hidden;border-radius:10px;box-shadow:var(--shadow-md)}.article-figure img{width:100%}.callout{border-radius:9px;border-color:var(--line);box-shadow:var(--shadow-sm)}.callout.navy{background:var(--navy)}.callout.gold{background:var(--gold-soft)}.callout.sage{background:var(--sage-soft)}
.numbered-item{border-radius:8px;border-color:var(--line);background:#fff;box-shadow:var(--shadow-sm)}.numbered-item .num{background:var(--navy);color:#fff}.tick-list li:before{background:var(--sage)}
.next-grid{gap:14px}.next-card{border-radius:9px;border-color:var(--line);box-shadow:var(--shadow-sm)}.next-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}
.data-table{border-radius:8px;overflow:hidden}.data-table th{background:var(--navy)}.data-table td{border-color:var(--line)}
.card,.mini-card,.scale-card,.icon-tile{border-radius:9px;border-color:var(--line);box-shadow:var(--shadow-sm)}.section-cream{background:var(--cream)}.section-sage{background:var(--sage-soft)}
.cta-band{background:var(--coral)}.cta-band h2{color:#fff}.cta-band p{color:rgba(255,255,255,.78)}

/* Tools and forms */
.tool-shell{border-radius:12px;border-color:var(--line);box-shadow:var(--shadow-md)}.tool-form{background:#fff}.tool-result{background:var(--navy)}.form-control,input,select,textarea{border-radius:7px;border-color:#cfc9bf;background:#fff}.form-control:focus,input:focus,select:focus,textarea:focus{border-color:var(--sage);box-shadow:0 0 0 4px rgba(113,136,120,.15)}.form-field label{color:var(--navy)}.result-stage{border-color:rgba(255,255,255,.14)}.result-warning{border-radius:7px}.checklist-group{border-radius:9px;border-color:var(--line);box-shadow:var(--shadow-sm)}.checklist-head{background:var(--cream)}.contact-form,.contact-panel{border-radius:10px;box-shadow:var(--shadow-md)}.contact-panel{background:var(--navy)}

/* Footer */
.site-footer{background:#081713}.footer-main{grid-template-columns:1.35fr .65fr .8fr .72fr;gap:60px;padding-top:62px;padding-bottom:58px}.footer-logo{display:block;width:270px;height:auto}.footer-brand p{max-width:390px;color:rgba(255,255,255,.58);font-size:.74rem}.footer-contact{font-size:.72rem}.footer-column h3{color:#e6c984;font-family:var(--font-body);font-size:.68rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.footer-links a{color:rgba(255,255,255,.62);font-size:.7rem}.footer-links a:hover{color:#fff}.footer-bottom{border-top-color:rgba(255,255,255,.1)}.footer-bottom-inner{min-height:62px;color:rgba(255,255,255,.44);font-size:.65rem}.footer-bottom a{color:rgba(255,255,255,.62)}
.mobile-action-bar{display:none}
.back-to-top{right:22px;bottom:22px;background:var(--navy);border-radius:50%}

/* Presentation reveal */
[data-reveal]{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}[data-reveal].is-visible{opacity:1;transform:none}

/* Responsive */
@media (max-width:1200px){
 .header-inner{grid-template-columns:auto 1fr auto}.brand,.brand-logo{min-width:0;width:220px}.main-nav{justify-self:end}.nav-link,.nav-trigger{font-size:.73rem;padding:.6rem .52rem}.header-cta{display:none}
 .home-hero-grid{grid-template-columns:minmax(0,1fr) minmax(300px,.58fr);gap:42px}.home-hero h1{font-size:clamp(4rem,6.7vw,6rem)}
 .format-grid{grid-template-columns:repeat(2,1fr)}.format-image{aspect-ratio:1.35/1}
 .process-rail{grid-template-columns:repeat(4,1fr)}.process-rail a:nth-child(4){border-right:0}.process-rail a:nth-child(-n+4){border-bottom:1px solid rgba(255,255,255,.13)}
 .thermal-grid{grid-template-columns:1fr 1fr}.thermal-photo{grid-column:1/-1;min-height:380px}.thermal-photo img{min-height:380px}
 .machine-card{grid-template-columns:40% 1fr}.page-hero-grid{grid-template-columns:1fr .75fr}
}
@media (max-width:1024px){
 .utility-inner{min-height:35px}.nav-toggle{display:grid}.main-nav{position:fixed;left:20px;right:20px;top:104px;display:none;max-height:calc(100vh - 125px);overflow:auto;padding:13px;border:1px solid rgba(24,39,36,.12);border-radius:14px;background:#fff;box-shadow:var(--shadow-lg)}.main-nav.open{display:block}.nav-link,.nav-trigger{width:100%;justify-content:space-between;padding:.82rem .9rem;font-size:.85rem}.nav-panel{position:static;width:100%;transform:none!important;margin:0 0 8px;box-shadow:none;border-radius:10px}.nav-trigger[aria-expanded=true]+.nav-panel{display:block}.nav-panel-grid{grid-template-columns:repeat(2,1fr)}
 .home-hero{min-height:auto}.home-hero-grid{grid-template-columns:1fr;padding-top:120px;padding-bottom:55px}.home-hero-copy{max-width:760px}.home-hero h1{font-size:clamp(3.8rem,8vw,5.8rem)}.decision-card{max-width:660px}.decision-card ol{display:grid;grid-template-columns:repeat(2,1fr);gap:0 24px}.hero-trust{grid-template-columns:repeat(2,1fr)}.hero-trust>div:nth-child(2){border-right:0}.hero-trust>div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.14)}
 .split-intro{grid-template-columns:1fr;gap:20px}.split-intro>p{max-width:780px}.behaviour-grid,.stockpack-grid{grid-template-columns:1fr}.behaviour-image{max-width:700px}.behaviour-image img{aspect-ratio:1.25/1}.behaviour-image>span{right:20px}.throughput-bands{grid-template-columns:repeat(2,1fr)}.throughput-bands a:nth-child(2){border-right:0}.throughput-bands a:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.15)}.machine-grid{grid-template-columns:1fr}.faq-layout{grid-template-columns:1fr;gap:45px}.faq-layout>div:first-child{position:static}.final-cta-inner{grid-template-columns:1fr;gap:28px}.final-cta-inner>div:last-child{justify-self:start}
 .page-hero-grid{grid-template-columns:1fr}.page-hero-visual{max-width:720px}.article-grid{grid-template-columns:1fr}.page-sidebar{display:none}.article{max-width:none}
 .footer-main{grid-template-columns:1.2fr repeat(3,1fr);gap:34px}
}
@media (max-width:760px){
 body{font-size:16px;padding-bottom:68px}.container,.container.narrow,.container.wide{width:min(calc(100% - 28px),var(--container))}.utility-inner{justify-content:center;text-align:center}.utility-message{font-size:.64rem;line-height:1.4}.utility-links{display:none}.header-inner{min-height:68px}.brand-logo{width:190px}.site-header{top:0}.main-nav{top:78px;left:12px;right:12px}.nav-panel-grid{grid-template-columns:1fr}.nav-panel-footer{display:none}
 .section{padding:72px 0}.home-hero-grid{padding-top:86px;padding-bottom:30px}.home-hero-media img{object-position:center}.home-hero h1{margin:22px 0 24px;font-size:clamp(3.3rem,15.2vw,4.55rem);line-height:.96}.home-hero-copy>p{font-size:.96rem;line-height:1.65}.premium-eyebrow{font-size:.61rem}.hero-actions{display:grid}.hero-actions .btn{width:100%}.hero-microcopy{align-items:flex-start!important}.decision-card{margin-top:12px}.decision-card ol{grid-template-columns:1fr}.hero-trust{grid-template-columns:1fr}.hero-trust>div{min-height:0;border-right:0!important;border-bottom:1px solid rgba(255,255,255,.14)!important}.hero-trust>div:last-child{border-bottom:0!important}
 h2{font-size:clamp(2.25rem,11vw,3.35rem)}.format-grid{grid-template-columns:1fr}.format-image{aspect-ratio:1.4/1}.process-rail{grid-template-columns:1fr 1fr}.process-rail a{min-height:120px;border-right:1px solid rgba(255,255,255,.13)!important;border-bottom:1px solid rgba(255,255,255,.13)!important}.process-rail a:nth-child(2n){border-right:0!important}.process-note{grid-template-columns:1fr;gap:7px}.behaviour-points{grid-template-columns:1fr}.behaviour-image>span{position:static;display:block;width:auto}.thermal-grid{grid-template-columns:1fr}.thermal-photo{grid-column:auto}.throughput-bands{grid-template-columns:1fr}.throughput-bands a{border-right:0!important;border-bottom:1px solid rgba(255,255,255,.15)!important}.throughput-bands a:last-child{border-bottom:0!important}.machine-card{grid-template-columns:1fr}.machine-card img{height:240px}.machine-note{grid-template-columns:1fr;gap:7px}.evidence-card{width:calc(100% - 28px);padding:34px 24px}.evidence-grid{grid-template-columns:1fr}.evidence-grid article{border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}.evidence-grid article:last-child{border:0}.faq-question{align-items:flex-start}.final-cta-inner{padding-top:48px;padding-bottom:48px}
 .page-hero{padding:34px 0 58px}.breadcrumbs{margin-bottom:25px}.page-hero h1{font-size:clamp(3rem,14vw,4.4rem)}.page-hero-lead{font-size:.96rem}.page-hero-actions{display:grid}.page-hero-actions .btn{width:100%}.page-hero-visual img{height:300px}.page-hero-notes{grid-template-columns:1fr}.page-hero-notes span{border-right:0;border-bottom:1px solid rgba(255,255,255,.13)}.page-shell{padding:65px 0 88px}.article h2{font-size:clamp(2.2rem,11vw,3rem)}
 .footer-main{grid-template-columns:1fr 1fr;padding-top:50px}.footer-brand{grid-column:1/-1}.footer-column:last-child{grid-column:1/-1}.footer-bottom-inner{display:grid;gap:10px;padding:17px 0}.footer-legal{justify-content:flex-start}
 .mobile-action-bar{position:fixed;left:0;right:0;bottom:0;z-index:1500;display:grid;grid-template-columns:72px 1fr;gap:8px;padding:8px;background:rgba(252,250,245,.97);border-top:1px solid rgba(24,39,36,.13);box-shadow:0 -8px 35px rgba(12,28,24,.12);backdrop-filter:blur(12px)}.mobile-action-bar .btn{min-height:52px}.mobile-call{display:grid;place-items:center;color:var(--navy);font-size:.61rem;font-weight:800;text-decoration:none}.mobile-call>span:first-child{font-size:1.1rem}.back-to-top{display:none}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}[data-reveal]{opacity:1;transform:none}}
@media print{.utility-bar,.site-header,.mobile-action-bar,.back-to-top,.final-cta,.site-footer{display:none!important}body{padding:0;background:#fff}.page-hero{padding:20px 0}.section,.page-shell{padding:30px 0}}


/*
  Sauce & Preserve Production — production hardening layer
  Version 4.0 | 07 August 2026
  Purpose: viewport-safe hero, accessible navigation, responsive grid, image delivery,
  motion polish, safe-area support and cross-browser production refinements.
*/
:root{
  --utility-height:34px;
  --header-height:78px;
  --mobile-header-height:70px;
  --mobile-action-height:68px;
  --shell-height:calc(var(--utility-height) + var(--header-height));
  --container:1360px;
  --gutter:clamp(20px,3vw,48px);
  --section-space:clamp(72px,7.4vw,116px);
  --section-space-compact:clamp(56px,5.6vw,88px);
  --focus:#d9b563;
  --easing:cubic-bezier(.2,.75,.25,1);
  color-scheme:light;
}
html{
  min-width:320px;
  scroll-padding-top:calc(var(--header-height) + 20px);
  hanging-punctuation:first last;
}
body{
  min-width:320px;
  overflow-x:clip;
  text-wrap:pretty;
}
main{overflow:clip}
h1,h2,h3,.section-intro{text-wrap:balance}
[id]{scroll-margin-top:calc(var(--header-height) + 22px)}
.container,.container.narrow,.container.wide{
  width:min(calc(100% - (var(--gutter) * 2)),var(--container));
}
.container.narrow{max-width:980px}.container.wide{max-width:1480px}

/* Robust focus treatment, including Windows high-contrast mode. */
:where(a,button,input,select,textarea,summary,[tabindex]):focus{outline:none}
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{
  outline:3px solid var(--focus);
  outline-offset:4px;
  box-shadow:0 0 0 2px var(--navy);
}
@media (forced-colors:active){
  :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid Highlight;box-shadow:none}
  .btn,.nav-toggle{border:1px solid ButtonText}
}

/* Header: sticky, optionally auto-hiding, with a dedicated mobile scrim. */
.utility-bar{min-height:var(--utility-height)}
.utility-inner{min-height:var(--utility-height)}
.site-header{
  min-height:var(--header-height);
  transform:translate3d(0,0,0);
  transition:transform .34s var(--easing),box-shadow .25s ease,background-color .25s ease;
  will-change:transform;
}
.site-header.is-hidden{transform:translate3d(0,calc(-100% - 2px),0)}
.site-header.is-scrolled{background:rgba(252,250,245,.975)}
.header-inner{min-height:var(--header-height)}
.brand-logo{width:248px;max-width:100%;height:auto}
.header-cta,.btn{position:relative;isolation:isolate;overflow:hidden}
.header-cta::after,.btn::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(110deg,transparent 24%,rgba(255,255,255,.22) 48%,transparent 72%);
  transform:translateX(-130%);
  transition:transform .65s var(--easing);
}
.header-cta:hover::after,.btn:hover::after{transform:translateX(130%)}
.btn [aria-hidden="true"],.header-cta [aria-hidden="true"]{transition:transform .22s var(--easing)}
.btn:hover [aria-hidden="true"],.header-cta:hover [aria-hidden="true"]{transform:translateX(3px)}
.nav-link,.nav-trigger{position:relative}
.nav-link::after{
  content:"";
  position:absolute;
  left:.72rem;
  right:.72rem;
  bottom:4px;
  height:2px;
  border-radius:2px;
  background:var(--coral);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .22s var(--easing);
}
.nav-link:hover::after,.nav-link[aria-current="page"]::after{transform:scaleX(1)}
.nav-link[aria-current="page"]{box-shadow:none}
.nav-panel{transform-origin:50% 0}
.nav-card{transition:background-color .18s ease,transform .18s var(--easing)}
.nav-card:hover{transform:translateY(-2px)}
.nav-scrim{display:none}

/* Viewport-safe homepage hero. The hero + page chrome fits common viewport heights. */
.home-hero{
  min-height:0;
  height:clamp(610px,calc(100svh - var(--shell-height) - 2px),860px);
  height:clamp(610px,calc(100dvh - var(--shell-height) - 2px),860px);
  display:grid;
  grid-template-rows:minmax(0,1fr) auto;
  justify-content:stretch;
  align-content:stretch;
  background:#0c211c;
}
.home-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:
    linear-gradient(90deg,rgba(6,23,18,.93) 0%,rgba(7,24,19,.76) 37%,rgba(8,25,20,.22) 66%,rgba(8,25,20,.12) 100%),
    linear-gradient(0deg,rgba(6,20,16,.68) 0%,transparent 44%);
  pointer-events:none;
}
.home-hero::after{height:30%;background:linear-gradient(transparent,rgba(5,18,14,.74))}
.home-hero-media{overflow:hidden}
.home-hero-media img{
  object-position:52% 48%;
  transform:translate3d(0,var(--hero-shift,0),0) scale(1.025);
  transition:transform .2s linear;
  will-change:transform;
}
.home-hero-texture{opacity:.15;mix-blend-mode:soft-light}
.home-hero-grid{
  align-self:center;
  grid-template-columns:minmax(0,1.18fr) minmax(320px,.58fr);
  gap:clamp(42px,6vw,94px);
  align-items:center;
  padding-top:clamp(24px,4.5vh,54px);
  padding-bottom:clamp(24px,4.5vh,54px);
}
.home-hero-copy{max-width:790px}
.home-hero h1{
  max-width:790px;
  margin:clamp(16px,2.6vh,26px) 0 clamp(16px,2.4vh,24px);
  font-size:clamp(3.65rem,min(6vw,9.2vh),6.55rem);
  line-height:.91;
  letter-spacing:-.048em;
}
.home-hero-copy>p{
  max-width:690px;
  font-size:clamp(.92rem,1.25vw,1.04rem);
  line-height:1.62;
}
.hero-actions{margin-top:clamp(20px,3.2vh,30px);gap:10px}
.hero-actions .btn{min-height:52px;padding:.84rem 1.2rem}
.hero-microcopy{margin-top:12px!important}
.decision-card{
  border-radius:16px;
  background:linear-gradient(155deg,rgba(11,35,28,.92),rgba(11,31,26,.82));
  box-shadow:0 28px 80px rgba(0,0,0,.23);
}
.decision-card-head{padding:20px 22px 16px}
.decision-card ol{padding:4px 22px}
.decision-card li{padding:14px 0}
.decision-card>a{padding:16px 22px}
.hero-trust{
  align-self:end;
  min-height:82px;
  background:rgba(6,24,18,.67);
}
.hero-trust>div{min-height:82px;padding:17px 21px}
.hero-trust strong{font-size:.72rem}
.hero-trust span{margin-top:4px;font-size:.64rem;line-height:1.38}
.hero-mobile-proof{display:none}

/* Short desktop viewports: preserve the full fold without clipping. */
@media (min-width:1025px) and (max-height:780px){
  .home-hero{height:calc(100svh - var(--shell-height) - 2px);height:calc(100dvh - var(--shell-height) - 2px);min-height:560px}
  .home-hero-grid{padding-top:20px;padding-bottom:20px;gap:40px}
  .home-hero h1{font-size:clamp(3.45rem,min(5.7vw,8.6vh),5.35rem);margin:15px 0 15px}
  .home-hero-copy>p{font-size:.9rem;line-height:1.5;max-width:650px}
  .hero-actions{margin-top:18px}.hero-actions .btn{min-height:47px;padding:.72rem 1rem;font-size:.78rem}
  .hero-microcopy{display:none}
  .decision-card-head{padding:15px 18px 12px}.decision-card-head p{font-size:.92rem}
  .decision-card ol{padding:2px 18px}.decision-card li{padding:10px 0}.decision-card small{font-size:.62rem}.decision-card>a{padding:13px 18px}
  .hero-trust{min-height:66px}.hero-trust>div{min-height:66px;padding:12px 18px}.hero-trust span{display:none}
}

/* Mobile/tablet proof block: hero remains concise while decision evidence is retained immediately below. */
.hero-mobile-proof{background:var(--navy);color:#fff}
.hero-mobile-proof .container{padding-top:28px;padding-bottom:30px}
.hero-mobile-proof-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:18px}
.hero-mobile-proof-head span{color:#e5c886;font-size:.62rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}
.hero-mobile-proof-head a{color:#fff;font-size:.72rem;font-weight:800;text-decoration:none}
.hero-mobile-decisions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid rgba(255,255,255,.14)}
.hero-mobile-decisions article{padding:17px;border-right:1px solid rgba(255,255,255,.13);border-bottom:1px solid rgba(255,255,255,.13)}
.hero-mobile-decisions article:nth-child(2n){border-right:0}
.hero-mobile-decisions article:nth-last-child(-n+2){border-bottom:0}
.hero-mobile-decisions small{display:block;color:#d7b66f;font-size:.6rem;font-weight:850}
.hero-mobile-decisions strong{display:block;margin-top:7px;color:#fff;font-size:.78rem}
.hero-mobile-decisions p{margin:5px 0 0;color:rgba(255,255,255,.58);font-size:.68rem;line-height:1.45}
.hero-mobile-trust{display:flex;gap:8px;overflow:auto;margin-top:12px;padding-bottom:4px;scroll-snap-type:x mandatory;scrollbar-width:none}
.hero-mobile-trust::-webkit-scrollbar{display:none}
.hero-mobile-trust span{flex:0 0 auto;scroll-snap-align:start;padding:8px 11px;border:1px solid rgba(255,255,255,.14);border-radius:999px;color:rgba(255,255,255,.75);font-size:.64rem;white-space:nowrap}

/* Grid, rhythm and component consistency. */
.section{padding:var(--section-space) 0}
.section.compact{padding:var(--section-space-compact) 0}
.section-intro{margin-bottom:clamp(34px,4.2vw,58px)}
.split-intro{grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(24px,3vw,48px);align-items:end}
.split-intro>div{grid-column:1/span 7}.split-intro>p{grid-column:9/-1}
.format-grid{gap:18px}
.format-card,.machine-card,.thermal-card,.card,.mini-card,.scale-card,.icon-tile,.next-card{
  border-radius:14px;
  box-shadow:0 10px 34px rgba(20,35,31,.07);
}
.format-card,.machine-card,.next-card{
  transition:transform .28s var(--easing),box-shadow .28s var(--easing),border-color .28s ease;
}
.format-card:hover,.machine-card:hover,.next-card:hover{
  transform:translateY(-5px);
  border-color:rgba(145,65,45,.28);
  box-shadow:0 26px 62px rgba(20,35,31,.13);
}
.format-image picture,.format-image img,.machine-card picture,.machine-card picture img{width:100%;height:100%}
.format-image img,.machine-card img{transition:transform .55s var(--easing),filter .3s ease}
.format-card:hover img{transform:scale(1.045)}
.machine-card:hover img{transform:scale(1.018)}
.thermal-card,.behaviour-points article,.evidence-card,.contact-form,.contact-panel,.tool-shell{border-radius:14px}
.section-pack-formats,.thermal-section,.stockpack-section{position:relative}
.home-page main>.section:nth-of-type(n+2){content-visibility:auto;contain-intrinsic-size:auto 850px}

/* Images: focal-point variables are written on picture/img wrappers by the build. */
picture{display:block}
picture>img{width:100%}
[data-focal]{overflow:hidden}
[data-focal] img{object-position:var(--focal-x,50%) var(--focal-y,50%)}
img{height:auto}
img[loading="lazy"]{content-visibility:auto}

/* Page heroes use the same disciplined width and visual treatment. */
.page-hero{padding:clamp(42px,5vw,72px) 0 clamp(56px,6.5vw,88px)}
.page-hero-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(28px,4vw,64px)}
.page-hero-copy{grid-column:1/span 7}.page-hero-visual{grid-column:9/-1;border-radius:14px}
.page-hero h1{font-size:clamp(3.2rem,min(5.5vw,8.5vh),5.9rem)}
.page-hero-visual picture,.page-hero-visual img{width:100%;height:100%}
.page-hero-visual img{min-height:390px;max-height:480px}
.article{font-size:1.02rem}.article p{max-width:72ch}
.article-figure{border-radius:14px}
.article-figure picture,.article-figure img{width:100%}

/* Accessible accordion animation without relying on fixed content heights. */
.faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s var(--easing)}
.faq-answer>*{overflow:hidden}
.faq-question[aria-expanded="true"]+.faq-answer{grid-template-rows:1fr}
.faq-question svg{transition:transform .25s var(--easing)}
.faq-question[aria-expanded="true"] svg{transform:rotate(45deg)}

/* Forms and controls. */
input,select,textarea{min-height:48px}
textarea{min-height:150px}
.form-control:hover,input:hover,select:hover,textarea:hover{border-color:#a9aaa3}
.form-control:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:0;box-shadow:0 0 0 4px rgba(197,165,106,.25);border-color:var(--navy)}
.form-status[role="status"]{min-height:1.4em}

/* Safe-area-aware mobile action bar. */
.mobile-action-bar{padding-bottom:max(8px,env(safe-area-inset-bottom))}

/* Navigation overlay at tablet/mobile sizes. */
@media (max-width:1024px){
  :root{--header-height:74px;--shell-height:calc(var(--utility-height) + var(--header-height))}
  .header-inner{min-height:var(--header-height)}
  .brand-logo{width:218px}
  .nav-toggle{display:grid;place-items:center;justify-self:end}
  .main-nav{
    position:fixed;
    z-index:1402;
    left:max(18px,env(safe-area-inset-left));
    right:max(18px,env(safe-area-inset-right));
    top:calc(var(--header-height) + 12px);
    display:block;
    max-height:calc(100dvh - var(--header-height) - 28px);
    padding:14px;
    overflow:auto;
    overscroll-behavior:contain;
    border:1px solid rgba(24,39,36,.13);
    border-radius:18px;
    background:rgba(255,255,255,.985);
    box-shadow:0 34px 110px rgba(4,18,14,.28);
    opacity:0;
    visibility:hidden;
    transform:translateY(-12px) scale(.985);
    transform-origin:top right;
    pointer-events:none;
    transition:opacity .22s ease,visibility .22s ease,transform .28s var(--easing);
  }
  .main-nav.open{opacity:1;visibility:visible;transform:none;pointer-events:auto}
  .nav-scrim{
    position:fixed;
    inset:0;
    z-index:1400;
    display:block;
    border:0;
    padding:0;
    background:rgba(5,20,16,.48);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    backdrop-filter:blur(4px);
    transition:opacity .22s ease,visibility .22s ease;
  }
  body.nav-open .nav-scrim{opacity:1;visibility:visible;pointer-events:auto}
  body.nav-open{overflow:hidden;touch-action:none}
  body.nav-open .site-header{transform:none!important;z-index:1403}
  .nav-link,.nav-trigger{min-height:48px}
  .nav-panel{display:none;opacity:1;visibility:visible;pointer-events:auto}
  .nav-trigger[aria-expanded="true"]+.nav-panel{display:block}
  .site-header.is-hidden{transform:translate3d(0,calc(-100% - 2px),0)}

  .home-hero{
    height:calc(100svh - var(--shell-height) - 2px);
    height:calc(100dvh - var(--shell-height) - 2px);
    min-height:610px;
    max-height:900px;
    grid-template-rows:1fr;
  }
  .home-hero-grid{grid-template-columns:1fr;align-items:center;padding-top:34px;padding-bottom:34px}
  .home-hero-copy{max-width:760px}
  .home-hero h1{font-size:clamp(3.6rem,min(8.2vw,8.4vh),5.7rem)}
  .decision-card,.hero-trust{display:none}
  .hero-mobile-proof{display:block}
  .split-intro{display:grid;grid-template-columns:1fr;gap:18px}
  .split-intro>div,.split-intro>p{grid-column:auto}
  .page-hero-grid{grid-template-columns:1fr}.page-hero-copy,.page-hero-visual{grid-column:auto}.page-hero-visual{max-width:760px}
}

@media (max-width:760px){
  :root{
    --utility-height:0px;
    --header-height:var(--mobile-header-height);
    --shell-height:var(--mobile-header-height);
    --gutter:14px;
    --section-space:clamp(64px,16vw,78px);
  }
  html{scroll-padding-top:calc(var(--mobile-header-height) + 12px)}
  body{padding-bottom:calc(var(--mobile-action-height) + env(safe-area-inset-bottom))}
  .utility-bar{display:none}
  .site-header{min-height:var(--mobile-header-height);top:0}
  .header-inner{min-height:var(--mobile-header-height);grid-template-columns:minmax(0,1fr) auto;gap:12px}
  .brand-logo{width:min(196px,63vw)}
  .nav-toggle{width:46px;height:46px}
  .main-nav{
    top:calc(var(--mobile-header-height) + 8px);
    left:max(10px,env(safe-area-inset-left));
    right:max(10px,env(safe-area-inset-right));
    max-height:calc(100dvh - var(--mobile-header-height) - 18px - env(safe-area-inset-bottom));
    border-radius:15px;
  }
  .nav-panel-grid{grid-template-columns:1fr}.nav-panel-footer{display:none}

  .home-hero{
    height:calc(100svh - var(--mobile-header-height) - var(--mobile-action-height) - env(safe-area-inset-bottom) - 2px);
    height:calc(100dvh - var(--mobile-header-height) - var(--mobile-action-height) - env(safe-area-inset-bottom) - 2px);
    min-height:520px;
    max-height:780px;
  }
  .home-hero::before{
    background:linear-gradient(180deg,rgba(6,22,17,.38) 0%,rgba(7,24,19,.64) 43%,rgba(6,21,17,.92) 100%);
  }
  .home-hero-media img{object-position:58% 50%;transform:scale(1.025)}
  .home-hero-grid{align-self:stretch;display:flex;align-items:center;padding-top:clamp(20px,4.3svh,42px);padding-bottom:clamp(20px,4.3svh,42px)}
  .home-hero-copy{width:100%}
  .premium-eyebrow{font-size:.56rem;letter-spacing:.13em}.premium-eyebrow>span{width:24px}
  .home-hero h1{
    margin:clamp(13px,2.5svh,22px) 0 clamp(13px,2.3svh,20px);
    font-size:clamp(2.78rem,min(13.2vw,8.25vh),4.05rem);
    line-height:.94;
  }
  .home-hero-copy>p{font-size:clamp(.84rem,3.7vw,.94rem);line-height:1.52;max-width:36rem}
  .hero-actions{display:grid;margin-top:clamp(16px,2.8svh,24px);gap:9px}
  .hero-actions .btn{width:100%;min-height:48px;padding:.72rem .9rem;font-size:.8rem}
  .hero-microcopy{margin-top:9px!important;font-size:.68rem!important;line-height:1.35!important}
  .hero-mobile-proof .container{padding-top:24px;padding-bottom:26px}
  .hero-mobile-proof-head{align-items:center;margin-bottom:14px}
  .hero-mobile-proof-head a{font-size:.66rem}
  .hero-mobile-decisions{grid-template-columns:1fr 1fr}
  .hero-mobile-decisions article{padding:14px 12px}
  .hero-mobile-decisions p{display:none}

  .format-grid{gap:14px}.format-card{border-radius:12px}.format-content{padding:21px}
  .format-image{aspect-ratio:1.45/1}
  .machine-card{border-radius:12px}.machine-card img{height:220px}
  .page-hero{padding:30px 0 54px}.page-hero h1{font-size:clamp(2.8rem,13.5vw,4.1rem)}
  .page-hero-visual{border-radius:12px}.page-hero-visual img{min-height:260px;max-height:330px}
  .mobile-action-bar{
    min-height:var(--mobile-action-height);
    padding:8px max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));
  }
}

@media (max-width:430px){
  .hero-mobile-proof-head{display:grid;gap:7px}
  .hero-mobile-decisions{grid-template-columns:1fr 1fr}
  .hero-mobile-decisions strong{font-size:.72rem}
}

/* Very short phones: keep the full hero and both conversion actions visible. */
@media (max-width:760px) and (max-height:730px){
  .home-hero{min-height:0}
  .home-hero-grid{padding-top:14px;padding-bottom:14px}
  .premium-eyebrow{font-size:.52rem}.home-hero h1{font-size:clamp(2.45rem,min(12.1vw,7.25vh),3.18rem);margin:10px 0 10px}
  .home-hero-copy>p{font-size:.79rem;line-height:1.42;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
  .hero-actions{margin-top:12px;gap:7px}.hero-actions .btn{min-height:43px;padding:.58rem .75rem;font-size:.74rem}
  .hero-microcopy{display:none}
}

@media (max-width:360px){
  .brand-logo{width:174px}.home-hero h1{font-size:2.55rem}.home-hero-copy>p{font-size:.79rem}
  .hero-mobile-decisions{grid-template-columns:1fr}.hero-mobile-decisions article{border-right:0;border-bottom:1px solid rgba(255,255,255,.13)!important}.hero-mobile-decisions article:last-child{border-bottom:0!important}
}

@media (hover:none){
  .format-card:hover,.machine-card:hover,.next-card:hover,.header-cta:hover,.btn:hover{transform:none}
  .format-card:hover img,.machine-card:hover img{transform:none}
}

@media (prefers-reduced-motion:reduce){
  .site-header,.main-nav,.nav-scrim,.home-hero-media img,.faq-answer,.faq-question svg{transition:none!important}
  .home-hero-media img{transform:none!important}
  .header-cta::after,.btn::after{display:none}
}

@media print{
  .hero-mobile-proof,.nav-scrim{display:none!important}
  .home-page main>.section{content-visibility:visible;contain:none}
}
