/* What We Do â€” Surface Pro 7 (901â€“1100px): top promo bar ("pati").
   Compact centered row: short offer + phone + chat, no middle gap / no clip.
   Does not change phone (<901) or desktop (>1100). */

@media screen and (min-width: 901px) and (max-width: 1100px) {
  html body[class].has-top-promo-bar .top-promo-bar {
    overflow: visible !important;
  }

  html body[class].has-top-promo-bar .top-promo-bar__inner {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    max-width: 100% !important;
    width: 100% !important;
    padding: 6px 14px !important;
    box-sizing: border-box !important;
  }

  html body[class].has-top-promo-bar .top-promo-bar__offer {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    flex: 0 1 auto !important;
    min-width: 0 !important;
  }

  html body[class].has-top-promo-bar .top-promo-bar__badge {
    flex-shrink: 0 !important;
    font-size: 9px !important;
    padding: 3px 8px !important;
    letter-spacing: 0.03em !important;
  }

  html body[class].has-top-promo-bar
    .top-promo-bar__text:not(.top-promo-bar__text--mobile) {
    display: none !important;
  }

  html body[class].has-top-promo-bar .top-promo-bar__text--mobile {
    display: inline !important;
    white-space: nowrap !important;
    font-size: 11px !important;
    line-height: 1.25 !important;
    min-width: 0 !important;
  }

  html body[class].has-top-promo-bar .top-promo-bar__cta-link {
    font-size: 11px !important;
    white-space: nowrap !important;
  }

  html body[class].has-top-promo-bar .top-promo-bar__contact {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 10px !important;
    flex: 0 0 auto !important;
  }

  html body[class].has-top-promo-bar .top-promo-bar__link {
    font-size: 10px !important;
    gap: 5px !important;
  }

  html body[class].has-top-promo-bar .top-promo-bar__link i {
    font-size: 10px !important;
  }

  html body[class].has-top-promo-bar nav#nav,
  html body[class].has-top-promo-bar nav {
    top: 40px !important;
  }

  html body[class].has-top-promo-bar nav#nav.scrolled,
  html body[class].has-top-promo-bar nav.scrolled {
    top: 34px !important;
  }
}

/* Phone / Galaxy S20 Ultra (â‰¤768px) â€” review thumbs full height + text not cramped.
   Kept in this late-loaded shared file so it beats page CSS. Desktop unchanged. */
@media screen and (max-width: 768px) {
  html body #testimonials.testimonials-section .testi-card {
    align-items: stretch !important;
    width: min(92vw, 380px) !important;
  }

  html body #testimonials.testimonials-section .testi-card > .testi-video {
    display: block !important;
    align-self: stretch !important;
    width: 120px !important;
    min-width: 120px !important;
    flex: 0 0 120px !important;
    height: auto !important;
    min-height: 100% !important;
    aspect-ratio: auto !important;
    background: #0f1024 !important;
  }

  html body #testimonials.testimonials-section .testi-card .testi-video img:not(.testi-video__logo),
  html body #testimonials.testimonials-section .testi-card:hover .testi-video img:not(.testi-video__logo),
  html body #testimonials.testimonials-section .testi-video img,
  html body #testimonials.testimonials-section .testi-card:hover .testi-video img {
    object-fit: cover !important;
    object-position: center center !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
  }

  html body #testimonials.testimonials-section .testi-content {
    min-width: 0 !important;
    padding: 14px 12px 12px !important;
    box-sizing: border-box !important;
  }

  html body #testimonials.testimonials-section .testi-quote {
    font-size: 13px !important;
    line-height: 1.45 !important;
    -webkit-line-clamp: 5 !important;
    line-clamp: 5 !important;
  }

  html body #testimonials.testimonials-section .testi-author {
    padding-top: 10px !important;
    gap: 8px !important;
  }

  html body #testimonials.testimonials-section .testi-name {
    font-size: 13px !important;
  }

  html body #testimonials.testimonials-section .testi-role {
    font-size: 11px !important;
    line-height: 1.3 !important;
  }

  /* Logo Branding + Web Design only: text-only mobile reviews (hide thumb).
     Do NOT use page-logo-design alone â€” many SEO pages share that class. */
  html body.page-logo-branding.page-logo-design.page-logo-design-v2
    #testimonials.testimonials-section
    .testi-card
    > .testi-video,
  html
    body.page-web-design.page-web-design-v2:not(.page-video-editing):not(
      .page-ecommerce
    )
    #testimonials.testimonials-section
    .testi-card
    > .testi-video {
    display: none !important;
  }

  html body.page-logo-branding.page-logo-design.page-logo-design-v2
    #testimonials.testimonials-section
    .testi-card,
  html
    body.page-web-design.page-web-design-v2:not(.page-video-editing):not(
      .page-ecommerce
    )
    #testimonials.testimonials-section
    .testi-card {
    width: min(88vw, 360px) !important;
    min-height: auto !important;
    height: auto !important;
    flex-direction: column !important;
  }

  html body.page-logo-branding.page-logo-design.page-logo-design-v2
    #testimonials.testimonials-section
    .testi-content,
  html
    body.page-web-design.page-web-design-v2:not(.page-video-editing):not(
      .page-ecommerce
    )
    #testimonials.testimonials-section
    .testi-content {
    width: 100% !important;
    padding: 20px 18px 18px !important;
  }

  html body.page-logo-branding.page-logo-design.page-logo-design-v2
    #testimonials.testimonials-section
    .testi-quote {
    font-size: inherit !important;
    line-height: inherit !important;
    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
    display: block !important;
  }

  html body.page-logo-branding.page-logo-design.page-logo-design-v2
    #testimonials.testimonials-section
    .testi-author,
  html
    body.page-web-design.page-web-design-v2:not(.page-video-editing):not(
      .page-ecommerce
    )
    #testimonials.testimonials-section
    .testi-author {
    padding-top: 14px !important;
  }

  html body.page-logo-branding.page-logo-design.page-logo-design-v2
    #testimonials.testimonials-section
    .testi-name,
  html
    body.page-web-design.page-web-design-v2:not(.page-video-editing):not(
      .page-ecommerce
    )
    #testimonials.testimonials-section
    .testi-name,
  html body.page-logo-branding.page-logo-design.page-logo-design-v2
    #testimonials.testimonials-section
    .testi-role,
  html
    body.page-web-design.page-web-design-v2:not(.page-video-editing):not(
      .page-ecommerce
    )
    #testimonials.testimonials-section
    .testi-role {
    font-size: inherit !important;
    line-height: inherit !important;
  }

  /* Ecommerce only â€” hide review thumbs + slightly larger quote text */
  html body.page-ecommerce #testimonials.testimonials-section .testi-card > .testi-video {
    display: none !important;
  }

  html body.page-ecommerce #testimonials.testimonials-section .testi-card {
    width: min(88vw, 360px) !important;
    min-height: auto !important;
    height: auto !important;
    flex-direction: column !important;
  }

  html body.page-ecommerce #testimonials.testimonials-section .testi-content {
    width: 100% !important;
    padding: 20px 18px 18px !important;
  }

  html body.page-ecommerce #testimonials.testimonials-section .testi-quote {
    font-size: 15px !important;
    line-height: 1.5 !important;
    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
    display: block !important;
  }
}

/* Apparel mobile — form equal L/R visual gaps (clear side-rail); loads last */
@media screen and (max-width: 768px) {
  html body.page-apparel.has-top-promo-bar.page-logo-design .hero.hero--apparel,
  html body.page-apparel .hero.hero--apparel {
    padding-left: 16px !important;
    padding-right: calc(16px + var(--side-rail-tab-w, 40px)) !important;
    box-sizing: border-box !important;
  }

  html body.page-apparel .apparel-hero__inner,
  html body.page-apparel .apparel-hero__visual,
  html body.page-apparel .apparel-hero__cluster,
  html body.page-apparel .apparel-hero__form-wrap,
  html body.page-apparel .apparel-hero__form.lead-form--hero-v2 {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform: none !important;
    box-sizing: border-box !important;
  }
}
