/* Mobile-optimised overrides (loaded only on <= 900px) */
.container{width: min(var(--max), calc(100% - 28px));}

h1{font-size: 36px; line-height: 1.08; letter-spacing: -0.6px;}
h2{font-size: 28px;}
.lead{font-size: 16px;}

.hero{padding: 34px 0 10px;}
.hero__actions{gap:10px;}
.hero__actions .btn{width:100%; justify-content:center;}

.brand__logo{height: 30px;}

.card__text{padding: 14px 14px 16px;}
.hero-shot{max-height: 520px;}

.section{padding: 44px 0;}
.section--alt{padding: 44px 0;}

/* Turn screenshot grid into a swipeable carousel */
.gallery{
  display:flex;
  gap:12px;
  overflow-x:auto;
  padding-bottom: 6px;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
}
.gallery::-webkit-scrollbar{display:none;}
.shot{
  flex: 0 0 78%;
  scroll-snap-align: start;
}
.shot img{
  max-height: 560px;
}

/* Footer spacing */
.footer{padding: 24px 0 28px;}
.footer__inner{gap:10px;}
