/* Accept For Healing - theme adaptation (B: modern + spiritual touches) */
:root{
  --afh-brand:#2a7f7a;
  --afh-brand2:#0c3b4a;
  --afh-accent:#b7f3ea;
}

body{
  background:
    radial-gradient(900px 500px at 10% 10%, rgba(42,127,122,.16), transparent 60%),
    radial-gradient(900px 500px at 90% 20%, rgba(12,59,74,.16), transparent 60%),
    #ffffff;
}

.navbar{
  backdrop-filter: blur(10px);
  background: rgba(255,255,255,.86) !important;
}

.afh-glass{
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(12,59,74,.10);
  box-shadow: 0 10px 30px rgba(12,59,74,.08);
  border-radius: 18px;
}

.afh-hero{
  padding: 54px 0;
}

.afh-hero h1{
  letter-spacing: -.02em;
}

.btn-primary{
  background: linear-gradient(135deg, var(--afh-brand), var(--afh-brand2));
  border: none;
}
.btn-primary:hover{ filter: brightness(1.03); }

.afh-badge{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  padding:.45rem .8rem;
  border-radius: 999px;
  border: 1px solid rgba(12,59,74,.14);
  background: rgba(255,255,255,.7);
}

.afh-section-title{
  font-weight: 800;
  letter-spacing: -.01em;
}

.afh-soft-card{
  border-radius: 18px !important;
  overflow: hidden;
}

/* === AFH Premium+ additions === */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap');

:root{
  --afh-bg:#071216;
  --afh-surface:rgba(255,255,255,.06);
  --afh-surface2:rgba(255,255,255,.10);
  --afh-text:rgba(255,255,255,.92);
  --afh-muted:rgba(255,255,255,.68);
  --afh-brand:#2ad6c2;
  --afh-brand2:#7a5cff;
  --afh-gold:#d7b46a;
  --afh-border:rgba(255,255,255,.10);
  --afh-shadow: 0 20px 60px rgba(0,0,0,.35);
}

body{
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif !important;
  background: radial-gradient(1200px 700px at 10% -10%, rgba(42,214,194,.18), transparent 60%),
              radial-gradient(1000px 600px at 110% 0%, rgba(122,92,255,.16), transparent 55%),
              linear-gradient(180deg, #071216, #071216 45%, #08161b);
  color: var(--afh-text);
}
.navbar, .bg-white{
  background: rgba(7,18,22,.82) !important;
  backdrop-filter: blur(14px);
  border-color: var(--afh-border) !important;
}
.nav-link{ color: var(--afh-muted) !important; }
.nav-link:hover{ color: var(--afh-text) !important; }
.navbar-brand span{ color: var(--afh-gold) !important; letter-spacing:.3px; }

.card{
  background: linear-gradient(180deg, var(--afh-surface), rgba(255,255,255,.03));
  border: 1px solid var(--afh-border);
  box-shadow: var(--afh-shadow);
}
.hero, .afh-hero{
  background: linear-gradient(135deg, rgba(42,214,194,.14), rgba(122,92,255,.12));
  border: 1px solid var(--afh-border);
  border-radius: 1.5rem;
  box-shadow: var(--afh-shadow);
}
.afh-kicker{
  display:inline-flex; align-items:center; gap:.5rem;
  padding:.4rem .75rem; border-radius:999px;
  background: rgba(31,157,85,.92);
  border: 1px solid rgba(31,157,85,.92);
  color: var(--afh-gold);
  font-weight:600; font-size:.85rem;
}
.afh-title{
  font-family: "Playfair Display", serif;
  letter-spacing:.2px;
}
.btn-primary{
  background: linear-gradient(135deg, var(--afh-brand), var(--afh-brand2)) !important;
  border: 0 !important;
  box-shadow: 0 10px 30px rgba(42,214,194,.18);
}
.btn-outline-primary{
  color: var(--afh-text) !important;
  border-color: rgba(31,157,85,.92) !important;
}
.btn-outline-primary:hover{
  background: rgba(31,157,85,.92) !important;
}

.afh-section-title{
  font-family:"Playfair Display", serif;
}
.afh-divider{
  height:1px; background: linear-gradient(90deg, transparent, rgba(31,157,85,.92), transparent);
}

.afh-service-card .badge{
  background: rgba(31,157,85,.92) !important;
  border: 1px solid rgba(31,157,85,.92);
  color: var(--afh-gold) !important;
}
.afh-cta{
  background: radial-gradient(900px 500px at 20% 0%, rgba(42,214,194,.20), transparent 60%),
              radial-gradient(900px 500px at 80% 0%, rgba(122,92,255,.20), transparent 60%),
              rgba(255,255,255,.04);
  border: 1px solid var(--afh-border);
  border-radius: 1.5rem;
  padding: 1.25rem;
}
.afh-cta .afh-cta-title{
  font-family:"Playfair Display", serif;
}

.afh-gallery-grid img{
  border-radius: 1rem;
  border: 1px solid var(--afh-border);
  box-shadow: var(--afh-shadow);
  transition: transform .18s ease, filter .18s ease;
}
.afh-gallery-grid a:hover img{ transform: translateY(-2px) scale(1.01); filter: saturate(1.1); }

.afh-lightbox{
  position:fixed; inset:0; display:none; align-items:center; justify-content:center;
  background: rgba(0,0,0,.72);
  z-index: 2000;
  padding: 1rem;
}
.afh-lightbox.open{ display:flex; }
.afh-lightbox img{
  max-width:min(100%, 1080px);
  max-height: 86vh;
  border-radius: 1.25rem;
  border: 1px solid var(--afh-border);
  box-shadow: var(--afh-shadow);
}
.afh-lightbox .close{
  position:absolute; top:18px; right:18px;
  background: rgba(255,255,255,.08);
  border: 1px solid var(--afh-border);
  color: var(--afh-text);
  width: 42px; height: 42px; border-radius: 999px;
  display:flex; align-items:center; justify-content:center;
  cursor:pointer;
}
.afh-meta{
  color: var(--afh-muted);
}
.afh-share a{ text-decoration:none; }


.reveal-init{ opacity:0; transform: translateY(10px); transition: opacity .55s ease, transform .55s ease; }
.reveal-in{ opacity:1; transform: translateY(0); }


/* === AFH Lux UI pack === */
:root{
  --lux-glow: 0 0 0 1px rgba(255,255,255,.10), 0 18px 60px rgba(0,0,0,.45);
  --lux-glow2: 0 0 0 1px rgba(31,157,85,.92), 0 18px 60px rgba(0,0,0,.45);
}
html{ scroll-behavior: smooth; }

body::before{
  content:"";
  position:fixed; inset:-20%;
  background:
    radial-gradient(900px 600px at 20% 10%, rgba(42,214,194,.18), transparent 60%),
    radial-gradient(900px 600px at 80% 0%, rgba(122,92,255,.16), transparent 60%),
    radial-gradient(700px 500px at 50% 110%, rgba(31,157,85,.92), transparent 60%);
  filter: blur(14px);
  opacity: .9;
  animation: aurora 14s ease-in-out infinite alternate;
  pointer-events:none;
  z-index:-1;
}
@keyframes aurora{
  from{ transform: translate3d(-1%, -1%, 0) scale(1.02); }
  to{ transform: translate3d(1%, 1%, 0) scale(1.06); }
}

.navbar::after{
  content:"";
  position:absolute; left:0; right:0; bottom:-1px; height:1px;
  background: linear-gradient(90deg, transparent, rgba(31,157,85,.92), transparent);
  opacity:.65;
}

.card{
  box-shadow: var(--lux-glow) !important;
  transform: translateZ(0);
}
.card:hover{
  box-shadow: var(--lux-glow2) !important;
  transform: translateY(-2px);
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

.btn-primary{
  position:relative;
  overflow:hidden;
}
.btn-primary::after{
  content:"";
  position:absolute; top:-120%; left:-60%;
  width: 50%; height: 340%;
  transform: rotate(25deg);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.26), transparent);
  opacity:.6;
  transition: left .7s ease;
}
.btn-primary:hover::after{ left: 140%; }

.btn-outline-primary{
  backdrop-filter: blur(10px);
}

.afh-divider, .lux-divider{
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(31,157,85,.92), rgba(42,214,194,.35), transparent);
  opacity:.85;
}

.card-img-top, .carousel img{
  transition: transform .35s ease, filter .35s ease;
}
.card:hover .card-img-top{
  transform: scale(1.02);
  filter: saturate(1.08);
}

.afh-cta{
  box-shadow: var(--lux-glow2);
  position:relative;
  overflow:hidden;
}
.afh-cta::before{
  content:"";
  position:absolute; inset:-40%;
  background: radial-gradient(circle at 30% 20%, rgba(42,214,194,.20), transparent 45%),
              radial-gradient(circle at 70% 30%, rgba(122,92,255,.18), transparent 45%),
              radial-gradient(circle at 40% 80%, rgba(31,157,85,.92), transparent 50%);
  filter: blur(16px);
  opacity:.7;
  pointer-events:none;
}
.afh-cta > *{ position:relative; }

a{ transition: opacity .15s ease, transform .15s ease; }
a:hover{ opacity:.95; }

.lux-orb{
  position:fixed;
  width: 220px; height: 220px;
  border-radius: 999px;
  filter: blur(22px);
  opacity: .12;
  pointer-events:none;
  z-index: 0;
}
.lux-orb.one{ background: rgba(42,214,194,1); }
.lux-orb.two{ background: rgba(122,92,255,1); }
.lux-orb.three{ background: rgba(31,157,85,.92); }


/* === AFH Ultra Lux pack === */
:root{
  --ultra-radius: 1.6rem;
  --ultra-radius2: 2rem;
  --ultra-glass: rgba(255,255,255,.06);
  --ultra-glass2: rgba(255,255,255,.10);
  --ultra-border: rgba(255,255,255,.12);
  --ultra-gold: rgba(31,157,85,.92);
  --ultra-gold2: rgba(31,157,85,.92);
  --ultra-ring: 0 0 0 1px rgba(255,255,255,.10), 0 24px 80px rgba(0,0,0,.55);
  --ultra-ring-gold: 0 0 0 1px rgba(31,157,85,.92), 0 24px 90px rgba(0,0,0,.55);
}

/* Lux cursor glow */
.ultra-cursor{
  position:fixed; inset:auto;
  width: 520px; height: 520px;
  border-radius: 999px;
  pointer-events:none;
  background: radial-gradient(circle at center, rgba(31,157,85,.92), transparent 60%),
              radial-gradient(circle at center, rgba(42,214,194,.10), transparent 55%),
              radial-gradient(circle at center, rgba(122,92,255,.08), transparent 55%);
  filter: blur(18px);
  opacity: .9;
  transform: translate(-50%,-50%);
  z-index: 0;
  mix-blend-mode: screen;
}

/* Premium container width on large screens */
@media (min-width: 1400px){
  .container{ max-width: 1180px; }
}

.hero, .afh-hero, .card, .afh-cta{
  border-radius: var(--ultra-radius) !important;
}
.carousel-inner{ border-radius: var(--ultra-radius2) !important; }
.card{ box-shadow: var(--ultra-ring) !important; }
.card:hover{ box-shadow: var(--ultra-ring-gold) !important; }

/* Luxury headings */
.afh-title, .afh-section-title{
  letter-spacing: .2px;
  text-shadow: 0 10px 50px rgba(0,0,0,.35);
}
.afh-kicker{
  box-shadow: 0 0 0 1px rgba(31,157,85,.92) inset;
}

/* Glass pills */
.ultra-pill{
  display:inline-flex; align-items:center; gap:.55rem;
  padding:.45rem .85rem;
  border-radius:999px;
  border: 1px solid var(--ultra-border);
  background: rgba(255,255,255,.06);
  backdrop-filter: blur(14px);
  color: rgba(255,255,255,.82);
}

/* Page transition overlay */
.ultra-overlay{
  position:fixed; inset:0;
  background: radial-gradient(900px 600px at 20% 0%, rgba(42,214,194,.20), transparent 60%),
              radial-gradient(900px 600px at 80% 10%, rgba(122,92,255,.18), transparent 60%),
              radial-gradient(700px 500px at 50% 120%, rgba(31,157,85,.92), transparent 60%),
              rgba(0,0,0,.68);
  opacity:0;
  pointer-events:none;
  z-index: 3000;
  transition: opacity .22s ease;
}
.ultra-overlay.on{ opacity:1; pointer-events:auto; }

/* Theme switch (light) */
[data-theme="light"] body{
  background: radial-gradient(1200px 700px at 10% -10%, rgba(42,214,194,.10), transparent 60%),
              radial-gradient(1000px 600px at 110% 0%, rgba(122,92,255,.10), transparent 55%),
              linear-gradient(180deg, #f6fbfb, #ffffff 45%, #f6fbfb);
  color: #0b1720;
}
[data-theme="light"] .navbar{
  background: rgba(255,255,255,.82) !important;
  border-color: rgba(10,20,30,.10) !important;
}
[data-theme="light"] .nav-link{ color: rgba(10,20,30,.70) !important; }
[data-theme="light"] .nav-link:hover{ color: rgba(10,20,30,.92) !important; }
[data-theme="light"] .card{
  background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.76));
  border-color: rgba(10,20,30,.10);
}
[data-theme="light"] .afh-meta, [data-theme="light"] .text-muted{ color: rgba(10,20,30,.62) !important; }
[data-theme="light"] .ultra-pill{
  background: rgba(255,255,255,.72);
  border-color: rgba(10,20,30,.10);
  color: rgba(10,20,30,.78);
}


/* === Bio Energy-inspired (clean green, airy) === */
:root{
  --bsf-accent: rgba(31,157,85,.92);
}

.navbar{
  padding-top: .9rem !important;
  padding-bottom: .9rem !important;
}
.navbar .nav-link{
  font-size: .95rem;
  padding-left: .75rem !important;
  padding-right: .75rem !important;
  font-weight: 650;
}

.dropdown-menu{
  border-radius: 1rem;
  border: 1px solid rgba(255,255,255,.12);
  backdrop-filter: blur(16px);
  box-shadow: 0 18px 60px rgba(0,0,0,.35);
}
.dropdown-item{ font-weight: 650; }
.dropdown-item:hover{ background: rgba(255,255,255,.08); }

.lead{
  font-size: 1.15rem;
  line-height: 1.7;
}

.section-pad{ padding: 4rem 0; }
.section-pad-sm{ padding: 2.5rem 0; }
.kicker{
  letter-spacing: .16em;
  text-transform: uppercase;
  font-weight: 800;
  font-size: .78rem;
  color: var(--afh-accent);
}

/* Simple photo blocks */
.photo-card img, .photo-card video{
  border-radius: 2rem;
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: 0 24px 80px rgba(0,0,0,.45);
}

/* Process steps */
.step{
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 1.6rem;
  padding: 1.25rem;
  background: rgba(255,255,255,.05);
}
.step .num{
  width: 42px; height: 42px; border-radius: 999px;
  display:flex; align-items:center; justify-content:center;
  border: 1px solid rgba(31,157,85,.92);
  color: rgba(31,157,85,.92);
  background: rgba(31,157,85,.92);
  font-weight: 900;
}

/* Testimonial quote */
.quote{
  border-left: 3px solid rgba(31,157,85,.92);
  padding-left: 1rem;
  color: rgba(255,255,255,.88);
  font-size: 1.05rem;
}
.quote small{ color: rgba(255,255,255,.70); }

/* Accordion styling */
.accordion-item{
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 1.25rem !important;
  overflow:hidden;
  margin-bottom: .75rem;
}
.accordion-button{
  background: transparent !important;
  color: rgba(255,255,255,.90) !important;
  font-weight: 800;
}
.accordion-button:focus{ box-shadow: none !important; }
.accordion-body{ color: rgba(255,255,255,.72) !important; }

/* Light theme tuned to look like the reference (white + calm) */
[data-theme="light"] body{
  background: #fbfbf9 !important;
  color: #101820 !important;
}
[data-theme="light"] .navbar{
  background: rgba(255,255,255,.92) !important;
  border-color: rgba(16,24,32,.10) !important;
}
[data-theme="light"] .nav-link{ color: rgba(16,24,32,.72) !important; }
[data-theme="light"] .nav-link:hover{ color: rgba(16,24,32,.95) !important; }
[data-theme="light"] .dropdown-menu{
  background: rgba(255,255,255,.96) !important;
  border-color: rgba(16,24,32,.10) !important;
}
[data-theme="light"] .dropdown-item:hover{ background: rgba(16,24,32,.06) !important; }
[data-theme="light"] .kicker{ color: rgba(130, 98, 30, .92) !important; }
[data-theme="light"] .step{
  background: rgba(16,24,32,.03) !important;
  border-color: rgba(16,24,32,.10) !important;
}
[data-theme="light"] .quote{ color: rgba(16,24,32,.88) !important; border-left-color: rgba(130,98,30,.40) !important; }
[data-theme="light"] .accordion-item{
  background: rgba(16,24,32,.03) !important;
  border-color: rgba(16,24,32,.10) !important;
}
[data-theme="light"] .accordion-button{
  color: rgba(16,24,32,.92) !important;
}
[data-theme="light"] .accordion-body{
  color: rgba(16,24,32,.70) !important;
}


/* Bootstrap primary -> green feel */
.btn-primary, .bg-primary{
  background-color: var(--afh-accent) !important;
  border-color: var(--afh-accent) !important;
}
.btn-primary:hover{
  background-color: var(--afh-accent-2) !important;
  border-color: var(--afh-accent-2) !important;
}
.btn-outline-primary{
  color: var(--afh-accent) !important;
  border-color: rgba(31,157,85,.55) !important;
}
.btn-outline-primary:hover{
  background: var(--afh-soft) !important;
  border-color: rgba(31,157,85,.75) !important;
  color: var(--afh-accent-2) !important;
}
.kicker{ color: var(--afh-accent) !important; }

/* Cards a bit flatter like WP demo */
.card{
  border-radius: 18px !important;
  border: 1px solid rgba(16,24,32,.10) !important;
}
[data-theme="dark"] .card{
  border-color: rgba(255,255,255,.10) !important;
}


/* Dropdown menu look like WP demo */
.dropdown-menu{
  background: rgba(255,255,255,.98) !important;
  border: 1px solid rgba(16,24,32,.10) !important;
}
[data-theme="dark"] .dropdown-menu{
  background: rgba(18,22,24,.92) !important;
  border-color: rgba(255,255,255,.12) !important;
}
.dropdown-item{
  padding: .55rem 1rem !important;
}


/* === Eco homepage layout (Bio Energy-inspired) === */
.afh-hero-eco{
  position: relative;
  padding: 5.25rem 0 3.5rem;
  overflow:hidden;
}
.afh-hero-media{
  position:absolute; inset:0;
}
.afh-hero-media video{
  width:100%; height:100%;
  object-fit: cover;
  transform: scale(1.02);
}
.afh-hero-overlay{
  position:absolute; inset:0;
  background: linear-gradient(90deg, rgba(0,0,0,.55) 0%, rgba(0,0,0,.25) 55%, rgba(0,0,0,.12) 100%);
}
[data-theme="light"] .afh-hero-overlay{
  background: linear-gradient(90deg, rgba(16,24,32,.75) 0%, rgba(16,24,32,.35) 55%, rgba(16,24,32,.15) 100%);
}
.afh-hero-eco .container{ position:relative; z-index:2; }
.afh-hero-kicker{
  letter-spacing:.16em; text-transform:uppercase; font-weight:800; font-size:.78rem;
  color: rgba(255,255,255,.85);
}
.afh-hero-title{
  font-size: clamp(2.2rem, 4vw, 3.4rem);
  font-weight: 900;
  color: rgba(255,255,255,.96);
  line-height: 1.08;
  margin: .65rem 0 1rem;
}
.afh-hero-sub{
  max-width: 46rem;
  color: rgba(255,255,255,.82);
  font-size: 1.08rem;
  line-height: 1.7;
}
.afh-hero-badges{ display:flex; gap:.5rem; flex-wrap:wrap; }
.badge-pill{
  display:inline-flex; align-items:center; gap:.45rem;
  padding:.5rem .75rem;
  border-radius: 999px;
  background: rgba(255,255,255,.12);
  border: 1px solid rgba(255,255,255,.18);
  color: rgba(255,255,255,.92);
  font-weight: 700;
  font-size: .9rem;
}
[data-theme="light"] .badge-pill{
  background: rgba(255,255,255,.18);
  border-color: rgba(255,255,255,.28);
}

/* Sections */
.afh-section{ padding: 3.2rem 0; }
.afh-section-alt{ background: rgba(31,157,85,.05); }
[data-theme="dark"] .afh-section-alt{ background: rgba(255,255,255,.03); }

/* Icon boxes */
.eco-box{
  background: rgba(255,255,255,.94);
  border: 1px solid rgba(16,24,32,.10);
  border-radius: 18px;
  padding: 1.35rem 1.25rem;
  height: 100%;
  box-shadow: 0 18px 55px rgba(16,24,32,.06);
}
[data-theme="dark"] .eco-box{
  background: rgba(255,255,255,.06);
  border-color: rgba(255,255,255,.10);
  box-shadow: 0 18px 55px rgba(0,0,0,.25);
}
.eco-ico{
  width: 48px; height:48px; border-radius: 14px;
  display:flex; align-items:center; justify-content:center;
  background: rgba(31,157,85,.12);
  color: var(--afh-accent);
  font-size: 1.35rem;
  margin-bottom: .8rem;
}
.eco-title{ font-size: 1.2rem; font-weight: 900; margin-bottom:.4rem; }
.eco-text{ color: rgba(16,24,32,.72); margin:0; line-height:1.7; }
[data-theme="dark"] .eco-text{ color: rgba(255,255,255,.72); }

/* Split media */
.eco-media img{
  width:100%; height: 420px; object-fit: cover;
  border-radius: 22px;
  border: 1px solid rgba(16,24,32,.10);
  box-shadow: 0 24px 70px rgba(16,24,32,.10);
}
[data-theme="dark"] .eco-media img{
  border-color: rgba(255,255,255,.10);
  box-shadow: 0 24px 70px rgba(0,0,0,.35);
}
.eco-kicker{
  letter-spacing:.16em; text-transform:uppercase; font-weight:900; font-size:.78rem;
  color: var(--afh-accent);
  margin-bottom:.55rem;
}
.eco-h2{ font-size: 2rem; font-weight: 950; }
.eco-muted{ color: rgba(16,24,32,.70); }
[data-theme="dark"] .eco-muted{ color: rgba(255,255,255,.70); }
.eco-list{ list-style:none; padding:0; margin: 1rem 0 0; }
.eco-list li{ display:flex; gap:.55rem; align-items:flex-start; margin:.55rem 0; color: rgba(16,24,32,.78); font-weight:700; }
[data-theme="dark"] .eco-list li{ color: rgba(255,255,255,.78); }
.eco-list i{ color: var(--afh-accent); margin-top:.15rem; }

/* Cards */
.eco-card{
  background: rgba(255,255,255,.95);
  border: 1px solid rgba(16,24,32,.10);
  border-radius: 18px;
  overflow:hidden;
  box-shadow: 0 18px 55px rgba(16,24,32,.06);
}
[data-theme="dark"] .eco-card{
  background: rgba(255,255,255,.06);
  border-color: rgba(255,255,255,.10);
  box-shadow: 0 18px 55px rgba(0,0,0,.25);
}
.eco-card-img{ width:100%; height: 210px; object-fit: cover; }
.eco-card-body{ padding: 1.15rem 1.15rem 1.25rem; }
.eco-card-title{ font-size: 1.15rem; font-weight: 950; margin-bottom:.45rem; }
.eco-date{ color: rgba(16,24,32,.55); font-weight:800; font-size:.85rem; margin-bottom:.35rem; }
[data-theme="dark"] .eco-date{ color: rgba(255,255,255,.60); }

/* Stats */
.eco-stat{
  background: rgba(255,255,255,.94);
  border: 1px solid rgba(16,24,32,.10);
  border-radius: 18px;
  padding: 1.2rem;
}
[data-theme="dark"] .eco-stat{
  background: rgba(255,255,255,.06);
  border-color: rgba(255,255,255,.10);
}
.eco-stat .n{ font-size: 1.9rem; font-weight: 950; color: var(--afh-accent); }
.eco-stat .l{ color: rgba(16,24,32,.70); font-weight:800; }
[data-theme="dark"] .eco-stat .l{ color: rgba(255,255,255,.70); }

/* Quotes */
.eco-quote{
  background: rgba(255,255,255,.94);
  border: 1px solid rgba(16,24,32,.10);
  border-radius: 18px;
  padding: 1.25rem;
}
[data-theme="dark"] .eco-quote{
  background: rgba(255,255,255,.06);
  border-color: rgba(255,255,255,.10);
}
.eco-quote .q{ font-size: 1.05rem; font-weight:800; line-height:1.7; }
.eco-quote .a{ margin-top:.75rem; color: rgba(16,24,32,.60); font-weight:900; }
[data-theme="dark"] .eco-quote .a{ color: rgba(255,255,255,.60); }

/* Final CTA */
.eco-cta{
  display:flex; align-items:center; justify-content:space-between; gap:1rem; flex-wrap:wrap;
  border-radius: 22px;
  padding: 1.6rem 1.4rem;
  background: linear-gradient(135deg, rgba(31,157,85,.14), rgba(31,157,85,.06));
  border: 1px solid rgba(31,157,85,.22);
}
[data-theme="dark"] .eco-cta{
  background: linear-gradient(135deg, rgba(31,157,85,.18), rgba(255,255,255,.04));
  border-color: rgba(255,255,255,.10);
}


/* === CLEAN FINAL FIXES === */
.navbar{ position: sticky; top: 0; z-index: 1050; }
@media (max-width: 991.98px){
  .navbar .navbar-collapse{
    background: rgba(255,255,255,.96);
    border: 1px solid rgba(16,24,32,.10);
    border-radius: 18px;
    padding: .75rem;
    margin-top: .75rem;
  }
  [data-theme="dark"] .navbar .navbar-collapse{
    background: rgba(18,22,24,.92);
    border-color: rgba(255,255,255,.12);
  }
}

/* Header offset so hero isn't hidden */
.section-pad:first-of-type, section:first-of-type{
  padding-top: 7.5rem !important;
}

/* Hero contrast */
.hero-overlay, .afh-hero-overlay{
  background: linear-gradient(180deg, rgba(0,0,0,.55), rgba(0,0,0,.78)) !important;
}
.hero h1, .hero p, .afh-hero h1, .afh-hero p{
  color: #fff !important;
  text-shadow: 0 10px 30px rgba(0,0,0,.35);
}
[data-theme="light"] .hero h1, [data-theme="light"] .hero p,
[data-theme="light"] .afh-hero h1, [data-theme="light"] .afh-hero p{
  color: #101820 !important;
  text-shadow: none;
}


/* === HERO SLIDER (admin-managed slides) === */
.afh-hero-carousel{
  margin-top: 0 !important;
}
.afh-hero-carousel .carousel-item{
  min-height: calc(86vh);
  position: relative;
}
.afh-hero-media{
  position:absolute; inset:0;
  background-size: cover;
  background-position: center;
  filter: saturate(1.05) contrast(1.02);
}
.afh-hero-overlay{
  position:absolute; inset:0;
  background: radial-gradient(circle at 20% 25%, rgba(255,255,255,.70), rgba(255,255,255,.00) 50%),
              linear-gradient(180deg, rgba(0,0,0,.05), rgba(0,0,0,.38));
}
[data-theme="dark"] .afh-hero-overlay{
  background: radial-gradient(circle at 20% 25%, rgba(0,0,0,.20), rgba(0,0,0,.00) 55%),
              linear-gradient(180deg, rgba(0,0,0,.40), rgba(0,0,0,.78));
}
.afh-hero-content{
  position: relative;
  padding-top: 8.5rem;
  padding-bottom: 6rem;
}
.afh-hero-carousel .carousel-indicators [data-bs-target]{
  width: 10px; height: 10px; border-radius: 999px;
}


/* === ULTRA PREMIUM TYPOGRAPHY === */
:root{
  --afh-serif: "Fraunces", ui-serif, Georgia, "Times New Roman", serif;
  --afh-sans: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, "Noto Sans", "Liberation Sans", sans-serif;
  --afh-ink: #0f1a21;
}
body{ font-family: var(--afh-sans) !important; color: var(--afh-ink); }
h1,h2,h3,.display-4{ font-family: var(--afh-serif) !important; letter-spacing:-.02em; }
.lead{ font-family: var(--afh-sans) !important; }

/* Hero slider refinements */
.afh-hero-carousel .carousel-item{ min-height: 86vh; }
.afh-hero-content{ padding-top: 9.0rem; padding-bottom: 6.5rem; max-width: 760px; }
.afh-hero-content .kicker{ font-family: var(--afh-sans) !important; letter-spacing:.12em; text-transform:uppercase; font-size:.82rem; opacity:.85; }
.afh-hero-content h1{ font-size: clamp(2.5rem, 4.2vw, 4.1rem); line-height: 1.02; }
.afh-hero-content .lead{ font-size: 1.05rem; line-height: 1.65; color: rgba(15,26,33,.74) !important; }
[data-theme="dark"] .afh-hero-content .lead{ color: rgba(255,255,255,.75) !important; }

.btn-premium{
  border-radius: 999px !important;
  box-shadow: 0 18px 45px rgba(0,0,0,.18);
}
.btn-premium-link{
  color: rgba(15,26,33,.78) !important;
  text-decoration: none !important;
  font-weight: 600;
}
[data-theme="dark"] .btn-premium-link{ color: rgba(255,255,255,.82) !important; }

.ultra-pill{
  border-radius: 999px !important;
  padding: .55rem .85rem !important;
  background: rgba(255,255,255,.72) !important;
  border: 1px solid rgba(16,24,32,.10) !important;
  backdrop-filter: blur(8px);
}
[data-theme="dark"] .ultra-pill{
  background: rgba(18,22,24,.55) !important;
  border-color: rgba(255,255,255,.12) !important;
}

/* Carousel controls / indicators subtle */
.afh-hero-carousel .carousel-control-prev-icon,
.afh-hero-carousel .carousel-control-next-icon{
  filter: drop-shadow(0 10px 20px rgba(0,0,0,.25));
}
.afh-hero-carousel .carousel-indicators{ gap: 8px; }
.afh-hero-carousel .carousel-indicators [data-bs-target]{ opacity:.55; }
.afh-hero-carousel .carousel-indicators .active{ opacity:1; }

/* Make next section breathe */
.section-pad-sm{ padding-top: 4.5rem !important; }


/* Hide carousel UI if only 1 slide (JS adds class) */
.afh-hero-carousel.is-single .carousel-indicators,
.afh-hero-carousel.is-single .carousel-control-prev,
.afh-hero-carousel.is-single .carousel-control-next{ display:none !important; }
