:root {
  color-scheme:dark;
  --orange:#ff8732;
  --muted:#9fb4c3
}
* {
  box-sizing:border-box
}
html {
  scroll-behavior:smooth
}
body {
  margin:0;
  background:#080b10;
  color:#f6f9fb;
  font-family:Arial,Helvetica,sans-serif
}
a {
  color:inherit;
  text-decoration:none
}
button {
  font:inherit;
  cursor:pointer
}
button,a {
  touch-action:manipulation
}
button:focus-visible,a:focus-visible {
  outline:3px solid #a7e9ff;
  outline-offset:5px
}
.skip-link {
  position:absolute;
  z-index:20;
  top:-80px;
  left:20px;
  background:#fff;
  color:#000;
  padding:12px
}
.skip-link:focus {
  top:15px
}
.film {
  position:relative;
  background:#000;
  isolation:isolate;
  width:100%;
  height:min(100svh,56.25vw);
  min-height:460px;
  overflow:hidden
}
.film canvas {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain
}
.header {
  position:absolute;
  top:25px;
  left:5%;
  right:5%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  z-index:5;
  opacity:0;
  transition:opacity 1s;
  visibility:hidden
}
.header.visible {
  opacity:1;
  visibility:visible
}
.brand img {
  width:190px;
  height:auto;
  display:block
}
.nav a {
  display:flex;
  align-items:center;
  min-height:44px
}
.nav {
  display:flex;
  align-items:center;
  gap:30px;
  font-size:13px
}
.controls {
  position:absolute;
  z-index:6;
  bottom:22px;
  left:5%;
  right:5%;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:15px
}
.controls button {
  min-height:44px;
  padding:10px 16px;
  border-radius:28px;
  border:1px solid #455969;
  background:#06131ec9;
  color:#dce8ef;
  font-size:12px
}
.controls span {
  font-size:10px;
  letter-spacing:.19em;
  color:#b8c8d4
}
.line {
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  height:2px;
  background:#14232c
}
.line div {
  height:100%;
  width:0;
  background:var(--orange)
}
.film .reveal {
  position:absolute;
  inset:0;
  z-index:3;
  background:linear-gradient(90deg,#03101aee,#03101a88 62%,#03101a00);
  padding:0 7%;
  display:flex;
  justify-content:center;
  flex-direction:column;
  opacity:0;
  visibility:hidden;
  transition:opacity 1.2s
}
.film .reveal.visible {
  opacity:1;
  visibility:visible
}
.eyebrow {
  font-size:11px;
  letter-spacing:.21em;
  color:var(--orange)
}
h1 {
  font-size:clamp(44px,5.7vw,88px);
  line-height:.99;
  letter-spacing:-.055em;
  max-width:850px;
  margin:22px 0
}
h1 span {
  color:var(--orange)
}
.reveal p {
  max-width:460px;
  color:#c0cdd7;
  line-height:1.65;
  font-size:15px
}
.actions {
  display:flex;
  flex-wrap:wrap;
  gap:13px;
  margin-top:17px
}
.cta {
  display:inline-flex;
  align-items:center;
  gap:25px;
  padding:17px 22px;
  border:1px solid #668090;
  border-radius:30px;
  color:#e9f1f6;
  background:#06141dcc;
  font-size:13px
}
.cta.primary {
  background:var(--orange);
  color:#08121a;
  border-color:var(--orange)
}
.status {
  position:absolute;
  left:50%;
  top:46%;
  transform:translate(-50%,-50%);
  font-size:12px;
  color:#9fb4c3;
  text-align:center;
  z-index:4
}
.status:empty {
  display:none
}
.fallback {
  position:absolute;
  inset:0;
  background:#071520;
  color:white;
  z-index:4;
  padding:100px 7%
}
.fallback h2 {
  max-width:600px
}
.hidden {
  display:none!important
}
.intro-note {
  margin:0;
  padding:14px 6%;
  border-bottom:1px solid #1e3443;
  color:#89a3b5;
  font-size:11px;
  display:flex;
  justify-content:space-between;
  gap:20px
}
.content {
  max-width:1450px;
  margin:auto;
  padding:90px 7%
}
.section-head {
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:40px;
  margin-bottom:45px
}
.section-head h2 {
  font-size:clamp(30px,3vw,47px);
  letter-spacing:-.04em;
  line-height:1.1;
  margin:14px 0
}
.section-head p {
  max-width:390px;
  color:var(--muted);
  line-height:1.7;
  font-size:14px
}
.paths {
  display:grid;
  grid-template-columns:1fr 1fr;
  border-top:1px solid #345061;
  border-bottom:1px solid #345061
}
.path {
  padding:45px 45px 50px 0
}
.path+ .path {
  border-left:1px solid #345061;
  padding-left:45px
}
.path .number {
  color:#a7bdcc;
  font-size:11px;
  letter-spacing:.18em
}
.path h3 {
  font-size:32px;
  letter-spacing:-.04em;
  margin:22px 0 16px
}
.path p {
  max-width:470px;
  color:#a7bdcc;
  font-size:15px;
  line-height:1.8
}
.path .tag {
  font-size:11px;
  letter-spacing:.13em;
  color:#ffab69
}
.steps {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:28px;
  margin:65px 0
}
.step {
  border-top:1px solid #2b4757;
  padding-top:24px
}
.step h3 {
  font-size:19px;
  font-weight:500
}
.step p {
  font-size:14px;
  color:var(--muted);
  line-height:1.7
}
.contact-strip {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:35px;
  padding:45px;
  background:#0b202e;
  border-radius:15px
}
.contact-strip h2 {
  font-size:30px;
  letter-spacing:-.035em;
  margin:0 0 13px
}
.contact-strip p {
  color:#a7bdcc;
  line-height:1.7;
  font-size:14px;
  max-width:640px
}
footer {
  border-top:1px solid #1b3343;
  padding:28px 7%;
  display:flex;
  justify-content:space-between;
  gap:25px;
  flex-wrap:wrap;
  font-size:11px;
  color:#7998ad
}
footer a {
  color:#adbeca
}
noscript .reveal {
  visibility:visible;
  opacity:1
}
.fleet {
  margin-top:75px
}
.fleet-options {
  list-style:none;
  margin:0 0 30px;
  padding:0;
  display:grid;
  grid-template-columns:repeat(5,1fr);
  border-top:1px solid #36424b;
  border-bottom:1px solid #36424b
}
.fleet-options li {
  padding:25px 15px;
  font-size:14px;
  border-right:1px solid #36424b
}
.fleet-options li:last-child {
  border:0
}
.contact-links {
  display:flex;
  flex-wrap:wrap;
  gap:8px 25px
}
.contact-links a {
  display:flex;
  align-items:center;
  min-height:44px;
  font-size:14px;
  color:#ffb57a;
  text-decoration:underline;
  text-underline-offset:5px
}
/* A shared visual language for quote, services, company and contact. */
#logimate-marketing .quote-console,#logimate-marketing .about-panel{position:relative;overflow:hidden;border:1px solid #754324;border-radius:20px;padding:clamp(24px,5vw,64px);margin:0 0 70px;background:radial-gradient(ellipse at 95% 0%,#73371455,transparent 60%),linear-gradient(135deg,#13191e,#080b10)}
#logimate-marketing .quote-console h2,#logimate-marketing .about-panel h2{font-size:clamp(32px,5vw,60px);line-height:1.08;margin:20px 0}
#logimate-marketing .quote-console h2 span{color:#ff8732}
#logimate-marketing .quote-console p,#logimate-marketing .about-panel p{max-width:760px;line-height:1.75;color:#bcc8d2}
#logimate-marketing .quote-features{display:flex;flex-wrap:wrap;gap:12px;margin:25px 0 30px}
#logimate-marketing .quote-features span{border:1px solid #794925;border-radius:30px;padding:10px 16px;color:#ffd2b0;font-size:13px}
#logimate-marketing .quote-detail,#logimate-marketing .company-detail{font-size:13px}
#logimate-marketing .quote-detail a{color:#ffb57a}
#logimate-marketing .about-panel{margin-top:60px}
#logimate-marketing .content section{scroll-margin-top:24px}
#logimate-marketing .path,#logimate-marketing .step,#logimate-marketing .fleet-options li{transition:border-color .3s,background .3s,transform .3s}
@media(hover:hover){#logimate-marketing .path:hover{border-color:#ff8732;transform:translateY(-4px)}#logimate-marketing .fleet-options li:hover{background:#ff873217}}
@supports(animation-timeline:view()){@media(prefers-reduced-motion:no-preference){#logimate-marketing .content section{animation:logimate-arrive linear both;animation-timeline:view();animation-range:entry 0% entry 22%}@keyframes logimate-arrive{from{opacity:1;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}}}
@media(max-width:599px){#logimate-marketing .quote-console .cta{width:100%;box-sizing:border-box}#logimate-marketing .quote-features{gap:8px}#logimate-marketing .quote-features span{padding:9px 12px}}
@media(prefers-reduced-motion:reduce){#logimate-marketing .path,#logimate-marketing .step,#logimate-marketing .fleet-options li{transition:none}}

/* Mobile enquiry shortcuts; hidden during intro and embedded calculator use. */
.quick-booking{display:none}
@media(max-width:599px){
#logimate-marketing:has(.film-complete) .quick-booking,#logimate-marketing:has(.reveal.visible) .quick-booking,#logimate-marketing:has(.fallback:not(.hidden)) .quick-booking{display:flex;position:fixed;z-index:18;left:12px;right:80px;bottom:max(12px,env(safe-area-inset-bottom));gap:8px;padding:8px;border:1px solid #ff873260;border-radius:18px;background:#080b10f5;box-shadow:0 4px 24px #0008}
.quick-booking a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 12px;border-radius:12px;font-size:13px;line-height:1.4}
.quick-booking .quick-quote{flex:1;background:#ff8732;color:#08121a;font-weight:700}
#logimate-marketing:has(.calculator-frame-slot:not([hidden])) .quick-booking{display:none}
#logimate-marketing footer{padding-bottom:110px}
}
/* Original circular LogiMate truck mark, displayed without stretching. */
.brand img{width:68px;height:68px;object-fit:contain}.page-header img{width:68px;height:68px;object-fit:contain}.mobile-nav img{width:46px;height:46px;object-fit:contain}
/* Primary destinations are visible before the cinematic intro starts. */
#logimate-marketing .home-header{position:relative;inset:auto;display:flex;opacity:1;visibility:visible;transition:none;z-index:7;padding:16px 6%;background:#080b10;border-bottom:1px solid #ff873240;gap:20px;flex-wrap:wrap}
#logimate-marketing .home-header .nav{max-width:none;gap:4px 24px;flex-wrap:wrap;justify-content:flex-start}
#logimate-marketing .home-header .brand img{width:68px;height:68px}
#logimate-marketing .mobile-nav{display:none}
@media(max-width:599px){#logimate-marketing .home-header{gap:10px;padding:12px 6%}#logimate-marketing .home-header .brand img{width:54px;height:54px}#logimate-marketing .home-header .nav{width:100%;margin-top:0;gap:0 18px}#logimate-marketing .home-header .nav a{font-size:13px;min-height:44px}}

