/* Product previews: scoped to the replaced media and grouped sections. */
.sp-product-section { width: 100%; padding: 24px 12px; color: #c8e1f2; font-family: var(--contentfont, Poppins), sans-serif; }
.sp-product-section *, .sp-product-section *::before, .sp-product-section *::after { box-sizing: border-box; }
.sp-product-section h2 { margin: 0 0 16px; font-family: var(--headlinefont, Poppins), sans-serif; font-size: clamp(26px, 3vw, 42px); font-weight: 800; line-height: 1.2; color: #c8e1f2; }
.sp-product-section h3 { margin: 0 0 6px; font-size: 22px; line-height: 1.3; color: #c8e1f2; font-weight: 700; }
.sp-product-section p { margin: 0 0 18px; font-size: 17px; line-height: 1.6; color: #c8e1f2; }
.sp-section-heading { max-width: 780px; margin: 0 auto 30px; text-align: center; }
.sp-product-section .sp-eyebrow { color: #6bcaff; font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.sp-tracking-grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); align-items: center; gap: 48px; max-width: 1060px; margin: auto; }
.sp-product-section figure { margin: 0; }
.sp-product-section img { display: block; width: 100%; height: auto; margin: 0 auto; object-fit: contain; border-radius: 14px; }
.sp-product-section a { display: block; border-radius: 14px; }
.sp-product-section a:focus-visible { outline: 3px solid #6bcaff; outline-offset: 5px; }
.sp-product-section figcaption, .sp-product-section .sp-note { margin: 14px 0 0; font-size: 13px; line-height: 1.6; color: #91a9ba; }
.sp-product-section figcaption { text-align: center; }
.sp-personal-results article { padding: 18px 0; border-bottom: 1px solid #1b2735; }
.sp-product-section .sp-result { color: #6bcaff; font-size: clamp(27px, 3vw, 38px); font-weight: 700; margin-bottom: 4px; }
.sp-result span { color: #8298ac; font-weight: 400; }
.sp-personal-results article > p:last-child { margin-bottom: 0; }
.sp-guide-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 42px; max-width: 1120px; margin: auto; }
.sp-guide-grid article { min-width: 0; text-align: center; }
.sp-guide-grid h2 { min-height: 104px; display: flex; align-items: center; justify-content: center; }
.sp-guide-grid img { max-height: 620px; width: 100%; border-radius: 10px; }
.sp-guide-grid article > p:last-child { margin: 22px auto 0; max-width: 480px; }
img.sp-context-image { display: block; width: 100% !important; max-width: 570px !important; height: auto !important; max-height: 600px; object-fit: contain !important; margin: 0 auto; }
img.sp-bundle-image { display: block; width: 100% !important; max-width: 640px !important; height: auto !important; object-fit: contain !important; margin: 0 auto; border-radius: 16px; }
img.sp-brand-image { display: block; width: 108px !important; height: 108px !important; object-fit: contain !important; margin: 0 auto; border-radius: 20px; }
img.sp-guarantee-image { display: block; width: 100% !important; max-width: 320px !important; height: auto !important; object-fit: contain !important; margin: 0 auto; }
img.sp-cover-image { display: block; width: 100% !important; max-width: 300px !important; height: auto !important; object-fit: contain !important; margin: 0 auto; }
@media (max-width: 767px) {
  .sp-product-section { padding: 12px 4px; }
  .sp-tracking-grid, .sp-guide-grid { grid-template-columns: 1fr; gap: 28px; }
  .sp-tracking-grid figure { max-width: 440px; margin: auto; }
  .sp-guide-grid h2 { min-height: 0; }
  .sp-guide-grid article + article { margin-top: 20px; }
  .sp-product-section p { font-size: 16px; }
  .sp-personal-results { text-align: center; }
  .sp-product-section .sp-note { font-size: 12px; }
  img.sp-context-image { max-height: 520px; }
}
