/*
Theme Name: Hamoraon Sepadha Jaya Custom
Author: Hamoraon Sepadha Jaya
Description: Editable corporate WordPress theme for Hamoraon Sepadha Jaya.
Version: 4.36.0
Text Domain: hamoraon
*/
:root{--burgundy:#AF2E46;--purple:#522870;--ink:#111116;--muted:#67656b;--paper:#f7f6f3;--white:#fff;--line:rgba(17,17,22,.14);--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}
.site-header{position:absolute;z-index:20;top:0;left:0;right:0;color:#fff;background:rgba(12,10,15,.32);backdrop-filter:blur(2px)}.header-inner{max-width:var(--max);margin:auto;padding:22px 28px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.22)}
.brand{display:flex;align-items:center;gap:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.brand-logo{width:72px;height:72px;object-fit:contain;display:block;filter:drop-shadow(0 2px 7px rgba(0,0,0,.4))}.brand-name{white-space:nowrap;font-size:17px;line-height:1.05}.brand-fallback{display:flex;align-items:center;gap:12px}.brand-mark{width:38px;height:38px;border:1px solid rgba(255,255,255,.65);display:grid;place-items:center;font-weight:900}.brand-name{font-size:13px;line-height:1.05}.brand-name small{display:block;font-size:9px;letter-spacing:.16em;margin-top:4px;opacity:.85}
.nav{display:flex;align-items:center;gap:34px;font-size:15px}.nav a{opacity:1;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.65);transition:color .2s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease;border:1px solid transparent}.nav a:hover{opacity:1;color:#7B3FC6!important;background:transparent!important;border-color:transparent!important;box-shadow:none!important;border-radius:0;padding:0;margin:0}.nav-cta:hover,.nav-cta:hover *{color:#7B3FC6!important;background:#AF2E46!important;border-color:#AF2E46!important;box-shadow:none!important}.nav-cta{border:1px solid #AF2E46;padding:11px 22px;background:#AF2E46;border-radius:12px!important}.menu-toggle{display:none;background:none;border:0;color:#fff;font-size:24px}
.hero{min-height:780px;position:relative;display:flex;align-items:flex-end;overflow:hidden;color:#fff;background:#17131a}.hero.has-image{background-image:var(--hero-image)!important;background-color:#17131a;background-size:cover;background-position:center;background-repeat:no-repeat}.hero:after{display:none}.hero-grid{display:none}.hero-content{position:relative;z-index:2;width:100%;max-width:var(--max);margin:auto;padding:170px 28px 90px}.eyebrow{display:flex;align-items:center;gap:14px;text-transform:uppercase;letter-spacing:.18em;font-size:11px;font-weight:800;margin-bottom:28px}.eyebrow:before{content:"";width:28px;height:2px;background:currentColor}.hero h1{text-shadow:0 3px 18px rgba(0,0,0,.28);font-size:clamp(58px,8vw,118px);line-height:.9;letter-spacing:-.055em;max-width:1050px;margin:0 0 34px;font-weight:800}.hero h1 em{font-style:normal;font-weight:300}.hero-copy{text-shadow:0 2px 10px rgba(0,0,0,.3);max-width:650px;font-size:18px;line-height:1.7;opacity:.92;margin:0 0 34px}.button{display:inline-flex;align-items:center;gap:22px;background:var(--burgundy);color:#fff;padding:16px 24px;font-weight:800;font-size:13px;border-radius:12px!important;overflow:hidden}.button:hover,.button:hover *{background:var(--burgundy);color:#fff!important}.hero-corner{position:absolute;z-index:2;right:55px;top:145px;width:40px;height:40px;border-top:1px solid rgba(255,255,255,.55);border-right:1px solid rgba(255,255,255,.55)}
.section{padding:110px 28px}.container{max-width:var(--max);margin:auto}.kicker{text-transform:uppercase;letter-spacing:.18em;font-size:11px;font-weight:800;color:var(--burgundy);margin-bottom:14px}.section-title{font-size:clamp(42px,5vw,72px);line-height:.96;letter-spacing:-.045em;margin:0 0 26px}.section-intro{font-size:19px;color:var(--muted);max-width:760px}
.about{background:#fff}.about-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:90px;align-items:start}.about-body{font-size:19px;line-height:1.75}.about-aside{border-top:2px solid var(--burgundy);padding-top:20px}.number-list{display:grid;gap:18px}.number-item{display:grid;grid-template-columns:52px 1fr;gap:14px;padding:18px 0;border-bottom:1px solid var(--line)}.number-item strong{font-size:13px;color:var(--burgundy);letter-spacing:.1em}.number-item span{font-weight:800}
.purpose{background:var(--paper)}.purpose-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.purpose-card{background:#fff;padding:42px;border-top:3px solid var(--purple)}.purpose-card h3{font-size:32px;margin:0 0 18px}.purpose-card p{margin:0;color:var(--muted)}.mission{margin:0;padding-left:22px}.mission li{padding:10px 0;border-bottom:1px solid var(--line)}
.services{background:#17131a;color:#fff}.services .kicker{color:#d76a82}.services .section-intro{color:#c8c3ca}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.15);margin-top:55px}.service-card{background:#17131a;padding:34px;min-height:290px}.service-number{font-size:12px;color:#d76a82;letter-spacing:.16em}.service-card h3{font-size:27px;line-height:1.05;margin:55px 0 14px}.service-card p{color:#bbb5be;margin:0}
.details{background:#fff}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:52px}.detail-card{border:1px solid var(--line);padding:30px;position:relative;background:#fff}.detail-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(var(--burgundy),var(--purple))}.detail-card h3{font-size:27px;margin:0 0 6px}.detail-card .sub{font-size:13px;color:var(--burgundy);font-weight:800;margin-bottom:15px}.detail-card p{color:var(--muted);margin:0}
.support{background:linear-gradient(135deg,#fff 0%,#f5eef4 100%)}.support-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:50px}.support-card{background:#fff;border:1px solid rgba(82,40,112,.2);padding:28px;min-height:220px}.support-card .num{font-size:36px;font-weight:900;color:var(--purple);line-height:1}.support-card h3{font-size:20px;line-height:1.1;margin:20px 0 10px}.support-card p{font-size:14px;color:var(--muted);margin:0}
.future{color:#fff;background:linear-gradient(120deg,var(--burgundy),var(--purple));padding:90px 28px}.future-inner{max-width:var(--max);margin:auto;display:flex;align-items:end;justify-content:space-between;gap:40px}.future h2{font-size:clamp(42px,6vw,78px);line-height:.92;letter-spacing:-.05em;margin:0;max-width:850px}.future p{max-width:420px;margin:0;color:rgba(255,255,255,.82)}.future .button{background:var(--burgundy);color:#fff;white-space:nowrap;border-radius:12px!important;transition:background .2s ease,transform .2s ease}.future .button:hover,.future .button:hover *{background:var(--burgundy);color:#fff!important;transform:none}
.site-footer{background:#111116;color:#fff;padding:58px 28px 30px;border-top:1px solid rgba(255,255,255,.12)}.footer-inner{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:end}.footer-note{color:#aaa6ad;font-size:14px;max-width:560px;margin-top:16px}.footer-contact{display:flex;flex-direction:column;gap:13px;align-self:end}.footer-contact-item{display:flex;align-items:flex-start;gap:10px;color:#fff;font-size:14px;line-height:1.55;max-width:420px}.footer-contact-icon{width:18px;height:18px;display:inline-flex;flex:0 0 18px;margin-top:1px;color:#fff;transition:color .2s ease}.footer-contact-link{transition:color .2s ease}.footer-contact-link:hover{color:var(--custom-footer-hover,#7B3FC6)}.footer-contact-link:hover .footer-contact-icon{color:var(--custom-footer-hover,#7B3FC6)}.footer-contact-icon svg{width:18px;height:18px;display:block}.footer-brand-row{display:flex;align-items:center;gap:14px;margin-bottom:8px}.footer-logo{width:72px;height:72px;object-fit:contain}.footer-brand-text{font-size:22px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.footer-brand-text small{display:block;font-size:9px;letter-spacing:.18em;color:#aaa6ad;margin-top:7px}

/* Back to top */
.back-to-top{position:fixed;right:24px;bottom:24px;z-index:9999;width:48px;height:48px;border:0;border-radius:999px;background:var(--burgundy);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .2s ease,visibility .2s ease,transform .2s ease,background .2s ease,box-shadow .2s ease;box-shadow:0 10px 24px rgba(0,0,0,.18);font-size:20px;line-height:1}
.back-to-top.show{opacity:1;visibility:visible;transform:translateY(0)}
.back-to-top:hover{background:var(--custom-navbar-hover,var(--purple));color:#fff;box-shadow:0 12px 28px rgba(0,0,0,.24)}
@media(max-width:560px){.back-to-top{right:16px;bottom:16px;width:44px;height:44px;font-size:18px}}

@media(max-width:900px){.nav{display:none}.menu-toggle{display:block}.nav.open{display:flex;position:absolute;top:80px;left:20px;right:20px;background:#17131a;padding:22px;flex-direction:column;align-items:flex-start;gap:20px}.hero{min-height:720px}.hero-content{padding-top:150px}.about-grid,.purpose-grid{grid-template-columns:1fr;gap:45px}.service-grid,.support-grid{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr}.future-inner,.footer-inner{grid-template-columns:1fr;flex-direction:column;align-items:flex-start}.footer-contact{align-self:start;margin-top:4px}}
@media(max-width:560px){.section-title{font-size:48px!important;line-height:.98!important}.brand-logo{width:54px;height:54px}.brand-name{font-size:14px}.footer-logo{width:54px;height:54px}.footer-brand-text{font-size:18px}.header-inner{padding:17px 18px}.hero-content{padding:140px 18px 65px}.section{padding:78px 18px}.hero h1{text-shadow:0 3px 18px rgba(0,0,0,.28);font-size:54px}.hero-copy{text-shadow:0 2px 10px rgba(0,0,0,.3);font-size:16px}.hero-corner{right:20px}.purpose-card{padding:28px}.service-card{min-height:240px}}

/* Final hero description cleanup */
.hero .hero-copy{max-width:640px!important;font-size:19px;line-height:1.7;opacity:1;margin:0 0 34px;padding:0;border:0;background:transparent;text-shadow:0 2px 9px rgba(0,0,0,.48)}
.hero .hero-copy:before{
  content:""!important;
  display:block!important;
  width:34px!important;
  height:2px!important;
  background:var(--burgundy)!important;
  margin:0 0 16px!important;
}

.hero .hero-copy br{display:block}
@media(max-width:700px){
  .hero .hero-copy{max-width:92%!important;font-size:17px!important;line-height:1.65}
}

/* Hero title → description spacing */
.hero h1{
  margin-bottom:48px!important;
}
@media(max-width:700px){
  .hero h1{
    margin-bottom:36px!important;
  }
}

/* v3.0 button radius hard override */
.button,.nav-cta,.future .button{border-radius:12px!important;}

/* v3.1: preserve the full-resolution hero source without visual filters */
.hero.has-image{filter:none!important;}
.hero.has-image:after{content:""!important;display:block!important;position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(115deg,rgba(82,40,112,.72) 0%,rgba(82,40,112,.48) 38%,rgba(82,40,112,.18) 72%,rgba(17,17,22,.28) 100%)!important;}

/* v3.2: mobile hero clarity - reduce unnecessary upscaling and preserve full-res source */
@media(max-width:560px){
  .hero{min-height:640px!important;background-size:cover!important;background-position:center center!important;}
  .hero.has-image{background-image:var(--hero-image)!important;background-repeat:no-repeat!important;}
}

/* v3.3: always use the original uploaded hero source; no image filters or quality reduction */
.hero.has-image{filter:none!important;image-rendering:auto!important;}


/* v3.4: render the hero as a real image so mobile browsers receive the original source directly. */
.hero{isolation:isolate;}
.hero-media{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;object-position:center center;z-index:0;filter:none!important;image-rendering:auto;}
.hero-content,.hero-corner{z-index:2;}
.hero.has-image{background-image:none!important;}
@media(max-width:560px){
  .hero{min-height:640px!important;}
  .hero-media{object-position:center center;}
}


/* v4.7 CTA hard override: Contact Us stays burgundy with white text */
.future .button, .future .button:link, .future .button:visited,
.future .button:hover, .future .button:focus, .future .button:active,
.future .button:hover span, .future .button:focus span, .future .button:active span {
  background: #AF2E46 !important;
  background-color: #AF2E46 !important;
  color: #FFFFFF !important;
  border-color: #AF2E46 !important;
  box-shadow: none !important;
  text-shadow: none !important;
}

/* v4.8 navbar CTA hover: keep text white while background turns purple */
.nav .nav-cta,
.nav .nav-cta:link,
.nav .nav-cta:visited,
.nav .nav-cta:hover,
.nav .nav-cta:focus,
.nav .nav-cta:active,
.nav .nav-cta:hover span,
.nav .nav-cta:focus span,
.nav .nav-cta:active span {
  color:#fff!important;
}
.nav .nav-cta:hover,
.nav .nav-cta:focus,
.nav .nav-cta:active {
  background:#522870!important;
  border-color:#522870!important;
}

/* v4.9: navbar CTA exact override */
.site-header .header-inner .nav > a.nav-cta,
.site-header .header-inner .nav > a.nav-cta:link,
.site-header .header-inner .nav > a.nav-cta:visited {
  background-color:#AF2E46 !important;
  background:#AF2E46 !important;
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
  border-color:#AF2E46 !important;
  opacity:1 !important;
}
.site-header .header-inner .nav > a.nav-cta:hover,
.site-header .header-inner .nav > a.nav-cta:focus,
.site-header .header-inner .nav > a.nav-cta:active {
  background-color:#522870 !important;
  background:#522870 !important;
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
  border-color:#522870 !important;
  opacity:1 !important;
}
.site-header .header-inner .nav > a.nav-cta *,
.site-header .header-inner .nav > a.nav-cta:hover *,
.site-header .header-inner .nav > a.nav-cta:focus *,
.site-header .header-inner .nav > a.nav-cta:active * {
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
}


/* v4.13: all CTA buttons have a visible purple hover while text stays white */
.button:hover,
.button:focus,
.button:active,
.button:hover span,
.button:focus span,
.button:active span {
  background:#522870 !important;
  background-color:#522870 !important;
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
  border-color:#522870 !important;
  box-shadow:0 6px 18px rgba(82,40,112,.28) !important;
}

/* Navbar links: visible purple hover, white text */
.site-header .header-inner .nav > a:not(.nav-cta):hover,
.site-header .header-inner .nav > a:not(.nav-cta):focus {
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
  background:#522870 !important;
  border-color:#522870 !important;
}

/* v4.14 FINAL HOVER OVERRIDE - must be last */
.nav > a:not(.nav-cta) {
  transition: all .2s ease !important;
}
.nav > a:not(.nav-cta):hover,
.nav > a:not(.nav-cta):focus-visible,
.nav > a:not(.nav-cta):active {
  background-color: #522870 !important;
  background: #522870 !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  border-color: #522870 !important;
  box-shadow: 0 5px 16px rgba(82,40,112,.45) !important;
  border-radius: 8px !important;
}
.nav > a.nav-cta:hover,
.nav > a.nav-cta:focus-visible,
.nav > a.nav-cta:active {
  background-color: #522870 !important;
  background: #522870 !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  border-color: #522870 !important;
  box-shadow: 0 5px 16px rgba(82,40,112,.45) !important;
}
.button:hover,
.button:focus-visible,
.button:active,
.button:hover span,
.button:focus-visible span,
.button:active span,
.future .button:hover,
.future .button:focus-visible,
.future .button:active {
  background-color: #522870 !important;
  background: #522870 !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  border-color: #522870 !important;
  box-shadow: 0 6px 18px rgba(82,40,112,.35) !important;
}
@media (hover: none) {
  .nav > a:active,
  .button:active,
  .nav > a.nav-cta:active {
    background-color: #522870 !important;
    background: #522870 !important;
    color: #FFFFFF !important;
  }
}

/* v4.17: FINAL CTA hover override - defeats legacy future/button rules */
a.button,
a.button:link,
a.button:visited {
  background-color:#AF2E46 !important;
  background:#AF2E46 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border-color:#AF2E46 !important;
  transition:background-color .22s ease, background .22s ease, color .22s ease, box-shadow .22s ease, transform .22s ease !important;
}
a.button:hover,
a.button:focus-visible,
a.button:active,
.hero a.button:hover,
.hero a.button:focus-visible,
.hero a.button:active,
.future a.button:hover,
.future a.button:focus-visible,
.future a.button:active {
  background-color:#7B3FC6 !important;
  background:#7B3FC6 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border-color:#522870 !important;
  box-shadow:0 6px 18px rgba(82,40,112,.38) !important;
  transform:translateY(-1px) !important;
}
a.button:hover span,
a.button:focus-visible span,
a.button:active span {
  background:transparent !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

/* v4.17: brighter purple hover for visibility on dark/photographic hero */
/* v4.22: navbar hover is color-only; keep previous transparent hover appearance */
.nav > a:not(.nav-cta):hover,
.nav > a:not(.nav-cta):focus-visible,
.nav > a:not(.nav-cta):active {
  background:transparent !important;
  background-color:transparent !important;
  color:#7B3FC6 !important;
  -webkit-text-fill-color:#7B3FC6 !important;
  border-color:transparent !important;
  box-shadow:none !important;
  border-radius:0 !important;
}
.site-header .header-inner .nav > a.nav-cta:hover,
.site-header .header-inner .nav > a.nav-cta:focus-visible,
.site-header .header-inner .nav > a.nav-cta:active {
  background:#AF2E46 !important;
  background-color:#AF2E46 !important;
  color:#7B3FC6 !important;
  -webkit-text-fill-color:#7B3FC6 !important;
  border-color:#AF2E46 !important;
  box-shadow:none !important;
}


/* v4.20: keep navbar CTA dimensions identical on normal/hover/focus/active */
.site-header .header-inner .nav > a.nav-cta,
.site-header .header-inner .nav > a.nav-cta:hover,
.site-header .header-inner .nav > a.nav-cta:focus,
.site-header .header-inner .nav > a.nav-cta:focus-visible,
.site-header .header-inner .nav > a.nav-cta:active {
  box-sizing:border-box!important;
  padding:11px 22px!important;
  margin:0!important;
  line-height:1.2!important;
  min-height:42px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  transform:none!important;
}


/* v4.21: keep every CTA/button dimension identical on hover */
a.button, a.button:hover, a.button:focus, a.button:focus-visible, a.button:active,
.site-header .header-inner .nav > a.nav-cta,
.site-header .header-inner .nav > a.nav-cta:hover,
.site-header .header-inner .nav > a.nav-cta:focus,
.site-header .header-inner .nav > a.nav-cta:focus-visible,
.site-header .header-inner .nav > a.nav-cta:active {
  box-sizing:border-box!important;
  padding:16px 24px!important;
  margin:0!important;
  min-height:48px!important;
  line-height:1.2!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  transform:none!important;
}
.site-header .header-inner .nav > a.nav-cta,
.site-header .header-inner .nav > a.nav-cta:hover,
.site-header .header-inner .nav > a.nav-cta:focus,
.site-header .header-inner .nav > a.nav-cta:focus-visible,
.site-header .header-inner .nav > a.nav-cta:active {
  padding:11px 22px!important;
  min-height:42px!important;
}

/* v4.25: FINAL navbar hover - text color only, absolutely no hover box */
.site-header .header-inner .nav > a:not(.nav-cta),
.site-header .header-inner .nav > a:not(.nav-cta):hover,
.site-header .header-inner .nav > a:not(.nav-cta):focus,
.site-header .header-inner .nav > a:not(.nav-cta):focus-visible,
.site-header .header-inner .nav > a:not(.nav-cta):active {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border-color: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
.site-header .header-inner .nav > a:not(.nav-cta):hover,
.site-header .header-inner .nav > a:not(.nav-cta):focus-visible,
.site-header .header-inner .nav > a:not(.nav-cta):active {
  color: #7B3FC6 !important;
  -webkit-text-fill-color: #7B3FC6 !important;
}
.site-header .header-inner .nav > a.nav-cta,
.site-header .header-inner .nav > a.nav-cta:hover,
.site-header .header-inner .nav > a.nav-cta:focus,
.site-header .header-inner .nav > a.nav-cta:focus-visible,
.site-header .header-inner .nav > a.nav-cta:active {
  background: #AF2E46 !important;
  background-color: #AF2E46 !important;
  background-image: none !important;
  border-color: #AF2E46 !important;
  box-shadow: none !important;
}
.site-header .header-inner .nav > a.nav-cta:hover,
.site-header .header-inner .nav > a.nav-cta:focus-visible,
.site-header .header-inner .nav > a.nav-cta:active {
  color: #7B3FC6 !important;
  -webkit-text-fill-color: #7B3FC6 !important;
}

/* v4.25: HARD RESET NAV LINK HOVER — text color only, no box/padding/shadow */
.site-header .header-inner .nav > a:not(.nav-cta),
.site-header .header-inner .nav > a:not(.nav-cta):hover,
.site-header .header-inner .nav > a:not(.nav-cta):focus,
.site-header .header-inner .nav > a:not(.nav-cta):focus-visible,
.site-header .header-inner .nav > a:not(.nav-cta):active {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  border-color: transparent !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  transform: none !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
.site-header .header-inner .nav > a:not(.nav-cta):hover,
.site-header .header-inner .nav > a:not(.nav-cta):focus-visible,
.site-header .header-inner .nav > a:not(.nav-cta):active {
  color: #7B3FC6 !important;
  -webkit-text-fill-color: #7B3FC6 !important;
}

/* Keep navbar CTA burgundy; only its text changes on hover */
.site-header .header-inner .nav > a.nav-cta,
.site-header .header-inner .nav > a.nav-cta:hover,
.site-header .header-inner .nav > a.nav-cta:focus,
.site-header .header-inner .nav > a.nav-cta:focus-visible,
.site-header .header-inner .nav > a.nav-cta:active {
  background: #AF2E46 !important;
  background-color: #AF2E46 !important;
  background-image: none !important;
  border-color: #AF2E46 !important;
  box-shadow: none !important;
  transform: none !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
.site-header .header-inner .nav > a.nav-cta:hover,
.site-header .header-inner .nav > a.nav-cta:focus-visible,
.site-header .header-inner .nav > a.nav-cta:active {
  background: #7B3FC6 !important;
  background-color: #7B3FC6 !important;
  border-color: #7B3FC6 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
.site-header .header-inner .nav > a.nav-cta:hover *,
.site-header .header-inner .nav > a.nav-cta:focus-visible *,
.site-header .header-inner .nav > a.nav-cta:active * {
  color: #7B3FC6 !important;
  -webkit-text-fill-color: #7B3FC6 !important;
}

/* v4.28: increase CTA text-to-button spacing */
.future .future-inner > div:last-child .button {
  display: inline-flex !important;
  margin-top: 32px !important;
}
@media (min-width: 901px) {
  .future .future-inner > div:last-child .button {
    margin-top: 40px !important;
  }
}


/* v4.30: unify all hover accents with the bright Discover button purple */
.nav > a:not(.nav-cta):hover,
.nav > a:not(.nav-cta):focus-visible,
.nav > a:not(.nav-cta):active {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  border-color: transparent !important;
  color: #7B3FC6 !important;
  -webkit-text-fill-color: #7B3FC6 !important;
}
.site-header .header-inner .nav > a.nav-cta:hover,
.site-header .header-inner .nav > a.nav-cta:focus-visible,
.site-header .header-inner .nav > a.nav-cta:active {
  background: #7B3FC6 !important;
  background-color: #7B3FC6 !important;
  background-image: none !important;
  border-color: #7B3FC6 !important;
  box-shadow: none !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
a.button:hover, a.button:focus-visible, a.button:active,
.future .button:hover, .future .button:focus-visible, .future .button:active {
  background: #7B3FC6 !important;
  background-color: #7B3FC6 !important;
  border-color: #7B3FC6 !important;
  box-shadow: 0 6px 18px rgba(123,63,198,.35) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
a.button:hover span, a.button:focus-visible span, a.button:active span {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: transparent !important;
}
.footer-contact-link:hover, .footer-contact-link:hover .footer-contact-icon {
  color: #7B3FC6 !important;
}


/* v4.31: unify visible CTA/button color with Discover purple. */
.site-header .header-inner .nav > a.nav-cta,
.site-header .header-inner .nav > a.nav-cta:link,
.site-header .header-inner .nav > a.nav-cta:visited,
.site-header .header-inner .nav > a.nav-cta:hover,
.site-header .header-inner .nav > a.nav-cta:focus,
.site-header .header-inner .nav > a.nav-cta:focus-visible,
.site-header .header-inner .nav > a.nav-cta:active {
  background:#7B3FC6 !important;
  background-color:#7B3FC6 !important;
  background-image:none !important;
  border-color:#7B3FC6 !important;
  box-shadow:none !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  opacity:1 !important;
}
.site-header .header-inner .nav > a.nav-cta *,
.site-header .header-inner .nav > a.nav-cta:hover *,
.site-header .header-inner .nav > a.nav-cta:focus *,
.site-header .header-inner .nav > a.nav-cta:active * {
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
a.button, a.button:link, a.button:visited,
.future .button, .future .button:link, .future .button:visited {
  background:#7B3FC6 !important;
  background-color:#7B3FC6 !important;
  border-color:#7B3FC6 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
a.button:hover, a.button:focus, a.button:focus-visible, a.button:active,
.future .button:hover, .future .button:focus, .future .button:focus-visible, .future .button:active {
  background:#7B3FC6 !important;
  background-color:#7B3FC6 !important;
  border-color:#7B3FC6 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
.footer-contact-link:hover, .footer-contact-link:hover .footer-contact-icon {
  color:#7B3FC6 !important;
}

/* v4.32: FINAL COLOR STATES
   Normal buttons remain burgundy. Purple is reserved for hover.
   Text-only navbar links get purple text on hover without a box.
   Navbar CTA gets purple background on hover with white text.
*/
a.button,
a.button:link,
a.button:visited,
.future .button,
.future .button:link,
.future .button:visited {
  background: #AF2E46 !important;
  background-color: #AF2E46 !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  border-color: #AF2E46 !important;
  box-shadow: none !important;
}

a.button:hover,
a.button:focus-visible,
a.button:active,
.future .button:hover,
.future .button:focus-visible,
.future .button:active {
  background: #7B3FC6 !important;
  background-color: #7B3FC6 !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  border-color: #7B3FC6 !important;
  box-shadow: none !important;
}

/* Navbar text links: purple text only on hover. */
.site-header .header-inner .nav > a:not(.nav-cta),
.site-header .header-inner .nav > a:not(.nav-cta):link,
.site-header .header-inner .nav > a:not(.nav-cta):visited {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
}
.site-header .header-inner .nav > a:not(.nav-cta):hover,
.site-header .header-inner .nav > a:not(.nav-cta):focus-visible,
.site-header .header-inner .nav > a:not(.nav-cta):active {
  background: transparent !important;
  background-color: transparent !important;
  color: #7B3FC6 !important;
  -webkit-text-fill-color: #7B3FC6 !important;
  box-shadow: none !important;
  border-color: transparent !important;
}

/* Navbar Contact Us: burgundy normally, bright purple on hover, white text. */
.site-header .header-inner .nav > a.nav-cta,
.site-header .header-inner .nav > a.nav-cta:link,
.site-header .header-inner .nav > a.nav-cta:visited {
  background: #AF2E46 !important;
  background-color: #AF2E46 !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  border-color: #AF2E46 !important;
  box-shadow: none !important;
}
.site-header .header-inner .nav > a.nav-cta:hover,
.site-header .header-inner .nav > a.nav-cta:focus-visible,
.site-header .header-inner .nav > a.nav-cta:active {
  background: #7B3FC6 !important;
  background-color: #7B3FC6 !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  border-color: #7B3FC6 !important;
  box-shadow: none !important;
}
.site-header .header-inner .nav > a.nav-cta:hover *,
.site-header .header-inner .nav > a.nav-cta:focus-visible *,
.site-header .header-inner .nav > a.nav-cta:active * {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}

/* Footer contact: normal white, bright purple on hover. */
.footer-contact-link {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}
.footer-contact-link:hover,
.footer-contact-link:focus-visible,
.footer-contact-link:active,
.footer-contact-link:hover .footer-contact-icon,
.footer-contact-link:focus-visible .footer-contact-icon,
.footer-contact-link:active .footer-contact-icon {
  color: #7B3FC6 !important;
  -webkit-text-fill-color: #7B3FC6 !important;
}

/* v4.34: bright hover for navbar + footer only */
.site-header .header-inner .nav > a:not(.nav-cta):hover,
.site-header .header-inner .nav > a:not(.nav-cta):focus-visible,
.site-header .header-inner .nav > a:not(.nav-cta):active {
  color: #A855F7 !important;
  -webkit-text-fill-color: #A855F7 !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
}
.site-header .header-inner .nav > a.nav-cta:hover,
.site-header .header-inner .nav > a.nav-cta:focus-visible,
.site-header .header-inner .nav > a.nav-cta:active {
  background: #A855F7 !important;
  background-color: #A855F7 !important;
  border-color: #A855F7 !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  box-shadow: none !important;
}
.site-header .header-inner .nav > a.nav-cta:hover *,
.site-header .header-inner .nav > a.nav-cta:focus-visible *,
.site-header .header-inner .nav > a.nav-cta:active * {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}
.footer-contact-link:hover,
.footer-contact-link:focus-visible,
.footer-contact-link:active,
.footer-contact-link:hover .footer-contact-icon,
.footer-contact-link:focus-visible .footer-contact-icon,
.footer-contact-link:active .footer-contact-icon {
  color: #A855F7 !important;
  -webkit-text-fill-color: #A855F7 !important;
  opacity: 1 !important;
}
