/* Mobile hero: natural content height, visible media and aligned certificates.
   Desktop/tablet layout and truck animation keep their existing rules. */
@media (max-width:760px) {
  .sppauto-theme.home-page .hero-media.home-hero {
    display:flex;
    flex-direction:column;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:auto!important;
    gap:0;
    padding:0 0 16px;
    overflow:hidden;
    box-sizing:border-box;
  }

  .sppauto-theme .hero-media.home-hero:after { display:none; }

  .sppauto-theme .hero-media.home-hero > .home-hero-video,
  .sppauto-theme .hero-media.home-hero > .home-hero-mobile-fallback {
    position:relative;
    inset:auto;
    flex:0 0 auto;
    width:100%!important;
    height:clamp(175px,50vw,210px)!important;
    min-height:clamp(175px,50vw,210px)!important;
    max-height:210px!important;
    aspect-ratio:auto!important;
    margin:0;
    object-fit:cover!important;
    object-position:left center!important;
    background:#f5f5f5;
  }

  .sppauto-theme.home-page .hero-media.home-hero > .hero-title-overlay.home-copy {
    position:relative;
    inset:auto;
    transform:none;
    width:auto!important;
    max-width:none;
    min-height:0;
    margin:18px 14px 0;
    padding:6px 0 10px 14px;
    border:0;
    border-inline-start:2px solid var(--red,#c90000);
    box-sizing:border-box;
    text-align:start;
  }

  .sppauto-theme .hero-media.home-hero .hero-title-overlay .kicker {
    margin:0 0 10px;
    font-size:8px;
    line-height:1.6;
    letter-spacing:.14em;
    white-space:normal;
  }

  .sppauto-theme .hero-media.home-hero .hero-title-overlay h1.precision-hero-headline {
    max-width:100%;
    font-size:clamp(28px,8.4vw,36px);
    line-height:1.04;
  }

  .sppauto-theme .hero-media.home-hero .precision-hero-headline .precision-hero-line {
    max-width:100%;
    white-space:normal;
    overflow-wrap:break-word;
  }

  .sppauto-theme .hero-media.home-hero .hero-title-overlay p {
    max-width:none;
    margin:12px 0 0;
    font-size:12px;
    line-height:1.55;
    white-space:normal;
  }

  .sppauto-theme .hero-media.home-hero .sppauto-hero-certifications {
    position:relative;
    inset:auto;
    transform:none;
    flex:0 0 auto;
    width:auto;
    margin:12px 14px 0;
    padding:0;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:0;
    box-sizing:border-box;
  }

  .sppauto-theme .hero-media.home-hero .sppauto-certification {
    --cert-icon-size:36px;
    display:grid;
    grid-template-columns:var(--cert-icon-size) minmax(0,1fr);
    align-items:center;
    justify-content:start;
    gap:8px;
    min-width:0;
    min-height:68px;
    padding:10px 8px;
    border:0;
    box-sizing:border-box;
  }

  .sppauto-theme .hero-media.home-hero .sppauto-certification:nth-child(even) {
    border-inline-start:1px solid #d9dde0;
  }

  .sppauto-theme .hero-media.home-hero .sppauto-certification:nth-child(n+3) {
    border-block-start:1px solid #e1e4e6;
  }

  .sppauto-theme .hero-media.home-hero .sppauto-certification-copy {
    min-width:0;
    text-align:start;
  }

  .sppauto-theme .hero-media.home-hero .sppauto-certification-code {
    display:flex;
    align-items:baseline;
    gap:3px;
    padding-block-end:5px;
    /* Keep the existing border space; draw an equal short accent under each code. */
    border-block-end-color:transparent;
    background-image:linear-gradient(#c90000,#c90000);
    background-size:32px 1px;
    background-position:left bottom;
    background-repeat:no-repeat;
    background-origin:border-box;
    font-size:clamp(10px,2.8vw,12px);
    line-height:1.2;
    letter-spacing:-.015em;
    white-space:nowrap;
  }

  .sppauto-theme .hero-media.home-hero .sppauto-certification-code small {
    font-size:8px;
    line-height:1.2;
  }

  .sppauto-theme .hero-media.home-hero .sppauto-certification-label {
    margin-block-start:5px;
    font-size:8px;
    line-height:1.3;
    letter-spacing:.015em;
    white-space:normal;
    overflow-wrap:break-word;
  }

  .sppauto-theme:lang(ru) .hero-media.home-hero .hero-title-overlay h1.precision-hero-headline {
    font-size:clamp(26px,7.6vw,34px);
  }

  .sppauto-theme:lang(ar) .hero-media.home-hero > .hero-title-overlay.home-copy {
    padding-inline-start:14px;
    padding-inline-end:0;
    border-left:0;
    border-right:2px solid var(--red,#c90000);
  }

  .sppauto-theme:lang(ar) .hero-media.home-hero .hero-title-overlay .kicker,
  .sppauto-theme:lang(ar) .hero-media.home-hero .sppauto-certification-label {
    letter-spacing:0;
  }

  .sppauto-theme:lang(ar) .hero-media.home-hero .sppauto-certification-label {
    font-size:10px;
  }

  .sppauto-theme .hero-media.home-hero > .sppauto-mobile-video-play {
    position:absolute;
    z-index:5;
    top:calc(var(--sppauto-mobile-media-height,50vw) / 2);
    left:50%;
    transform:translate(-50%,-50%);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    max-width:calc(100% - 32px);
    min-height:44px;
    padding:10px 16px;
    border:1px solid rgba(255,255,255,.8);
    border-radius:24px;
    background:rgba(17,21,23,.9);
    color:#fff;
    font:600 12px/1.4 "Aptos","Segoe UI",Arial,sans-serif;
    cursor:pointer;
  }

  .sppauto-theme .hero-media.home-hero > .sppauto-mobile-video-play[hidden] {
    display:none!important;
  }

  .sppauto-theme .hero-media.home-hero > .sppauto-mobile-video-play:focus-visible {
    outline:2px solid #c90000;
    outline-offset:3px;
  }
}

@media (max-width:359px) {
  .sppauto-theme .hero-media.home-hero .sppauto-certification {
    --cert-icon-size:32px;
    gap:6px;
    padding-inline:6px;
  }
}
