/* ==========================================================
   EUstate Theme v1.4.1
   Bright visual system + icon repair + readable footer
   ========================================================== */

:root{
  --eus-brand-navy:#1e3a8a;
  --eus-brand-blue:#1d4ed8;
  --eus-brand-bright:#2563eb;
  --eus-brand-light:#3b82f6;
  --eus-brand-gold:#ffd43b;
  --eus-brand-gold-strong:#f4bd17;
  --eus-ink:#17305f;
  --eus-copy:#506a9c;
  --eus-soft-blue:#eef4ff;
  --eus-soft-blue-2:#f5f8ff;
  --eus-soft-shadow:0 18px 46px rgba(30,58,138,.12);
}

/* ---------- Icon safety, fixes black filled paths/circles ---------- */
.eustate-theme svg{
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.eustate-theme svg path,
.eustate-theme svg circle,
.eustate-theme svg rect,
.eustate-theme svg line,
.eustate-theme svg polyline,
.eustate-theme svg polygon{
  vector-effect:non-scaling-stroke;
}

/* Intentional filled decorative EU stars are text glyphs, not SVGs. */

/* ---------- Header ---------- */
.eus-site-header{
  border-bottom-color:rgba(30,58,138,.09);
  box-shadow:0 6px 22px rgba(30,58,138,.035);
}
.eus-desktop-nav a{
  color:#40577f;
  font-size:13px;
  font-weight:780;
}
.eus-desktop-nav a:hover{
  background:#eef4ff;
  color:var(--eus-brand-blue);
}
.eus-header-search,
.eus-market-button,
.eus-account-button{
  border-color:#dce6f5;
}
.eus-header-search{
  color:var(--eus-brand-blue);
}
.eus-market-icon{
  color:var(--eus-brand-blue);
}
.eus-market-button small,
.eus-account-copy small{
  color:#7185aa!important;
  opacity:1!important;
}
.eus-market-button strong,
.eus-account-copy strong{
  color:#274169;
}
.eus-account-avatar{
  background:linear-gradient(145deg,var(--eus-brand-navy),var(--eus-brand-blue))!important;
  color:#fff!important;
}

/* ---------- Hero, brighter without losing readability ---------- */
.eustate-homepage .eus-home-hero-v140{
  background:var(--eus-brand-navy);
}
.eustate-homepage .eus-hero-v140-overlay{
  background:
    radial-gradient(circle at 50% 30%,rgba(59,130,246,.12),transparent 34%),
    linear-gradient(180deg,rgba(30,58,138,.28) 0%,rgba(30,58,138,.38) 42%,rgba(30,58,138,.62) 100%);
}
.eustate-homepage .eus-hero-v140-overlay:after{
  height:110px;
  background:linear-gradient(180deg,transparent,rgba(30,58,138,.28));
}
.eustate-homepage .eus-eu-star-ring b{
  color:#fff;
  border-color:rgba(255,255,255,.32);
  background:rgba(30,58,138,.36);
}
.eustate-homepage .eus-hero-v140-pills>span,
.eustate-homepage .eus-hero-v140-pills>button{
  background:rgba(30,58,138,.45);
  border-color:rgba(255,255,255,.25);
  color:#fff;
}
.eustate-homepage .eus-hero-v140-pills>button svg{
  color:var(--eus-brand-gold);
}
.eustate-homepage .eus-hero-v140-content>p{
  color:rgba(255,255,255,.94);
  font-size:17px;
  font-weight:520;
}
.eustate-homepage .eus-hero-gold-button{
  background:linear-gradient(135deg,#ffe164,var(--eus-brand-gold));
  color:var(--eus-brand-navy)!important;
  box-shadow:0 14px 34px rgba(244,189,23,.26);
}
.eustate-homepage .eus-hero-gold-button svg{
  color:var(--eus-brand-navy);
}
.eustate-homepage .eus-hero-ghost-button{
  background:rgba(37,99,235,.25);
  color:#fff!important;
  border-color:rgba(255,255,255,.42);
}
.eustate-homepage .eus-hero-ghost-button svg{
  color:#9cc5ff;
}
.eustate-homepage .eus-hero-v140-stats{
  width:min(760px,100%);
  margin-top:38px;
  border-color:rgba(255,255,255,.22);
  background:rgba(30,58,138,.50);
  box-shadow:0 19px 46px rgba(12,35,88,.15);
}
.eustate-homepage .eus-hero-v140-stats>div{
  min-height:88px;
  padding:17px 18px;
  background:rgba(255,255,255,.045);
}
.eustate-homepage .eus-hero-v140-stats strong{
  color:var(--eus-brand-gold);
  font-size:22px;
  line-height:1.1;
}
.eustate-homepage .eus-hero-v140-stats span{
  margin-top:7px;
  color:#fff;
  font-size:9px;
  font-weight:800;
  letter-spacing:.09em;
}
.eustate-homepage .eus-hero-v140-scroll{
  color:rgba(255,255,255,.82)!important;
}

/* ---------- Search ---------- */
.eustate-homepage .eus-search-box-v140{
  border-color:#d9e4f4;
  box-shadow:0 28px 64px rgba(30,58,138,.16);
}
.eustate-homepage .eus-search-tabs-v140{
  background:#edf3fd;
}
.eustate-homepage .eus-search-tabs-v140 input:checked+span{
  color:var(--eus-brand-blue);
}
.eustate-homepage .eus-search-field-v140>span{
  color:#6f85ad;
}
.eustate-homepage .eus-search-field-v140 input,
.eustate-homepage .eus-search-field-v140 select{
  color:#213c69!important;
}
.eustate-homepage .eus-search-button-v140{
  background:linear-gradient(135deg,var(--eus-brand-navy),var(--eus-brand-blue));
  color:#fff;
}
.eustate-homepage .eus-search-button-v140 svg{
  color:#fff;
}
.eustate-homepage .eus-search-bottom-v140{
  color:#607aa8;
}
.eustate-homepage .eus-search-bottom-v140 svg{
  color:var(--eus-brand-blue);
}
.eustate-homepage .eus-search-bottom-v140>div span:first-child svg{
  color:#10a36c;
}

/* ---------- Homepage background harmony ---------- */
.eustate-homepage .eus-featured-banner-v140{background:#f7f9ff}
.eustate-homepage .eus-section-sand{
  background:linear-gradient(180deg,#f7f9ff 0%,#eef4ff 100%)!important;
}
.eustate-homepage .eus-section-mint{
  background:linear-gradient(180deg,#eef5ff 0%,#f7faff 100%)!important;
}
.eustate-homepage .eus-section-sky{
  background:linear-gradient(180deg,#f8fbff 0%,#eef4ff 100%)!important;
}
.eustate-homepage .eus-section-lilac{
  background:linear-gradient(180deg,#f1f5ff 0%,#f7f9ff 100%)!important;
}
.eustate-homepage .eus-section-peach{
  background:linear-gradient(180deg,#f7f9ff 0%,#edf4ff 100%)!important;
}
.eustate-homepage .eus-section-aqua{
  background:linear-gradient(180deg,#eef7ff 0%,#f7fbff 100%)!important;
}
.eustate-homepage .eus-section-cream{
  background:linear-gradient(180deg,#f8fbff 0%,#eef5ff 100%)!important;
}
.eustate-homepage .eus-section-rose{
  background:linear-gradient(180deg,#f4f7ff 0%,#edf4ff 100%)!important;
}
.eustate-homepage .eus-section-lilac-soft{
  background:linear-gradient(180deg,#eef3ff 0%,#f7f9ff 100%)!important;
}
.eustate-homepage .eus-section-aqua-soft{
  background:linear-gradient(180deg,#eef7ff 0%,#f5f9ff 100%)!important;
}
.eustate-homepage .eus-section-night-soft{
  background:linear-gradient(180deg,#eaf1ff 0%,#f4f8ff 100%)!important;
}
.eustate-homepage .eus-section-faq{
  background:linear-gradient(180deg,#f7faff 0%,#edf4ff 100%)!important;
}
.eustate-homepage .eus-section-editorial{
  background:linear-gradient(180deg,#eef4ff 0%,#e7effd 100%)!important;
}
.eustate-homepage .eus-home-journal-section{
  background:linear-gradient(180deg,#f8fbff,#eef4ff)!important;
}

/* Strong headings, no dim section text */
.eustate-homepage .eus-section-head-copy h2{
  color:#153263;
}
.eustate-homepage .eus-section-head-copy p{
  color:#526b99;
  opacity:1;
  font-size:13px;
}
.eustate-homepage .eus-eyebrow{
  color:var(--eus-brand-blue);
}
.eustate-homepage .eus-section-head-icon{
  border-color:#cfe0f7;
  background:#e8f1ff;
  color:var(--eus-brand-blue);
}

/* Cards */
.eustate-homepage .eus-category-card,
.eustate-homepage .eus-property-card,
.eustate-homepage .eus-stay-card,
.eustate-homepage .eus-tool-card,
.eustate-homepage .eus-trust-grid>article,
.eustate-homepage .eus-faq-list details{
  border-color:#dbe6f5!important;
  box-shadow:0 10px 28px rgba(30,58,138,.07);
}
.eustate-homepage .eus-category-card:hover,
.eustate-homepage .eus-property-card:hover,
.eustate-homepage .eus-stay-card:hover,
.eustate-homepage .eus-tool-card:hover,
.eustate-homepage .eus-trust-grid>article:hover,
.eustate-homepage .eus-faq-list details:hover{
  border-color:#a8c6f1!important;
  box-shadow:0 20px 45px rgba(29,78,216,.13);
}

/* Market pulse */
.eustate-homepage .eus-home-stats-band{
  background:
    radial-gradient(circle at 10% 10%,rgba(147,197,253,.22),transparent 24%),
    linear-gradient(110deg,var(--eus-brand-navy) 0%,var(--eus-brand-blue) 64%,var(--eus-brand-bright) 100%)!important;
}
.eustate-homepage .eus-home-stats-grid article{
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.18);
}
.eustate-homepage .eus-home-stats-grid article>span{
  color:#8fc0ff;
}
.eustate-homepage .eus-home-stats-grid article>span svg{
  color:#8fc0ff;
}
.eustate-homepage .eus-home-stats-grid strong{
  color:#fff;
}
.eustate-homepage .eus-home-stats-grid small{
  color:var(--eus-brand-gold);
}

/* ---------- Deals, force correct light typography ---------- */
.eustate-homepage .eus-deals-section{
  background:
    radial-gradient(circle at 88% 12%,rgba(147,197,253,.24),transparent 26%),
    linear-gradient(112deg,var(--eus-brand-navy),var(--eus-brand-blue) 62%,var(--eus-brand-bright))!important;
}
.eustate-homepage .eus-deals-section .eus-section-head-icon{
  background:rgba(255,255,255,.13)!important;
  border-color:rgba(255,255,255,.26)!important;
  color:var(--eus-brand-gold)!important;
}
.eustate-homepage .eus-deals-section .eus-eyebrow,
.eustate-homepage .eus-deals-section .eus-section-head-copy h2,
.eustate-homepage .eus-deals-section .eus-section-head-copy p{
  color:#fff!important;
  opacity:1!important;
}
.eustate-homepage .eus-deals-section .eus-eyebrow{
  color:#9ec6ff!important;
}
.eustate-homepage .eus-launch-empty-dark,
.eustate-homepage .eus-launch-empty-deals{
  background:rgba(255,255,255,.10)!important;
  border-color:rgba(255,255,255,.22)!important;
}
.eustate-homepage .eus-launch-empty-dark strong,
.eustate-homepage .eus-launch-empty-dark span,
.eustate-homepage .eus-launch-empty-deals strong,
.eustate-homepage .eus-launch-empty-deals span{
  color:#fff!important;
  opacity:1!important;
}

/* ---------- Journal ---------- */
.eustate-homepage .eus-journal-featured,
.eustate-homepage .eus-journal-list article{
  border-color:#d8e4f4;
}
.eustate-homepage .eus-journal-featured-copy h3,
.eustate-homepage .eus-journal-list h3{
  color:#153263;
}
.eustate-homepage .eus-journal-featured-copy p,
.eustate-homepage .eus-journal-list p,
.eustate-homepage .eus-journal-meta{
  color:#536c99;
  opacity:1;
}
.eustate-homepage .eus-journal-read,
.eustate-homepage .eus-journal-view-all{
  color:var(--eus-brand-blue);
}

/* ---------- Professionals ---------- */
.eustate-homepage .eus-pro-cta{
  background:
    radial-gradient(circle at 88% 12%,rgba(147,197,253,.24),transparent 26%),
    linear-gradient(112deg,var(--eus-brand-navy),var(--eus-brand-blue) 64%,var(--eus-brand-bright))!important;
}
.eustate-homepage .eus-pro-cta p{
  color:#fff!important;
  opacity:.92!important;
}

/* ---------- Footer: larger and brighter ---------- */
.eus-site-footer{
  padding:78px 0 32px!important;
  background:
    radial-gradient(circle at 7% 9%,rgba(147,197,253,.24),transparent 24%),
    radial-gradient(circle at 94% 5%,rgba(255,212,59,.10),transparent 18%),
    linear-gradient(112deg,var(--eus-brand-navy) 0%,var(--eus-brand-blue) 62%,var(--eus-brand-bright) 100%)!important;
}
.eus-site-footer .eus-footer-top{
  gap:64px;
}
.eus-site-footer .eus-footer-brand{
  max-width:420px;
}
.eus-footer-brand-visual{
  min-height:72px;
  display:flex;
  align-items:center;
  margin-bottom:17px;
}
.eus-footer-brand-visual.has-image{
  min-height:96px;
  padding:13px 16px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:18px;
  background:rgba(255,255,255,.07);
}
.eus-footer-brand-visual img{
  display:block;
  max-width:240px;
  max-height:72px;
  width:auto;
  height:auto;
  object-fit:contain;
}
.eus-site-footer .eus-brand-footer{
  color:#fff!important;
  font-size:34px!important;
}
.eus-site-footer .eus-brand-footer small{
  color:#bcd7ff!important;
  font-size:11px!important;
}
.eus-site-footer .eus-footer-brand>p{
  max-width:390px!important;
  margin-top:13px;
  color:#fff!important;
  opacity:.94!important;
  font-size:15px!important;
  line-height:1.75!important;
}
.eus-site-footer .eus-footer-pills{
  margin-top:18px;
  gap:9px;
}
.eus-site-footer .eus-footer-pills span{
  padding:8px 11px!important;
  border-color:rgba(255,255,255,.22)!important;
  background:rgba(255,255,255,.10)!important;
  color:#fff!important;
  font-size:11px!important;
  font-weight:780!important;
}
.eus-site-footer .eus-footer-pills b{
  color:#fff;
}
.eus-site-footer .eus-footer-columns{
  gap:58px;
}
.eus-site-footer .eus-footer-columns h3{
  margin-bottom:15px!important;
  color:var(--eus-brand-gold)!important;
  font-size:15px!important;
  font-weight:900!important;
  letter-spacing:.015em!important;
}
.eus-site-footer .eus-footer-columns a{
  margin:2px -8px!important;
  padding:7px 8px!important;
  color:#fff!important;
  opacity:.92!important;
  font-size:13px!important;
  font-weight:650!important;
  line-height:1.45!important;
}
.eus-site-footer .eus-footer-columns a:hover{
  transform:translateX(4px);
  background:rgba(255,255,255,.11)!important;
  color:#fff!important;
  opacity:1!important;
}
.eus-site-footer .eus-footer-bottom{
  margin-top:50px!important;
  padding-top:23px!important;
  border-top-color:rgba(255,255,255,.20)!important;
  color:#fff!important;
  opacity:.86!important;
  font-size:11px!important;
}

/* ---------- Mobile ---------- */
@media(max-width:900px){
  .eus-site-footer .eus-footer-top{
    gap:38px;
  }
  .eus-site-footer .eus-footer-columns{
    gap:28px;
  }
}

@media(max-width:720px){
  .eustate-homepage .eus-hero-v140-stats{
    width:100%;
    grid-template-columns:repeat(3,1fr);
  }
  .eustate-homepage .eus-hero-v140-stats>div{
    min-height:72px;
    padding:12px 7px;
  }
  .eustate-homepage .eus-hero-v140-stats strong{
    font-size:16px;
  }
  .eustate-homepage .eus-hero-v140-stats span{
    font-size:7px;
    letter-spacing:.045em;
  }

  .eus-site-footer{
    padding:58px 0 104px!important;
  }
  .eus-site-footer .eus-footer-brand{
    max-width:none;
  }
  .eus-site-footer .eus-footer-brand>p{
    font-size:14px!important;
  }
  .eus-site-footer .eus-footer-columns h3{
    font-size:14px!important;
  }
  .eus-site-footer .eus-footer-columns a{
    font-size:13px!important;
  }
  .eus-site-footer .eus-footer-bottom{
    font-size:10px!important;
  }
}

/* Make mobile bottom nav icons clean, never black-filled. */
.eus-mobile-bottom-nav svg{
  fill:none!important;
  stroke:currentColor!important;
}
.eus-mobile-bottom-nav a{
  color:#667ca6;
}
.eus-mobile-bottom-nav a.active,
.eus-mobile-bottom-nav a:hover{
  color:var(--eus-brand-blue);
}
.eus-mobile-bottom-nav .eus-mobile-search span{
  background:linear-gradient(145deg,var(--eus-brand-navy),var(--eus-brand-blue))!important;
  color:#fff!important;
}
