/**
 * Duo-color curved swoosh at the bottom of interior product heroes.
 * Matches homepage treatment (teal → gold stroke, white fill wedge).
 * Scoped to WordPress pages only (not front page).
 */

/**
 * HOMEPAGE (front-page): Thicker duo stroke to match internal product pages.
 * Override the inline SVG stroke-width via CSS.
 */
body.home .elementor-element.elementor-element-hero-section,
body.page-id-11 .elementor-element.elementor-element-hero-section {
  position: relative;
  overflow: visible !important;
}

body.home .elementor-element.elementor-element-hero-section > .e-con-inner,
body.page-id-11 .elementor-element.elementor-element-hero-section > .e-con-inner {
  position: relative;
  z-index: 2;
}

/* Make the homepage swoosh stroke thicker */
body.home .hero-swoosh-wrap svg path[stroke],
body.page-id-11 .hero-swoosh-wrap svg path[stroke] {
  stroke-width: 8 !important;
}

/**
 * Downloads page: NO swoosh - this page has its own minimal hero design.
 * Uses slug-based body class 'page-downloads' which WP adds automatically.
 */
body.page-downloads .elementor > .elementor-top-section.elementor-element:first-of-type::after,
body.page-downloads .elementor > .elementor-section.elementor-element:first-of-type::after,
body.page-downloads [data-elementor-type="wp-page"] > .elementor-element:first-child::after {
  display: none !important;
  content: none !important;
}

body.page-downloads .elementor > .elementor-top-section.elementor-element:first-of-type,
body.page-downloads .elementor > .elementor-section.elementor-element:first-of-type {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

body.page-downloads .elementor,
body.page-downloads [data-elementor-type="wp-page"] {
  margin-top: 0 !important;
}

body.page:not(.home) .elementor-element.elementor-element-page-hero,
body.page:not(.home) .elementor-element.elementor-element-checking-hero,
body.page:not(.home) .elementor-element.elementor-element-loans-hero,
body.page:not(.home) .elementor-element.elementor-element-savings-hero,
body.page:not(.home) .elementor-element.elementor-element-hero-section,
body.page:not(.home) #hero-section {
  position: relative;
  overflow: visible !important;
}

/* Keep hero copy/CTAs above the decorative layer */
body.page:not(.home) .elementor-element.elementor-element-page-hero > .e-con-inner {
  position: relative;
  z-index: 2;
}

body.page:not(.home) .elementor-element.elementor-element-checking-hero > .elementor-element-checking-hero-inner {
  position: relative;
  z-index: 2;
}

body.page:not(.home) .elementor-element.elementor-element-hero-section > .elementor-element-hero-inner,
body.page:not(.home) #hero-section > .elementor-container {
  position: relative;
  z-index: 2;
}

body.page:not(.home) .elementor-element.elementor-element-loans-hero > .elementor-element-loans-hero-inner,
body.page:not(.home) .elementor-element.elementor-element-savings-hero > .elementor-element-savings-hero-inner {
  position: relative;
  z-index: 2;
}

/* SVG: white fill under curve + 8px duo stroke (same weight as Home Equity; teal ~76%, gold balance) */
body.page:not(.home) .elementor-element.elementor-element-page-hero::after,
body.page:not(.home) .elementor-element.elementor-element-checking-hero::after,
body.page:not(.home) .elementor-element.elementor-element-loans-hero::after,
body.page:not(.home) .elementor-element.elementor-element-savings-hero::after,
body.page:not(.home) .elementor-element.elementor-element-hero-section::after,
body.page:not(.home) #hero-section::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: clamp(48px, 7vw, 72px);
  z-index: 1;
  pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1079.68 87.52' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='tlhs' x1='0%25' y1='0%25' x2='100%25' y2='0%25'%3E%3Cstop offset='0%25' stop-color='%235FA0A0'/%3E%3Cstop offset='76%25' stop-color='%235FA0A0'/%3E%3Cstop offset='76%25' stop-color='%23F4B94E'/%3E%3Cstop offset='100%25' stop-color='%23F4B94E'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath fill='%23ffffff' d='M0,32 Q539.84,80 1079.68,32 L1079.68,87.52 L0,87.52 Z'/%3E%3Cpath fill='none' stroke='url(%23tlhs)' stroke-width='8' vector-effect='non-scaling-stroke' d='M0,32 Q539.84,80 1079.68,32'/%3E%3C/svg%3E")
    center bottom / 100% 100% no-repeat;
}

/**
 * Home Equity only (post 164): legacy section hero — same curve + duo stroke (8px, matches other product pages).
 * Targets the existing top hero section; does not alter other layout or widgets.
 */
body.page-id-164 .elementor.elementor-164 > .elementor-element-609e6b2.elementor-top-section {
  position: relative;
  overflow: visible !important;
}

body.page-id-164 .elementor.elementor-164 > .elementor-element-609e6b2.elementor-top-section > .elementor-container {
  position: relative;
  z-index: 2;
}

body.page-id-164 .elementor.elementor-164 > .elementor-element-609e6b2.elementor-top-section::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: clamp(48px, 7vw, 72px);
  z-index: 1;
  pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1079.68 87.52' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='tlhe164' x1='0%25' y1='0%25' x2='100%25' y2='0%25'%3E%3Cstop offset='0%25' stop-color='%235FA0A0'/%3E%3Cstop offset='76%25' stop-color='%235FA0A0'/%3E%3Cstop offset='76%25' stop-color='%23F4B94E'/%3E%3Cstop offset='100%25' stop-color='%23F4B94E'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath fill='%23ffffff' d='M0,32 Q539.84,80 1079.68,32 L1079.68,87.52 L0,87.52 Z'/%3E%3Cpath fill='none' stroke='url(%23tlhe164)' stroke-width='8' vector-effect='non-scaling-stroke' d='M0,32 Q539.84,80 1079.68,32'/%3E%3C/svg%3E")
    center bottom / 100% 100% no-repeat;
}

/**
 * Money Market (155): cloned legacy-section hero — same duo swoosh as Home Equity.
 * Targets the first top-level Elementor section (regenerated widget ids).
 */
body.page-id-155 .elementor.elementor-155 > .elementor-top-section.elementor-element:first-of-type {
  position: relative;
  overflow: visible !important;
}

body.page-id-155 .elementor.elementor-155 > .elementor-top-section.elementor-element:first-of-type > .elementor-container {
  position: relative;
  z-index: 2;
}

body.page-id-155 .elementor.elementor-155 > .elementor-top-section.elementor-element:first-of-type::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: clamp(48px, 7vw, 72px);
  z-index: 1;
  pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1079.68 87.52' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='tlmm155' x1='0%25' y1='0%25' x2='100%25' y2='0%25'%3E%3Cstop offset='0%25' stop-color='%235FA0A0'/%3E%3Cstop offset='76%25' stop-color='%235FA0A0'/%3E%3Cstop offset='76%25' stop-color='%23F4B94E'/%3E%3Cstop offset='100%25' stop-color='%23F4B94E'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath fill='%23ffffff' d='M0,32 Q539.84,80 1079.68,32 L1079.68,87.52 L0,87.52 Z'/%3E%3Cpath fill='none' stroke='url(%23tlmm155)' stroke-width='8' vector-effect='non-scaling-stroke' d='M0,32 Q539.84,80 1079.68,32'/%3E%3C/svg%3E")
    center bottom / 100% 100% no-repeat;
}

/**
 * Auto Loans (162): cloned legacy-section hero — same duo swoosh as Home Equity / Money Market.
 */
body.page-id-162 .elementor.elementor-162 > .elementor-top-section.elementor-element:first-of-type {
  position: relative;
  overflow: visible !important;
}

body.page-id-162 .elementor.elementor-162 > .elementor-top-section.elementor-element:first-of-type > .elementor-container {
  position: relative;
  z-index: 2;
}

body.page-id-162 .elementor.elementor-162 > .elementor-top-section.elementor-element:first-of-type::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: clamp(48px, 7vw, 72px);
  z-index: 1;
  pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1079.68 87.52' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='tlal162' x1='0%25' y1='0%25' x2='100%25' y2='0%25'%3E%3Cstop offset='0%25' stop-color='%235FA0A0'/%3E%3Cstop offset='76%25' stop-color='%235FA0A0'/%3E%3Cstop offset='76%25' stop-color='%23F4B94E'/%3E%3Cstop offset='100%25' stop-color='%23F4B94E'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath fill='%23ffffff' d='M0,32 Q539.84,80 1079.68,32 L1079.68,87.52 L0,87.52 Z'/%3E%3Cpath fill='none' stroke='url(%23tlal162)' stroke-width='8' vector-effect='non-scaling-stroke' d='M0,32 Q539.84,80 1079.68,32'/%3E%3C/svg%3E")
    center bottom / 100% 100% no-repeat;
}

/**
 * Business Pages: duo swoosh for all business dropdown pages.
 * Page IDs: 188, 192, 194, 196, 200, 202, 204, 206, 212, 216, 218
 */
body.page-id-188 .elementor > .elementor-top-section.elementor-element:first-of-type,
body.page-id-192 .elementor > .elementor-top-section.elementor-element:first-of-type,
body.page-id-194 .elementor > .elementor-top-section.elementor-element:first-of-type,
body.page-id-196 .elementor > .elementor-top-section.elementor-element:first-of-type,
body.page-id-200 .elementor > .elementor-top-section.elementor-element:first-of-type,
body.page-id-202 .elementor > .elementor-top-section.elementor-element:first-of-type,
body.page-id-204 .elementor > .elementor-top-section.elementor-element:first-of-type,
body.page-id-206 .elementor > .elementor-top-section.elementor-element:first-of-type,
body.page-id-212 .elementor > .elementor-top-section.elementor-element:first-of-type,
body.page-id-216 .elementor > .elementor-top-section.elementor-element:first-of-type,
body.page-id-218 .elementor > .elementor-top-section.elementor-element:first-of-type {
  position: relative;
  overflow: visible !important;
}

body.page-id-188 .elementor > .elementor-top-section.elementor-element:first-of-type > .elementor-container,
body.page-id-192 .elementor > .elementor-top-section.elementor-element:first-of-type > .elementor-container,
body.page-id-194 .elementor > .elementor-top-section.elementor-element:first-of-type > .elementor-container,
body.page-id-196 .elementor > .elementor-top-section.elementor-element:first-of-type > .elementor-container,
body.page-id-200 .elementor > .elementor-top-section.elementor-element:first-of-type > .elementor-container,
body.page-id-202 .elementor > .elementor-top-section.elementor-element:first-of-type > .elementor-container,
body.page-id-204 .elementor > .elementor-top-section.elementor-element:first-of-type > .elementor-container,
body.page-id-206 .elementor > .elementor-top-section.elementor-element:first-of-type > .elementor-container,
body.page-id-212 .elementor > .elementor-top-section.elementor-element:first-of-type > .elementor-container,
body.page-id-216 .elementor > .elementor-top-section.elementor-element:first-of-type > .elementor-container,
body.page-id-218 .elementor > .elementor-top-section.elementor-element:first-of-type > .elementor-container {
  position: relative;
  z-index: 2;
}

body.page-id-188 .elementor > .elementor-top-section.elementor-element:first-of-type::after,
body.page-id-192 .elementor > .elementor-top-section.elementor-element:first-of-type::after,
body.page-id-194 .elementor > .elementor-top-section.elementor-element:first-of-type::after,
body.page-id-196 .elementor > .elementor-top-section.elementor-element:first-of-type::after,
body.page-id-200 .elementor > .elementor-top-section.elementor-element:first-of-type::after,
body.page-id-202 .elementor > .elementor-top-section.elementor-element:first-of-type::after,
body.page-id-204 .elementor > .elementor-top-section.elementor-element:first-of-type::after,
body.page-id-206 .elementor > .elementor-top-section.elementor-element:first-of-type::after,
body.page-id-212 .elementor > .elementor-top-section.elementor-element:first-of-type::after,
body.page-id-216 .elementor > .elementor-top-section.elementor-element:first-of-type::after,
body.page-id-218 .elementor > .elementor-top-section.elementor-element:first-of-type::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: clamp(48px, 7vw, 72px);
  z-index: 1;
  pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1079.68 87.52' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='tlbiz' x1='0%25' y1='0%25' x2='100%25' y2='0%25'%3E%3Cstop offset='0%25' stop-color='%235FA0A0'/%3E%3Cstop offset='76%25' stop-color='%235FA0A0'/%3E%3Cstop offset='76%25' stop-color='%23F4B94E'/%3E%3Cstop offset='100%25' stop-color='%23F4B94E'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath fill='%23ffffff' d='M0,32 Q539.84,80 1079.68,32 L1079.68,87.52 L0,87.52 Z'/%3E%3Cpath fill='none' stroke='url(%23tlbiz)' stroke-width='8' vector-effect='non-scaling-stroke' d='M0,32 Q539.84,80 1079.68,32'/%3E%3C/svg%3E")
    center bottom / 100% 100% no-repeat;
}

/**
 * Generic rule for ALL business pages under /business/ path.
 * Applies duo swoosh to the first section (hero) and removes top margin gap.
 */
body.page-template-default:not(.home) .elementor > .elementor-top-section.elementor-element:first-of-type {
  position: relative;
  overflow: visible !important;
  margin-top: 0 !important;
}

body.page-template-default:not(.home) .elementor > .elementor-top-section.elementor-element:first-of-type > .elementor-container {
  position: relative;
  z-index: 2;
}

body.page-template-default:not(.home) .elementor > .elementor-top-section.elementor-element:first-of-type::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: clamp(48px, 7vw, 72px);
  z-index: 1;
  pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1079.68 87.52' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='tlgen' x1='0%25' y1='0%25' x2='100%25' y2='0%25'%3E%3Cstop offset='0%25' stop-color='%235FA0A0'/%3E%3Cstop offset='76%25' stop-color='%235FA0A0'/%3E%3Cstop offset='76%25' stop-color='%23F4B94E'/%3E%3Cstop offset='100%25' stop-color='%23F4B94E'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath fill='%23ffffff' d='M0,32 Q539.84,80 1079.68,32 L1079.68,87.52 L0,87.52 Z'/%3E%3Cpath fill='none' stroke='url(%23tlgen)' stroke-width='8' vector-effect='non-scaling-stroke' d='M0,32 Q539.84,80 1079.68,32'/%3E%3C/svg%3E")
    center bottom / 100% 100% no-repeat;
}

/**
 * Interior pages: pad first section below fixed header (no -48px pull-up — caused nav overlap).
 * Hero clearance is owned by topline-custom/css/header-page-offset.css.
 */
body.page:not(.home) .elementor:not(.elementor-location-header),
body.page:not(.home) [data-elementor-type="wp-page"] {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

body.page:not(.home) .elementor-location-header {
  margin-top: 0 !important;
}

/* Hero pad owned by topline-custom/css/header-page-offset.css (fixed 192px, no JS). */
body.page:not(.home) .elementor > .elementor-top-section.elementor-element:first-of-type,
body.page:not(.home) [data-elementor-type="wp-page"] > .elementor-element:first-child,
body.page:not(.home) [data-elementor-type="wp-page"] > .e-con:first-child {
  margin-top: 0 !important;
  --margin-top: 0 !important;
}

/* Remove any gap from Elementor header location on interior pages */
body.page:not(.home) .elementor-location-header {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* Ensure the hero is positioned correctly behind the header */
body.page:not(.home) .elementor > .elementor-section:first-child,
body.page:not(.home) .elementor-section-wrap > .elementor-section:first-child {
  margin-top: 0 !important;
  --margin-top: 0 !important;
}


/**
 * Business Credit Cards (page 1073): duo swoosh for hero section.
 */
body.page-id-1073 .elementor > .elementor-top-section.elementor-element:first-of-type {
  position: relative;
  overflow: visible !important;
  margin-top: 0 !important;
}

body.page-id-1073 .elementor > .elementor-top-section.elementor-element:first-of-type > .elementor-container {
  position: relative;
  z-index: 2;
}

body.page-id-1073 .elementor > .elementor-top-section.elementor-element:first-of-type::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: clamp(48px, 7vw, 72px);
  z-index: 1;
  pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1079.68 87.52' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='tlbcc1073' x1='0%25' y1='0%25' x2='100%25' y2='0%25'%3E%3Cstop offset='0%25' stop-color='%235FA0A0'/%3E%3Cstop offset='76%25' stop-color='%235FA0A0'/%3E%3Cstop offset='76%25' stop-color='%23F4B94E'/%3E%3Cstop offset='100%25' stop-color='%23F4B94E'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath fill='%23ffffff' d='M0,32 Q539.84,80 1079.68,32 L1079.68,87.52 L0,87.52 Z'/%3E%3Cpath fill='none' stroke='url(%23tlbcc1073)' stroke-width='8' vector-effect='non-scaling-stroke' d='M0,32 Q539.84,80 1079.68,32'/%3E%3C/svg%3E")
    center bottom / 100% 100% no-repeat;
}

/**
 * Compare Checking Accounts (page 1185): duo swoosh for hero section.
 */
body.page-id-1185 .elementor > .elementor-top-section.elementor-element:first-of-type {
  position: relative;
  overflow: visible !important;
  margin-top: 0 !important;
}

body.page-id-1185 .elementor > .elementor-top-section.elementor-element:first-of-type > .elementor-container {
  position: relative;
  z-index: 2;
}

body.page-id-1185 .elementor > .elementor-top-section.elementor-element:first-of-type::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: clamp(48px, 7vw, 72px);
  z-index: 1;
  pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1079.68 87.52' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='tlcca1185' x1='0%25' y1='0%25' x2='100%25' y2='0%25'%3E%3Cstop offset='0%25' stop-color='%235FA0A0'/%3E%3Cstop offset='76%25' stop-color='%235FA0A0'/%3E%3Cstop offset='76%25' stop-color='%23F4B94E'/%3E%3Cstop offset='100%25' stop-color='%23F4B94E'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath fill='%23ffffff' d='M0,32 Q539.84,80 1079.68,32 L1079.68,87.52 L0,87.52 Z'/%3E%3Cpath fill='none' stroke='url(%23tlcca1185)' stroke-width='8' vector-effect='non-scaling-stroke' d='M0,32 Q539.84,80 1079.68,32'/%3E%3C/svg%3E")
    center bottom / 100% 100% no-repeat;
}

/**
 * Debit Cards (page 1186): duo swoosh for hero section.
 */
body.page-id-1186 .elementor > .elementor-top-section.elementor-element:first-of-type {
  position: relative;
  overflow: visible !important;
  margin-top: 0 !important;
}

body.page-id-1186 .elementor > .elementor-top-section.elementor-element:first-of-type > .elementor-container {
  position: relative;
  z-index: 2;
}

body.page-id-1186 .elementor > .elementor-top-section.elementor-element:first-of-type::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: clamp(48px, 7vw, 72px);
  z-index: 1;
  pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1079.68 87.52' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='tldc1186' x1='0%25' y1='0%25' x2='100%25' y2='0%25'%3E%3Cstop offset='0%25' stop-color='%235FA0A0'/%3E%3Cstop offset='76%25' stop-color='%235FA0A0'/%3E%3Cstop offset='76%25' stop-color='%23F4B94E'/%3E%3Cstop offset='100%25' stop-color='%23F4B94E'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath fill='%23ffffff' d='M0,32 Q539.84,80 1079.68,32 L1079.68,87.52 L0,87.52 Z'/%3E%3Cpath fill='none' stroke='url(%23tldc1186)' stroke-width='8' vector-effect='non-scaling-stroke' d='M0,32 Q539.84,80 1079.68,32'/%3E%3C/svg%3E")
    center bottom / 100% 100% no-repeat;
}
