/* Native touch scrolling: no snap-back on small swipes. Stable small-viewport
   height avoids relayout while mobile browser toolbars expand or collapse. */
/* Keep the additional scroll cue out of desktop layout. */
.vt-mobile-scroll-cue{display:none}
@media(max-width:760px){
 html:has(body.vt-home){scroll-padding-top:67px;scroll-snap-type:none}
 .vt-home .vt-home-hero{
  padding:0;
  min-height:calc(100vh - 67px);
  min-height:calc(100svh - 67px);
 }
 .vt-home .vt-home-hero>.vt-wrap{
  min-height:inherit;display:grid;
  grid-template-rows:minmax(24px,1fr) auto auto auto auto minmax(24px,1fr) auto auto;
  padding-bottom:max(12px,env(safe-area-inset-bottom));
 }
 .vt-home .vt-home-hero h1{grid-row:2;margin:0}
 .vt-home .vt-home-hero>.vt-wrap>p{grid-row:3;margin:20px 0 0}
 .vt-home .vt-hero-buttons{grid-row:4;margin-top:26px}
 .vt-home .vt-hero-footnote{grid-row:5;margin-top:14px}
 .vt-home .vt-provider-row{grid-row:7;margin:0;padding:18px 4px;row-gap:12px}
 .vt-home .vt-mobile-scroll-cue{
  grid-row:8;display:flex;align-items:center;justify-content:center;gap:10px;
  min-height:44px;margin-top:6px;justify-self:center;padding:0 18px;
  font-size:11px;color:var(--vt-muted);text-decoration:none;
 }
 .vt-home .vt-mobile-scroll-cue svg{width:16px;height:16px;flex:none}
 .vt-home .vt-mobile-scroll-cue:focus-visible{outline:2px solid var(--vt-text);outline-offset:1px;border-radius:5px}
 .vt-home #models{
  min-height:calc(100vh - 67px);min-height:calc(100svh - 67px);
  display:flex;align-items:center;
 }
}
/* Short screens keep every control reachable, without clipping the hero. */
@media(max-width:760px) and (max-height:700px){
 .vt-home .vt-home-hero>.vt-wrap{grid-template-rows:minmax(16px,1fr) auto auto auto auto minmax(16px,1fr) auto auto;padding-bottom:max(8px,env(safe-area-inset-bottom))}
 .vt-home .vt-home-hero h1{font-size:clamp(34px,10.6vw,44px)}
 .vt-home .vt-home-hero>.vt-wrap>p{margin-top:14px;font-size:13px;line-height:1.8}
 .vt-home .vt-hero-buttons{margin-top:18px}
 .vt-home .vt-hero-footnote{margin-top:10px;font-size:10px}
 .vt-home .vt-provider-row{padding:12px 4px;row-gap:6px}
 .vt-home .vt-provider-row>span{font-size:12px;min-height:26px}
 .vt-home .vt-provider-row img{width:21px;height:21px}
 .vt-home .vt-mobile-scroll-cue{margin-top:0}
}
@media(max-width:760px) and (max-height:480px){
 .vt-home .vt-home-hero>.vt-wrap{grid-template-rows:minmax(12px,1fr) auto auto auto auto minmax(12px,1fr) auto auto}
 .vt-home .vt-home-hero h1{font-size:30px;line-height:1.15}
 .vt-home .vt-home-hero h1 br{display:none}
 .vt-home .vt-home-hero>.vt-wrap>p{margin-top:10px;line-height:1.6}
 .vt-home .vt-hero-buttons{margin-top:12px;max-width:440px;width:100%;justify-self:center}
 .vt-home .vt-hero-buttons .vt-button{min-height:44px;padding-block:10px}
 .vt-home .vt-provider-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding-block:10px}
}
@media(max-width:760px) and (prefers-reduced-motion:no-preference){
 .vt-home.vt-motion-ready .vt-home-hero :is(h1,.vt-hero-buttons,.vt-hero-footnote),
 .vt-home.vt-motion-ready .vt-home-hero>.vt-wrap>p{transform:translate3d(0,calc(var(--vt-hero-travel,0) * -3px),0)}
 .vt-home.vt-motion-ready .vt-mobile-scroll-cue{opacity:clamp(0,calc((var(--vt-hero-opacity,1) - .88) * 8.34),1)}
 .vt-home .vt-mobile-scroll-cue svg{animation:vt-mobile-explore 1.8s ease-in-out 3}
 @keyframes vt-mobile-explore{0%,100%{transform:translateY(-2px)}50%{transform:translateY(3px)}}
}
@media(max-width:760px) and (prefers-reduced-motion:reduce){
 html:has(body.vt-home){scroll-snap-type:none;scroll-behavior:auto}
 .vt-home .vt-mobile-scroll-cue svg{animation:none}
}
