:root { --header-height:85px; --scene-height:calc(100svh - var(--header-height)); }
html { scroll-padding-top:var(--header-height); }
body { padding-top:var(--header-height); }
.site-header { position:fixed; inset:0 0 auto; transform:none!important; transition:none; }
main section[id] { scroll-margin-top:0; }
.hero,.combined-offer,.model-panels,.delivery-scene,.journeys,.connections,.contact { min-height:var(--scene-height); }
.journeys { background:var(--cream); }
.model-panels { background:var(--cream); }
.split-enabled .model-panels { background:transparent; }
.hero { --hero-ticker-height:58px; display:flex; flex-direction:column; justify-content:center; padding-bottom:calc(35px + var(--hero-ticker-height)); }
.hero > .ticker { position:absolute; inset:auto 0 0; height:var(--hero-ticker-height); color:var(--ink); }
.section-transitioning .hero > .ticker > .ticker-track { animation-play-state:paused; }
@media(max-width:720px) {
  .hero { --hero-ticker-height:56px; padding-bottom:calc(32px + var(--hero-ticker-height)); }
}
.hero-collage { width:100%; flex-shrink:0; }
.hero-bottom { flex-shrink:0; }
.journeys { display:flex; flex-direction:column; justify-content:center; }
.connections { display:flex; flex-direction:column; justify-content:center; }
.contact { align-content:center; }
h1,h2 { font-kerning:none; text-rendering:optimizeSpeed; }
.delivery-scene { background-image:url('assets/delivery-landscape.svg'); }
.delivery-scene-copy { gap:clamp(20px,2.5svh,30px); }
@media(min-width:1000px) {
  .delivery-scene { padding:40px 5vw 100px; }
  .delivery-scene-copy { width:min(46vw,780px); max-width:none; }
  .delivery-scene h2 { font-size:clamp(72px,7.4vw,140px); line-height:1.02; }
  .delivery-scene-copy p { max-width:680px; font-size:clamp(20px,1.4vw,26px); line-height:1.5; }
  .delivery-scene-copy .button { padding:20px 28px; font-size:clamp(18px,1.15vw,21px); }
}
@media(min-width:1000px) and (max-height:950px) {
  .delivery-scene { padding-block:28px 76px; }
  .delivery-scene-copy { gap:18px; }
  .delivery-scene h2 { font-size:clamp(68px,6vw,92px); }
  .delivery-scene-copy p { font-size:19px; }
  .delivery-scene-copy .button { padding:16px 24px; font-size:18px; }
}
@media(max-width:999px) {
  .delivery-scene-copy p { font-size:18px; line-height:1.5; }
  .delivery-scene-copy .button { font-size:16px; }
}
@media(max-width:720px) {
  .delivery-scene h2 { font-size:clamp(52px,12vw,76px); }
}
.delivery-rider { position:absolute; inset:0; pointer-events:none; background:url('assets/delivery-rider.svg') right bottom/cover no-repeat; will-change:transform; }
@media(max-width:1279px) { .delivery-rider { background-size:100% auto; } }
@media(max-width:720px) {
  .delivery-scene { background-image:url('assets/delivery-art.svg'); }
  .delivery-rider { display:none; }
}
@media(prefers-reduced-motion:reduce) { .delivery-rider { will-change:auto; } }
@media(max-width:720px) { :root { --header-height:72px; } }
.section-transition {
  position:fixed;
  inset:var(--header-height) 0 0;
  z-index:40;
  pointer-events:none;
  overflow:hidden;
  isolation:isolate;
}
.transition-outer,.transition-inner,.transition-scene {
  position:absolute;
  inset:0;
  overflow:hidden;
  will-change:transform;
}
.transition-scene { overflow:hidden; }
.transition-scene>.observer-snapshot {
  position:absolute!important;
  left:0;
  width:100%;
  margin:0!important;
  visibility:visible!important;
}
.observer-snapshot,.observer-snapshot * { transition:none!important; }
.observer-snapshot .commission-heading {
  max-width:1160px;
  font-size:clamp(44px,5.8vw,86px);
  line-height:1.03;
  margin:0 auto;
}
.transition-line { overflow:clip; padding-bottom:.12em; margin-bottom:-.12em; }
.transition-char { will-change:transform,opacity; }
@media (prefers-reduced-motion:reduce) { .section-transition { display:none; } }
