/* WebSourcy QA Maestro 2.12.0-rc1 - staged, page-specific follow-up.
   Work, FAQ EN/ES and Website Installation Service product 27923 only.
   All selectors are page-anchored. No global resets or commercial changes. */

/* P1: The Webcy theme sets a dark heading color over the Work dark hero.
   Explicitly contrast the normal H1 without losing the branded green em. */
body.page-id-28140 .wsx .wsx-hero h1 {
  color: #fbfaff !important;
  max-width: min(1160px, 100%) !important;
  font-size: clamp(40px, 6vw, 88px) !important;
  line-height: 1.04 !important;
  letter-spacing: -.045em !important;
  text-wrap: balance;
  overflow-wrap: break-word;
}
body.page-id-28140 .wsx .wsx-hero h1 em {
  color: #92d050 !important;
  font-style: normal !important;
}
body.page-id-28140 .wsx .wsx-hero .lead {
  max-width: 850px;
  color: #ddd7ee !important;
  line-height: 1.58;
}

/* P1: FAQ English has the default Webcy template; Spanish is Canvas.
   Remove only the enclosing English page width cap, then keep a readable
   centered interior and the same hero rhythm/typography in both languages. */
body.page-id-28235 :is(#primary, #main, .site-content, .content-area, .site-main, .entry-content),
body.page-id-28235 :is(#content > .container, .site-content > .container, .content-area > .container,
                        .site-main > .container, .entry-content > .container) {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}
body:is(.page-id-28235, .page-id-28236) .ws-faq-page .ws-faq-hero {
  width: 100% !important;
  max-width: none !important;
  padding-block: clamp(60px, 6.6vw, 95px) clamp(40px, 4.5vw, 68px) !important;
}
body:is(.page-id-28235, .page-id-28236) .ws-faq-page .ws-faq-hero .ws-faq-wrap {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 1480px !important;
  margin-inline: auto !important;
  padding-inline: clamp(18px, 4.8vw, 84px) !important;
}
body:is(.page-id-28235, .page-id-28236) .ws-faq-page .ws-faq-hero h1 {
  width: 100% !important;
  max-width: 1320px !important;
  margin: 18px auto 24px !important;
  color: #fbfaff !important;
  font-size: clamp(36px, 4.2vw, 64px) !important;
  font-weight: 850 !important;
  line-height: 1.14 !important;
  letter-spacing: -.034em !important;
  text-align: center !important;
  text-wrap: balance;
  overflow-wrap: break-word;
}
body:is(.page-id-28235, .page-id-28236) .ws-faq-page .ws-faq-hero p {
  max-width: 980px !important;
  margin-inline: auto !important;
  line-height: 1.65 !important;
}
body:is(.page-id-28235, .page-id-28236) .ws-faq-page .ws-faq-grid {
  max-width: 1450px !important;
  margin-inline: auto !important;
}

/* P1: Rounded featured product artwork with proper clipping. The gallery's
   slide container is clipped, but thumbnail links and Woo lightbox handlers
   are not removed, hidden, resized to square, or given forced dimensions. */
body.single-product.postid-27923 .woocommerce-product-gallery {
  min-width: 0;
}
body.single-product.postid-27923 .woocommerce-product-gallery .flex-viewport,
body.single-product.postid-27923 .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:first-child {
  border-radius: 24px !important;
  overflow: hidden !important;
  box-shadow: 0 16px 42px rgba(0, 0, 0, .20);
}
body.single-product.postid-27923 .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:first-child a {
  border-radius: inherit;
  display: block;
  overflow: hidden;
}
body.single-product.postid-27923 .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:first-child img,
body.single-product.postid-27923 .woocommerce-product-gallery img.wp-post-image {
  border-radius: 24px !important;
  max-width: 100%;
  height: auto;
  object-fit: contain;
}
body.single-product.postid-27923 .woocommerce-product-gallery .flex-control-thumbs img {
  border-radius: 10px;
}

@media (max-width: 700px) {
  body.page-id-28140 .wsx .wsx-hero h1 {
    font-size: clamp(35px, 8.1vw, 54px) !important;
    line-height: 1.10 !important;
    letter-spacing: -.03em !important;
  }
  body:is(.page-id-28235, .page-id-28236) .ws-faq-page .ws-faq-hero {
    padding-block: 54px 38px !important;
  }
  body:is(.page-id-28235, .page-id-28236) .ws-faq-page .ws-faq-hero h1 {
    font-size: clamp(32px, 7.6vw, 46px) !important;
    line-height: 1.16 !important;
    letter-spacing: -.022em !important;
  }
  body.single-product.postid-27923 .woocommerce-product-gallery .flex-viewport,
  body.single-product.postid-27923 .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:first-child,
  body.single-product.postid-27923 .woocommerce-product-gallery img.wp-post-image {
    border-radius: 18px !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  body.single-product.postid-27923 .woocommerce-product-gallery * {
    transition-duration: 0s !important;
  }
}
