/* Homepage-only layout. Inherits the existing SPS font and brand colors. */
.sps-home-hero .gradient-bg { padding-top: 4rem; padding-bottom: 4rem; }
.sps-home-hero h1 { font-size: clamp(2.25rem, 4.2vw, 3.5rem); line-height: 1.15; }
.sps-home-hero h1 span { display: block; }
.sps-home-hero .sps-home-video-shortcut { display: inline-flex; align-items: center; gap: .5rem; margin-top: 1.5rem; color: #393b3e; font-weight: 600; text-decoration: underline; text-underline-offset: .25rem; }
.sps-home-video, .sps-whatsapp-card { scroll-margin-top: 6rem; }
.sps-home-video { padding: 4.5rem 0; background: #f4f4f3; border-block: 1px solid #e4e4e2; }
.sps-home-video__inner { display: grid; grid-template-columns: minmax(0, 640px) minmax(0, 1fr); align-items: center; gap: 3rem; max-width: 1280px; margin: 0 auto; padding: 0 2rem; }
.sps-home-video__frame { position: relative; width: 100%; max-width: 640px; aspect-ratio: 16 / 9; border-radius: 1rem; overflow: hidden; background: #202124; box-shadow: 0 8px 24px rgb(32 33 36 / .10); }
.sps-home-video__frame iframe { display: block; position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.sps-home-video__copy { min-width: 0; }
.sps-home-video__eyebrow { display: inline-block; margin: 0 0 1rem; padding-bottom: .45rem; border-bottom: 3px solid #ffd000; color: #55575b; font-size: .875rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.sps-home-video h2 { margin: 0 0 1.25rem; color: #202124; font-size: clamp(1.75rem, 2.4vw, 2.25rem); line-height: 1.2; font-weight: 700; }
.sps-home-video__copy > p:not(.sps-home-video__eyebrow) { margin: 0 0 1.5rem; color: #55575b; font-size: 1.0625rem; line-height: 1.7; }
.sps-home-channel-link, .sps-whatsapp-button { display: inline-flex; justify-content: center; align-items: center; gap: .625rem; min-height: 48px; padding: .8rem 1.1rem; border: 1px solid #202124; border-radius: .5rem; color: #202124; font-weight: 600; line-height: 1.4; text-align: center; text-decoration: none; }
.sps-home-channel-link { background: #fff; }
.sps-home-channel-link:hover { background: #fff6cc; }
.sps-home-channel-link svg, .sps-whatsapp-button svg, .sps-home-socials svg { width: 1.25rem; height: 1.25rem; flex: 0 0 auto; }
.sps-whatsapp-card { display: grid; grid-template-columns: 164px minmax(0, 1fr); align-items: center; gap: 1.25rem; margin-top: 1.75rem; padding-top: 1.75rem; border-top: 1px solid #dcdcdc; }
.sps-whatsapp-card__qr { display: block; width: 164px; height: 164px; background: #fff; border-radius: .5rem; }
.sps-whatsapp-card__qr img { display: block; width: 100%; height: 100%; }
.sps-whatsapp-card__copy { min-width: 0; }
.sps-whatsapp-card h3 { margin: 0 0 .5rem; color: #202124; font-size: 1.25rem; line-height: 1.4; font-weight: 700; }
.sps-whatsapp-card__number { margin: 0 0 .5rem; color: #202124; font-size: 1rem; font-weight: 600; user-select: text; }
.sps-whatsapp-card__help { margin: 0 0 1rem; color: #55575b; font-size: .875rem; line-height: 1.6; }
.sps-whatsapp-button { width: 100%; padding-inline: .75rem; border-color: #ffd000; background: #ffd000; font-size: .9375rem; }
.sps-whatsapp-button:hover { border-color: #edc200; background: #edc200; }
.sps-home-socials { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; }
.sps-home-socials > a { display: inline-flex; align-items: center; gap: .4rem; margin: 0; font-size: .9375rem; }
.sps-home-video a:focus-visible, .sps-whatsapp-card a:focus-visible { outline: 2px solid #202124; outline-offset: 4px; }
@media (max-width: 1023px) {
  .sps-home-hero .gradient-bg { padding-block: 3rem; }
  .sps-home-video__inner { grid-template-columns: minmax(0, 1fr); gap: 2rem; max-width: 704px; }
  .sps-home-video__copy { grid-row: 1; }
  .sps-home-video__frame { grid-row: 2; }
}
@media (max-width: 599px) {
  .sps-home-video { padding-block: 3rem; }
  .sps-home-video__inner { padding-inline: 1.5rem; }
  .sps-home-channel-link { width: 100%; }
  .sps-whatsapp-card { grid-template-columns: minmax(0, 1fr); gap: 1.25rem; }
  .sps-whatsapp-card__copy { grid-row: 1; }
  .sps-whatsapp-card__qr { grid-row: 2; justify-self: center; }
}

/* Compact homepage search follows the three equipment sectors. */
#product-search-section { padding-block: 2.125rem; scroll-margin-top: 5rem; }
#product-search-section .sps-home-search-card { padding-block: 1.375rem; }

/* Product sectors form the homepage introduction; source photos stay uncropped. */
.sps-home-top-anchor { scroll-margin-top: 4rem; }
#services.sps-home-products { padding-top: 3rem; }
.sps-home-products .sps-home-products-heading { margin-bottom: 2.5rem; }
@media (max-width: 599px) {
  #services.sps-home-products { padding-top: 2rem; }
  .sps-home-products .sps-home-products-heading { margin-bottom: 2rem; }
}
