/* Homepage navigation + hero sizing — 2026-09-10 */
.navlinks a.shop-link{
  color:#59dcf5;
  font-weight:800;
  white-space:nowrap;
}
.navlinks a.shop-link:hover{
  color:#fff;
  text-shadow:0 0 14px rgba(89,220,245,.38);
}

/* Rebalance hero so the diagnostic visual does not dominate the copy. */
.hero-premium .hero-grid{
  grid-template-columns:1.05fr .95fr;
  gap:42px;
  align-items:center;
}
.approved-bmw-art{
  width:100%;
  max-width:600px;
  justify-self:end;
}
.approved-bmw-art img{
  width:100%;
  max-width:600px;
  height:auto;
  min-height:0;
  object-fit:contain;
  object-position:center;
}

@media (min-width:901px){
  .navlinks{gap:17px;}
}

@media (max-width:1100px){
  .hero-premium .hero-grid{
    grid-template-columns:1fr 1fr;
    gap:30px;
  }
  .approved-bmw-art{max-width:540px;}
  .approved-bmw-art img{max-width:540px;}
}

@media (max-width:900px){
  .hero-premium .hero-grid{grid-template-columns:1fr;}
  .approved-bmw-art{
    max-width:580px!important;
    margin:10px auto 0;
    justify-self:center;
  }
  .approved-bmw-art img{
    width:100%;
    max-width:580px;
    height:auto;
    min-height:0;
    object-fit:contain;
  }
}

@media (max-width:520px){
  .hero-premium .approved-bmw-art{
    display:block!important;
    max-width:100%!important;
  }
  .hero-premium .approved-bmw-art img{
    width:100%;
    max-width:100%;
    min-height:0;
    height:auto;
    object-fit:contain;
  }
}

/* BMW service identity, readable hero and accessible homepage targets. */
.hero-premium h1{font-size:clamp(2.6rem,4.4vw,4.4rem);line-height:1.06}
.navlinks a.btn{color:#fff}
.footer-grid a{display:inline-flex;align-items:center;min-height:44px;min-width:44px}
@media(max-width:900px){.hero-premium h1{font-size:clamp(2.1rem,9vw,3.3rem);line-height:1.08}}

.navlinks a.btn:hover,.hero-premium .btn:hover{background:#286bc4;color:#fff}
