:root {
  --brand-red: #d10000;
  --brand-blue: #13699c;
  --ink: #17232c;
  --muted: #59646c;
  --paper: #f4f5f5;
  --line: #e0e4e6;
  --bs-primary: #d10000;
  --bs-primary-rgb: 209, 0, 0;
  --bs-link-color: #13699c;
  --bs-link-color-rgb: 19, 105, 156;
  --bs-link-hover-color: #0c4d74;
  --bs-link-hover-color-rgb: 12, 77, 116;
  --bs-body-color: #17232c;
  --bs-body-font-family: "Segoe UI", Arial, sans-serif;
}

html { scroll-behavior: smooth; scroll-padding-top: 136px; }
body { -webkit-font-smoothing: antialiased; }
a { text-underline-offset: 4px; }
img { max-width: 100%; }
h1, h2, h3 { font-weight: 750; letter-spacing: -.045em; line-height: 1.12; }
h2 { font-size: clamp(2rem, 3.2vw, 2.85rem); margin-bottom: 1.5rem; }
p { line-height: 1.75; }
:focus-visible { outline: 3px solid var(--brand-blue); outline-offset: 5px; }
.btn:focus-visible { outline: 3px solid currentColor; outline-offset: 4px; }
.skip-link { position: fixed; top: -100px; left: 16px; z-index: 1100; background: white; color: var(--ink); padding: 12px 20px; }
.skip-link:focus { top: 8px; }
.section-space { padding: 88px 0; }
.section-heading { margin-bottom: 36px; }
.section-heading h2 { margin-bottom: 0; }
.eyebrow { color: var(--brand-blue); font-size: .73rem; font-weight: 750; letter-spacing: .15em; line-height: 1.5; text-transform: uppercase; margin-bottom: 18px; }
.text-link { display: inline-flex; gap: 24px; align-items: center; color: var(--ink); font-size: .88rem; font-weight: 700; text-decoration: none; }
.text-link i { color: var(--brand-red); transition: transform .2s ease; }
.text-link:hover { color: var(--brand-red); }
.text-link:hover i { transform: translateX(4px); }
button.text-link { border: 0; padding: 0; background: transparent; text-align: left; }
.btn { --bs-btn-border-radius: 2px; padding: 15px 23px; font-size: .86rem; font-weight: 700; }
.btn-primary {
  --bs-btn-bg: var(--brand-red);
  --bs-btn-border-color: var(--brand-red);
  --bs-btn-hover-bg: #af0000;
  --bs-btn-hover-border-color: #af0000;
  --bs-btn-active-bg: #970000;
  --bs-btn-active-border-color: #970000;
  --bs-btn-disabled-bg: var(--brand-red);
  --bs-btn-disabled-border-color: var(--brand-red);
  --bs-btn-focus-shadow-rgb: 209, 0, 0;
}
.btn-outline-light { --bs-btn-border-color: #81909b; }
.btn-light { --bs-btn-color: var(--brand-red); --bs-btn-hover-color: #a00000; --bs-btn-active-color: #a00000; }

.utility-bar { background: var(--ink); color: #dce1e5; font-size: .73rem; padding: 9px 0; }
.utility-bar a { color: white; text-decoration: none; }
.utility-bar a:hover { text-decoration: underline; }
.utility-bar .fa-phone { font-size: .65rem; }
.utility-strapline > i { color: #ff765f; margin-right: 7px; }
.site-header { background: white; position: sticky; top: 0; z-index: 1020; box-shadow: 0 3px 14px #17232c12; }
.navbar { padding: 16px 0; }
.navbar-brand { padding: 0; margin-right: 32px; }
.navbar-brand img { width: 183px; height: auto; }
.navbar-nav { gap: 13px; }
.navbar .nav-link { color: var(--ink); font-size: .84rem; font-weight: 650; padding-top: 15px; padding-bottom: 15px; }
.navbar .nav-link:hover, .navbar .nav-link.active, .navbar .nav-link.show { color: var(--brand-red); }
.navbar .nav-link.active { position: relative; }
.navbar .nav-link.active::after { content: ""; height: 2px; width: 100%; background: var(--brand-red); position: absolute; bottom: 4px; left: 0; }
.nav-enquiry { margin-left: 28px; padding: 13px 18px; }
.dropdown-menu { border-radius: 2px; border-color: var(--line); padding: 10px 0; box-shadow: 0 12px 30px #17232c12; }
.dropdown-item { padding: 10px 20px; font-size: .85rem; }
.dropdown-item:active { background: var(--brand-red); }
.dropdown-item:hover { --bs-dropdown-link-hover-bg: #f2f4f5; }

/* Anchor the desktop mega-menu to the full navbar container, not its trigger. */
.navbar > .container { position: relative; }
.products-dropdown { position: static; }
.mega-menu, .mega-menu[data-bs-popper] { top: 100%; left: 0; right: 0; width: 100%; margin-top: 0; padding: 0; border-top: 3px solid var(--brand-red); max-height: calc(100dvh - 160px); overflow-y: auto; }
.mega-menu-intro { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding: 22px 28px; border-bottom: 1px solid var(--line); }
.mega-menu-intro p { margin: 0; }
.mega-menu-intro strong { display: block; font-size: 1.15rem; letter-spacing: -.025em; }
.mega-menu-intro p > span { display: block; color: var(--muted); font-size: .78rem; }
.mega-menu-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); padding: 26px 18px; }
.mega-menu-group { min-width: 0; padding: 0 12px; }
.mega-menu-group + .mega-menu-group { border-left: 1px solid var(--line); }
.mega-menu-group h2 { display: flex; gap: 9px; align-items: center; font-size: .78rem; letter-spacing: 0; line-height: 1.5; margin: 0 8px 14px; }
.mega-menu-group h2 i { color: var(--brand-blue); font-size: 1rem; }
.mega-menu-group ul { list-style: none; padding: 0; margin: 0; }
.mega-menu .dropdown-item { padding: 8px; font-size: .78rem; line-height: 1.5; white-space: normal; border-radius: 2px; }
.mega-menu .dropdown-item:hover { color: var(--brand-red); }
.mega-menu .dropdown-item:active { color: white; }
.mega-menu-footer { display: flex; justify-content: space-between; align-items: center; gap: 20px; background: var(--paper); border-top: 1px solid var(--line); padding: 19px 28px; }
.mega-menu-footer .text-link { gap: 12px; font-size: .8rem; }
.mega-menu-help { color: var(--muted); font-size: .78rem; text-decoration: none; }
.mega-menu-help i { color: var(--brand-blue); margin-right: 7px; }
.mega-menu-help:hover { color: var(--brand-blue); text-decoration: underline; }

.hero { position: relative; overflow: hidden; color: white; background: #10191f; }
.hero-image { position: absolute; inset: 0; background: url("../images/splash-bg.gif") right center / cover no-repeat; }
.hero-shade { position: absolute; inset: 0; background: linear-gradient(90deg, #10191f 0%, #10191ffa 26%, #10191fbf 46%, #10191f30 76%, #10191f08), linear-gradient(0deg, #10191fbd, transparent 40%); }
.hero-content { position: relative; padding-top: 74px; }
.hero-eyebrow { color: #ebeff1; display: flex; align-items: center; gap: 12px; }
.hero-eyebrow span { width: 23px; height: 3px; background: #f02d2d; }
.hero h1 { font-size: clamp(2.6rem, 4.6vw, 4.2rem); margin-bottom: 24px; }
.hero h1 > span { color: #d1d7dc; }
.hero-intro { color: #d1d7dc; max-width: 510px; font-size: 1rem; margin-bottom: 30px; }
.hero-bottom { margin-top: 63px; border-top: 1px solid #ffffff30; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 24px; padding: 24px 0; }
.hero-bottom > p { color: #b7c1c8; font-size: .75rem; margin: 0; }
.hero-bottom > p strong { color: white; font-weight: 500; }
.global-trade, .temperature { display: grid; grid-template-columns: 32px minmax(0, 1fr); align-items: center; gap: 15px; min-width: 0; }
.global-trade > i, .temperature > i { color: #ff6a44; font-size: 2rem; text-align: center; }
.global-trade > div, .temperature > div { min-width: 0; overflow-wrap: anywhere; }
.global-trade strong { display: block; font-size: .95rem; margin-bottom: 3px; }
.global-trade span { display: block; font-size: .75rem; line-height: 1.7; color: #d1d7dc; }
.temperature span, .temperature strong { display: block; }
.temperature span { font-size: .65rem; color: #d1d7dc; text-transform: uppercase; letter-spacing: .13em; margin-bottom: 3px; }
.temperature strong { font-size: 1.25rem; letter-spacing: -.02em; }

.credentials { border-bottom: 1px solid var(--line); padding: 30px 0; }
.credential { display: flex; align-items: center; gap: 18px; padding-left: 30px; }
.credential:first-child { padding-left: 12px; }
.credential + .credential { border-left: 1px solid var(--line); }
.credential > i { font-size: 1.7rem; color: var(--brand-blue); }
.credential strong { display: block; font-size: .86rem; margin-bottom: 4px; }
.credential span { color: var(--muted); font-size: .75rem; }

.product-section { background: var(--paper); }
.product-card { height: 100%; display: block; background: white; color: var(--ink); text-decoration: none; border: 1px solid var(--line); transition: box-shadow .2s ease, transform .2s ease; }
.product-card:hover { color: var(--ink); transform: translateY(-5px); box-shadow: 0 12px 30px #17232c12; }
.product-image { position: relative; background: #e3e5e5; overflow: hidden; }
.product-image img { width: 100%; height: 205px; object-fit: cover; transition: transform .3s ease; }
.product-card:hover img { transform: scale(1.035); }
.product-info { padding: 24px 20px; display: flex; justify-content: space-between; gap: 12px; align-items: center; }
.product-info h3 { font-size: 1.21rem; letter-spacing: -.025em; line-height: 1.3; margin: 0; }
.card-arrow { color: var(--brand-red); width: 30px; height: 30px; background: #fff1f0; display: grid; place-items: center; flex-shrink: 0; font-size: .8rem; }
.range-toggle { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding-top: 30px; }
.range-toggle > span { color: var(--muted); font-size: .82rem; }
.range-toggle [aria-expanded="true"] i { transform: rotate(45deg); }
.range-panel { background: white; padding: 28px; border: 1px solid var(--line); margin-top: 25px; }
.range-panel h3 { font-size: 1.25rem; margin-bottom: 20px; }
.range-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px 25px; margin: 0; padding-left: 20px; font-size: .85rem; }
.range-list a { color: var(--brand-blue); }

.about-visual { position: relative; padding: 0 32px 38px 0; }
.about-visual::before { content: ""; position: absolute; width: 70%; height: 78%; background: var(--paper); right: 12px; bottom: 18px; z-index: -1; }
.about-visual > img { width: 100%; height: 405px; object-fit: cover; }
.experience-badge { position: absolute; bottom: 68px; left: -1px; background: var(--brand-blue); color: white; padding: 22px 26px; display: flex; align-items: center; gap: 20px; }
.experience-badge > strong { font-size: 3.5rem; line-height: 1; letter-spacing: -.06em; }
.experience-badge > strong span { font-size: 2rem; vertical-align: top; }
.experience-badge > span { font-size: .75rem; line-height: 1.7; }
.image-caption { font-size: .68rem; position: absolute; left: 0; bottom: 0; color: var(--muted); display: flex; align-items: center; gap: 10px; }
.image-caption > span { height: 2px; width: 22px; background: var(--brand-red); }
.about-section p:not(.eyebrow) { color: var(--muted); font-size: .88rem; }
.about-section .about-lead { color: var(--ink); font-size: .97rem; }
.heritage-note { border-left: 2px solid var(--brand-red); padding-left: 18px; margin: 22px 0; }
.about-section .heritage-note p { font-size: .8rem; }
.heritage-note strong { color: var(--ink); font-weight: 600; }

.why-section { background: #104f75; color: white; padding: 52px 0; }
.why-section .eyebrow { color: #c1e0f2; font-size: .65rem; margin-bottom: 12px; }
.why-section h2 { font-size: 1.8rem; margin: 0; line-height: 1.2; }
.benefits-list { list-style: none; padding: 0 0 0 35px; margin: 0; display: grid; grid-template-columns: 1.15fr 1fr; gap: 24px 30px; }
.benefits-list li { font-size: .85rem; display: flex; gap: 12px; align-items: baseline; }
.benefits-list i { color: #a2d0eb; font-size: .8rem; }

.audience-section .section-heading { margin-bottom: 40px; }
.audience-card { background: var(--paper); padding: 38px; border-top: 3px solid var(--brand-blue); height: 100%; position: relative; }
.audience-card .eyebrow { margin-bottom: 20px; }
.audience-card h3 { font-size: 1.8rem; padding-right: 40px; margin-bottom: 20px; }
.audience-card > p:not(.eyebrow) { color: var(--muted); font-size: .88rem; max-width: 370px; margin-bottom: 26px; }
.audience-icon { display: grid; place-items: center; position: absolute; right: 30px; top: 30px; color: var(--brand-blue); background: #e5edf2; width: 52px; height: 52px; font-size: 1.3rem; }
.manufacturer-card { border-top-color: var(--brand-red); }
.manufacturer-card .eyebrow, .manufacturer-card .audience-icon { color: var(--brand-red); }
.manufacturer-card .audience-icon { background: #f8e5e5; }

.contact-banner { padding: 58px 0; background: var(--brand-red); color: white; position: relative; overflow: hidden; }
.contact-banner::before { content: ""; position: absolute; width: 350px; height: 350px; right: -80px; top: -90px; border: 55px solid #ffffff08; transform: rotate(35deg); pointer-events: none; }
.contact-banner .container { position: relative; }
.contact-banner .eyebrow { color: #ffe0e0; }
.contact-banner h2 { font-size: clamp(2rem, 3.4vw, 3rem); margin-bottom: 16px; }
.contact-banner p:not(.eyebrow) { font-size: .88rem; margin: 0; color: #ffe0e0; }
.contact-actions { display: flex; align-items: flex-start; flex-direction: column; padding-left: 65px; }
.contact-phone { color: white; text-decoration: none; font-size: 2rem; font-weight: 700; letter-spacing: -.04em; }
.contact-phone i { font-size: 1.2rem; margin-right: 14px; }
.contact-email { color: white; font-size: .88rem; text-decoration: none; margin: 5px 0 23px; }
.contact-phone:hover, .contact-email:hover { color: white; text-decoration: underline; }

.site-footer { background: #14212a; color: #bac3c9; }
.footer-main { padding-top: 54px; padding-bottom: 44px; }
.footer-brand { display: inline-block; background: white; padding: 9px 12px; }
.footer-brand img { width: 165px; height: auto; }
.footer-description { font-size: .8rem; margin: 20px 0 0; }
.site-footer h2 { font-size: .75rem; letter-spacing: .06em; text-transform: uppercase; color: white; margin-bottom: 22px; padding-top: 7px; }
.footer-links { padding: 0; margin: 0; list-style: none; }
.footer-links li { margin-bottom: 9px; }
.footer-links a { color: #bac3c9; text-decoration: none; font-size: .8rem; }
.footer-links a:hover { color: white; text-decoration: underline; }
.site-footer address, .registration { font-size: .8rem; line-height: 1.9; }
.footer-contact a { color: white; overflow-wrap: anywhere; }
.registration { margin-top: 20px; }
.footer-bottom { border-top: 1px solid #ffffff1f; padding: 21px 0; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 24px; }
.footer-bottom p { font-size: .65rem; margin: 0; }

.about-page-hero { padding: 28px 0 62px; color: white; background: linear-gradient(90deg, #10191ff5, #10191fb0 60%, #10191f65), url("../images/midland_elements_services.jpg") center / cover no-repeat; }
.about-page-hero .breadcrumb { --bs-breadcrumb-divider-color: #b7c1c8; --bs-breadcrumb-item-active-color: #d1d7dc; font-size: .75rem; margin-bottom: 48px; }
.about-page-hero .breadcrumb a { color: white; }
.about-page-hero h1 { font-size: clamp(2.6rem, 5vw, 4.5rem); margin-bottom: 22px; }
.about-page-hero h1 span { color: #d1d7dc; }
.about-page-hero-intro { color: #d1d7dc; margin: 0; max-width: 520px; font-size: 1rem; }
.about-story p:not(.eyebrow) { color: var(--muted); font-size: .9rem; }
.about-story .about-story-lead { color: var(--ink); font-size: 1.05rem; }
.about-story .experience-badge { gap: 16px; }
.about-story .experience-badge > strong { font-size: clamp(2rem, 4vw, 3.2rem); }
.about-mission { background: var(--paper); }
.mission-symbol { display: flex; align-items: center; gap: 16px; margin-top: 30px; color: var(--muted); font-size: .8rem; }
.mission-symbol i { font-size: 2rem; color: var(--brand-red); }
.mission-copy { border-left: 3px solid var(--brand-red); padding-left: 28px; }
.mission-copy p { color: var(--muted); font-size: .95rem; }
.mission-copy .mission-lead { color: var(--ink); font-size: 1.2rem; line-height: 1.6; }
.mission-copy p:last-child { margin-bottom: 0; }
.about-values { margin-top: 36px; }
.about-value { height: 100%; padding: 28px; background: white; border: 1px solid var(--line); }
.about-value > i { color: var(--brand-blue); font-size: 1.6rem; margin-bottom: 22px; }
.about-value h3 { font-size: 1.2rem; margin-bottom: 12px; }
.about-value p { color: var(--muted); font-size: .85rem; margin-bottom: 0; }

.services-intro .col-lg-7 > p { color: var(--muted); font-size: .95rem; }
.services-intro .col-lg-7 > p:first-child { color: var(--ink); font-size: 1.1rem; }
.services-intro .col-lg-7 > p:last-child { margin-bottom: 0; }
.services-systems { background: var(--paper); }
.service-card { height: 100%; padding: clamp(24px, 3vw, 36px); background: white; border: 1px solid var(--line); border-top: 3px solid var(--brand-blue); }
.service-icon { display: grid; place-items: center; width: 48px; height: 48px; color: var(--brand-blue); background: #e5edf2; margin-bottom: 24px; font-size: 1.2rem; }
.service-card .eyebrow { font-size: .65rem; margin-bottom: 12px; }
.service-card h3 { font-size: clamp(1.4rem, 2.2vw, 1.8rem); margin-bottom: 18px; }
.service-card p:not(.eyebrow) { color: var(--muted); font-size: .88rem; }
.service-card p:last-child { margin-bottom: 0; }
.service-card-embedded { border-top-color: var(--brand-red); }
.service-card-embedded .service-icon { background: #f8e5e5; color: var(--brand-red); }
.service-card-embedded .eyebrow { color: var(--brand-red); }

.contact-page-hero { background: linear-gradient(110deg, #14212a 35%, #104f75); }
.contact-detail { display: flex; align-items: flex-start; gap: 18px; padding: 22px 0; border-bottom: 1px solid var(--line); }
.contact-detail > i { flex: 0 0 24px; color: var(--brand-blue); font-size: 1.3rem; padding-top: 3px; }
.contact-detail > div { min-width: 0; }
.contact-detail h3, .contact-company-info h3 { font-size: 1rem; letter-spacing: -.02em; margin-bottom: 10px; }
.contact-detail address { color: var(--muted); font-size: .9rem; line-height: 1.8; margin-bottom: 16px; }
.contact-detail-link { color: var(--ink); font-size: .9rem; font-weight: 600; text-decoration: none; overflow-wrap: anywhere; }
.contact-detail-link:hover { color: var(--brand-blue); text-decoration: underline; }
.accounts-person { color: var(--muted); font-size: .82rem; margin-bottom: 6px; }
.contact-company-info { margin-top: 24px; padding: 22px; background: var(--paper); border-left: 3px solid var(--brand-blue); }
.contact-company-info p { color: var(--muted); font-size: .82rem; margin: 0; }
.enquiry-panel { padding: clamp(24px, 3.5vw, 42px); background: var(--paper); border-top: 3px solid var(--brand-red); }
.enquiry-panel h2 { font-size: clamp(1.75rem, 3vw, 2.4rem); margin-bottom: 14px; }
.enquiry-intro { color: var(--muted); font-size: .83rem; }
.required-mark { color: var(--brand-red); }
.enquiry-preview-note { display: flex; gap: 10px; align-items: baseline; color: #104f75; background: #e5edf2; padding: 15px; font-size: .78rem; margin-bottom: 28px; }
.enquiry-panel .form-label { font-size: .85rem; font-weight: 650; }
.enquiry-panel .form-control { border-radius: 2px; padding: 12px; border-color: #b7c1c8; }
.enquiry-panel .form-control:focus { border-color: var(--brand-blue); box-shadow: 0 0 0 .2rem #13699c20; }
.enquiry-panel textarea { min-height: 160px; resize: vertical; }
.contact-location { background: var(--paper); }
.location-note { color: var(--muted); font-size: .8rem; max-width: 850px; margin-bottom: 28px; }
.location-card { background: white; border: 1px solid var(--line); height: 100%; }
.location-card h3 { display: flex; gap: 12px; align-items: center; padding: 22px; margin: 0; font-size: 1.1rem; }
.location-card h3 i { color: var(--brand-blue); }
.location-card iframe { display: block; width: 100%; height: 360px; border: 0; background: #e0e4e6; }
.location-card > a { display: flex; gap: 14px; align-items: center; padding: 18px 22px; color: var(--ink); font-size: .8rem; font-weight: 650; text-decoration: none; }
.location-card > a i { color: var(--brand-red); }
.location-card > a:hover { color: var(--brand-red); text-decoration: underline; }

.strip-hero { padding: 44px 0 0; color: white; background: #14212a; overflow: hidden; }
.strip-hero-copy { position: relative; z-index: 1; }
.strip-breadcrumb { display: flex; flex-wrap: wrap; gap: 10px; list-style: none; padding: 0; margin: 0 0 42px; color: #b7c1c8; font-size: .73rem; }
.strip-breadcrumb li + li::before { content: "/"; margin-right: 10px; color: #77858e; }
.strip-breadcrumb a { color: #d1d7dc; text-decoration: none; }
.strip-breadcrumb a:hover { color: white; text-decoration: underline; }
.strip-hero .eyebrow { color: #c1e0f2; display: flex; align-items: center; gap: 12px; }
.strip-hero .eyebrow span { width: 23px; height: 3px; background: #f02d2d; }
.strip-hero h1 { max-width: 650px; font-size: clamp(2.8rem, 5vw, 4.65rem); margin: 0 0 20px; }
.strip-hero h1 span { color: #9dcce5; }
.strip-hero-lead { max-width: 520px; color: white; font-size: 1.15rem; font-weight: 650; line-height: 1.5; margin-bottom: 12px; }
.strip-hero-intro { max-width: 510px; color: #c1cbd1; font-size: .92rem; margin-bottom: 28px; }
.strip-hero-actions { align-items: center; }
.strip-call-link { color: white; font-size: .86rem; font-weight: 700; text-decoration: none; padding: 12px 8px; }
.strip-call-link i { color: #ff765f; margin-right: 7px; }
.strip-call-link:hover { color: white; text-decoration: underline; }
.strip-hero-visual { position: relative; margin: 0 -7vw 0 15px; background: #26343d; }
.strip-hero-visual::before { content: ""; position: absolute; top: -18px; right: 18px; width: 72%; height: 75%; border: 1px solid #ffffff40; pointer-events: none; }
.strip-hero-visual > img { display: block; position: relative; width: 100%; height: clamp(340px, 42vw, 490px); object-fit: cover; }
.strip-hero-visual figcaption { position: absolute; bottom: 24px; left: -20px; display: flex; align-items: center; gap: 15px; max-width: 300px; padding: 15px 20px; background: white; color: var(--ink); font-size: .72rem; }
.strip-hero-visual figcaption strong { display: block; font-size: .9rem; }
.strip-photo-mark { width: 3px; height: 35px; flex: 0 0 3px; background: var(--brand-red); }
.strip-image-label { position: absolute; top: 20px; right: 20px; padding: 10px 14px; color: white; background: #14212ad9; font-size: .69rem; font-weight: 650; letter-spacing: .04em; }
.strip-image-label i { color: #9dcce5; margin-right: 7px; }
.strip-facts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 25px; padding: 26px 0; margin-top: 44px; border-top: 1px solid #ffffff30; }
.strip-facts > div { display: grid; grid-template-columns: 35px 1fr; column-gap: 12px; align-items: center; }
.strip-facts > div + div { border-left: 1px solid #ffffff30; padding-left: 25px; }
.strip-facts > div > span { grid-row: span 2; color: #ff765f; font-size: .7rem; font-weight: 750; }
.strip-facts strong { font-size: .8rem; }
.strip-facts small { color: #b7c1c8; font-size: .7rem; }
.strip-advantage { background: var(--paper); }
.strip-section-heading { margin-bottom: 38px; }
.strip-section-heading .eyebrow { margin-bottom: 13px; }
.strip-section-heading h2 { margin: 0; }
.strip-section-heading > div:last-child p { color: var(--muted); font-size: .88rem; margin: 0 0 3px; }
.strip-feature-card { position: relative; height: 100%; min-height: 295px; padding: 32px 28px; background: white; border: 1px solid var(--line); border-top: 3px solid var(--brand-blue); }
.strip-advantage-grid > div:first-child .strip-feature-card { border-top-color: var(--brand-red); }
.strip-feature-number { position: absolute; top: 24px; right: 25px; color: #e8edef; font-size: 2rem; font-weight: 750; letter-spacing: -.06em; }
.strip-feature-icon { display: grid; place-items: center; width: 48px; height: 48px; margin-bottom: 34px; color: var(--brand-blue); background: #e5edf2; }
.strip-advantage-grid > div:first-child .strip-feature-icon { color: var(--brand-red); background: #f8e5e5; }
.strip-feature-card h3 { font-size: 1.3rem; letter-spacing: -.025em; margin-bottom: 12px; }
.strip-feature-card p { color: var(--muted); font-size: .82rem; margin: 0; }
.strip-engineering { background: white; }
.strip-engineering-intro h2 { max-width: 440px; margin-bottom: 18px; }
.strip-engineering-intro > p:not(.eyebrow) { color: var(--muted); font-size: .9rem; max-width: 440px; }
.strip-engineering-note { display: flex; gap: 16px; max-width: 440px; margin-top: 34px; padding: 21px; background: #eaf2f6; border-left: 3px solid var(--brand-blue); }
.strip-engineering-note > i { flex: 0 0 auto; margin-top: 4px; color: var(--brand-blue); font-size: 1.2rem; }
.strip-engineering-note p { margin: 0; }
.strip-engineering-note strong, .strip-engineering-note span { display: block; }
.strip-engineering-note strong { margin-bottom: 5px; font-size: .85rem; }
.strip-engineering-note span { color: var(--muted); font-size: .78rem; line-height: 1.65; }
.strip-support-list { border-top: 1px solid var(--line); }
.strip-support-card { display: flex; gap: 22px; padding: 30px 0; border-bottom: 1px solid var(--line); }
.strip-support-icon { display: grid; place-items: center; flex: 0 0 48px; width: 48px; height: 48px; color: var(--brand-red); background: #f8e5e5; }
.strip-support-card .eyebrow { margin-bottom: 10px; }
.strip-support-card h3 { font-size: 1.35rem; margin-bottom: 10px; }
.strip-support-card p:not(.eyebrow) { color: var(--muted); font-size: .84rem; margin: 0; }
.strip-applications { background: #14212a; color: white; }
.strip-applications .eyebrow { color: #c1e0f2; }
.strip-applications .section-heading { margin-bottom: 34px; }
.strip-applications .section-heading h2 { max-width: 560px; }
.strip-applications-intro { max-width: 390px; color: #bac3c9; font-size: .84rem; margin: 0 0 3px; }
.strip-application-card { position: relative; min-height: 230px; padding: 26px; border: 1px solid #ffffff2b; background: #ffffff08; }
.strip-application-card > span { color: #a7bac5; font-size: .65rem; font-weight: 700; letter-spacing: .12em; }
.strip-application-card > i { display: block; margin: 29px 0 20px; color: #ff765f; font-size: 1.4rem; }
.strip-application-card h3 { font-size: 1.28rem; letter-spacing: -.025em; margin: 0; }
.strip-application-card::after { content: ""; position: absolute; right: 0; bottom: 0; width: 38px; height: 3px; background: var(--brand-red); }
.strip-contact-banner h2 { max-width: 600px; }

@media (min-width: 1400px) {
  .container { max-width: 1200px; }
}

@media (max-width: 1199.98px) {
  .navbar-nav { gap: 3px; }
  .nav-enquiry { margin-left: 15px; padding: 12px; }
  .navbar-brand { margin-right: 20px; }
  .product-image img { height: 250px; }
  .contact-actions { padding-left: 30px; }
  .audience-card h3 { font-size: 1.6rem; }
}

@media (max-width: 991.98px) {
  html { scroll-padding-top: 112px; }
  .section-space { padding: 64px 0; }
  .navbar { padding: 12px 0; }
  .navbar-brand img { width: 155px; }
  .navbar-collapse { padding: 18px 0 10px; max-height: calc(100dvh - 100px); overflow-y: auto; overscroll-behavior-y: contain; }
  .navbar .nav-link { padding: 12px 0; }
  .navbar .nav-link.active::after { display: none; }
  .nav-enquiry { margin: 14px 0 0; }
  .dropdown-menu { box-shadow: none; }
  .mega-menu, .mega-menu[data-bs-popper] { max-height: none; margin: 6px 0 12px; }
  .mega-menu-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 0; }
  .mega-menu-group:nth-child(3) { border-left: 0; }
  .mega-menu .dropdown-item { padding-top: 11px; padding-bottom: 11px; }
  .mega-menu-intro, .mega-menu-footer { flex-wrap: wrap; }
  .hero-content { padding-top: 60px; }
  .hero h1 { max-width: 650px; font-size: 3.6rem; }
  .hero-shade { background: linear-gradient(90deg, #10191ff5, #10191f99 65%, #10191f40), linear-gradient(0deg, #10191fdd, transparent); }
  .hero-intro { max-width: 500px; }
  .credential { padding-left: 20px; gap: 12px; }
  .credential > i { font-size: 1.35rem; }
  .credential strong { font-size: .75rem; }
  .credential span { font-size: .69rem; }
  .about-visual { max-width: 620px; }
  .benefits-list { padding: 8px 0 0; }
  .contact-actions { padding-left: 12px; }
  .footer-main { padding-bottom: 30px; }
  .strip-hero-visual { margin-right: 0; }
  .strip-hero-visual > img { height: 400px; }
  .strip-feature-card { min-height: 320px; }
}

@media (max-width: 767.98px) {
  .hero-bottom > p, .hero-bottom > .global-trade, .hero-bottom > .temperature { flex-basis: 100%; }
  .hero h1 { font-size: 3rem; }
  .hero-bottom > p { max-width: 180px; }
  .hero-bottom > p strong { display: block; }
  .temperature strong { font-size: 1.1rem; }
  .credentials { padding: 26px 0; }
  .credential, .credential:first-child { padding-left: 12px; gap: 18px; }
  .credential + .credential { border-left: 0; }
  .credential > i { width: 30px; text-align: center; font-size: 1.5rem; }
  .credential strong { font-size: .87rem; }
  .credential span { font-size: .76rem; }
  .range-toggle { align-items: flex-start; flex-direction: column; gap: 15px; }
  .range-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .why-section { padding: 42px 0; }
  .strip-facts { gap: 16px; }
  .strip-facts > div + div { padding-left: 16px; }
  .strip-feature-card { min-height: 0; }
}

@media (max-width: 575.98px) {
  .container { --bs-gutter-x: 40px; }
  .section-space { padding: 52px 0; }
  .utility-bar { font-size: .65rem; }
  .navbar-brand img { width: 145px; }
  .hero-content { padding-top: 45px; }
  .hero h1 { font-size: clamp(2.3rem, 9.5vw, 3rem); letter-spacing: -.045em; }
  .hero-eyebrow { font-size: .59rem; letter-spacing: .12em; }
  .hero-intro { font-size: .9rem; }
  .hero-image { background-position: center; opacity: .7; }
  .hero-shade { background: linear-gradient(90deg, #10191ff0, #10191fa6), linear-gradient(0deg, #10191f, transparent); }
  .hero .btn { padding: 14px 17px; font-size: .8rem; }
  .hero-bottom { margin-top: 38px; flex-wrap: wrap; gap: 18px; }
  .hero-bottom > p { max-width: none; }
  .hero-bottom > p strong { display: inline; }
  .global-trade > i, .temperature > i { font-size: 1.6rem; }
  .product-image img { height: 230px; }
  .product-info { padding: 22px; }
  .product-info h3 br { display: none; }
  .range-panel { padding: 22px; }
  .range-list { grid-template-columns: 1fr; }
  .about-visual { padding-right: 15px; }
  .about-visual > img { height: 330px; }
  .experience-badge { padding: 18px 20px; gap: 16px; }
  .experience-badge > strong { font-size: 3rem; }
  .image-caption { font-size: .6rem; gap: 7px; }
  .benefits-list { grid-template-columns: 1fr; gap: 18px; }
  .audience-card { padding: 28px; }
  .audience-icon { top: 22px; right: 22px; width: 42px; height: 42px; font-size: 1.1rem; }
  .audience-card h3 { font-size: 1.6rem; padding-right: 0; }
  .contact-banner { padding: 44px 0; }
  .contact-phone { font-size: 1.8rem; }
  .site-footer address { font-size: .75rem; }
  .dropdown-item { white-space: normal; }
  .mega-menu-grid { grid-template-columns: 1fr; padding: 22px 12px; gap: 0; }
  .mega-menu-group + .mega-menu-group { border-left: 0; border-top: 1px solid var(--line); margin-top: 18px; padding-top: 22px; }
  .mega-menu-group h2 { font-size: .85rem; margin-bottom: 10px; }
  .mega-menu .dropdown-item { font-size: .82rem; }
  .mega-menu-intro, .mega-menu-footer { padding: 20px 24px; gap: 14px; }
  .strip-hero { padding-top: 30px; }
  .strip-breadcrumb { margin-bottom: 30px; }
  .strip-hero h1 { font-size: clamp(2.5rem, 10vw, 3.25rem); }
  .strip-hero-lead { font-size: 1.02rem; }
  .strip-hero-visual { margin: 0 0 0 10px; }
  .strip-hero-visual > img { height: 330px; }
  .strip-hero-visual figcaption { left: -10px; bottom: 14px; }
  .strip-facts { grid-template-columns: 1fr; gap: 15px; margin-top: 30px; padding: 20px 0; }
  .strip-facts > div + div { border-left: 0; padding-left: 0; }
  .strip-section-heading { margin-bottom: 28px; }
  .strip-feature-card { padding: 27px 24px; }
  .strip-feature-icon { margin-bottom: 25px; }
  .strip-support-card { gap: 15px; }
  .strip-application-card { min-height: 205px; }
}

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