
/* =========================================================
   WEALSURE — PREMIUM GREEN + RED GLOBAL THEME
   Final override: loaded after all existing theme files.
   ========================================================= */

:root{
  --ws-green:#16a34a;
  --ws-green-deep:#087a3e;
  --ws-green-soft:#eaf8ef;
  --ws-red:#ef1d25;
  --ws-red-deep:#c81018;
  --ws-red-soft:#fff0f1;
  --ws-gradient:linear-gradient(105deg,#0b8f49 0%,#16a34a 38%,#ef1d25 100%);
  --ws-gradient-reverse:linear-gradient(105deg,#ef1d25 0%,#e53935 48%,#16a34a 100%);
  --ws-gradient-soft:linear-gradient(135deg,rgba(22,163,74,.12),rgba(239,29,37,.10));
}

/* ---------- Base premium surface ---------- */
html{scroll-behavior:smooth}
body{
  background:
    radial-gradient(circle at 8% 4%,rgba(22,163,74,.055),transparent 26%),
    radial-gradient(circle at 92% 10%,rgba(239,29,37,.045),transparent 25%),
    #fff;
}

/* ---------- ALL HEADINGS: NEVER BLACK ---------- */
h1,h2,h3,h4,h5,h6,
.hero h1,.hero h2,
.section-title,.section-heading,
.page-title,.display-title{
  color:transparent !important;
  background-image:var(--ws-gradient) !important;
  background-size:200% auto !important;
  background-position:left center !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  text-shadow:none !important;
}

/* Keep headings visually premium and readable */
h1{font-weight:800}
h2{font-weight:780}
h3,h4,h5,h6{font-weight:720}

/* ---------- Brand logo ---------- */
.wealsure-header .brand .logo-weal,
header .brand .logo-weal,
.brand .logo-weal{
  color:var(--ws-green) !important;
  -webkit-text-fill-color:var(--ws-green) !important;
}
.wealsure-header .brand .logo-sure,
header .brand .logo-sure,
.brand .logo-sure{
  color:var(--ws-red) !important;
  -webkit-text-fill-color:var(--ws-red) !important;
}

/* ---------- Navigation ---------- */
.wealsure-header .links>a:hover,
.wealsure-header .drop-wrap>a:hover,
header .links>a:hover,
header .drop-wrap>a:hover{
  color:var(--ws-green) !important;
}
.wealsure-header .links>a:after,
.wealsure-header .drop-wrap>a:after,
header .links>a:after,
header .drop-wrap>a:after{
  background:var(--ws-gradient) !important;
}

/* ---------- Buttons / CTAs ---------- */
button,
.btn,
a.btn,
input[type="submit"],
input[type="button"],
.cta,
.cta-button,
.hero a[class*="btn"]{
  background:var(--ws-gradient) !important;
  background-size:180% 180% !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border:1px solid rgba(255,255,255,.18) !important;
  box-shadow:0 10px 26px rgba(22,163,74,.16),0 8px 24px rgba(239,29,37,.10) !important;
}
button:hover,
.btn:hover,
a.btn:hover,
input[type="submit"]:hover,
input[type="button"]:hover,
.cta:hover,
.cta-button:hover,
.hero a[class*="btn"]:hover{
  background:var(--ws-gradient-reverse) !important;
  transform:translateY(-1px);
  box-shadow:0 14px 30px rgba(22,163,74,.20),0 12px 28px rgba(239,29,37,.14) !important;
}

/* ---------- Links / accent text ---------- */
a:not(.btn):hover{color:var(--ws-red) !important}
.accent,.highlight,.eyebrow,.kicker{
  color:var(--ws-green) !important;
  -webkit-text-fill-color:var(--ws-green) !important;
}

/* ---------- Cards / panels ---------- */
.card,.service-card,.solution-card,.feature-card,.insight-card,
.panel,.tool-card,.stat-card,.info-card{
  border-color:rgba(22,163,74,.12) !important;
  background:
    linear-gradient(#fff,#fff) padding-box,
    var(--ws-gradient) border-box !important;
  border-width:1px !important;
  border-style:solid !important;
}
.card:hover,.service-card:hover,.solution-card:hover,.feature-card:hover,
.insight-card:hover,.panel:hover,.tool-card:hover,.stat-card:hover,.info-card:hover{
  box-shadow:0 18px 45px rgba(16,24,40,.09),0 6px 24px rgba(22,163,74,.08) !important;
}

/* ---------- Section accents ---------- */
.section-line,.divider,.accent-line{
  background:var(--ws-gradient) !important;
}
.badge,.tag,.pill{
  background:var(--ws-gradient-soft) !important;
  border-color:rgba(22,163,74,.18) !important;
  color:var(--ws-green-deep) !important;
}

/* ---------- Forms / focus ---------- */
input:focus,textarea:focus,select:focus{
  border-color:var(--ws-green) !important;
  box-shadow:0 0 0 3px rgba(22,163,74,.12),0 0 0 1px rgba(239,29,37,.08) !important;
}
input[type="checkbox"],input[type="radio"]{accent-color:var(--ws-green)}

/* ---------- Footer ---------- */
footer{
  border-top:1px solid rgba(22,163,74,.12) !important;
}
footer a:hover{color:#ef4444 !important}

/* ---------- Selection ---------- */
::selection{
  background:rgba(22,163,74,.20);
  color:#111;
}

/* ---------- Mobile consistency ---------- */
@media (max-width:767px){
  h1,h2,h3,h4,h5,h6{
    background-size:180% auto !important;
  }
  .btn,a.btn{
    min-height:44px;
  }
}
