@font-face { font-family: "Barlow"; font-style: normal; font-weight: 400; font-display: swap; src: url("/assets/fonts/barlow-400.woff2") format("woff2"); }
@font-face { font-family: "Barlow"; font-style: normal; font-weight: 500; font-display: swap; src: url("/assets/fonts/barlow-500.woff2") format("woff2"); }
@font-face { font-family: "Barlow"; font-style: normal; font-weight: 600; font-display: swap; src: url("/assets/fonts/barlow-600.woff2") format("woff2"); }
@font-face { font-family: "Barlow"; font-style: normal; font-weight: 700; font-display: swap; src: url("/assets/fonts/barlow-700.woff2") format("woff2"); }
@font-face { font-family: "Barlow"; font-style: normal; font-weight: 800; font-display: swap; src: url("/assets/fonts/barlow-800.woff2") format("woff2"); }
@font-face { font-family: "Barlow Condensed"; font-style: normal; font-weight: 500; font-display: swap; src: url("/assets/fonts/barlow-condensed-500.woff2") format("woff2"); }
@font-face { font-family: "Barlow Condensed"; font-style: normal; font-weight: 600; font-display: swap; src: url("/assets/fonts/barlow-condensed-600.woff2") format("woff2"); }
@font-face { font-family: "Barlow Condensed"; font-style: normal; font-weight: 700; font-display: swap; src: url("/assets/fonts/barlow-condensed-700.woff2") format("woff2"); }
:root {
  --ink: #13263d;
  --navy: #102b50;
  --navy-2: #1d426b;
  --navy-deep: #091a31;
  --blue: #275779;
  --blue-soft: #eaf1f8;
  --orange: #f97b0c;
  --orange-bright: #ff9029;
  --orange-ink: #221303;
  --paper: #fff;
  --mist: #f3f6fa;
  --line: #cdd4d9;
  --text: #46545e;
  --display: "Barlow Condensed", "Arial Narrow", Arial, sans-serif;
  --check-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12.5l5.5 5.5L20 7'/%3E%3C/svg%3E");
  --radius: 2px;
  --radius-sm: 2px;
  --shadow-sm: 0 1px 3px rgba(14, 26, 45, .05);
  --shadow-md: 0 4px 18px rgba(14, 26, 45, .09);
  --shadow-lg: 0 30px 80px rgba(9, 17, 31, .26);
  --shadow: var(--shadow-md);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 120px; }
body {
  margin: 0;
  font-family: Barlow, "Segoe UI", system-ui, -apple-system, sans-serif;
  font-size: 16.5px;
  color: var(--ink);
  background: var(--paper);
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
::selection { background: #ffdcb4; color: #221303; }
:focus-visible { outline: 3px solid var(--orange); outline-offset: 2px; border-radius: 4px; }
.skip-link { position: absolute; left: -999px; top: 10px; background: #fff; color: #000; padding: 10px 14px; z-index: 100; border-radius: 8px; }
.skip-link:focus { left: 10px; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.topbar { background: var(--navy-deep); color: #b9c8da; font-size: 14px; }
.topbar a:hover { color: #fff; }
.topbar-inner, .nav-inner, .section-inner, .footer-grid, .footer-bottom, .trust-grid, .cta-inner {
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto;
}
.topbar-inner { min-height: 42px; display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.topbar strong { color: #fff; font-weight: 600; }
.site-header { position: sticky; top: 0; z-index: 20; background: rgba(255,255,255,.9); backdrop-filter: blur(18px) saturate(1.4); -webkit-backdrop-filter: blur(18px) saturate(1.4); border-bottom: 1px solid rgba(18,35,63,.08); transition: box-shadow .25s ease; }
.site-header[data-scrolled="true"] { box-shadow: 0 12px 34px rgba(9,17,31,.1); }
.nav-inner { min-height: 86px; display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.brand { display: flex; align-items: center; gap: 13px; min-width: 230px; }
.brand img { width: 76px; height: auto; }
.brand-wordmark { display: grid; line-height: 1.06; font-family: var(--display); font-weight: 700; color: var(--navy); text-transform: uppercase; font-size: 21px; letter-spacing: .02em; }
.brand-wordmark span { color: var(--blue); font-family: Barlow, sans-serif; font-weight: 600; font-size: 11.5px; text-transform: none; letter-spacing: .01em; }
.main-nav { display: flex; align-items: center; gap: 18px; color: var(--navy); font-size: 15px; font-weight: 600; }
.main-nav a { position: relative; padding: 31px 0; transition: color .15s ease; }
.main-nav a:hover { color: var(--blue); }
.main-nav a::after { content: ""; position: absolute; left: 0; bottom: 23px; width: 0; height: 3px; border-radius: 2px; background: var(--orange); transition: width .2s ease; }
.main-nav a:hover::after, .main-nav a[aria-current="page"]::after, .main-nav a.nav-link-active::after { width: 100%; }
.nav-item { position: relative; display: flex; align-items: center; }
.nav-item-has-children > a { padding-right: 16px; }
.nav-item-has-children > a::before { content: ""; position: absolute; right: 0; top: 50%; width: 7px; height: 7px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: translateY(-62%) rotate(45deg); }
.nav-submenu { position: absolute; left: -18px; top: calc(100% - 7px); min-width: 224px; padding: 10px; background: #fff; border: 1px solid var(--line); border-radius: 14px; box-shadow: var(--shadow-md); opacity: 0; visibility: hidden; transform: translateY(8px); transition: opacity .18s ease, transform .18s ease, visibility .18s ease; }
.nav-item:hover .nav-submenu, .nav-item:focus-within .nav-submenu { opacity: 1; visibility: visible; transform: translateY(0); }
.nav-submenu a { display: block; padding: 11px 13px; white-space: nowrap; border-radius: 9px; }
.nav-submenu a::after { display: none; }
.nav-submenu a:hover, .nav-submenu a.nav-link-active { background: var(--blue-soft); color: var(--navy); }
.header-actions { display: flex; align-items: center; gap: 8px; }
.icon-link { width: 46px; height: 46px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 12px; background: #fff; color: var(--navy); transition: border-color .15s ease, color .15s ease, transform .15s ease; }
.icon-link:hover { border-color: var(--blue); color: var(--blue); transform: translateY(-1px); }
.facebook-link { width: 46px; height: 46px; display: grid; place-items: center; border-radius: 12px; background: #1877f2; color: #fff; border: 1px solid #1877f2; transition: background .15s ease, transform .15s ease; }
.facebook-link:hover { background: #0f5fc4; border-color: #0f5fc4; transform: translateY(-1px); }
.button { display: inline-flex; min-height: 52px; align-items: center; justify-content: center; gap: 10px; border: 0; border-radius: 11px; padding: 0 25px; font-family: Barlow, sans-serif; font-size: 14px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; cursor: pointer; transition: background .18s ease, transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.button:active { transform: translateY(1px); }
.button-primary { background: var(--navy); color: #fff; box-shadow: 0 8px 22px rgba(18,35,63,.24); }
.button-primary:hover { background: var(--navy-2); transform: translateY(-2px); box-shadow: 0 14px 30px rgba(18,35,63,.28); }
.button-accent { background: linear-gradient(180deg, var(--orange-bright), var(--orange)); color: var(--orange-ink); box-shadow: 0 8px 22px rgba(249,123,12,.32); }
.button-accent:hover { background: linear-gradient(180deg, #ffa04a, var(--orange-bright)); transform: translateY(-2px); box-shadow: 0 14px 30px rgba(249,123,12,.36); }
.button-ghost { color: #fff; border: 1.5px solid rgba(255,255,255,.44); background: rgba(255,255,255,.07); backdrop-filter: blur(6px); }
.button-ghost:hover { border-color: #fff; background: rgba(255,255,255,.14); transform: translateY(-2px); }
.menu-toggle { display: none; }
.menu-toggle-icon { display: grid; gap: 4px; width: 18px; }
.menu-toggle-icon span { height: 2px; background: currentColor; border-radius: 2px; }
.mobile-panel { display: none; border-top: 1px solid var(--line); background: #fff; padding: 8px 20px 22px; box-shadow: 0 30px 50px rgba(9,17,31,.12); }
.mobile-panel a { display: block; padding: 13px 2px; color: var(--navy); font-weight: 600; font-size: 16.5px; border-bottom: 1px solid var(--line); }
.mobile-panel a.nav-link-active { color: var(--blue); }
.mobile-panel .mobile-sub-link { padding-left: 20px; font-size: 15px; font-weight: 500; color: var(--text); }
.mobile-panel .mobile-sub-link::before { content: "– "; color: var(--orange); font-weight: 700; }
.mobile-panel .mobile-social-link { color: #1877f2; font-weight: 700; border-bottom: 0; }
.mobile-panel[data-open="true"] { display: block; animation: panel-in .22s ease; }
@keyframes panel-in { from { opacity: 0; transform: translateY(-8px); } }
.hero { position: relative; min-height: 680px; display: grid; align-items: end; color: #fff; background: linear-gradient(80deg, rgba(7,13,24,.94) 6%, rgba(7,13,24,.7) 44%, rgba(8,15,27,.26) 74%, rgba(8,15,27,.14)), var(--hero-image) center/cover no-repeat; overflow: hidden; }
.hero::after { content: ""; position: absolute; inset: auto 0 0; height: 190px; background: linear-gradient(0deg, rgba(7,13,24,.72), transparent); pointer-events: none; }
.hero-inner { position: relative; z-index: 2; width: min(1180px, calc(100% - 40px)); margin: 0 auto; padding: 92px 0 84px; display: grid; grid-template-columns: minmax(0, 740px) minmax(300px, 380px); gap: 56px; align-items: end; }
.eyebrow, .section-kicker, .product-type { color: var(--blue); font-family: var(--display); font-size: 15px; font-weight: 700; text-transform: uppercase; letter-spacing: .14em; margin: 0 0 12px; }
.eyebrow, .section-kicker { display: inline-flex; align-items: center; gap: 12px; }
.eyebrow::before, .section-kicker::before { content: ""; flex: none; width: 22px; height: 3px; border-radius: 2px; background: var(--orange); }
.hero .eyebrow { color: #e7eef7; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { font-family: var(--display); font-weight: 700; text-wrap: balance; }
h1 { max-width: 820px; margin-bottom: 22px; font-size: clamp(46px, 6.4vw, 88px); line-height: 1; text-transform: uppercase; letter-spacing: .008em; }
h2 { margin-bottom: 14px; color: var(--navy); font-size: clamp(33px, 4vw, 52px); line-height: 1.02; letter-spacing: .004em; }
h3 { color: var(--navy); line-height: 1.12; letter-spacing: .006em; }
.hero-lead { max-width: 640px; margin-bottom: 32px; color: #dce7f3; font-size: 20px; line-height: 1.6; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 14px; align-items: center; }
.hero-offer { position: relative; align-self: end; display: grid; align-content: end; padding: 30px; background: rgba(19,34,60,.88); border: 1px solid rgba(255,255,255,.16); box-shadow: var(--shadow-md); }
.hero-offer-branded { align-self: end; }
.hero-offer-brand { display: flex; align-items: flex-end; gap: 16px; margin-bottom: 8px; }
.hero-offer-brand img { width: 154px; max-width: calc(100% - 58px); height: auto; display: block; opacity: .96; filter: drop-shadow(0 10px 16px rgba(0,0,0,.28)); }
.hero-offer-brand em { display: inline-flex; align-items: center; margin-bottom: 6px; color: #f7fbff; font-family: "Barlow Condensed", sans-serif; font-size: 48.5px; font-style: normal; font-weight: 700; letter-spacing: .02em; line-height: 1; text-transform: uppercase; text-shadow: 0 6px 14px rgba(0,0,0,.3); }
.hero-offer span { display: block; color: #b7cadb; font-family: Barlow, sans-serif; font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.hero-offer strong { display: block; margin: 8px 0 16px; font-family: Barlow, sans-serif; font-size: clamp(32px, 2.6vw, 38px); font-weight: 800; line-height: 1.06; color: #fff; }
.price-vat { display: block; margin-top: 7px; font-family: Barlow, sans-serif; font-size: 13px; font-weight: 700; line-height: 1.2; letter-spacing: .05em; text-transform: uppercase; }
.hero-offer .price-vat { color: #d5e0ec; }
.hero-offer p { color: #d5e0ec; margin-bottom: 22px; font-size: 16px; }
.hero-offer .button { width: 100%; }
.hero-points { display: grid; gap: 10px; padding: 0; margin: 0 0 22px; list-style: none; }
.hero-points li { color: #edf5fb; display: grid; grid-template-columns: 20px 1fr; gap: 11px; font-size: 14.5px; font-weight: 500; }
.hero-points li::before { content: ""; width: 17px; height: 17px; margin-top: 3px; border-radius: 5px; background: var(--orange) var(--check-icon) center/11px no-repeat; }
.trust-strip { background: var(--navy); color: #fff; }
.trust-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: rgba(255,255,255,.13); }
.trust-grid div { padding: 26px 28px; background: var(--navy); }
.trust-grid strong { display: block; font-family: var(--display); font-size: 22px; font-weight: 700; letter-spacing: .01em; color: #fff; }
.trust-grid strong::before { content: ""; display: block; width: 22px; height: 3px; border-radius: 2px; margin-bottom: 12px; background: var(--orange); }
.trust-grid span { color: #b9c8da; font-size: 14.5px; }
.commercial-strip { background: #fff; border-bottom: 1px solid var(--line); }
.commercial-strip-inner { width: min(1180px, calc(100% - 40px)); margin: 0 auto; display: grid; grid-template-columns: repeat(4, 1fr); }
.commercial-strip-inner div { padding: 24px; border-left: 1px solid var(--line); }
.commercial-strip-inner div:last-child { border-right: 1px solid var(--line); }
.commercial-strip-inner span { display: block; color: var(--blue); font-family: var(--display); font-size: 13.5px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.commercial-strip-inner strong { display: block; margin-top: 6px; color: var(--navy); font-size: 16.5px; font-weight: 600; line-height: 1.3; }
.section { padding: 96px 0; }
.section-muted { background: var(--mist); }
.section-head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, 430px); gap: 42px; align-items: end; margin-bottom: 44px; }
.section-head h2 { margin-bottom: 0; }
.section-head p, .large-text { color: var(--text); font-size: 18px; line-height: 1.65; }
.price-disclaimer { display: inline-flex; align-items: center; min-height: 38px; margin: -20px 0 26px; padding: 7px 13px; border: 1px solid #bfd0df; border-radius: 6px; background: #fff; color: var(--navy); font-size: 14px; font-weight: 700; }
.product-buy-section { padding: 42px 0 76px; background: #fff; border-bottom: 1px solid var(--line); }
.breadcrumbs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 28px; color: #66778b; font-size: 14px; }
.breadcrumbs a { color: var(--blue); font-weight: 600; }
.breadcrumbs a:hover { color: var(--navy); }
.product-buy-grid { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(380px, .92fr); gap: 58px; align-items: start; }
.product-visuals { min-width: 0; }
.product-main-image { position: relative; display: block; aspect-ratio: 4 / 3; overflow: hidden; border: 1px solid var(--line); border-radius: 8px; background: #edf2f6; box-shadow: var(--shadow-sm); }
.product-main-image > img { width: 100%; height: 100%; object-fit: cover; transition: opacity .16s ease; }
.product-main-image:hover > img { opacity: .94; }
.product-thumbnails { display: grid; grid-template-columns: repeat(5, minmax(74px, 1fr)); gap: 10px; margin-top: 12px; }
.product-thumbnail { position: relative; aspect-ratio: 4 / 3; padding: 0; overflow: hidden; border: 2px solid transparent; border-radius: 6px; background: #edf2f6; cursor: pointer; }
.product-thumbnail img { width: 100%; height: 100%; object-fit: cover; }
.product-thumbnail:hover { border-color: #94a8bb; }
.product-thumbnail.is-active { border-color: var(--orange); box-shadow: 0 0 0 1px var(--orange); }
.product-purchase { padding-top: 12px; }
.product-purchase h1 { max-width: 620px; margin-bottom: 18px; color: var(--navy); font-size: clamp(42px, 4.4vw, 64px); line-height: .98; }
.product-buy-price { margin-bottom: 22px; color: var(--blue); font-family: var(--display); font-size: clamp(31px, 3vw, 42px); font-weight: 700; line-height: 1; }
.product-buy-price .price-vat { font-size: 13px; }
.product-buy-lead { margin-bottom: 24px; color: var(--text); font-size: 18px; line-height: 1.65; }
.product-buy-highlights { display: grid; gap: 10px; padding: 20px 0; margin: 0 0 24px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); list-style: none; }
.product-buy-highlights li { display: grid; grid-template-columns: 22px 1fr; gap: 10px; color: var(--navy); font-weight: 600; }
.product-buy-highlights li::before { content: ""; width: 18px; height: 18px; margin-top: 3px; border-radius: 5px; background: var(--blue) var(--check-icon) center/11px no-repeat; }
.product-buy-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.product-buy-actions .button { flex: 1 1 190px; }
.product-buy-note { margin: 16px 0 0; color: #66778b; font-size: 14.5px; }
.product-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; }
.product-card { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow-sm); overflow: hidden; transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease; }
.product-card:hover { transform: translateY(-5px); box-shadow: var(--shadow-md); border-color: rgba(18,35,63,.18); }
.product-media { position: relative; display: block; aspect-ratio: 4/3; background: #e7edf3; overflow: hidden; }
.product-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease; }
.product-card:hover img { transform: scale(1.05); }
.badge { position: absolute; left: 14px; top: 14px; display: inline-flex; align-items: center; min-height: 30px; padding: 0 12px; background: var(--orange); color: var(--orange-ink); border-radius: 8px; font-family: var(--display); font-size: 14.5px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; box-shadow: 0 4px 14px rgba(9,17,31,.24); }
.product-body { display: flex; flex-direction: column; flex: 1; padding: 24px; }
.product-body h3 { margin-bottom: 8px; font-size: 27px; }
.product-body h3 a:hover { color: var(--blue); }
.product-body p { color: var(--text); font-size: 15.5px; }
.product-meta { display: flex; justify-content: space-between; align-items: center; gap: 14px; padding-top: 17px; margin-top: auto; border-top: 1px solid var(--line); }
.product-meta strong { color: var(--navy); font-family: var(--display); font-size: 23px; font-weight: 700; letter-spacing: .01em; }
.product-meta .price-vat { margin-top: 4px; font-family: Barlow, sans-serif; font-size: 11.5px; }
.product-meta a { color: var(--blue); font-weight: 700; font-size: 15px; white-space: nowrap; }
.product-meta a::after { content: "\2192"; display: inline-block; margin-left: 7px; transition: transform .18s ease; }
.product-meta a:hover { color: var(--navy); }
.product-meta a:hover::after { transform: translateX(4px); }
.product-gallery { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.product-gallery figure { margin: 0; background: #fff; border: 1px solid var(--line); border-radius: 14px; box-shadow: var(--shadow-sm); overflow: hidden; }
.product-gallery img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; background: #dfe7ef; }
.product-gallery figcaption { padding: 13px 17px; color: var(--navy); font-weight: 600; font-size: 14px; }
.split, .two-col, .product-detail, .contact-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, .85fr); gap: 52px; align-items: center; }
.contact-grid { align-items: start; }
.video-teaser { position: relative; min-height: 430px; border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow-md); background: #dbe3ec; }
.video-teaser img { width: 100%; height: 100%; min-height: 430px; object-fit: cover; }
.play-marker { position: absolute; left: 22px; bottom: 22px; display: inline-flex; align-items: center; gap: 11px; min-height: 56px; padding: 0 24px; border-radius: 999px; background: var(--orange); color: var(--orange-ink); font-family: var(--display); font-size: 17px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; box-shadow: 0 10px 30px rgba(9,17,31,.3); }
.play-marker::before { content: "\25B6"; font-size: 12px; }
.category-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.category-tile { position: relative; min-height: 210px; display: grid; align-content: end; padding: 22px; color: #fff; border-radius: var(--radius); overflow: hidden; background: linear-gradient(0deg, rgba(10,19,35,.88), rgba(10,19,35,.34) 55%, rgba(10,19,35,.08)), var(--tile-image) center/cover no-repeat; box-shadow: var(--shadow-sm); transition: transform .22s ease, box-shadow .22s ease; }
.category-tile:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); }
.category-tile strong { font-family: var(--display); font-size: 26px; font-weight: 700; line-height: 1.05; letter-spacing: .01em; text-transform: uppercase; }
.category-tile strong::after { content: "\2192"; margin-left: 8px; color: var(--orange-bright); }
.category-tile span { color: #d6e2ef; font-size: 14.5px; font-weight: 500; }
.check-list, .work-list { display: grid; gap: 13px; padding: 0; margin: 18px 0 0; list-style: none; }
.check-list li, .work-list li { display: grid; grid-template-columns: 30px 1fr; gap: 13px; color: var(--text); font-size: 16.5px; }
.check-list li::before, .work-list li::before { content: ""; width: 23px; height: 23px; margin-top: 2px; border-radius: 7px; background: var(--blue) var(--check-icon) center/13px no-repeat; }
.quote-card, .feature-card { background: #fff; border: 1px solid var(--line); border-radius: var(--radius); padding: 30px; box-shadow: var(--shadow-sm); }
.quote-card { display: grid; gap: 14px; align-content: start; }
.quote-card h2, .quote-card-dark h2 { font-size: clamp(26px, 2.6vw, 34px); margin-bottom: 0; }
.quote-card .button { justify-self: start; }
.feature-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.feature-card h3 { margin-bottom: 8px; font-size: 24px; }
.feature-card p { color: var(--text); margin: 0; font-size: 15.5px; }
.product-info-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.product-info-card { display: grid; align-content: start; gap: 12px; }
.mini-list { display: grid; gap: 8px; margin: 0; padding-left: 18px; color: var(--text); }
.mini-list li::marker { color: var(--orange); }
.video-embed { position: relative; aspect-ratio: 16 / 9; border-radius: var(--radius); overflow: hidden; background: #0d1728; box-shadow: var(--shadow-md); }
.video-embed iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.product-feature-media-section { background: #fff; }
.product-feature-media { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(340px, .88fr); gap: 54px; align-items: center; }
.product-feature-media figure { margin: 0; overflow: hidden; border-radius: 8px; background: #10151d; box-shadow: var(--shadow-md); }
.product-feature-media img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.product-feature-media .large-text { margin-bottom: 0; }
.definition-panel { display: grid; grid-template-columns: minmax(0, .92fr) minmax(360px, 1fr); gap: 34px; align-items: start; padding: 36px; background: #fff; border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow-sm); }
.definition-panel > div:first-child p:last-child { color: var(--text); margin-bottom: 0; }
.definition-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.definition-facts article { padding: 18px; background: var(--mist); border: 1px solid var(--line); border-radius: 12px; }
.definition-facts span { display: block; margin-bottom: 7px; color: var(--blue); font-family: var(--display); font-size: 13.5px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.definition-facts p { color: var(--text); margin: 0; font-size: 15px; }
.decision-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.decision-card { display: grid; align-content: start; gap: 12px; min-height: 270px; padding: 30px; background: #fff; border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow-sm); }
.decision-card span { color: var(--blue); font-family: var(--display); font-size: 14px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.decision-card h3 { margin: 0; font-size: 31px; }
.decision-card p { color: var(--text); margin: 0; }
.decision-card a { color: var(--blue); font-weight: 700; margin-top: auto; }
.decision-card a::after { content: "\2192"; display: inline-block; margin-left: 7px; transition: transform .18s ease; }
.decision-card a:hover::after { transform: translateX(4px); }
.decision-card-strong { background: var(--navy); border-color: var(--navy); }
.decision-card-strong h3, .decision-card-strong a { color: #fff; }
.decision-card-strong p { color: #c9d6e5; }
.decision-card-strong span { color: var(--orange-bright); }
.pathfinder-panel { margin-top: 28px; padding: 36px; background: #fff; border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow-sm); display: grid; grid-template-columns: minmax(240px, .6fr) minmax(0, 1fr); gap: 30px; align-items: start; }
.pathfinder-panel h2 { font-size: clamp(29px, 3.2vw, 44px); }
.pathfinder-panel p { color: var(--text); }
.pathfinder-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.pathfinder-grid article { padding: 18px; background: var(--mist); border: 1px solid var(--line); border-radius: 12px; }
.pathfinder-grid span { color: var(--blue); font-family: var(--display); font-size: 13.5px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.pathfinder-grid strong { display: block; margin: 6px 0; color: var(--navy); font-family: var(--display); font-size: 22px; font-weight: 700; line-height: 1.1; }
.pathfinder-grid p { margin: 0; font-size: 15px; }
.price-grid { grid-template-columns: repeat(3, 1fr); }
.price-card h3 { font-size: 25px; }
.offer-builder { margin-top: 22px; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 24px; align-items: center; padding: 32px; background: var(--navy); border-radius: var(--radius); color: #fff; box-shadow: var(--shadow-md); }
.offer-builder h2 { color: #fff; font-size: clamp(29px, 3vw, 42px); }
.offer-builder p { color: #c9d6e5; max-width: 760px; margin: 0; }
.trust-card-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; margin-top: 26px; }
.trust-card-grid article { padding: 22px; background: #fff; border: 1px solid var(--line); border-radius: 12px; }
.trust-card-grid h3 { margin-bottom: 6px; font-size: 22px; }
.trust-card-grid p { color: var(--text); margin: 0; font-size: 15px; }
.compact-grid { grid-template-columns: repeat(2, 1fr); margin: 24px 0; }
.customer-quote { margin: 24px 0 0; padding: 26px; background: var(--navy); color: #fff; border-left: 5px solid var(--orange); border-radius: 0 var(--radius) var(--radius) 0; box-shadow: var(--shadow-sm); }
.customer-quote p { color: #edf5fb; font-size: 18px; line-height: 1.6; margin-bottom: 12px; }
.customer-quote footer { color: var(--orange-bright); font-family: var(--display); font-size: 17px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.compact-panel, .compact-panel img { min-height: 460px; }
.guide-table td:first-child { color: var(--navy); font-weight: 600; white-space: nowrap; }
.guide-table a, .spec-table a { color: var(--blue); font-weight: 700; }
.rule-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.rule-card { background: #fff; border: 1px solid var(--line); border-radius: var(--radius); padding: 26px; box-shadow: var(--shadow-sm); }
.rule-card h3 { margin-bottom: 9px; font-size: 24px; }
.rule-card p { color: var(--text); margin: 0; font-size: 15px; }
.source-panel { margin-top: 18px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, .72fr); gap: 18px; padding: 26px; background: var(--navy); border-radius: var(--radius); color: #fff; }
.source-panel h3 { color: #fff; margin-bottom: 8px; font-size: 24px; }
.source-panel p { color: #c9d6e5; margin: 0; }
.source-panel a { color: #fff; font-weight: 700; border-bottom: 2px solid var(--orange); }
.image-split { align-items: start; }
.media-panel { margin: 0; min-height: 520px; background: #dfe7ef; border-radius: var(--radius); box-shadow: var(--shadow-md); overflow: hidden; }
.media-panel img { width: 100%; height: 100%; min-height: 520px; object-fit: cover; }
.usecase-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; margin-top: 26px; }
.usecase-list article, .attachment-grid article { background: #fff; border: 1px solid var(--line); border-radius: 12px; padding: 20px; }
.usecase-list h3, .attachment-grid h3 { margin-bottom: 6px; font-size: 21px; }
.usecase-list p, .attachment-grid p { color: var(--text); margin: 0; font-size: 15px; }
.buyer-grid { grid-template-columns: repeat(4, 1fr); }
.glossary-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.glossary-grid article { padding: 22px; background: #fff; border: 1px solid var(--line); border-radius: 12px; box-shadow: var(--shadow-sm); }
.glossary-grid h3 { margin-bottom: 8px; font-size: 22px; }
.glossary-grid p { color: var(--text); margin: 0; font-size: 15px; }
.brand-compare { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.brand-card { min-height: 100%; display: grid; grid-template-columns: minmax(0, .86fr) minmax(280px, 1fr); gap: 24px; align-items: stretch; background: #fff; border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow-sm); overflow: hidden; }
.brand-card img { width: 100%; height: 100%; min-height: 330px; object-fit: cover; }
.brand-card > div { padding: 26px; display: grid; align-content: center; gap: 10px; }
.brand-card p { color: var(--text); }
.muted-brand { grid-column: 1 / -1; grid-template-columns: 1fr; background: var(--navy); border-color: var(--navy); color: #fff; }
.muted-brand h3 { color: #fff; }
.muted-brand p { color: #c9d6e5; max-width: 820px; }
.attachment-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; margin: 24px 0; }
.inline-actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 8px; }
.offer-section { position: relative; background: var(--navy); color: #fff; scroll-margin-top: 118px; }
.offer-section::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 6px; background: repeating-linear-gradient(-45deg, var(--orange) 0 14px, transparent 14px 30px); opacity: .85; }
.offer-section h2, .offer-section .section-kicker { color: #fff; }
.offer-section .section-kicker { color: var(--orange-bright); }
.offer-section .large-text, .offer-section li { color: #c9d6e5; }
.offer-form-grid { display: grid; grid-template-columns: minmax(0, .82fr) minmax(420px, 1fr); gap: 44px; align-items: start; }
.direct-contact { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
.direct-contact a { color: #fff; font-weight: 700; border-bottom: 2px solid var(--orange); }
.quote-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; padding: 30px; background: #fff; color: var(--navy); border-radius: var(--radius); box-shadow: var(--shadow-lg); }
.quote-form label { display: grid; gap: 7px; font-weight: 600; font-size: 15px; }
.quote-form input, .quote-form select, .quote-form textarea { width: 100%; min-height: 50px; border: 1px solid #c7d3e0; border-radius: 10px; padding: 11px 13px; font: inherit; color: var(--navy); background: #fff; transition: border-color .15s ease, box-shadow .15s ease; }
.quote-form input:focus, .quote-form select:focus, .quote-form textarea:focus { outline: none; border-color: var(--blue); box-shadow: 0 0 0 4px rgba(20,112,159,.15); }
.quote-form textarea { min-height: 126px; resize: vertical; }
.quote-form .full { grid-column: 1 / -1; }
.quote-form [data-model-field][hidden], .quote-form [data-size-field][hidden] { display: none; }
.form-note { color: var(--text); font-size: 14px; font-weight: 400; margin: 0; }
.form-status { margin: 0; padding: 14px; border: 1px solid var(--line); background: var(--blue-soft); }
.quote-form button:disabled { opacity: .7; cursor: progress; transform: none; }
.contact-offer-section { padding: 58px 0 94px; background: var(--mist); }
.contact-offer-heading { max-width: 780px; margin-bottom: 34px; }
.contact-offer-heading h1 { margin-bottom: 15px; color: var(--navy); font-size: clamp(42px, 5vw, 66px); }
.contact-offer-heading > p:last-child { margin: 0; color: var(--text); font-size: 18px; }
.contact-offer-grid { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(310px, .7fr); gap: 42px; align-items: start; }
.contact-offer-grid > div > h2 { margin-bottom: 16px; }
.quote-product-context { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 4px 18px; align-items: center; padding: 18px 20px; border: 1px solid rgba(20,112,159,.28); border-left: 5px solid var(--blue); border-radius: 10px; background: var(--blue-soft); }
.quote-product-context[hidden] { display: none; }
.quote-product-context span { color: var(--text); font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.quote-product-context strong { grid-column: 1; color: var(--navy); font-size: 21px; }
.quote-product-context button { grid-column: 2; grid-row: 1 / span 2; border: 0; background: transparent; color: var(--blue); font: inherit; font-weight: 700; cursor: pointer; }
.quote-product-context button:hover { text-decoration: underline; }
.hp-field { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.image-stack { display: grid; grid-template-columns: 1fr; gap: 16px; }
.image-stack img { width: 100%; min-height: 240px; max-height: 330px; object-fit: cover; border-radius: 14px; box-shadow: var(--shadow-sm); background: #e6edf3; }
.quote-card-dark { background: var(--navy); border-color: var(--navy); color: #fff; }
.quote-card-dark h2 { color: #fff; }
.quote-card-dark p { color: #c9d6e5; }
.mobile-sticky-cta { display: none; }
.spec-table { width: 100%; border-collapse: separate; border-spacing: 0; background: #fff; border: 1px solid var(--line); border-radius: 14px; overflow: hidden; box-shadow: var(--shadow-sm); }
.spec-table th, .spec-table td { padding: 15px 18px; text-align: left; border-bottom: 1px solid var(--line); vertical-align: top; }
.spec-table tr:last-child th, .spec-table tr:last-child td { border-bottom: 0; }
.spec-table th { width: 38%; color: var(--navy); font-weight: 600; background: #f7fafc; }
.spec-table.wide th { width: auto; }
.model-table-wrap { overflow-x: auto; border-radius: 14px; }
.faq-list { display: grid; gap: 10px; }
.faq-list details { background: #fff; border: 1px solid var(--line); border-radius: 13px; padding: 0 20px; transition: border-color .18s ease, box-shadow .18s ease; }
.faq-list details[open] { border-color: rgba(20,112,159,.4); box-shadow: var(--shadow-sm); }
.faq-list summary { display: flex; justify-content: space-between; align-items: center; gap: 14px; padding: 16px 0; list-style: none; cursor: pointer; color: var(--navy); font-weight: 600; font-size: 16.5px; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after { content: "+"; flex: none; width: 28px; height: 28px; display: grid; place-items: center; border-radius: 9px; background: var(--blue-soft); color: var(--blue); font-size: 19px; font-weight: 600; transition: transform .2s ease; }
.faq-list details[open] summary::after { transform: rotate(45deg); }
.faq-list summary:hover { color: var(--blue); }
.faq-list p { color: var(--text); margin: 0; padding: 0 0 18px; }
.cta-band { position: relative; isolation: isolate; overflow: hidden; background: var(--navy); color: #fff; padding: 84px 0; }
.cta-band-background { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; }
.cta-band::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(13,23,42,.96), rgba(13,23,42,.8)); z-index: -1; pointer-events: none; }
.cta-band::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 6px; background: repeating-linear-gradient(-45deg, var(--orange) 0 14px, transparent 14px 30px); opacity: .85; }
.cta-inner { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 28px; align-items: center; }
.cta-band h2 { color: #fff; margin-bottom: 12px; }
.cta-band p { color: #ccd9e7; max-width: 720px; margin: 0; font-size: 18px; }
.cta-actions { display: flex; gap: 12px; flex-wrap: wrap; justify-content: flex-end; }
.contact-row { display: flex; justify-content: space-between; gap: 18px; align-items: center; padding: 16px 0; border-bottom: 1px solid var(--line); }
.contact-row span { color: var(--text); }
.contact-row strong { color: var(--navy); font-weight: 600; text-align: right; }
.site-footer { background: var(--navy-deep); color: #c2cfde; padding: 64px 0 30px; }
.footer-grid { display: grid; grid-template-columns: 1.4fr .8fr 1fr; gap: 40px; }
.footer-brand { display: inline-block; color: #fff; font-family: var(--display); font-weight: 700; font-size: 29px; letter-spacing: .02em; text-transform: uppercase; margin-bottom: 10px; }
.site-footer .footer-price-note { max-width: 430px; margin-top: 18px; color: #fff; font-weight: 700; }
.site-footer h2 { color: #8ba1ba; font-family: var(--display); font-size: 15px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; margin-bottom: 14px; }
.site-footer a, .site-footer span { display: block; color: #c2cfde; margin: 8px 0; }
.site-footer a:hover { color: #fff; }
.site-footer .footer-social-link { display: inline-flex; align-items: center; gap: 10px; color: #fff; font-weight: 600; }
.footer-social-link span { width: 30px; height: 30px; display: inline-grid; place-items: center; margin: 0; border-radius: 9px; background: #1877f2; color: #fff; }
.footer-bottom { display: flex; justify-content: space-between; gap: 20px; flex-wrap: wrap; border-top: 1px solid rgba(255,255,255,.12); margin-top: 38px; padding-top: 22px; font-size: 14px; color: #8ba1ba; }
.site-footer .footer-bottom-links { display: flex; gap: 18px; flex-wrap: wrap; margin: 0; }
.site-footer .footer-bottom-links a { display: inline-flex; margin: 0; }
@media (max-width: 1190px) {
  .main-nav, .header-actions .icon-link, .header-actions .button-primary:not(.menu-toggle) { display: none; }
  .menu-toggle { display: inline-flex; }
  .hero { min-height: auto; }
  .hero-inner, .section-head, .split, .two-col, .product-detail, .contact-grid, .contact-offer-grid, .cta-inner, .pathfinder-panel, .offer-builder, .offer-form-grid, .definition-panel, .source-panel { grid-template-columns: 1fr; }
  .hero-offer-branded { align-self: stretch; }
  .trust-grid, .commercial-strip-inner, .product-grid, .category-grid, .feature-grid, .product-info-grid, .decision-grid, .usecase-list, .buyer-grid, .attachment-grid, .brand-compare, .price-grid, .rule-grid, .glossary-grid, .product-gallery { grid-template-columns: repeat(2, 1fr); }
  .brand-card { grid-template-columns: 1fr; }
  .muted-brand { grid-column: auto; }
  .offer-builder .button { width: fit-content; }
  .product-buy-grid { grid-template-columns: minmax(0, 1fr) minmax(320px, .9fr); gap: 32px; }
  .product-purchase h1 { font-size: clamp(38px, 5vw, 52px); }
  .product-thumbnails { grid-template-columns: repeat(4, minmax(68px, 1fr)); }
}
@media (max-width: 820px) {
  .product-buy-grid { grid-template-columns: 1fr; }
  .product-purchase { padding-top: 0; }
  .product-feature-media { grid-template-columns: 1fr; gap: 30px; }
}
@media (max-width: 640px) {
  .loader-model-guide th, .loader-model-guide td { padding: 12px 10px; }
  .topbar-inner, .nav-inner, .section-inner, .footer-grid, .footer-bottom, .trust-grid, .cta-inner, .hero-inner { width: min(100% - 28px, 1180px); }
  body { padding-bottom: 84px; }
  .topbar-inner { justify-content: center; text-align: center; padding: 8px 0; }
  .topbar-inner > span:first-child { display: none; }
  .nav-inner { min-height: 70px; }
  .brand { min-width: 0; }
  .brand img { width: 54px; }
  .brand-wordmark { font-size: 18px; }
  .brand-wordmark span { display: none; }
  h1 { font-size: clamp(40px, 11vw, 48px); line-height: 1.03; }
  .hero-inner { padding: 64px 0 44px; gap: 26px; }
  .hero-lead, .section-head p, .large-text, .cta-band p { font-size: 16.5px; }
  .hero-actions .button, .hero-offer .button, .cta-actions, .cta-actions .button { width: 100%; }
  .hero-offer, .quote-card, .feature-card { padding: 22px; }
  .hero-offer-brand { margin-bottom: 8px; }
  .hero-offer-brand img { width: 132px; }
  .hero-offer-brand em { margin-bottom: 5px; font-size: 42px; }
  .section { padding: 64px 0; }
  .product-buy-section { padding: 24px 0 54px; }
  .breadcrumbs { margin-bottom: 20px; }
  .product-buy-grid { gap: 30px; }
  .product-purchase h1 { font-size: clamp(38px, 11vw, 48px); }
  .product-buy-lead { font-size: 16.5px; }
  .product-thumbnails { display: flex; gap: 9px; overflow-x: auto; padding: 0 0 8px; scroll-snap-type: x mandatory; }
  .product-thumbnail { flex: 0 0 94px; scroll-snap-align: start; }
  .product-buy-actions .button { width: 100%; flex-basis: 100%; }
  .section-head { margin-bottom: 30px; }
  .commercial-strip-inner { width: min(100% - 28px, 1180px); grid-template-columns: 1fr; }
  .commercial-strip-inner div { border: 0; border-bottom: 1px solid var(--line); padding: 18px 4px; }
  .commercial-strip-inner div:last-child { border: 0; }
  .trust-grid, .product-grid, .category-grid, .feature-grid, .product-info-grid, .decision-grid, .usecase-list, .buyer-grid, .attachment-grid, .brand-compare, .price-grid, .pathfinder-grid, .trust-card-grid, .compact-grid, .footer-grid, .definition-facts, .rule-grid, .glossary-grid, .product-gallery { grid-template-columns: 1fr; }
  .trust-grid div { padding: 20px; }
  .video-teaser, .video-teaser img { min-height: 330px; }
  .media-panel, .media-panel img { min-height: 330px; }
  .compact-panel, .compact-panel img { min-height: 330px; }
  .decision-card { min-height: auto; padding: 22px; }
  .pathfinder-panel, .offer-builder, .definition-panel { padding: 22px; }
  .offer-builder .button { width: 100%; }
  .brand-card img { min-height: 260px; }
  .inline-actions .button { width: 100%; }
  .quote-form { grid-template-columns: 1fr; padding: 22px; }
  .contact-offer-section { padding: 40px 0 68px; }
  .contact-offer-heading { margin-bottom: 26px; }
  .quote-product-context { grid-template-columns: 1fr; }
  .quote-product-context button { grid-column: 1; grid-row: auto; justify-self: start; padding: 5px 0 0; }
  .contact-row { display: grid; }
  .contact-row strong { text-align: left; }
  .mobile-sticky-cta { position: fixed; left: 12px; right: 12px; bottom: 12px; z-index: 40; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; padding: 10px; background: rgba(10,19,35,.86); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); border: 1px solid rgba(255,255,255,.14); border-radius: 18px; box-shadow: 0 18px 50px rgba(0,0,0,.35); padding-bottom: calc(10px + env(safe-area-inset-bottom, 0px)); }
  .mobile-sticky-cta a { min-height: 48px; display: grid; place-items: center; border-radius: 11px; background: linear-gradient(180deg, var(--orange-bright), var(--orange)); color: var(--orange-ink); font-weight: 700; font-size: 14px; text-transform: uppercase; letter-spacing: .06em; }
  .mobile-sticky-cta a + a { background: #fff; color: var(--navy); }
}
@media (max-width: 480px) {
  .brand-wordmark { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

/* L10 uses the original site's colours, fonts and purchase layout. */
.l10-page .section { padding: 76px 0; }
.l10-page [id] { scroll-margin-top: 110px; }
.l10-page .product-buy-section { padding-bottom: 42px; }
.l10-page .product-purchase h1 { font-size: clamp(44px, 4.1vw, 60px); }
.l10-page .product-main-image > img { object-fit: contain; }
.l10-page .product-thumbnails { grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 8px; }
.l10-gallery-caption { margin: 10px 0; min-height: 2.8em; color: var(--navy); font-size: 14px; line-height: 1.4; }
.l10-image-note { margin: 10px 0 0; color: #536477; font-size: 13.5px; line-height: 1.5; }
.l10-section-nav { border-bottom: 1px solid var(--line); background: var(--mist); }
.l10-section-nav > div { display: flex; flex-wrap: wrap; column-gap: 28px; row-gap: 0; }
.l10-section-nav a { display: inline-flex; align-items: center; min-height: 58px; color: var(--navy); font-size: 15px; font-weight: 600; }
.l10-section-nav a:hover, .l10-page .l10-text-link:hover { text-decoration: underline; text-underline-offset: 5px; }
.l10-heading { max-width: 790px; margin-bottom: 34px; }
.l10-heading > p:last-child { color: var(--text); font-size: 18px; }
.l10-use-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 34px; }
.l10-use-grid article { border-top: 2px solid var(--line); padding-top: 20px; }
.l10-use-grid h3 { margin: 0 0 12px; font-size: 28px; }
.l10-use-grid p { margin: 0; color: var(--text); }
.l10-equipment-grid, .l10-split { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 54px; align-items: center; }
.l10-page .l10-equipment-section { background: var(--navy); color: #fff; }
.l10-equipment-grid { align-items: start; gap: clamp(32px, 6vw, 84px); }
.l10-included, .l10-options { min-width: 0; padding: 0; border: 0; border-radius: 0; background: transparent; }
.l10-equipment-section .section-kicker { color: #f97b0c; }
.l10-equipment-section h2 { margin-bottom: 24px; color: #fff; font-size: clamp(32px, 3.3vw, 44px); text-transform: uppercase; }
.l10-equipment-list { list-style: none; padding: 0; margin: 0; }
.l10-equipment-list li { position: relative; padding: 8px 0 8px 25px; }
.l10-equipment-list li::before { content: '✓'; position: absolute; left: 0; top: 8px; color: #ff922e; font-weight: 700; }
.l10-options .l10-equipment-list li::before { content: '+'; }
.l10-equipment-list li:first-child { padding-top: 0; border-top: 0; }
.l10-equipment-list li:first-child::before { top: 0; }
.l10-equipment-list strong { display: block; color: #fff; font-size: 17px; }
.l10-equipment-list span { display: block; margin-top: 4px; color: #c8d0d6; font-size: 15px; line-height: 1.55; }
.l10-attachments { margin-top: 48px; padding-top: 32px; border-top: 1px solid rgba(255,255,255,.2); }
.l10-attachment-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 16px 28px; margin-bottom: 22px; }
.l10-equipment-section .l10-attachment-heading h2 { margin: 0; font-size: clamp(27px, 2.6vw, 34px); }
.l10-attachment-heading > a { flex-shrink: 0; color: #f97b0c; font-size: 16px; font-weight: 700; }
.l10-attachment-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 18px; }
.l10-attachment-card { display: block; min-width: 0; color: #fff; text-decoration: none; }
.l10-attachment-card > img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: contain; background: #fff; border-radius: 0; }
.l10-attachment-card > span { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; padding: 10px; color: #fff; background: var(--navy-2); font-family: var(--display); text-transform: uppercase; font-size: 21px; font-weight: 700; }
.l10-attachment-card > span > span { color: #f97b0c; }
.l10-attachment-card:hover > span, .l10-attachment-heading > a:hover { color: #f97b0c; text-decoration: underline; text-underline-offset: 4px; }
.l10-attachment-card:focus-visible, .l10-attachment-heading > a:focus-visible { outline: 3px solid #f97b0c; outline-offset: 5px; }
.l10-text-link { display: inline-block; margin-top: 22px; color: var(--blue); font-weight: 700; }
.l10-split p { color: var(--text); }
.l10-split p:last-child { margin-bottom: 0; }
.l10-video { position: relative; display: block; aspect-ratio: 16 / 9; overflow: hidden; border-radius: 8px; background: var(--navy); }
.l10-video > img { width: 100%; height: 100%; object-fit: cover; }
.l10-video::after { content: ''; position: absolute; inset: 0; background: linear-gradient(transparent 45%, rgba(10,19,35,.62)); pointer-events: none; }
.l10-play { position: absolute; bottom: 20px; left: 20px; z-index: 1; display: flex; align-items: center; gap: 12px; padding: 12px 20px; color: var(--orange-ink); background: var(--orange); border-radius: 6px; font-weight: 700; }
.l10-play > span { font-size: 20px; }
.l10-video-player { position: relative; aspect-ratio: 16 / 9; background: var(--navy); border-radius: 8px; overflow: hidden; }
.l10-video-player iframe { width: 100%; height: 100%; border: 0; }
.l10-photo { margin: 0; min-width: 0; }
.l10-photo > a { display: block; background: #e7edf3; overflow: hidden; border-radius: 8px; }
.l10-photo img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
.l10-photo figcaption { margin-top: 12px; color: #536477; font-size: 14px; line-height: 1.5; }
.l10-portrait { max-width: 420px; justify-self: center; width: 100%; }
.l10-portrait img { aspect-ratio: 3 / 4; object-fit: contain; }
.l10-controls { align-items: start; }
.l10-controls-media { display: grid; gap: 22px; width: 100%; max-width: 420px; justify-self: center; }
.l10-night-photo { display: grid; grid-template-columns: 130px minmax(0, 1fr); gap: 18px; align-items: center; padding: 16px; background: var(--mist); border-radius: 8px; }
.l10-night-photo img { aspect-ratio: 3 / 4; object-fit: contain; }
.l10-night-photo figcaption { margin: 0; }
.l10-controls h2 { font-size: clamp(34px, 3.3vw, 46px); }
.l10-controls-list { margin: 24px 0; }
.l10-controls-list > div { padding: 12px 0; border-top: 1px solid var(--line); }
.l10-controls-list dt { font-weight: 700; color: var(--navy); }
.l10-controls-list dd { margin: 4px 0 0; color: var(--text); font-size: 16px; }
.l10-function-note { padding: 20px 24px; border-left: 3px solid var(--orange); background: var(--mist); }
.l10-function-note h3 { font-size: 25px; }
.l10-function-note p { font-size: 15.5px; }
.l10-terrain h3 { margin-top: 26px; }
.l10-dimensions { display: grid; grid-template-columns: repeat(4, 1fr); padding: 22px 0; margin: 0 0 42px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.l10-dimensions > div { padding: 0 22px; border-left: 1px solid var(--line); }
.l10-dimensions > div:first-child { padding-left: 0; border-left: 0; }
.l10-dimensions dt { color: var(--text); font-size: 15px; }
.l10-dimensions dd { margin: 4px 0 0; color: var(--navy); font-family: var(--display); font-weight: 700; font-size: clamp(32px, 3.4vw, 44px); line-height: 1.2; }
.l10-dimensions dd span { font-size: 22px; }
.l10-specs-grid { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, .8fr); gap: 54px; align-items: start; }
.l10-buying-notes { padding: 26px; background: var(--mist); border-radius: 8px; }
.l10-buying-notes h3 { margin-top: 30px; font-size: 25px; }
.l10-buying-notes h3:first-child { margin-top: 0; }
.l10-buying-notes p { color: var(--text); font-size: 16px; }
.l10-buying-notes p:last-child { margin-bottom: 0; }
.l10-buying-notes a, .l10-comparison-row a { color: var(--blue); text-decoration: underline; text-underline-offset: 4px; }
.l10-comparison { border: 1px solid var(--line); border-radius: 8px; overflow: hidden; background: #fff; }
.l10-comparison-row { display: grid; grid-template-columns: 190px minmax(0, 1fr); gap: 28px; padding: 25px 30px; border-top: 1px solid var(--line); }
.l10-comparison-row:first-child { border-top: 0; }
.l10-comparison-row > div:first-child { color: var(--navy); font-size: 21px; font-weight: 700; }
.l10-comparison-row span { display: block; margin-top: 6px; color: #536477; font-size: 13px; font-weight: 400; }
.l10-comparison-row h3 { font-family: Barlow, sans-serif; text-transform: none; font-size: 17px; margin: 0 0 6px; }
.l10-comparison-row p { margin: 0; color: var(--text); font-size: 16px; }
.l10-current { background: #fff7ed; border-left: 4px solid var(--orange); padding-left: 26px; }
.l10-faq-grid { display: grid; grid-template-columns: minmax(0, .65fr) minmax(0, 1.2fr); gap: 54px; align-items: start; }
.l10-faq-grid > div > p:last-child { color: var(--text); }
.l10-offer { padding: 66px 0; color: #fff; background: var(--navy); }
.l10-offer h2 { color: #fff; }
.l10-offer .section-kicker { color: var(--orange-bright); }
.l10-offer p, .l10-offer .price-vat { color: #cfdae7; }
.l10-offer-actions { max-width: 390px; width: 100%; justify-self: end; }
.l10-offer .l10-offer-price { color: #fff; font-family: var(--display); font-weight: 700; font-size: 40px; line-height: 1.1; margin-bottom: 20px; }
.l10-offer-price .price-vat { font-size: 13px; }
.l10-offer-actions > .button { display: flex; width: 100%; }
.l10-phone { display: block; text-align: center; margin: 18px 0; font-weight: 600; }
.l10-offer-actions > p:last-child { font-size: 14px; text-align: center; }
@media (max-width: 1000px) {
  .l10-equipment-grid, .l10-split, .l10-specs-grid, .l10-faq-grid { gap: 30px; }
  .l10-page .product-buy-grid { gap: 30px; }
  .l10-page .product-purchase h1 { font-size: 46px; }
  .l10-attachment-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 820px) {
  .l10-page .product-purchase.machine-buybox { display: contents; }
  .l10-buy-heading { grid-row: 1; }
  .l10-page .product-visuals { grid-row: 2; }
  .l10-buy-details { grid-row: 3; }
  .l10-buy-heading .product-buy-price { margin-bottom: 0; }
  .l10-equipment-grid, .l10-split, .l10-specs-grid, .l10-faq-grid { grid-template-columns: 1fr; }
  .l10-use-grid { grid-template-columns: 1fr; gap: 24px; }
  .l10-page .product-purchase h1 { font-size: 44px; }
  .l10-portrait { max-width: 360px; }
  .l10-controls-media { order: 2; }
  .l10-terrain > figure { order: 2; }
  .l10-offer-actions { justify-self: start; max-width: none; }
  .l10-offer-actions > .button { max-width: 390px; }
  .l10-phone, .l10-offer-actions > p:last-child { text-align: left; }
}
@media (max-width: 640px) {
  .l10-page .product-purchase h1 { font-size: 38px; margin-bottom: 12px; }
  .l10-buy-heading .product-buy-price { font-size: 30px; }
  .l10-buy-heading .section-kicker { font-size: 12px; margin-bottom: 12px; }
  .l10-page .section { padding: 50px 0; }
  .l10-page [id] { scroll-margin-top: 90px; }
  .l10-page .product-buy-section { padding-bottom: 30px; }
  .l10-page .product-thumbnails { display: flex; }
  .l10-page .product-thumbnail { flex-basis: 76px; }
  .l10-gallery-caption { min-height: 2.8em; }
  .l10-section-nav > div { column-gap: 20px; padding: 8px 0; }
  .l10-section-nav a { min-height: 42px; font-size: 14px; }
  .l10-heading { margin-bottom: 25px; }
  .l10-heading > p:last-child { font-size: 16.5px; }
  .l10-attachments { margin-top: 34px; padding-top: 26px; }
  .l10-attachment-heading { flex-wrap: wrap; }
  .l10-attachment-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 16px; }
  .l10-attachment-card > span { margin-top: 9px; font-size: 16px; }
  .l10-function-note { padding: 18px; }
  .l10-dimensions { grid-template-columns: repeat(2, 1fr); gap: 20px 0; }
  .l10-dimensions > div:nth-child(3) { padding-left: 0; border-left: 0; }
  .l10-dimensions dd { font-size: 35px; }
  .l10-comparison-row { grid-template-columns: 1fr; gap: 12px; padding: 22px; }
  .l10-current { padding-left: 18px; }
  .l10-specs-grid .spec-table th, .l10-specs-grid .spec-table td { padding: 12px 10px; font-size: 14px; }
  .l10-offer { padding: 48px 0; }
}

.model-page .machine-buy-heading, .model-page .machine-buy-summary { min-width: 0; }
.machine-work-list { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,220px),1fr)); gap: 16px; list-style: none; padding: 0; margin: 24px 0 0; }
.machine-work-list li { padding: 18px 20px; border-left: 3px solid var(--orange); background: #f1f3f5; font-size: 18px; }
.model-page .product-main-image > img { object-fit: contain; }
.model-page .product-thumbnails { grid-template-columns: repeat(6,minmax(0,1fr)); }
.model-caption, .model-feature figcaption { color: #526171; font-size: 14px; line-height: 1.5; margin-top: 10px; }
.model-jump { border-bottom: 1px solid var(--line); background: #fff; }
.model-jump .section-inner { display: flex; flex-wrap: wrap; gap: 8px 26px; padding-block: 18px; }
.model-jump a { font-weight: 600; padding-block: 5px; text-decoration: none; }
.model-feature { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 64px; align-items: center; }
.model-feature figure { margin: 0; min-width: 0; }
.model-feature figure img { width: 100%; height: auto; max-height: 510px; aspect-ratio: 4/3; object-fit: contain; background: #edf1f4; border-radius: 8px; }
.model-feature-reverse figure { order: 2; }
.model-feature .large-text { font-size: 21px; }
.model-specs { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); gap: 64px; align-items: start; }
.model-specs .spec-table { margin: 0; }
.model-reading { max-width: 780px; font-size: 20px; }
.model-related { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,260px),1fr)); gap: 24px; margin-top: 30px; }
.model-related article { background: #fff; border: 1px solid var(--line); border-radius: 8px; overflow: hidden; }
.model-related img { width: 100%; height: auto; aspect-ratio: 4/3; object-fit: contain; background: #edf1f4; }
.model-related article > div { padding: 24px; }
.model-related h3 { margin: 0 0 12px; }
.model-faq { display: grid; grid-template-columns: minmax(0,.7fr) minmax(0,1.3fr); gap: 64px; }
.model-video { display: block; position: relative; aspect-ratio:16/9; overflow:hidden; border-radius:8px; background:var(--navy); }
.model-video img { width:100%; height:100%; object-fit:cover; opacity:.75; }
.model-video span { position:absolute; inset:50% auto auto 50%; transform:translate(-50%,-50%); background:var(--orange); color:#111; padding:16px 24px; font-weight:700; border-radius:6px; white-space:nowrap; }
.model-page .quote-card .text-link { display:block; margin-top:16px; }
@media(max-width:900px) {
  .model-page .product-buy-grid { grid-template-columns: 1fr; gap: 24px; }
  .model-page .machine-buybox { display: contents; }
  .model-page .machine-buy-heading { grid-row: 1; }
  .model-page .product-visuals { grid-row: 2; }
  .model-page .machine-buy-summary { grid-row: 3; }
  .model-page .machine-buy-heading .product-buy-price { margin-bottom: 0; }
  .model-feature,.model-specs,.model-faq { grid-template-columns:1fr; gap:28px; }
  .model-feature-reverse figure { order:0; }
  .model-feature figure img { max-height:520px; }
}
@media(max-width:650px) { .model-page .product-thumbnails { display:flex; } .model-jump .section-inner { gap:6px 18px; } .model-feature .large-text,.model-reading { font-size:18px; } }

.youtube-choice { width:min(540px,calc(100vw - 32px)); max-height:calc(100dvh - 32px); overflow:auto; padding:28px; border:2px solid var(--navy); border-radius:8px; color:#102b50; background:#fff; }
.youtube-choice::backdrop { background:rgba(9,26,49,.76); }
.youtube-choice h2 { margin:0 0 16px; font-size:28px; }
.youtube-choice p { margin:0 0 16px; font-size:16px; line-height:1.6; }
.youtube-choice a { color:#164c83; text-decoration:underline; }
.youtube-choice-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:22px; }
.youtube-choice-actions .button { white-space:normal; min-height:48px; }
.youtube-choice .button-secondary, .youtube-session > .youtube-close { color:#102b50; background:#fff; border:2px solid #102b50; }
.youtube-session { min-width:0; }
.youtube-session > .youtube-close { margin-top:12px; }
@media(max-width:480px) { .youtube-choice { padding:22px; } .youtube-choice-actions .button { width:100%; } }

.hero { background:var(--navy); }
.hero::before { content:''; position:absolute; inset:0; z-index:1; background:linear-gradient(80deg,rgba(7,13,24,.94) 6%,rgba(7,13,24,.7) 44%,rgba(8,15,27,.26) 74%,rgba(8,15,27,.14)); pointer-events:none; }
.hero-background { position:absolute; inset:0; z-index:0; width:100%; height:100%; object-fit:cover; }
.hero { isolation:isolate; }
.editorial-heading { padding:46px 0 52px; background:#f0f3f6; border-bottom:1px solid var(--line); }
.editorial-heading h1 { max-width:980px; font-size:clamp(40px,4.6vw,68px); margin-bottom:20px; }
.editorial-heading > div > p:last-child { max-width:780px; margin:0; font-size:21px; }
.editorial-heading .breadcrumbs { margin-bottom:25px; }
.editorial-photo { margin:0; min-width:0; }
.editorial-photo img { width:100%; height:auto; max-height:540px; object-fit:contain; border-radius:8px; }
.editorial-photo figcaption { font-size:14px; color:#526171; margin-top:10px; line-height:1.5; }
.editorial-trust { display:grid; grid-template-columns:repeat(3,1fr); gap:40px; }
.editorial-trust span { font-size:16px; }
.editorial-trust strong { display:block; margin-bottom:6px; font-size:19px; }
.category-choices { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px; }
.category-choices-two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.category-choices article { background:white; border:1px solid var(--line); border-radius:8px; overflow:hidden; }
.category-choices img { width:100%; height:auto; aspect-ratio:4/3; object-fit:contain; background:#e8edf2; }
.category-choices article > div { padding:28px; }
.category-choices h2 { font-size:34px; }
.feature-card h2 { font-size:30px; }
.guide-feature { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:60px; align-items:center; }
.guide-feature figure { padding:10px; background:white; border-radius:8px; }
.editorial-reading { max-width:820px; margin-inline:auto; }
.editorial-reading p,.editorial-reading li { font-size:19px; line-height:1.75; }
.editorial-reading h3 { margin-top:36px; }
.editorial-reading .guide-byline { font-size:14px; color:#526171; }
.guide-note { background:#fff4e4; border-left:4px solid var(--orange); padding:22px; line-height:1.7; margin-top:28px; }
.comparison-note { max-width:920px; color:#526171; font-size:15px; margin-top:18px; }
.range-links { display:flex; flex-wrap:wrap; gap:12px; margin-bottom:18px; }
.range-links a { padding:10px 18px; border:1px solid var(--line); background:#fff; border-radius:5px; font-weight:600; text-decoration:none; }
.catalogue-subtitle { margin-top:52px; }
.spec-table caption { text-align:left; font-weight:600; padding:0 0 15px; color:var(--navy); font-size:18px; }
.spec-table thead th { background:var(--navy); color:#fff; }
.model-table-wrap:focus-visible { outline:3px solid var(--orange); outline-offset:4px; }
.editorial-price { font-size:30px; font-weight:700; }
.price-incl { display:block; font-size:14px; font-weight:400; color:#526171; margin-top:5px; line-height:1.5; }
.hero-offer .price-incl { color:#d5e0ec; }
.model-page [id],.section[id],.catalogue-subtitle { scroll-margin-top:110px; }
@media(max-width:900px) { .guide-feature { grid-template-columns:1fr; gap:28px; } .category-choices { gap:18px; } .category-choices article > div { padding:20px; } }
@media(max-width:650px) { .editorial-heading { padding:28px 0 36px; } .editorial-heading > div > p:last-child { font-size:18px; } .editorial-trust,.category-choices { grid-template-columns:1fr; gap:22px; } .editorial-reading p,.editorial-reading li { font-size:17px; } .editorial-trust { gap:20px; } .guide-feature { gap:28px; } .hero-inner { padding-top:50px; padding-bottom:45px; } }

/* Shared machine catalogue and buying layout. */
.site-header { background: var(--navy); border-bottom: 1px solid #355479; backdrop-filter: none; -webkit-backdrop-filter: none; }
.site-header[data-scrolled="true"] { box-shadow: 0 2px 8px #0002; }
.brand-wordmark, .main-nav { color: #fff; }
/* Show the emblem without the embedded caption; keep the source image intact. */
.brand img { width: 84px; height: auto; aspect-ratio: 57 / 40; object-fit: cover; object-position: center top; background: transparent; padding: 0; filter: brightness(1.6); }
.brand-wordmark span { color: #bec7cc; }
.main-nav a:hover { color: var(--orange-bright); }
.nav-submenu { color: var(--ink); border-radius: 2px; }
.nav-submenu a { border-radius: 0; }
.nav-submenu a:hover { color: var(--ink); }
.mobile-panel { max-height: calc(100dvh - 86px); overflow-y: auto; overscroll-behavior: contain; }
body:has(.mobile-panel[data-open="true"]) .mobile-sticky-cta { display: none; }
.header-actions .button-primary { color: #fff; background: var(--navy-2); border: 1px solid #6584a6; }
.button, .icon-link, .facebook-link { border-radius: 2px; }
.button-primary, .button-accent, .button-primary:hover, .button-accent:hover { box-shadow: none; transform: none; }
.button-accent { background: var(--orange); }
.button-accent:hover { background: #ff9029; }
.hero-offer { background: rgba(16,43,80,.93); box-shadow: none; }
.product-card, .model-related article { border-radius: 0; box-shadow: none; }
.product-card:hover { transform: none; box-shadow: none; border-color: #7b858c; }
.product-card:hover img { transform: none; }
.machine-card .product-media { background: #e8ecef; }
.machine-card .badge { top: 12px; right: 12px; left: auto; color: #fff; background: var(--navy); border-radius: 0; box-shadow: none; font-size: 17px; }
.machine-brand { position: absolute; left: 0; top: 0; padding: 7px 13px; color: #171c20; background: #ffd21c; font-family: var(--display); font-weight: 700; font-size: 18px; letter-spacing: .08em; text-transform: uppercase; }
.machine-card .product-body { padding: 23px 22px; }
.machine-card h3 { font-size: 31px; text-transform: uppercase; margin-bottom: 14px; }
.machine-card .machine-card-lead { flex: 1; font-size: 17px; line-height: 1.55; margin-bottom: 22px; }
.machine-card-facts { display: grid; grid-template-columns: repeat(var(--fact-count,3),minmax(0,1fr)); min-height: 96px; margin: 0 0 19px; border-block: 1px solid var(--line); }
.machine-card-facts > div { padding: 12px 8px; min-width: 0; border-left: 1px solid var(--line); }
.machine-card-facts > div:first-child { padding-left: 0; border-left: 0; }
.machine-card-facts > div:last-child { padding-right: 0; }
.machine-card-facts dt { color: #59666e; font-size: 12px; text-transform: uppercase; letter-spacing: .025em; line-height: 1.25; margin-bottom: 5px; }
.machine-card-facts dd { margin: 0; font-family: var(--display); font-size: 20px; font-weight: 700; line-height: 1.2; }
.fact-measure { white-space: nowrap; }
.machine-card-price { color: var(--ink); font-family: var(--display); font-weight: 700; font-size: 28px; line-height: 1.2; min-height: 63px; margin: 0 0 22px; }
.machine-card-price .price-vat { display: inline; text-transform: none; font-size: 13px; font-weight: 400; letter-spacing: 0; margin-left: 6px; }
.machine-card-price .price-incl { display: block; color: #59666e; font-family: Barlow,sans-serif; font-weight: 400; font-size: 13px; margin-top: 5px; }
.price-option { display: block; scroll-margin-top: 120px; }
.price-option + .price-option { border-top: 1px solid var(--line); padding-top: 14px; margin-top: 14px; }
.price-option-label { display: block; font-family: Barlow,sans-serif; font-size: 16px; font-weight: 600; line-height: 1.4; margin-bottom: 4px; text-transform: none; letter-spacing: 0; }
.price-amount { white-space: nowrap; }
.price-option-link { display: block; width: fit-content; max-width: 100%; font-family: Barlow,sans-serif; font-size: 16px; font-weight: 600; line-height: 1.5; margin-top: 9px; text-decoration: underline; text-underline-offset: 4px; }
.price-option-link:hover { color: #b44d00; }
.price-content { display: block; font-family: Barlow,sans-serif; font-size: 14px; font-weight: 500; line-height: 1.45; margin-top: 12px; text-transform: none; letter-spacing: 0; }
.price-basis { color: #526171; font-size: 14px; line-height: 1.5; margin: 12px 0 20px; }
#motorval { scroll-margin-top: 120px; }
.machine-card-action { align-self: stretch; padding-inline: 12px; font-size: 13px; letter-spacing: .025em; }
.machine-buybox { padding: 28px; background: #fff; border: 1px solid var(--line); border-top: 4px solid var(--orange); }
.machine-buybox h1 { font-size: clamp(38px,3.4vw,51px); margin-bottom: 18px; }
.l10-page .product-purchase.machine-buybox h1 { font-size: clamp(38px,3.2vw,48px); }
.machine-buybox .product-buy-price { color: var(--ink); margin-bottom: 20px; }
.machine-buybox .product-buy-lead { font-size: 18px; line-height: 1.5; margin-bottom: 20px; }
.machine-buybox .product-buy-highlights { padding: 17px 0; gap: 7px; margin-bottom: 18px; font-size: 16px; }
.machine-buybox .product-buy-highlights li::before { border-radius: 0; background-color: var(--navy); }
.machine-included { margin-bottom: 20px; }
.machine-included h2, .machine-buy-label { font-family: var(--display); font-weight: 700; text-transform: uppercase; font-size: 22px; line-height: 1.2; margin: 0 0 10px; color: var(--ink); }
.machine-included ul, .machine-options ul { padding: 0; margin: 0; list-style: none; }
.machine-included li { padding-left: 22px; position: relative; margin: 5px 0; line-height: 1.45; }
.machine-included li::before { content: '✓'; position: absolute; left: 0; color: #a94700; font-weight: 700; }
.machine-options { border-top: 1px solid var(--line); padding-top: 15px; margin: 0 0 20px; font-size: 16px; line-height: 1.5; color: var(--text); }
.machine-options li { margin: 4px 0; }
.machine-buy-service, .machine-buybox .product-buy-note { font-size: 14px; color: #59666e; line-height: 1.5; margin: 16px 0 0; }
.machine-buybox .product-buy-note a { text-decoration: underline; text-underline-offset: 3px; }
.product-buy-section { background: var(--mist); }
.product-main-image, .product-thumbnail, .product-main-image .badge, .model-feature figure img, .l10-photo > a, .l10-photo img { border-radius: 0; box-shadow: none; }
.product-buy-grid { gap: 36px; }
.machine-facts { background: var(--navy); color: #fff; }
.machine-facts dl { display: flex; flex-wrap: wrap; margin: 0; }
.machine-facts dl > div { flex: 1 1 0; padding: 27px 24px; min-width: 0; border-left: 1px solid #456184; }
.machine-facts dl > div:first-child { border-left: 0; padding-left: 0; }
.machine-facts dt { color: #d5dce0; font-size: 14px; text-transform: uppercase; letter-spacing: .055em; margin-bottom: 7px; }
.machine-facts dd { color: #ff922e; font-family: var(--display); font-size: clamp(26px,2.7vw,37px); font-weight: 700; line-height: 1.1; margin: 0; overflow-wrap: anywhere; }
.model-jump a, .l10-jump a { text-underline-offset: 5px; }
.model-jump a:hover, .l10-jump a:hover { text-decoration: underline; text-decoration-color: var(--orange); }
.mobile-sticky-cta, .mobile-sticky-cta a { border-radius: 2px; box-shadow: none; }
/* Full-width chapter boundaries, shared by all product pages. */
.model-page, .l10-page { --chapter-tint: #e4edf7; --chapter-line: #c1d0e2; }
:is(.model-page, .l10-page) .section { padding-block: 76px; background: #fff; border-top: 1px solid var(--chapter-line); }
:is(.model-page, .l10-page) .section-muted { background: var(--chapter-tint); }
:is(.model-page, .l10-page) .section-kicker { margin-bottom: 16px; }
:is(.model-page, .l10-page) .section h2 { margin-bottom: 24px; }
:is(.model-page, .l10-page) [id] { scroll-margin-top: 110px; }
.model-jump, .l10-section-nav { background: #fff; border-bottom: 2px solid var(--chapter-line); }
.model-jump .section-inner, .l10-section-nav .section-inner { gap: 0 28px; padding-block: 0; }
.model-jump a, .l10-section-nav a { display: inline-flex; align-items: center; min-height: 60px; padding-block: 12px; color: var(--navy); }
.model-jump a:hover, .l10-section-nav a:hover { text-decoration: underline; text-decoration-color: var(--orange); text-underline-offset: 6px; }
.model-page #utrustning, .l10-page .l10-equipment-section { background: var(--navy); color: #fff; border-top: 4px solid var(--orange); }
.model-page #utrustning h2, .model-page #utrustning h3 { color: #fff; }
.model-page #utrustning .section-kicker { color: var(--orange-bright); }
.model-page #utrustning .work-list, .model-page #utrustning .work-list li { color: #e1eaf5; }
.model-page #utrustning .work-list li::before { border-radius: 2px; background-color: var(--navy-2); }
.model-page #utrustning .quote-card { background: var(--navy-2); color: #e1eaf5; border: 1px solid #52739a; border-radius: 0; box-shadow: none; }
.model-page #utrustning .quote-card h2 { font-size: clamp(28px,2.6vw,36px); margin-bottom: 0; }
.model-page #utrustning .text-link { color: #fff; text-decoration: underline; text-decoration-color: var(--orange); text-underline-offset: 5px; }
.model-page #utrustning .text-link:hover { color: var(--orange-bright); }
:is(.model-page, .l10-page) #specifikationer { border-top: 4px solid var(--navy); }
:is(.model-page, .l10-page) .spec-table { border-color: var(--chapter-line); border-radius: 0; box-shadow: none; }
.l10-comparison, .l10-buying-notes, .l10-night-photo { border-radius: 0; }
@media(max-width:640px) {
 :is(.model-page, .l10-page) .section { padding-block: 48px; }
 :is(.model-page, .l10-page) .section h2 { margin-bottom: 20px; }
 :is(.model-page, .l10-page) [id] { scroll-margin-top: 90px; }
 .model-jump .section-inner, .l10-section-nav .section-inner { gap: 0 20px; padding-block: 8px; }
 .model-jump a, .l10-section-nav a { min-height: 44px; padding-block: 8px; font-size: 14px; }
}
@media(min-width:1280px) {
 .topbar-inner,.nav-inner,.section-inner,.footer-grid,.footer-bottom,.trust-grid,.cta-inner { width: min(1320px,calc(100% - 64px)); }
 .product-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 22px; }
 .attachment-product-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
 .main-nav { gap: 16px; }
}
@media(max-width:900px) {
 .machine-buybox { border: 0; padding: 0; background: transparent; }
 .model-page .machine-buy-summary { padding: 24px; background: #fff; border: 1px solid var(--line); border-top: 3px solid var(--orange); }
 .machine-facts dl > div { padding: 22px 18px; }
}
@media(max-width:820px) {
 .l10-page .machine-buy-summary { padding: 24px; background: #fff; border: 1px solid var(--line); border-top: 3px solid var(--orange); }
}
@media(max-width:640px) {
 .brand { gap: 8px; }
 .brand img { width: 50px; }
 .brand-wordmark { display: grid; font-size: 17px; }
 .header-actions .facebook-link { display: none; }
 .mobile-panel { max-height: calc(100dvh - 70px); }
 .machine-card .product-body { padding: 22px; }
 .machine-buy-summary, .model-page .machine-buy-summary, .l10-page .machine-buy-summary { padding: 20px; }
 .machine-facts dl { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
 .machine-facts dl > div { padding: 20px 12px; border-bottom: 1px solid #456184; }
 .machine-facts dl > div:nth-child(odd) { padding-left: 0; border-left: 0; }
 .machine-facts dt { font-size: 12px; }
 .machine-facts dd { font-size: 27px; }
}

.mobile-model-overview, .mobile-page-menu { display: none; }
@media(max-width:640px) {
 html { scroll-padding-top: 0; }
 #main { scroll-margin-top: 90px; }
 .mobile-model-overview { display: block; margin: 0 0 24px; background: #fff; border: 1px solid #a8bad0; color: var(--navy); }
 .mobile-model-overview > summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 16px; min-height: 56px; font-weight: 600; cursor: pointer; list-style: none; }
 .mobile-model-overview > summary::-webkit-details-marker, .mobile-page-menu > summary::-webkit-details-marker { display: none; }
 .mobile-model-overview > summary small { display: block; font-size: 13px; font-weight: 400; margin-top: 3px; }
 .mobile-model-overview > summary::after { content: '+'; font-size: 24px; }
 .mobile-model-overview[open] > summary::after { content: '−'; }
 .mobile-model-list { border-top: 1px solid #a8bad0; }
 .mobile-model-list a { display: block; padding: 12px 16px; text-decoration: none; color: var(--navy); border-bottom: 1px solid #d3dfec; line-height: 1.45; }
 .mobile-model-list a:last-child { border-bottom: 0; }
 .mobile-model-list strong { display: block; font-size: 17px; }
 .mobile-model-price { display: block; font-size: 15px; margin-top: 4px; font-weight: 500; }
 .mobile-model-price small { font-size: 12px; font-weight: 400; }
 .mobile-model-incl, .mobile-model-option { display: block; }
 .mobile-model-incl { color: #526171; }
 .mobile-model-option + .mobile-model-option { margin-top: 7px; }
 .mobile-sticky-cta:has(.mobile-page-menu) { grid-template-columns: 1.15fr 1fr 1fr; gap: 6px; }
 .mobile-page-menu { display: block; min-width: 0; }
 .mobile-page-menu > summary { display: flex; align-items: center; justify-content: center; min-height: 48px; padding: 8px 4px; border: 1px solid #7a94b4; color: #fff; font-size: 14px; font-weight: 600; list-style: none; cursor: pointer; }
 .mobile-page-menu[open] > summary { background: #fff; color: var(--navy); }
 .mobile-page-close-label, .mobile-page-menu[open] .mobile-page-open-label { display: none; }
 .mobile-page-menu[open] .mobile-page-close-label { display: inline; }
 .mobile-page-panel { position: absolute; bottom: calc(100% + 8px); left: 0; right: 0; max-height: calc(100dvh - 210px - env(safe-area-inset-bottom, 0px)); overflow-y: auto; overscroll-behavior: contain; border: 1px solid #9bb0ca; background: #fff; color: var(--navy); padding: 14px; box-shadow: 0 8px 32px #091a3133; }
 .mobile-page-panel-heading { display: flex; gap: 12px; align-items: center; justify-content: space-between; margin-bottom: 10px; }
 .mobile-page-panel-heading > strong { font-size: 18px; }
 .mobile-page-panel-heading button { background: transparent; border: 1px solid #a8bad0; color: var(--navy); min-height: 44px; padding: 8px 10px; font: inherit; font-size: 14px; cursor: pointer; }
 .mobile-page-panel .mobile-model-overview { margin-bottom: 12px; }
 .mobile-section-links { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
 .mobile-sticky-cta .mobile-page-panel a { display: block; place-items: normal; min-height: 44px; padding: 12px; background: #eff4fa; color: var(--navy); border-radius: 0; text-align: left; text-transform: none; letter-spacing: 0; font-size: 14px; font-weight: 500; line-height: 1.45; text-decoration: none; }
 .mobile-sticky-cta .mobile-page-panel .mobile-model-list a { background: #fff; }
 .mobile-sticky-cta .mobile-page-panel a:hover, .mobile-model-list a:hover { background: #e4edf7; }
 .mobile-sticky-cta .mobile-page-panel .mobile-page-top { background: #fff; margin-top: 10px; padding-left: 0; text-decoration: underline; text-underline-offset: 3px; }
 :is(.mobile-page-menu,.mobile-model-overview) :is(summary,a,button):focus-visible { outline: 3px solid #005fcc; outline-offset: 2px; }
 main [id] { scroll-margin-top: 100px; }
 .model-specs { grid-template-columns: minmax(0,1fr); }
 .model-specs > div { min-width: 0; }
 .model-specs .spec-table th, .model-specs .spec-table td { padding: 12px 10px; font-size: 14px; }
}

.legacy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.legacy-card{min-width:0;background:#fff;border:1px solid #d4dfeb;padding:16px}
.legacy-card img{width:100%;height:220px;object-fit:contain;background:#fff}
.legacy-card h3{font-size:24px;line-height:1.2;margin:16px 0 0;overflow-wrap:anywhere}
.legacy-detail{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:40px;align-items:start}
.legacy-detail .editorial-photo{margin:0 0 24px}.legacy-detail img{object-fit:contain;max-height:550px}
.legacy-detail .editorial-reading{min-width:0}.legacy-detail th,.legacy-detail td{overflow-wrap:anywhere}
.legacy-pagination{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.legacy-pagination a{padding:10px 14px;border:1px solid #b6c8dc}.legacy-pagination a[aria-current]{background:#102b50;color:white}
@media(max-width:900px){.legacy-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.legacy-detail{grid-template-columns:1fr}}
@media(max-width:640px){.legacy-grid{grid-template-columns:1fr}.legacy-card img{height:200px}.legacy-detail{gap:24px}}

.analytics-choice[hidden], .analytics-settings[hidden] { display:none !important; }
.analytics-choice { position:fixed; z-index:500; inset:auto 20px 20px; margin:auto; max-width:1100px; padding:22px 26px; background:#fff; color:#102b50; border:2px solid #102b50; box-shadow:0 6px 32px #091a3140; display:grid; grid-template-columns:1fr auto; align-items:center; gap:22px; }
.analytics-choice h2 { font:700 23px/1.15 var(--display); margin:0 0 8px; text-transform:none; color:#102b50; }
.analytics-choice p { font-size:15px; line-height:1.5; margin:0; }
.analytics-choice a { text-decoration:underline; color:#102b50; }
.analytics-choice-actions { display:flex; gap:10px; flex-wrap:wrap; }
.analytics-choice-actions button { font-family:inherit; font-size:15px; font-weight:600; line-height:1.3; min-height:46px; padding:12px 15px; border:2px solid #102b50; color:#102b50; background:#fff; cursor:pointer; }
.analytics-choice-actions button:hover { background:#e4edf7; }
.analytics-choice-actions button:focus-visible,.analytics-settings:focus-visible { outline:3px solid #ff8a15; outline-offset:3px; }
.analytics-settings { font:inherit; color:inherit; background:transparent; border:0; padding:0; text-align:left; text-decoration:underline; cursor:pointer; }
.analytics-choice-visible .mobile-sticky-cta { visibility:hidden; }
@media(max-width:760px) { .analytics-choice { inset:auto 10px 10px; padding:18px; grid-template-columns:1fr; gap:14px; max-height:calc(100dvh - 20px); overflow:auto; } .analytics-choice-actions { display:grid; grid-template-columns:1fr 1fr; } .analytics-choice-actions button { font-size:14px; padding:11px 8px; } }
