/* ===== Premium Phase 5 — polish for icon-box pages (e.g. /discover/) ==
   Targets the Elementor widget types /discover/ relies on:
   icon-box, button.default, icon-list. Brings these in line with the
   premium look of the rest of the site. Fully revertable.
   ====================================================================== */

/* ----- 1. Icon-box card polish -------------------------------------- */
.elementor-widget-icon-box .elementor-icon-box-wrapper {
  background: #fff;
  border-radius: 16px;
  padding: 28px 24px;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04),
              0 8px 24px -12px rgba(15, 23, 42, 0.10);
  transition: transform 280ms cubic-bezier(0.22, 1, 0.36, 1),
              box-shadow 280ms ease;
  height: 100%;
}

.elementor-widget-icon-box:hover .elementor-icon-box-wrapper {
  transform: translateY(-4px);
  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.06),
              0 28px 50px -16px rgba(11, 68, 193, 0.16);
}

.elementor-icon-box-icon {
  margin-bottom: 16px;
}

.elementor-icon-box-icon .elementor-icon {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(11,68,193,0.10) 0%, rgba(229,185,59,0.06) 100%);
  color: #0B44C1 !important;
  box-shadow: inset 0 0 0 1px rgba(11,68,193,0.08);
  transition: transform 280ms ease, background 280ms ease;
}

.elementor-icon-box-icon .elementor-icon svg {
  width: 28px;
  height: 28px;
  fill: currentColor;
}

.elementor-widget-icon-box:hover .elementor-icon-box-icon .elementor-icon {
  background: linear-gradient(135deg, rgba(11,68,193,0.18) 0%, rgba(229,185,59,0.10) 100%);
  transform: rotate(-4deg) scale(1.04);
}

.elementor-icon-box-title {
  margin-bottom: 10px !important;
}

.elementor-icon-box-title a,
.elementor-icon-box-title {
  color: #17447F !important;
}

.elementor-icon-box-description {
  color: #475569 !important;
  line-height: 1.65;
}


/* ----- 2. Basic Elementor button polish (matches react_button) ----- */
.elementor-widget-button .elementor-button,
a.elementor-button-link.elementor-button {
  font-weight: 600 !important;
  letter-spacing: 0.01em !important;
  border-radius: 10px !important;
  padding: 14px 30px !important;
  background: #0B44C1 !important;
  color: #fff !important;
  box-shadow: 0 6px 18px rgba(11, 68, 193, 0.18);
  transition: transform 180ms ease, box-shadow 180ms ease, background 180ms ease !important;
  display: inline-flex !important;
  align-items: center;
  gap: 0.55rem;
}

.elementor-widget-button .elementor-button:hover,
a.elementor-button-link.elementor-button:hover {
  background: #093697 !important;
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(11, 68, 193, 0.24);
}

.elementor-widget-button .elementor-button:active,
a.elementor-button-link.elementor-button:active {
  transform: translateY(1px);
}


/* ----- 3. Icon list (used on /discover/ for feature checklists) ---- */
.elementor-widget-icon-list .elementor-icon-list-items {
  gap: 12px;
}

.elementor-icon-list-icon {
  color: #0B44C1 !important;
}

.elementor-icon-list-text {
  color: #1f2937 !important;
}


/* ----- 4. H1 size for landing pages without a slider ---------------- */
.elementor-heading-title.elementor-size-xxl {
  font-size: clamp(2rem, 1.6rem + 2.4vw, 3.8rem) !important;
  line-height: 1.08 !important;
  font-weight: 700;
}


/* (Removed: section padding was bloating the header.
    The new /discover/ body uses its own .pism-discover-* sections
    with built-in padding — Elementor e-parent doesn't need overriding.) */


/* ----- 5b. Remove blue ghost frame around Vision & Mission card ----
   The per-widget Elementor inline CSS for icon-box .elementor-element-
   532f01ad adds `border: 1px solid #0B44C1; padding: 15px 30px` to its
   .elementor-widget-container. Combined with phase5's white card on
   the INNER .elementor-icon-box-wrapper, that border reads as a
   redundant blue ring around the card. Remove it. */
.elementor-element-532f01ad > .elementor-widget-container {
  border: 0 !important;
  padding: 0 !important;
}


/* ----- 6. Hide the un-rendered FluentForm + Spacer noise ---------- */
.elementor-widget-fluent-form-widget.fluentform_wrapper_does_not_exist,
.elementor-widget-fluent-form-widget:has(.ff-message-failed) {
  display: none !important;
}


/* ----- 7. Mobile tweaks for /discover/ ----------------------------- */
@media (max-width: 767px) {
  .elementor-widget-icon-box .elementor-icon-box-wrapper {
    padding: 22px 20px;
  }
  .elementor-icon-box-icon .elementor-icon {
    width: 48px;
    height: 48px;
  }
}
