/* ── IDX look & feel for Product Updates tagged with an IDX product (2026-10-24) ──
   Targets any product-update whose Product term slug starts with "idx-" (IDX SmartFrame,
   IDX Wordpress Plugin, and future IDX products). Values mirror the idx-* global classes. ── */
.elementor-location-single.type-product-update[class*=" product-idx-"] { font-family: 'Inter', sans-serif; background-color: #F4F7FA; padding-bottom: 96px; }
.elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-element.elementor-element-32dd254 { --padding-top: 0px; --row-gap: 0px; }
/* Hero band: full-bleed deep navy behind title + status */
.elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-element.elementor-element-1df9450, .elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-element.elementor-element-2e2967f { background-color: #042C53; box-shadow: 0 0 0 100vmax #042C53; clip-path: inset(0 -100vmax); }
.elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-element.elementor-element-1df9450 { padding-top: 80px; flex-direction: column; gap: 14px; }
.elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-element.elementor-element-2e2967f { margin-top: -1px; padding-top: 21px; padding-bottom: 130px; }
.elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-element.elementor-element-1df9450::before { content: "IDX Product Update"; font-weight: 700; font-size: 13px; color: #0BAD95; letter-spacing: 0.5px; line-height: 1.4; text-transform: uppercase; }
.elementor-location-single.type-product-update.product-idx-smartframe .elementor-element.elementor-element-1df9450::before { content: "IDX SmartFrame \00B7  Product Update"; }
.elementor-location-single.type-product-update.product-idx-wordpress-plugin .elementor-element.elementor-element-1df9450::before { content: "IDX WordPress Plugin \00B7  Product Update"; }
.elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-element.elementor-element-1df9450 .elementor-heading-title { color: #FFFFFF; font-weight: 600; letter-spacing: -0.3px; line-height: 1.2; }
/* Status as idx-pill (on dark) */
.elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-element.elementor-element-3d65882 .elementor-icon-list-item { display: inline-flex; align-items: center; padding: 4px 12px; border-radius: 6px; background-color: rgba(255,255,255,0.1); border: 1px solid rgba(255,255,255,0.2); }
.elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-element.elementor-element-3d65882 .elementor-icon-list-text { color: #FFFFFF; font-size: 13px; font-weight: 700; letter-spacing: 0.3px; }
/* Hero image overlaps the band, idx-img treatment */
.elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-element.elementor-element-1ffa3f5 { margin-top: -110px; }
.elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-element.elementor-element-5d1dbef img { border-radius: 16px; box-shadow: 0 16px 40px rgba(4,44,83,0.12); }
.elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-element.elementor-element-7445b75, .elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-element.elementor-element-e95b078, .elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-element.elementor-element-9f21b29 { margin-top: 20px; }
/* Content panels = idx-card */
.elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-element.elementor-element-33a2fb7, .elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-element.elementor-element-0b75139, .elementor-location-single.type-product-update[class*=" product-idx-"] .e-con:has(> .elementor-widget-text-editor):not(:has(.e-con)) { background-color: #FFFFFF; border: 1px solid #E3E9EF; border-radius: 16px; --padding-top: 32px; --padding-bottom: 32px; --padding-left: 28px; --padding-right: 28px; padding: 32px 28px; }
/* Typography: idx-h2 / idx-h3 / idx-body */
.elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-widget-text-editor, .elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-widget-text-editor p, .elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-widget-text-editor li { font-size: 17px; color: #4A5A6A; line-height: 1.6; }
.elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-widget-text-editor h2, .elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-widget-heading:not(.elementor-element.elementor-element-1df9450) .elementor-heading-title { font-weight: 600; font-size: 33px; color: #184777; letter-spacing: -0.3px; line-height: 1.2; }
.elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-widget-text-editor h3 { font-weight: 600; font-size: 21px; color: #184777; line-height: 1.25; }
.elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-widget-text-editor a { color: #0BAD95; font-weight: 600; text-decoration: underline; }
.elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-widget-text-editor ul { list-style: none; padding-left: 0; }
.elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-widget-text-editor ul > li { position: relative; padding-left: 28px; margin-bottom: 11px; }
.elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-widget-text-editor ul > li::before { content: "\2713"; position: absolute; left: 0; font-weight: 700; color: #0BAD95; }
.elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-widget-text-editor img { border-radius: 12px; }
/* CTAs: idx-btn-primary; secondary = idx-btn-outline */
.elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-widget-fbs_cta_repeater a { font-family: 'Inter', sans-serif; font-weight: 700; font-size: 15px; line-height: 1.2; padding: 12px 22px; border-radius: 8px; border: 2px solid #185FA5; background-color: #185FA5; color: #FFFFFF; transition: all 0.15s; }
.elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-widget-fbs_cta_repeater a:hover, .elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-widget-fbs_cta_repeater a:focus-visible { background-color: #0C447C; border-color: #0C447C; color: #FFFFFF; }
.elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-widget-fbs_cta_repeater [class*="secondary"] > a { background-color: #FFFFFF; color: #185FA5; }
.elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-widget-fbs_cta_repeater [class*="secondary"] > a:hover { background-color: #E6F1FB; color: #185FA5; }
/* FAQs: idx-faq-item */
.elementor-location-single.type-product-update[class*=" product-idx-"] .fbs-faq-container { display: flex; flex-direction: column; gap: 12px; }
.elementor-location-single.type-product-update[class*=" product-idx-"] .fbs-faq-item { overflow: hidden; border: 1px solid #E3E9EF; border-radius: 12px; background-color: #FFFFFF; }
.elementor-location-single.type-product-update[class*=" product-idx-"] .fbs-faq-question { margin: 0; padding: 20px 24px !important; font-family: 'Inter', sans-serif; font-weight: 600 !important; font-size: 18px; color: #184777; line-height: 1.35; background: transparent; cursor: pointer; transition: background-color 0.15s; }
.elementor-location-single.type-product-update[class*=" product-idx-"] .fbs-faq-question:hover, .elementor-location-single.type-product-update[class*=" product-idx-"] .fbs-faq-question:focus-visible { background-color: #F7FAFD; }
.elementor-location-single.type-product-update[class*=" product-idx-"] .fbs-faq-question svg { fill: #0BAD95; transition: transform 0.25s; }
.elementor-location-single.type-product-update[class*=" product-idx-"] .fbs-faq-question.active svg { transform: rotate(45deg); }
.elementor-location-single.type-product-update[class*=" product-idx-"] .fbs-faq-answer, .elementor-location-single.type-product-update[class*=" product-idx-"] .fbs-faq-answer p { font-size: 16px; color: #4A5A6A; line-height: 1.65; }
.elementor-location-single.type-product-update[class*=" product-idx-"] .fbs-faq-answer.active { padding: 0 24px 22px; }
.elementor-location-single.type-product-update[class*=" product-idx-"] .fbs-faq-answer a { color: #0BAD95; font-weight: 600; text-decoration: underline; }
@media (max-width: 1024px) {
  .elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-element.elementor-element-1df9450 { padding-top: 56px; }
}
@media (max-width: 767px) {
  .elementor-location-single.type-product-update[class*=" product-idx-"] { padding-bottom: 64px; }
  .elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-element.elementor-element-1df9450 { padding-top: 40px; }
  .elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-element.elementor-element-2e2967f { padding-bottom: 80px; }
  .elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-element.elementor-element-1ffa3f5 { margin-top: -64px; }
  .elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-widget-text-editor h2, .elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-widget-heading:not(.elementor-element.elementor-element-1df9450) .elementor-heading-title { font-size: 26px; }
  .elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-widget-text-editor, .elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-widget-text-editor p, .elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-widget-text-editor li { font-size: 16px; }
  .elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-element.elementor-element-33a2fb7, .elementor-location-single.type-product-update[class*=" product-idx-"] .elementor-element.elementor-element-0b75139, .elementor-location-single.type-product-update[class*=" product-idx-"] .e-con:has(> .elementor-widget-text-editor):not(:has(.e-con)) { --padding-top: 24px; --padding-bottom: 24px; --padding-left: 18px; --padding-right: 18px; padding: 24px 18px; }
  .elementor-location-single.type-product-update[class*=" product-idx-"] .fbs-faq-question { padding: 18px !important; font-size: 16px; }
  .elementor-location-single.type-product-update[class*=" product-idx-"] .fbs-faq-answer.active { padding: 0 18px 18px; }
}
