.elementor-200468 .elementor-element.elementor-element-a4d6c64{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-200468 .elementor-element.elementor-element-339801c5{--display:flex;}.elementor-200468 .elementor-element.elementor-element-737e66d2{--display:flex;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-200468 .elementor-element.elementor-element-668cfd55{--display:flex;}.elementor-200468 .elementor-element.elementor-element-52703af5{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-200468 .elementor-element.elementor-element-252b564d{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-200468 .elementor-element.elementor-element-15113cf7{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-200468 .elementor-element.elementor-element-79f98a9{--display:flex;}.elementor-200468 .elementor-element.elementor-element-6e3047c{--display:flex;}.elementor-200468 .elementor-element.elementor-element-9ead3da{--display:flex;}.elementor-200468 .elementor-element.elementor-element-9ead3da.e-con{--flex-grow:0;--flex-shrink:0;}@media(min-width:768px){.elementor-200468 .elementor-element.elementor-element-9ead3da{--width:102.083%;}}/* Start custom CSS for shortcode, class: .elementor-element-e986557 */.elementor-200468 .elementor-element.elementor-element-e986557,
.elementor-200468 .elementor-element.elementor-element-e986557 .elementor-widget-container {
  width: 100%;
  max-width: 430px;
  margin-left: auto;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  overflow: visible !important;
}

.elementor-200468 .elementor-element.elementor-element-e986557 .opal-hero-quote-shell {
  --opal-blue: #155873;
  --opal-teal: #13aaa0;
  --opal-teal-dark: #0b8f82;
  --opal-muted: #6f8794;
  --opal-line: rgba(21, 88, 115, 0.22);

  width: 100%;
  background: #fbf8ef;
  border: 0 !important;
  border-top: 6px solid var(--opal-teal) !important;
  border-radius: 10px;
  box-shadow: 0 24px 54px rgba(0, 32, 47, 0.34);
  overflow: hidden;
}

.elementor-200468 .elementor-element.elementor-element-e986557 .opal-quote-kicker {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 24px 28px 8px;
  color: var(--opal-teal);
  font-family: "Barlow Condensed", Arial, sans-serif;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.16em;
  line-height: 1;
  text-transform: uppercase;
}

.elementor-200468 .elementor-element.elementor-element-e986557 .opal-quote-kicker:before {
  content: "";
  width: 25px;
  height: 2px;
  background: var(--opal-teal);
  display: block;
}

.elementor-200468 .elementor-element.elementor-element-e986557 .opal-hero-quote-shell h2 {
  margin: 0 28px 12px !important;
  padding: 0 !important;
  color: var(--opal-blue) !important;
  font-family: "Barlow Condensed", Impact, Arial, sans-serif !important;
  font-size: 37px !important;
  font-weight: 800 !important;
  letter-spacing: 0.01em !important;
  line-height: 0.92 !important;
  text-transform: uppercase !important;
}

.elementor-200468 .elementor-element.elementor-element-e986557 .opal-hero-quote-shell > p {
  margin: 0 28px 20px !important;
  color: var(--opal-muted) !important;
  font-family: Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;
}

.elementor-200468 .elementor-element.elementor-element-e986557 .wpcf7 {
  margin: 0 !important;
  padding: 22px 28px 24px !important;
  background: transparent !important;
  border-top: 1px solid rgba(21, 88, 115, 0.18) !important;
}

.elementor-200468 .elementor-element.elementor-element-e986557 .wpcf7 form {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  font-size: 0 !important;
}

.elementor-200468 .elementor-element.elementor-element-e986557 .wpcf7 form p,
.elementor-200468 .elementor-element.elementor-element-e986557 .wpcf7 br,
.elementor-200468 .elementor-element.elementor-element-e986557 .form-info__row,
.elementor-200468 .elementor-element.elementor-element-e986557 .form-info__column,
.elementor-200468 .elementor-element.elementor-element-e986557 .form-info__label {
  display: contents !important;
}

.elementor-200468 .elementor-element.elementor-element-e986557 input:not([type="checkbox"]):not([type="submit"]),
.elementor-200468 .elementor-element.elementor-element-e986557 select,
.elementor-200468 .elementor-element.elementor-element-e986557 textarea {
  width: 100% !important;
  height: 44px !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 10px 13px !important;
  border: 1px solid rgba(21, 88, 115, 0.28) !important;
  border-radius: 6px !important;
  background: #fffdf8 !important;
  color: #174d61 !important;
  font-family: Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  box-shadow: none !important;
}

.elementor-200468 .elementor-element.elementor-element-e986557 input::placeholder,
.elementor-200468 .elementor-element.elementor-element-e986557 textarea::placeholder {
  color: rgba(21, 88, 115, 0.62) !important;
  opacity: 1 !important;
}

.elementor-200468 .elementor-element.elementor-element-e986557 select {
  appearance: none !important;
  background-image:
    linear-gradient(45deg, transparent 50%, #155873 50%),
    linear-gradient(135deg, #155873 50%, transparent 50%) !important;
  background-position:
    calc(100% - 17px) 19px,
    calc(100% - 12px) 19px !important;
  background-size: 5px 5px, 5px 5px !important;
  background-repeat: no-repeat !important;
  padding-right: 32px !important;
}

.elementor-200468 .elementor-element.elementor-element-e986557 input[name="email"],
.elementor-200468 .elementor-element.elementor-element-e986557 select[name="product"],
.elementor-200468 .elementor-element.elementor-element-e986557 select[name="address-country"],
.elementor-200468 .elementor-element.elementor-element-e986557 textarea {
  grid-column: 1 / -1 !important;
}

.elementor-200468 .elementor-element.elementor-element-e986557 div[style*="text-align:center"],
.elementor-200468 .elementor-element.elementor-element-e986557 .wpcf7-form-control-wrap[data-name="acceptance-228"] {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  text-align: left !important;
}

.elementor-200468 .elementor-element.elementor-element-e986557 .wpcf7-acceptance,
.elementor-200468 .elementor-element.elementor-element-e986557 .wpcf7-acceptance .wpcf7-list-item {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
}

.elementor-200468 .elementor-element.elementor-element-e986557 .wpcf7-acceptance label {
  display: flex !important;
  align-items: flex-start !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-200468 .elementor-element.elementor-element-e986557 .wpcf7-acceptance input[type="checkbox"] {
  flex: 0 0 14px !important;
  width: 14px !important;
  height: 14px !important;
  margin: 2px 0 0 !important;
  accent-color: var(--opal-teal) !important;
}

.elementor-200468 .elementor-element.elementor-element-e986557 .wpcf7-list-item-label,
.elementor-200468 .elementor-element.elementor-element-e986557 .wpcf7-list-item-label p {
  display: block !important;
  margin: 0 !important;
  color: #496978 !important;
  font-family: Arial, sans-serif !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  text-align: left !important;
}

.elementor-200468 .elementor-element.elementor-element-e986557 .wpcf7-list-item-label b {
  color: var(--opal-blue) !important;
}

.elementor-200468 .elementor-element.elementor-element-e986557 .form-info__button-submit {
  grid-column: 1 / -1 !important;
  display: block !important;
  margin: 8px 0 0 !important;
  padding: 0 !important;
}

.elementor-200468 .elementor-element.elementor-element-e986557 input[type="submit"],
.elementor-200468 .elementor-element.elementor-element-e986557 .button-submit {
  width: 100% !important;
  height: 48px !important;
  min-height: 48px !important;
  border: 0 !important;
  border-radius: 6px !important;
  background: linear-gradient(180deg, #18aa9b 0%, #0b8f82 100%) !important;
  color: #ffffff !important;
  font-family: Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.13em !important;
  text-transform: uppercase !important;
  box-shadow: 0 16px 30px rgba(18, 168, 157, 0.24) !important;
  cursor: pointer !important;
}

.elementor-200468 .elementor-element.elementor-element-e986557 a[href="/disclosure/"] {
  grid-column: 1 / -1 !important;
  display: block !important;
  margin: 4px auto 0 !important;
  color: #336c8c !important;
  font-family: Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-align: center !important;
  text-decoration: none !important;
}

.elementor-200468 .elementor-element.elementor-element-e986557 .wpcf7-response-output {
  grid-column: 1 / -1 !important;
  margin: 10px 0 0 !important;
  padding: 10px 12px !important;
  border-radius: 6px !important;
  font-family: Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
}

.elementor-200468 .elementor-element.elementor-element-e986557 .wpcf7-spinner {
  grid-column: 1 / -1 !important;
  margin: 8px auto 0 !important;
}

.elementor-200468 .elementor-element.elementor-element-e986557 input[type="hidden"],
.elementor-200468 .elementor-element.elementor-element-e986557 [name^="utm_"],
.elementor-200468 .elementor-element.elementor-element-e986557 [name^="handl_"],
.elementor-200468 .elementor-element.elementor-element-e986557 [name="gclid"] {
  display: none !important;
}

@media (max-width: 767px) {
  .elementor-200468 .elementor-element.elementor-element-e986557 {
    max-width: 420px;
    margin: 0 auto;
  }

  .elementor-200468 .elementor-element.elementor-element-e986557 .opal-quote-kicker {
    margin: 24px 24px 8px;
  }

  .elementor-200468 .elementor-element.elementor-element-e986557 .opal-hero-quote-shell h2 {
    margin-left: 24px !important;
    margin-right: 24px !important;
    font-size: 34px !important;
  }

  .elementor-200468 .elementor-element.elementor-element-e986557 .opal-hero-quote-shell > p {
    margin-left: 24px !important;
    margin-right: 24px !important;
  }

  .elementor-200468 .elementor-element.elementor-element-e986557 .wpcf7 {
    padding: 20px 24px 24px !important;
  }
}

@media (max-width: 480px) {
  .elementor-200468 .elementor-element.elementor-element-e986557 .wpcf7 form {
    grid-template-columns: 1fr !important;
  }

  .elementor-200468 .elementor-element.elementor-element-e986557 .opal-hero-quote-shell h2 {
    font-size: 31px !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6e3047c */.opal-hero-working-form {
  width: 100%;
  max-width: 420px;
  margin: 0 auto;
  border-top: 5px solid #14b8a6;
  border-radius: 14px;
  background: linear-gradient(180deg, #ffffff 0%, #fbf7ed 100%);
  box-shadow: 0 24px 55px rgba(0, 20, 30, 0.24);
  overflow: hidden;
}

.opal-hero-working-form .wpcf7 {
  padding: 24px 24px 22px;
}

.opal-hero-working-form .wpcf7-form {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 13px 12px;
  margin: 0;
}

.opal-hero-working-form .hidden-fields-container,
.opal-hero-working-form br,
.opal-hero-working-form .akismet-fields-container {
  display: none !important;
}

.opal-hero-working-form label,
.opal-hero-working-form .form-info__label {
  display: block;
  margin: 0;
  font-size: 0;
}

.opal-hero-working-form .wpcf7-form-control-wrap {
  display: block;
  width: 100%;
}

.opal-hero-working-form input[type="text"],
.opal-hero-working-form input[type="email"],
.opal-hero-working-form input[type="tel"],
.opal-hero-working-form select,
.opal-hero-working-form textarea {
  width: 100% !important;
  min-height: 46px;
  border: 1px solid rgba(23, 82, 103, 0.28);
  border-radius: 7px;
  background: #fffdf7;
  color: #173f50;
  font-size: 14px;
  font-weight: 700;
  padding: 11px 13px;
  box-shadow: none;
}

.opal-hero-working-form input::placeholder,
.opal-hero-working-form textarea::placeholder {
  color: rgba(23, 82, 103, 0.68);
}

.opal-hero-working-form select,
.opal-hero-working-form [data-name="address-country"],
.opal-hero-working-form .wpcf7-acceptance,
.opal-hero-working-form .form-info__button-submit,
.opal-hero-working-form .wpcf7-response-output,
.opal-hero-working-form a[href*="disclosure"] {
  grid-column: 1 / -1;
}

.opal-hero-working-form .form-info__row {
  display: contents;
}

.opal-hero-working-form .form-info__column {
  display: block;
  width: 100%;
}

.opal-hero-working-form .wpcf7-acceptance {
  display: block;
  margin-top: 2px;
  padding: 10px 12px;
  border: 1px solid rgba(23, 82, 103, 0.18);
  border-radius: 7px;
  background: rgba(255, 255, 255, 0.76);
}

.opal-hero-working-form .wpcf7-acceptance label {
  display: flex;
  gap: 8px;
  align-items: flex-start;
  font-size: 10px;
  line-height: 1.35;
  color: #526b75;
}

.opal-hero-working-form .wpcf7-acceptance input {
  width: 14px;
  height: 14px;
  margin-top: 1px;
  accent-color: #119684;
}

.opal-hero-working-form .wpcf7-acceptance p {
  margin: 0 !important;
  font-size: 9px !important;
  line-height: 1.35 !important;
  color: #526b75 !important;
}

.opal-hero-working-form .form-info__button-submit {
  margin-top: 5px;
}

.opal-hero-working-form input[type="submit"],
.opal-hero-working-form .button-submit {
  width: 100%;
  min-height: 48px;
  border: 0;
  border-radius: 7px;
  background: linear-gradient(180deg, #16a08e 0%, #0d8878 100%);
  color: #ffffff;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  cursor: pointer;
  box-shadow: 0 14px 28px rgba(13, 136, 120, 0.22);
}

.opal-hero-working-form a[href*="disclosure"] {
  display: inline-block;
  margin-top: -2px;
  color: #175267 !important;
  font-size: 13px;
  text-decoration: none !important;
}

.opal-hero-working-form .wpcf7-response-output {
  margin: 10px 0 0 !important;
  padding: 12px 14px !important;
  border-radius: 7px !important;
  font-size: 12px !important;
  font-weight: 700;
  line-height: 1.4;
}

@media (max-width: 767px) {
  .opal-hero-working-form {
    max-width: 100%;
  }

  .opal-hero-working-form .wpcf7 {
    padding: 20px;
  }

  .opal-hero-working-form .wpcf7-form {
    grid-template-columns: 1fr;
  }
}/* End custom CSS */
/* Start custom CSS *//* Opal Windows page CSS
   Target page: page-id-200468
   Elementor wrapper: .elementor-200468
   Page prefix: opalw-*

   Reference system:
   - Opal brand guideline PDF: active CTA green, no orange CTA system.
   - Live/PDF Windows page: dark photo hero, one proof strip below hero,
     full-width section bands, centered content, compact equal-height cards,
     green CTAs, Bebas Neue display headings, Manrope module/body UI.

   Paste after the existing opalw Elementor CSS shim or into Additional CSS
   after the current service-page CSS.
*/

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) {
  overflow-x: clip !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .internal-hero-image {
  display: none !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .site-inner.main-wrap,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .content-sidebar-wrap,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .content,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .entry-content {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 {
  width: 100% !important;
  max-width: none !important;
  overflow-x: clip !important;
  --opal-deep: #165067;
  --opal-blue: #336C8C;
  --opal-cyan: #129FC2;
  --opal-green: #0B7F6D;
  --opal-soft-green: #F3FFEF;
  --opal-soft-sky: #ECFAFF;
  --opal-quiet-gray: #F5F5F5;
  --opal-text: #333333;
  --opal-muted: #5D6B72;
  --opal-line: #C8DDE6;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-style-holder {
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-style-shim {
  display: none !important;
}

/* Full-width color bands. Inner content stays centered. */
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-section {
  position: relative !important;
  left: 50% !important;
  right: 50% !important;
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
  padding: 72px 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  font-family: "Manrope", Arial, sans-serif !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-section * {
  box-sizing: border-box !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-section > .opalw-inner {
  width: min(1180px, 92vw) !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 28px !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-inner > .e-con-inner {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 28px !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-bg-white {
  background: #FFFFFF !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-bg-pale {
  background: #F5F5F5 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-bg-sky {
  background: #ECFAFF !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-bg-cream {
  background: #F3FFEF !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-bg-teal {
  background: #336C8C !important;
  color: #FFFFFF !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-bg-deep {
  background: #165067 !important;
  color: #FFFFFF !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-bg-orange {
  background: #F3FFEF !important;
  color: #165067 !important;
}

/* Rows and grids. */
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-row,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-row-wrap {
  width: 100% !important;
  display: flex !important;
  flex-direction: row !important;
  gap: 28px !important;
  align-items: center !important;
  justify-content: space-between !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-row-wrap {
  flex-wrap: wrap !important;
  align-items: stretch !important;
  justify-content: center !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-col,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-card {
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-w-full {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-w-two {
  width: calc((100% - 28px) / 2) !important;
  max-width: calc((100% - 28px) / 2) !important;
  flex: 0 0 calc((100% - 28px) / 2) !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-w-three,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-need-grid > .opalw-card,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-process-grid > .opalw-card,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-style-grid > .opalw-card,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-gallery-grid > .opalw-card,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-area-grid > .opalw-card,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-resource-grid > .opalw-card,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-faq-grid > .opalw-card,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-brand-grid > .opalw-card,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-planning-grid > .opalw-card,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-trade-grid > .opalw-card,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-cost-grid > .opalw-card,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-material-grid > .opalw-card {
  width: calc((100% - 56px) / 3) !important;
  max-width: calc((100% - 56px) / 3) !important;
  flex: 0 0 calc((100% - 56px) / 3) !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-w-four {
  width: calc((100% - 84px) / 4) !important;
  max-width: calc((100% - 84px) / 4) !important;
  flex: 0 0 calc((100% - 84px) / 4) !important;
}

/* Typography. */
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-heading,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-heading .elementor-heading-title {
  width: 100% !important;
  margin: 0 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-heading .elementor-heading-title {
  font-family: "Bebas Neue", "Barlow Condensed", Arial, sans-serif !important;
  font-weight: 700 !important;
  line-height: 1.05 !important;
  letter-spacing: 0 !important;
  color: #165067 !important;
  text-transform: none !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-heading.opalw-c-teal .elementor-heading-title {
  color: #165067 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-heading.opalw-c-white .elementor-heading-title {
  color: #FFFFFF !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-heading.opalw-c-orange .elementor-heading-title,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-step-number .elementor-heading-title,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-price-number .elementor-heading-title {
  color: #0B7F6D !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-heading.opalw-c-aqua .elementor-heading-title,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-eyebrow .elementor-heading-title {
  color: #129FC2 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-heading.opalw-c-text .elementor-heading-title {
  color: #333333 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-eyebrow .elementor-heading-title {
  font-family: "Manrope", Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  text-transform: uppercase !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-text,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-text p,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-text li,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-text .elementor-widget-container {
  font-family: "Manrope", Arial, sans-serif !important;
  color: #5D6B72 !important;
  line-height: 1.65 !important;
  letter-spacing: 0 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-text p {
  margin: 0 0 1em !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-text p:last-child {
  margin-bottom: 0 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-text.opalw-c-white,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-text.opalw-c-white p,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-text.opalw-c-white li,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-text.opalw-c-white .elementor-widget-container {
  color: #FFFFFF !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-text.opalw-c-mist,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-text.opalw-c-mist p,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-text.opalw-c-mist li,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-text.opalw-c-mist .elementor-widget-container {
  color: #ECFAFF !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-text a {
  color: #0B7F6D !important;
  font-weight: 800 !important;
  text-decoration: underline !important;
}

/* Buttons: brand guide active CTA green. */
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-button {
  width: auto !important;
  max-width: max-content !important;
  flex: 0 0 auto !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-button .elementor-button {
  min-width: 178px !important;
  min-height: 42px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 12px 22px !important;
  background: #0B7F6D !important;
  border: 2px solid #0B7F6D !important;
  border-radius: 8px !important;
  color: #FFFFFF !important;
  font-family: "Manrope", Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  box-shadow: 0 10px 22px rgba(11, 127, 109, .18) !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-button .elementor-button:hover,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-button .elementor-button:focus {
  background: #165067 !important;
  border-color: #165067 !important;
  color: #FFFFFF !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-button-outline .elementor-button {
  background: #FFFFFF !important;
  border-color: #165067 !important;
  color: #165067 !important;
  box-shadow: none !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-card .opalw-button,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-card .opalw-button-outline {
  align-self: center !important;
  margin-top: auto !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-card .opalw-button-outline .elementor-button {
  background: #0B7F6D !important;
  border-color: #0B7F6D !important;
  color: #FFFFFF !important;
}

/* Cards. */
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-card {
  height: auto !important;
  align-self: stretch !important;
  gap: 12px !important;
  padding: 24px !important;
  overflow: hidden !important;
  background: #FFFFFF !important;
  border: 1px solid #C8DDE6 !important;
  border-radius: 8px !important;
  box-shadow: 0 14px 34px rgba(22, 80, 103, .09) !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-card.opalw-bg-translucent {
  background: rgba(255, 255, 255, .10) !important;
  border-color: rgba(255, 255, 255, .24) !important;
  box-shadow: none !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-card.opalw-bg-sky {
  background: #ECFAFF !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-card.opalw-bg-cream {
  background: #F3FFEF !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-card.opalw-bg-pale {
  background: #F5F5F5 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-card.opalw-bg-deep,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-card.opalw-bg-teal {
  color: #FFFFFF !important;
  border-color: rgba(255, 255, 255, .20) !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-min-190,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-faq-card {
  min-height: 190px !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-min-226,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-planning-card {
  min-height: 226px !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-min-240,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-need-card {
  min-height: 240px !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-min-258,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-process-card {
  min-height: 258px !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-min-270 {
  min-height: 270px !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-min-318,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-style-card {
  min-height: 318px !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-brand-card {
  min-height: 312px !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-gallery-card,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-resource-card {
  min-height: 360px !important;
}

/* Images and icons. */
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-image img {
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
  object-fit: cover !important;
  border-radius: 8px !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-logo-image img {
  object-fit: contain !important;
  border-radius: 0 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-gallery-card,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-resource-card {
  padding: 0 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-gallery-card .opalw-image img,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-resource-card .opalw-image img {
  height: 210px !important;
  border-radius: 8px 8px 0 0 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-gallery-card .opalw-heading,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-gallery-card .opalw-text,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-gallery-card .opalw-button,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-resource-card .opalw-heading,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-resource-card .opalw-text,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-resource-card .opalw-button {
  padding-left: 18px !important;
  padding-right: 18px !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-gallery-card .opalw-button,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-resource-card .opalw-button {
  padding-bottom: 18px !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-icon {
  margin-bottom: 4px !important;
  text-align: center !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-icon-left {
  text-align: left !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-icon .elementor-icon {
  width: 48px !important;
  height: 48px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #ECFAFF !important;
  border-radius: 999px !important;
  color: #129FC2 !important;
  font-size: 22px !important;
  line-height: 1 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-card.opalw-bg-deep .opalw-icon .elementor-icon,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-card.opalw-bg-teal .opalw-icon .elementor-icon,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-card.opalw-bg-translucent .opalw-icon .elementor-icon {
  background: rgba(236, 250, 255, .16) !important;
  color: #ECFAFF !important;
}

/* Hero: match Windows reference, but no rating badge inside hero. */
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero {
  min-height: 430px !important;
  padding-top: 24px !important;
  padding-bottom: 32px !important;
  overflow: hidden !important;
  background: #165067 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(96deg, rgba(22, 80, 103, .98) 0%, rgba(22, 80, 103, .92) 34%, rgba(51, 108, 140, .70) 66%, rgba(18, 159, 194, .24) 100%),
    linear-gradient(0deg, rgba(22, 80, 103, .08), rgba(22, 80, 103, .08)),
    url("https://www.opalexteriors.com/wp-content/uploads/2023/05/new-provia-ecolite-and-endure-windows-from-opal-enterprises.jpeg") center 50% / cover no-repeat !important;
  transform: scale(1.01) !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero::after {
  content: "" !important;
  position: absolute !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  height: 58px !important;
  background: linear-gradient(0deg, rgba(22, 80, 103, .48), rgba(22, 80, 103, 0)) !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero > .opalw-inner,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero > .opalw-inner > .e-con-inner,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero > .elementor-element {
  position: relative !important;
  z-index: 1 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero > .opalw-inner {
  width: min(1240px, 92vw) !important;
  max-width: 1240px !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-row {
  align-items: center !important;
  gap: 28px !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero-lockup {
  max-width: 655px !important;
  gap: 10px !important;
  padding-left: 0 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero-badge,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero-proof,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero-visual-strip {
  display: none !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero-lockup .opalw-text {
  max-width: 620px !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero-lockup h1.elementor-heading-title {
  font-size: clamp(44px, 3.6vw, 58px) !important;
  line-height: .98 !important;
  color: #FFFFFF !important;
  text-shadow: 0 3px 18px rgba(0, 0, 0, .18) !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero-buttons {
  justify-content: flex-start !important;
  gap: 14px !important;
  margin-top: 8px !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero-buttons .opalw-button {
  max-width: none !important;
  margin-top: 0 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero-buttons .opalw-button .elementor-button,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero-buttons .opalw-button-outline .elementor-button {
  min-width: 224px !important;
  border-radius: 999px !important;
  background: #0B7F6D !important;
  color: #FFFFFF !important;
  border-color: #0B7F6D !important;
  padding: 14px 22px !important;
  box-shadow: 0 14px 30px rgba(0, 0, 0, .20) !important;
}

/* Hero form: compact, two-column desktop, green submit. */
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card {
  position: relative !important;
  width: 430px !important;
  max-width: 430px !important;
  flex: 0 0 430px !important;
  min-height: auto !important;
  padding: 20px 20px 18px !important;
  gap: 8px !important;
  overflow: hidden !important;
  background: linear-gradient(180deg, #FFFFFF 0%, #F5F5F5 100%) !important;
  border: 1px solid rgba(236, 250, 255, .92) !important;
  border-radius: 14px !important;
  box-shadow: 0 24px 58px rgba(0, 0, 0, .28) !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  left: 0 !important;
  height: 5px !important;
  background: linear-gradient(90deg, #0B7F6D 0%, #129FC2 100%) !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card .opalw-eyebrow .elementor-heading-title {
  font-size: 11px !important;
  line-height: 1 !important;
  color: #129FC2 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card .opalw-heading .elementor-heading-title {
  font-size: 23px !important;
  line-height: 1.05 !important;
  color: #165067 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card > .opalw-text {
  display: none !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card .opalw-shortcode,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card .elementor-shortcode,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card .wpcf7,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card .wpcf7 form {
  width: 100% !important;
  margin: 0 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card form.wpcf7-form {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 8px 9px !important;
  align-items: start !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card .screen-reader-response,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card fieldset.hidden-fields-container,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card input[type="hidden"],
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card .akismet-fields-container,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card .apbct_special_field {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card br {
  display: none !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card .cstm-frst-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  grid-column: 1 / -1 !important;
  gap: 8px 9px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card label.form-info__label,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card .wpcf7-form-control-wrap,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card .wpcf7 form > p,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card .wpcf7 form > div {
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card .wpcf7-form-control-wrap[data-name="message"],
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card form > div[style*="text-align"],
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card .form-info__button-submit,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card .wpcf7-response-output {
  grid-column: 1 / -1 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card input:not([type="hidden"]):not([type="checkbox"]):not([type="submit"]),
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card select,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card textarea {
  width: 100% !important;
  min-height: 38px !important;
  height: 38px !important;
  display: block !important;
  padding: 8px 11px !important;
  background: #FBFEFF !important;
  border: 1px solid #D4E5EC !important;
  border-radius: 8px !important;
  color: #333333 !important;
  font-family: "Manrope", Arial, sans-serif !important;
  font-size: 13.5px !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .85) !important;
  appearance: auto !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card textarea {
  min-height: 66px !important;
  height: 66px !important;
  max-height: 78px !important;
  resize: vertical !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card input::placeholder,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card textarea::placeholder {
  color: #6D808A !important;
  opacity: 1 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card input:focus,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card select:focus,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card textarea:focus {
  outline: 0 !important;
  background: #FFFFFF !important;
  border-color: #129FC2 !important;
  box-shadow: 0 0 0 3px rgba(18, 159, 194, .16) !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card form > div[style*="text-align"] p,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card .wpcf7-list-item-label p {
  margin: 0 !important;
  padding: 0 !important;
  color: #5D6B72 !important;
  font-size: 8px !important;
  line-height: 1.24 !important;
  text-align: left !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card .wpcf7-acceptance label {
  display: grid !important;
  grid-template-columns: 13px minmax(0, 1fr) !important;
  gap: 6px !important;
  align-items: start !important;
  text-align: left !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card input[type="checkbox"] {
  width: 12px !important;
  min-height: 12px !important;
  height: 12px !important;
  margin: 1px 0 0 !important;
  padding: 0 !important;
  accent-color: #0B7F6D !important;
  box-shadow: none !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card .form-info__button-submit {
  margin-top: 1px !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card input[type="submit"].button-submit,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card input[type="submit"] {
  width: 100% !important;
  min-height: 40px !important;
  height: 40px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: #0B7F6D !important;
  color: #FFFFFF !important;
  font-family: "Manrope", Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  text-transform: uppercase !important;
  box-shadow: 0 12px 24px rgba(11, 127, 109, .24) !important;
  cursor: pointer !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card input[type="submit"]:hover {
  background: #165067 !important;
}

/* Proof strip stays below hero only. */
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-proof-section {
  padding-top: 0 !important;
  padding-bottom: 42px !important;
  overflow: visible !important;
  background: #FFFFFF !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-proof-section .opalw-inner {
  width: min(1100px, 91vw) !important;
  max-width: 1100px !important;
  margin-top: -34px !important;
  padding: 16px 44px !important;
  position: relative !important;
  z-index: 3 !important;
  background: #FFFFFF !important;
  border-radius: 78px !important;
  box-shadow: 0 18px 42px rgba(22, 80, 103, .13) !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-proof-grid {
  gap: 18px !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-proof-grid > .opalw-proof-card {
  width: 23.5% !important;
  max-width: 23.5% !important;
  flex: 0 0 23.5% !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-proof-card {
  min-height: 86px !important;
  padding: 0 !important;
  gap: 3px !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  text-align: center !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-proof-number .elementor-heading-title {
  font-family: "Manrope", Arial, sans-serif !important;
  font-size: 38px !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-proof-logo img {
  width: auto !important;
  max-width: 118px !important;
  height: 26px !important;
  object-fit: contain !important;
  border-radius: 0 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-answer-card,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-cost-note {
  padding: 28px !important;
  border-left: 6px solid #0B7F6D !important;
}

/* Tables and dark media bands. */
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-compare-table table,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-cost-table table {
  width: 100% !important;
  overflow: hidden !important;
  border: 1px solid #C8DDE6 !important;
  border-radius: 8px !important;
  border-collapse: collapse !important;
  background: #FFFFFF !important;
  font-family: "Manrope", Arial, sans-serif !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-compare-table th,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-cost-table th {
  padding: 14px !important;
  background: #165067 !important;
  color: #FFFFFF !important;
  font-weight: 800 !important;
  text-align: left !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-compare-table td,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-cost-table td {
  padding: 14px !important;
  border: 1px solid #C8DDE6 !important;
  color: #333333 !important;
  vertical-align: top !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-source-proof,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-dark-cta {
  position: relative !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-source-proof > .opalw-inner,
:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-dark-cta > .opalw-inner {
  position: relative !important;
  z-index: 1 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-source-proof::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(180deg, rgba(236, 250, 255, .93), rgba(255, 255, 255, .97)),
    url("https://www.opalexteriors.com/wp-content/uploads/2025/07/Guid-background.png") center / cover no-repeat !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-dark-cta {
  background: #165067 !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-dark-cta::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(90deg, rgba(22, 80, 103, .96), rgba(22, 80, 103, .82)),
    url("https://www.opalexteriors.com/wp-content/uploads/2025/08/cta-bg-2.jpg") center / cover no-repeat !important;
}

:is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-dark-cta-row {
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 42px !important;
  flex-wrap: wrap !important;
}

@media (min-width: 1440px) {
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-section > .opalw-inner,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero > .opalw-inner {
    width: min(1240px, 92vw) !important;
    max-width: 1240px !important;
  }
}

@media (max-width: 1024px) {
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-row {
    flex-direction: column !important;
  }

  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-row-wrap {
    flex-direction: row !important;
  }

  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-w-two,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-w-three,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-w-four,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-need-grid > .opalw-card,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-process-grid > .opalw-card,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-style-grid > .opalw-card,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-gallery-grid > .opalw-card,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-area-grid > .opalw-card,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-resource-grid > .opalw-card,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-faq-grid > .opalw-card,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-brand-grid > .opalw-card,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-planning-grid > .opalw-card,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-trade-grid > .opalw-card,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-cost-grid > .opalw-card,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-material-grid > .opalw-card,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-proof-grid > .opalw-proof-card {
    width: 48% !important;
    max-width: 48% !important;
    flex-basis: 48% !important;
  }

  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero {
    min-height: auto !important;
    padding-top: 30px !important;
    padding-bottom: 42px !important;
  }

  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero-lockup {
    max-width: 760px !important;
  }

  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card {
    width: min(425px, 92vw) !important;
    max-width: min(425px, 92vw) !important;
    flex: 0 1 auto !important;
  }

  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-proof-section .opalw-inner {
    margin-top: -30px !important;
    padding: 18px 28px !important;
    border-radius: 42px !important;
  }
}

@media (max-width: 767px) {
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-section {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }

  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-inner,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-section > .opalw-inner,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero > .opalw-inner {
    width: 92vw !important;
    max-width: 92vw !important;
  }

  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-row,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-row-wrap {
    flex-direction: column !important;
    gap: 18px !important;
  }

  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-w-two,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-w-three,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-w-four,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-need-grid > .opalw-card,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-process-grid > .opalw-card,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-style-grid > .opalw-card,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-gallery-grid > .opalw-card,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-area-grid > .opalw-card,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-resource-grid > .opalw-card,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-faq-grid > .opalw-card,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-brand-grid > .opalw-card,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-planning-grid > .opalw-card,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-trade-grid > .opalw-card,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-cost-grid > .opalw-card,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-material-grid > .opalw-card,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-proof-grid > .opalw-proof-card {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 1 100% !important;
  }

  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-card,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-min-190,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-min-226,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-min-240,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-min-258,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-min-270,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-min-318 {
    min-height: 0 !important;
  }

  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-button {
    max-width: 100% !important;
  }

  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-button .elementor-button {
    width: 100% !important;
  }

  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero {
    min-height: auto !important;
    padding-top: 30px !important;
    padding-bottom: 42px !important;
  }

  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero-lockup h1.elementor-heading-title {
    font-size: 36px !important;
    line-height: 1 !important;
  }

  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero-buttons .opalw-button .elementor-button {
    min-width: 0 !important;
  }

  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 1 100% !important;
  }

  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card form.wpcf7-form,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-hero .opalw-form-card .cstm-frst-row {
    grid-template-columns: 1fr !important;
  }

  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-proof-section {
    padding-bottom: 34px !important;
  }

  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-proof-section .opalw-inner {
    margin-top: -26px !important;
    padding: 18px !important;
    border-radius: 22px !important;
  }

  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-proof-number .elementor-heading-title {
    font-size: 36px !important;
  }

  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-gallery-card .opalw-image img,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-resource-card .opalw-image img,
  :is(body.page-id-200468, body.elementor-page-200468, body:has(.elementor-200468)) .elementor-200468 .opalw-image img {
    height: auto !important;
  }
}

/* Screenshot correction layer.
   Paste order matters: this block must stay after the older Elementor shim.
   It uses simpler body.elementor-page-200468s because Elementor editor/body classes can vary in preview. */

html body.page-id-200468,
html body.elementor-page-200468,
html body:has(.elementor-200468) {
  overflow-x: hidden !important;
}

html body.page-id-200468 .site-inner,
html body.page-id-200468 .site-inner.main-wrap,
html body.page-id-200468 .content-sidebar-wrap,
html body.page-id-200468 .content,
html body.page-id-200468 .entry,
html body.page-id-200468 .entry-content,
html body.elementor-page-200468 .site-inner,
html body.elementor-page-200468 .content-sidebar-wrap,
html body.elementor-page-200468 .content,
html body.elementor-page-200468 .entry,
html body.elementor-page-200468 .entry-content {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

html body .elementor-200468,
html body .elementor-200468 > .elementor-element {
  width: 100% !important;
  max-width: none !important;
}

html body .elementor-200468 .opalw-section {
  position: relative !important;
  left: 50% !important;
  right: auto !important;
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: -50vw !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

html body .elementor-200468 .opalw-section > .opalw-inner,
html body .elementor-200468 .opalw-section > .opalw-inner > .e-con-inner {
  width: min(1180px, 92vw) !important;
  max-width: 1180px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

html body .elementor-200468 .opalw-hero {
  margin-top: 0 !important;
  padding-top: clamp(42px, 4vw, 58px) !important;
  padding-bottom: clamp(48px, 5vw, 70px) !important;
  min-height: 520px !important;
  display: flex !important;
  align-items: center !important;
}

html body .elementor-200468 .opalw-hero > .opalw-inner,
html body .elementor-200468 .opalw-hero > .opalw-inner > .e-con-inner {
  width: min(1240px, 92vw) !important;
  max-width: 1240px !important;
}

html body .elementor-200468 .opalw-hero .opalw-row {
  align-items: center !important;
  justify-content: space-between !important;
}

html body .elementor-200468 .opalw-hero .opalw-form-card {
  width: min(430px, 100%) !important;
  max-width: 430px !important;
  flex: 0 0 min(430px, 100%) !important;
  overflow: hidden !important;
}

html body .elementor-200468 .opalw-hero .opalw-form-card form.wpcf7-form {
  font-size: 0 !important;
  line-height: 0 !important;
}

html body .elementor-200468 .opalw-hero .opalw-form-card form.wpcf7-form > p,
html body .elementor-200468 .opalw-hero .opalw-form-card form.wpcf7-form > script,
html body .elementor-200468 .opalw-hero .opalw-form-card form.wpcf7-form > input[type="hidden"],
html body .elementor-200468 .opalw-hero .opalw-form-card .hidden-fields-container,
html body .elementor-200468 .opalw-hero .opalw-form-card .akismet-fields-container,
html body .elementor-200468 .opalw-hero .opalw-form-card .apbct_special_field {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

html body .elementor-200468 .opalw-hero .opalw-form-card label,
html body .elementor-200468 .opalw-hero .opalw-form-card .wpcf7-form-control-wrap,
html body .elementor-200468 .opalw-hero .opalw-form-card .cstm-frst-row,
html body .elementor-200468 .opalw-hero .opalw-form-card form.wpcf7-form > div,
html body .elementor-200468 .opalw-hero .opalw-form-card input,
html body .elementor-200468 .opalw-hero .opalw-form-card select,
html body .elementor-200468 .opalw-hero .opalw-form-card textarea {
  font-size: 13px !important;
  line-height: 1.2 !important;
}

html body .elementor-200468 .opalw-hero .opalw-form-card form.wpcf7-form > div[style*="text-align"] p {
  font-size: 8px !important;
  line-height: 1.22 !important;
}

html body .elementor-200468 .opalw-proof-section {
  display: none !important;
}

html body .elementor-200468 .opalw-hero + .opalw-proof-section {
  display: flex !important;
  padding-top: 0 !important;
  padding-bottom: 46px !important;
  background: #FFFFFF !important;
}

html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-inner {
  margin-top: -42px !important;
  width: min(1120px, 91vw) !important;
  max-width: 1120px !important;
  padding: 18px 46px !important;
  border-radius: 80px !important;
}

html body .elementor-200468 .opalw-compare-section .opalw-compare-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 30px !important;
  align-items: start !important;
}

html body .elementor-200468 .opalw-compare-section .opalw-compare-row > .opalw-col {
  width: 100% !important;
  max-width: 100% !important;
  flex: none !important;
}

html body .elementor-200468 .opalw-compare-section .opalw-compare-row > .opalw-col:nth-child(2) {
  display: grid !important;
  grid-template-columns: minmax(0, 1.15fr) minmax(280px, .85fr) !important;
  gap: 24px !important;
  align-items: stretch !important;
}

html body .elementor-200468 .opalw-compare-section .opalw-compare-row > .opalw-col:nth-child(2) > .opalw-image {
  grid-column: 1 !important;
  grid-row: 1 !important;
}

html body .elementor-200468 .opalw-compare-section .opalw-compare-row > .opalw-col:nth-child(2) > .opalw-material-grid {
  grid-column: 2 !important;
  grid-row: 1 !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 14px !important;
}

html body .elementor-200468 .opalw-compare-section .opalw-material-grid > .opalw-card {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 0 !important;
  padding: 20px !important;
}

html body .elementor-200468 .opalw-compare-section .opalw-image img {
  height: 370px !important;
  object-fit: cover !important;
}

html body .elementor-200468 .opalw-compare-table {
  width: 100% !important;
  overflow-x: auto !important;
  border-radius: 8px !important;
  box-shadow: 0 16px 36px rgba(22, 80, 103, .08) !important;
}

html body .elementor-200468 .opalw-compare-table table {
  width: 100% !important;
  min-width: 620px !important;
  table-layout: fixed !important;
}

html body .elementor-200468 .opalw-compare-table th,
html body .elementor-200468 .opalw-compare-table td {
  padding: 15px 16px !important;
  line-height: 1.45 !important;
  vertical-align: top !important;
}

html body .elementor-200468 .opalw-cost-section .opalw-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1.35fr) minmax(330px, .85fr) !important;
  gap: 44px !important;
  align-items: start !important;
}

html body .elementor-200468 .opalw-cost-section .opalw-row > .opalw-col {
  width: 100% !important;
  max-width: 100% !important;
  flex: none !important;
}

html body .elementor-200468 .opalw-cost-section .opalw-answer-card {
  min-height: 0 !important;
  padding: 28px !important;
  border-left: 6px solid #0B7F6D !important;
}

html body .elementor-200468 .opalw-cost-section .opalw-compare-table table {
  min-width: 0 !important;
}

html body .elementor-200468 .opalw-trade-section {
  background: #F5F5F5 !important;
}

html body .elementor-200468 .opalw-trade-section .opalw-row {
  display: grid !important;
  grid-template-columns: minmax(280px, .72fr) minmax(0, 1.28fr) !important;
  gap: 34px !important;
  align-items: stretch !important;
}

html body .elementor-200468 .opalw-trade-section .opalw-row > .opalw-col {
  width: 100% !important;
  max-width: 100% !important;
  flex: none !important;
}

html body .elementor-200468 .opalw-trade-section .opalw-row > .opalw-col:first-child,
html body .elementor-200468 .opalw-trade-section .opalw-row > .opalw-col:nth-child(2) {
  background: #FFFFFF !important;
  border: 1px solid #C8DDE6 !important;
  border-radius: 8px !important;
  padding: 30px !important;
  box-shadow: 0 16px 34px rgba(22, 80, 103, .08) !important;
}

html body .elementor-200468 .opalw-trade-section .opalw-row > .opalw-col:first-child {
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  gap: 18px !important;
}

html body .elementor-200468 .opalw-trade-section .opalw-row > .opalw-col:first-child .opalw-image img {
  width: auto !important;
  max-width: 260px !important;
  height: auto !important;
  max-height: 150px !important;
  object-fit: contain !important;
  margin: 0 auto !important;
}

html body .elementor-200468 .opalw-trade-section .custom-cta-card {
  display: none !important;
}

html body .elementor-200468 .opalw-trade-section .opalw-cta-row {
  justify-content: space-between !important;
  gap: 18px !important;
}

html body .elementor-200468 .opalw-dark-cta {
  padding-top: 82px !important;
  padding-bottom: 82px !important;
}

html body .elementor-200468 .opalw-dark-cta .opalw-dark-cta-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(340px, .95fr) !important;
  gap: 56px !important;
  align-items: center !important;
}

html body .elementor-200468 .opalw-dark-cta .opalw-dark-cta-row > .opalw-col {
  width: 100% !important;
  max-width: 100% !important;
  flex: none !important;
}

html body .elementor-200468 .opalw-dark-cta .opalw-cta-logo {
  width: 158px !important;
  height: 88px !important;
  max-width: 158px !important;
  margin: 0 0 12px !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, .96) url("https://www.opalexteriors.com/wp-content/themes/opal-rebuild/assets/app/img/cta-logo.svg") center / 104px auto no-repeat !important;
  box-shadow: 0 18px 38px rgba(0, 0, 0, .18) !important;
}

html body .elementor-200468 .opalw-dark-cta .opalw-cta-logo img {
  display: none !important;
}

html body .elementor-200468 .opalw-dark-cta .opalw-brand-card {
  min-height: 0 !important;
  padding: 28px !important;
  background: rgba(255, 255, 255, .12) !important;
  border-color: rgba(255, 255, 255, .32) !important;
}

html body .elementor-200468 .opalw-dark-cta .opalw-brand-card .opalw-button {
  margin-top: auto !important;
}

@media (max-width: 1024px) {
  html body .elementor-200468 .opalw-cost-section .opalw-row,
  html body .elementor-200468 .opalw-trade-section .opalw-row,
  html body .elementor-200468 .opalw-dark-cta .opalw-dark-cta-row {
    grid-template-columns: 1fr !important;
  }

  html body .elementor-200468 .opalw-compare-section .opalw-compare-row > .opalw-col:nth-child(2) {
    grid-template-columns: 1fr !important;
  }

  html body .elementor-200468 .opalw-compare-section .opalw-compare-row > .opalw-col:nth-child(2) > .opalw-image,
  html body .elementor-200468 .opalw-compare-section .opalw-compare-row > .opalw-col:nth-child(2) > .opalw-material-grid {
    grid-column: auto !important;
    grid-row: auto !important;
  }

  html body .elementor-200468 .opalw-compare-section .opalw-material-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  html body .elementor-200468 .opalw-hero {
    min-height: auto !important;
  }
}

@media (max-width: 767px) {
  html body .elementor-200468 .opalw-section,
  html body .elementor-200468 .opalw-hero {
    width: 100% !important;
    max-width: 100% !important;
    left: auto !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  html body .elementor-200468 .opalw-section > .opalw-inner,
  html body .elementor-200468 .opalw-section > .opalw-inner > .e-con-inner {
    width: min(92vw, 1180px) !important;
    max-width: 92vw !important;
  }

  html body .elementor-200468 .opalw-hero .opalw-form-card {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 1 100% !important;
  }

  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-inner {
    border-radius: 22px !important;
    padding: 18px !important;
  }

  html body .elementor-200468 .opalw-compare-section .opalw-material-grid {
    grid-template-columns: 1fr !important;
  }

  html body .elementor-200468 .opalw-compare-section .opalw-image img {
    height: auto !important;
  }

  html body .elementor-200468 .opalw-compare-table table {
    min-width: 560px !important;
  }

  html body .elementor-200468 .opalw-trade-section .opalw-row > .opalw-col:first-child,
  html body .elementor-200468 .opalw-trade-section .opalw-row > .opalw-col:nth-child(2),
  html body .elementor-200468 .opalw-dark-cta .opalw-brand-card {
    padding: 22px !important;
  }
}

/* Follow-up desktop polish from 2026-06-30 screenshots:
   hide theme rating bar, make desktop bands escape to the true viewport,
   lower the proof pill, organize local proof, and tighten the final CTA. */

html body.page-id-200468 .custom-reviews.edits,
html body.elementor-page-200468 .custom-reviews.edits,
html body:has(.elementor-200468) .custom-reviews.edits {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

@media (min-width: 768px) {
  html body .elementor-200468 .opalw-section {
    position: relative !important;
    left: calc(50% - 50vw) !important;
    right: auto !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
  }

  html body .elementor-200468 .opalw-hero,
  html body .elementor-200468 .opalw-dark-cta,
  html body .elementor-200468 .opalw-cost-section,
  html body .elementor-200468 .opalw-trade-section {
    width: 100vw !important;
    max-width: 100vw !important;
  }
}

html body .elementor-200468 .opalw-hero + .opalw-proof-section {
  padding-bottom: 34px !important;
}

html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-inner {
  margin-top: -18px !important;
  padding: 12px 42px !important;
  border-radius: 64px !important;
  box-shadow: 0 12px 30px rgba(22, 80, 103, .12) !important;
}

html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-card {
  min-height: 70px !important;
}

html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-number .elementor-heading-title {
  font-size: 34px !important;
}

html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-logo img {
  height: 22px !important;
}

html body .elementor-200468 .opalw-trade-section {
  background: #ECFAFF !important;
  padding-top: 72px !important;
  padding-bottom: 72px !important;
}

html body .elementor-200468 .opalw-trade-section > .opalw-inner,
html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner {
  width: min(1120px, 92vw) !important;
  max-width: 1120px !important;
}

html body .elementor-200468 .opalw-trade-section .opalw-row {
  display: grid !important;
  grid-template-columns: minmax(260px, 360px) minmax(0, 1fr) !important;
  gap: 38px !important;
  align-items: stretch !important;
  background: #FFFFFF !important;
  border: 1px solid #C8DDE6 !important;
  border-radius: 8px !important;
  padding: 38px !important;
  box-shadow: 0 18px 42px rgba(22, 80, 103, .10) !important;
}

html body .elementor-200468 .opalw-trade-section .opalw-row > .opalw-col:first-child,
html body .elementor-200468 .opalw-trade-section .opalw-row > .opalw-col:nth-child(2) {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
}

html body .elementor-200468 .opalw-trade-section .opalw-row > .opalw-col:first-child {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 18px !important;
  text-align: center !important;
  padding-right: 24px !important;
  border-right: 1px solid #C8DDE6 !important;
}

html body .elementor-200468 .opalw-trade-section .opalw-row > .opalw-col:first-child .opalw-image:first-child img {
  width: auto !important;
  max-width: 285px !important;
  max-height: 105px !important;
  object-fit: contain !important;
  margin: 0 auto !important;
}

html body .elementor-200468 .opalw-trade-section .opalw-row > .opalw-col:first-child .opalw-image:nth-of-type(2) img,
html body .elementor-200468 .opalw-trade-section .opalw-row > .opalw-col:first-child .opalw-image:nth-child(2) img {
  width: auto !important;
  max-width: 255px !important;
  max-height: 175px !important;
  object-fit: contain !important;
  margin: 0 auto !important;
}

html body .elementor-200468 .opalw-trade-section .opalw-row > .opalw-col:first-child .opalw-text {
  width: 100% !important;
  max-width: 310px !important;
  margin-top: 4px !important;
  padding: 18px !important;
  background: #F5F5F5 !important;
  border-radius: 8px !important;
  border: 1px solid #E3EEF2 !important;
}

html body .elementor-200468 .opalw-trade-section .opalw-row > .opalw-col:nth-child(2) {
  justify-content: center !important;
  gap: 18px !important;
}

html body .elementor-200468 .opalw-trade-section .opalw-row > .opalw-col:nth-child(2) .opalw-heading .elementor-heading-title {
  max-width: 680px !important;
}

html body .elementor-200468 .opalw-trade-section .opalw-row > .opalw-col:nth-child(2) .opalw-text:not(.opalw-c-text) {
  display: none !important;
}

html body .elementor-200468 .opalw-trade-section .opalw-row > .opalw-col:nth-child(2) .opalw-c-text {
  max-width: 760px !important;
}

html body .elementor-200468 .opalw-trade-section .opalw-cta-row {
  justify-content: flex-start !important;
  gap: 18px !important;
  margin-top: 8px !important;
}

html body .elementor-200468 .opalw-trade-section .opalw-cta-row .opalw-button .elementor-button {
  min-width: 190px !important;
}

html body .elementor-200468 .opalw-dark-cta {
  padding-top: 76px !important;
  padding-bottom: 76px !important;
}

html body .elementor-200468 .opalw-dark-cta > .opalw-inner,
html body .elementor-200468 .opalw-dark-cta > .opalw-inner > .e-con-inner {
  width: min(1180px, 92vw) !important;
  max-width: 1180px !important;
}

html body .elementor-200468 .opalw-dark-cta .opalw-dark-cta-row {
  display: grid !important;
  grid-template-columns: minmax(0, .92fr) minmax(420px, 1.08fr) !important;
  gap: 54px !important;
  align-items: center !important;
}

html body .elementor-200468 .opalw-dark-cta .opalw-dark-cta-row > .opalw-col:first-child {
  max-width: 560px !important;
}

html body .elementor-200468 .opalw-dark-cta .opalw-cta-logo {
  display: none !important;
}

html body .elementor-200468 .opalw-dark-cta .opalw-dark-cta-row > .opalw-col:first-child::before {
  content: "" !important;
  display: block !important;
  width: 150px !important;
  height: 78px !important;
  margin: 0 0 18px !important;
  border-radius: 8px !important;
  background: #FFFFFF url("https://www.opalexteriors.com/wp-content/themes/opal-rebuild/assets/app/img/cta-logo.svg") center / 108px auto no-repeat !important;
  box-shadow: 0 16px 34px rgba(0, 0, 0, .18) !important;
}

html body .elementor-200468 .opalw-dark-cta .opalw-cta-row {
  justify-content: flex-start !important;
  gap: 18px !important;
}

html body .elementor-200468 .opalw-dark-cta .opalw-dark-cta-row > .opalw-col:nth-child(2) {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 18px !important;
}

html body .elementor-200468 .opalw-dark-cta .opalw-brand-card {
  display: grid !important;
  grid-template-columns: 54px minmax(0, 1fr) auto !important;
  grid-template-areas:
    "icon title action"
    "icon text action" !important;
  align-items: center !important;
  column-gap: 18px !important;
  row-gap: 4px !important;
  min-height: 0 !important;
  padding: 24px !important;
}

html body .elementor-200468 .opalw-dark-cta .opalw-brand-card .opalw-icon {
  grid-area: icon !important;
  margin: 0 !important;
}

html body .elementor-200468 .opalw-dark-cta .opalw-brand-card .opalw-heading {
  grid-area: title !important;
}

html body .elementor-200468 .opalw-dark-cta .opalw-brand-card .opalw-text {
  grid-area: text !important;
  margin: 0 !important;
}

html body .elementor-200468 .opalw-dark-cta .opalw-brand-card .opalw-button {
  grid-area: action !important;
  margin: 0 !important;
}

html body .elementor-200468 .opalw-dark-cta .opalw-brand-card .opalw-button .elementor-button {
  min-width: 170px !important;
}

@media (max-width: 1024px) {
  html body .elementor-200468 .opalw-trade-section .opalw-row,
  html body .elementor-200468 .opalw-dark-cta .opalw-dark-cta-row {
    grid-template-columns: 1fr !important;
  }

  html body .elementor-200468 .opalw-trade-section .opalw-row > .opalw-col:first-child {
    padding-right: 0 !important;
    padding-bottom: 24px !important;
    border-right: 0 !important;
    border-bottom: 1px solid #C8DDE6 !important;
  }

  html body .elementor-200468 .opalw-dark-cta .opalw-dark-cta-row > .opalw-col:first-child {
    max-width: none !important;
  }
}

@media (max-width: 767px) {
  html body .elementor-200468 .opalw-trade-section .opalw-row {
    padding: 24px !important;
  }

  html body .elementor-200468 .opalw-dark-cta .opalw-brand-card {
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "icon"
      "title"
      "text"
      "action" !important;
    text-align: left !important;
  }
}

/* Final component contracts from latest screenshots:
   true desktop viewport bands, centered rating badges, fitted tables,
   and local-proof/CTA cleanup. Keep this as the last block. */

@media (min-width: 768px) {
  html body.page-id-200468 .elementor-200468,
  html body.elementor-page-200468 .elementor-200468,
  html body:has(.elementor-200468) .elementor-200468 {
    position: relative !important;
    left: 50% !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: -50vw !important;
    margin-right: 0 !important;
    overflow-x: clip !important;
  }

  html body .elementor-200468 .opalw-section {
    left: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

html body .elementor-200468 .opalw-hero + .opalw-proof-section {
  overflow: visible !important;
  padding-bottom: 34px !important;
}

html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-inner {
  width: min(1080px, 88vw) !important;
  max-width: 1080px !important;
  margin-top: -16px !important;
  padding: 12px 34px !important;
  border-radius: 60px !important;
}

html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: center !important;
  justify-items: center !important;
  gap: 0 !important;
  width: 100% !important;
}

html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-card {
  width: 100% !important;
  max-width: none !important;
  min-height: 68px !important;
  flex: none !important;
  display: grid !important;
  align-content: center !important;
  justify-items: center !important;
  text-align: center !important;
  gap: 2px !important;
}

html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-card .elementor-widget,
html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-card .elementor-widget-container {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  text-align: center !important;
}

html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-logo {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}

html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-logo img {
  display: block !important;
  width: auto !important;
  max-width: 102px !important;
  height: auto !important;
  max-height: 24px !important;
  margin: 0 auto !important;
  object-fit: contain !important;
}

html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-number .elementor-heading-title {
  font-size: 34px !important;
  line-height: .95 !important;
}

html body .elementor-200468 .opalw-compare-section .opalw-compare-table,
html body .elementor-200468 .opalw-cost-section .opalw-compare-table {
  width: 100% !important;
  max-width: 100% !important;
  overflow: visible !important;
  background: #FFFFFF !important;
  border: 1px solid #C8DDE6 !important;
  border-radius: 8px !important;
  box-shadow: 0 14px 30px rgba(22, 80, 103, .08) !important;
}

html body .elementor-200468 .opalw-compare-section .opalw-compare-table table,
html body .elementor-200468 .opalw-cost-section .opalw-compare-table table {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  table-layout: fixed !important;
  border-collapse: collapse !important;
  border: 0 !important;
  border-radius: 8px !important;
}

html body .elementor-200468 .opalw-compare-section .opalw-compare-table thead,
html body .elementor-200468 .opalw-cost-section .opalw-compare-table thead {
  display: table-header-group !important;
  width: 100% !important;
}

html body .elementor-200468 .opalw-compare-section .opalw-compare-table th,
html body .elementor-200468 .opalw-cost-section .opalw-compare-table th {
  padding: 14px 16px !important;
  text-align: left !important;
  white-space: normal !important;
  vertical-align: middle !important;
  background: #165067 !important;
}

html body .elementor-200468 .opalw-compare-section .opalw-compare-table td,
html body .elementor-200468 .opalw-cost-section .opalw-compare-table td {
  padding: 16px !important;
  line-height: 1.42 !important;
  vertical-align: top !important;
}

html body .elementor-200468 .opalw-compare-section .opalw-compare-table th:nth-child(1),
html body .elementor-200468 .opalw-compare-section .opalw-compare-table td:nth-child(1) {
  width: 28% !important;
}

html body .elementor-200468 .opalw-compare-section .opalw-compare-table th:nth-child(2),
html body .elementor-200468 .opalw-compare-section .opalw-compare-table td:nth-child(2),
html body .elementor-200468 .opalw-compare-section .opalw-compare-table th:nth-child(3),
html body .elementor-200468 .opalw-compare-section .opalw-compare-table td:nth-child(3) {
  width: 36% !important;
}

html body .elementor-200468 .opalw-cost-section .opalw-compare-table th:nth-child(1),
html body .elementor-200468 .opalw-cost-section .opalw-compare-table td:nth-child(1) {
  width: 27% !important;
}

html body .elementor-200468 .opalw-cost-section .opalw-compare-table th:nth-child(2),
html body .elementor-200468 .opalw-cost-section .opalw-compare-table td:nth-child(2) {
  width: 30% !important;
}

html body .elementor-200468 .opalw-cost-section .opalw-compare-table th:nth-child(3),
html body .elementor-200468 .opalw-cost-section .opalw-compare-table td:nth-child(3) {
  width: 43% !important;
}

html body .elementor-200468 .opalw-cost-section > .opalw-inner,
html body .elementor-200468 .opalw-cost-section > .opalw-inner > .e-con-inner {
  width: min(1160px, 92vw) !important;
  max-width: 1160px !important;
}

html body .elementor-200468 .opalw-cost-section .opalw-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1.18fr) minmax(340px, .82fr) !important;
  gap: 42px !important;
  align-items: start !important;
}

html body .elementor-200468 .opalw-cost-section .opalw-row > .opalw-col {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

html body .elementor-200468 .opalw-cost-section .opalw-row > .opalw-col:first-child {
  display: grid !important;
  grid-template-columns: 1fr !important;
  align-content: start !important;
}

html body .elementor-200468 .opalw-cost-section .opalw-row > .opalw-col:first-child .opalw-compare-table {
  margin-top: 10px !important;
}

html body .elementor-200468 .opalw-cost-section .opalw-row > .opalw-col:nth-child(2) {
  gap: 20px !important;
}

html body .elementor-200468 .opalw-cost-section .opalw-row > .opalw-col:nth-child(2) .opalw-compare-table {
  box-shadow: none !important;
}

html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row {
  display: grid !important;
  grid-template-columns: minmax(300px, 360px) minmax(0, 1fr) !important;
  gap: 36px !important;
  align-items: stretch !important;
  background: #FFFFFF !important;
  border: 1px solid #C8DDE6 !important;
  border-radius: 8px !important;
  padding: 36px !important;
  box-shadow: 0 20px 44px rgba(22, 80, 103, .10) !important;
}

html body .elementor-200468 .opalw-trade-section .opalw-cta-row {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 18px !important;
  width: 100% !important;
  min-height: 0 !important;
  margin-top: 8px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

html body .elementor-200468 .opalw-trade-section .opalw-cta-row .opalw-button,
html body .elementor-200468 .opalw-trade-section .opalw-cta-row .opalw-button .elementor-button {
  width: auto !important;
  max-width: none !important;
}

html body .elementor-200468 .opalw-trade-section .opalw-cta-row .opalw-button .elementor-button,
html body .elementor-200468 .opalw-trade-section .opalw-cta-row .opalw-button-outline .elementor-button {
  min-width: 190px !important;
  background: #0B7F6D !important;
  border-color: #0B7F6D !important;
  color: #FFFFFF !important;
  box-shadow: 0 12px 24px rgba(11, 127, 109, .18) !important;
}

html body .elementor-200468 .opalw-trade-section .opalw-cta-row .opalw-button .elementor-button:hover,
html body .elementor-200468 .opalw-trade-section .opalw-cta-row .opalw-button-outline .elementor-button:hover {
  background: #165067 !important;
  border-color: #165067 !important;
}

html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child {
  align-items: center !important;
  justify-content: center !important;
  gap: 18px !important;
  text-align: center !important;
  padding-right: 28px !important;
  border-right: 1px solid #C8DDE6 !important;
}

html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child .opalw-image {
  overflow: visible !important;
}

html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child .opalw-image img {
  display: block !important;
  width: auto !important;
  max-width: 275px !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
  margin: 0 auto !important;
  border-radius: 0 !important;
}

html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child .opalw-text {
  width: 100% !important;
  max-width: 315px !important;
  padding: 16px 18px !important;
  background: #F5F5F5 !important;
  border: 1px solid #E3EEF2 !important;
  border-radius: 8px !important;
}

html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:nth-child(2) {
  justify-content: center !important;
  gap: 18px !important;
}

html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:nth-child(2) > .opalw-text {
  max-width: 760px !important;
}

@media (max-width: 1024px) {
  html body .elementor-200468 .opalw-cost-section .opalw-row,
  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row {
    grid-template-columns: 1fr !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child {
    padding-right: 0 !important;
    padding-bottom: 24px !important;
    border-right: 0 !important;
    border-bottom: 1px solid #C8DDE6 !important;
  }
}

@media (max-width: 767px) {
  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    row-gap: 12px !important;
  }

  html body .elementor-200468 .opalw-compare-section .opalw-compare-table,
  html body .elementor-200468 .opalw-cost-section .opalw-compare-table {
    overflow-x: auto !important;
  }

  html body .elementor-200468 .opalw-compare-section .opalw-compare-table table,
  html body .elementor-200468 .opalw-cost-section .opalw-compare-table table {
    min-width: 560px !important;
  }

  html body .elementor-200468 .opalw-trade-section .opalw-cta-row {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  html body .elementor-200468 .opalw-trade-section .opalw-cta-row .opalw-button,
  html body .elementor-200468 .opalw-trade-section .opalw-cta-row .opalw-button .elementor-button {
    width: 100% !important;
  }
}

/* Local proof final tightening:
   badges left, proof copy right, Google/Opal visual below copy, buttons pulled up. */
@media (min-width: 1025px) {
  html body .elementor-200468 .opalw-trade-section {
    padding-top: 56px !important;
    padding-bottom: 58px !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner,
  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner {
    width: min(1080px, 90vw) !important;
    max-width: 1080px !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row {
    display: grid !important;
    grid-template-columns: minmax(250px, 320px) minmax(0, 1fr) !important;
    grid-template-areas:
      "badges eyebrow"
      "leftcopy title"
      "leftcopy copy"
      "proofimg buttons" !important;
    column-gap: 42px !important;
    row-gap: 14px !important;
    align-items: start !important;
    padding: 36px 40px !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col {
    display: contents !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child .opalw-image:first-child {
    grid-area: badges !important;
    align-self: start !important;
    justify-self: center !important;
    width: 100% !important;
    margin: 0 !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child .opalw-image:first-child img {
    max-width: 270px !important;
    max-height: 105px !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child .opalw-text {
    grid-area: leftcopy !important;
    align-self: start !important;
    justify-self: stretch !important;
    width: 100% !important;
    max-width: 300px !important;
    margin: 0 auto !important;
    padding: 15px 17px !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child .opalw-image:nth-of-type(2),
  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child .opalw-image:nth-child(2) {
    grid-area: proofimg !important;
    align-self: center !important;
    justify-self: center !important;
    width: 100% !important;
    max-width: 300px !important;
    margin: 4px 0 0 !important;
    overflow: visible !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child .opalw-image:nth-of-type(2) img,
  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child .opalw-image:nth-child(2) img {
    display: block !important;
    width: auto !important;
    max-width: 300px !important;
    height: auto !important;
    max-height: 140px !important;
    object-fit: contain !important;
    object-position: center !important;
    margin: 0 auto !important;
    overflow: visible !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:nth-child(2) > .opalw-eyebrow {
    grid-area: eyebrow !important;
    align-self: end !important;
    margin: 2px 0 -2px !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:nth-child(2) > .opalw-heading:not(.opalw-eyebrow) {
    grid-area: title !important;
    margin: 0 !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:nth-child(2) > .opalw-c-text {
    grid-area: copy !important;
    max-width: 700px !important;
    margin: 0 !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:nth-child(2) > .opalw-c-text p {
    margin-bottom: 12px !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:nth-child(2) > .opalw-c-text p:last-child {
    margin-bottom: 0 !important;
  }

  html body .elementor-200468 .opalw-trade-section .opalw-cta-row {
    grid-area: buttons !important;
    align-self: center !important;
    justify-self: start !important;
    display: flex !important;
    flex-direction: row !important;
    gap: 14px !important;
    margin: 4px 0 0 !important;
  }

  html body .elementor-200468 .opalw-trade-section .opalw-cta-row .opalw-button .elementor-button,
  html body .elementor-200468 .opalw-trade-section .opalw-cta-row .opalw-button-outline .elementor-button {
    min-width: 184px !important;
    padding: 13px 20px !important;
  }
}

/* Hero proof pill final fit:
   keep all four rating groups inside the rounded casing on wide desktop screens. */
@media (min-width: 1025px) {
  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-inner {
    width: min(1120px, 86vw) !important;
    max-width: 1120px !important;
    padding-left: clamp(46px, 4.4vw, 68px) !important;
    padding-right: clamp(46px, 4.4vw, 68px) !important;
    overflow: hidden !important;
  }

  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-grid {
    width: 100% !important;
    max-width: 940px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    column-gap: clamp(12px, 1.8vw, 26px) !important;
  }

  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-card {
    min-width: 0 !important;
    overflow: visible !important;
  }

  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-card:last-child {
    transform: translateX(-6px) !important;
  }

  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-card:last-child .opalw-proof-logo img {
    max-width: 92px !important;
  }
}

/* Final visual correction:
   restore a clean local-proof card and center each hero rating in its own quarter. */
@media (min-width: 1025px) {
  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row {
    display: grid !important;
    grid-template-columns: minmax(250px, 340px) minmax(0, 1fr) !important;
    column-gap: clamp(34px, 4vw, 58px) !important;
    row-gap: 0 !important;
    align-items: start !important;
    padding: 38px clamp(34px, 4vw, 56px) !important;
    min-height: 0 !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col {
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child {
    gap: 18px !important;
    align-items: center !important;
    justify-content: flex-start !important;
    padding: 0 !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child .opalw-image,
  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child .opalw-text {
    grid-area: auto !important;
    align-self: auto !important;
    justify-self: auto !important;
    margin: 0 !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child .opalw-image:first-child {
    order: 1 !important;
    width: 100% !important;
    max-width: 292px !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child .opalw-image:first-child img {
    display: block !important;
    width: auto !important;
    max-width: 292px !important;
    max-height: 112px !important;
    margin: 0 auto !important;
    object-fit: contain !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child .opalw-text {
    order: 2 !important;
    width: 100% !important;
    max-width: 300px !important;
    padding: 13px 0 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child .opalw-image:nth-of-type(2),
  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child .opalw-image:nth-child(2) {
    order: 3 !important;
    width: 100% !important;
    max-width: 250px !important;
    margin-top: 6px !important;
    overflow: hidden !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child .opalw-image:nth-of-type(2) img,
  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child .opalw-image:nth-child(2) img {
    display: block !important;
    width: 100% !important;
    max-width: 250px !important;
    height: auto !important;
    max-height: 115px !important;
    object-fit: contain !important;
    object-position: center !important;
    margin: 0 auto !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:nth-child(2) {
    gap: 14px !important;
    align-items: flex-start !important;
    padding: 0 !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:nth-child(2) > .opalw-eyebrow,
  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:nth-child(2) > .opalw-heading,
  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:nth-child(2) > .opalw-c-text,
  html body .elementor-200468 .opalw-trade-section .opalw-cta-row {
    grid-area: auto !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:nth-child(2) > .opalw-eyebrow {
    order: 1 !important;
    margin-top: 2px !important;
    margin-bottom: -2px !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:nth-child(2) > .opalw-heading:not(.opalw-eyebrow) {
    order: 2 !important;
    max-width: 660px !important;
    margin-top: 0 !important;
    margin-bottom: 4px !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:nth-child(2) > .opalw-c-text {
    order: 3 !important;
    width: 100% !important;
    max-width: 720px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:nth-child(2) > .opalw-c-text p {
    margin: 0 0 12px !important;
  }

  html body .elementor-200468 .opalw-trade-section .opalw-cta-row {
    order: 4 !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 14px !important;
    margin-top: 2px !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-inner {
    width: min(1120px, 86vw) !important;
    max-width: 1120px !important;
    padding-left: clamp(42px, 4vw, 62px) !important;
    padding-right: clamp(42px, 4vw, 62px) !important;
  }

  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    justify-items: stretch !important;
    align-items: center !important;
    gap: 0 !important;
    width: 100% !important;
    max-width: none !important;
  }

  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-card {
    width: 100% !important;
    transform: none !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    justify-self: stretch !important;
    text-align: center !important;
  }

  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-card:last-child {
    transform: none !important;
  }

  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-card:last-child .opalw-proof-logo img {
    max-width: 100px !important;
  }
}

/* Final Houzz proof-badge fit:
   prevent the last logo from clipping against the rounded proof pill edge. */
@media (min-width: 1025px) {
  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-inner {
    overflow: visible !important;
    padding-left: clamp(44px, 4vw, 62px) !important;
    padding-right: clamp(44px, 4vw, 62px) !important;
  }

  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-grid {
    width: min(940px, calc(100% - 96px)) !important;
    max-width: 940px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    justify-items: stretch !important;
    column-gap: 0 !important;
    transform: translateX(clamp(-82px, -5.5vw, -54px)) !important;
  }

  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-card {
    width: 100% !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    transform: none !important;
  }

  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-logo,
  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-logo .elementor-widget-container {
    display: flex !important;
    justify-content: center !important;
    overflow: visible !important;
    width: 100% !important;
  }

  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-card:last-child {
    align-items: center !important;
    padding-right: 0 !important;
    transform: none !important;
  }

  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-logo img[src*="houzz-new-logo"],
  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-card:last-child .opalw-proof-logo img {
    width: 72px !important;
    max-width: 72px !important;
    height: auto !important;
    max-height: 24px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    object-fit: contain !important;
  }
}

/* Final card-deck centering:
   repeated deck cards center their headings, copy, media, and buttons. */
html body .elementor-200468 :is(
  .opalw-need-grid,
  .opalw-process-grid,
  .opalw-style-grid,
  .opalw-gallery-grid,
  .opalw-area-grid,
  .opalw-resource-grid,
  .opalw-faq-grid,
  .opalw-brand-grid,
  .opalw-planning-grid,
  .opalw-trade-grid,
  .opalw-cost-grid,
  .opalw-material-grid
) > .opalw-card,
html body .elementor-200468 .opalw-dark-cta .opalw-brand-card {
  align-items: center !important;
  justify-content: flex-start !important;
  text-align: center !important;
}

html body .elementor-200468 :is(
  .opalw-need-grid,
  .opalw-process-grid,
  .opalw-style-grid,
  .opalw-gallery-grid,
  .opalw-area-grid,
  .opalw-resource-grid,
  .opalw-faq-grid,
  .opalw-brand-grid,
  .opalw-planning-grid,
  .opalw-trade-grid,
  .opalw-cost-grid,
  .opalw-material-grid
) > .opalw-card > .elementor-widget,
html body .elementor-200468 .opalw-dark-cta .opalw-brand-card > .elementor-widget {
  align-self: center !important;
  width: 100% !important;
  text-align: center !important;
}

html body .elementor-200468 :is(
  .opalw-need-grid,
  .opalw-process-grid,
  .opalw-style-grid,
  .opalw-gallery-grid,
  .opalw-area-grid,
  .opalw-resource-grid,
  .opalw-faq-grid,
  .opalw-brand-grid,
  .opalw-planning-grid,
  .opalw-trade-grid,
  .opalw-cost-grid,
  .opalw-material-grid
) > .opalw-card :is(.opalw-heading, .opalw-text, .elementor-widget-heading, .elementor-widget-text-editor),
html body .elementor-200468 :is(
  .opalw-need-grid,
  .opalw-process-grid,
  .opalw-style-grid,
  .opalw-gallery-grid,
  .opalw-area-grid,
  .opalw-resource-grid,
  .opalw-faq-grid,
  .opalw-brand-grid,
  .opalw-planning-grid,
  .opalw-trade-grid,
  .opalw-cost-grid,
  .opalw-material-grid
) > .opalw-card :is(.elementor-heading-title, p, ul, ol, li),
html body .elementor-200468 .opalw-dark-cta .opalw-brand-card :is(.opalw-heading, .opalw-text, .elementor-heading-title, p, ul, ol, li) {
  text-align: center !important;
}

html body .elementor-200468 :is(
  .opalw-need-grid,
  .opalw-process-grid,
  .opalw-style-grid,
  .opalw-gallery-grid,
  .opalw-area-grid,
  .opalw-resource-grid,
  .opalw-faq-grid,
  .opalw-brand-grid,
  .opalw-planning-grid,
  .opalw-trade-grid,
  .opalw-cost-grid,
  .opalw-material-grid
) > .opalw-card :is(ul, ol),
html body .elementor-200468 .opalw-dark-cta .opalw-brand-card :is(ul, ol) {
  list-style-position: inside !important;
  padding-left: 0 !important;
}

html body .elementor-200468 :is(
  .opalw-need-grid,
  .opalw-process-grid,
  .opalw-style-grid,
  .opalw-gallery-grid,
  .opalw-area-grid,
  .opalw-resource-grid,
  .opalw-faq-grid,
  .opalw-brand-grid,
  .opalw-planning-grid,
  .opalw-trade-grid,
  .opalw-cost-grid,
  .opalw-material-grid
) > .opalw-card :is(.opalw-icon, .opalw-image, .opalw-button, .opalw-button-outline, .elementor-button-wrapper),
html body .elementor-200468 .opalw-dark-cta .opalw-brand-card :is(.opalw-icon, .opalw-image, .opalw-button, .opalw-button-outline, .elementor-button-wrapper) {
  align-self: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

html body .elementor-200468 :is(
  .opalw-need-grid,
  .opalw-process-grid,
  .opalw-style-grid,
  .opalw-gallery-grid,
  .opalw-area-grid,
  .opalw-resource-grid,
  .opalw-faq-grid,
  .opalw-brand-grid,
  .opalw-planning-grid,
  .opalw-trade-grid,
  .opalw-cost-grid,
  .opalw-material-grid
) > .opalw-card .opalw-button,
html body .elementor-200468 :is(
  .opalw-need-grid,
  .opalw-process-grid,
  .opalw-style-grid,
  .opalw-gallery-grid,
  .opalw-area-grid,
  .opalw-resource-grid,
  .opalw-faq-grid,
  .opalw-brand-grid,
  .opalw-planning-grid,
  .opalw-trade-grid,
  .opalw-cost-grid,
  .opalw-material-grid
) > .opalw-card .opalw-button-outline,
html body .elementor-200468 .opalw-dark-cta .opalw-brand-card :is(.opalw-button, .opalw-button-outline) {
  margin-top: auto !important;
}

/* Absolute all-card centering:
   force Elementor icon wrappers and child containers to center in every card. */
html body .elementor-200468 .opalw-card:not(.opalw-form-card) {
  align-items: center !important;
  text-align: center !important;
}

html body .elementor-200468 .opalw-card:not(.opalw-form-card) > .elementor-element,
html body .elementor-200468 .opalw-card:not(.opalw-form-card) > .elementor-widget,
html body .elementor-200468 .opalw-card:not(.opalw-form-card) .elementor-widget-container {
  align-self: center !important;
  width: 100% !important;
  text-align: center !important;
}

html body .elementor-200468 .opalw-card:not(.opalw-form-card) :is(
  .opalw-icon,
  .opalw-icon-left,
  .elementor-widget-icon,
  .elementor-icon-wrapper
) {
  align-self: center !important;
  display: flex !important;
  justify-content: center !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

html body .elementor-200468 .opalw-card:not(.opalw-form-card) .elementor-icon {
  margin-left: auto !important;
  margin-right: auto !important;
}

html body .elementor-200468 .opalw-card:not(.opalw-form-card) :is(
  .opalw-heading,
  .opalw-text,
  .elementor-heading-title,
  .elementor-widget-text-editor,
  p,
  ul,
  ol,
  li
) {
  text-align: center !important;
}

html body .elementor-200468 .opalw-card:not(.opalw-form-card) :is(.opalw-button, .opalw-button-outline, .elementor-button-wrapper) {
  align-self: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

/* Final mobile organization layer:
   keep Elementor's stacked mobile view neat, centered, and card-width aware. */
@media (max-width: 1024px) {
  html body .elementor-200468 {
    overflow-x: hidden !important;
  }

  html body .elementor-200468 .opalw-section,
  html body .elementor-200468 .opalw-hero,
  html body .elementor-200468 .opalw-source-proof,
  html body .elementor-200468 .opalw-trade-section,
  html body .elementor-200468 .opalw-dark-cta {
    overflow-x: hidden !important;
  }

  html body .elementor-200468 .opalw-section > .opalw-inner,
  html body .elementor-200468 .opalw-section > .opalw-inner > .e-con-inner,
  html body .elementor-200468 .opalw-hero > .opalw-inner,
  html body .elementor-200468 .opalw-hero > .opalw-inner > .e-con-inner,
  html body .elementor-200468 .opalw-source-proof > .opalw-inner,
  html body .elementor-200468 .opalw-source-proof > .opalw-inner > .e-con-inner,
  html body .elementor-200468 .opalw-trade-section > .opalw-inner,
  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner,
  html body .elementor-200468 .opalw-dark-cta > .opalw-inner,
  html body .elementor-200468 .opalw-dark-cta > .opalw-inner > .e-con-inner {
    width: min(880px, calc(100vw - 32px)) !important;
    max-width: min(880px, calc(100vw - 32px)) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body .elementor-200468 .opalw-hero {
    min-height: auto !important;
    padding-top: 28px !important;
    padding-bottom: 34px !important;
    background-position: center top !important;
  }

  html body .elementor-200468 .opalw-hero .opalw-row {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 24px !important;
  }

  html body .elementor-200468 .opalw-hero-lockup {
    width: 100% !important;
    max-width: 680px !important;
    align-items: center !important;
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body .elementor-200468 .opalw-hero-lockup :is(.opalw-heading, .opalw-text, .elementor-heading-title, p) {
    text-align: center !important;
  }

  html body .elementor-200468 .opalw-hero-lockup h1.elementor-heading-title {
    max-width: 680px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    font-size: clamp(34px, 6vw, 52px) !important;
    line-height: 1 !important;
  }

  html body .elementor-200468 .opalw-hero-lockup .opalw-text {
    max-width: 620px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body .elementor-200468 .opalw-hero-buttons {
    justify-content: center !important;
    align-items: center !important;
    gap: 12px !important;
    width: 100% !important;
  }

  html body .elementor-200468 .opalw-hero-buttons :is(.opalw-button, .opalw-button-outline),
  html body .elementor-200468 .opalw-hero-buttons :is(.opalw-button, .opalw-button-outline) .elementor-button {
    width: min(100%, 300px) !important;
    max-width: 300px !important;
    min-width: 0 !important;
  }

  html body .elementor-200468 .opalw-hero .opalw-form-card {
    width: min(520px, calc(100vw - 44px)) !important;
    max-width: min(520px, calc(100vw - 44px)) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    transform: none !important;
  }

  html body .elementor-200468 .opalw-dark-cta .opalw-dark-cta-row {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 24px !important;
  }

  html body .elementor-200468 .opalw-dark-cta .opalw-dark-cta-row > .opalw-col {
    width: 100% !important;
    max-width: 680px !important;
    align-items: center !important;
    text-align: center !important;
  }

  html body .elementor-200468 .opalw-dark-cta .opalw-dark-cta-row > .opalw-col:first-child::before {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body .elementor-200468 .opalw-dark-cta .opalw-cta-row {
    justify-content: center !important;
    align-items: center !important;
    gap: 12px !important;
  }

  html body .elementor-200468 .opalw-dark-cta .opalw-brand-card {
    width: min(560px, calc(100vw - 42px)) !important;
    max-width: min(560px, calc(100vw - 42px)) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (max-width: 900px) {
  html body .elementor-200468 :is(
    .opalw-need-grid,
    .opalw-process-grid,
    .opalw-style-grid,
    .opalw-gallery-grid,
    .opalw-area-grid,
    .opalw-resource-grid,
    .opalw-faq-grid,
    .opalw-brand-grid,
    .opalw-planning-grid,
    .opalw-trade-grid,
    .opalw-cost-grid,
    .opalw-material-grid
  ) {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 20px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body .elementor-200468 :is(
    .opalw-need-grid,
    .opalw-process-grid,
    .opalw-style-grid,
    .opalw-gallery-grid,
    .opalw-area-grid,
    .opalw-resource-grid,
    .opalw-faq-grid,
    .opalw-brand-grid,
    .opalw-planning-grid,
    .opalw-trade-grid,
    .opalw-cost-grid,
    .opalw-material-grid
  ) > .opalw-card,
  html body .elementor-200468 .opalw-dark-cta .opalw-brand-card {
    width: min(420px, calc(100vw - 36px)) !important;
    max-width: min(420px, calc(100vw - 36px)) !important;
    flex: 0 1 auto !important;
    min-height: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  html body .elementor-200468 .opalw-card:not(.opalw-form-card) :is(.opalw-button, .opalw-button-outline),
  html body .elementor-200468 .opalw-card:not(.opalw-form-card) :is(.opalw-button, .opalw-button-outline) .elementor-button,
  html body .elementor-200468 .opalw-dark-cta .opalw-brand-card :is(.opalw-button, .opalw-button-outline),
  html body .elementor-200468 .opalw-dark-cta .opalw-brand-card :is(.opalw-button, .opalw-button-outline) .elementor-button {
    width: min(100%, 250px) !important;
    max-width: 250px !important;
    min-width: 0 !important;
    white-space: normal !important;
  }

  html body .elementor-200468 .opalw-logo-image,
  html body .elementor-200468 .opalw-source-proof .opalw-logo-image {
    width: 100% !important;
    max-width: 320px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    overflow: visible !important;
    display: flex !important;
    justify-content: center !important;
  }

  html body .elementor-200468 .opalw-logo-image img,
  html body .elementor-200468 .opalw-source-proof .opalw-logo-image img {
    display: block !important;
    width: auto !important;
    max-width: min(270px, 82vw) !important;
    height: auto !important;
    max-height: 120px !important;
    object-fit: contain !important;
    object-position: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body .elementor-200468 .opalw-source-proof :is(.opalw-row, .opalw-row-wrap) {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 22px !important;
  }

  html body .elementor-200468 .opalw-source-proof :is(.opalw-eyebrow, .opalw-heading, .opalw-text, .elementor-heading-title, p) {
    text-align: center !important;
  }

  html body .elementor-200468 .opalw-hero + .opalw-proof-section {
    padding-top: 0 !important;
    padding-bottom: 28px !important;
    overflow: hidden !important;
  }

  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-inner {
    width: min(520px, calc(100vw - 30px)) !important;
    max-width: min(520px, calc(100vw - 30px)) !important;
    margin-top: -16px !important;
    padding: 14px !important;
    border-radius: 34px !important;
    overflow: hidden !important;
  }

  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-items: center !important;
    justify-items: center !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: 100% !important;
    transform: none !important;
  }

  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-card {
    width: 100% !important;
    max-width: none !important;
    min-height: 74px !important;
    padding: 0 4px !important;
    transform: none !important;
  }

  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-number .elementor-heading-title {
    font-size: 30px !important;
    line-height: .95 !important;
  }

  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-logo img {
    max-width: 86px !important;
    max-height: 23px !important;
  }

  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-logo img[src*="houzz-new-logo"],
  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-card:last-child .opalw-proof-logo img {
    width: 72px !important;
    max-width: 72px !important;
  }

  html body .elementor-200468 .opalw-trade-section {
    padding-top: 42px !important;
    padding-bottom: 44px !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 22px !important;
    width: 100% !important;
    max-width: 640px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 24px 20px !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col {
    width: 100% !important;
    max-width: 560px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    padding: 0 !important;
    border: 0 !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child {
    gap: 14px !important;
    padding-bottom: 18px !important;
    border-bottom: 1px solid #C8DDE6 !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child .opalw-image:first-child {
    order: 1 !important;
    width: 100% !important;
    max-width: 330px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child .opalw-image:first-child img {
    width: auto !important;
    max-width: min(330px, 86vw) !important;
    height: auto !important;
    max-height: 118px !important;
    object-fit: contain !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child .opalw-text {
    order: 2 !important;
    width: 100% !important;
    max-width: 420px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    text-align: center !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child .opalw-image:nth-of-type(2),
  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child .opalw-image:nth-child(2) {
    order: 3 !important;
    width: 100% !important;
    max-width: 300px !important;
    margin: 2px auto 0 !important;
    overflow: visible !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child .opalw-image:nth-of-type(2) img,
  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:first-child .opalw-image:nth-child(2) img {
    display: block !important;
    width: auto !important;
    max-width: min(285px, 78vw) !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:nth-child(2) {
    gap: 14px !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row > .opalw-col:nth-child(2) :is(.opalw-eyebrow, .opalw-heading, .opalw-c-text, .opalw-text, .elementor-heading-title, p) {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body .elementor-200468 .opalw-trade-section .opalw-cta-row {
    justify-content: center !important;
    align-items: center !important;
    gap: 12px !important;
    width: 100% !important;
    margin-top: 0 !important;
  }

  html body .elementor-200468 .opalw-dark-cta .opalw-brand-card {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    padding: 22px 18px !important;
    text-align: center !important;
  }

  html body .elementor-200468 .opalw-dark-cta .opalw-brand-card :is(.opalw-icon, .opalw-heading, .opalw-text, .opalw-button) {
    grid-area: auto !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (max-width: 540px) {
  html body .elementor-200468 .opalw-section > .opalw-inner,
  html body .elementor-200468 .opalw-section > .opalw-inner > .e-con-inner,
  html body .elementor-200468 .opalw-hero > .opalw-inner,
  html body .elementor-200468 .opalw-hero > .opalw-inner > .e-con-inner {
    width: calc(100vw - 26px) !important;
    max-width: calc(100vw - 26px) !important;
  }

  html body .elementor-200468 .opalw-hero-lockup h1.elementor-heading-title {
    font-size: clamp(31px, 9vw, 40px) !important;
  }

  html body .elementor-200468 .opalw-hero-buttons {
    flex-direction: column !important;
  }

  html body .elementor-200468 .opalw-hero .opalw-form-card {
    width: calc(100vw - 34px) !important;
    max-width: calc(100vw - 34px) !important;
    padding: 20px !important;
  }

  html body .elementor-200468 .opalw-hero .opalw-form-card form.wpcf7-form,
  html body .elementor-200468 .opalw-hero .opalw-form-card .cstm-frst-row {
    grid-template-columns: 1fr !important;
  }

  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-inner {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    border-radius: 28px !important;
  }

  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-number .elementor-heading-title {
    font-size: 28px !important;
  }

  html body .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-logo img {
    max-width: 78px !important;
  }

  html body .elementor-200468 .opalw-card:not(.opalw-form-card) {
    width: min(100%, calc(100vw - 34px)) !important;
    max-width: min(100%, calc(100vw - 34px)) !important;
  }

  html body .elementor-200468 .opalw-trade-section > .opalw-inner > .e-con-inner > .opalw-row {
    padding: 22px 16px !important;
  }

  html body .elementor-200468 .opalw-trade-section .opalw-cta-row,
  html body .elementor-200468 .opalw-dark-cta .opalw-cta-row {
    flex-direction: column !important;
    align-items: center !important;
  }
}

/* Final tablet and table authority layer:
   tablet gets its own layout, and phone tables become labeled cards. */
@media (max-width: 1200px) {
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-hero {
    padding-top: clamp(76px, 8vw, 112px) !important;
    scroll-margin-top: 112px !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-hero .opalw-row {
    margin-top: 0 !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-section {
    padding-top: 58px !important;
    padding-bottom: 58px !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-section > .opalw-inner,
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-section > .opalw-inner > .e-con-inner,
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-hero > .opalw-inner,
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-hero > .opalw-inner > .e-con-inner {
    width: min(920px, calc(100vw - 44px)) !important;
    max-width: min(920px, calc(100vw - 44px)) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-hero {
    min-height: auto !important;
    padding-top: clamp(86px, 10vw, 118px) !important;
    padding-bottom: 48px !important;
    overflow: visible !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-hero .opalw-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    justify-items: center !important;
    align-items: start !important;
    gap: 28px !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-hero-lockup {
    width: min(680px, 100%) !important;
    max-width: 680px !important;
    flex: none !important;
    padding-left: 0 !important;
    align-items: center !important;
    text-align: center !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-hero-badge {
    position: static !important;
    width: 72px !important;
    max-width: 72px !important;
    margin: 0 auto 6px !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-hero-lockup h1.elementor-heading-title {
    font-size: clamp(44px, 6.2vw, 58px) !important;
    line-height: .98 !important;
    text-align: center !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-hero-lockup :is(.opalw-text, p) {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-hero-buttons {
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-hero-buttons :is(.opalw-button, .opalw-button-outline),
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-hero-buttons :is(.opalw-button, .opalw-button-outline) .elementor-button {
    width: auto !important;
    min-width: 224px !important;
    max-width: 280px !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-hero .opalw-form-card {
    width: min(560px, 100%) !important;
    max-width: 560px !important;
    flex: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-hero + .opalw-proof-section {
    overflow: visible !important;
    padding-top: 0 !important;
    padding-bottom: 34px !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-inner {
    width: min(820px, calc(100vw - 56px)) !important;
    max-width: min(820px, calc(100vw - 56px)) !important;
    margin-top: -18px !important;
    padding: 14px 30px !important;
    border-radius: 52px !important;
    overflow: visible !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    justify-items: center !important;
    align-items: center !important;
    gap: 8px !important;
    transform: none !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-card {
    width: 100% !important;
    max-width: none !important;
    min-height: 74px !important;
    flex: none !important;
    transform: none !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-number .elementor-heading-title {
    font-size: 32px !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-logo img {
    max-width: 86px !important;
    max-height: 24px !important;
    object-fit: contain !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 :is(
    .opalw-need-grid,
    .opalw-process-grid,
    .opalw-style-grid,
    .opalw-gallery-grid,
    .opalw-area-grid,
    .opalw-resource-grid,
    .opalw-faq-grid,
    .opalw-brand-grid,
    .opalw-planning-grid,
    .opalw-trade-grid,
    .opalw-cost-grid,
    .opalw-material-grid
  ) {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    justify-content: center !important;
    align-items: stretch !important;
    gap: 22px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-material-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 18px !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 :is(
    .opalw-need-grid,
    .opalw-process-grid,
    .opalw-style-grid,
    .opalw-gallery-grid,
    .opalw-area-grid,
    .opalw-resource-grid,
    .opalw-faq-grid,
    .opalw-brand-grid,
    .opalw-planning-grid,
    .opalw-trade-grid,
    .opalw-cost-grid,
    .opalw-material-grid
  ) > .opalw-card {
    width: 100% !important;
    max-width: 100% !important;
    flex: none !important;
    min-height: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 :is(
    .opalw-need-grid,
    .opalw-process-grid,
    .opalw-style-grid,
    .opalw-gallery-grid,
    .opalw-area-grid,
    .opalw-resource-grid,
    .opalw-faq-grid,
    .opalw-brand-grid,
    .opalw-planning-grid,
    .opalw-trade-grid,
    .opalw-cost-grid,
    .opalw-material-grid
  ):has(> .opalw-card:only-child) {
    grid-template-columns: minmax(0, min(440px, 100%)) !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-compare-section .opalw-compare-row,
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-cost-section .opalw-row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 28px !important;
    align-items: start !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-compare-section .opalw-compare-row > .opalw-col,
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-cost-section .opalw-row > .opalw-col {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-compare-section .opalw-compare-row > .opalw-col:nth-child(2) {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 22px !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-compare-section .opalw-image img {
    width: 100% !important;
    height: clamp(260px, 34vw, 360px) !important;
    object-fit: cover !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-compare-section .opalw-compare-table,
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-cost-section .opalw-compare-table {
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
    border-radius: 8px !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-compare-section .opalw-compare-table table,
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-cost-section .opalw-compare-table table {
    width: 100% !important;
    min-width: 0 !important;
    table-layout: fixed !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-compare-section .opalw-compare-table th,
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-cost-section .opalw-compare-table th,
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-compare-section .opalw-compare-table td,
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-cost-section .opalw-compare-table td {
    padding: 13px 12px !important;
    line-height: 1.38 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-cost-section .opalw-row > .opalw-col:nth-child(2) {
    max-width: 640px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    align-items: stretch !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-source-proof .opalw-row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    justify-items: center !important;
    gap: 24px !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-source-proof .opalw-logo-image img {
    width: auto !important;
    max-width: min(340px, 72vw) !important;
    height: auto !important;
    max-height: 132px !important;
    object-fit: contain !important;
    object-position: center !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-dark-cta {
    padding-top: 62px !important;
    padding-bottom: 62px !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-dark-cta .opalw-dark-cta-row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    justify-items: center !important;
    gap: 28px !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-dark-cta .opalw-dark-cta-row > .opalw-col {
    width: min(720px, 100%) !important;
    max-width: 720px !important;
    align-items: center !important;
    text-align: center !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-dark-cta .opalw-cta-row {
    justify-content: center !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-dark-cta .opalw-brand-card {
    display: grid !important;
    grid-template-columns: 64px minmax(0, 1fr) minmax(170px, auto) !important;
    grid-template-areas:
      "icon title action"
      "icon text action" !important;
    align-items: center !important;
    column-gap: 18px !important;
    row-gap: 5px !important;
    width: 100% !important;
    max-width: 720px !important;
    min-height: 0 !important;
    padding: 24px !important;
    text-align: left !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-dark-cta .opalw-brand-card :is(.opalw-heading, .opalw-text, .elementor-heading-title, p) {
    text-align: left !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-dark-cta .opalw-brand-card .opalw-button .elementor-button {
    min-width: 170px !important;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-material-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767px) {
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-hero {
    padding-top: clamp(76px, 18vw, 96px) !important;
    padding-bottom: 34px !important;
    overflow: visible !important;
    scroll-margin-top: 96px !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-hero-lockup {
    padding-left: 0 !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-hero-badge {
    position: static !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-hero .opalw-form-card form.wpcf7-form,
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-hero .opalw-form-card .cstm-frst-row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-hero .opalw-form-card :is(input, select, textarea) {
    max-width: 100% !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-compare-section .opalw-compare-table,
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-cost-section .opalw-compare-table {
    overflow: visible !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-compare-section .opalw-compare-table table,
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-cost-section .opalw-compare-table table,
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-compare-section .opalw-compare-table tbody,
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-cost-section .opalw-compare-table tbody,
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-compare-section .opalw-compare-table tr,
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-cost-section .opalw-compare-table tr,
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-compare-section .opalw-compare-table td,
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-cost-section .opalw-compare-table td {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-compare-section .opalw-compare-table thead,
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-cost-section .opalw-compare-table thead {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    border: 0 !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-compare-section .opalw-compare-table tbody,
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-cost-section .opalw-compare-table tbody {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-compare-section .opalw-compare-table tr,
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-cost-section .opalw-compare-table tr {
    background: #FFFFFF !important;
    border: 1px solid #C8DDE6 !important;
    border-left: 5px solid #0B7F6D !important;
    border-radius: 8px !important;
    padding: 12px 14px !important;
    box-shadow: 0 12px 26px rgba(22, 80, 103, .08) !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-compare-section .opalw-compare-table td,
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-cost-section .opalw-compare-table td {
    display: grid !important;
    grid-template-columns: minmax(104px, .38fr) minmax(0, 1fr) !important;
    gap: 12px !important;
    align-items: start !important;
    padding: 10px 0 !important;
    border: 0 !important;
    border-top: 1px solid #E3EEF2 !important;
    background: transparent !important;
    color: #243743 !important;
    text-align: left !important;
    line-height: 1.42 !important;
    overflow-wrap: anywhere !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-compare-section .opalw-compare-table td:first-child,
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-cost-section .opalw-compare-table td:first-child {
    border-top: 0 !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-compare-section .opalw-compare-table td::before,
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-cost-section .opalw-compare-table td::before {
    color: #165067 !important;
    font-family: "Manrope", Arial, sans-serif !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
    text-transform: uppercase !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-compare-section .opalw-compare-table td:nth-child(1)::before {
    content: "Option" !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-compare-section .opalw-compare-table td:nth-child(2)::before {
    content: "Best fit" !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-compare-section .opalw-compare-table td:nth-child(3)::before {
    content: "Consider" !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-cost-section .opalw-row > .opalw-col:first-child .opalw-compare-table td:nth-child(1)::before {
    content: "Style" !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-cost-section .opalw-row > .opalw-col:first-child .opalw-compare-table td:nth-child(2)::before {
    content: "Range" !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-cost-section .opalw-row > .opalw-col:first-child .opalw-compare-table td:nth-child(3)::before {
    content: "Notes" !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-cost-section .opalw-row > .opalw-col:nth-child(2) .opalw-compare-table td:nth-child(1)::before {
    content: "Home" !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-cost-section .opalw-row > .opalw-col:nth-child(2) .opalw-compare-table td:nth-child(2)::before {
    content: "Windows" !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-cost-section .opalw-row > .opalw-col:nth-child(2) .opalw-compare-table td:nth-child(3)::before {
    content: "Range" !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-source-proof .opalw-logo-image img {
    max-width: min(300px, 78vw) !important;
    max-height: 122px !important;
  }
}

@media (max-width: 540px) {
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-compare-section .opalw-compare-table td,
  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-cost-section .opalw-compare-table td {
    grid-template-columns: 1fr !important;
    gap: 5px !important;
  }

  html body:is(.page-id-200468, .elementor-page-200468) .elementor-200468 .opalw-hero + .opalw-proof-section .opalw-inner {
    margin-top: -8px !important;
  }
}

/* Final editor-safe tablet and mobile correction layer:
   Elementor device preview can omit body page classes, so this plain wrapper scope must stay last. */
@media (max-width: 1200px) {
  html body .elementor-200468.elementor-200468 .opalw-hero {
    margin-top: 0 !important;
    padding-top: clamp(34px, 4.5vw, 52px) !important;
    padding-bottom: clamp(34px, 4vw, 48px) !important;
    min-height: 0 !important;
    scroll-margin-top: 96px !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-hero > .opalw-inner,
  html body .elementor-200468.elementor-200468 .opalw-hero > .opalw-inner > .e-con-inner {
    width: min(1060px, calc(100vw - 36px)) !important;
    max-width: 1060px !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-hero .opalw-row {
    align-items: center !important;
    gap: clamp(18px, 3vw, 28px) !important;
    margin-top: 0 !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-hero-lockup {
    gap: 10px !important;
    margin: 0 !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-hero-buttons {
    margin-top: 6px !important;
    gap: 12px !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-hero .opalw-form-card {
    margin-top: 0 !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  html body .elementor-200468.elementor-200468 .opalw-hero {
    padding-top: clamp(38px, 5vw, 54px) !important;
    padding-bottom: 38px !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-hero .opalw-row,
  html body .elementor-200468.elementor-200468 .opalw-hero-row {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 22px !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-hero-lockup {
    width: min(760px, 100%) !important;
    max-width: 760px !important;
    flex: 0 1 auto !important;
    padding-left: 0 !important;
    text-align: center !important;
    align-items: center !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-hero-lockup :is(.opalw-heading, .opalw-text, .elementor-heading-title, p) {
    text-align: center !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-hero-badge {
    position: static !important;
    margin: 0 auto 4px !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-hero-buttons {
    width: min(660px, 100%) !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    justify-content: center !important;
    align-items: center !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-hero-buttons > .elementor-element,
  html body .elementor-200468.elementor-200468 .opalw-hero-buttons .opalw-button,
  html body .elementor-200468.elementor-200468 .opalw-hero-buttons .opalw-button-outline,
  html body .elementor-200468.elementor-200468 .opalw-hero-buttons .elementor-button {
    width: 100% !important;
    max-width: 100% !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-hero .opalw-form-card {
    width: min(560px, 100%) !important;
    max-width: 560px !important;
    flex: 0 1 auto !important;
  }

  html body .elementor-200468.elementor-200468 :is(.opalw-need-grid, .opalw-process-grid, .opalw-style-grid, .opalw-gallery-grid, .opalw-area-grid, .opalw-resource-grid, .opalw-faq-grid, .opalw-brand-grid, .opalw-planning-grid, .opalw-trade-grid, .opalw-cost-grid, .opalw-material-grid) {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    justify-content: center !important;
    justify-items: stretch !important;
    align-items: stretch !important;
    gap: 22px !important;
  }

  html body .elementor-200468.elementor-200468 :is(.opalw-need-grid, .opalw-process-grid, .opalw-style-grid, .opalw-gallery-grid, .opalw-area-grid, .opalw-resource-grid, .opalw-faq-grid, .opalw-brand-grid, .opalw-planning-grid, .opalw-trade-grid, .opalw-cost-grid, .opalw-material-grid) > .opalw-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex: none !important;
    align-self: stretch !important;
  }

  html body .elementor-200468.elementor-200468 :is(.opalw-need-grid, .opalw-process-grid, .opalw-style-grid, .opalw-gallery-grid, .opalw-area-grid, .opalw-resource-grid, .opalw-faq-grid, .opalw-brand-grid, .opalw-planning-grid, .opalw-trade-grid, .opalw-cost-grid, .opalw-material-grid):has(> .opalw-card:only-child) {
    grid-template-columns: minmax(0, min(560px, 100%)) !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-card :is(.opalw-button, .opalw-button-outline) {
    width: min(260px, 100%) !important;
    max-width: 260px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-card :is(.opalw-button, .opalw-button-outline) .elementor-button {
    width: 100% !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-compare-section .opalw-compare-table,
  html body .elementor-200468.elementor-200468 .opalw-cost-section .opalw-compare-table {
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-compare-section .opalw-compare-table table,
  html body .elementor-200468.elementor-200468 .opalw-cost-section .opalw-compare-table table {
    width: 100% !important;
    min-width: 0 !important;
    table-layout: fixed !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-compare-section .opalw-compare-table :is(th, td),
  html body .elementor-200468.elementor-200468 .opalw-cost-section .opalw-compare-table :is(th, td) {
    padding: 13px 12px !important;
    line-height: 1.36 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-cost-section .opalw-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    justify-items: center !important;
    gap: 24px !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-cost-section .opalw-row > .opalw-col {
    width: min(760px, 100%) !important;
    max-width: 760px !important;
  }
}

@media (min-width: 901px) and (max-width: 1024px) {
  html body .elementor-200468.elementor-200468 .opalw-material-grid,
  html body .elementor-200468.elementor-200468 .opalw-area-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 900px) {
  html body .elementor-200468.elementor-200468 .opalw-hero + .opalw-proof-section .opalw-inner,
  html body .elementor-200468.elementor-200468 .opalw-proof-section .opalw-inner {
    width: min(620px, calc(100vw - 28px)) !important;
    max-width: calc(100vw - 28px) !important;
    margin-top: -14px !important;
    padding: 14px 18px !important;
    border-radius: 32px !important;
    overflow: hidden !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-proof-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    justify-items: center !important;
    align-items: center !important;
    gap: 8px 14px !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-proof-grid > .opalw-proof-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex: none !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-proof-logo img {
    max-width: min(112px, 100%) !important;
    object-fit: contain !important;
  }
}

@media (max-width: 767px) {
  html body .elementor-200468.elementor-200468 .opalw-hero {
    padding-top: 38px !important;
    padding-bottom: 30px !important;
    min-height: 0 !important;
    overflow: visible !important;
    scroll-margin-top: 86px !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-hero > .opalw-inner,
  html body .elementor-200468.elementor-200468 .opalw-hero > .opalw-inner > .e-con-inner {
    width: min(560px, calc(100vw - 28px)) !important;
    max-width: calc(100vw - 28px) !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-hero .opalw-row,
  html body .elementor-200468.elementor-200468 .opalw-hero-row {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 18px !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-hero-lockup {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 1 auto !important;
    padding-left: 0 !important;
    text-align: center !important;
    align-items: center !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-hero-lockup :is(.opalw-heading, .opalw-text, .elementor-heading-title, p) {
    text-align: center !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-hero-lockup h1.elementor-heading-title {
    font-size: clamp(31px, 8.4vw, 38px) !important;
    line-height: 1.02 !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-hero-lockup .opalw-text {
    max-width: 520px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-hero-badge {
    position: static !important;
    width: 58px !important;
    max-width: 58px !important;
    margin: 0 auto 3px !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-hero-buttons {
    width: min(430px, 100%) !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    justify-content: center !important;
    gap: 10px !important;
    margin-top: 6px !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-hero-buttons > .elementor-element,
  html body .elementor-200468.elementor-200468 .opalw-hero-buttons .opalw-button,
  html body .elementor-200468.elementor-200468 .opalw-hero-buttons .opalw-button-outline,
  html body .elementor-200468.elementor-200468 .opalw-hero-buttons .elementor-button {
    width: 100% !important;
    max-width: 100% !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-hero .opalw-form-card {
    width: min(430px, 100%) !important;
    max-width: 430px !important;
    flex: 0 1 auto !important;
    margin-top: 0 !important;
  }

  html body .elementor-200468.elementor-200468 :is(.opalw-need-grid, .opalw-process-grid, .opalw-style-grid, .opalw-gallery-grid, .opalw-area-grid, .opalw-resource-grid, .opalw-faq-grid, .opalw-brand-grid, .opalw-planning-grid, .opalw-trade-grid, .opalw-cost-grid, .opalw-material-grid) {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    justify-items: stretch !important;
    align-items: stretch !important;
    gap: 18px !important;
  }

  html body .elementor-200468.elementor-200468 :is(.opalw-need-grid, .opalw-process-grid, .opalw-style-grid, .opalw-gallery-grid, .opalw-area-grid, .opalw-resource-grid, .opalw-faq-grid, .opalw-brand-grid, .opalw-planning-grid, .opalw-trade-grid, .opalw-cost-grid, .opalw-material-grid) > .opalw-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex: none !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-compare-section .opalw-compare-table,
  html body .elementor-200468.elementor-200468 .opalw-cost-section .opalw-compare-table {
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-compare-section .opalw-compare-table table,
  html body .elementor-200468.elementor-200468 .opalw-cost-section .opalw-compare-table table,
  html body .elementor-200468.elementor-200468 .opalw-compare-section .opalw-compare-table tbody,
  html body .elementor-200468.elementor-200468 .opalw-cost-section .opalw-compare-table tbody,
  html body .elementor-200468.elementor-200468 .opalw-compare-section .opalw-compare-table tr,
  html body .elementor-200468.elementor-200468 .opalw-cost-section .opalw-compare-table tr,
  html body .elementor-200468.elementor-200468 .opalw-compare-section .opalw-compare-table td,
  html body .elementor-200468.elementor-200468 .opalw-cost-section .opalw-compare-table td {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-compare-section .opalw-compare-table thead,
  html body .elementor-200468.elementor-200468 .opalw-cost-section .opalw-compare-table thead {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    border: 0 !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-compare-section .opalw-compare-table tbody,
  html body .elementor-200468.elementor-200468 .opalw-cost-section .opalw-compare-table tbody {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-compare-section .opalw-compare-table tr,
  html body .elementor-200468.elementor-200468 .opalw-cost-section .opalw-compare-table tr {
    background: #FFFFFF !important;
    border: 1px solid #C8DDE6 !important;
    border-left: 5px solid #0B7F6D !important;
    border-radius: 8px !important;
    padding: 12px 14px !important;
    box-shadow: 0 12px 26px rgba(22, 80, 103, .08) !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-compare-section .opalw-compare-table td,
  html body .elementor-200468.elementor-200468 .opalw-cost-section .opalw-compare-table td {
    display: grid !important;
    grid-template-columns: minmax(104px, .38fr) minmax(0, 1fr) !important;
    gap: 12px !important;
    align-items: start !important;
    padding: 10px 0 !important;
    border: 0 !important;
    border-top: 1px solid #E3EEF2 !important;
    background: transparent !important;
    color: #243743 !important;
    text-align: left !important;
    line-height: 1.42 !important;
    overflow-wrap: anywhere !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-compare-section .opalw-compare-table td:first-child,
  html body .elementor-200468.elementor-200468 .opalw-cost-section .opalw-compare-table td:first-child {
    border-top: 0 !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-compare-section .opalw-compare-table td::before,
  html body .elementor-200468.elementor-200468 .opalw-cost-section .opalw-compare-table td::before {
    color: #165067 !important;
    font-family: "Manrope", Arial, sans-serif !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
    text-transform: uppercase !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-compare-section .opalw-compare-table td:nth-child(1)::before { content: "Option" !important; }
  html body .elementor-200468.elementor-200468 .opalw-compare-section .opalw-compare-table td:nth-child(2)::before { content: "Best fit" !important; }
  html body .elementor-200468.elementor-200468 .opalw-compare-section .opalw-compare-table td:nth-child(3)::before { content: "Consider" !important; }
  html body .elementor-200468.elementor-200468 .opalw-cost-section .opalw-row > .opalw-col:first-child .opalw-compare-table td:nth-child(1)::before { content: "Style" !important; }
  html body .elementor-200468.elementor-200468 .opalw-cost-section .opalw-row > .opalw-col:first-child .opalw-compare-table td:nth-child(2)::before { content: "Range" !important; }
  html body .elementor-200468.elementor-200468 .opalw-cost-section .opalw-row > .opalw-col:first-child .opalw-compare-table td:nth-child(3)::before { content: "Notes" !important; }
  html body .elementor-200468.elementor-200468 .opalw-cost-section .opalw-row > .opalw-col:nth-child(2) .opalw-compare-table td:nth-child(1)::before { content: "Home" !important; }
  html body .elementor-200468.elementor-200468 .opalw-cost-section .opalw-row > .opalw-col:nth-child(2) .opalw-compare-table td:nth-child(2)::before { content: "Windows" !important; }
  html body .elementor-200468.elementor-200468 .opalw-cost-section .opalw-row > .opalw-col:nth-child(2) .opalw-compare-table td:nth-child(3)::before { content: "Range" !important; }
}

@media (max-width: 540px) {
  html body .elementor-200468.elementor-200468 .opalw-hero {
    padding-top: 34px !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-hero-lockup h1.elementor-heading-title {
    font-size: clamp(29px, 8.8vw, 34px) !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-compare-section .opalw-compare-table td,
  html body .elementor-200468.elementor-200468 .opalw-cost-section .opalw-compare-table td {
    grid-template-columns: 1fr !important;
    gap: 5px !important;
  }
}

/* Final mobile centering and proof-pill cleanup. */
html body .elementor-200468.elementor-200468 .opalw-hero + .opalw-proof-section {
  background: #FFFFFF !important;
}

html body .elementor-200468.elementor-200468 .opalw-hero + .opalw-proof-section .opalw-inner,
html body .elementor-200468.elementor-200468 .opalw-hero + .opalw-proof-section .e-con-inner,
html body .elementor-200468.elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-grid,
html body .elementor-200468.elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-card {
  background: #FFFFFF !important;
}

html body .elementor-200468.elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-card {
  border: 0 !important;
  box-shadow: none !important;
}

html body .elementor-200468.elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-logo,
html body .elementor-200468.elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-logo .elementor-widget-container {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  line-height: 0 !important;
}

html body .elementor-200468.elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-logo img {
  display: block !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: 118px !important;
  height: auto !important;
  max-height: 26px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  filter: none !important;
  object-fit: contain !important;
}

@media (max-width: 767px) {
  html body .elementor-200468.elementor-200468 .opalw-hero {
    padding-top: 66px !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-section > .opalw-inner,
  html body .elementor-200468.elementor-200468 .opalw-section > .opalw-inner > .e-con-inner {
    align-items: center !important;
    text-align: center !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-row,
  html body .elementor-200468.elementor-200468 .opalw-row-wrap {
    align-items: center !important;
    justify-content: center !important;
  }

  html body .elementor-200468.elementor-200468 :is(.opalw-need-grid, .opalw-process-grid, .opalw-style-grid, .opalw-gallery-grid, .opalw-area-grid, .opalw-resource-grid, .opalw-faq-grid, .opalw-brand-grid, .opalw-planning-grid, .opalw-trade-grid, .opalw-cost-grid, .opalw-material-grid) {
    justify-items: center !important;
  }

  html body .elementor-200468.elementor-200468 :is(.opalw-need-grid, .opalw-process-grid, .opalw-style-grid, .opalw-gallery-grid, .opalw-area-grid, .opalw-resource-grid, .opalw-faq-grid, .opalw-brand-grid, .opalw-planning-grid, .opalw-trade-grid, .opalw-cost-grid, .opalw-material-grid) > .opalw-card,
  html body .elementor-200468.elementor-200468 .opalw-card {
    width: min(430px, 100%) !important;
    max-width: 430px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    align-items: center !important;
    text-align: center !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-card :is(.opalw-heading, .opalw-text, .elementor-heading-title, p) {
    text-align: center !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-card :is(ul, ol) {
    display: inline-block !important;
    text-align: left !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body .elementor-200468.elementor-200468 :is(.opalw-button, .opalw-button-outline) {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-compare-section .opalw-compare-table tr,
  html body .elementor-200468.elementor-200468 .opalw-cost-section .opalw-compare-table tr {
    max-width: 430px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-compare-section .opalw-compare-table,
  html body .elementor-200468.elementor-200468 .opalw-cost-section .opalw-compare-table,
  html body .elementor-200468.elementor-200468 .opalw-compare-section .opalw-compare-table td,
  html body .elementor-200468.elementor-200468 .opalw-cost-section .opalw-compare-table td {
    text-align: left !important;
  }
}

@media (max-width: 540px) {
  html body .elementor-200468.elementor-200468 .opalw-hero {
    padding-top: 62px !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-hero + .opalw-proof-section .opalw-inner {
    background: #FFFFFF !important;
  }
}

/* Final tablet proof-strip and centering cleanup. */
html body .elementor-200468.elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-logo :is(.elementor-widget-empty-icon, .elementor-image-placeholder, .elementor-empty-view, .eicon-image, svg),
html body .elementor-200468.elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-logo .elementor-widget-container > :not(img):not(picture):not(a) {
  display: none !important;
}

html body .elementor-200468.elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-logo img:not([src*="google.png"]):not([src*="blue-seal"]):not([src*="facebook-2-wide"]):not([src*="houzz-new-logo"]) {
  display: none !important;
}

@media (min-width: 768px) and (max-width: 1024px) {
  html body .elementor-200468.elementor-200468 .opalw-hero {
    padding-top: clamp(56px, 7vw, 72px) !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-section > .opalw-inner,
  html body .elementor-200468.elementor-200468 .opalw-section > .opalw-inner > .e-con-inner {
    align-items: center !important;
    text-align: center !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-row,
  html body .elementor-200468.elementor-200468 .opalw-row-wrap {
    justify-content: center !important;
    align-items: center !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-card,
  html body .elementor-200468.elementor-200468 :is(.opalw-need-grid, .opalw-process-grid, .opalw-style-grid, .opalw-gallery-grid, .opalw-area-grid, .opalw-resource-grid, .opalw-faq-grid, .opalw-brand-grid, .opalw-planning-grid, .opalw-trade-grid, .opalw-cost-grid, .opalw-material-grid) > .opalw-card {
    align-items: center !important;
    text-align: center !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-card :is(.opalw-heading, .opalw-text, .elementor-heading-title, p) {
    text-align: center !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-card :is(ul, ol) {
    display: inline-block !important;
    text-align: left !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body .elementor-200468.elementor-200468 :is(.opalw-button, .opalw-button-outline) {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-hero + .opalw-proof-section .opalw-inner {
    width: min(820px, calc(100vw - 36px)) !important;
    max-width: calc(100vw - 36px) !important;
    padding: 14px 28px !important;
    overflow: hidden !important;
    background: #FFFFFF !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    justify-items: center !important;
    align-items: center !important;
    gap: 8px !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 0 4px !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-logo img {
    max-width: 96px !important;
    max-height: 24px !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-hero + .opalw-proof-section .opalw-proof-logo img[src*="houzz-new-logo"] {
    max-width: 86px !important;
  }

  html body .elementor-200468.elementor-200468 .opalw-compare-section .opalw-compare-table,
  html body .elementor-200468.elementor-200468 .opalw-cost-section .opalw-compare-table,
  html body .elementor-200468.elementor-200468 .opalw-compare-section .opalw-compare-table :is(th, td),
  html body .elementor-200468.elementor-200468 .opalw-cost-section .opalw-compare-table :is(th, td) {
    text-align: left !important;
  }
}/* End custom CSS */