/* =====================================================================
   Eternal Grace Funerals — theme override on top of Monoline (style.css)
   Palette: near-black #16151a · soft gold #b8963f / #d8b45e · stone #6b6b73
   Headings: Playfair Display (serif) · Body: Poppins
   Loaded AFTER style.css / responsive.css so these rules win.
   ===================================================================== */

:root{
  --eg-ink:#16151a;
  --eg-ink-2:#211f27;
  --eg-gold:#b8963f;
  --eg-gold-2:#d8b45e;
  --eg-stone:#6b6b73;
  --eg-cream:#f7f4ee;
  --eg-line:#ece7dd;
}

body{ color:#3a3942; }

h1,h2,h3,h4,h5,.section-title h2,.hero-text h2{
  font-family:'Playfair Display', Georgia, serif !important;
  letter-spacing:.2px;
}

/* ---- Buttons ---- */
.btn_one,.hero-text a,.contact_btn,.home_b_btn,.subs_btn{
  background:var(--eg-gold) !important;
  border:2px solid var(--eg-gold) !important;
  color:#fff !important;
  border-radius:2px !important;
  letter-spacing:.6px;
  text-transform:uppercase;
  font-size:13px;
  font-weight:600;
  box-shadow:0 12px 30px -14px rgba(184,150,63,.7) !important;
}
.btn_one{ background:transparent !important; color:var(--eg-ink) !important; border-color:var(--eg-ink) !important; }
.btn_one:hover,.hero-text a:hover,.contact_btn:hover,.home_b_btn:hover,.subs_btn:hover{
  background:var(--eg-ink) !important;
  border-color:var(--eg-ink) !important;
  color:#fff !important;
}

/* ---- Top utility bar (24h) ---- */
.eg-topbar{ background:var(--eg-ink); color:#e8e4da; font-size:13.5px; }
.eg-topbar .container{ display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; padding:9px 15px; }
.eg-topbar a{ color:#e8e4da; }
.eg-topbar .eg-24{ color:var(--eg-gold-2); font-weight:600; letter-spacing:.4px; }
.eg-topbar .eg-links a{ margin-left:18px; }
.eg-topbar i{ color:var(--eg-gold-2); margin-right:6px; }

/* ---- Navbar ---- */
.site-navbar{ background:#fff; box-shadow:0 4px 24px rgba(22,21,26,.06); }
.site-navbar .site-logo .eg-logo{ display:inline-flex; align-items:center; gap:11px; text-decoration:none; }
.eg-logo .eg-mark{ width:42px;height:42px;border-radius:50%;background:var(--eg-ink);
  display:inline-flex;align-items:center;justify-content:center;color:var(--eg-gold-2);font-size:20px; }
.eg-logo .eg-name{ line-height:1; }
.eg-logo .eg-name b{ font-family:'Playfair Display',serif; font-size:22px; color:var(--eg-ink); display:block; letter-spacing:.3px; }
.eg-logo .eg-name span{ font-size:10.5px; letter-spacing:3px; text-transform:uppercase; color:var(--eg-gold); }
.site-navbar .site-menu>li>a{ color:var(--eg-ink)!important; font-weight:500; font-size:15px; }
.site-navbar .site-menu>li>a:hover,.site-navbar .site-menu .active>a{ color:var(--eg-gold)!important; }
.eg-nav-cta{ background:var(--eg-gold); color:#fff!important; padding:9px 20px!important; border-radius:2px;
  text-transform:uppercase; font-size:12.5px; letter-spacing:.6px; }
.eg-nav-cta:hover{ background:var(--eg-ink); color:#fff!important; }

/* ---- Hero ---- */
.home_bg{ height:640px; }
.home_bg::before{ background:linear-gradient(180deg, rgba(18,16,22,.42) 0%, rgba(18,16,22,.62) 100%) !important; }
.hero-text{ padding-top:220px; }
.hero-text .eg-kicker{ color:var(--eg-gold-2); letter-spacing:4px; text-transform:uppercase; font-size:13px;
  font-weight:600; display:inline-block; margin-bottom:14px; font-family:'Poppins',sans-serif; }
.hero-text h2{ text-transform:none !important; font-size:52px; line-height:1.12; text-shadow:0 2px 30px rgba(0,0,0,.35); }
.hero-text p{ font-size:18px; max-width:640px; margin:16px auto 26px; color:#f1eee7; }
.hero-text .eg-hero-actions a{ margin:0 6px; }
.hero-text .eg-ghost{ background:transparent !important; border:2px solid rgba(255,255,255,.7) !important; }
.hero-text .eg-ghost:hover{ background:#fff !important; color:var(--eg-ink) !important; border-color:#fff !important; }

/* ---- Section titles ---- */
.section-title h2{ color:var(--eg-ink); font-size:38px; position:relative; }
.section-title{ margin-bottom:18px; }
.eg-eyebrow{ color:var(--eg-gold); letter-spacing:3px; text-transform:uppercase; font-size:13px; font-weight:600;
  display:block !important; margin-bottom:10px; font-family:'Poppins',sans-serif;
  /* reset Monoline's ".section-title span" 2px pink bar hijack */
  background:none !important; height:auto !important; width:auto !important; }
.eg-divider{ width:66px; height:3px; background:var(--eg-gold); border:0; margin:14px auto 20px; }
.section-title.text-left .eg-divider{ margin-left:0; }

/* ---- Features / services cards ---- */
.single_feature{ border:1px solid var(--eg-line); border-radius:4px; padding:38px 26px; height:100%;
  transition:.3s; background:#fff; }
.single_feature:hover{ box-shadow:0 24px 50px -28px rgba(22,21,26,.4); transform:translateY(-4px); border-color:#fff; }
.single_feature .eg-ico{ width:66px;height:66px;border-radius:50%;background:var(--eg-cream);color:var(--eg-gold);
  display:inline-flex;align-items:center;justify-content:center;font-size:28px;margin-bottom:18px; }
.single_feature:hover .eg-ico{ background:var(--eg-ink); color:var(--eg-gold-2); }
.single_feature h4{ color:var(--eg-ink); font-size:20px; margin-bottom:10px; }
.single_feature p{ color:var(--eg-stone); font-size:15px; }

/* ---- Counter ---- */
.counter_feature{ background:var(--eg-ink); }
.counter-num,.single-project h4{ color:#fff; }
.counter-num{ font-family:'Playfair Display',serif; }
.single-project .eg-ico{ color:var(--eg-gold-2); font-size:40px; margin-bottom:8px; display:block; }
.single-project h2{ color:var(--eg-gold-2); }

/* ---- Why choose ---- */
.single_why_choose h2{ color:var(--eg-ink); font-size:40px; line-height:1.15; }
.single_why_choose p{ color:var(--eg-stone); }
.single_why_choose_img img{ border-radius:6px; box-shadow:0 30px 60px -30px rgba(22,21,26,.5); }
.eg-check-list{ list-style:none; padding:0; margin:18px 0 26px; }
.eg-check-list li{ padding:7px 0 7px 30px; position:relative; color:#3a3942; }
.eg-check-list li::before{ content:"\f00c"; font-family:"fontAwesome"; color:var(--eg-gold); position:absolute; left:0; }

/* ---- Portfolio / gallery ---- */
.single-gallery{ border-radius:4px; }
.single-gallery::after{ background:rgba(22,21,26,.55); }
.portfolio_filter ul li.active,.portfolio_filter ul li:hover{ color:var(--eg-gold); }
.single-gallery h4 a{ color:#fff; }

/* ---- Skills / commitment band ---- */
.skills_area{ position:relative; }
.skills_area::before{ content:""; position:absolute; inset:0; background:rgba(18,16,22,.78); }
.skills_area .container{ position:relative; z-index:2; }
.skill_content h2{ color:#fff; font-size:34px; }
.skill_content p{ color:#d8d5cd; }
.progress-bar-text,.progress-bar-text span{ color:#fff; }
.progress-bar span{ background:var(--eg-gold) !important; }

/* ---- Promotional / testimonials / blog ---- */
.promotional_content img{ border-radius:6px; }
.single_testimonial{ border:1px solid var(--eg-line); border-radius:6px; background:#fff; padding:32px 26px; }
.single_testimonial h4{ color:var(--eg-ink); }
.single_testimonial h5{ color:var(--eg-gold); }
.single_testimonial .testimonial_img img{ border:3px solid var(--eg-gold); }
.home_single_blog{ border:1px solid var(--eg-line); border-radius:6px; overflow:hidden; background:#fff; }
.home_blog_content{ padding:22px; }
.blog_title_info h2 a{ color:var(--eg-ink); font-size:19px; }
.blog_title_info h2 a:hover{ color:var(--eg-gold); }
.blog_title_info span a,.blog_title_info span{ color:var(--eg-gold); }

/* ---- Contact ---- */
.contact_area{ background:var(--eg-ink); }
.contact_area .form-control{ border-radius:2px; }

/* ---- Footer ---- */
.footer{ background:var(--eg-ink) !important; }
.footer_bg{ padding-top:60px; }
.single_footer h4{ color:#fff; }
.single_footer ul li a,.footer_logo p{ color:#b9b6b0; }
.single_footer ul li a:hover{ color:var(--eg-gold-2); }
.footer_logo .eg-logo .eg-name b{ color:#fff; }
.footer_logo .eg-mark{ background:#fff; color:var(--eg-ink); }
.social_profile ul li a{ background:rgba(255,255,255,.08); }
.social_profile ul li a:hover{ background:var(--eg-gold); }
.footer_copyright p,.footer_copyright a{ color:#8f8c86; }
.footer_copyright a:hover{ color:var(--eg-gold-2); }

/* ---- Page banner (inner pages) ---- */
.eg-banner{ background:var(--eg-ink); color:#fff; padding:130px 0 60px; text-align:center; position:relative; }
.eg-banner h1{ font-size:44px; margin:0; color:#fff !important; }
.eg-banner .eg-crumb{ color:var(--eg-gold-2); letter-spacing:1px; margin-top:10px; }
.eg-banner .eg-crumb a{ color:#cfccc4; }

@media(max-width:768px){
  .hero-text h2{ font-size:36px; }
  .hero-text{ padding-top:180px; }
  .home_bg{ height:560px; }
  .eg-topbar .container{ justify-content:center; text-align:center; }
  .eg-topbar .eg-links{ display:none; }
}
