/* Boltrics for 3PL Logistics (solution.html?slug=boltrics).
   Theme taken from the Boltrics brochures: signal red-orange #F03926, light grey
   panels #F0EFEF, deep navy #172440 type, hexagon module badges, an orange bar
   under section headings and an orange band with a diagonal notch.
   White on #F03926 is 3.95:1, so white or navy text on orange is kept to large
   bold sizes; small orange text uses #C7290F (5.6:1 on white). Arial only. */
.blt {
  --or: #f03926;
  --or-ink: #c7290f;
  --or-deep: #d92f1c;
  --navy: #172440;
  --grey: #f0efef;
  --line: #dcdada;
  --mute: #4b5363;
  color: var(--navy);
  background: #fff;
  font-size: 16px;
  line-height: 1.6;
}
.blt *, .blt *::before, .blt *::after { box-sizing: border-box; }
.blt p { margin: 0; color: var(--mute); }
html body .blt :is(h1, h2, h3, h4) { color: var(--navy); font-weight: 700 !important; letter-spacing: -.02em; }
.blt h2 { font-size: clamp(30px, 3.2vw, 44px); line-height: 1.1; }
.blt h3 { font-size: 22px; line-height: 1.25; }
.blt ul { margin: 0; padding: 0; list-style: none; }
.blt img { display: block; max-width: 100%; height: auto; }
.blt a:focus-visible, .blt button:focus-visible, .blt [tabindex]:focus-visible { outline: 3px solid var(--navy); outline-offset: 4px; }
.blt-hero a:focus-visible, .blt-future a:focus-visible { outline-color: #fff; }
.blt-wrap { max-width: 1600px; margin: 0 auto; padding: 0 48px; }
.blt h4 { margin: 0; }
.blt-sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.blt-icon { display: inline-block; flex: 0 0 auto; width: 24px; height: 24px; background: currentColor; -webkit-mask-position: center; mask-position: center; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; }
.blt .blt-strong { color: var(--navy); font-weight: 700; }

/* Brochure motifs */
.blt-bar-heading::after { content: ''; display: block; width: 120px; height: 6px; margin-top: 18px; background: var(--or); }
.blt-display { font-size: clamp(38px, 4.6vw, 68px) !important; line-height: 1 !important; letter-spacing: -.035em !important; color: var(--or) !important; }
.blt-display.is-navy { color: var(--navy) !important; }
.blt-display.is-navy::after { background: var(--navy); }
.blt-hex { display: inline-grid; place-items: center; flex: 0 0 auto; width: 56px; height: 64px; clip-path: polygon(50% 0, 100% 25%, 100% 75%, 50% 100%, 0 75%, 0 25%); background: var(--or); color: #fff; font-size: 19px; font-weight: 700; letter-spacing: 0; }

/* Buttons */
.blt-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.blt-button { display: inline-flex; align-items: center; justify-content: center; min-height: 50px; padding: 12px 24px; border: 2px solid transparent; border-radius: 4px; font-size: 16px; font-weight: 700; text-decoration: none; transition: background-color .2s, color .2s, border-color .2s; }
.blt-button.is-white { background: #fff; color: var(--navy); }
.blt-button.is-white:hover { background: var(--navy); color: #fff; }
.blt-button.is-ghost { background: var(--navy); color: #fff; }
.blt-button.is-ghost:hover { background: #fff; color: var(--navy); }
.blt-textlink { color: var(--or-ink); font-size: 16px; font-weight: 700; text-decoration: underline; text-underline-offset: 4px; }

/* Hero: the brochure cover */
.blt-hero { background: var(--or); color: #fff; overflow: hidden; }
.blt-hero-inner { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); max-width: 1600px; margin: 0 auto; }
.blt-hero-copy { padding: clamp(16px, 2.4vh, 28px) 48px clamp(28px, 5vh, 56px); display: flex; flex-direction: column; }
.blt-crumbs { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: clamp(18px, 3.4vh, 36px); font-size: 14px; color: #fff; }
.blt-crumbs a { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.blt-brand { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 28px; margin-bottom: clamp(16px, 2.8vh, 28px); }
.blt-hero-logo { width: clamp(120px, 10vw, 168px); }
.blt .blt-hero h1 { padding-left: 28px; border-left: 2px solid rgba(255, 255, 255, .45); color: #fff; font-size: clamp(18px, 1.5vw, 24px); line-height: 1.2; letter-spacing: 0; }
.blt-taglines { display: grid; border-top: 2px solid rgba(255, 255, 255, .45); }
.blt-tagline { display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 20px; align-items: center; padding: clamp(8px, 1.5vh, 16px) 0 clamp(10px, 1.7vh, 18px); border-bottom: 2px solid rgba(255, 255, 255, .45); color: var(--navy); text-decoration: none; }
.blt-tagline-code { position: relative; padding-top: 12px; font-size: 19px; font-weight: 700; color: var(--navy); }
.blt-tagline-code::before { content: ''; position: absolute; top: 0; left: 0; width: 32px; height: 5px; background: transparent; }
.blt-tagline-text { font-size: clamp(28px, min(3.4vw, 5vh), 54px); line-height: 1; font-weight: 700; letter-spacing: -.035em; color: var(--navy); transition: color .2s; }
.blt-tagline-text span { display: block; }
.blt-tagline.is-active .blt-tagline-text, .blt-tagline:hover .blt-tagline-text, .blt-tagline:focus-visible .blt-tagline-text { color: #fff; }
.blt-tagline.is-active .blt-tagline-code { color: #fff; }
.blt-tagline.is-active .blt-tagline-code::before { background: #fff; }
.blt .blt-hero-system { margin: clamp(12px, 2vh, 22px) 0 clamp(16px, 2.6vh, 28px); color: #fff; font-size: clamp(18px, 1.5vw, 24px); line-height: 1.3; }
.blt-hero-visual { position: relative; margin: 0; clip-path: polygon(16% 0, 100% 0, 100% 100%, 0 100%); background: var(--or-deep); }
.blt-hero-visual img { position: absolute; inset: 0; width: 100%; height: 100% !important; object-fit: cover; opacity: 0; transition: opacity .45s ease; }
.blt-hero-visual img.is-active { opacity: 1; }

/* Sections */
.blt-section { padding: 104px 0; scroll-margin-top: 80px; }
.blt-intro-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 72px; align-items: start; }
.blt-intro-video { display: block; width: 100%; height: auto; background: #000; }
.blt-intro-grid p { max-width: 640px; font-size: 18px; }
.blt-intro-grid p + p { margin-top: 18px; font-size: 17px; }
.blt-modules { padding-top: 0; }

/* Module tabs */
.blt-tabs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; margin-bottom: 48px; border-bottom: 2px solid var(--line); }
.blt-tabs button { display: flex; align-items: center; gap: 16px; min-height: 92px; margin-bottom: -2px; padding: 14px 16px 14px 0; border: 0; border-bottom: 6px solid transparent; background: none; color: var(--mute); font: inherit; font-size: 17px; line-height: 1.3; text-align: left; cursor: pointer; transition: color .2s, border-color .2s; }
.blt-tabs button .blt-hex { background: #d4d1d1; color: var(--navy); transition: background-color .2s, color .2s; }
.blt-tabs button:hover { color: var(--navy); }
.blt-tabs button[aria-selected='true'] { color: var(--navy); font-weight: 700; border-bottom-color: var(--or); }
.blt-tabs button[aria-selected='true'] .blt-hex { background: var(--or); color: #fff; }
.blt-panel[hidden] { display: none; }
.blt-panel:focus-visible { outline-offset: 8px; }

.blt-challenge { display: grid; grid-template-columns: minmax(240px, 360px) minmax(0, 1fr); background: var(--grey); }
.blt-challenge img { width: 100%; height: 100% !important; min-height: 420px; object-fit: cover; }
.blt-challenge-copy { align-self: center; padding: 48px 56px; }
.blt-challenge-copy h3 { font-size: clamp(24px, 2.2vw, 32px); line-height: 1.15; margin-bottom: 20px; }
.blt-challenge-copy p { max-width: 640px; }
.blt-challenge-copy p + p { margin-top: 16px; }

.blt-scope { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); gap: 72px; padding: 80px 0; }
.blt-scope-head h3 { color: var(--or) !important; font-size: clamp(30px, 3vw, 44px); line-height: 1.05; letter-spacing: -.03em; margin-bottom: 28px; }
.blt-scope-head p { max-width: 600px; }
.blt-scope-head p + p { margin-top: 16px; }
.blt-checks li { display: flex; align-items: flex-start; gap: 10px; padding: 8px 0; break-inside: avoid; color: var(--navy); font-size: 16px; font-weight: 700; line-height: 1.35; }
.blt-checks .blt-icon { width: 20px; height: 20px; color: var(--or); }
.blt-checks small { display: block; margin-top: 2px; color: var(--mute); font-size: 14px; font-weight: 400; }
.blt-checks-cols { columns: 3 190px; column-gap: 28px; align-self: start; padding-top: 6px; }
.blt-freight { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; align-self: start; }
.blt-freight h4 { margin-bottom: 10px !important; padding-bottom: 10px; border-bottom: 4px solid var(--or); color: var(--or-ink) !important; font-size: 20px; }

.blt-benefits { padding: 48px 56px 40px; background: var(--grey); }
.blt-benefits-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 32px; margin-bottom: 32px; }
.blt-benefits-head h3 { max-width: 640px; color: var(--or) !important; font-size: clamp(28px, 2.8vw, 40px); line-height: 1.08; letter-spacing: -.03em; }
.blt-benefits-head .blt-hex { width: 84px; height: 96px; font-size: 26px; }
.blt-benefits ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 56px; }
.blt-benefits li { display: flex; gap: 18px; }
.blt-benefit-mark { display: grid; place-items: center; flex: 0 0 auto; width: 56px; height: 56px; border-radius: 50%; background: #fff; color: var(--or); }
.blt-benefit-mark .blt-icon { width: 28px; height: 28px; }
.blt-benefits strong { display: block; margin-bottom: 4px; font-size: 18px; line-height: 1.3; }
.blt-benefits li span:not(.blt-icon):not(.blt-benefit-mark) { color: var(--mute); font-size: 16px; line-height: 1.5; }

/* Delivery */
.blt-delivery { background: var(--grey); }
.blt-delivery-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 56px 72px; }
.blt-delivery-main h2 { font-size: clamp(34px, 3.6vw, 52px); }
.blt-delivery-main p { max-width: 600px; margin-top: 24px; font-size: 18px; }
.blt-months { display: grid; grid-template-columns: repeat(3, 1fr) 1.3fr; gap: 4px; max-width: 600px; margin-top: 32px; }
.blt-months span, .blt-months strong { display: flex; align-items: flex-end; height: 64px; padding: 10px 12px; background: #fff; color: var(--navy); font-size: 19px; font-weight: 700; }
.blt-months strong { background: var(--or); color: #fff; font-size: 24px; }
.blt-delivery-block { padding-top: 28px; border-top: 4px solid var(--navy); }
.blt-delivery-block h3 { font-size: 26px; margin-bottom: 14px; }
.blt-delivery-block p { max-width: 620px; }
.blt .blt-slogan { margin-top: 24px; color: var(--or-ink); font-size: clamp(28px, 2.6vw, 38px); font-weight: 700; line-height: 1.05; letter-spacing: -.03em; }
.blt-ms { display: flex; flex-wrap: wrap; gap: 14px 22px; margin-top: 20px !important; }
.blt-ms li { display: flex; align-items: center; gap: 8px; font-size: 15px; font-weight: 700; }
.blt-ms img { width: 24px; height: 24px !important; object-fit: contain; }

/* Why choose */
.blt-why-grid { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 72px; align-items: stretch; }
.blt-why-list { margin-top: 40px !important; }
.blt-why-list li { display: flex; gap: 16px; padding: 16px 0; }
.blt-why-list .blt-icon { width: 26px; height: 26px; margin-top: 1px; color: var(--or); }
.blt-why-list strong { display: block; font-size: 20px; line-height: 1.3; }
.blt-why-list span { color: var(--mute); font-size: 16px; }
.blt-future { display: flex; flex-direction: column; justify-content: center; padding: 48px; background: var(--or); color: #fff; }
.blt-future h3 { color: #fff !important; font-size: clamp(32px, 3vw, 44px); line-height: 1.05; letter-spacing: -.03em; }
.blt .blt-future p { margin: 18px 0 32px; color: #fff; font-size: 24px; line-height: 1.3; }

/* Orange band with notch, as on the brochure back pages */
.blt-band { position: relative; background: var(--or); overflow: hidden; }
.blt-band::before, .blt-band::after { content: ''; position: absolute; top: 0; bottom: 0; width: 180px; background: var(--or-deep); }
.blt-band::before { right: 0; clip-path: polygon(100% 0, 100% 100%, 0 100%); }
.blt-band::after { right: 220px; width: 120px; clip-path: polygon(0 100%, 100% 0, 100% 100%); opacity: .55; }
.blt-band .blt-wrap { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 96px; }
.blt-band img { width: 150px; }
.blt-band span { color: #fff; font-size: 20px; font-weight: 700; margin-right: 320px; }

/* Related */
.blt-related { padding: 88px 0; }
.blt-related-head { display: flex; justify-content: space-between; align-items: end; gap: 24px; margin-bottom: 36px; }

@media (max-width: 1100px) {
  .blt-wrap { padding: 0 28px; }
  .blt-hero-copy { padding: 24px 28px 56px; }
  .blt-hero-inner { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); }
  .blt-intro-grid, .blt-scope, .blt-why-grid { grid-template-columns: minmax(0, 1fr); gap: 40px; }
  .blt-challenge { grid-template-columns: minmax(0, 1fr); }
  .blt-challenge img { min-height: 0; height: auto !important; aspect-ratio: 16 / 7; }
  .blt-challenge-copy, .blt-benefits { padding: 36px 32px; }
  .blt-tabs button { font-size: 15px; }
  .blt-band span { margin-right: 220px; }
}
@media (max-width: 760px) {
  .blt-wrap { padding: 0 20px; }
  .blt-hero-inner { grid-template-columns: minmax(0, 1fr); min-height: 0; }
  .blt-hero-visual { display: none; }
  .blt-hero-copy { padding: 20px 20px 48px; }
  .blt-crumbs { margin-bottom: 28px; }
  .blt-hero-logo { width: 140px; }
  .blt .blt-hero h1 { padding-left: 0; border-left: 0; font-size: 20px; }
  .blt-tagline { grid-template-columns: 52px minmax(0, 1fr); gap: 12px; }
  .blt-tagline-text { font-size: clamp(28px, 8.4vw, 38px); }
  .blt .blt-hero-system { font-size: 20px; font-weight: 700; }
  .blt-actions { flex-direction: column; align-items: stretch; }
  .blt-section { padding: 72px 0; }
  .blt-modules { padding-top: 0; }
  .blt-tabs { gap: 8px; }
  .blt-tabs button { flex-direction: column; align-items: center; justify-content: center; min-height: 0; padding: 10px 0 12px; }
  .blt-tab-name { display: none; }
  .blt-challenge-copy, .blt-benefits { padding: 28px 20px; }
  .blt-scope { padding: 56px 0; }
  .blt-checks-cols { columns: 2; column-gap: 16px; }
  .blt-checks li { font-size: 15px; }
  .blt-freight, .blt-benefits ul, .blt-delivery-grid { grid-template-columns: minmax(0, 1fr); }
  .blt-benefits-head .blt-hex { width: 56px; height: 64px; font-size: 19px; }
  .blt-delivery-grid { gap: 40px; }
  .blt-future { padding: 32px 24px; }
  .blt .blt-future p { font-size: 24px; }
  .blt-band::after { display: none; }
  .blt-band::before { width: 96px; }
  .blt-band img { width: 120px; }
  .blt-band span { margin-right: 96px; font-size: 19px; }
  .blt-related-head { flex-direction: column; align-items: flex-start; }
}
@media (prefers-reduced-motion: reduce) {
  .blt *, .blt *::before, .blt *::after { transition: none !important; }
}
