:root {
  --ink: #202a30;
  --muted: #526068;
  --paper: #f8f7f2;
  --line: #cfd3ce;
  --accent: #a93c13;
  --warm: #eeede5;
  --green: #245e54;
  --white: #fff;
  font-family: Arial, Helvetica, sans-serif;
  color: var(--ink);
  background: var(--paper);
  font-size: 17px;
  line-height: 1.65;
}
* {
  box-sizing: border-box;
}
body {
  margin: 0;
}
a {
  color: inherit;
  text-underline-offset: 4px;
}
a:hover {
  color: var(--accent);
}
button,
input,
select,
textarea {
  font: inherit;
}
button,
a,
input,
select,
textarea,
summary {
  touch-action: manipulation;
}
button {
  cursor: pointer;
}
p {
  margin: 0 0 1.2rem;
  overflow-wrap: anywhere;
}
h1,
h2,
h3 {
  line-height: 1.12;
  letter-spacing: -0.035em;
  margin: 0 0 1.2rem;
}
h1 {
  font-size: clamp(2.6rem, 5.4vw, 5.4rem);
  font-weight: 600;
}
h2 {
  font-size: clamp(1.7rem, 3vw, 2.8rem);
  font-weight: 500;
}
h3 {
  font-size: 1.4rem;
  font-weight: 500;
}
img {
  display: block;
  max-width: 100%;
  height: auto;
}
figure {
  margin: 0;
}
figcaption {
  font-size: 0.68rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  padding: 0.8rem 0;
  color: var(--muted);
}
.skip {
  position: absolute;
  top: -100px;
  left: 1rem;
  z-index: 10;
  background: white;
  padding: 1rem;
}
.skip:focus {
  top: 1rem;
}
:focus-visible {
  outline: 3px solid #ce6a2c;
  outline-offset: 4px;
}
header {
  border-bottom: 1px solid var(--line);
  background: var(--paper);
}
.header-inner,
.page-body,
.page-intro,
.footer-inner,
.footer-base {
  max-width: 1320px;
  margin: auto;
  padding-left: 48px;
  padding-right: 48px;
}
.header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  min-height: 108px;
}
.brand {
  display: flex;
  align-items: center;
  gap: 12px;
  text-decoration: none;
  white-space: nowrap;
  line-height: 1.15;
  font-weight: 700;
  letter-spacing: 0.04em;
}
.brand small {
  display: block;
  font-size: 0.52rem;
  letter-spacing: 0.12em;
  margin-top: 7px;
}
.brand-mark {
  font-size: 2.5rem;
  color: var(--accent);
  border: 1px solid var(--accent);
  line-height: 1.1;
  padding: 0 8px;
}
nav {
  display: flex;
  flex-wrap: wrap;
  gap: 22px;
  font-size: 0.8rem;
}
nav a {
  text-decoration: none;
}
nav a:last-child {
  font-weight: 700;
  color: var(--accent);
}
.hero {
  display: grid;
  grid-template-columns: 1.25fr 1fr;
  gap: 3.5rem;
  padding: 70px 0 50px;
  align-items: center;
}
.hero figure {
  background: var(--ink);
  padding: 25px 20px 12px;
}
.hero figure img {
  height: 530px;
  width: 100%;
  object-fit: contain;
}
.hero figcaption {
  color: #d4dbd8;
  font-size: 0.59rem;
}
.equipment-gallery {
  padding: 58px 0;
  border-block: 1px solid var(--line);
}
.gallery-heading {
  max-width: 880px;
  margin-bottom: 32px;
}
.equipment-gallery-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}
.equipment-gallery-grid figure {
  background: var(--ink);
  border: 1px solid #59666b;
}
.equipment-gallery-grid img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
.equipment-gallery-grid figcaption {
  display: grid;
  gap: 8px;
  min-height: 120px;
  padding: 18px 20px;
  color: #cbd3d0;
  text-transform: none;
  letter-spacing: 0;
  font-size: 0.76rem;
}
.equipment-gallery-grid figcaption strong {
  color: #fff;
  font-size: 0.95rem;
}
.gallery-note {
  max-width: 900px;
  margin-top: 20px;
  color: var(--muted);
  font-size: 0.76rem;
}
.hero .kicker {
  margin-bottom: 2rem;
}
.kicker {
  display: block;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  color: var(--accent);
  margin-bottom: 1rem;
}
.intro {
  font-size: 1.25rem;
  line-height: 1.5;
  max-width: 740px;
  color: var(--muted);
}
.lead {
  font-size: 1.16rem;
  max-width: 760px;
}
.actions {
  display: flex;
  align-items: center;
  gap: 1.4rem;
  flex-wrap: wrap;
  margin-top: 2rem;
}
.button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  background: var(--accent);
  color: white;
  padding: 0.85rem 1.2rem;
  border: 1px solid var(--accent);
  text-decoration: none;
  font-weight: 600;
  font-size: 0.88rem;
  line-height: 1.4;
  min-height: 48px;
  max-width: 100%;
  text-align: center;
}
.button:hover {
  background: #852d0d;
  color: white;
}
.button:disabled {
  background: #566269;
  border-color: #566269;
  cursor: not-allowed;
}
.text-link {
  font-weight: 600;
  font-size: 0.9rem;
}
.hero-foot {
  border-top: 1px solid var(--line);
  padding-top: 1rem;
  margin-top: 3rem;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  font-size: 0.65rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.duty-strip {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.duty-strip > div {
  padding: 30px 26px;
}
.duty-strip > div + div {
  border-left: 1px solid var(--line);
}
.duty-strip b {
  color: var(--accent);
  font-size: 0.75rem;
}
.duty-strip h2 {
  font-size: 1.4rem;
  margin-top: 15px;
}
.duty-strip p,
.duty-strip a {
  font-size: 0.84rem;
}
.section {
  padding: 65px 0;
  border-bottom: 1px solid var(--line);
}
.warm {
  background: var(--warm);
  padding: 40px;
  margin: 30px 0;
}
.cards,
.equipment-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  margin: 30px 0;
}
.card {
  padding: 30px;
  background: white;
  border: 1px solid var(--line);
  text-decoration: none;
  display: flex;
  flex-direction: column;
}
.card p {
  font-size: 0.88rem;
  color: var(--muted);
  flex: 1;
}
.card > span:last-child {
  font-size: 0.8rem;
  font-weight: 600;
}
.equipment-grid article {
  padding-bottom: 25px;
  border-bottom: 1px solid var(--line);
}
.equipment-grid article > a:first-child {
  text-decoration: none;
}
.equipment-grid img {
  background: var(--ink);
  margin-bottom: 24px;
  width: 100%;
}
.equipment-grid p {
  font-size: 0.9rem;
}
.equipment-grid .kicker {
  font-size: 0.6rem;
}
.equipment-grid article > a:last-child {
  font-size: 0.8rem;
}
.film-explorer {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 55px;
  align-items: start;
}
.film-explorer figure {
  background: var(--ink);
  padding: 24px;
}
.film-explorer figcaption {
  color: #e0e5df;
}
.film-step {
  padding: 20px 0;
  border-bottom: 1px solid var(--line);
}
.film-step button {
  background: transparent;
  border: 0;
  padding: 8px 0;
  text-align: left;
  font-weight: 600;
  font-size: 1.1rem;
  width: 100%;
  color: var(--ink);
}
.film-step button span {
  color: var(--accent);
  font-size: 0.75rem;
  margin-right: 15px;
}
.film-step button[aria-pressed="true"] {
  color: var(--accent);
}
.film-step p {
  font-size: 0.9rem;
  margin: 8px 0;
}
.film-step a {
  font-size: 0.8rem;
}
.panel {
  background: white;
  border: 1px solid var(--line);
  padding: 30px;
  min-width: 0;
}
.fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.fields > label {
  min-width: 0;
}
label {
  display: block;
  font-size: 0.78rem;
  font-weight: 600;
  margin-bottom: 18px;
}
input,
select,
textarea {
  display: block;
  min-width: 0;
  width: 100%;
  border: 1px solid #7c8989;
  border-radius: 0;
  background: #fff;
  color: var(--ink);
  padding: 11px;
  margin-top: 7px;
  font-size: 0.86rem;
  line-height: 1.4;
}
textarea {
  resize: vertical;
}
input[type="checkbox"] {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  margin-top: 3px;
}
.consent {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  margin-top: 25px;
  font-weight: 400;
}
.small {
  font-size: 0.75rem;
  color: var(--muted);
}
.panel .small {
  margin-top: 18px;
}
.results {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin: 24px 0;
}
.results > div {
  background: var(--warm);
  padding: 15px 10px;
  min-width: 0;
}
.results b {
  display: block;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.2;
  overflow-wrap: anywhere;
}
.results span {
  font-size: 0.68rem;
  line-height: 1.3;
  display: block;
  margin-top: 10px;
}
.two-col {
  display: grid;
  grid-template-columns: 1fr 1.35fr;
  gap: 50px;
}
.note {
  border-left: 4px solid var(--accent);
  padding: 20px 26px;
  margin: 50px 0;
}
.note p {
  font-size: 0.82rem;
  max-width: 900px;
  margin: 12px 0 0;
}
.page-intro {
  padding-top: 50px;
  padding-bottom: 45px;
}
.page-intro h1 {
  max-width: 1050px;
  font-size: clamp(2.4rem, 4.5vw, 4.2rem);
}
.breadcrumb {
  font-size: 0.72rem;
  margin-bottom: 35px;
  color: var(--muted);
}
.page-body {
  padding-bottom: 65px;
}
.article-layout {
  display: grid;
  grid-template-columns: 1fr 300px;
  gap: 90px;
}
.article-section {
  padding: 30px 0;
  border-top: 1px solid var(--line);
}
.article-section p {
  max-width: 760px;
}
.article-section h2 {
  font-size: 1.9rem;
}
.article-nav {
  background: var(--warm);
  padding: 28px;
  align-self: start;
  margin-top: 30px;
}
.article-nav h2 {
  font-size: 1.5rem;
}
.article-nav p {
  font-size: 0.85rem;
}
.article-nav .button {
  margin: 0 0 20px;
}
.table-wrap {
  overflow: auto;
  margin: 24px 0;
}
table {
  border-collapse: collapse;
  width: 100%;
  min-width: 560px;
  text-align: left;
  font-size: 0.9rem;
}
th,
td {
  border-bottom: 1px solid var(--line);
  padding: 18px 20px;
  vertical-align: top;
}
thead {
  background: var(--ink);
  color: white;
}
tbody th {
  font-weight: 600;
  width: 26%;
}
.equipment-lead {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  align-items: center;
}
.equipment-lead figure img {
  background: var(--ink);
  width: 100%;
}
.contact-grid {
  display: grid;
  grid-template-columns: 1fr 1.5fr;
  gap: 60px;
}
details {
  border-top: 1px solid var(--line);
  padding: 18px 0;
}
summary {
  cursor: pointer;
  font-size: 0.95rem;
  font-weight: 600;
  margin-bottom: 15px;
}
#form-status {
  font-size: 0.84rem;
  margin-top: 15px;
}
.trap,
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
}
footer {
  background: var(--ink);
  color: #f8f7f2;
}
.footer-inner {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr;
  gap: 60px;
  padding-top: 55px;
  padding-bottom: 40px;
}
.footer-inner > div > strong {
  font-size: 1.4rem;
}
.footer-inner p {
  font-size: 0.85rem;
  margin-top: 20px;
  max-width: 450px;
}
.footer-inner h2 {
  font-size: 1rem;
}
.footer-inner a {
  display: block;
  text-decoration: none;
  font-size: 0.8rem;
  margin: 12px 0;
}
.footer-inner .small {
  color: #c6cec9;
  font-size: 0.72rem;
}
.footer-base {
  border-top: 1px solid #596568;
  padding-top: 20px;
  padding-bottom: 25px;
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: space-between;
  font-size: 0.7rem;
  overflow-wrap: anywhere;
}
.error {
  color: #a22313;
}
.reference-list {
  padding-left: 22px;
}
.reference-list li {
  margin-bottom: 28px;
}
#receipt-notice {
  background: #f2ede1;
  border: 1px solid #8c7248;
  padding: 16px;
  font-size: 0.85rem;
  overflow-wrap: anywhere;
}
@media (max-width: 1000px) {
  .equipment-gallery-grid {
    grid-template-columns: 1fr 1fr;
  }
  .header-inner {
    align-items: flex-start;
    padding-top: 22px;
    padding-bottom: 22px;
    gap: 25px;
  }
  nav {
    gap: 12px;
  }
  .hero {
    gap: 28px;
  }
  .hero figure img {
    height: 480px;
  }
  .cards,
  .equipment-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .article-layout {
    gap: 35px;
    grid-template-columns: 1fr 260px;
  }
  .contact-grid {
    grid-template-columns: 1fr 1.4fr;
    gap: 25px;
  }
  .film-explorer {
    gap: 25px;
  }
  .two-col {
    gap: 25px;
  }
  .footer-inner {
    gap: 30px;
  }
}
@media (max-width: 700px) {
  .equipment-gallery-grid {
    grid-template-columns: 1fr;
  }
  :root {
    font-size: 16px;
  }
  .header-inner,
  .page-body,
  .page-intro,
  .footer-inner,
  .footer-base {
    padding-left: 22px;
    padding-right: 22px;
  }
  .header-inner {
    display: block;
    min-height: 0;
  }
  .brand {
    font-size: 0.85rem;
  }
  .brand-mark {
    font-size: 2rem;
  }
  nav {
    margin-top: 23px;
    gap: 12px 18px;
    font-size: 0.73rem;
  }
  .hero {
    grid-template-columns: 1fr;
    padding-top: 40px;
    gap: 30px;
  }
  .hero figure img {
    height: 440px;
  }
  .hero .kicker {
    margin-bottom: 23px;
  }
  .hero h1 {
    font-size: 2.9rem;
  }
  .hero-foot {
    margin-top: 28px;
  }
  .duty-strip {
    grid-template-columns: 1fr;
  }
  .duty-strip > div {
    padding: 24px 0;
  }
  .duty-strip > div + div {
    border-left: 0;
    border-top: 1px solid var(--line);
  }
  .duty-strip h2 {
    display: inline-block;
    margin: 0 0 12px 14px;
  }
  .section {
    padding: 40px 0;
  }
  .warm {
    padding: 25px 18px;
  }
  .cards,
  .equipment-grid,
  .film-explorer,
  .two-col,
  .equipment-lead,
  .contact-grid,
  .article-layout {
    grid-template-columns: 1fr;
    gap: 25px;
  }
  .cards,
  .equipment-grid {
    margin-top: 25px;
  }
  .card {
    padding: 24px;
  }
  .film-explorer figure {
    padding: 12px;
  }
  .film-explorer img {
    max-height: 550px;
    width: 100%;
    object-fit: contain;
  }
  .panel {
    padding: 22px 18px;
  }
  .fields {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .results {
    grid-template-columns: 1fr;
  }
  .results > div {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 15px;
  }
  .results span {
    margin: 0;
  }
  .page-intro {
    padding-top: 30px;
    padding-bottom: 25px;
  }
  .page-intro h1 {
    font-size: 2.5rem;
  }
  .breadcrumb {
    margin-bottom: 25px;
  }
  .article-nav {
    margin-top: 0;
  }
  .article-section h2 {
    font-size: 1.65rem;
  }
  .footer-inner {
    grid-template-columns: 1fr 1fr;
    gap: 25px;
  }
  .footer-inner > div:first-child {
    grid-column: 1/-1;
  }
  .footer-base {
    display: block;
  }
  .footer-base span {
    display: block;
    margin-top: 15px;
  }
  .note {
    padding: 18px;
    margin: 30px 0;
  }
  .hero-foot {
    display: block;
  }
  .hero-foot span {
    display: block;
    margin-top: 7px;
  }
}
@media (prefers-reduced-motion: no-preference) {
  a,
  button {
    transition:
      background-color 0.15s,
      color 0.15s;
  }
}


:root{--ink:#10283c;--muted:#506577;--paper:#fff;--line:#dce5ec;--accent:#b95414;--warm:#eef4f8;--green:#126563;font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.65;background:#fff}
body{background:#fff;color:var(--ink)}a:focus-visible,summary:focus-visible,button:focus-visible{outline:3px solid #cf6c2a;outline-offset:5px}h1,h2,h3{letter-spacing:-.035em;line-height:1.13;font-weight:650}h1{font-size:clamp(2.2rem,4.5vw,4.1rem)}h2{font-size:clamp(1.6rem,2.6vw,2.5rem)}h3{font-size:1.3rem}header{background:white;border-bottom:1px solid var(--line);position:relative;z-index:20}.header-inner{max-width:1320px;margin:auto;min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 36px}.brand{text-decoration:none;flex-shrink:0;font-size:19px;line-height:1.2;letter-spacing:.06em}.brand small{display:block;margin-top:6px;font-size:10px;letter-spacing:.18em}.brand-mark{color:var(--accent);font-size:43px}#main-nav{display:flex;gap:24px;align-items:center;font-size:14px;font-weight:600}#main-nav>a{text-decoration:none;white-space:nowrap}.nav-group{position:relative;margin:0;padding:0;border:none}.nav-group>summary{display:flex;gap:10px;align-items:center;list-style:none;cursor:pointer;padding:14px 0;white-space:nowrap}.nav-group>summary::-webkit-details-marker{display:none}.nav-group[open]>summary{color:var(--accent)}.nav-panel{position:absolute;top:100%;left:-18px;min-width:280px;max-width:360px;padding:12px;background:white;box-shadow:0 16px 45px #10283c24;border:1px solid var(--line);border-top:3px solid var(--accent)}.nav-panel a{display:block;padding:10px 12px;line-height:1.45;text-decoration:none;white-space:normal}.nav-panel a:hover{background:#edf3f7}.nav-enquiry{background:var(--ink);color:white;padding:12px 16px}.nav-enquiry:hover{background:var(--accent);color:white}.nav-toggle{display:none;background:none;border:1px solid var(--line);padding:8px 12px;color:var(--ink)}
main{max-width:1320px;margin:auto}.page-body{padding:0 36px}.page-intro{padding:48px 36px 42px;background:#eff4f7;border-bottom:1px solid var(--line);margin-bottom:40px}.page-intro h1{max-width:980px}.breadcrumb{font-size:13px;color:var(--muted);margin-bottom:24px}.intro{max-width:720px;font-size:19px;color:var(--muted)}.hero{display:grid;grid-template-columns:1.15fr .85fr;gap:36px;align-items:center;padding:48px 44px;background:var(--ink);color:white;min-height:630px;margin:0 -36px}.hero .intro{color:#c4d4de;font-size:19px;max-width:560px}.hero h1{font-size:clamp(2.4rem,4.5vw,4.35rem);max-width:650px;margin:25px 0}.hero h1 span{display:block;font-size:.72em;color:#a9c0ce;margin-top:18px;letter-spacing:-.04em}.kicker{font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--accent)}.hero .kicker{color:#f2b273}.hero-drawing{border:1px solid #3f5365;background:#202a30;overflow:hidden}.hero-drawing img{width:100%;height:465px;object-fit:contain}.hero-drawing figcaption{padding:12px 16px;font-size:11px;color:#ccd9e2}.drawing-label{display:flex;justify-content:space-between;gap:10px;font-size:9px;letter-spacing:.1em;padding:14px 16px;border-bottom:1px solid #445361;color:#a8bfcb}.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;border:1px solid var(--accent);background:var(--accent);color:white;padding:14px 20px;text-decoration:none;font-size:14px;font-weight:700;line-height:1.5;min-height:49px;border-radius:0}.button:hover{background:#8f3e0a;color:white}.button-outline{background:transparent;border-color:#698294;color:white}.button-outline:hover{background:#294456}.actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center}.hero-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:50px;border-top:1px solid #385064;padding-top:22px}.hero-facts div{display:flex;flex-direction:column;gap:8px;font-size:12px;color:#cfdae2}.hero-facts b{color:#efac6c;font-size:11px;letter-spacing:.1em}.intro-band{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;padding:50px 0;border-bottom:1px solid var(--line)}.intro-band>p{font-size:28px;font-weight:500;line-height:1.3}.intro-band strong{color:var(--accent)}.intro-band div p{max-width:650px;color:var(--muted)}.text-link{display:inline-block;text-decoration:none;border-bottom:1px solid var(--accent);color:var(--accent);font-size:14px;font-weight:650;padding:4px 0}.section{padding:60px 0;border-bottom:1px solid var(--line);margin:0}.section-heading{max-width:840px}.lead{font-size:18px;max-width:920px;color:var(--muted)}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:32px}.product-card{border:1px solid var(--line);background:white}.product-card>a{display:block;text-decoration:none}.product-image{position:relative;overflow:hidden;background:#eef2f5}.product-image img{width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .25s ease}.product-card:hover img{transform:scale(1.035)}.product-image>span{position:absolute;top:12px;left:12px;background:var(--ink);color:white;padding:7px 10px;font-size:11px;letter-spacing:.1em}.product-copy{padding:24px}.product-copy .kicker{font-size:10px;letter-spacing:.1em}.product-copy h3{margin-top:12px;min-height:3em}.product-copy p{font-size:14px;line-height:1.65;color:var(--muted)}.card-link{display:flex;justify-content:space-between;gap:15px;font-size:13px;font-weight:600;color:var(--accent);border-top:1px solid var(--line);padding-top:18px}.image-note{font-size:12px;color:var(--muted);margin-top:16px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:30px 0}.card{padding:30px 26px;border:1px solid var(--line);background:#f7fafb;text-decoration:none}.card h3{margin:15px 0}.card p{font-size:15px;color:var(--muted)}.card>span:last-child{font-size:13px;color:var(--accent);font-weight:600}.equipment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:32px 0}.equipment-grid article{border:none;border-bottom:1px solid var(--line);padding:0 0 20px}.equipment-grid h3{margin:16px 0 12px}.equipment-grid p{font-size:14px;color:var(--muted)}.equipment-grid article>a{font-size:14px;text-decoration:none}.equipment-grid img{width:100%;aspect-ratio:600/380;object-fit:contain}.equipment-grid .kicker{display:block;margin-top:16px}.two-col{display:grid;grid-template-columns:1fr 1.1fr;gap:40px;align-items:start}.muted-section{background:#f2f6f8;margin:0 -36px;padding:60px 36px}.panel{padding:28px;background:#fff;border:1px solid var(--line);box-shadow:0 10px 30px #10283c06}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.fields label,label{font-size:13px;font-weight:600}input,select,textarea{font-size:16px;background:white;color:var(--ink);border:1px solid #b8c7d2;width:100%;padding:12px;border-radius:0}.results{gap:10px}.results b{font-size:25px}.small{font-size:13px;color:var(--muted)}.proposal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin:34px 0}.proposal-grid article{border-left:2px solid var(--accent);padding-left:24px}.proposal-grid span{font-size:10px;letter-spacing:.1em;color:var(--muted)}.proposal-grid h3{margin:15px 0}.proposal-grid p{font-size:15px;color:var(--muted)}.scope-cta{display:flex;align-items:center;justify-content:space-between;gap:45px;padding:46px;background:var(--ink);color:white;margin:54px 0}.scope-cta>div{max-width:680px}.scope-cta h2{margin:15px 0}.scope-cta p{color:#c1d0da;font-size:16px;margin:0}.scope-cta .kicker{color:#efae76}.scope-cta .button{flex-shrink:0}.product-detail{display:grid;grid-template-columns:1.1fr 1fr;gap:44px;align-items:center}.product-detail img{width:100%;height:auto}.product-detail figcaption{font-size:11px;color:var(--muted);padding-top:12px}.product-detail .kicker{display:block;margin-bottom:18px}.product-detail h2{font-size:26px}.product-detail .small{margin-top:18px}.compare-links{display:flex;gap:30px;font-size:14px;color:var(--accent);flex-wrap:wrap}.spec-list{list-style:none;padding:0;counter-reset:item;display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:28px 0}.spec-list li{display:flex;align-items:baseline;gap:18px;padding:16px;background:#f1f5f8}.spec-list li:before{counter-increment:item;content:counter(item,decimal-leading-zero);color:var(--accent);font-size:12px;font-weight:700}.faq{border:1px solid var(--line);padding:20px}.faq summary{font-weight:650;cursor:pointer}.faq p{margin:18px 0 0;color:var(--muted)}.table-wrap{overflow:auto;border:1px solid var(--line);margin:24px 0}table{font-size:14px;border-collapse:collapse;width:100%;min-width:570px}th,td{padding:18px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}thead{background:var(--ink);color:white}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:60px}.article-section{padding:18px 0 30px;border-bottom:1px solid var(--line);margin-bottom:25px}.article-section h2{font-size:28px;margin-top:15px}.article-section p{font-size:17px;color:var(--muted)}.article-nav{background:#eef4f8;padding:26px;position:sticky;top:24px;align-self:start}.article-nav h2{font-size:23px;margin-top:15px}.article-nav .button{width:100%;padding:14px 8px}.article-nav p{font-size:14px;margin-top:20px}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:54px}.contact-grid form details{padding:18px 0;border-top:1px solid var(--line)}.contact-grid form details summary{cursor:pointer;margin-bottom:18px}.consent{display:flex;gap:12px;align-items:flex-start;margin:20px 0;font-size:13px}.consent input{width:18px;flex-shrink:0;margin-top:6px}.note{background:#eef4f8;border:none;padding:24px;margin:35px 0;font-size:13px}footer{background:#0c2031;color:#d7e2ea;padding:50px 36px 20px;margin-top:0}.footer-inner,.footer-base{max-width:1248px;margin:auto}.footer-inner{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:70px}.footer-inner h2{font-size:16px;color:white;letter-spacing:0}.footer-inner a{display:block;text-decoration:none;font-size:13px;margin:10px 0}.footer-inner p{font-size:14px;color:#a7bdcd}.footer-inner .small{font-size:12px;color:#a7bdcd}.footer-base{display:flex;justify-content:space-between;border-top:1px solid #294253;padding-top:24px;margin-top:35px;font-size:12px}.sr-only,.trap{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1100px){.header-inner{padding:16px 24px}#main-nav{gap:15px;font-size:13px}.brand{font-size:16px}.brand-mark{font-size:36px}.hero{gap:22px;padding:36px 30px}.hero-drawing img{height:420px}.hero h1{font-size:3.25rem}.page-body{padding:0 24px}.hero,.muted-section{margin-left:-24px;margin-right:-24px}.scope-cta{padding:32px}.product-grid{gap:18px}.product-copy{padding:20px}.product-copy h3{font-size:21px}}
@media(max-width:900px){.header-inner{min-height:82px;flex-wrap:wrap;gap:10px}.nav-toggle{display:block}#main-nav{width:100%;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:12px 0}.js #main-nav{display:none}.js #main-nav.is-open{display:flex}.nav-group>summary{justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--line)}.nav-panel{position:static;max-width:none;min-width:0;border:none;background:#f1f6f8;box-shadow:none;padding:8px}.nav-panel a{font-size:14px}.nav-enquiry{text-align:center;margin-top:14px}#main-nav>a:not(.nav-enquiry){padding:14px 0}.hero{grid-template-columns:1fr 1fr;min-height:0}.hero h1{font-size:2.7rem}.hero .intro{font-size:17px}.hero-drawing img{height:390px}.hero-facts{gap:12px;margin-top:28px}.intro-band{gap:30px}.product-grid{grid-template-columns:1fr 1fr}.cards,.equipment-grid{grid-template-columns:1fr 1fr}.two-col,.contact-grid{grid-template-columns:1fr;gap:28px}.product-detail{gap:28px}.article-layout{grid-template-columns:minmax(0,1fr) 250px;gap:28px}.scope-cta{align-items:flex-start;flex-direction:column;gap:22px}.proposal-grid{gap:22px}.footer-inner{gap:26px}}
@media(max-width:600px){:root{font-size:16px}.header-inner{padding:14px 20px}.brand{font-size:16px}.brand small{font-size:9px}.page-body{padding:0 20px}.page-intro{padding:32px 20px;margin-bottom:28px}.page-intro h1{font-size:2rem}.page-intro .intro{font-size:17px}.hero{grid-template-columns:1fr;padding:36px 20px;margin:0 -20px;gap:32px}.hero h1{font-size:2.65rem;line-height:1.1}.hero h1 span{font-size:.7em}.hero .intro{font-size:17px}.hero .actions .button{width:100%}.hero-drawing img{height:350px}.hero-facts{margin-top:30px}.hero-facts span{font-size:11px}.hero-facts{gap:12px}.drawing-label{font-size:8px}.intro-band{grid-template-columns:1fr;gap:8px;padding:32px 0}.intro-band>p{font-size:25px}.section{padding:36px 0}.product-grid,.cards,.equipment-grid,.proposal-grid,.product-detail,.spec-list,.article-layout,.footer-inner{grid-template-columns:1fr}.product-copy h3{min-height:0;font-size:24px}.product-copy{padding:24px}.product-copy p{font-size:15px}.cards,.equipment-grid{gap:20px}.card{padding:24px}.equipment-grid img{max-height:270px}.muted-section{margin:0 -20px;padding:36px 20px}.panel{padding:20px}.fields{gap:16px;grid-template-columns:1fr}.results{grid-template-columns:1fr}.results>div{padding:14px}.proposal-grid{gap:20px}.scope-cta{padding:26px;margin:36px 0}.scope-cta .button{width:100%}.article-nav{position:static}.article-section h2{font-size:25px}.footer-inner{gap:30px}footer{padding:36px 20px 20px}.footer-base{flex-direction:column;gap:12px}.compare-links{gap:16px}.contact-grid{gap:25px}.film-explorer{grid-template-columns:1fr}.film-explorer img{max-height:450px;object-fit:contain}.equipment-lead{grid-template-columns:1fr}.hero-foot{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

#main-nav .nav-enquiry{color:white}.hero .hero-drawing{padding:0}.hero .hero-drawing img{height:465px}.nav-group>summary{margin:0;font-size:14px}.page-intro h1{font-size:clamp(2.2rem,4.5vw,4.1rem)}
@media(max-width:600px){.hero .hero-drawing img{height:350px}.page-intro h1{font-size:2rem}}
