/* Approved PDF alignment layered over the existing redesign stylesheet. */
:root {
  --up-navy: #213d31;
  --up-green: #c7ee6d;
  --up-lime: #dff7a8;
}

html:has(body:is(.page-id-6084, .page-id-370, .page-id-4862, .page-id-318, .page-id-4746, .page-id-609, .page-id-524, .page-id-6533)) {
  overflow-x: clip;
}

html:has(body:is(.page-id-629, .page-id-6793)) {
  overflow-x: clip;
}

html:has(body:is(.page-id-617, .page-id-3, .page-id-4186, .page-id-502, .page-id-444)) {
  overflow-x: clip;
}

:where(.page-id-6084, .page-id-370, .page-id-4862, .page-id-318, .page-id-4746, .page-id-609, .page-id-524, .page-id-6533) [data-elementor-type="wp-page"] h1,
:where(.page-id-6084, .page-id-370, .page-id-4862, .page-id-318, .page-id-4746, .page-id-609, .page-id-524, .page-id-6533) [data-elementor-type="wp-page"] h2,
:where(.page-id-6084, .page-id-370, .page-id-4862, .page-id-318, .page-id-4746, .page-id-609, .page-id-524, .page-id-6533) [data-elementor-type="wp-page"] h3 {
}

/* Match every page and footer wrapper to the header's responsive gutters. */
:where(.page-id-6084, .page-id-370, .page-id-4862, .page-id-318, .page-id-4746, .page-id-609, .page-id-524, .page-id-6533) [data-elementor-type="wp-page"] .up-wrap,
.up-footer .up-wrap,
:where(.page-id-629, .page-id-617, .page-id-3, .page-id-4186, .page-id-502, .page-id-444) [data-elementor-type="wp-page"] > .e-con-boxed > .e-con-inner,
.page-id-6793 [data-elementor-type="wp-page"] > .e-con-full > .e-con-boxed > .e-con-inner {
  width: min(var(--up-wrap), calc(100% - (2 * var(--up-gutter)))) !important;
  max-width: none !important;
  margin-inline: auto !important;
}

/* Events previously mixed 850px, 1000px, 1100px and 1250px section boxes. */
.page-id-6793 [data-elementor-type="wp-page"] > .e-con-full {
  padding-inline: 0 !important;
}

/* Remove Elementor's extra mobile inset before applying the shared gutters. */
:where(.page-id-629, .page-id-617, .page-id-3, .page-id-4186, .page-id-502, .page-id-444) [data-elementor-type="wp-page"] > .e-con-boxed {
  padding-inline: 0 !important;
}

/* Elementor's container gap otherwise compounds the intended eyebrow margins. */
.up-section:not(.up-hero) .e-con:has(> .elementor-widget.up-eyebrow) {
  row-gap: 0 !important;
}

.up-section:not(.up-hero) .elementor-widget.up-eyebrow,
.up-section:not(.up-hero) .elementor-widget.up-eyebrow .elementor-widget-container,
.up-section:not(.up-hero) .elementor-widget.up-eyebrow .up-eyebrow {
  font-weight: 700 !important;
}

.up-section:not(.up-hero) .elementor-widget.up-eyebrow + .elementor-widget-heading {
  margin-top: 14px !important;
}

.up-native-nav .elementor-item {
  transition: color 0.18s ease;
}

.up-native-nav .elementor-nav-menu--dropdown {
  border-top: 1px solid rgba(199, 238, 109, 0.35);
  background: var(--up-navy) !important;
}

.up-native-nav .elementor-nav-menu--dropdown .elementor-item {
  justify-content: flex-start;
  padding: 11px 18px !important;
  background: transparent !important;
  color: #fff !important;
  text-align: left;
}

.up-native-nav .elementor-nav-menu--dropdown .elementor-item:hover,
.up-native-nav .elementor-nav-menu--dropdown .elementor-item:focus,
.up-native-nav .elementor-nav-menu--dropdown .elementor-item-active {
  background: rgba(199, 238, 109, 0.08) !important;
  color: var(--up-green) !important;
}

.up-header-phone a,
.up-footer a,
:where(.page-id-6084, .page-id-370, .page-id-4862, .page-id-318, .page-id-4746, .page-id-609, .page-id-524, .page-id-6533) [data-elementor-type="wp-page"] .elementor-widget-text-editor a:not(.elementor-button),
:where(.page-id-6084, .page-id-370, .page-id-4862, .page-id-318, .page-id-4746, .page-id-609, .page-id-524, .page-id-6533) [data-elementor-type="wp-page"] .elementor-icon-list-item a {
  transition: color 0.18s ease, text-decoration-color 0.18s ease;
}

.up-header-phone a:hover,
.up-footer a:hover,
:where(.page-id-6084, .page-id-370, .page-id-4862, .page-id-318, .page-id-4746, .page-id-609, .page-id-524, .page-id-6533) [data-elementor-type="wp-page"] .elementor-widget-text-editor a:not(.elementor-button):hover,
:where(.page-id-6084, .page-id-370, .page-id-4862, .page-id-318, .page-id-4746, .page-id-609, .page-id-524, .page-id-6533) [data-elementor-type="wp-page"] .elementor-icon-list-item a:hover {
  color: #c7ee6d !important;
  text-decoration-color: currentColor;
}

.up-native-logo .elementor-heading-title {
  font-weight: 700 !important;
  letter-spacing: -0.02em;
}

.up-native-logo .elementor-heading-title small {
  letter-spacing: 0.2em;
}

.up-hero {
  padding-top: 72px !important;
}

.up-hero .elementor-widget.up-eyebrow {
  display: inline-flex;
  width: fit-content;
  border-color: rgba(199, 238, 109, 0.55) !important;
}

.up-hero .elementor-widget.up-eyebrow > .elementor-widget-container > .up-eyebrow {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

.page-id-524 .up-faq-toggle .elementor-tab-title {
  cursor: default;
}

.page-id-524 .up-faq-toggle .elementor-tab-title::after {
  display: none;
}

.up-header-cta .elementor-button,
.up-button .elementor-button,
.up-text-link .elementor-button,
.up-introducer-form .ff-btn-submit {
}

.up-header-cta .elementor-button,
.up-button .elementor-button,
.up-text-link .elementor-button,
.up-introducer-form .ff-btn-submit,
.elementor-popup-modal .ff-btn-submit {
  box-sizing: border-box !important;
  display: inline-flex;
  min-width: 142px;
  height: 48px;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  padding: 13px 24px !important;
  border-radius: 3px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 20px !important;
  transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.up-header-cta .elementor-button,
.up-button .elementor-button,
.up-introducer-form .ff-btn-submit,
.elementor-popup-modal .ff-btn-submit {
  border-color: #c7ee6d;
  background-color: #c7ee6d;
  color: #213d31;
}

.up-header-cta .elementor-button:hover,
.up-button .elementor-button:hover,
.up-introducer-form .ff-btn-submit:hover,
.elementor-popup-modal .ff-btn-submit:hover {
  border-color: #dff7a8 !important;
  background-color: #dff7a8 !important;
  transform: translateY(-1px);
}

.up-header-cta .elementor-button:active,
.up-button .elementor-button:active,
.up-text-link .elementor-button:active,
.up-introducer-form .ff-btn-submit:active,
.elementor-popup-modal .ff-btn-submit:active {
  transform: translateY(0);
}

.up-header-cta .elementor-button:focus-visible,
.up-button .elementor-button:focus-visible,
.up-text-link .elementor-button:focus-visible,
.up-introducer-form .ff-btn-submit:focus-visible,
.elementor-popup-modal .ff-btn-submit:focus-visible {
  outline: 3px solid #c7ee6d;
  outline-offset: 3px;
}

/* Use the card-count modifiers already assigned in Elementor. */
.up-cards {
  gap: 20px !important;
}

.up-cards > .up-card,
.up-cards > .up-card + .up-card {
  border-top-width: 1px;
}

@media (min-width: 1025px) {
  .up-cards--two {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .up-cards--three {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .up-cards--four {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .up-cards--five {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}

.up-native-table-head .up-native-table-cell {
  color: #9eacbc !important;
  font-size: 11px !important;
  font-weight: 700 !important;
}

.up-native-table-row:not(.up-native-table-head) .up-native-table-cell {
  color: #fff !important;
  font-size: 14px !important;
}

.up-native-table-row:not(.up-native-table-head) .up-native-table-cell:last-child {
  color: #c7ee6d !important;
}

/* Home uses two distinct Trustpilot treatments in the approved PDF. */
.up-trustpilot-rating {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--up-navy);
  font-style: normal;
  line-height: 1.2;
  text-transform: none;
  white-space: nowrap;
}

.up-trustpilot-stars {
  flex: 0 0 auto;
  color: #c7ee6d;
}

.up-trustpilot-score {
  color: var(--up-navy);
  font-weight: 700;
}

.up-trustpilot-brand {
  color: #7e8da0;
  font-weight: 400;
}

.up-finance-strip .elementor-widget-text-editor:last-child .elementor-widget-container {
  display: flex;
  align-items: center;
  justify-content: center;
}

.up-trustpilot-rating--compact {
  gap: 3px;
  font-size: 12px;
}

.up-trustpilot-rating--compact .up-trustpilot-stars {
  margin-right: 1px;
  font-size: 13px;
}

.up-testimonial .elementor-widget-text-editor:first-child {
  color: var(--up-navy);
  letter-spacing: 0;
  text-transform: none;
}

.up-testimonial .up-wrap {
  gap: 0 !important;
}

.up-trustpilot-rating--testimonial {
  gap: 5px;
  font-size: 16px;
}

.up-trustpilot-rating--testimonial .up-trustpilot-stars {
  font-size: 18px;
  letter-spacing: 1px;
}

.up-testimonial .elementor-widget-text-editor:nth-child(2) {
  max-width: 1000px;
  margin: 14px auto !important;
  font-size: 27px !important;
  font-weight: 400;
  line-height: 1.3;
}

.up-testimonial blockquote {
  margin: 0 !important;
  color: var(--up-navy);
  font-size: inherit;
  font-style: normal;
  font-weight: 400;
  line-height: inherit;
}

.up-testimonial .elementor-widget-text-editor:last-child,
.up-testimonial .elementor-widget-text-editor:last-child .elementor-widget-container {
  color: #7e8da0;
  font-size: 12px;
}

/* The PDF presents membership tiers as selectable calculator controls. */
.up-plan-tiers button {
  display: grid;
  width: 100%;
  min-height: 62px;
  place-items: center;
  padding: 9px;
  border: 1px solid var(--up-line);
  border-bottom: 0;
  border-radius: 0;
  appearance: none;
  background: var(--up-mist);
  color: var(--up-ink);
  font: inherit;
  text-align: center;
  cursor: pointer;
  transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}

.up-plan-tiers button:last-child {
  border-bottom: 1px solid var(--up-line);
}

.up-plan-tiers button:hover {
  border-color: #c7ee6d;
  background: #eef9e7;
}

.up-plan-tiers button strong,
.up-plan-tiers button small {
  display: block;
}

.up-plan-tiers button small {
  color: var(--up-green-dark);
  font-size: 18px;
  font-weight: 700;
}

.up-plan-tiers button.is-active {
  border-color: #c7ee6d;
  background: var(--up-navy);
  color: #fff;
}

.up-plan-tiers button.is-active small {
  color: #c7ee6d;
}

/* Bring the existing Blog and Events pages into the same restrained palette. */
.page-id-629 .elementor-element-8e1a23e {
  min-height: 280px;
  padding: 72px 0 !important;
  background: var(--up-navy) !important;
}

.page-id-629 .elementor-element-8e1a23e > .e-con-inner {
  width: min(var(--up-wrap), calc(100% - (2 * var(--up-gutter)))) !important;
  max-width: none !important;
  margin-inline: auto !important;
  justify-content: center;
}

.page-id-629 .elementor-element-8e1a23e h1 {
  margin: 0;
  color: #fff !important;
  font-size: clamp(46px, 5vw, 68px) !important;
  font-weight: 400 !important;
  line-height: 1.05 !important;
  letter-spacing: -0.035em;
  text-transform: none;
}

.page-id-6793 .elementor-element-e100001,
.page-id-6793 .elementor-element-e600001 {
  background: var(--up-navy) !important;
}

.page-id-6793 .elementor-element-e100003 .elementor-heading-title,
.page-id-6793 .elementor-element-e600003 .elementor-heading-title {
  color: #fff !important;
  font-weight: 400 !important;
}

.page-id-6793 .elementor-element-e300006 {
  border: 1px solid rgba(199, 238, 109, 0.5) !important;
  background: var(--up-navy) !important;
}

.page-id-6793 .elementor-element-e300007 .elementor-heading-title {
  color: #fff !important;
}

.page-id-6793 .elementor-element-e300008 .elementor-heading-title {
  color: var(--up-green) !important;
}

.page-id-6793 .elementor-element-e600005 .elementor-button {
  border: 1px solid var(--up-green) !important;
  background: var(--up-green) !important;
  color: var(--up-navy) !important;
  transition: background-color 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
}

.page-id-6793 .elementor-element-e600005 .elementor-button:hover {
  border-color: var(--up-lime) !important;
  background: var(--up-lime) !important;
  transform: translateY(-1px);
}

/* Use one editorial hero treatment for legacy title banners, Blog and Events. */
:where(.page-id-617, .page-id-3, .page-id-4186, .page-id-502, .page-id-444) [data-elementor-type="wp-page"] > .e-con:first-child,
.page-id-629 [data-elementor-type="wp-page"] > .e-con:first-child,
.page-id-6793 .elementor-element-e100001 {
  min-height: 335px !important;
  padding-block: 68px !important;
  background: var(--up-navy) !important;
  background-image: none !important;
}

:where(.page-id-617, .page-id-3, .page-id-4186, .page-id-502, .page-id-444) [data-elementor-type="wp-page"] > .e-con:first-child > .e-con-inner,
.page-id-629 [data-elementor-type="wp-page"] > .e-con:first-child > .e-con-inner,
.page-id-6793 .elementor-element-e100002 > .e-con-inner {
  align-items: flex-start !important;
  justify-content: center !important;
  text-align: left !important;
}

:where(.page-id-617, .page-id-3, .page-id-4186, .page-id-502, .page-id-444) [data-elementor-type="wp-page"] > .e-con:first-child .elementor-widget-heading,
.page-id-629 [data-elementor-type="wp-page"] > .e-con:first-child .elementor-widget-heading,
.page-id-6793 .elementor-element-e100003 {
  width: 100% !important;
  max-width: 100% !important;
  align-self: stretch !important;
  text-align: left !important;
}

:where(.page-id-617, .page-id-3, .page-id-4186, .page-id-502, .page-id-444) [data-elementor-type="wp-page"] > .e-con:first-child h1,
.page-id-629 [data-elementor-type="wp-page"] > .e-con:first-child h1,
.page-id-6793 .elementor-element-e100003 h1 {
  margin: 0 !important;
  color: #fff !important;
  font-size: clamp(46px, 4.5vw, 58px) !important;
  font-weight: 700 !important;
  line-height: 1.08 !important;
  letter-spacing: -0.035em !important;
  text-align: left !important;
  text-transform: none !important;
}

:where(.page-id-617, .page-id-3, .page-id-4186, .page-id-502, .page-id-444) [data-elementor-type="wp-page"] > .e-con:first-child h1::before,
.page-id-629 [data-elementor-type="wp-page"] > .e-con:first-child h1::before,
.page-id-6793 .elementor-element-e100003 h1::before {
  display: table;
  margin-bottom: 28px;
  padding: 8px 14px;
  border: 1px solid rgba(199, 238, 109, 0.7);
  border-radius: 999px;
  color: var(--up-green);
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.page-id-617 [data-elementor-type="wp-page"] > .e-con:first-child h1::before {
  content: "Get in Touch";
}

:where(.page-id-3, .page-id-4186) [data-elementor-type="wp-page"] > .e-con:first-child h1::before {
  content: "Legal";
}

.page-id-502 [data-elementor-type="wp-page"] > .e-con:first-child h1::before {
  content: "Resources";
}

.page-id-444 [data-elementor-type="wp-page"] > .e-con:first-child h1::before {
  content: "Why DriveYield";
}

.page-id-629 [data-elementor-type="wp-page"] > .e-con:first-child h1::before {
  content: "Insights & Updates";
}

.page-id-6793 .elementor-element-e100003 h1::before {
  content: "Events";
}

.page-id-6793 .elementor-element-e100004,
.page-id-6793 .elementor-element-e100004 p {
  max-width: 760px;
  color: #fff !important;
  font-size: 20px !important;
  line-height: 1.5 !important;
  text-align: left !important;
}

/* Shared typography and rhythm for supporting, resource and legal pages. */
:where(.page-id-629, .page-id-6793, .page-id-617, .page-id-3, .page-id-4186, .page-id-409, .page-id-502, .page-id-553, .page-id-4201, .page-id-444) [data-elementor-type="wp-page"] {
  color: var(--up-ink);
  font-size: var(--up-body);
  line-height: 1.58;
}

:where(.page-id-629, .page-id-6793, .page-id-617, .page-id-3, .page-id-4186, .page-id-409, .page-id-502, .page-id-553, .page-id-4201, .page-id-444) [data-elementor-type="wp-page"] h1,
:where(.page-id-629, .page-id-6793, .page-id-617, .page-id-3, .page-id-4186, .page-id-409, .page-id-502, .page-id-553, .page-id-4201, .page-id-444) [data-elementor-type="wp-page"] h2,
:where(.page-id-629, .page-id-6793, .page-id-617, .page-id-3, .page-id-4186, .page-id-409, .page-id-502, .page-id-553, .page-id-4201, .page-id-444) [data-elementor-type="wp-page"] h3 {
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
}

:where(.page-id-629, .page-id-6793, .page-id-617, .page-id-3, .page-id-4186, .page-id-409, .page-id-502, .page-id-553, .page-id-4201, .page-id-444) [data-elementor-type="wp-page"] .elementor-widget-text-editor,
:where(.page-id-629, .page-id-6793, .page-id-617, .page-id-3, .page-id-4186, .page-id-409, .page-id-502, .page-id-553, .page-id-4201, .page-id-444) [data-elementor-type="wp-page"] .elementor-widget-text-editor p {
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.58 !important;
}

:where(.page-id-629, .page-id-6793, .page-id-617, .page-id-3, .page-id-4186, .page-id-409, .page-id-502, .page-id-553, .page-id-4201, .page-id-444) [data-elementor-type="wp-page"] p {
  margin: 0 0 1em;
}

:where(.page-id-629, .page-id-6793, .page-id-617, .page-id-3, .page-id-4186, .page-id-409, .page-id-502, .page-id-553, .page-id-4201, .page-id-444) [data-elementor-type="wp-page"] p:last-child {
  margin-bottom: 0;
}

:where(.page-id-629, .page-id-6793, .page-id-617, .page-id-3, .page-id-4186, .page-id-409, .page-id-502, .page-id-553, .page-id-4201, .page-id-444) [data-elementor-type="wp-page"] .elementor-button {
  min-height: 48px;
  padding: 13px 24px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 20px !important;
}

/* Content-led resource heroes retain their compositions but share one type scale. */
:where(.page-id-409, .page-id-553, .page-id-4201) [data-elementor-type="wp-page"] h1 {
  font-size: clamp(42px, 4vw, 52px) !important;
  line-height: 1.08 !important;
}

/* Standard section and card heading roles. */
.page-id-629 [data-elementor-type="wp-page"] h3,
.page-id-6793 [data-elementor-type="wp-page"] h3,
.page-id-4201 [data-elementor-type="wp-page"] h3 {
  font-size: 22px !important;
  line-height: 1.2 !important;
}

.page-id-6793 .elementor-element-e100003 .elementor-heading-title {
  font-weight: 700 !important;
}

.page-id-629 [data-elementor-type="wp-page"] .elementor-post__excerpt,
.page-id-629 [data-elementor-type="wp-page"] .elementor-post__excerpt p {
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.58 !important;
}

.page-id-6793 [data-elementor-type="wp-page"] h2,
.page-id-409 [data-elementor-type="wp-page"] h2,
.page-id-502 [data-elementor-type="wp-page"] h2,
.page-id-553 [data-elementor-type="wp-page"] h2,
.page-id-4201 [data-elementor-type="wp-page"] h2,
.page-id-444 .elementor-element-012f508 h2,
.page-id-444 .elementor-element-454b0c3 h2 {
  font-size: 42px !important;
  line-height: 1.08 !important;
}

.page-id-617 [data-elementor-type="wp-page"] h2 {
  font-size: 30px !important;
  line-height: 1.2 !important;
}

:where(.page-id-3, .page-id-4186) [data-elementor-type="wp-page"] h2 {
  margin: 1.35em 0 0.45em !important;
  font-size: 26px !important;
  line-height: 1.2 !important;
}

:where(.page-id-3, .page-id-4186) [data-elementor-type="wp-page"] h3 {
  margin: 1.2em 0 0.4em !important;
  font-size: 20px !important;
  line-height: 1.25 !important;
}

.page-id-444 :where(.elementor-element-49f50ce, .elementor-element-5ae9265, .elementor-element-aed66f8, .elementor-element-848b9f9, .elementor-element-38d099e, .elementor-element-9ea58b5, .elementor-element-b6010d2) h2,
.page-id-444 .elementor-element-d3672d4 h2,
.page-id-444 .elementor-element-a5bd462 h2 {
  font-size: 22px !important;
  line-height: 1.2 !important;
}

.page-id-444 .elementor-element-0ebc88b h2,
.page-id-6793 .elementor-element-e700002 h2 {
  font-size: 34px !important;
  line-height: 1.08 !important;
}

/* These are supporting statements rather than section headings. */
.page-id-409 .elementor-element-c880eac h2 {
  font-size: 20px !important;
  line-height: 1.35 !important;
  letter-spacing: 0 !important;
}

/* Bring recurring 80–90px legacy section padding onto the 72px site rhythm. */
.page-id-629 .elementor-element-e1432c0 > .e-con-inner,
.page-id-617 .elementor-element-35ef355 > .e-con-inner,
.page-id-3 .elementor-element-f32ff59 > .e-con-inner,
.page-id-4186 .elementor-element-71d44c7 > .e-con-inner,
.page-id-502 .elementor-element-6cb93f3 > .e-con-inner,
.page-id-409 :where(.elementor-element-976b8cd, .elementor-element-54fa652, .elementor-element-d581c05) > .e-con-inner,
.page-id-553 :where(.elementor-element-72c64b49, .elementor-element-5bf1cd2d, .elementor-element-54973aaf) > .e-con-inner,
.page-id-4201 :where(.elementor-element-56aa791, .elementor-element-82eef53, .elementor-element-16ca6c5) > .e-con-inner,
.page-id-444 :where(.elementor-element-f82079f, .elementor-element-6b2ef2a, .elementor-element-dd31a03) > .e-con-inner {
  padding-block: 72px !important;
}

.page-id-4201 .elementor-element-8cf9b88 > .e-con-inner,
.page-id-6793 .elementor-element-e700001 {
  padding-block: 52px !important;
}

.page-id-6793 :where(.elementor-element-e200001, .elementor-element-e300001, .elementor-element-e400001, .elementor-element-e500001, .elementor-element-e600001) {
  padding-block: 72px !important;
}

@media (max-width: 1024px) {
  .up-header-main {
    min-height: 68px;
    padding-block: 10px !important;
  }

  .up-cards--two,
  .up-cards--three,
  .up-cards--four,
  .up-cards--five {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .up-terms {
    grid-template-columns: 1fr;
  }

  .page-id-629 .elementor-element-e1432c0 > .e-con-inner,
  .page-id-617 .elementor-element-35ef355 > .e-con-inner,
  .page-id-3 .elementor-element-f32ff59 > .e-con-inner,
  .page-id-4186 .elementor-element-71d44c7 > .e-con-inner,
  .page-id-502 .elementor-element-6cb93f3 > .e-con-inner,
  .page-id-409 :where(.elementor-element-976b8cd, .elementor-element-54fa652, .elementor-element-d581c05) > .e-con-inner,
  .page-id-553 :where(.elementor-element-72c64b49, .elementor-element-5bf1cd2d, .elementor-element-54973aaf) > .e-con-inner,
  .page-id-4201 :where(.elementor-element-56aa791, .elementor-element-82eef53, .elementor-element-16ca6c5) > .e-con-inner,
  .page-id-444 :where(.elementor-element-f82079f, .elementor-element-6b2ef2a, .elementor-element-dd31a03) > .e-con-inner,
  .page-id-6793 :where(.elementor-element-e200001, .elementor-element-e300001, .elementor-element-e400001, .elementor-element-e500001, .elementor-element-e600001) {
    padding-block: 60px !important;
  }
}

@media (max-width: 1180px) and (min-width: 1025px) {
  :where(.page-id-6084, .page-id-370, .page-id-4862, .page-id-318, .page-id-4746, .page-id-609, .page-id-524, .page-id-6533) [data-elementor-type="wp-page"] .up-wrap,
  .up-footer .up-wrap,
  :where(.page-id-629, .page-id-617, .page-id-3, .page-id-4186, .page-id-502, .page-id-444) [data-elementor-type="wp-page"] > .e-con-boxed > .e-con-inner,
  .page-id-6793 [data-elementor-type="wp-page"] > .e-con-full > .e-con-boxed > .e-con-inner {
    width: calc(100% - 56px) !important;
    margin-inline: auto !important;
  }

  .page-id-629 .elementor-element-8e1a23e > .e-con-inner {
    width: calc(100% - 56px) !important;
    margin-inline: 28px !important;
  }

  /* Ten direct links wrap at narrower desktop widths, so use the existing menu toggle. */
  .up-header-main > .e-con-inner {
    position: relative;
  }

  .up-native-nav {
    position: static !important;
  }

  .up-native-nav .elementor-nav-menu--main {
    display: none !important;
  }

  .up-native-nav .elementor-menu-toggle {
    display: flex !important;
  }

  .up-native-nav .elementor-nav-menu--dropdown {
    top: 100% !important;
    left: 0 !important;
    width: 100% !important;
  }

  .up-native-nav .elementor-menu-toggle.elementor-active + .elementor-nav-menu--dropdown {
    display: block !important;
  }
}

@media (max-width: 1024px) {
  :where(.page-id-6084, .page-id-370, .page-id-4862, .page-id-318, .page-id-4746, .page-id-609, .page-id-524, .page-id-6533) [data-elementor-type="wp-page"] .up-wrap,
  .up-footer .up-wrap,
  :where(.page-id-629, .page-id-617, .page-id-3, .page-id-4186, .page-id-502, .page-id-444) [data-elementor-type="wp-page"] > .e-con-boxed > .e-con-inner,
  .page-id-6793 [data-elementor-type="wp-page"] > .e-con-full > .e-con-boxed > .e-con-inner {
    width: calc(100% - (2 * var(--up-gutter-tablet))) !important;
    margin-inline: auto !important;
  }

  .page-id-629 .elementor-element-8e1a23e > .e-con-inner {
    width: calc(100% - (2 * var(--up-gutter-tablet))) !important;
    margin-inline: var(--up-gutter-tablet) !important;
  }
}

@media (max-width: 768px) {
  :where(.page-id-6084, .page-id-370, .page-id-4862, .page-id-318, .page-id-4746, .page-id-609, .page-id-524, .page-id-6533) [data-elementor-type="wp-page"] .up-wrap,
  .up-footer .up-wrap,
  :where(.page-id-629, .page-id-617, .page-id-3, .page-id-4186, .page-id-502, .page-id-444) [data-elementor-type="wp-page"] > .e-con-boxed > .e-con-inner,
  .page-id-6793 [data-elementor-type="wp-page"] > .e-con-full > .e-con-boxed > .e-con-inner {
    width: calc(100% - (2 * var(--up-gutter-mobile))) !important;
    margin-inline: auto !important;
  }

  .page-id-629 .elementor-element-8e1a23e {
    min-height: 210px;
    padding: 50px 0 !important;
  }

  .page-id-629 .elementor-element-8e1a23e > .e-con-inner {
    width: calc(100% - (2 * var(--up-gutter-mobile))) !important;
    margin-inline: var(--up-gutter-mobile) !important;
  }

  .up-hero {
    padding-top: 50px !important;
  }

  .up-cards--two,
  .up-cards--three,
  .up-cards--four,
  .up-cards--five {
    grid-template-columns: 1fr;
  }

  .up-trustpilot-rating--testimonial {
    flex-wrap: wrap;
    gap: 3px 5px;
    font-size: 14px;
  }

  .up-trustpilot-rating--testimonial .up-trustpilot-stars {
    width: 100%;
    font-size: 17px;
  }

  .up-testimonial .elementor-widget-text-editor:nth-child(2) {
    font-size: 24px !important;
  }

  .up-plan-tiers button {
    border: 1px solid var(--up-line);
    border-bottom: 0;
  }

  .up-plan-tiers button:nth-child(even) {
    border-left: 0;
  }

  .up-plan-tiers button:nth-last-child(-n + 2) {
    border-bottom: 1px solid var(--up-line);
  }

  :where(.page-id-617, .page-id-3, .page-id-4186, .page-id-502, .page-id-444) [data-elementor-type="wp-page"] > .e-con:first-child,
  .page-id-629 [data-elementor-type="wp-page"] > .e-con:first-child,
  .page-id-6793 .elementor-element-e100001 {
    min-height: 280px !important;
    padding-block: 48px !important;
  }

  :where(.page-id-617, .page-id-3, .page-id-4186, .page-id-502, .page-id-444) [data-elementor-type="wp-page"] > .e-con:first-child h1,
  .page-id-629 [data-elementor-type="wp-page"] > .e-con:first-child h1,
  .page-id-6793 .elementor-element-e100003 h1 {
    font-size: clamp(38px, 11vw, 46px) !important;
  }

  :where(.page-id-617, .page-id-3, .page-id-4186, .page-id-502, .page-id-444) [data-elementor-type="wp-page"] > .e-con:first-child h1::before,
  .page-id-629 [data-elementor-type="wp-page"] > .e-con:first-child h1::before,
  .page-id-6793 .elementor-element-e100003 h1::before {
    margin-bottom: 22px;
  }

  .page-id-6793 .elementor-element-e100004,
  .page-id-6793 .elementor-element-e100004 p {
    font-size: 17px !important;
  }

  :where(.page-id-409, .page-id-553, .page-id-4201) [data-elementor-type="wp-page"] h1 {
    font-size: 39px !important;
  }

  .page-id-6793 [data-elementor-type="wp-page"] h2,
  .page-id-409 [data-elementor-type="wp-page"] h2,
  .page-id-502 [data-elementor-type="wp-page"] h2,
  .page-id-553 [data-elementor-type="wp-page"] h2,
  .page-id-4201 [data-elementor-type="wp-page"] h2,
  .page-id-444 .elementor-element-012f508 h2,
  .page-id-444 .elementor-element-454b0c3 h2 {
    font-size: 30px !important;
  }

  .page-id-444 .elementor-element-0ebc88b h2,
  .page-id-6793 .elementor-element-e700002 h2 {
    font-size: 30px !important;
  }

  .page-id-629 .elementor-element-e1432c0 > .e-con-inner,
  .page-id-617 .elementor-element-35ef355 > .e-con-inner,
  .page-id-3 .elementor-element-f32ff59 > .e-con-inner,
  .page-id-4186 .elementor-element-71d44c7 > .e-con-inner,
  .page-id-502 .elementor-element-6cb93f3 > .e-con-inner,
  .page-id-409 :where(.elementor-element-976b8cd, .elementor-element-54fa652, .elementor-element-d581c05) > .e-con-inner,
  .page-id-553 :where(.elementor-element-72c64b49, .elementor-element-5bf1cd2d, .elementor-element-54973aaf) > .e-con-inner,
  .page-id-4201 :where(.elementor-element-56aa791, .elementor-element-82eef53, .elementor-element-16ca6c5) > .e-con-inner,
  .page-id-444 :where(.elementor-element-f82079f, .elementor-element-6b2ef2a, .elementor-element-dd31a03) > .e-con-inner,
  .page-id-6793 :where(.elementor-element-e200001, .elementor-element-e300001, .elementor-element-e400001, .elementor-element-e500001, .elementor-element-e600001) {
    padding-block: 50px !important;
  }

  .page-id-4201 .elementor-element-8cf9b88 > .e-con-inner,
  .page-id-6793 .elementor-element-e700001 {
    padding-block: 44px !important;
  }
}

/* Elementor's responsive page CSS declares these empty legacy columns later
   in the cascade, so retain the cleanup with page-level specificity. */
body.page-id-409 .elementor-element-00fa1e7,
body.page-id-444 .elementor-element-fcd1e50,
body.page-id-444 .elementor-element-69c0101 {
  display: none !important;
  min-height: 0 !important;
}

@media (max-width: 430px) {
  .page-id-444 [data-elementor-type="wp-page"] > .e-con:first-child h1 {
    font-size: 38px !important;
  }
}

/* --------------------------------------------------------------------------
   Premium polish layer — 13 October 2026
   Visual refinement only: structure, content and workflows remain unchanged.
   -------------------------------------------------------------------------- */
:root {
  --up-green-ink: #597b25;
  --up-surface-green: #f0f8eb;
  --up-radius-lg: 10px;
  --up-shadow-sm: 0 8px 24px rgba(33, 61, 49, 0.08);
  --up-shadow-md: 0 18px 48px rgba(33, 61, 49, 0.12);
}

/* Shared controls and approved-page cards gain restrained depth. */
.up-header-cta .elementor-button,
.up-button .elementor-button,
.up-introducer-form .ff-btn-submit,
:where(.page-id-409, .page-id-502, .page-id-553, .page-id-4201, .page-id-444, .page-id-617, .page-id-6793, .page-id-5105) [data-elementor-type="wp-page"] .elementor-button {
  box-shadow: 0 7px 18px rgba(33, 61, 49, 0.14);
}

.up-cards > .up-card,
.up-steps > .up-card {
  border-color: rgba(33, 61, 49, 0.13);
  border-radius: 8px;
  box-shadow: var(--up-shadow-sm);
}

.up-card--dark,
.up-card--dark > .up-card,
.up-section--navy .up-card {
  border-color: rgba(255, 255, 255, 0.18);
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.16);
}

.up-wrap.up-split .elementor-widget-image img,
.up-office-door img {
  border-radius: var(--up-radius-lg);
  box-shadow: var(--up-shadow-md);
}

/* Bright green remains an accent; navy carries headings on light surfaces. */
:where(.page-id-409, .page-id-502, .page-id-553, .page-id-4201, .page-id-444) [data-elementor-type="wp-page"] h2,
:where(.page-id-409, .page-id-502, .page-id-553, .page-id-4201, .page-id-444) [data-elementor-type="wp-page"] h3 {
  color: var(--up-navy) !important;
}

:where(.page-id-409, .page-id-502, .page-id-553, .page-id-4201, .page-id-444) [data-elementor-type="wp-page"] .elementor-divider-separator {
  border-color: var(--up-green) !important;
}

:where(.page-id-409, .page-id-553, .page-id-4201, .page-id-444) [data-elementor-type="wp-page"] .elementor-icon-list-icon {
  color: var(--up-green-ink) !important;
}

/* Market Context: preserve split compositions while improving contrast. */
.page-id-409 .elementor-element-976b8cd {
  background: linear-gradient(135deg, #f4f8fb 0%, #eaf3f8 100%) !important;
}

.page-id-409 .elementor-element-4347674 h1,
.page-id-409 .elementor-element-976b8cd .elementor-widget-text-editor,
.page-id-409 .elementor-element-976b8cd .elementor-widget-text-editor p {
  color: var(--up-navy) !important;
}

.page-id-409 :where(.elementor-element-c96baf7, .elementor-element-57f4db4, .elementor-element-00fa1e7) {
  border-radius: var(--up-radius-lg);
  box-shadow: var(--up-shadow-md);
  overflow: hidden;
}

.page-id-409 :where(.elementor-element-75b84bb, .elementor-element-31307c6, .elementor-element-56f4090) {
  align-content: center;
}

.page-id-409 .elementor-element-d581c05 {
  background: var(--up-mist) !important;
}

/* Comparison pages: make dense data feel deliberate without changing values. */
.page-id-502 .elementor-element-2d553e1 h2,
.page-id-553 .elementor-element-6286f0cf h2 {
  max-width: 960px;
  margin-inline: auto;
  color: var(--up-navy) !important;
}

.page-id-502 .table-wrapper,
.page-id-553 .investment-table-wrapper {
  border: 1px solid var(--up-line);
  border-radius: var(--up-radius-lg);
  background: #fff;
  box-shadow: var(--up-shadow-md);
  overflow: auto;
}

.page-id-502 .comparison-table,
.page-id-553 .investment-table {
  margin: 0 !important;
  border: 0 !important;
  background: #fff;
}

.page-id-502 .comparison-table thead th,
.page-id-553 .investment-table thead th {
  border-color: rgba(255, 255, 255, 0.16) !important;
  background: var(--up-navy) !important;
  color: #fff !important;
}

.page-id-502 .comparison-table thead th:nth-child(2),
.page-id-553 .investment-table thead th:nth-child(2) {
  background: #315f1c !important;
}

.page-id-502 .comparison-table tbody tr:nth-child(even),
.page-id-553 .investment-table tbody tr:nth-child(even) {
  background: #f8fafb;
}

.page-id-502 .comparison-table tbody td:nth-child(2),
.page-id-553 .investment-table tbody td:nth-child(2) {
  background: var(--up-surface-green);
}

.page-id-502 .comparison-table :is(th, td),
.page-id-553 .investment-table :is(th, td) {
  border-color: var(--up-line) !important;
  line-height: 1.45;
}

/* SPV page had white copy on white sections; restore readable hierarchy. */
.page-id-553 [data-elementor-type="wp-page"] .elementor-widget-text-editor,
.page-id-553 [data-elementor-type="wp-page"] .elementor-widget-text-editor p,
.page-id-553 [data-elementor-type="wp-page"] .elementor-icon-list-text {
  color: var(--up-ink) !important;
}

.page-id-553 .elementor-element-72c64b49 {
  background: linear-gradient(135deg, #f4f7fc 0%, #e8eef8 100%) !important;
}

.page-id-553 .elementor-element-f4ae388 img {
  border-radius: var(--up-radius-lg);
  box-shadow: var(--up-shadow-md);
}

.page-id-553 .elementor-element-5bf1cd2d,
.page-id-553 .elementor-element-54973aaf {
  background: var(--up-mist) !important;
}

/* Supply Partners: tone down large neon areas and separate partner cards. */
.page-id-4201 .elementor-element-56aa791 {
  background: linear-gradient(135deg, #f1f8ed 0%, #e7f3e1 100%) !important;
}

.page-id-4201 .elementor-element-be267aa h1,
.page-id-4201 .elementor-element-f13f5fe,
.page-id-4201 .elementor-element-f13f5fe p {
  color: var(--up-navy) !important;
}

.page-id-4201 .elementor-element-db8eaf {
  border-radius: var(--up-radius-lg);
  box-shadow: var(--up-shadow-md);
  overflow: hidden;
}

.page-id-4201 .elementor-element-0aef92e {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px !important;
}

.page-id-4201 .elementor-element-0aef92e > .elementor-widget {
  width: auto !important;
  min-width: 0;
  padding: 28px 22px !important;
  border: 1px solid var(--up-line);
  border-top: 3px solid var(--up-green);
  border-radius: 8px;
  background: #fff;
  box-shadow: var(--up-shadow-sm);
}

.page-id-4201 .elementor-element-0aef92e > .elementor-widget > .elementor-widget-container {
  display: flex;
  width: 100%;
  height: 100%;
  min-height: 0 !important;
  align-items: center;
  justify-content: center;
  padding: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.page-id-4201 .elementor-element-0aef92e h3 {
  color: var(--up-navy) !important;
}

.page-id-4201 .elementor-element-8cf9b88 img {
  max-height: 72px;
  object-fit: contain;
  filter: saturate(0.88);
}

.page-id-4201 .elementor-element-16ca6c5 {
  border-top: 1px solid var(--up-line);
  background: var(--up-mist) !important;
}

/* Why Choose: turn the joined legacy grid into distinct premium cards. */
.page-id-444 .elementor-element-6ca1409 {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px !important;
}

.page-id-444 .elementor-element-6ca1409 > :where(.elementor-element-55dc623, .elementor-element-a070204, .elementor-element-c454361, .elementor-element-8005814, .elementor-element-e3e74fb, .elementor-element-14e810d, .elementor-element-df5a696) {
  width: auto !important;
  min-width: 0;
  padding: 30px 28px !important;
  border: 1px solid var(--up-line) !important;
  border-top: 3px solid var(--up-green) !important;
  border-radius: 8px !important;
  background: #fff;
  box-shadow: var(--up-shadow-sm);
}

.page-id-444 .elementor-element-df5a696 {
  grid-column: 1 / -1;
}

.page-id-444 .elementor-element-6ca1409 h2 {
  color: var(--up-navy) !important;
}

.page-id-444 .elementor-element-6ca1409 .elementor-widget-image img {
  width: 58px;
  height: 58px;
  object-fit: contain;
}

.page-id-444 .elementor-element-6b2ef2a {
  background: var(--up-mist) !important;
}

.page-id-444 :where(.elementor-element-ac1ed07, .elementor-element-850f08c) {
  padding: 34px !important;
  border: 1px solid var(--up-line);
  border-radius: var(--up-radius-lg);
  background: #fff;
  box-shadow: var(--up-shadow-sm);
}

/* Remove empty legacy image columns rather than presenting blank panels. */
.page-id-409 .elementor-element-00fa1e7,
.page-id-444 :where(.elementor-element-fcd1e50, .elementor-element-69c0101) {
  display: none !important;
}

.page-id-409 .elementor-element-56f4090,
.page-id-444 :where(.elementor-element-ac1ed07, .elementor-element-850f08c) {
  width: min(100%, 780px) !important;
  margin-inline: auto;
}

/* Blog archive: cleaner cards, calmer titles and clearer pagination. */
.page-id-629 .elementor-element-e1432c0 {
  background: var(--up-mist) !important;
}

.page-id-629 .elementor-post {
  border: 1px solid rgba(33, 61, 49, 0.12);
  border-radius: var(--up-radius-lg);
  background: #fff;
  box-shadow: var(--up-shadow-sm) !important;
  overflow: hidden;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.page-id-629 .elementor-post:hover {
  box-shadow: var(--up-shadow-md) !important;
  transform: translateY(-4px);
}

.page-id-629 .elementor-post__thumbnail img {
  transition: transform 0.35s ease;
}

.page-id-629 .elementor-post:hover .elementor-post__thumbnail img {
  transform: scale(1.025);
}

.page-id-629 .elementor-post__title,
.page-id-629 .elementor-post__title a {
  color: var(--up-navy) !important;
}

.page-id-629 .elementor-post__meta-data {
  border-color: var(--up-line) !important;
  color: var(--up-muted) !important;
}

.page-id-629 .page-numbers {
  display: inline-grid;
  min-width: 38px;
  min-height: 38px;
  place-items: center;
  border: 1px solid transparent;
  border-radius: 50%;
}

.page-id-629 .page-numbers.current {
  border-color: var(--up-green);
  background: var(--up-navy);
  color: #fff !important;
}

/* Events: maintain content while aligning cards and headings with the site. */
.page-id-6793 :where(.elementor-element-e200003, .elementor-element-e300003, .elementor-element-e400003, .elementor-element-e500003) h2 {
  color: var(--up-navy) !important;
}

.page-id-6793 .elementor-element-e300006 {
  border-radius: var(--up-radius-lg);
  box-shadow: var(--up-shadow-md);
}

.page-id-6793 :where(.elementor-element-e200005, .elementor-element-e400005, .elementor-element-e500005) {
  max-width: 900px;
}

/* Contact: convert the legacy two-column area into balanced information cards. */
.page-id-617 .elementor-element-35ef355 {
  background: var(--up-mist) !important;
}

.page-id-617 .elementor-element-35ef355 > .e-con-inner {
  gap: 24px !important;
  align-items: stretch;
}

.page-id-617 :where(.elementor-element-7f5ea30, .elementor-element-ed94855) {
  height: auto !important;
  min-height: 0 !important;
  padding: 34px !important;
  border: 1px solid var(--up-line);
  border-radius: var(--up-radius-lg);
  background: #fff;
  box-shadow: var(--up-shadow-sm);
}

.page-id-617 :where(.elementor-element-96cd8bb, .elementor-element-d1629c0) {
  padding: 0 !important;
}

.page-id-617 #SIGNUP_BODY,
.page-id-617 #SIGNUP_BODY_ALL {
  padding: 0 !important;
  background: transparent !important;
  color: var(--up-ink) !important;
}

.page-id-617 #zcampaignOptinForm,
.page-id-617 #SIGNUP_BODY_ALL,
.page-id-617 #SIGNUP_BODY,
.page-id-617 #SIGNUP_BODY > div,
.page-id-617 #SIGNUP_BODY > div > div,
.page-id-617 #zcampaignOptinForm .zcsffieldsdiv {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.page-id-617 #zcampaignOptinForm .zcsffieldsdiv > div {
  padding: 0 0 16px !important;
}

.page-id-617 #zcampaignOptinForm div[name="SIGNUP_FORM_LABEL"] {
  float: none !important;
  width: 100% !important;
  margin: 0 0 6px !important;
  color: var(--up-muted) !important;
  font-size: 14px !important;
  font-weight: 700;
}

.page-id-617 #zcampaignOptinForm .zcinputbox,
.page-id-617 #captchaParent {
  float: none !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
}

.page-id-617 #zcampaignOptinForm input:not([type="hidden"]):not([type="button"]) {
  width: 100% !important;
  height: 48px !important;
  padding: 11px 14px !important;
  border: 1px solid var(--up-line) !important;
  border-radius: 4px !important;
  background: #fff !important;
  color: var(--up-ink) !important;
  font-size: 16px !important;
}

.page-id-617 #captchaOld {
  padding: 0 0 16px !important;
}

.page-id-617 #captchaDiv {
  width: 100% !important;
  padding: 14px !important;
  border-color: var(--up-line) !important;
  border-radius: 4px;
  text-align: center;
}

.page-id-617 #zcWebOptin {
  min-width: 160px;
  min-height: 48px;
  padding: 13px 24px !important;
  border: 1px solid var(--up-green) !important;
  border-radius: 3px !important;
  background: var(--up-green) !important;
  color: var(--up-navy) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 20px !important;
  box-shadow: 0 7px 18px rgba(33, 61, 49, 0.14);
}

/* Legal copy uses a readable measure and a quieter document surface. */
:where(.page-id-3, .page-id-4186) [data-elementor-type="wp-page"] > .e-con:nth-child(2) {
  background: var(--up-mist) !important;
}

:where(.page-id-3, .page-id-4186) [data-elementor-type="wp-page"] > .e-con:nth-child(2) .elementor-widget-text-editor {
  max-width: 940px;
  padding: 44px 48px;
  border: 1px solid var(--up-line);
  border-radius: var(--up-radius-lg);
  background: #fff;
  box-shadow: var(--up-shadow-sm);
}

/* Thank-you utility page now feels intentional while retaining its content. */
.page-id-5105 [data-elementor-type="wp-page"] .elementor-element-615a4db {
  min-height: 460px;
  justify-content: center;
  padding: 72px max(var(--up-gutter), calc((100vw - var(--up-wrap)) / 2)) !important;
  background: var(--up-navy) !important;
  text-align: center;
}

.page-id-5105 .elementor-element-2529d69 h1,
.page-id-5105 .elementor-element-2529d69 h2 {
  color: #fff !important;
  font-size: clamp(46px, 5vw, 60px) !important;
  font-weight: 700 !important;
  line-height: 1.08 !important;
  letter-spacing: -0.03em !important;
}

.page-id-5105 .elementor-element-09847d7 .elementor-button {
  border-color: var(--up-green) !important;
  background: var(--up-green) !important;
  color: var(--up-navy) !important;
}

@media (max-width: 1024px) {
  .page-id-4201 .elementor-element-0aef92e,
  .page-id-444 .elementor-element-6ca1409 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .page-id-444 .elementor-element-df5a696 {
    grid-column: 1 / -1;
  }

}

@media (max-width: 768px) {
  .up-cards > .up-card,
  .up-steps > .up-card {
    box-shadow: 0 6px 18px rgba(33, 61, 49, 0.07);
  }

  .page-id-4201 .elementor-element-0aef92e,
  .page-id-444 .elementor-element-6ca1409 {
    grid-template-columns: 1fr;
    gap: 14px !important;
  }

  .page-id-444 .elementor-element-df5a696 {
    grid-column: auto;
  }

  .page-id-4201 .elementor-element-0aef92e > .elementor-widget,
  .page-id-444 .elementor-element-6ca1409 > :where(.elementor-element-55dc623, .elementor-element-a070204, .elementor-element-c454361, .elementor-element-8005814, .elementor-element-e3e74fb, .elementor-element-14e810d, .elementor-element-df5a696) {
    padding: 24px 22px !important;
  }

  .page-id-444 :where(.elementor-element-ac1ed07, .elementor-element-850f08c),
  .page-id-617 :where(.elementor-element-7f5ea30, .elementor-element-ed94855) {
    padding: 24px 22px !important;
  }

  :where(.page-id-3, .page-id-4186) [data-elementor-type="wp-page"] > .e-con:nth-child(2) .elementor-widget-text-editor {
    padding: 28px 22px;
  }

  .page-id-5105 [data-elementor-type="wp-page"] .elementor-element-615a4db {
    min-height: 360px;
    padding: 50px var(--up-gutter-mobile) !important;
  }
}

/* --------------------------------------------------------------------------
   Premium editorial refinement V2 — stronger hierarchy, same content model.
   -------------------------------------------------------------------------- */
:root {
  --up-navy-deep: #172d25;
  --up-navy-mid: #2b5042;
  --up-paper: #fbfcfa;
  --up-mist-premium: #f2f6f7;
  --up-line-premium: rgba(33, 61, 49, 0.12);
  --up-shadow-premium: 0 24px 60px -36px rgba(23, 45, 37, 0.52), 0 8px 24px -18px rgba(23, 45, 37, 0.3);
}

.up-native-nav .elementor-item {
  position: relative;
}

.up-native-nav .elementor-nav-menu--main .elementor-item::after {
  right: 12px !important;
  bottom: -4px !important;
  left: 12px !important;
  height: 2px !important;
  border-radius: 99px;
  background-color: var(--up-green) !important;
}

.up-header-cta .elementor-button,
.up-button .elementor-button,
.up-introducer-form .ff-btn-submit,
:where(.page-id-409, .page-id-502, .page-id-553, .page-id-4201, .page-id-444, .page-id-617, .page-id-6793, .page-id-5105) [data-elementor-type="wp-page"] .elementor-button {
  min-height: 50px;
  border-radius: 6px !important;
  box-shadow: 0 12px 28px -14px rgba(199, 238, 109, 0.65);
}

/* Editorial heroes: deep tonal treatment and a restrained brand glow. */
.up-hero,
:where(.page-id-629, .page-id-6793, .page-id-617, .page-id-3, .page-id-4186, .page-id-502, .page-id-444) [data-elementor-type="wp-page"] > .e-con:first-child {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background:
    radial-gradient(circle at 88% 12%, rgba(199, 238, 109, 0.13), transparent 29%),
    linear-gradient(135deg, var(--up-navy-deep) 0%, var(--up-navy) 56%, var(--up-navy-mid) 100%) !important;
}

.up-hero::after,
:where(.page-id-629, .page-id-6793, .page-id-617, .page-id-3, .page-id-4186, .page-id-502, .page-id-444) [data-elementor-type="wp-page"] > .e-con:first-child::after {
  position: absolute;
  z-index: -1;
  right: -120px;
  bottom: -190px;
  width: 430px;
  height: 430px;
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 50%;
  box-shadow: 0 0 0 58px rgba(255, 255, 255, 0.018), 0 0 0 116px rgba(255, 255, 255, 0.012);
  content: "";
  pointer-events: none;
}

.up-hero {
  padding-top: 88px !important;
  padding-bottom: 88px !important;
}

.up-hero h1,
:where(.page-id-629, .page-id-6793, .page-id-617, .page-id-3, .page-id-4186, .page-id-502, .page-id-444) [data-elementor-type="wp-page"] > .e-con:first-child h1 {
  font-size: clamp(52px, 4.5vw, 68px) !important;
  line-height: 1.02 !important;
  letter-spacing: -0.042em !important;
  text-wrap: balance;
}

.up-hero .up-lead,
.up-hero .up-lead p,
.page-id-6793 .elementor-element-e100004,
.page-id-6793 .elementor-element-e100004 p {
  max-width: 720px;
  color: rgba(255, 255, 255, 0.82) !important;
  font-size: 19px !important;
  line-height: 1.62 !important;
}

.up-hero .elementor-widget.up-eyebrow,
:where(.page-id-629, .page-id-6793, .page-id-617, .page-id-3, .page-id-4186, .page-id-502, .page-id-444) [data-elementor-type="wp-page"] > .e-con:first-child h1::before {
  border-radius: 999px !important;
  background: rgba(199, 238, 109, 0.06);
  box-shadow: inset 0 0 0 1px rgba(199, 238, 109, 0.12);
}

/* Shared editorial rhythm and typography. */
:where(.page-id-6084, .page-id-370, .page-id-4862, .page-id-318, .page-id-4746, .page-id-609, .page-id-524, .page-id-6533) .up-section {
  padding-block: 82px !important;
}

.up-section--mist {
  background: var(--up-mist-premium) !important;
}

.up-section h2,
.up-cta h2 {
  letter-spacing: -0.032em !important;
  text-wrap: balance;
}

.up-section .up-intro,
.up-section .up-intro p {
  max-width: 760px;
  color: #4b5d71 !important;
  font-size: 18px !important;
  line-height: 1.65 !important;
}

.up-section:not(.up-section--navy) .up-eyebrow,
.up-section:not(.up-section--navy) .up-eyebrow p {
  color: var(--up-green-ink) !important;
  font-size: 12px !important;
  letter-spacing: 0.12em !important;
}

/* Cards: stronger proportion, quieter detail and less template-like styling. */
.up-section:not(.up-section--navy) .up-card,
.page-id-444 .elementor-element-6ca1409 > :where(.elementor-element-55dc623, .elementor-element-a070204, .elementor-element-c454361, .elementor-element-8005814, .elementor-element-e3e74fb, .elementor-element-14e810d, .elementor-element-df5a696),
.page-id-4201 .elementor-element-0aef92e > .elementor-widget {
  position: relative;
  padding: 32px !important;
  border: 1px solid var(--up-line-premium) !important;
  border-top: 2px solid var(--up-green) !important;
  border-radius: 12px !important;
  background: linear-gradient(180deg, #fff 0%, var(--up-paper) 100%) !important;
  box-shadow: var(--up-shadow-premium) !important;
}

.up-section:not(.up-section--navy) .up-card h3,
.up-section:not(.up-section--navy) .up-card h2 {
  margin-bottom: 12px !important;
  color: var(--up-navy) !important;
  line-height: 1.15 !important;
}

.up-section:not(.up-section--navy) .up-card p {
  color: #536477 !important;
  line-height: 1.65 !important;
}

.up-section--navy {
  background:
    radial-gradient(circle at 90% 10%, rgba(199, 238, 109, 0.08), transparent 26%),
    var(--up-navy-deep) !important;
}

.up-section--navy .up-card,
.up-card--dark,
.up-card--dark > .up-card {
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  border-top: 2px solid rgba(199, 238, 109, 0.75) !important;
  border-radius: 12px !important;
  background: rgba(255, 255, 255, 0.035) !important;
  box-shadow: 0 18px 42px -30px rgba(0, 0, 0, 0.8) !important;
}

.up-cards {
  gap: 24px !important;
}

.up-checks .elementor-icon-list-item,
.up-list-cards .elementor-icon-list-item {
  padding-block: 13px !important;
}

/* Home: turn the opening data and proof points into a composed hero panel. */
.page-id-6084 .up-home-hero-grid {
  grid-template-columns: minmax(0, 1.05fr) minmax(420px, 0.95fr) !important;
  column-gap: 68px !important;
  row-gap: 42px !important;
  align-items: start !important;
}

.page-id-6084 .up-home-hero-copy {
  grid-column: 1;
  grid-row: 1;
}

.page-id-6084 .up-opportunities {
  grid-column: 2;
  grid-row: 1;
  align-self: start;
}

.page-id-6084 .up-home-hero-copy h1 {
  font-size: clamp(58px, 5vw, 76px) !important;
  line-height: 0.99 !important;
  letter-spacing: -0.05em !important;
}

.page-id-6084 .up-opportunities {
  padding: 34px !important;
  border: 1px solid rgba(199, 238, 109, 0.28);
  border-radius: 16px;
  background: rgba(3, 18, 34, 0.52);
  box-shadow: 0 28px 70px -36px rgba(0, 0, 0, 0.9);
  backdrop-filter: blur(10px);
}

.page-id-6084 .up-table-wrap {
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 10px;
}

.page-id-6084 .up-native-table-row {
  padding-inline: 16px;
}

.page-id-6084 .up-native-table-row:not(.up-native-table-head) {
  min-height: 58px;
  align-items: center;
  background: rgba(255, 255, 255, 0.025);
}

.page-id-6084 .up-three {
  grid-column: 1 / -1;
  grid-row: 2;
  width: min(100%, 780px) !important;
  margin: 0 auto !important;
  justify-self: center;
  gap: 12px !important;
  grid-auto-rows: 1fr;
  border-top: 0;
}

.page-id-6084 .up-three > .up-card {
  padding: 20px 20px 18px !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  border-top: 2px solid rgba(199, 238, 109, 0.8) !important;
  border-radius: 10px !important;
  background: rgba(255, 255, 255, 0.035) !important;
}

.page-id-6084 .up-finance-band {
  border-block: 1px solid var(--up-line-premium);
  background: #fff !important;
}

.page-id-6084 .up-finance-strip > * + * {
  border-left: 1px solid var(--up-line-premium);
}

.page-id-6084 .up-video iframe,
.page-id-6084 .up-video video {
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 14px;
  box-shadow: 0 28px 64px -32px rgba(0, 0, 0, 0.82);
}

.page-id-6084 .up-testimonial .up-wrap {
  text-align: center;
}

/* FAQ: each answer becomes a deliberate numbered editorial panel. */
.page-id-524 .up-faq-toggle .elementor-toggle {
  counter-reset: premium-faq;
}

.page-id-524 .up-faq-toggle .elementor-toggle-item {
  counter-increment: premium-faq;
  margin-bottom: 16px;
  overflow: hidden;
  border: 1px solid var(--up-line-premium);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 18px 42px -34px rgba(23, 45, 37, 0.52);
}

.page-id-524 .up-faq-toggle .elementor-tab-title {
  display: grid !important;
  grid-template-columns: 48px 1fr;
  gap: 18px;
  align-items: center;
  padding: 23px 28px 10px !important;
  border: 0 !important;
  color: var(--up-navy) !important;
  font-size: 22px !important;
  line-height: 1.25 !important;
}

.page-id-524 .up-faq-toggle .elementor-tab-title::before {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 50%;
  background: var(--up-surface-green);
  color: var(--up-green-ink);
  font-size: 12px;
  font-weight: 700;
  content: counter(premium-faq, decimal-leading-zero);
}

.page-id-524 .up-faq-toggle .elementor-tab-content {
  padding: 0 28px 24px 94px !important;
  border: 0 !important;
  color: #536477 !important;
  font-size: 17px !important;
  line-height: 1.65 !important;
}

/* Calculator: a premium working panel rather than stacked form strips. */
.page-id-609 .wp-cal-container {
  display: grid !important;
  grid-template-columns: minmax(0, 1.12fr) minmax(340px, 0.88fr);
  gap: 24px;
  align-items: stretch;
}

.page-id-609 .wp-cal-input,
.page-id-609 .wp-cal-output {
  padding: 34px !important;
  border-radius: 14px !important;
  box-shadow: var(--up-shadow-premium);
}

.page-id-609 .wp-cal-input {
  border: 1px solid var(--up-line-premium);
  background: #fff !important;
}

.page-id-609 .wp-cal-output {
  display: flex;
  flex-direction: column;
  justify-content: center;
  border: 1px solid rgba(199, 238, 109, 0.24);
  background:
    radial-gradient(circle at 100% 0%, rgba(199, 238, 109, 0.1), transparent 38%),
    var(--up-navy-deep) !important;
}

.page-id-609 .wp-cal-input label {
  display: block;
  margin-bottom: 9px;
  color: var(--up-navy);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.page-id-609 .input-with-symbol {
  border-radius: 8px;
}

.page-id-609 .in-box {
  min-height: 56px !important;
  border-radius: 8px !important;
  background: var(--up-mist-premium) !important;
  font-size: 18px !important;
}

.page-id-609 .up-plan-tiers {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px !important;
  margin-top: 8px;
}

.page-id-609 .up-plan-tiers button {
  min-height: 76px;
  padding: 12px 8px !important;
  border: 1px solid var(--up-line-premium) !important;
  border-radius: 9px !important;
  background: var(--up-paper) !important;
  color: var(--up-navy) !important;
}

.page-id-609 .up-plan-tiers button:hover {
  border-color: rgba(89, 123, 37, 0.55) !important;
  background: var(--up-surface-green) !important;
}

.page-id-609 .up-plan-tiers button.is-active,
.page-id-609 .up-plan-tiers button[aria-checked="true"] {
  border-color: var(--up-green) !important;
  background: var(--up-navy) !important;
  color: #fff !important;
  box-shadow: 0 10px 24px -16px rgba(23, 45, 37, 0.8);
}

.page-id-609 .wp-cal-output-row {
  display: flex !important;
  min-height: 64px;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.page-id-609 .wp-cal-output-row .output-row:first-child {
  color: rgba(255, 255, 255, 0.62) !important;
  font-size: 13px !important;
}

.page-id-609 .wp-cal-output-row .output-row:last-child {
  color: #fff !important;
  font-size: 21px !important;
  font-weight: 700;
  text-align: right;
}

.page-id-609 .wp-cal-output-row:nth-last-child(-n + 2) .output-row:last-child {
  color: var(--up-green) !important;
}

.page-id-609 .up-pdf-example {
  margin-top: 30px;
  padding: 38px !important;
  border-radius: 14px !important;
  box-shadow: var(--up-shadow-premium);
}

/* Resource details: stronger framing for imagery, icons and data. */
:where(.page-id-409, .page-id-553, .page-id-4201) [data-elementor-type="wp-page"] img,
.up-wide-media img,
.up-office-door img {
  border-radius: 14px;
}

.page-id-444 .elementor-element-6ca1409 .elementor-widget-image img {
  width: 64px;
  height: 64px;
  padding: 10px;
  border: 1px solid rgba(89, 123, 37, 0.15);
  border-radius: 14px;
  background: var(--up-surface-green);
}

.page-id-4201 .elementor-element-0aef92e > .elementor-widget {
  min-height: 150px;
}

.page-id-4201 .elementor-element-0aef92e > .elementor-widget > .elementor-widget-container {
  border-radius: 10px;
}

.page-id-502 .table-wrapper,
.page-id-553 .investment-table-wrapper {
  border-radius: 14px;
  box-shadow: var(--up-shadow-premium);
}

/* Events and supporting pages: reduce text-wall appearance. */
.page-id-6793 :where(.elementor-element-e200005, .elementor-element-e400005, .elementor-element-e500005) {
  max-width: 900px;
  color: #4e6073;
  font-size: 17px;
  line-height: 1.72;
}

.page-id-6793 .elementor-element-e300006 {
  border-radius: 14px;
  box-shadow: var(--up-shadow-premium);
}

.page-id-617 :where(.elementor-element-7f5ea30, .elementor-element-ed94855),
:where(.page-id-3, .page-id-4186) [data-elementor-type="wp-page"] > .e-con:nth-child(2) .elementor-widget-text-editor {
  border-radius: 14px;
  box-shadow: var(--up-shadow-premium);
}

/* CTA and footer: finish pages with a confident, unified closing treatment. */
.up-cta {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 84% 20%, rgba(199, 238, 109, 0.11), transparent 25%),
    linear-gradient(135deg, var(--up-navy-deep), var(--up-navy-mid)) !important;
}

.up-cta .up-split {
  min-height: 190px;
}

.up-cta h2 {
  font-size: clamp(34px, 3vw, 46px) !important;
}

.up-footer {
  border-top: 1px solid rgba(199, 238, 109, 0.18);
}

.up-footer .up-wrap {
  padding-top: 8px;
}

@media (max-width: 1024px) {
  .page-id-6084 .up-home-hero-grid {
    grid-template-columns: 1fr !important;
    gap: 44px !important;
  }

  .page-id-6084 :is(.up-home-hero-copy, .up-opportunities, .up-three) {
    grid-column: 1;
    grid-row: auto;
  }

  .page-id-6084 .up-three {
    width: min(100%, 780px) !important;
  }

  .page-id-609 .wp-cal-container {
    grid-template-columns: 1fr;
  }

  .up-footer-grid {
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.1fr) minmax(0, 0.75fr) !important;
    gap: 32px !important;
  }
}

@media (min-width: 600px) and (max-width: 1024px) {
  .page-id-6084 .up-three {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .page-id-6084 .up-three > .up-card,
  .page-id-6084 .up-three > .up-card + .up-card {
    min-width: 0;
    padding: 20px 18px !important;
    border-bottom: 0 !important;
    border-left: 0 !important;
  }
}

@media (max-width: 768px) {
  .up-native-logo .elementor-heading-title {
    font-size: 20px !important;
  }

  .up-hero {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
  }

  .up-hero h1,
  :where(.page-id-629, .page-id-6793, .page-id-617, .page-id-3, .page-id-4186, .page-id-502, .page-id-444) [data-elementor-type="wp-page"] > .e-con:first-child h1,
  .page-id-6084 .up-home-hero-copy h1 {
    font-size: clamp(42px, 12vw, 52px) !important;
    line-height: 1.03 !important;
  }

  .up-hero .up-lead,
  .up-hero .up-lead p {
    font-size: 17px !important;
  }

  :where(.page-id-6084, .page-id-370, .page-id-4862, .page-id-318, .page-id-4746, .page-id-609, .page-id-524, .page-id-6533) .up-section {
    padding-block: 60px !important;
  }

  .up-section:not(.up-section--navy) .up-card,
  .page-id-444 .elementor-element-6ca1409 > :where(.elementor-element-55dc623, .elementor-element-a070204, .elementor-element-c454361, .elementor-element-8005814, .elementor-element-e3e74fb, .elementor-element-14e810d, .elementor-element-df5a696),
  .page-id-4201 .elementor-element-0aef92e > .elementor-widget {
    padding: 25px 22px !important;
  }

  .page-id-6084 .up-opportunities {
    padding: 24px 18px !important;
    border-radius: 12px;
  }

  .page-id-6084 .up-finance-strip > * + * {
    border-left: 0;
    border-top: 1px solid var(--up-line-premium);
  }

  .page-id-524 .up-faq-toggle .elementor-tab-title {
    grid-template-columns: 40px 1fr;
    gap: 13px;
    padding: 20px 18px 8px !important;
    font-size: 20px !important;
  }

  .page-id-524 .up-faq-toggle .elementor-tab-title::before {
    width: 36px;
    height: 36px;
  }

  .page-id-524 .up-faq-toggle .elementor-tab-content {
    padding: 2px 18px 20px 71px !important;
    font-size: 16px !important;
  }

  .page-id-609 .wp-cal-input,
  .page-id-609 .wp-cal-output,
  .page-id-609 .up-pdf-example {
    padding: 24px 20px !important;
    border-radius: 12px !important;
  }

  .page-id-609 .up-plan-tiers {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .page-id-609 .wp-cal-output-row {
    min-height: 58px;
  }

  .up-cta .up-split {
    min-height: 0;
  }
}

/* Final V2 integration fixes for inherited third-party sizing. */
@media (min-width: 1025px) {
  .page-id-609 .wp-cal-container {
    grid-template-columns: minmax(0, 1.12fr) minmax(340px, 0.88fr) !important;
  }
}

.page-id-617 :where(#SIGNUP_PAGE, #SIGNUP_PAGE > div, #signupMainDiv, #signupMainDiv > div, #zcampaignOptinForm, #SIGNUP_BODY_ALL, #SIGNUP_BODY, #SIGNUP_BODY > div, #SIGNUP_BODY > div > div, .zcsffieldsdiv, .zcinputbox, #captchaParent) {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

.page-id-617 #SIGNUP_PAGE {
  padding: 0 !important;
}

body.page-id-617 #SIGNUP_PAGE #signupMainDiv {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
}

/* --------------------------------------------------------------------------
   User-directed premium refinements — clarity, rhythm and restrained detail.
   -------------------------------------------------------------------------- */

/* Remove the decorative circular vectors from every editorial hero. */
.up-hero::after,
:where(.page-id-629, .page-id-6793, .page-id-617, .page-id-3, .page-id-4186, .page-id-502, .page-id-444) [data-elementor-type="wp-page"] > .e-con:first-child::after {
  display: none !important;
  content: none !important;
}

/* Keep the selected extended-term comparison dark and fully legible. */
.up-section:not(.up-section--navy) .up-card.up-card--dark,
.page-id-6084 .up-terms > .up-card.up-card--dark {
  border-color: rgba(199, 238, 109, 0.55) !important;
  border-top-color: var(--up-green) !important;
  background: linear-gradient(145deg, var(--up-navy) 0%, var(--up-navy-deep) 100%) !important;
}

.up-section:not(.up-section--navy) .up-card.up-card--dark :is(h2, h3, h4, p, span, strong, .elementor-widget-text-editor, .elementor-widget-container),
.page-id-6084 .up-terms > .up-card.up-card--dark :is(h2, h3, h4, p, span, strong, .elementor-widget-text-editor, .elementor-widget-container) {
  color: #fff !important;
}

.up-section:not(.up-section--navy) .up-card.up-card--dark small,
.page-id-6084 .up-terms > .up-card.up-card--dark small {
  color: rgba(255, 255, 255, 0.7) !important;
}

.up-section:not(.up-section--navy) .up-card.up-card--dark > .e-con,
.page-id-6084 .up-terms > .up-card.up-card--dark > .e-con {
  border-color: rgba(255, 255, 255, 0.16) !important;
}

/* Replace the distracting archive hover movement with a quiet border change. */
.page-id-629 .elementor-post,
.page-id-629 .elementor-post {
  transform: none !important;
}

.page-id-629 .elementor-post__thumbnail img {
  object-position: center !important;
  transform: translate(-50%, -50%) !important;
}

.page-id-629 .elementor-post:hover {
  border-color: rgba(89, 123, 37, 0.42) !important;
  box-shadow: 0 18px 44px -30px rgba(23, 45, 37, 0.46) !important;
  transform: none !important;
}

.page-id-629 .elementor-post:hover .elementor-post__thumbnail img {
  opacity: 1 !important;
  transform: translate(-50%, -50%) !important;
}

/* Full-width editorial photography should meet its section edges cleanly. */
.up-wide-media img,
.up-pdf-media img,
.up-wide-media .elementor-widget-container,
.up-pdf-media .elementor-widget-container {
  border-radius: 0 !important;
}

.up-wide-media img,
.up-pdf-media img {
  box-shadow: none !important;
}

/* A consistent content rhythm: compact labels, clear heading separation,
   readable copy and tighter list rows. */
.up-section:not(.up-hero) .elementor-widget.up-eyebrow + .elementor-widget-heading {
  margin-top: 12px !important;
}

.up-section .elementor-widget-heading + :is(.up-intro, .up-checks, .up-list-cards, .elementor-widget-text-editor, .elementor-widget-icon-list) {
  margin-top: 22px !important;
}

.up-section :is(.up-intro, .elementor-widget-text-editor) + :is(.up-cards, .up-checks, .up-list-cards, .elementor-widget-icon-list) {
  margin-top: 28px !important;
}

.up-section .up-checks .elementor-icon-list-items,
.up-section .up-list-cards .elementor-icon-list-items {
  gap: 10px !important;
  row-gap: 10px !important;
}

.up-section .up-checks .elementor-icon-list-item,
.up-section .up-list-cards .elementor-icon-list-item {
  min-height: 0 !important;
  padding-block: 4px !important;
}

.up-section .up-checks .elementor-icon-list-text,
.up-section .up-list-cards .elementor-icon-list-text {
  line-height: 1.55 !important;
}

/* Raise undersized editorial copy while retaining compact UI/table labels. */
:where(.page-id-6084, .page-id-370, .page-id-4862, .page-id-318, .page-id-4746, .page-id-609, .page-id-524, .page-id-6533) .up-section :is(.elementor-widget-text-editor, .elementor-widget-text-editor p, .elementor-icon-list-text),
:where(.page-id-629, .page-id-6793, .page-id-617, .page-id-3, .page-id-4186, .page-id-409, .page-id-502, .page-id-553, .page-id-4201, .page-id-444) [data-elementor-type="wp-page"] :is(.elementor-widget-text-editor, .elementor-widget-text-editor p) {
  font-size: 17px !important;
  line-height: 1.64 !important;
}

.up-section .up-card :is(.elementor-widget-text-editor, .elementor-widget-text-editor p, .elementor-icon-list-text),
.page-id-629 .elementor-post__excerpt,
.page-id-629 .elementor-post__excerpt p {
  font-size: 16px !important;
  line-height: 1.62 !important;
}

.page-id-6084 .up-three > .up-card :is(.elementor-widget-text-editor, .elementor-widget-text-editor p) {
  color: rgba(255, 255, 255, 0.78) !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
}

.up-wide-media figcaption,
.up-pdf-media figcaption,
.up-note,
.up-note p {
  font-size: 14px !important;
  line-height: 1.5 !important;
}

/* Modernise the existing footer without changing its content or columns. */
.up-footer {
  position: relative;
  padding-block: 62px 30px !important;
  border-top: 0;
}

.up-footer::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--up-green) 0 16%, rgba(199, 238, 109, 0.18) 16% 100%);
  content: "";
}

.up-footer .up-wrap {
  gap: 34px !important;
  padding: 0 !important;
}

.up-footer-grid {
  grid-template-columns: minmax(280px, 0.95fr) minmax(360px, 1.1fr) minmax(220px, 0.75fr) !important;
  gap: 48px !important;
}

.up-footer-grid > .e-con {
  align-content: flex-start;
  gap: 15px !important;
}

.up-footer .up-footer-brand strong {
  color: #fff !important;
  font-size: 22px !important;
  letter-spacing: -0.025em;
}

.up-footer .up-footer-brand strong span {
  color: var(--up-green) !important;
}

.up-footer .elementor-widget-heading h2 {
  color: var(--up-green) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0.11em !important;
  text-transform: uppercase;
}

.up-footer :is(.elementor-widget-text-editor, .elementor-widget-text-editor p, .elementor-icon-list-text) {
  color: #d9e3ec !important;
  font-size: 15px !important;
  line-height: 1.68 !important;
}

.up-footer a {
  color: #fff !important;
  text-decoration-color: transparent;
  text-underline-offset: 4px;
}

.up-footer a:hover {
  color: var(--up-green) !important;
  text-decoration-color: currentColor;
}

.up-footer .elementor-icon-list-icon {
  display: none !important;
}

.up-footer-risk {
  grid-template-columns: minmax(130px, 0.16fr) minmax(0, 1fr) !important;
  gap: 24px !important;
  align-items: start;
  padding: 26px 0 0 !important;
  border-top: 1px solid rgba(255, 255, 255, 0.13);
}

.up-footer-risk > .elementor-widget:first-child,
.up-footer-risk > .elementor-widget:first-child .elementor-widget-container {
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em;
}

.up-footer-risk > .elementor-widget:last-child,
.up-footer-risk > .elementor-widget:last-child p {
  color: #aebdca !important;
  font-size: 13px !important;
  line-height: 1.58 !important;
}

@media (max-width: 1024px) {
  .up-footer-grid {
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.1fr) minmax(0, 0.75fr) !important;
    gap: 32px !important;
  }
}

@media (max-width: 768px) {
  .up-section .elementor-widget-heading + :is(.up-intro, .up-checks, .up-list-cards, .elementor-widget-text-editor, .elementor-widget-icon-list) {
    margin-top: 18px !important;
  }

  .up-section :is(.up-intro, .elementor-widget-text-editor) + :is(.up-cards, .up-checks, .up-list-cards, .elementor-widget-icon-list) {
    margin-top: 24px !important;
  }

  :where(.page-id-6084, .page-id-370, .page-id-4862, .page-id-318, .page-id-4746, .page-id-609, .page-id-524, .page-id-6533) .up-section :is(.elementor-widget-text-editor, .elementor-widget-text-editor p, .elementor-icon-list-text),
  :where(.page-id-629, .page-id-6793, .page-id-617, .page-id-3, .page-id-4186, .page-id-409, .page-id-502, .page-id-553, .page-id-4201, .page-id-444) [data-elementor-type="wp-page"] :is(.elementor-widget-text-editor, .elementor-widget-text-editor p) {
    font-size: 16px !important;
  }

  .up-footer {
    padding-block: 48px 26px !important;
  }

  .up-footer-grid {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }

  .up-footer-grid > .e-con {
    padding-block: 24px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  }

  .up-footer-grid > .e-con:first-child {
    padding-top: 0 !important;
  }

  .up-footer-grid > .e-con:last-child {
    border-bottom: 0;
  }

  .up-footer-risk {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    padding-top: 24px !important;
  }
}

.page-id-617 #zcampaignOptinForm input:not([type="hidden"]),
.page-id-617 #captchaDiv {
  max-width: 100% !important;
  box-sizing: border-box !important;
}

/* --------------------------------------------------------------------------
   Unified site-wide button system.
   -------------------------------------------------------------------------- */
:where(.page-id-6084, .page-id-370, .page-id-4862, .page-id-318, .page-id-4746, .page-id-609, .page-id-524, .page-id-6533, .page-id-629, .page-id-6793, .page-id-617, .page-id-3, .page-id-4186, .page-id-409, .page-id-502, .page-id-553, .page-id-4201, .page-id-444, .page-id-5105) :is(.elementor-button, .ff-btn-submit, #zcWebOptin),
.up-header-cta .elementor-button {
  box-sizing: border-box !important;
  display: inline-flex !important;
  height: 50px !important;
  min-height: 50px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 13px 24px !important;
  border-radius: 6px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 22px !important;
  text-align: center;
  transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease !important;
}

/* The paired Home hero actions use one footprint despite different labels. */
.page-id-6084 .up-home-actions .elementor-button {
  width: 164px !important;
  min-width: 164px !important;
}

/* Secondary action: identical geometry, quieter transparent treatment. */
.up-text-link .elementor-button {
  width: auto;
  min-width: 164px;
  height: 50px !important;
  min-height: 50px !important;
  padding: 13px 24px !important;
  border: 2px solid rgba(255, 255, 255, 0.68) !important;
  border-radius: 6px !important;
  background: transparent !important;
  color: #fff !important;
  box-shadow: none !important;
}

.up-text-link .elementor-button:hover {
  border-color: #fff !important;
  background: #fff !important;
  color: var(--up-navy) !important;
  box-shadow: 0 12px 26px -16px rgba(0, 0, 0, 0.75) !important;
  transform: translateY(-1px);
}

/* Primary green actions share one restrained hover response. */
.up-header-cta .elementor-button:hover,
.up-button .elementor-button:hover,
.up-introducer-form .ff-btn-submit:hover,
.page-id-617 #zcWebOptin:hover,
.page-id-6793 .elementor-element-e600005 .elementor-button:hover,
.page-id-5105 [data-elementor-type="wp-page"] .elementor-button:hover {
  border-color: var(--up-lime) !important;
  background: var(--up-lime) !important;
  color: var(--up-navy) !important;
  box-shadow: 0 13px 28px -16px rgba(199, 238, 109, 0.75) !important;
  transform: translateY(-1px);
}

/* Navy resource actions retain their role rather than flashing bright green. */
:where(.page-id-409, .page-id-4201, .page-id-444) [data-elementor-type="wp-page"] .elementor-button:hover,
.page-id-6793 :where(.elementor-element-e200001, .elementor-element-e300001, .elementor-element-e400001, .elementor-element-e500001) .elementor-button:hover {
  border-color: #2b5042 !important;
  background: #2b5042 !important;
  color: #fff !important;
  box-shadow: 0 13px 28px -18px rgba(23, 45, 37, 0.7) !important;
  transform: translateY(-1px);
}

:where(.page-id-6084, .page-id-370, .page-id-4862, .page-id-318, .page-id-4746, .page-id-609, .page-id-524, .page-id-6533, .page-id-629, .page-id-6793, .page-id-617, .page-id-3, .page-id-4186, .page-id-409, .page-id-502, .page-id-553, .page-id-4201, .page-id-444, .page-id-5105) :is(.elementor-button, .ff-btn-submit, #zcWebOptin):active,
.up-header-cta .elementor-button:active {
  box-shadow: none !important;
  transform: translateY(0) !important;
}

:where(.page-id-6084, .page-id-370, .page-id-4862, .page-id-318, .page-id-4746, .page-id-609, .page-id-524, .page-id-6533, .page-id-629, .page-id-6793, .page-id-617, .page-id-3, .page-id-4186, .page-id-409, .page-id-502, .page-id-553, .page-id-4201, .page-id-444, .page-id-5105) :is(.elementor-button, .ff-btn-submit, #zcWebOptin):focus-visible,
.up-header-cta .elementor-button:focus-visible {
  outline: 3px solid var(--up-green) !important;
  outline-offset: 3px !important;
}

@media (max-width: 480px) {
  .page-id-6084 .up-home-actions .elementor-widget,
  .page-id-6084 .up-home-actions .elementor-button {
    width: 100% !important;
  }
}

body.page-id-617 #zcWebOptin {
  height: 50px !important;
  min-height: 50px !important;
  padding: 13px 24px !important;
  border-radius: 6px !important;
}

/* Accessible Back to top control. */
.up-back-to-top {
  position: fixed;
  z-index: 9998;
  right: 24px;
  bottom: 84px;
  display: grid;
  width: 48px;
  height: 48px;
  padding: 0;
  place-items: center;
  border: 1px solid rgba(199, 238, 109, 0.62);
  border-radius: 8px;
  opacity: 0;
  background: var(--up-navy);
  color: #fff;
  font-size: 24px;
  font-weight: 700;
  line-height: 1;
  box-shadow: 0 14px 32px -14px rgba(23, 45, 37, 0.72);
  visibility: hidden;
  transform: translateY(12px);
  pointer-events: none;
  cursor: pointer;
  transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease, background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}

.up-back-to-top.is-visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
}

.up-back-to-top:hover {
  border-color: var(--up-green);
  background: var(--up-green);
  color: var(--up-navy);
  transform: translateY(-2px);
}

.up-back-to-top:active {
  transform: translateY(0);
}

.up-back-to-top:focus-visible {
  outline: 3px solid var(--up-green);
  outline-offset: 3px;
}

.up-back-to-top span {
  display: block;
  transform: translateY(-1px);
}

@media (max-width: 768px) {
  .up-back-to-top {
    right: 18px;
    bottom: 78px;
    width: 46px;
    height: 46px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .up-back-to-top {
    transition: none;
  }
}

/* --------------------------------------------------------------------------
   User-directed card, FAQ and legal-page refinements.
   -------------------------------------------------------------------------- */
/* The income-goal wrapper carries the dark modifier in the source markup. */
.page-id-318 .elementor-element-1a2718c {
  gap: 32px !important;
}

.page-id-318 .elementor-element-1a2718c.up-card--dark > .up-card {
  border: 1px solid rgba(199, 238, 109, 0.34) !important;
  border-top: 3px solid var(--up-green) !important;
  border-radius: 10px !important;
  background: linear-gradient(145deg, var(--up-navy) 0%, var(--up-navy-deep) 100%) !important;
  box-shadow: 0 18px 38px -24px rgba(23, 45, 37, 0.76) !important;
}

.page-id-318 .elementor-element-1a2718c.up-card--dark > .up-card :is(h2, h3, h4, p, span, strong, .elementor-widget-text-editor, .elementor-widget-container) {
  color: #fff !important;
}

.page-id-318 .elementor-element-1a2718c.up-card--dark > .up-card .elementor-widget-text-editor {
  color: rgba(255, 255, 255, 0.82) !important;
}

/* Supply-partner descriptions had inherited white text on white cards. */
.page-id-4201 .elementor-element-0aef92e > .elementor-widget {
  border: 1px solid rgba(33, 61, 49, 0.14) !important;
  border-top: 3px solid var(--up-green) !important;
  background: #fff !important;
  box-shadow: 0 16px 36px -24px rgba(23, 45, 37, 0.48) !important;
}

.page-id-4201 .elementor-element-0aef92e .elementor-icon-box-description {
  color: #536477 !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
}

/* FAQ behaves and reads as an accordion: one answer open, clear affordance. */
.page-id-524 .up-faq-toggle .elementor-tab-title {
  grid-template-columns: 48px minmax(0, 1fr) 28px;
  padding: 20px 28px !important;
  cursor: pointer;
}

.page-id-524 .up-faq-toggle .elementor-tab-title.elementor-active {
  padding-bottom: 10px !important;
}

.page-id-524 .up-faq-toggle .elementor-tab-title::after {
  display: grid;
  width: 28px;
  height: 28px;
  place-items: center;
  border: 1px solid rgba(33, 61, 49, 0.16);
  border-radius: 50%;
  color: var(--up-navy);
  font-size: 20px;
  font-weight: 400;
  line-height: 1;
  content: "+";
}

.page-id-524 .up-faq-toggle .elementor-tab-title.elementor-active::after {
  border-color: rgba(89, 123, 37, 0.28);
  background: var(--up-surface-green);
  color: var(--up-green-ink);
  content: "−";
}

.page-id-524 .up-faq-toggle .elementor-toggle-icon {
  display: none !important;
}

/* Legal documents use the full shared content width. */
:where(.page-id-3, .page-id-4186) [data-elementor-type="wp-page"] > .e-con:nth-child(2) .elementor-widget-text-editor {
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box;
}

@media (max-width: 768px) {
  .page-id-318 .elementor-element-1a2718c {
    gap: 18px !important;
  }

  .page-id-524 .up-faq-toggle .elementor-tab-title {
    grid-template-columns: 38px minmax(0, 1fr) 26px;
    gap: 12px;
    padding: 18px !important;
  }

  .page-id-524 .up-faq-toggle .elementor-tab-title.elementor-active {
    padding-bottom: 9px !important;
  }

  .page-id-524 .up-faq-toggle .elementor-tab-content {
    padding: 0 18px 20px 68px !important;
  }
}

/* --------------------------------------------------------------------------
   Annotated border and spacing corrections.
   -------------------------------------------------------------------------- */
/* Terms sections are already numbered in their headings; suppress only the
   redundant outer-list bullets while retaining the nested clause markers. */
.page-id-4186 .elementor-element-71d44c7 .elementor-widget-container > ul.custom-list {
  padding-left: 0 !important;
  list-style: none !important;
}

.page-id-4186 .elementor-element-71d44c7 .elementor-widget-container > ul.custom-list > li {
  list-style: none !important;
}

/* Keep the two calculator surfaces visually separate. */
.page-id-609 .wp-cal-container {
  gap: 24px !important;
}

.page-id-609 :is(.wp-cal-input, .wp-cal-output) {
  min-width: 0 !important;
}

/* Remove the highlighted decorative outlines and separator rules. */
.page-id-318 .elementor-element-1a2718c.up-card--dark,
.page-id-318 .elementor-element-1a2718c.up-card--dark > .up-card {
  border: 0 !important;
  background-color: transparent !important;
  box-shadow: none !important;
}

.page-id-6084 .up-three > .up-card {
  border: 0 !important;
  box-shadow: none !important;
}

.page-id-6084 .up-finance-strip > * + * {
  border-left: 0 !important;
}

.page-id-6084 .up-finance-strip > .elementor-widget {
  border-right: 0 !important;
}

@media (max-width: 768px) {
  .page-id-609 .wp-cal-container {
    gap: 18px !important;
  }

  .page-id-6084 .up-finance-strip > * + * {
    border-top: 0 !important;
  }
}
