body.fincaswin-theme.home .fw-site-main {
  background: var(--fw-white);
  overflow-x: clip;
}

.fw-home-hero {
  position: relative;
  overflow: hidden;
  padding: 96px 0 84px;
  background:
    radial-gradient(circle at 88% 18%, rgba(18, 184, 200, .20), transparent 32%),
    radial-gradient(circle at 12% 12%, rgba(34, 198, 113, .16), transparent 30%),
    linear-gradient(180deg, #F7FBFF 0%, #FFFFFF 100%);
}

.fw-home-hero > .elementor-container,
.fw-home-section > .elementor-container,
.fw-home-grid-section > .elementor-container,
.fw-feature-row > .elementor-container,
.fw-support-band-section > .elementor-container,
.fw-final-cta > .elementor-container {
  width: min(100% - 40px, var(--fw-container));
  max-width: var(--fw-container);
  margin-inline: auto;
}

.fw-home-hero > .elementor-container,
.fw-feature-row > .elementor-container,
.fw-problem-section > .elementor-container,
.fw-trust-section > .elementor-container {
  align-items: center;
  gap: 64px;
}

.fw-home-hero > .elementor-container,
.fw-feature-row > .elementor-container,
.fw-problem-section > .elementor-container,
.fw-trust-section > .elementor-container,
.fw-support-band-section > .elementor-container {
  display: grid;
}

.fw-home-hero > .elementor-container {
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
}

.fw-feature-row > .elementor-container,
.fw-problem-section > .elementor-container,
.fw-trust-section > .elementor-container,
.fw-support-band-section > .elementor-container {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.fw-home-hero > .elementor-container,
.fw-home-wide > .elementor-container {
  width: min(100% - 40px, var(--fw-container-wide));
  max-width: var(--fw-container-wide);
}

.fw-home-hero .elementor-column,
.fw-feature-row .elementor-column,
.fw-problem-section .elementor-column,
.fw-trust-section .elementor-column,
.fw-support-band-section .elementor-column {
  min-width: 0;
  width: auto !important;
}

.fw-home-hero .elementor-widget-heading h1,
.fw-home-section-heading .elementor-widget-heading h2 {
  margin-bottom: 20px;
}

.fw-home-section {
  padding: 92px 0;
}

.fw-home-section-sm {
  padding: 64px 0;
}

.fw-home-section-heading {
  max-width: 820px;
  margin-inline: auto;
  margin-bottom: 54px;
  text-align: center;
}

.fw-home-section-heading .elementor-widget-wrap {
  justify-content: center;
}

.fw-home-eyebrow {
  margin-bottom: 18px;
}

.fw-home-actions .elementor-button {
  min-height: 50px;
}

.fw-home-action {
  display: inline-block;
  width: auto;
  margin: 10px 12px 0 0;
}

.elementor-widget-button.fw-home-action,
.elementor-widget-button.fw-btn,
.elementor-widget-button.fw-btn-primary,
.elementor-widget-button.fw-btn-secondary {
  min-height: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.fw-home-action .elementor-button,
.fw-btn .elementor-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 14px 24px;
  border-radius: var(--fw-radius-pill);
  font-weight: 800;
  line-height: 1;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease;
}

.fw-btn-primary .elementor-button {
  background: linear-gradient(135deg, var(--fw-green), var(--fw-cyan));
  color: var(--fw-white);
  box-shadow: 0 14px 32px rgba(18, 184, 200, .26);
}

.fw-btn-secondary .elementor-button {
  background: rgba(255, 255, 255, .82);
  color: var(--fw-navy);
  border: 1px solid rgba(8, 27, 51, .16);
}

.fw-btn .elementor-button:hover {
  transform: translateY(-2px);
}

.fw-home-hero-checks {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 24px;
}

.fw-home-visual {
  position: relative;
}

.fw-home-visual img,
.fw-system-image img,
.fw-feature-media img,
.fw-trust-media img,
.fw-support-media img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: var(--fw-radius-xl);
  box-shadow: var(--fw-shadow-lg);
}

.fw-home-visual {
  max-width: 760px;
}

.fw-home-hero-media .elementor-widget-wrap {
  position: relative;
}

.fw-floating-card {
  position: absolute;
  z-index: 3;
  padding: 14px 16px;
  border: 1px solid rgba(8, 27, 51, .08);
  border-radius: 18px;
  background: rgba(255, 255, 255, .88);
  box-shadow: 0 16px 45px rgba(8, 27, 51, .12);
  color: var(--fw-navy);
  font-weight: 800;
  backdrop-filter: blur(14px);
}

.fw-floating-card--one {
  left: -24px;
  top: 14%;
}

.fw-floating-card--two {
  right: -18px;
  top: 48%;
}

.fw-floating-card--three {
  left: 8%;
  bottom: -18px;
}

@media (max-width: 1200px) {
  .fw-home-hero > .elementor-container,
  .fw-feature-row > .elementor-container,
  .fw-problem-section > .elementor-container,
  .fw-trust-section > .elementor-container {
    gap: 48px;
  }
}

.fw-benefit-grid-section,
.fw-pricing-grid-section {
  padding: 0 0 92px;
}

.fw-benefit-grid-section > .elementor-container,
.fw-pricing-grid-section > .elementor-container,
.fw-support-card-grid > .elementor-container {
  display: grid;
  gap: 22px;
}

.fw-benefit-grid-section > .elementor-container {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.fw-pricing-grid-section > .elementor-container,
.fw-support-card-grid > .elementor-container {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.fw-benefit-grid-section .elementor-column,
.fw-pricing-grid-section .elementor-column,
.fw-support-card-grid .elementor-column {
  width: auto !important;
}

.fw-card.elementor-column,
.fw-price-card.elementor-column {
  min-height: 100%;
}

.fw-card.elementor-column > .elementor-widget-wrap,
.fw-price-card.elementor-column > .elementor-widget-wrap {
  align-content: flex-start;
  padding: 0;
}

.fw-benefit-card .elementor-widget-heading h3,
.fw-price-card .elementor-widget-heading h3 {
  margin-bottom: 10px;
}

.fw-problem-section {
  padding: 96px 0;
  background: var(--fw-bg);
}

.fw-problem-compare {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.fw-problem-compare-card {
  padding: 24px;
  border: 1px solid var(--fw-border);
  border-radius: var(--fw-radius-lg);
  background: var(--fw-white);
  box-shadow: var(--fw-shadow-sm);
}

.fw-problem-compare-card h3 {
  margin: 0 0 16px;
  font-size: 22px;
}

.fw-system-section {
  padding: 92px 0;
  background: var(--fw-white);
}

.fw-system-image {
  max-width: 980px;
  margin-inline: auto;
}

.fw-system-pills {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin-top: 28px;
}

.fw-feature-intro {
  padding: 92px 0 20px;
  background: var(--fw-bg);
}

.fw-feature-row {
  padding: 58px 0;
  background: var(--fw-bg);
}

.fw-feature-row--white {
  background: var(--fw-white);
}

.fw-feature-copy .elementor-widget-text-editor {
  color: var(--fw-muted);
}

.fw-feature-media img {
  box-shadow: var(--fw-shadow-md);
}

.fw-support-band-section {
  padding: 92px 0;
  background: var(--fw-bg);
}

.fw-support-band-section > .elementor-container {
  padding: 64px;
  border-radius: var(--fw-radius-xl);
  background:
    radial-gradient(circle at 12% 15%, rgba(34, 198, 113, .26), transparent 30%),
    radial-gradient(circle at 90% 20%, rgba(18, 184, 200, .24), transparent 28%),
    linear-gradient(135deg, #071C33, #0D314D);
  color: var(--fw-white);
}

.fw-support-band-section h2,
.fw-support-band-section h3,
.fw-support-band-section p,
.fw-support-band-section .elementor-widget-text-editor {
  color: var(--fw-white);
}

.fw-support-media img {
  box-shadow: 0 24px 70px rgba(0, 0, 0, .22);
}

.fw-support-card-list {
  display: grid;
  gap: 14px;
  margin-top: 22px;
}

.fw-support-mini-card {
  padding: 18px;
  border: 1px solid rgba(255, 255, 255, .16);
  border-radius: 18px;
  background: rgba(255, 255, 255, .10);
}

.fw-support-mini-card h3,
.fw-support-mini-card p {
  margin: 0;
}

.fw-pricing-section {
  padding: 92px 0 48px;
  background: var(--fw-white);
}

.fw-price-card .fw-pill {
  margin-bottom: 16px;
}

.fw-price-value {
  margin: 18px 0;
  color: var(--fw-navy);
  font-family: var(--fw-font-heading);
  font-size: 34px;
  font-weight: 800;
}

.fw-price-note-section {
  padding: 0 0 92px;
  background: var(--fw-white);
}

.fw-price-note {
  max-width: 850px;
  margin-inline: auto;
  padding: 18px 22px;
  border: 1px solid rgba(245, 166, 35, .28);
  border-radius: 18px;
  background: rgba(245, 166, 35, .08);
  color: var(--fw-text);
  text-align: center;
}

.fw-trust-section {
  padding: 92px 0;
  background: var(--fw-bg);
}

.fw-trust-cards {
  display: grid;
  gap: 16px;
  margin-top: 26px;
}

.fw-trust-card {
  padding: 20px;
  border: 1px solid var(--fw-border);
  border-radius: 20px;
  background: var(--fw-white);
  box-shadow: var(--fw-shadow-sm);
}

.fw-trust-card h3,
.fw-trust-card p {
  margin: 0;
}

.fw-faq-section {
  padding: 92px 0;
  background: var(--fw-white);
}

.fw-faq-section .elementor-accordion {
  max-width: 900px;
  margin-inline: auto;
}

.fw-final-cta {
  position: relative;
  overflow: hidden;
  padding: 92px 0;
  background:
    radial-gradient(circle at 15% 35%, rgba(34, 198, 113, .24), transparent 32%),
    radial-gradient(circle at 85% 35%, rgba(18, 184, 200, .24), transparent 32%),
    linear-gradient(135deg, #F7FBFF, #FFFFFF);
}

.fw-final-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: inherit;
  opacity: .36;
}

.fw-final-cta-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: .26;
  pointer-events: none;
}

.fw-final-cta > .elementor-container {
  position: relative;
  z-index: 1;
  max-width: 900px;
  padding: 64px;
  border: 1px solid rgba(255, 255, 255, .80);
  border-radius: var(--fw-radius-xl);
  background: rgba(255, 255, 255, .82);
  box-shadow: var(--fw-shadow-md);
  text-align: center;
  backdrop-filter: blur(16px);
}

.fw-final-cta .elementor-widget-wrap {
  justify-content: center;
}

.fw-final-cta .fw-home-action {
  margin-inline: 6px;
}

@media (max-width: 1024px) {
  .fw-home-hero {
    padding: 76px 0 68px;
  }

  .fw-home-visual {
    max-width: 780px;
    margin-inline: auto;
  }

  .fw-home-hero > .elementor-container,
  .fw-feature-row > .elementor-container,
  .fw-problem-section > .elementor-container,
  .fw-trust-section > .elementor-container,
  .fw-support-band-section > .elementor-container {
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .fw-feature-row--media-first > .elementor-container > .elementor-column:first-child {
    order: 2;
  }

  .fw-feature-row--media-first > .elementor-container > .elementor-column:last-child {
    order: 1;
  }

  .fw-home-hero .elementor-column,
  .fw-feature-row .elementor-column,
  .fw-problem-section .elementor-column,
  .fw-trust-section .elementor-column,
  .fw-support-band-section .elementor-column {
    width: 100% !important;
  }

  .fw-benefit-grid-section > .elementor-container,
  .fw-pricing-grid-section > .elementor-container,
  .fw-support-card-grid > .elementor-container {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .fw-floating-card {
    display: none;
  }

  .fw-support-band-section > .elementor-container,
  .fw-final-cta > .elementor-container {
    padding: 42px;
  }
}

@media (max-width: 767px) {
  body.fincaswin-theme {
    font-size: 15px;
  }

  body.fincaswin-theme h1 {
    font-size: 42px;
    line-height: 1.06;
  }

  body.fincaswin-theme h2 {
    font-size: 32px;
    line-height: 1.12;
  }

  .fw-home-hero > .elementor-container,
  .fw-home-section > .elementor-container,
  .fw-home-grid-section > .elementor-container,
  .fw-feature-row > .elementor-container,
  .fw-support-band-section > .elementor-container,
  .fw-final-cta > .elementor-container {
    width: min(100% - 28px, var(--fw-container));
  }

  .fw-home-section,
  .fw-problem-section,
  .fw-system-section,
  .fw-feature-intro,
  .fw-support-band-section,
  .fw-pricing-section,
  .fw-trust-section,
  .fw-faq-section,
  .fw-final-cta {
    padding: 64px 0;
  }

  .fw-home-hero {
    padding: 56px 0;
  }

  .fw-home-hero > .elementor-container {
    gap: 32px;
  }

  .fw-benefit-grid-section,
  .fw-pricing-grid-section,
  .fw-price-note-section {
    padding-bottom: 64px;
  }

  .fw-benefit-grid-section > .elementor-container,
  .fw-pricing-grid-section > .elementor-container,
  .fw-support-card-grid > .elementor-container,
  .fw-problem-compare {
    grid-template-columns: 1fr;
  }

  .fw-home-action {
    display: block;
    width: 100%;
    margin: 10px 0 0;
  }

  .fw-home-action .elementor-button,
  .fw-btn .elementor-button {
    width: 100%;
  }

  .fw-home-hero-checks {
    display: grid;
  }

  .fw-feature-row {
    padding: 42px 0;
  }

  .fw-card,
  .fw-price-card,
  .fw-problem-compare-card,
  .fw-trust-card {
    padding: 24px;
    border-radius: 22px;
  }

  .fw-support-band-section > .elementor-container,
  .fw-final-cta > .elementor-container {
    padding: 32px 22px;
    border-radius: 24px;
  }

  .fw-price-value {
    font-size: 30px;
  }
}

@media (max-width: 420px) {
  .fw-home-hero > .elementor-container,
  .fw-home-section > .elementor-container,
  .fw-home-grid-section > .elementor-container,
  .fw-feature-row > .elementor-container,
  .fw-support-band-section > .elementor-container,
  .fw-final-cta > .elementor-container {
    width: min(100% - 24px, var(--fw-container));
  }

  body.fincaswin-theme h1 {
    font-size: 38px;
  }

  body.fincaswin-theme h2 {
    font-size: 30px;
  }

  .fw-home-hero {
    padding-top: 42px;
    padding-bottom: 48px;
  }

  .fw-home-section-heading {
    margin-bottom: 38px;
  }

  .fw-card,
  .fw-price-card,
  .fw-problem-compare-card,
  .fw-trust-card {
    padding: 20px;
  }

  .fw-support-band-section > .elementor-container,
  .fw-final-cta > .elementor-container {
    padding: 28px 18px;
  }
}

/*
 * Visual redesign phase 1.
 * Scoped to the front page to keep the system reusable and avoid admin impact.
 */
body.fincaswin-theme.home .fw-site-main {
  background:
    linear-gradient(180deg, rgba(247, 251, 255, .98) 0%, rgba(255, 255, 255, .96) 26%, rgba(247, 250, 252, .98) 100%),
    radial-gradient(ellipse at 50% 8%, rgba(18, 184, 200, .16), transparent 44%),
    radial-gradient(ellipse at 14% 26%, rgba(34, 198, 113, .12), transparent 38%);
}

body.fincaswin-theme.home .fw-home-hero,
body.fincaswin-theme.home .fw-system-section,
body.fincaswin-theme.home .fw-feature-intro,
body.fincaswin-theme.home .fw-pricing-section,
body.fincaswin-theme.home .fw-faq-section,
body.fincaswin-theme.home .fw-final-cta {
  position: relative;
  isolation: isolate;
}

body.fincaswin-theme.home .fw-home-hero {
  min-height: calc(100vh - 76px);
  padding: clamp(82px, 8vw, 122px) 0 clamp(74px, 7vw, 104px);
  background:
    linear-gradient(106deg, rgba(255, 255, 255, .96) 0%, rgba(247, 251, 255, .90) 46%, rgba(226, 246, 250, .72) 100%),
    radial-gradient(ellipse at 77% 22%, rgba(18, 184, 200, .18), transparent 42%),
    radial-gradient(ellipse at 21% 15%, rgba(34, 198, 113, .13), transparent 36%);
}

body.fincaswin-theme.home .fw-home-hero::before,
body.fincaswin-theme.home .fw-system-section::before,
body.fincaswin-theme.home .fw-pricing-section::before,
body.fincaswin-theme.home .fw-trust-section::before,
body.fincaswin-theme.home .fw-final-cta::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    linear-gradient(172deg, transparent 0%, rgba(216, 239, 247, .30) 52%, transparent 100%),
    radial-gradient(ellipse at 50% 100%, rgba(18, 184, 200, .12), transparent 50%);
  opacity: .82;
}

body.fincaswin-theme.home .fw-home-hero::after,
body.fincaswin-theme.home .fw-feature-intro::after,
body.fincaswin-theme.home .fw-faq-section::after {
  content: "";
  position: absolute;
  inset: auto 0 -1px;
  z-index: -1;
  height: 120px;
  pointer-events: none;
  background: linear-gradient(180deg, transparent 0%, rgba(222, 243, 250, .52) 100%);
}

body.fincaswin-theme.home .fw-home-hero > .elementor-container {
  gap: clamp(56px, 7vw, 96px);
}

body.fincaswin-theme.home .fw-home-hero .elementor-widget-heading h1 {
  max-width: 720px;
  margin-bottom: 24px;
  color: var(--fw-navy);
}

body.fincaswin-theme.home .fw-home-hero .elementor-widget-text-editor {
  max-width: 620px;
  color: #253A52;
  font-size: 21px;
  line-height: 1.58;
}

body.fincaswin-theme.home .fw-home-eyebrow .elementor-widget-container,
body.fincaswin-theme.home .fw-eyebrow {
  border: 1px solid rgba(34, 198, 113, .18);
  background: rgba(255, 255, 255, .72);
  box-shadow: 0 12px 30px rgba(8, 27, 51, .05);
  backdrop-filter: blur(12px);
}

body.fincaswin-theme.home .fw-home-action .elementor-button,
body.fincaswin-theme.home .fw-btn .elementor-button {
  min-height: 56px;
  padding: 16px 28px;
  border-radius: var(--fw-radius-pill);
  font-size: 17px;
  letter-spacing: 0;
}

body.fincaswin-theme.home .fw-btn-primary .elementor-button {
  background: linear-gradient(135deg, #25CF77 0%, #34B978 54%, #12B8C8 100%);
  box-shadow:
    0 16px 34px rgba(34, 198, 113, .25),
    inset 0 1px 0 rgba(255, 255, 255, .26);
}

body.fincaswin-theme.home .fw-btn-primary .elementor-button:hover {
  box-shadow:
    0 22px 46px rgba(34, 198, 113, .32),
    inset 0 1px 0 rgba(255, 255, 255, .30);
}

body.fincaswin-theme.home .fw-btn-secondary .elementor-button {
  background: rgba(255, 255, 255, .74);
  border: 1px solid rgba(8, 27, 51, .18);
  color: var(--fw-navy);
  box-shadow: 0 10px 28px rgba(8, 27, 51, .06);
  backdrop-filter: blur(10px);
}

body.fincaswin-theme.home .fw-home-hero-checks {
  gap: 18px 26px;
  margin-top: 30px;
}

body.fincaswin-theme.home .fw-home-hero-checks .fw-pill,
body.fincaswin-theme.home .fw-system-pills .fw-pill {
  border: 1px solid rgba(18, 184, 200, .16);
  background: rgba(255, 255, 255, .72);
  color: var(--fw-navy);
  box-shadow: 0 10px 26px rgba(8, 27, 51, .05);
  backdrop-filter: blur(10px);
}

body.fincaswin-theme.home .fw-home-visual,
body.fincaswin-theme.home .fw-system-image,
body.fincaswin-theme.home .fw-feature-media,
body.fincaswin-theme.home .fw-trust-media,
body.fincaswin-theme.home .fw-support-media {
  position: relative;
}

body.fincaswin-theme.home .fw-home-visual::before,
body.fincaswin-theme.home .fw-system-image::before,
body.fincaswin-theme.home .fw-feature-media::before,
body.fincaswin-theme.home .fw-trust-media::before {
  content: "";
  position: absolute;
  inset: 7% -5% -6% 7%;
  z-index: -1;
  border-radius: 42px;
  background:
    linear-gradient(135deg, rgba(34, 198, 113, .15), rgba(18, 184, 200, .16)),
    rgba(255, 255, 255, .70);
  filter: blur(1px);
}

body.fincaswin-theme.home .fw-home-visual img,
body.fincaswin-theme.home .fw-system-image img,
body.fincaswin-theme.home .fw-feature-media img,
body.fincaswin-theme.home .fw-trust-media img,
body.fincaswin-theme.home .fw-support-media img {
  border: 1px solid rgba(255, 255, 255, .78);
  border-radius: 30px;
  box-shadow:
    0 26px 75px rgba(8, 27, 51, .16),
    0 1px 0 rgba(255, 255, 255, .86) inset;
}

body.fincaswin-theme.home .fw-home-visual img {
  transform: translateY(2px) rotate(-1deg);
}

body.fincaswin-theme.home .fw-floating-card {
  border: 1px solid rgba(255, 255, 255, .78);
  border-radius: 22px;
  background: rgba(255, 255, 255, .88);
  box-shadow:
    0 20px 50px rgba(8, 27, 51, .13),
    inset 0 1px 0 rgba(255, 255, 255, .72);
}

body.fincaswin-theme.home .fw-home-section,
body.fincaswin-theme.home .fw-system-section,
body.fincaswin-theme.home .fw-feature-intro,
body.fincaswin-theme.home .fw-pricing-section,
body.fincaswin-theme.home .fw-trust-section,
body.fincaswin-theme.home .fw-faq-section {
  padding-top: clamp(82px, 8vw, 116px);
  padding-bottom: clamp(82px, 8vw, 116px);
}

body.fincaswin-theme.home .fw-benefit-grid-section,
body.fincaswin-theme.home .fw-pricing-grid-section,
body.fincaswin-theme.home .fw-price-note-section {
  padding-bottom: clamp(82px, 8vw, 116px);
}

body.fincaswin-theme.home .fw-home-section-heading {
  max-width: 860px;
  margin-bottom: 58px;
}

body.fincaswin-theme.home .fw-home-section-heading .elementor-widget-heading h2 {
  margin-bottom: 18px;
}

body.fincaswin-theme.home .fw-home-section-heading::after {
  content: "";
  display: block;
  width: 86px;
  height: 4px;
  margin: 24px auto 0;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--fw-green), var(--fw-cyan));
}

body.fincaswin-theme.home .fw-benefit-grid-section {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .92), rgba(247, 250, 252, .96)),
    radial-gradient(ellipse at 50% 0%, rgba(18, 184, 200, .10), transparent 48%);
}

body.fincaswin-theme.home .fw-card.elementor-column,
body.fincaswin-theme.home .fw-price-card.elementor-column,
body.fincaswin-theme.home .fw-benefit-card,
body.fincaswin-theme.home .fw-problem-compare-card,
body.fincaswin-theme.home .fw-trust-card,
body.fincaswin-theme.home .fw-support-mini-card {
  border: 1px solid rgba(255, 255, 255, .82);
  border-radius: 28px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(255, 255, 255, .84)),
    var(--fw-white);
  box-shadow:
    0 18px 52px rgba(8, 27, 51, .09),
    inset 0 1px 0 rgba(255, 255, 255, .85);
}

body.fincaswin-theme.home .fw-card.elementor-column,
body.fincaswin-theme.home .fw-price-card.elementor-column {
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

body.fincaswin-theme.home .fw-card.elementor-column:hover,
body.fincaswin-theme.home .fw-price-card.elementor-column:hover {
  transform: translateY(-5px);
  border-color: rgba(34, 198, 113, .26);
  box-shadow:
    0 26px 68px rgba(8, 27, 51, .12),
    inset 0 1px 0 rgba(255, 255, 255, .88);
}

body.fincaswin-theme.home .fw-benefit-card .elementor-widget-image img {
  width: 54px;
  height: 54px;
  object-fit: contain;
  border-radius: 16px;
  filter: drop-shadow(0 10px 16px rgba(8, 27, 51, .10));
}

body.fincaswin-theme.home .fw-benefit-card .elementor-widget-heading h3 {
  font-size: 22px;
  line-height: 1.22;
}

body.fincaswin-theme.home .fw-problem-section,
body.fincaswin-theme.home .fw-feature-intro,
body.fincaswin-theme.home .fw-feature-row,
body.fincaswin-theme.home .fw-trust-section {
  background:
    linear-gradient(180deg, rgba(247, 250, 252, .94) 0%, rgba(255, 255, 255, .72) 54%, rgba(236, 248, 251, .78) 100%);
}

body.fincaswin-theme.home .fw-feature-row--white {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .98) 0%, rgba(247, 251, 255, .90) 100%);
}

body.fincaswin-theme.home .fw-system-section {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .98) 0%, rgba(247, 251, 255, .92) 100%);
}

body.fincaswin-theme.home .fw-system-image {
  max-width: 1040px;
  padding: clamp(12px, 2vw, 24px);
  border: 1px solid rgba(255, 255, 255, .78);
  border-radius: 36px;
  background: rgba(255, 255, 255, .58);
  box-shadow: 0 20px 58px rgba(8, 27, 51, .08);
  backdrop-filter: blur(12px);
}

body.fincaswin-theme.home .fw-feature-row {
  padding-top: clamp(58px, 6vw, 84px);
  padding-bottom: clamp(58px, 6vw, 84px);
}

body.fincaswin-theme.home .fw-feature-row > .elementor-container,
body.fincaswin-theme.home .fw-problem-section > .elementor-container,
body.fincaswin-theme.home .fw-trust-section > .elementor-container {
  gap: clamp(48px, 6vw, 86px);
}

body.fincaswin-theme.home .fw-support-band-section {
  padding: clamp(82px, 8vw, 116px) 0;
  background:
    linear-gradient(180deg, rgba(247, 250, 252, .96), rgba(255, 255, 255, .98));
}

body.fincaswin-theme.home .fw-support-band-section > .elementor-container {
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 36px;
  background:
    linear-gradient(135deg, rgba(7, 28, 51, .98), rgba(13, 49, 77, .95)),
    radial-gradient(ellipse at 16% 16%, rgba(34, 198, 113, .30), transparent 36%),
    radial-gradient(ellipse at 92% 22%, rgba(18, 184, 200, .28), transparent 34%);
  box-shadow: 0 30px 88px rgba(8, 27, 51, .18);
}

body.fincaswin-theme.home .fw-support-mini-card {
  border-color: rgba(255, 255, 255, .18);
  background: rgba(255, 255, 255, .10);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12);
}

body.fincaswin-theme.home .fw-pricing-section,
body.fincaswin-theme.home .fw-pricing-grid-section,
body.fincaswin-theme.home .fw-price-note-section {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .98) 0%, rgba(238, 248, 251, .78) 100%);
}

body.fincaswin-theme.home .fw-pricing-grid-section .fw-price-card.is-featured {
  transform: translateY(-12px);
  border-color: rgba(34, 198, 113, .38);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(239, 255, 247, .90)),
    var(--fw-white);
  box-shadow:
    0 30px 82px rgba(34, 198, 113, .18),
    0 18px 42px rgba(8, 27, 51, .09);
}

body.fincaswin-theme.home .fw-price-value {
  color: var(--fw-navy);
  font-size: 38px;
}

body.fincaswin-theme.home .fw-price-note {
  border-color: rgba(245, 166, 35, .24);
  background: rgba(255, 255, 255, .72);
  box-shadow: 0 12px 34px rgba(8, 27, 51, .05);
}

body.fincaswin-theme.home .fw-trust-card {
  padding: 22px 24px;
}

body.fincaswin-theme.home .fw-faq-section {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .98) 0%, rgba(247, 251, 255, .96) 100%);
}

body.fincaswin-theme.home .fw-faq-section h2 {
  color: var(--fw-navy);
}

body.fincaswin-theme.home .fw-faq-section .fw-lead {
  color: var(--fw-muted);
}

body.fincaswin-theme.home .fw-faq-section .elementor-accordion .elementor-accordion-item {
  border-color: rgba(255, 255, 255, .82);
  border-radius: 22px;
  background: rgba(255, 255, 255, .88);
  box-shadow: 0 16px 46px rgba(8, 27, 51, .08);
}

body.fincaswin-theme.home .fw-faq-section .elementor-accordion .elementor-tab-title {
  padding: 22px 24px;
}

body.fincaswin-theme.home .fw-faq-section .elementor-accordion .elementor-tab-content {
  padding: 0 24px 24px;
}

body.fincaswin-theme.home .fw-final-cta {
  padding: clamp(82px, 8vw, 116px) 0;
  background:
    linear-gradient(180deg, rgba(247, 251, 255, .96), rgba(255, 255, 255, .92)),
    radial-gradient(ellipse at 50% 10%, rgba(18, 184, 200, .16), transparent 42%);
}

body.fincaswin-theme.home .fw-final-cta > .elementor-container {
  max-width: 940px;
  border: 1px solid rgba(255, 255, 255, .82);
  border-radius: 36px;
  background: rgba(255, 255, 255, .86);
  box-shadow:
    0 30px 90px rgba(8, 27, 51, .13),
    inset 0 1px 0 rgba(255, 255, 255, .86);
}

@media (max-width: 1024px) {
  body.fincaswin-theme.home .fw-home-hero {
    min-height: 0;
    padding-top: 76px;
    padding-bottom: 72px;
  }

  body.fincaswin-theme.home .fw-home-hero > .elementor-container,
  body.fincaswin-theme.home .fw-feature-row > .elementor-container,
  body.fincaswin-theme.home .fw-problem-section > .elementor-container,
  body.fincaswin-theme.home .fw-trust-section > .elementor-container,
  body.fincaswin-theme.home .fw-support-band-section > .elementor-container {
    gap: 42px;
  }

  body.fincaswin-theme.home .fw-pricing-grid-section .fw-price-card.is-featured {
    transform: none;
  }
}

@media (max-width: 767px) {
  body.fincaswin-theme.home .fw-home-hero {
    padding-top: 48px;
    padding-bottom: 58px;
  }

  body.fincaswin-theme.home .fw-home-hero .elementor-widget-text-editor {
    font-size: 18px;
    line-height: 1.62;
  }

  body.fincaswin-theme.home .fw-home-action .elementor-button,
  body.fincaswin-theme.home .fw-btn .elementor-button {
    min-height: 52px;
    padding: 15px 22px;
    font-size: 16px;
  }

  body.fincaswin-theme.home .fw-home-visual img,
  body.fincaswin-theme.home .fw-system-image img,
  body.fincaswin-theme.home .fw-feature-media img,
  body.fincaswin-theme.home .fw-trust-media img,
  body.fincaswin-theme.home .fw-support-media img {
    border-radius: 24px;
    box-shadow: 0 18px 48px rgba(8, 27, 51, .13);
  }

  body.fincaswin-theme.home .fw-home-section,
  body.fincaswin-theme.home .fw-system-section,
  body.fincaswin-theme.home .fw-feature-intro,
  body.fincaswin-theme.home .fw-pricing-section,
  body.fincaswin-theme.home .fw-trust-section,
  body.fincaswin-theme.home .fw-faq-section,
  body.fincaswin-theme.home .fw-final-cta {
    padding-top: 62px;
    padding-bottom: 62px;
  }

  body.fincaswin-theme.home .fw-benefit-grid-section,
  body.fincaswin-theme.home .fw-pricing-grid-section,
  body.fincaswin-theme.home .fw-price-note-section {
    padding-bottom: 62px;
  }

  body.fincaswin-theme.home .fw-card.elementor-column,
  body.fincaswin-theme.home .fw-price-card.elementor-column,
  body.fincaswin-theme.home .fw-benefit-card,
  body.fincaswin-theme.home .fw-problem-compare-card,
  body.fincaswin-theme.home .fw-trust-card {
    border-radius: 24px;
  }

  body.fincaswin-theme.home .fw-system-image {
    padding: 10px;
    border-radius: 28px;
  }

  body.fincaswin-theme.home .fw-support-band-section > .elementor-container,
  body.fincaswin-theme.home .fw-final-cta > .elementor-container {
    border-radius: 26px;
  }
}

@media (max-width: 420px) {
  body.fincaswin-theme.home .fw-home-hero {
    padding-top: 40px;
  }

  body.fincaswin-theme.home .fw-home-section-heading::after {
    width: 68px;
    margin-top: 20px;
  }
}

/* Hero proportion pass after visual review. */
body.fincaswin-theme.home .fw-home-hero {
  min-height: 0;
  padding-top: clamp(46px, 5vw, 68px);
  padding-bottom: clamp(52px, 5vw, 74px);
}

body.fincaswin-theme.home .fw-home-hero > .elementor-container {
  grid-template-columns: minmax(0, 1fr) minmax(520px, 1.08fr);
  align-items: center;
  gap: clamp(42px, 5vw, 72px);
}

body.fincaswin-theme.home .fw-home-hero .elementor-widget-heading h1 {
  max-width: 620px;
  font-size: 50px;
  line-height: 1.10;
}

body.fincaswin-theme.home .fw-home-hero .elementor-widget-text-editor {
  max-width: 540px;
  font-size: 18px;
}

body.fincaswin-theme.home .fw-home-visual {
  max-width: 720px;
  margin-left: auto;
}

body.fincaswin-theme.home .fw-home-visual img {
  transform: translateY(0) rotate(-.75deg);
}

body.fincaswin-theme.home .fw-home-hero-media {
  align-self: center;
  transform: translateY(-42px);
}

@media (max-width: 1200px) {
  body.fincaswin-theme.home .fw-home-hero > .elementor-container {
    grid-template-columns: minmax(0, 1fr) minmax(460px, 1fr);
  }

  body.fincaswin-theme.home .fw-home-hero .elementor-widget-heading h1 {
    font-size: 46px;
  }
}

@media (max-width: 1024px) {
  body.fincaswin-theme.home .fw-home-hero > .elementor-container {
    grid-template-columns: 1fr;
  }

  body.fincaswin-theme.home .fw-home-hero .elementor-widget-heading h1 {
    max-width: 760px;
    font-size: 46px;
  }

  body.fincaswin-theme.home .fw-home-visual {
    max-width: 760px;
    margin-inline: auto;
  }

  body.fincaswin-theme.home .fw-home-hero-media {
    transform: none;
  }
}

@media (max-width: 767px) {
  body.fincaswin-theme.home .fw-home-hero {
    padding-top: 42px;
    padding-bottom: 50px;
  }

  body.fincaswin-theme.home .fw-home-hero .elementor-widget-heading h1 {
    font-size: 36px;
    line-height: 1.08;
  }

  body.fincaswin-theme.home .fw-home-hero .elementor-widget-text-editor {
    font-size: 16px;
  }
}

@media (max-width: 420px) {
  body.fincaswin-theme.home .fw-home-hero .elementor-widget-heading h1 {
    font-size: 34px;
  }
}

/*
 * Visual redesign phase 2.
 * Key sections receive a stronger SaaS landing treatment through Elementor classes.
 */
body.fincaswin-theme.home .fw-home-hero-premium {
  min-height: 690px;
  display: flex;
  align-items: center;
  padding: 58px 0 70px;
  background:
    radial-gradient(circle at 82% 24%, rgba(18, 184, 200, .24), transparent 34%),
    radial-gradient(circle at 18% 18%, rgba(34, 198, 113, .17), transparent 32%),
    linear-gradient(180deg, #F7FBFF 0%, #FFFFFF 88%);
}

body.fincaswin-theme.home .fw-home-hero-premium > .elementor-container {
  width: min(100% - 40px, 1320px);
  max-width: 1320px;
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
  gap: 76px;
  align-items: center;
}

body.fincaswin-theme.home .fw-home-hero-premium .fw-home-hero-copy {
  position: relative;
  z-index: 2;
}

body.fincaswin-theme.home .fw-home-hero-premium .fw-home-hero-media {
  transform: translateY(-26px);
}

body.fincaswin-theme.home .fw-home-hero-premium .elementor-widget-heading h1 {
  max-width: 690px;
  font-size: 56px;
  line-height: 1.08;
  letter-spacing: 0;
}

body.fincaswin-theme.home .fw-home-hero-premium .elementor-widget-text-editor {
  max-width: 600px;
  color: #25364A;
  font-size: 20px;
  line-height: 1.62;
}

body.fincaswin-theme.home .fw-home-hero-premium .fw-home-action .elementor-button {
  min-height: 58px;
  padding: 17px 30px;
  font-size: 18px;
}

body.fincaswin-theme.home .fw-home-hero-premium .fw-home-hero-checks {
  margin-top: 28px;
  gap: 14px 18px;
}

body.fincaswin-theme.home .fw-home-hero-premium .fw-home-hero-checks .fw-pill {
  position: relative;
  min-height: 36px;
  padding: 8px 14px 8px 38px;
  background: transparent;
  border: 0;
  box-shadow: none;
  color: var(--fw-navy);
}

body.fincaswin-theme.home .fw-home-hero-premium .fw-home-hero-checks .fw-pill::before {
  content: "";
  position: absolute;
  left: 8px;
  top: 50%;
  width: 18px;
  height: 18px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--fw-green), var(--fw-cyan));
  transform: translateY(-50%);
}

body.fincaswin-theme.home .fw-home-hero-premium .fw-home-hero-checks .fw-pill::after {
  content: "";
  position: absolute;
  left: 15px;
  top: 50%;
  width: 5px;
  height: 9px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: translateY(-58%) rotate(45deg);
}

body.fincaswin-theme.home .fw-home-hero-premium .fw-home-hero-image,
body.fincaswin-theme.home .fw-home-hero-premium .fw-home-visual {
  max-width: 760px;
}

body.fincaswin-theme.home .fw-home-hero-premium .fw-home-hero-image img,
body.fincaswin-theme.home .fw-home-hero-premium .fw-home-visual img {
  width: 100%;
  border-radius: 34px;
  transform: none;
  box-shadow:
    0 34px 100px rgba(8, 27, 51, .16),
    0 20px 38px rgba(18, 184, 200, .10);
}

body.fincaswin-theme.home .fw-home-hero-premium .fw-floating-card {
  border-radius: 20px;
  background: rgba(255, 255, 255, .92);
  box-shadow: 0 18px 48px rgba(8, 27, 51, .13);
}

body.fincaswin-theme.home .fw-home-benefits-premium {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 86% 22%, rgba(18, 184, 200, .13), transparent 30%),
    radial-gradient(circle at 14% 78%, rgba(34, 198, 113, .11), transparent 30%),
    linear-gradient(180deg, #FFFFFF 0%, #F8FCFF 100%);
}

body.fincaswin-theme.home .fw-home-section.fw-home-benefits-premium {
  padding-top: 78px;
  padding-bottom: 28px;
}

body.fincaswin-theme.home .fw-benefit-grid-section.fw-home-benefits-premium {
  padding-top: 0;
  padding-bottom: 96px;
}

body.fincaswin-theme.home .fw-home-benefits-premium .fw-home-section-heading {
  margin-bottom: 0;
}

body.fincaswin-theme.home .fw-home-benefits-premium > .elementor-container {
  width: min(100% - 40px, 1240px);
  max-width: 1240px;
}

body.fincaswin-theme.home .fw-benefit-grid.fw-home-benefits-premium > .elementor-container {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 22px;
}

body.fincaswin-theme.home .fw-benefit-grid.fw-home-benefits-premium .fw-benefit-card {
  position: relative;
  min-height: 176px;
  padding: 30px 26px 28px;
  border-radius: 28px;
  overflow: hidden;
}

body.fincaswin-theme.home .fw-benefit-grid.fw-home-benefits-premium .fw-benefit-card::before {
  content: "";
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  margin-bottom: 18px;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(34, 198, 113, .18), rgba(18, 184, 200, .16));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .68);
}

body.fincaswin-theme.home .fw-benefit-grid.fw-home-benefits-premium .fw-benefit-card::after {
  position: absolute;
  left: 42px;
  top: 42px;
  width: 18px;
  height: 18px;
  color: var(--fw-blue);
  font-weight: 900;
  line-height: 1;
}

body.fincaswin-theme.home .fw-benefit-grid.fw-home-benefits-premium .fw-benefit-card:nth-child(1)::after { content: "C"; }
body.fincaswin-theme.home .fw-benefit-grid.fw-home-benefits-premium .fw-benefit-card:nth-child(2)::after { content: "€"; }
body.fincaswin-theme.home .fw-benefit-grid.fw-home-benefits-premium .fw-benefit-card:nth-child(3)::after { content: "B"; }
body.fincaswin-theme.home .fw-benefit-grid.fw-home-benefits-premium .fw-benefit-card:nth-child(4)::after { content: "R"; }
body.fincaswin-theme.home .fw-benefit-grid.fw-home-benefits-premium .fw-benefit-card:nth-child(5)::after { content: "D"; }
body.fincaswin-theme.home .fw-benefit-grid.fw-home-benefits-premium .fw-benefit-card:nth-child(6)::after { content: "347"; font-size: 12px; }
body.fincaswin-theme.home .fw-benefit-grid.fw-home-benefits-premium .fw-benefit-card:nth-child(7)::after { content: "A"; }
body.fincaswin-theme.home .fw-benefit-grid.fw-home-benefits-premium .fw-benefit-card:nth-child(8)::after { content: "I"; }

body.fincaswin-theme.home .fw-benefit-grid.fw-home-benefits-premium .fw-benefit-card .elementor-widget-heading h3 {
  margin-bottom: 8px;
  font-size: 22px;
}

body.fincaswin-theme.home .fw-benefit-grid.fw-home-benefits-premium .fw-benefit-card .elementor-widget-text-editor {
  color: var(--fw-muted);
  font-size: 15px;
  line-height: 1.55;
}

body.fincaswin-theme.home .fw-home-problem-premium {
  background:
    radial-gradient(circle at 10% 20%, rgba(0, 108, 183, .08), transparent 30%),
    linear-gradient(180deg, #F7FAFC 0%, #EFF7FF 100%);
}

body.fincaswin-theme.home .fw-home-problem-premium > .elementor-container {
  width: min(100% - 40px, 1180px);
  max-width: 1180px;
  gap: 64px;
}

body.fincaswin-theme.home .fw-home-problem-premium .fw-problem-compare-card {
  padding: 30px;
  border-radius: 28px;
}

body.fincaswin-theme.home .fw-home-problem-premium .fw-problem-compare-card.is-positive {
  border-color: rgba(34, 198, 113, .34);
  background:
    radial-gradient(circle at 100% 0%, rgba(34, 198, 113, .14), transparent 42%),
    #FFFFFF;
  box-shadow: 0 28px 70px rgba(34, 198, 113, .12);
}

body.fincaswin-theme.home .fw-home-connected-system-premium {
  position: relative;
  overflow: hidden;
  padding-top: 92px;
  background:
    radial-gradient(circle at 50% 40%, rgba(18, 184, 200, .12), transparent 42%),
    linear-gradient(180deg, #FFFFFF 0%, #F7FBFF 100%);
}

body.fincaswin-theme.home .fw-home-connected-system-premium .fw-system-image {
  max-width: 1120px;
  padding: 26px;
  border-radius: 40px;
  background: rgba(255, 255, 255, .74);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .82),
    0 26px 90px rgba(8, 27, 51, .10);
}

body.fincaswin-theme.home .fw-home-connected-system-premium .fw-system-image img {
  border-radius: 32px;
}

body.fincaswin-theme.home .fw-home-connected-system-premium .fw-system-pills {
  max-width: 960px;
  margin: 34px auto 0;
  gap: 12px;
}

body.fincaswin-theme.home .fw-home-connected-system-premium .fw-system-pills .fw-pill {
  border-color: rgba(0, 108, 183, .12);
  background: rgba(255, 255, 255, .82);
}

body.fincaswin-theme.home .fw-home-features-premium {
  background: #F7FAFC;
}

body.fincaswin-theme.home .fw-feature-intro.fw-home-features-premium {
  padding: 92px 0 18px;
}

body.fincaswin-theme.home .fw-feature-row.fw-home-features-premium {
  width: min(100% - 40px, 1180px);
  margin-inline: auto;
  padding: 70px 0;
  border-top: 1px solid rgba(8, 27, 51, .06);
  background: transparent;
}

body.fincaswin-theme.home .fw-feature-row.fw-home-features-premium > .elementor-container {
  width: 100%;
  max-width: none;
  gap: 64px;
}

body.fincaswin-theme.home .fw-feature-row.fw-home-features-premium .fw-feature-copy {
  align-self: center;
}

body.fincaswin-theme.home .fw-feature-row.fw-home-features-premium .fw-feature-copy .elementor-widget-heading h3 {
  font-size: 34px;
  line-height: 1.14;
}

body.fincaswin-theme.home .fw-feature-row.fw-home-features-premium .fw-feature-copy .elementor-widget-text-editor {
  color: var(--fw-muted);
}

body.fincaswin-theme.home .fw-feature-row.fw-home-features-premium .fw-feature-media {
  padding: 18px;
  border-radius: 34px;
  background: rgba(255, 255, 255, .78);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .82),
    0 18px 46px rgba(8, 27, 51, .07);
}

body.fincaswin-theme.home .fw-feature-row.fw-home-features-premium .fw-feature-media img {
  border-radius: 28px;
  box-shadow: 0 24px 70px rgba(8, 27, 51, .12);
}

body.fincaswin-theme.home .fw-home-support-premium {
  padding: 102px 0;
  background:
    radial-gradient(circle at 18% 22%, rgba(34, 198, 113, .18), transparent 30%),
    radial-gradient(circle at 88% 12%, rgba(18, 184, 200, .16), transparent 34%),
    #F7FAFC;
}

body.fincaswin-theme.home .fw-home-support-premium > .elementor-container {
  width: min(100% - 40px, 1240px);
  max-width: 1240px;
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1fr);
  gap: 72px;
  align-items: center;
  padding: 72px;
  border-radius: 42px;
  background:
    radial-gradient(circle at 18% 20%, rgba(34, 198, 113, .32), transparent 32%),
    radial-gradient(circle at 88% 18%, rgba(18, 184, 200, .26), transparent 32%),
    linear-gradient(135deg, #071C33 0%, #0D314D 100%);
  box-shadow: 0 34px 110px rgba(8, 27, 51, .22);
  color: #fff;
}

body.fincaswin-theme.home .fw-home-support-premium > .elementor-container h2,
body.fincaswin-theme.home .fw-home-support-premium > .elementor-container h3,
body.fincaswin-theme.home .fw-home-support-premium > .elementor-container p,
body.fincaswin-theme.home .fw-home-support-premium > .elementor-container .elementor-widget-text-editor {
  color: #fff;
}

body.fincaswin-theme.home .fw-home-support-premium .fw-support-benefits {
  display: grid;
  gap: 16px;
  margin-top: 28px;
}

body.fincaswin-theme.home .fw-home-support-premium .fw-support-benefit-card {
  padding: 18px 20px;
  border-radius: 20px;
  background: rgba(255, 255, 255, .10);
  border: 1px solid rgba(255, 255, 255, .16);
}

body.fincaswin-theme.home .fw-home-support-premium .fw-support-benefit-card h3,
body.fincaswin-theme.home .fw-home-support-premium .fw-support-benefit-card p {
  color: #fff;
}

body.fincaswin-theme.home .fw-home-support-premium .fw-support-media img {
  border-radius: 30px;
  box-shadow: 0 28px 90px rgba(0, 0, 0, .28);
}

body.fincaswin-theme.home .fw-home-pricing-premium {
  background:
    radial-gradient(circle at 50% 10%, rgba(34, 198, 113, .10), transparent 30%),
    linear-gradient(180deg, #FFFFFF 0%, #F7FAFC 100%);
}

body.fincaswin-theme.home .fw-pricing-section.fw-home-pricing-premium {
  padding: 92px 0 34px;
}

body.fincaswin-theme.home .fw-pricing-grid.fw-home-pricing-premium {
  padding-bottom: 84px;
}

body.fincaswin-theme.home .fw-pricing-grid.fw-home-pricing-premium > .elementor-container {
  width: min(100% - 40px, 1180px);
  max-width: 1180px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 26px;
  align-items: stretch;
}

body.fincaswin-theme.home .fw-pricing-grid.fw-home-pricing-premium .fw-price-card {
  padding: 36px;
  border-radius: 34px;
  background: #fff;
  box-shadow: 0 24px 70px rgba(8, 27, 51, .09);
}

body.fincaswin-theme.home .fw-pricing-grid.fw-home-pricing-premium .fw-price-card.is-featured {
  transform: translateY(-10px);
  border-color: rgba(34, 198, 113, .42);
  background:
    radial-gradient(circle at 50% 0%, rgba(34, 198, 113, .16), transparent 36%),
    #FFFFFF;
  box-shadow: 0 34px 90px rgba(34, 198, 113, .20);
}

body.fincaswin-theme.home .fw-pricing-grid.fw-home-pricing-premium .fw-price-card .elementor-widget-heading h3 {
  font-size: 28px;
}

body.fincaswin-theme.home .fw-pricing-grid.fw-home-pricing-premium .fw-price-card .fw-pill {
  margin-bottom: 18px;
}

body.fincaswin-theme.home .fw-home-trust-premium {
  background:
    radial-gradient(circle at 85% 20%, rgba(18, 184, 200, .12), transparent 30%),
    #F7FAFC;
}

body.fincaswin-theme.home .fw-home-trust-premium > .elementor-container {
  width: min(100% - 40px, 1180px);
  max-width: 1180px;
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  gap: 76px;
  align-items: center;
}

body.fincaswin-theme.home .fw-home-trust-premium .fw-trust-cards {
  gap: 18px;
}

body.fincaswin-theme.home .fw-home-trust-premium .fw-trust-card {
  position: relative;
  padding: 22px 24px 22px 58px;
  border-radius: 22px;
}

body.fincaswin-theme.home .fw-home-trust-premium .fw-trust-card::before {
  content: "";
  position: absolute;
  left: 24px;
  top: 26px;
  width: 18px;
  height: 18px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--fw-green), var(--fw-cyan));
}

body.fincaswin-theme.home .fw-home-trust-premium .fw-trust-media img {
  border-radius: 32px;
}

body.fincaswin-theme.home .fw-home-faq {
  background:
    linear-gradient(180deg, #FFFFFF 0%, #F7FBFF 100%);
}

body.fincaswin-theme.home .fw-home-final-cta-premium {
  position: relative;
  overflow: hidden;
  padding: 104px 0;
  background:
    radial-gradient(circle at 20% 40%, rgba(34, 198, 113, .18), transparent 34%),
    radial-gradient(circle at 82% 30%, rgba(18, 184, 200, .18), transparent 34%),
    linear-gradient(180deg, #FFFFFF, #F7FBFF);
}

body.fincaswin-theme.home .fw-home-final-cta-premium > .elementor-container {
  width: min(100% - 40px, 920px);
  max-width: 920px;
  border-radius: 36px;
  padding: 72px;
  background: rgba(255, 255, 255, .84);
  border: 1px solid rgba(255, 255, 255, .72);
  backdrop-filter: blur(18px);
  box-shadow: 0 34px 100px rgba(8, 27, 51, .14);
}

@media (max-width: 1200px) {
  body.fincaswin-theme.home .fw-home-hero-premium > .elementor-container {
    gap: 54px;
  }

  body.fincaswin-theme.home .fw-home-hero-premium .elementor-widget-heading h1 {
    font-size: 50px;
  }
}

@media (max-width: 1024px) {
  body.fincaswin-theme.home .fw-home-hero-premium {
    min-height: auto;
  }

  body.fincaswin-theme.home .fw-home-hero-premium > .elementor-container,
  body.fincaswin-theme.home .fw-home-support-premium > .elementor-container,
  body.fincaswin-theme.home .fw-home-trust-premium > .elementor-container {
    grid-template-columns: 1fr;
  }

  body.fincaswin-theme.home .fw-home-hero-premium .fw-home-hero-media {
    transform: none;
  }

  body.fincaswin-theme.home .fw-benefit-grid.fw-home-benefits-premium > .elementor-container,
  body.fincaswin-theme.home .fw-pricing-grid.fw-home-pricing-premium > .elementor-container {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.fincaswin-theme.home .fw-pricing-grid.fw-home-pricing-premium .fw-price-card.is-featured {
    transform: none;
  }

  body.fincaswin-theme.home .fw-home-support-premium > .elementor-container {
    padding: 52px;
  }
}

@media (max-width: 767px) {
  body.fincaswin-theme.home .fw-home-hero-premium {
    padding: 42px 0 56px;
  }

  body.fincaswin-theme.home .fw-home-hero-premium > .elementor-container,
  body.fincaswin-theme.home .fw-home-benefits-premium > .elementor-container,
  body.fincaswin-theme.home .fw-home-problem-premium > .elementor-container,
  body.fincaswin-theme.home .fw-home-connected-system-premium > .elementor-container,
  body.fincaswin-theme.home .fw-pricing-grid.fw-home-pricing-premium > .elementor-container,
  body.fincaswin-theme.home .fw-home-trust-premium > .elementor-container {
    width: min(100% - 28px, 1180px);
  }

  body.fincaswin-theme.home .fw-home-hero-premium .elementor-widget-heading h1 {
    font-size: 34px;
    line-height: 1.10;
  }

  body.fincaswin-theme.home .fw-home-hero-premium .elementor-widget-text-editor {
    font-size: 16px;
  }

  body.fincaswin-theme.home .fw-home-hero-premium .fw-home-action {
    display: inline-block;
    width: auto;
    margin: 8px 8px 0 0;
  }

  body.fincaswin-theme.home .fw-home-hero-premium .fw-home-action .elementor-button {
    width: auto;
    min-height: 50px;
    padding: 14px 20px;
    font-size: 15px;
  }

  body.fincaswin-theme.home .fw-home-hero-premium .fw-home-hero-checks {
    display: flex;
    gap: 8px 12px;
    margin-top: 18px;
  }

  body.fincaswin-theme.home .fw-home-hero-premium .fw-home-hero-checks .fw-pill {
    min-height: 30px;
    padding: 6px 10px 6px 30px;
    font-size: 13px;
  }

  body.fincaswin-theme.home .fw-home-hero-premium .fw-home-hero-checks .fw-pill::before {
    left: 5px;
    width: 16px;
    height: 16px;
  }

  body.fincaswin-theme.home .fw-home-hero-premium .fw-home-hero-checks .fw-pill::after {
    left: 11px;
  }

  body.fincaswin-theme.home .fw-benefit-grid.fw-home-benefits-premium > .elementor-container,
  body.fincaswin-theme.home .fw-pricing-grid.fw-home-pricing-premium > .elementor-container,
  body.fincaswin-theme.home .fw-home-problem-premium .fw-problem-compare {
    grid-template-columns: 1fr;
  }

  body.fincaswin-theme.home .fw-feature-row.fw-home-features-premium {
    width: min(100% - 28px, 1180px);
    padding: 52px 0;
  }

  body.fincaswin-theme.home .fw-feature-row.fw-home-features-premium .fw-feature-copy .elementor-widget-heading h3 {
    font-size: 28px;
  }

  body.fincaswin-theme.home .fw-home-support-premium {
    padding: 70px 0;
  }

  body.fincaswin-theme.home .fw-home-support-premium > .elementor-container,
  body.fincaswin-theme.home .fw-home-final-cta-premium > .elementor-container {
    width: min(100% - 28px, 920px);
    border-radius: 26px;
    padding: 32px 22px;
  }
}

@media (max-width: 420px) {
  body.fincaswin-theme.home .fw-home-hero-premium .elementor-widget-heading h1 {
    font-size: 32px;
  }

  body.fincaswin-theme.home .fw-home-hero-premium .fw-home-action {
    margin-right: 0;
  }

  body.fincaswin-theme.home .fw-home-hero-premium .fw-home-action .elementor-button {
    padding-inline: 18px;
  }

  body.fincaswin-theme.home .fw-benefit-grid.fw-home-benefits-premium .fw-benefit-card,
  body.fincaswin-theme.home .fw-pricing-grid.fw-home-pricing-premium .fw-price-card {
    padding: 26px 22px;
  }
}

/*
 * Visual redesign phase 3.
 * Final responsive and QA hardening. No content or layout rebuild.
 */
body.fincaswin-theme {
  overflow-x: hidden;
}

body.fincaswin-theme .fw-site-main {
  overflow-x: clip;
}

body.fincaswin-theme.home .fw-home-hero img,
body.fincaswin-theme.home .fw-system-image img,
body.fincaswin-theme.home .fw-feature-media img,
body.fincaswin-theme.home .fw-support-band img,
body.fincaswin-theme.home .fw-trust-layout img,
body.fincaswin-theme.home .fw-home-final-cta img {
  display: block;
  max-width: 100%;
  height: auto;
}

body.fincaswin-theme.home .fw-home-hero-premium .elementor-button,
body.fincaswin-theme.home .fw-home-final-cta-premium .elementor-button,
body.fincaswin-theme.home .fw-pricing-grid.fw-home-pricing-premium .elementor-button {
  white-space: normal;
  text-align: center;
}

body.fincaswin-theme.home .fw-system-pills,
body.fincaswin-theme.home .fw-home-hero-checks {
  max-width: 100%;
}

body.fincaswin-theme.home .fw-system-pills .fw-pill,
body.fincaswin-theme.home .fw-home-hero-checks .fw-pill {
  max-width: 100%;
}

@media (max-width: 1280px) {
  body.fincaswin-theme.home .fw-home-hero-premium > .elementor-container {
    grid-template-columns: minmax(0, .9fr) minmax(0, 1fr);
    gap: 52px;
  }

  body.fincaswin-theme.home .fw-home-hero-premium .elementor-widget-heading h1 {
    font-size: 50px;
  }

  body.fincaswin-theme.home .fw-home-hero-premium .elementor-widget-text-editor {
    font-size: 18px;
  }
}

@media (max-width: 1024px) {
  body.fincaswin-theme.home .fw-home-hero-premium > .elementor-container,
  body.fincaswin-theme.home .fw-home-problem-premium > .elementor-container,
  body.fincaswin-theme.home .fw-feature-row.fw-home-features-premium > .elementor-container,
  body.fincaswin-theme.home .fw-home-support-premium > .elementor-container,
  body.fincaswin-theme.home .fw-home-trust-premium > .elementor-container {
    grid-template-columns: 1fr;
  }

  body.fincaswin-theme.home .fw-home-hero-image,
  body.fincaswin-theme.home .fw-home-visual {
    max-width: 820px;
    margin-inline: auto;
  }

  body.fincaswin-theme.home .fw-feature-row--media-first > .elementor-container > .elementor-column:first-child {
    order: 2;
  }

  body.fincaswin-theme.home .fw-feature-row--media-first > .elementor-container > .elementor-column:last-child {
    order: 1;
  }

  body.fincaswin-theme.home .fw-home-support-premium .fw-support-copy,
  body.fincaswin-theme.home .fw-home-trust-premium .fw-trust-copy {
    order: 1;
  }

  body.fincaswin-theme.home .fw-home-support-premium .fw-support-media,
  body.fincaswin-theme.home .fw-home-trust-premium .fw-trust-media {
    order: 2;
  }
}

@media (max-width: 767px) {
  body.fincaswin-theme {
    font-size: 15px;
  }

  body.fincaswin-theme h1 {
    font-size: 34px;
    line-height: 1.08;
  }

  body.fincaswin-theme h2 {
    font-size: 30px;
    line-height: 1.14;
  }

  body.fincaswin-theme h3 {
    font-size: 24px;
  }

  body.fincaswin-theme.home .fw-home-hero-premium,
  body.fincaswin-theme.home .fw-home-section,
  body.fincaswin-theme.home .fw-system-section,
  body.fincaswin-theme.home .fw-feature-intro,
  body.fincaswin-theme.home .fw-home-support-premium,
  body.fincaswin-theme.home .fw-pricing-section,
  body.fincaswin-theme.home .fw-trust-section,
  body.fincaswin-theme.home .fw-faq-section,
  body.fincaswin-theme.home .fw-home-final-cta-premium {
    scroll-margin-top: 82px;
  }

  body.fincaswin-theme.home .fw-home-hero-premium {
    padding-top: 42px;
    padding-bottom: 54px;
  }

  body.fincaswin-theme.home .fw-home-hero-premium > .elementor-container,
  body.fincaswin-theme.home .fw-home-benefits-premium > .elementor-container,
  body.fincaswin-theme.home .fw-home-problem-premium > .elementor-container,
  body.fincaswin-theme.home .fw-home-connected-system-premium > .elementor-container,
  body.fincaswin-theme.home .fw-feature-row.fw-home-features-premium,
  body.fincaswin-theme.home .fw-home-support-premium > .elementor-container,
  body.fincaswin-theme.home .fw-pricing-grid.fw-home-pricing-premium > .elementor-container,
  body.fincaswin-theme.home .fw-home-trust-premium > .elementor-container,
  body.fincaswin-theme.home .fw-home-final-cta-premium > .elementor-container {
    width: min(100% - 28px, 1180px);
  }

  body.fincaswin-theme.home .fw-home-hero-premium .elementor-widget-heading h1 {
    font-size: 32px;
    line-height: 1.10;
  }

  body.fincaswin-theme.home .fw-home-hero-premium .fw-home-hero-checks {
    align-items: flex-start;
  }

  body.fincaswin-theme.home .fw-home-hero-premium .fw-home-hero-checks .fw-pill {
    flex: 0 1 auto;
  }

  body.fincaswin-theme.home .fw-floating-card {
    display: none;
  }

  body.fincaswin-theme.home .fw-system-image,
  body.fincaswin-theme.home .fw-feature-media,
  body.fincaswin-theme.home .fw-home-support-premium > .elementor-container,
  body.fincaswin-theme.home .fw-home-final-cta-premium > .elementor-container {
    border-radius: 26px;
  }

  body.fincaswin-theme.home .fw-card,
  body.fincaswin-theme.home .fw-price-card,
  body.fincaswin-theme.home .fw-benefit-card,
  body.fincaswin-theme.home .fw-problem-compare-card,
  body.fincaswin-theme.home .fw-trust-card {
    border-radius: 22px;
  }

  body.fincaswin-theme.home .fw-home-final-cta-premium {
    padding: 64px 0;
  }

  body.fincaswin-theme.home .fw-home-final-cta-premium .fw-home-action {
    display: block;
    width: 100%;
    margin: 10px 0 0;
  }

  body.fincaswin-theme.home .fw-home-final-cta-premium .fw-home-action .elementor-button {
    width: 100%;
  }
}

@media (max-width: 420px) {
  body.fincaswin-theme.home .fw-home-hero-premium > .elementor-container,
  body.fincaswin-theme.home .fw-home-benefits-premium > .elementor-container,
  body.fincaswin-theme.home .fw-home-problem-premium > .elementor-container,
  body.fincaswin-theme.home .fw-home-connected-system-premium > .elementor-container,
  body.fincaswin-theme.home .fw-feature-row.fw-home-features-premium,
  body.fincaswin-theme.home .fw-home-support-premium > .elementor-container,
  body.fincaswin-theme.home .fw-pricing-grid.fw-home-pricing-premium > .elementor-container,
  body.fincaswin-theme.home .fw-home-trust-premium > .elementor-container,
  body.fincaswin-theme.home .fw-home-final-cta-premium > .elementor-container {
    width: min(100% - 24px, 1180px);
  }

  body.fincaswin-theme.home .fw-home-hero-premium .elementor-widget-heading h1 {
    font-size: 31px;
  }

  body.fincaswin-theme.home .fw-home-hero-premium .fw-home-action .elementor-button {
    min-height: 48px;
    padding-inline: 16px;
  }

  body.fincaswin-theme.home .fw-card,
  body.fincaswin-theme.home .fw-price-card,
  body.fincaswin-theme.home .fw-benefit-card,
  body.fincaswin-theme.home .fw-problem-compare-card,
  body.fincaswin-theme.home .fw-trust-card {
    padding: 20px;
  }
}
