/* ============================================================
   site-polish.css — professional polish layer for mesmeron.com
   Loaded last so it overrides theme defaults. Accent: #4f46e5
   ============================================================ */
:root{
  --brand:#4f46e5;
  --brand-dark:#4338ca;
  --brand-soft:rgba(79,70,229,.10);
  --ink:#1d2330;
  --muted:#5b6172;
}

/* ---- 1. Neutralize the heavy red/indigo custom scrollbar ---- */
html{scrollbar-width:thin;scrollbar-color:#c5c7d0 transparent;}
::-webkit-scrollbar{width:12px;height:12px;}
::-webkit-scrollbar-track{background:transparent !important;box-shadow:none !important;}
::-webkit-scrollbar-thumb,
::-webkit-scrollbar-thumb:hover{
  background:#c5c7d0 !important;
  background-image:none !important;
  border-radius:10px;
  border:3px solid transparent;
  background-clip:content-box;
}

/* ---- 2. Primary call-to-action buttons ---- */
.wp-block-button__link,
.wp-element-button,
.hero-cta,
.theme-btn,
.btn-style-one{
  background:var(--brand) !important;
  color:#fff !important;
  border:2px solid var(--brand) !important;
  border-radius:8px !important;
  padding:14px 32px !important;
  font-weight:600 !important;
  letter-spacing:.2px;
  text-decoration:none !important;
  display:inline-block;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
  box-shadow:0 6px 18px rgba(79,70,229,.28);
}
.wp-block-button__link:hover,
.wp-element-button:hover,
.hero-cta:hover,
.theme-btn:hover,
.btn-style-one:hover{
  background:var(--brand-dark) !important;
  border-color:var(--brand-dark) !important;
  color:#fff !important;
  transform:translateY(-2px);
  box-shadow:0 12px 26px rgba(79,70,229,.38);
}
/* outline variant ("Learn More About Us") */
.wp-block-button.is-style-outline .wp-block-button__link{
  background:transparent !important;
  color:var(--brand) !important;
  border:2px solid var(--brand) !important;
  box-shadow:none;
}
.wp-block-button.is-style-outline .wp-block-button__link:hover{
  background:var(--brand) !important;
  color:#fff !important;
  transform:translateY(-2px);
}

/* ---- 3. Home hero: text overlay on the banner ---- */
.home5-hero-sec{
  position:relative;
  min-height:560px;
  display:flex;
  align-items:center;
  background-size:cover !important;
  background-position:center !important;
}
.home5-hero-sec::before{
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(115deg,rgba(13,16,28,.90) 0%,rgba(13,16,28,.62) 55%,rgba(13,16,28,.30) 100%);
}
.home5-hero-sec .section-title-wraper{position:relative;z-index:2;width:100%;padding:72px 0;}
.home5-hero-sec .section-title-2{
  color:#fff !important;
  font-size:3rem;line-height:1.12;font-weight:800;
  margin:0 0 18px;max-width:760px;
}
.home5-hero-sec .hero-sub{
  color:#e8eaf5 !important;
  font-size:1.22rem;line-height:1.55;
  max-width:600px;margin:0 0 32px;
}
@media (max-width:768px){
  .home5-hero-sec{min-height:440px;}
  .home5-hero-sec .section-title-2{font-size:2.1rem;}
  .home5-hero-sec .hero-sub{font-size:1.05rem;}
}

/* ---- 4. Services section + cards ---- */
.blog-5{display:none;}                       /* empty placeholder section */
.services-5{padding:72px 0 84px;}
.services-5 .wp-block-heading{color:var(--ink);}
.services-5 h2.wp-block-heading{font-size:2.15rem;font-weight:800;margin:0 0 14px;}
.services-5 > .container > .wp-block-paragraph,
.services-5 p.has-text-align-center{color:var(--muted);}

.services-cards{gap:26px !important;margin-top:14px;}
.service-card{
  background:#fff;
  border:1px solid #e9e9f2;
  border-radius:16px;
  padding:36px 28px;
  text-align:center;
  box-shadow:0 6px 22px rgba(20,20,45,.06);
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.service-card:hover{
  transform:translateY(-6px);
  box-shadow:0 18px 38px rgba(20,20,45,.12);
  border-color:#d8d8ef;
}
.service-card .svc-icon{
  display:inline-flex;align-items:center;justify-content:center;
  width:74px;height:74px;border-radius:50%;
  background:var(--brand-soft);color:var(--brand);
  font-size:31px;margin-bottom:20px;
}
.service-card .service-title{
  font-size:1.25rem;font-weight:700;color:var(--ink) !important;margin:0 0 12px;
}
.service-card p{color:var(--muted);margin:0;line-height:1.6;}

/* ---- 5. Separators, "Why Choose" spacing ---- */
.wp-block-separator{border:0;border-top:1px solid #e7e7f0;opacity:1;max-width:1140px;margin:8px auto;}
.services-5 h2.wp-block-heading + .has-text-align-center{margin-bottom:26px;}

/* ---- 6. Footer ---- */
.foot-top{background:#11131e;padding:56px 0 34px;}
.site-footer-cols{display:flex;flex-wrap:wrap;gap:32px;justify-content:space-between;}
.site-footer-col{flex:1 1 180px;min-width:170px;}
.site-footer-col h4{color:#fff;font-size:1.04rem;font-weight:700;margin:0 0 16px;}
.site-footer-col .foot-blurb{color:#9aa0b6;line-height:1.6;margin:0;font-size:.95rem;}
.site-footer-col a{
  color:#b7bccd;text-decoration:none;display:block;margin-bottom:10px;font-size:.95rem;
  transition:color .15s ease;
}
.site-footer-col a:hover{color:#fff;}
.foot-bottom{background:#0c0e16;color:#aeb2c4;text-align:center;padding:20px 0;font-size:.92rem;}
.foot-bottom a{color:#fff;}

/* ---- 6b. Keep the top nav on one line (8 items fit) ---- */
@media (min-width:992px){
  #nav-content{
    display:flex !important;flex-wrap:nowrap !important;
    align-items:center;justify-content:flex-end;
  }
  #nav-content > li{white-space:nowrap;float:none;}
  #nav-content > li > a{
    padding:.5rem .62rem !important;font-size:.93rem !important;
  }
}

/* ---- 7. Inner-page banner (about-us, services, etc.) ---- */
.page-banner{position:relative;}
.page-banner::after{content:"";position:absolute;inset:0;background:rgba(13,16,28,.45);z-index:1;}
.page-banner .container,.page-banner .row,.page-banner h1,.page-banner h2,.page-banner .breadcrumb{position:relative;z-index:2;}
