@page { size: A4; margin: 0; }
  * { box-sizing: border-box; }
  body { margin:0; background:#e7ebf0; color:#1e3248; font-family: Arial, Helvetica, sans-serif; font-size: 8.55pt; line-height: 1.23; }
  .page[hidden] { display:none !important; }
  .manual-filter-nl .page[data-lang]:not([data-lang="nl"]),
  .manual-filter-fr .page[data-lang]:not([data-lang="fr"]),
  .manual-filter-en .page[data-lang]:not([data-lang="en"]) { display:none !important; }
  .page { width:210mm; height:297mm; margin:0 auto; background:#fff url("https://mustangsafes.nl/inhoud/uploads/mustangsafes-briefpapier-a4-300dpi-zonder-logo.png") center center / 210mm 297mm no-repeat; padding:8mm 10mm 9mm; position:relative; overflow:hidden; page-break-after:always; }
  .page:last-child { page-break-after:auto; }
  header { display:block; background:#1e3855; color:#fff; border-bottom:0; padding:8mm 58mm 5mm 10mm; margin:-8mm -10mm 3.2mm; min-height:39mm; position:relative; border-radius:0; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  h1 { margin:0; font-size:18.5pt; color:#fff; letter-spacing:-0.2px; }
  .subtitle { margin-top:1mm; font-size:9pt; color:rgba(255,255,255,.78); }
  .meta { margin-top:2.2mm; display:flex; gap:2.4mm; flex-wrap:wrap; align-items:center; font-size:7pt; color:rgba(255,255,255,.78); }
  .pill { border:1px solid #d7dde5; border-radius:99px; padding:1mm 2mm; background:#f7f9fb; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  .language-pill { background:#fff; border-color:#fff; color:#1e3855; font-weight:bold; }
  .language-link { color:#fff; text-decoration:none; background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.35); }
  .language-link:hover { text-decoration:underline; }
  .inline-anchor { color:#1f3551; font-weight:bold; text-decoration:underline; text-underline-offset:2px; }
  .back-link { display:inline-block; margin-top:1.2mm; color:#1f3551; font-weight:bold; text-decoration:underline; text-underline-offset:2px; }
  .meta-info { color:rgba(255,255,255,.72); font-size:6.8pt; padding:1mm 0; }
  .header-logo { position:absolute; top:8mm; right:10mm; width:35mm; height:auto; display:block; }
  .header-product-image { position:absolute; top:6.8mm; right:52mm; width:26mm; max-height:27mm; object-fit:contain; object-position:center; background:#fff; border:1px solid rgba(255,255,255,.86); border-radius:0 8px 0 8px; padding:1.5mm; box-shadow:0 10px 22px rgba(0,0,0,.18), 0 1px 0 rgba(255,255,255,.70) inset; filter:none; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  .header-logo-print { display:none; }
  .manual-toolbar { display:contents; }
  .sr-only { position:absolute !important; width:1px !important; height:1px !important; padding:0 !important; margin:-1px !important; overflow:hidden !important; clip:rect(0,0,0,0) !important; white-space:nowrap !important; border:0 !important; }
  .overview-button { position:fixed; left:18px; bottom:18px; z-index:9999; border:1px solid rgba(30,56,85,.16); border-radius:0 8px 0 8px; background:linear-gradient(180deg,#fff 0%,#f3f6f9 100%); color:#1e3855; font:700 13px/1.2 Arial, Helvetica, sans-serif; letter-spacing:.01em; padding:12px 18px; cursor:pointer; box-shadow:0 1px 0 rgba(255,255,255,.75) inset, 0 8px 22px rgba(30,56,85,.14); text-decoration:none; transition:background .18s ease, box-shadow .18s ease, transform .18s ease, border-color .18s ease, color .18s ease; }
  .print-button { position:fixed; right:18px; bottom:18px; z-index:9999; border:1px solid #008f20; border-radius:0 8px 0 8px; background:linear-gradient(180deg,#12b836 0%,#00a825 100%); color:#fff; font:700 13px/1.2 Arial, Helvetica, sans-serif; letter-spacing:.01em; padding:12px 18px; cursor:pointer; box-shadow:0 1px 0 rgba(255,255,255,.28) inset, 0 8px 22px rgba(0,168,37,.24); transition:background .18s ease, box-shadow .18s ease, transform .18s ease, border-color .18s ease; }
  .zoom-button { position:fixed; right:142px; bottom:18px; z-index:9999; border:1px solid rgba(30,56,85,.16); border-radius:0 8px 0 8px; background:linear-gradient(180deg,#fff 0%,#f3f6f9 100%); color:#1e3855; font:700 13px/1.2 Arial, Helvetica, sans-serif; letter-spacing:.01em; width:48px; min-width:48px; height:42px; padding:0; display:inline-flex; align-items:center; justify-content:center; cursor:pointer; box-shadow:0 1px 0 rgba(255,255,255,.75) inset, 0 8px 22px rgba(30,56,85,.14); text-decoration:none; transition:background .18s ease, box-shadow .18s ease, transform .18s ease, border-color .18s ease, color .18s ease; }
  .zoom-icon { width:22px; height:22px; stroke:currentColor; stroke-width:2.2; fill:none; stroke-linecap:round; stroke-linejoin:round; }
  .zoom-icon .zoom-minus { display:none; }
  body.manual-zoomed .zoom-icon .zoom-plus { display:none; }
  body.manual-zoomed .zoom-icon .zoom-minus { display:block; }
  .print-button:hover { background:linear-gradient(180deg,#17c53d 0%,#009d23 100%); border-color:#00851d; box-shadow:0 1px 0 rgba(255,255,255,.30) inset, 0 10px 26px rgba(0,168,37,.30); transform:translateY(-1px); }
  .zoom-button:hover { background:linear-gradient(180deg,#fff 0%,#eaf0f5 100%); color:#1e3855; border-color:rgba(30,56,85,.30); box-shadow:0 1px 0 rgba(255,255,255,.85) inset, 0 10px 24px rgba(30,56,85,.18); transform:translateY(-1px); }
  .overview-button:hover { background:linear-gradient(180deg,#fff 0%,#eaf0f5 100%); color:#1e3855; text-decoration:none; border-color:rgba(30,56,85,.30); box-shadow:0 1px 0 rgba(255,255,255,.85) inset, 0 10px 24px rgba(30,56,85,.18); transform:translateY(-1px); }
  .overview-button:focus { outline:2px solid rgba(0,168,37,.75); outline-offset:3px; }
  .print-button:focus { outline:2px solid rgba(0,168,37,.75); outline-offset:3px; }
  .zoom-button:focus { outline:2px solid rgba(0,168,37,.75); outline-offset:3px; }
  .overview-button:active, .print-button:active, .zoom-button:active { transform:translateY(0); box-shadow:0 1px 0 rgba(255,255,255,.35) inset, 0 4px 12px rgba(30,56,85,.14); }
  .mobile-language-bar { display:none; }
  .mobile-language-buttons { display:none; }
  .mobile-label { display:none; }
  .desktop-label { display:inline; }
  .home-icon { width:18px; height:18px; display:inline-block; vertical-align:-3px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
  .button-icon { width:17px; height:17px; display:inline-block; flex:0 0 auto; fill:none; stroke:currentColor; stroke-width:2.1; stroke-linecap:round; stroke-linejoin:round; }
  .desktop-label { display:inline-flex; align-items:center; gap:7px; }
  .print-button .button-icon { width:18px; height:18px; }
  .back-arrow { margin-right:4px; font-weight:700; }
  .keypad { display:none; }
  h2 { margin:0 0 2.2mm; font-size:10.7pt; color:#1f3551; border-bottom:1px solid #d7dde5; padding-bottom:1.25mm; }
  h3 { margin:0 0 1.5mm; font-size:8.8pt; color:#1f3551; }
  .grid-2 { display:grid; grid-template-columns:1fr 1fr; gap:4mm; align-items:stretch; }
  .grid-3 { display:grid; grid-template-columns:1fr 1fr 1fr; gap:3mm; align-items:stretch; }
  .card { border:1px solid #d7dde5; border-radius:0 5px 0 5px; padding:2.45mm; background:rgba(255,255,255,.86); break-inside:avoid; box-shadow:0 1px 0 rgba(31,53,81,.025); -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  .grid-2 > .card, .grid-3 > .card { height:100%; }
  .page:nth-of-type(2n) .card { padding:2.25mm; }
  .page:nth-of-type(2n) .grid-2 { gap:3.6mm; }
  .card.soft { background:rgba(247,249,251,.84); border-color:#dce3eb; }
  .important-info { margin:0 0 2.8mm; padding:2.4mm 3mm; border:1px solid #b8c7d6; border-left:4px solid #1e3855; border-radius:0 6px 0 6px; background:linear-gradient(180deg, rgba(247,250,253,.96) 0%, rgba(235,242,248,.94) 100%); color:#1e3248; font-weight:700; box-shadow:0 1px 0 rgba(255,255,255,.80) inset; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  .warning { border-left:3px solid #d98400; background:rgba(255,250,243,.86); border-color:#f1d3a2; }
  .danger { border-left:3px solid #b94030; background:rgba(255,245,243,.86); border-color:#f0c4bd; }
  .critical { color:#b94030; font-weight:700; }
  .success { border-left:3px solid #00a825; background:rgba(244,251,245,.86); border-color:#c8e9cf; }
  ol, ul { margin:0 0 0 4.2mm; padding:0; }
  li { margin:0 0 .65mm; }
  .steps { counter-reset: step; list-style:none; margin-left:0; }
  .steps li { position:relative; padding-left:6.2mm; margin-bottom:1mm; }
  .steps li::before { counter-increment: step; content:counter(step); position:absolute; left:0; top:.05mm; width:4.2mm; height:4.2mm; line-height:4.2mm; text-align:center; border-radius:50%; background:#1f3551; color:#fff; font-size:6.6pt; font-weight:bold; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  .key { display:inline-block; min-width:4.4mm; padding:.1mm 1.1mm .25mm; border:1px solid #c9d2dc; border-bottom-width:2px; border-radius:3px; background:#fff; font-weight:bold; text-align:center; color:#1f3551; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  code { font-family: Arial, Helvetica, sans-serif; font-weight:bold; color:#1f3551; background:#edf3f8; border:1px solid #d7dde5; border-radius:3px; padding:.05mm .85mm; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  .note { color:#52667d; font-size:7pt; margin-top:.75mm; }
  .section { margin-bottom:2.35mm; }
  .page:nth-of-type(2n) .section { margin-bottom:1.9mm; }
  table { width:100%; border-collapse:collapse; }
  th, td { padding:1.25mm 1.5mm; border-bottom:1px solid #d7dde5; text-align:left; vertical-align:top; }
  th { background:#1f3551; color:white; font-size:7.5pt; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  td:first-child { font-weight:bold; color:#1f3551; }
  .compact td { padding:.9mm 1.25mm; }
  .badge { display:inline-block; font-size:6.8pt; padding:.35mm 1.25mm; border-radius:3px; background:#edf3f8; color:#1f3551; font-weight:bold; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  .page-number { position:absolute; bottom:2.7mm; right:10mm; color:#fff; font-size:7pt; z-index:3; }
  .footer { position:absolute; bottom:2.7mm; left:10mm; color:#fff; font-size:7pt; z-index:3; }
  .battery-grid { display:grid; grid-template-columns:1fr 1fr 1fr 1fr; gap:2.2mm; align-items:start; }
  .battery-step { border:1px solid #d7dde5; border-radius:0 5px 0 5px; padding:1.6mm; min-height:43mm; }
  .battery-step img { display:block; margin:.7mm auto 0; max-width:100%; height:23.5mm; object-fit:contain; mix-blend-mode:multiply; }
  .small { font-size:7.3pt; }
  .tight { margin-bottom:2.5mm; }
  @media screen and (max-width: 760px) {
    body { background:#fff; font-size:14px; line-height:1.35; }
    /* body { padding-top:52px; } -- removed */
    .mobile-language-bar { display:none; }
    .mobile-label { display:inline; }
    .desktop-label { display:none; }
    .mobile-language-buttons { position:fixed; left:50%; bottom:calc(24px + env(safe-area-inset-bottom)); transform:translateX(-50%); z-index:9998; display:flex; gap:5px; align-items:center; }
    .mobile-language-buttons a { display:inline-block; min-width:34px; text-align:center; border:1px solid rgba(30,56,85,.28); border-radius:0 8px 0 8px; padding:9px 7px; color:#1e3855; text-decoration:none; font-size:12px; font-weight:700; background:rgba(255,255,255,.94); box-shadow:0 4px 14px rgba(0,0,0,.16); }
    .mobile-language-buttons a.is-active { background:#1e3855; border-color:#1e3855; color:#fff; }
    .print-button { right:12px; bottom:calc(24px + env(safe-area-inset-bottom)); padding:9px 12px; font-size:13px; }
    .zoom-button { display:none; }
    .overview-button { left:12px; bottom:calc(24px + env(safe-area-inset-bottom)); min-width:48px; justify-content:center; padding:8px 10px; font-size:18px; line-height:1; font-weight:700; }
    .overview-button .mobile-label { display:inline-flex; align-items:center; gap:2px; }
    .overview-button .home-icon { width:19px; height:19px; vertical-align:0; }
    .page { width:100%; height:auto; min-height:0; margin:0; padding:0 14px 28px; overflow:visible; page-break-after:auto; background:#fff; }
    .page[id] { scroll-margin-top:16px; }
    .page + .page { border-top:10px solid #e7ebf0; }
    header { margin:0 -14px 16px; padding:22px 18px 18px; min-height:0; }
    h1 { font-size:23px; line-height:1.08; padding-right:92px; }
    .subtitle { font-size:14px; line-height:1.35; padding-right:92px; }
    .meta { margin-top:12px; gap:8px; font-size:12px; }
    /* header .meta .language-pill, header .meta .language-link { display:none; } -- removed */
    .pill { padding:6px 10px; }
    .meta-info { display:block; width:100%; font-size:12px; padding:2px 0 0; }
    .header-logo { top:22px; right:18px; width:88px; }
    .header-product-image { top: 72px; right:18px; bottom:auto; width:88px; max-height:92px; padding:6px; background:#fff; border:1px solid rgba(255,255,255,.86); border-radius:0 10px 0 10px; box-shadow:0 8px 18px rgba(0,0,0,.18), 0 1px 0 rgba(255,255,255,.70) inset; filter:none; }
    .section { margin-bottom:12px; }
    .page:nth-of-type(2n) .section { margin-bottom:12px; }
    .grid-2, .grid-3, .battery-grid { display:grid; grid-template-columns:1fr; gap:12px; }
    .page:nth-of-type(2n) .grid-2 { gap:12px; }
    .card, .page:nth-of-type(2n) .card { padding:14px; }
    .important-info { margin-bottom:14px; padding:13px 14px; border-left-width:4px; border-radius:0 8px 0 8px; font-size:14px; line-height:1.35; }
    .grid-2 > .card, .grid-3 > .card { height:auto; }
    h2 { font-size:17px; margin-bottom:10px; padding-bottom:7px; }
    h3 { font-size:15px; }
    ol, ul { margin-left:20px; }
    li { margin-bottom:6px; }
    .steps li { padding-left:28px; margin-bottom:8px; }
    .steps li::before { width:20px; height:20px; line-height:20px; font-size:12px; top:0; }
    .note { font-size:12px; margin-top:8px; }
    table { font-size:13px; }
    th, td { padding:8px 9px; }
    .compact td { padding:7px 8px; }
    .key { min-width:22px; padding:1px 6px 2px; }
    code { padding:1px 5px; }
    .badge { font-size:12px; padding:3px 7px; }
    .battery-step { min-height:0; padding:12px; }
    .battery-step img { height:auto; max-height:170px; margin-top:8px; }
    .footer, .page-number { position:static; display:block; color:#7a8796; font-size:12px; margin-top:10px; }
    .page-number { text-align:right; }
    .back-link { margin-top:8px; }
  }
  @media screen { .page { margin: 12px auto; box-shadow:0 0 18px rgba(0,0,0,.15); } }
  @media screen and (min-width: 761px) and (max-width: 1500px) {
    .page { transform:scale(1.12); transform-origin:top center; margin-top:22px; margin-bottom:150px; }
  }
  @media screen and (min-width: 761px) {
    body.manual-zoomed .page { transform:scale(var(--manual-zoom-scale, 1.35)); transform-origin:top center; margin-top:22px; margin-bottom:var(--manual-zoom-margin, 420px); }
  }
  @media screen and (min-width: 761px) {
    .manual-toolbar { position:sticky; top:0; z-index:10000; display:grid; grid-template-columns:1fr auto 1fr; gap:18px; align-items:center; width:100%; margin:0 0 12px; padding:14px max(18px, calc((100vw - 210mm) / 2)); background:rgba(231,235,240,.96); border-bottom:1px solid rgba(30,56,85,.12); backdrop-filter:blur(6px); }
    .page[id] { scroll-margin-top:82px; }
    .overview-button { position:static; justify-self:start; display:inline-flex; align-items:center; bottom:auto; top:auto; left:auto; }
    .toolbar-actions { justify-self:end; display:flex; gap:12px; align-items:center; }
    .print-button { position:static; display:inline-flex; align-items:center; bottom:auto; top:auto; right:auto; }
    .zoom-button { position:static; display:inline-flex; align-items:center; justify-content:center; bottom:auto; top:auto; right:auto; }
    body.manual-zoomed .zoom-button { background:linear-gradient(180deg,#244769 0%,#1e3855 100%); border-color:#1e3855; color:#fff; box-shadow:0 1px 0 rgba(255,255,255,.20) inset, 0 8px 22px rgba(30,56,85,.24); }
    .mobile-language-buttons { position:static; justify-self:center; justify-content:center; transform:none; z-index:1; display:flex; gap:8px; align-items:center; }
    .mobile-language-buttons a { display:inline-flex; align-items:center; justify-content:center; min-width:44px; height:42px; text-align:center; border:1px solid rgba(30,56,85,.16); border-radius:0 8px 0 8px; padding:0 13px; color:#1e3855; text-decoration:none; font-size:13px; font-weight:700; letter-spacing:.01em; background:linear-gradient(180deg,#fff 0%,#f3f6f9 100%); box-shadow:0 1px 0 rgba(255,255,255,.75) inset, 0 8px 22px rgba(30,56,85,.12); transition:background .18s ease, box-shadow .18s ease, transform .18s ease, border-color .18s ease, color .18s ease; }
    .mobile-language-buttons a.is-active { background:linear-gradient(180deg,#244769 0%,#1e3855 100%); border-color:#1e3855; color:#fff; box-shadow:0 1px 0 rgba(255,255,255,.20) inset, 0 8px 22px rgba(30,56,85,.22); }
    .mobile-language-buttons a:hover { background:linear-gradient(180deg,#fff 0%,#eaf0f5 100%); color:#1e3855; text-decoration:none; border-color:rgba(30,56,85,.30); box-shadow:0 1px 0 rgba(255,255,255,.85) inset, 0 10px 24px rgba(30,56,85,.16); transform:translateY(-1px); }
    .mobile-language-buttons a.is-active:hover { background:linear-gradient(180deg,#244769 0%,#1e3855 100%); color:#fff; border-color:#1e3855; box-shadow:0 1px 0 rgba(255,255,255,.20) inset, 0 8px 22px rgba(30,56,85,.22); transform:none; }
    .mobile-language-buttons a:active { transform:translateY(0); box-shadow:0 1px 0 rgba(255,255,255,.35) inset, 0 4px 12px rgba(30,56,85,.14); }
  }
  @media print {
    body { background:#fff; }
    .page { margin:0; box-shadow:none; transform:none !important; }
    .print-button { display:none !important; }
    .zoom-button { display:none !important; }
    .overview-button { display:none !important; }
    .manual-toolbar { display:none !important; }
    .mobile-language-bar { display:none !important; }
    .mobile-language-buttons { display:none !important; }
    header { background:#fff; color:#1e3248; border-bottom:2px solid #1f3551; border-radius:0; padding-top:8mm; padding-bottom:3mm; min-height:37mm; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
    h1 { color:#1f3551; }
    .subtitle { color:#52667d; }
    .language-pill { background:#1f3551; border-color:#1f3551; color:#fff; }
    .language-link { color:#1f3551; background:#f7f9fb; border-color:#d7dde5; }
    .meta-info { color:#7a8796; }
    .header-logo-screen { display:none; }
    .header-logo-print { display:block; }
    .header-product-image { background:#fff; border:1px solid #d7dde5; box-shadow:none; filter:none; }
    .card, .pill, .steps li::before, th, code, .key, .badge { -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  }


/* Header language pills: MustangSafes corner shape */
@media screen {
  header .meta .pill,
  header .meta .language-pill,
  header .meta .language-link {
    border-radius: 0 8px 0 8px;
    padding: 5px 10px;
    line-height: 1.15;
    text-decoration: none;
  }

  header .meta .language-pill {
    background: #fff;
    border-color: #fff;
    color: #1e3855;
    box-shadow: 0 1px 0 rgba(255,255,255,.35) inset, 0 5px 14px rgba(0,0,0,.12);
  }

  header .meta .language-link {
    background: rgba(255,255,255,.08);
    border-color: rgba(255,255,255,.38);
    color: #fff;
  }

  header .meta .language-link:hover {
    background: rgba(255,255,255,.16);
    border-color: rgba(255,255,255,.55);
    text-decoration: none;
  }
}

@media print {
  header .meta .pill,
  header .meta .language-pill,
  header .meta .language-link {
    border-radius: 0 6px 0 6px;
  }
}

/* Header contact details */
.header-contact {
  position: absolute;
  top: 19mm;
  right: 10mm;
  width: 35mm;
  display: block;
  color: rgba(255,255,255,.72);
  font-size: 7.2px;
  font-weight: 600;
  line-height: 1.22;
  letter-spacing: .01em;
  text-align: left;
}

.header-contact strong,
.header-contact span,
.header-contact a {
  display: inline;
}

.header-contact a {
  color: #55d96a;
  font-weight: 700;
  text-decoration: none;
}

.header-contact a:hover {
  color: #fff;
  text-decoration: underline;
  text-underline-offset: 2px;
}

@media screen and (min-width: 761px) {
  .header-contact strong,
  .header-contact .contact-websites {
    display: block;
  }

  .header-contact strong {
    color: rgba(255,255,255,.84);
    font-size: 7.5px;
    line-height: 1.18;
    margin-bottom: 1px;
  }

  .header-contact .contact-websites {
    display: flex;
    flex-wrap: wrap;
    gap: 1px 5px;
    max-width: 35mm;
  }

  .header-contact .contact-websites a {
    display: inline-block;
    line-height: 1.18;
  }

  .header-contact .contact-mobile {
    display: none;
  }
}

@media screen and (max-width: 760px) {
  .header-contact {
    position: static;
    display: block;
    width: 100%;
    max-width: 100%;
    margin-top: 12px;
    padding-top: 10px;
    padding-right: 0;
    border-top: 1px solid rgba(255,255,255,.14);
    color: rgba(255,255,255,.74);
    font-size: 10.5px;
    font-weight: 600;
    line-height: 1.34;
    letter-spacing: 0;
    overflow-wrap: anywhere;
  }

  .header-contact strong {
    display: none;
  }

  .header-contact .contact-websites,
  .header-contact .contact-mobile {
    display: flex;
    flex-wrap: wrap;
    gap: 2px 8px;
  }

  .header-contact .contact-mobile {
    margin-top: 2px;
  }

  .header-contact .contact-websites a,
  .header-contact .contact-mobile a {
    display: inline-block;
    color: #55d96a;
    font-weight: 700;
    line-height: 1.25;
  }
}

@media print {
  .header-contact {
    position: absolute;
    top: 19mm;
    right: 10mm;
    width: 35mm;
    display: block !important;
    color: #52667d;
    font-size: 5.8pt;
    font-weight: 600;
    line-height: 1.16;
    letter-spacing: 0;
    text-align: left;
  }

  .header-contact strong,
  .header-contact .contact-websites {
    display: block;
  }

  .header-contact strong {
    color: #1f3551;
    font-size: 6pt;
    line-height: 1.14;
    margin-bottom: .4mm;
  }

  .header-contact .contact-websites {
    display: flex;
    flex-wrap: wrap;
    gap: .3mm 1.3mm;
    max-width: 35mm;
  }

  .header-contact .contact-websites a {
    display: inline-block;
    color: #1f3551;
    font-weight: 700;
    line-height: 1.14;
    text-decoration: none;
  }

  .header-contact .contact-mobile {
    display: none;
  }
}

/* General text links, excluding button-style controls */
a:not(.pill):not(.language-link):not(.overview-button):not(.print-button):not(.zoom-button):not(.mobile-language-buttons a) {
  color: rgb(0,185,0);
}

/* Final contact placement: desktop/print in header, mobile in footer */
.mobile-document-contact {
  display: none;
}

@media screen and (min-width: 761px) {
  .header-contact {
    top: 18.6mm;
    right: 10mm;
    width: 35mm;
    color: rgba(255,255,255,.72);
    font-size: 7.2px;
    line-height: 1.24;
  }

  .header-contact strong {
    display: none !important;
  }

  .header-contact .contact-websites,
  .header-contact .contact-mobile {
    display: block !important;
  }

  .header-contact .contact-websites a,
  .header-contact .contact-mobile a {
    display: block !important;
    color: #55d96a;
    font-weight: 700;
    line-height: 1.24;
    text-decoration: none;
  }
}

@media screen and (max-width: 760px) {
  .header-contact {
    display: none !important;
  }

  .mobile-document-contact {
    display: block;
    margin: 18px 14px calc(112px + env(safe-area-inset-bottom));
    padding: 14px 14px 0;
    border-top: 1px solid rgba(30,56,85,.12);
    color: #52667d;
    font-size: 12px;
    line-height: 1.35;
    text-align: center;
  }

  .mobile-document-contact strong {
    display: block;
    margin-bottom: 6px;
    color: #1e3855;
    font-size: 13px;
  }

  .mobile-document-contact .contact-websites,
  .mobile-document-contact .contact-mobile {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 4px 10px;
  }

  .mobile-document-contact .contact-mobile {
    margin-top: 4px;
  }

  .mobile-document-contact a {
    color: rgb(0,185,0);
    font-weight: 700;
    text-decoration: none;
  }
}

@media print {
  .mobile-document-contact {
    display: none !important;
  }

  .header-contact {
    top: 18.6mm;
    right: 10mm;
    width: 35mm;
    color: #1f3551;
    font-size: 5.8pt;
    line-height: 1.16;
  }

  .header-contact strong {
    display: none !important;
  }

  .header-contact .contact-websites,
  .header-contact .contact-mobile {
    display: block !important;
  }

  .header-contact .contact-websites a,
  .header-contact .contact-mobile a {
    display: block !important;
    color: #1f3551;
    font-weight: 700;
    line-height: 1.16;
    text-decoration: none;
  }
}

/* Contact links: normal MustangSafes colors with small icons */
@media screen and (min-width: 761px) {
  .header-contact {
    top: 21mm;
  }

  .header-contact .contact-websites a,
  .header-contact .contact-mobile a {
    display: flex !important;
    align-items: center;
    gap: 3px;
    color: rgba(255,255,255,.78) !important;
  }

  .header-contact .contact-websites a:hover,
  .header-contact .contact-mobile a:hover {
    color: #fff !important;
  }
}

@media screen and (max-width: 760px) {
  .mobile-document-contact a {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: #1e3855 !important;
  }
}

@media print {
  .header-contact {
    top: 21mm;
  }

  .header-contact .contact-websites a,
  .header-contact .contact-mobile a {
    display: flex !important;
    align-items: center;
    gap: .8mm;
    color: #1f3551 !important;
  }
}

.header-contact a::before,
.mobile-document-contact a::before {
  content: '';
  display: inline-block;
  width: 10px;
  height: 10px;
  flex: 0 0 10px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  opacity: .9;
}

.header-contact a[href^="https://"]::before,
.mobile-document-contact a[href^="https://"]::before {
  background-image: url("https://mustangsafes.nl/handtekening/website-icon.png");
}

.header-contact a[href^="mailto:"]::before,
.mobile-document-contact a[href^="mailto:"]::before {
  background-image: url("https://mustangsafes.nl/handtekening/email-icon.png");
}

.header-contact a[href^="tel:"]::before,
.mobile-document-contact a[href^="tel:"]::before {
  background-image: url("https://mustangsafes.nl/handtekening/telefoon-icon.png");
}

@media print {
  .header-contact a::before,
  .mobile-document-contact a::before {
    width: 2.5mm;
    height: 2.5mm;
    flex-basis: 2.5mm;
  }
}


/* Contact icon spacing refinement */
@media screen and (min-width: 761px) {
  .header-contact .contact-websites a,
  .header-contact .contact-mobile a {
    margin-bottom: 2px;
  }
}

@media print {
  .header-contact .contact-websites a,
  .header-contact .contact-mobile a {
    margin-bottom: .45mm;
  }
}
/* Toolbar final stable state */
@media screen and (min-width: 761px) {
  .manual-toolbar {
    display: grid !important;
    grid-template-columns: 1fr auto 1fr !important;
    grid-template-rows: auto !important;
    align-items: center !important;
  }

  .overview-button,
  .mobile-language-buttons,
  .zoom-button,
  .print-button {
    grid-row: 1 !important;
  }

  .overview-button {
    grid-column: 1 !important;
    justify-self: start !important;
  }

  .mobile-language-buttons {
    grid-column: 2 !important;
    justify-self: center !important;
  }

  .zoom-button {
    grid-column: 3 !important;
    justify-self: end !important;
    margin-right: 62px !important;
  }

  .print-button {
    grid-column: 3 !important;
    justify-self: end !important;
    margin-right: 0 !important;
    white-space: nowrap !important;
  }
}

@media screen and (max-width: 760px) {
  .manual-toolbar {
    display: contents !important;
  }

  .overview-button {
    position: fixed !important;
    left: 12px !important;
    bottom: calc(12px + env(safe-area-inset-bottom)) !important;
    z-index: 9999 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 48px !important;
    padding: 8px 10px !important;
    font-size: 18px !important;
    line-height: 1 !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .mobile-language-buttons {
    position: fixed !important;
    left: 50% !important;
    bottom: calc(12px + env(safe-area-inset-bottom)) !important;
    transform: translateX(-50%) !important;
    z-index: 9998 !important;
    display: flex !important;
    gap: 5px !important;
    align-items: center !important;
    justify-content: center !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .mobile-language-buttons a {
    display: inline-block !important;
    min-width: 34px !important;
    text-align: center !important;
    border: 1px solid rgba(30,56,85,.28) !important;
    border-radius: 0 8px 0 8px !important;
    padding: 9px 7px !important;
    color: #1e3855 !important;
    text-decoration: none !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    background: rgba(255,255,255,.94) !important;
    box-shadow: 0 4px 14px rgba(0,0,0,.16) !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .mobile-language-buttons a.is-active {
    background: #1e3855 !important;
    border-color: #1e3855 !important;
    color: #fff !important;
  }

  .print-button {
    position: fixed !important;
    right: 12px !important;
    bottom: calc(12px + env(safe-area-inset-bottom)) !important;
    z-index: 9999 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 40px !important;
    padding: 0 !important;
    font-size: 0 !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .print-button .button-icon {
    width: 18px !important;
    height: 18px !important;
  }

  .zoom-button {
    display: none !important;
  }

  .page {
    padding-bottom: calc(104px + env(safe-area-inset-bottom)) !important;
  }
}

/* Mobile footer: center footer and place contact directly below pagination */
@media screen and (max-width: 760px) {
  .footer,
  .page-number {
    position: static;
    display: block;
    width: 100%;
    margin: 8px auto 0;
    color: #7a8796;
    font-size: 12px;
    line-height: 1.35;
    text-align: center !important;
  }

  .page-number {
    margin-top: 10px;
  }

  .mobile-document-contact {
    margin: 8px 14px calc(92px + env(safe-area-inset-bottom));
    padding: 0 14px;
    border-top: 0;
    color: #52667d;
    font-size: 12px;
    line-height: 1.35;
    text-align: center;
  }

  .mobile-document-contact strong {
    display: block;
    margin-bottom: 6px;
    color: #1e3855;
    font-size: 13px;
  }

  .mobile-document-contact .contact-websites,
  .mobile-document-contact .contact-mobile {
    justify-content: center;
  }
}
/* Mobile whitespace refinement below pagination */
@media screen and (max-width: 760px) {
  .page {
    padding-bottom: 28px !important;
  }

  .mobile-document-contact {
    margin-top: 0;
    margin-bottom: calc(92px + env(safe-area-inset-bottom));
  }
}

/* Mobile page separation: give following pages breathing room */
@media screen and (max-width: 760px) {
  .page + .page {
    padding-top: 18px;
  }
}

/* Mobile top cleanup: start directly at the blue header */
@media screen and (max-width: 760px) {
  body {
    padding-top: 0 !important;
  }

  .page {
    margin-top: 0 !important;
    box-shadow: none !important;
  }

  .page:first-of-type {
    margin-top: 0 !important;
  }

  .page:first-of-type header {
    margin-top: 0 !important;
  }
}

/* Mobile filtered view: first visible language page starts flush at the blue header */
@media screen and (max-width: 760px) {
  .manual-filter-nl #nl,
  .manual-filter-fr #fr,
  .manual-filter-en #en {
    border-top: 0 !important;
    padding-top: 0 !important;
    margin-top: 0 !important;
  }

  .manual-filter-nl #nl header,
  .manual-filter-fr #fr header,
  .manual-filter-en #en header {
    margin-top: 0 !important;
  }
}

/* Mobile toolbar device offset: Pixel needs more bottom clearance than iPhone previews */
@media screen and (max-width: 760px) and (min-width: 400px) {
  .overview-button,
  .mobile-language-buttons,
  .print-button {
    bottom: calc(16px + env(safe-area-inset-bottom)) !important;
  }
}

@media screen and (max-width: 399px) {
  .overview-button,
  .mobile-language-buttons,
  .print-button {
    bottom: calc(16px + env(safe-area-inset-bottom)) !important;
  }
}
/* iOS/mobile print fallback: force A4 layout when print is triggered from the toolbar */
body.manual-printing {
  background: #fff !important;
}

body.manual-printing .page {
  width: 210mm !important;
  height: 297mm !important;
  min-height: 297mm !important;
  margin: 0 auto !important;
  padding: 8mm 10mm 9mm !important;
  overflow: hidden !important;
  page-break-after: always !important;
  break-after: page !important;
  background: #fff url("https://mustangsafes.nl/inhoud/uploads/mustangsafes-briefpapier-a4-300dpi-zonder-logo.png") center center / 210mm 297mm no-repeat !important;
  box-shadow: none !important;
  transform: none !important;
}

body.manual-printing .page:last-child {
  page-break-after: auto !important;
  break-after: auto !important;
}

body.manual-printing header {
  margin: -8mm -10mm 3.2mm !important;
  padding: 8mm 58mm 5mm 10mm !important;
  min-height: 39mm !important;
}

body.manual-printing h1 {
  font-size: 18.5pt !important;
  line-height: 1.15 !important;
  padding-right: 0 !important;
}

body.manual-printing .subtitle {
  font-size: 9pt !important;
  line-height: 1.25 !important;
  padding-right: 0 !important;
}

body.manual-printing .meta {
  margin-top: 2.2mm !important;
  gap: 2.4mm !important;
  font-size: 7pt !important;
}

body.manual-printing .header-logo {
  top: 8mm !important;
  right: 10mm !important;
  width: 35mm !important;
}

body.manual-printing .header-product-image {
  top: 6.8mm !important;
  right: 52mm !important;
  width: 26mm !important;
  max-height: 27mm !important;
  padding: 1.5mm !important;
}

body.manual-printing .grid-2 {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 4mm !important;
}

body.manual-printing .grid-3 {
  display: grid !important;
  grid-template-columns: 1fr 1fr 1fr !important;
  gap: 3mm !important;
}

body.manual-printing .card {
  padding: 2.45mm !important;
}


body.manual-printing .manual-toolbar,
body.manual-printing .overview-button,
body.manual-printing .print-button,
body.manual-printing .zoom-button,
body.manual-printing .mobile-language-buttons,
body.manual-printing .mobile-document-contact {
  display: none !important;
}

/* Mobile toolbar size refinement */
@media screen and (max-width: 760px) {
  .overview-button,
  .print-button,
  .mobile-language-buttons a {
    min-height: 44px !important;
    height: 44px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .overview-button {
    min-width: 52px !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
    font-size: 19px !important;
  }

  .print-button {
    width: 48px !important;
    min-width: 48px !important;
  }

  .print-button .button-icon {
    width: 20px !important;
    height: 20px !important;
  }

  .mobile-language-buttons a {
    min-width: 38px !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
    font-size: 13px !important;
  }

  .mobile-language-buttons .button-icon {
    width: 18px !important;
    height: 18px !important;
  }
}