:root{
  --ea-green-900:#0F4023;
  --ea-green-800:#1B6B3A;
  --ea-green-700:#2D8A50;
  --ea-green-050:#E8F5ED;
  --ea-brand-red:#E8331A;
  --ea-brand-red-dark:#C0321A;
  --ea-gold-700:#C8860A;
  --ea-gold-500:#F5A623;
  --ea-gold-050:#FEF3E2;
  --ea-red-700:#C0392B;
  --ea-red-050:#FEE8E8;
  --ea-wa:#25D366;
  --ea-bg:#FAFAF8;
  --ea-surface:#FFFFFF;
  --ea-surface-2:#F5F3EF;
  --ea-border:#E8E4DE;
  --ea-text-1:#111111;
  --ea-text-2:#444444;
  --ea-text-3:#6B6B6B;
  --ea-text-4:#999999;
  --ea-shadow-sm:0 1px 4px rgba(0,0,0,.05),0 2px 8px rgba(0,0,0,.03);
  --ea-shadow-md:0 6px 20px rgba(0,0,0,.08),0 2px 8px rgba(0,0,0,.04);
  --ea-shadow-lg:0 16px 48px rgba(0,0,0,.10),0 4px 16px rgba(0,0,0,.06);
  --ea-r-sm:10px;
  --ea-r-md:14px;
  --ea-r-lg:18px;
  --ea-r-xl:24px;
  --ea-section-gap:64px;
  --ea-shell-max:1240px;
}


.ea-shell{max-width:var(--ea-shell-max);margin-inline:auto;width:min(var(--ea-shell-max),calc(100% - 48px));}
.theme-container{width:min(var(--ea-shell-max),calc(100% - 48px));margin-inline:auto;max-width:var(--ea-shell-max);}
.ea-home,
.ea-explore{
  background:var(--ea-bg);
  color:var(--ea-text-1);
  font-family:'DM Sans',system-ui,-apple-system,sans-serif;
}

.ea-home *,.ea-explore *{box-sizing:border-box}
.ea-home a,.ea-explore a{text-decoration:none}
.ea-home img,.ea-explore img{max-width:100%;height:auto}
.ea-home button,.ea-explore button{font:inherit}

.ea-section{
  padding-block:var(--ea-section-gap);
}
.ea-section--alt{
  background:var(--ea-surface);
}
.ea-section--tight-top{
  padding-top:20px;
}

.ea-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  padding:.45rem .9rem;
  border-radius:999px;
  background:rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.16);
  font-size:13px;
  font-weight:700;
  letter-spacing:.01em;
  color:rgba(255,255,255,.85);
}
.ea-eyebrow--dark{
  background:var(--ea-green-050);
  border-color:rgba(27,107,58,.12);
  color:var(--ea-green-900);
}

.ea-section-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:1rem;
  margin-bottom:1.6rem;
}
.ea-section-head h2,
.ea-business-cta h2,
.ea-explore__pillar-head h2,
.ea-explore__intro h1{
  margin:0;
  font-family:'Plus Jakarta Sans',system-ui,-apple-system,sans-serif;
  font-weight:800;
  letter-spacing:-.03em;
  line-height:1.1;
  color:var(--ea-text-1);
}
.ea-section-head h2{font-size:clamp(28px,3.2vw,38px)}
.ea-section-head p,
.ea-explore__pillar-head p,
.ea-explore__intro p,
.ea-business-cta p{margin:.4rem 0 0;color:var(--ea-text-3);font-size:15px;line-height:1.6}

.ea-text-link{
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  color:var(--ea-green-800);
  font-weight:700;
  white-space:nowrap;
}
.ea-text-link:hover{color:var(--ea-gold-700)}
.ea-text-link::after{content:'→'}

.ea-field{display:flex;flex-direction:column;gap:.38rem}
.ea-field label{font-size:13px;font-weight:700;color:var(--ea-text-2)}
.ea-input-shell{
  display:flex;
  align-items:center;
  gap:.65rem;
  min-height:56px;
  padding:0 1rem;
  border:1px solid var(--ea-border);
  border-radius:16px;
  background:var(--ea-surface);
  box-shadow:var(--ea-shadow-sm);
}
.ea-input-shell span{color:var(--ea-text-4);flex-shrink:0}
.ea-input-shell input{
  width:100%;
  border:none;
  outline:none;
  background:transparent;
  color:var(--ea-text-1);
  font-size:16px;
}
.ea-input-shell input::placeholder{color:var(--ea-text-4)}

.ea-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:0 1rem;
  border-radius:14px;
  font-size:14px;
  font-weight:800;
  border:1px solid transparent;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background-color .18s ease, color .18s ease;
}
.ea-button:hover{transform:translateY(-1px)}
.ea-button--gold{background:var(--ea-brand-red);color:#fff}
.ea-button--gold:hover{background:var(--ea-brand-red-dark);color:#fff}
.ea-button--gold:hover{background:var(--ea-green-900)}
.ea-button--green{background:var(--ea-green-900);color:#fff}
.ea-button--green:hover{background:var(--ea-green-800)}
.ea-button--line{background:var(--ea-surface);border-color:var(--ea-border);color:var(--ea-text-2)}
.ea-button--line:hover{border-color:var(--ea-green-800);color:var(--ea-green-900)}
.ea-button--wa{background:var(--ea-wa);color:#fff}
.ea-button--wa:hover{background:#1fb859}
.ea-button--solid{width:100%;background:var(--ea-green-900);color:#fff}
.ea-button--solid:hover{background:var(--ea-brand-red-dark)}
.ea-button--ghost-on-dark{border-color:rgba(255,255,255,.35);background:rgba(255,255,255,.04);color:#fff}
.ea-button--ghost-on-dark:hover{background:rgba(255,255,255,.12);color:#fff}

.ea-card-grid{display:grid;gap:1.15rem}
.ea-card-grid--3{grid-template-columns:repeat(3,1fr)}
.ea-card-grid--4{grid-template-columns:repeat(4,1fr)}
.ea-listing-card,
.ea-event-card,
.ea-recent-card,
.ea-pillar-card,
.ea-category-card,
.ea-diaspora-link,
.ea-utility-card,
.ea-explore__card{
  background:var(--ea-surface);
  border:1px solid var(--ea-border);
  border-radius:18px;
  box-shadow:var(--ea-shadow-sm);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background-color .18s ease;
}
.ea-listing-card:hover,
.ea-event-card:hover,
.ea-recent-card:hover,
.ea-pillar-card:hover,
.ea-category-card:hover,
.ea-diaspora-link:hover,
.ea-utility-card:hover,
.ea-explore__card:hover{
  transform:translateY(-2px);
  box-shadow:var(--ea-shadow-md);
  border-color:rgba(27,107,58,.25);
}

.ea-listing-card__body{padding:1.05rem}
.ea-listing-card__body h3,
.ea-recent-card h3,
.ea-event-card h3{margin:0 0 .4rem;font-size:18px;line-height:1.35;font-weight:800;color:var(--ea-text-1)}
.ea-kicker{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--ea-green-800);margin-bottom:.35rem}
.ea-meta{display:flex;flex-wrap:wrap;gap:.35rem 1rem;color:var(--ea-text-3);font-size:13px;margin:0 0 .42rem}
.ea-rating{font-size:13px;font-weight:700;color:var(--ea-gold-700);margin:0 0 .95rem}
.ea-rating span{color:var(--ea-text-3);font-weight:500}
.ea-price{margin:.2rem 0 .9rem;font-size:20px;font-weight:800;color:var(--ea-text-1)}
.ea-price small{font-size:13px;color:var(--ea-text-3);font-weight:600}
.ea-card-actions{display:flex;gap:.65rem;flex-wrap:wrap}
.ea-card-actions .ea-button{flex:1}

.ea-listing-card__media{position:relative;display:grid;place-items:center;height:178px;font-size:3.2rem;border-radius:18px 18px 0 0}
.ea-listing-card__media--green{background:var(--ea-green-050)}
.ea-listing-card__media--gold{background:var(--ea-gold-050)}
.ea-listing-card__media--blue{background:#EBF2FF}
.ea-badges{position:absolute;top:12px;left:12px;right:12px;display:flex;justify-content:space-between;gap:.45rem}
.ea-badge{display:inline-flex;align-items:center;gap:.3rem;min-height:28px;padding:0 .6rem;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.02em}
.ea-badge--verified{background:var(--ea-green-050);border:1px solid rgba(27,107,58,.25);color:var(--ea-green-900)}
.ea-badge--featured{background:var(--ea-gold-700);color:#fff}

.ea-diaspora-grid,
.ea-utility-grid{display:grid;gap:.85rem}
.ea-diaspora-grid{grid-template-columns:repeat(6,1fr)}
.ea-utility-grid{grid-template-columns:repeat(3,1fr)}
.ea-diaspora-link{display:flex;align-items:center;justify-content:center;gap:.55rem;min-height:58px;padding:0 .9rem;font-size:13px;font-weight:800;color:var(--ea-text-2);text-align:center}
.ea-diaspora-link span:first-child{font-size:1.05rem}

/* ─── Diaspora horizontal scroll chips ────────────────────────────── */
.ea-diaspora-scroll{
  display:flex;
  gap:.75rem;
  overflow-x:auto;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
  padding-bottom:4px;
}
.ea-diaspora-scroll::-webkit-scrollbar{display:none}
.ea-diaspora-chip{
  flex:0 0 auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:.5rem;
  padding:1.1rem 1.25rem;
  background:var(--ea-surface);
  border:1px solid var(--ea-border);
  border-radius:var(--ea-r-lg);
  text-decoration:none;
  min-width:110px;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.ea-diaspora-chip:hover{
  transform:translateY(-2px);
  box-shadow:var(--ea-shadow-md);
  border-color:rgba(27,107,58,.22);
}
.ea-diaspora-chip:active{transform:scale(.97)}
.ea-diaspora-chip__icon{
  font-size:1.75rem;
  line-height:1;
  display:block;
}
.ea-diaspora-chip__label{
  font-size:12px;
  font-weight:700;
  color:var(--ea-text-1);
  text-align:center;
  line-height:1.3;
}

/* ─── Global card tap/press states ────────────────────────────────── */
.ea-listing-card:active,
.ea-event-card:active,
.ea-recent-card:active,
.ea-pillar-card:active,
.ea-category-card:active,
.ea-utility-card:active,
.ea-explore__card:active{transform:scale(.98)}

.ea-utility-card{display:flex;align-items:center;gap:.85rem;padding:1rem;background:linear-gradient(180deg,#FFFFFF 0%, #F9F7F3 100%)}
.ea-utility-card__icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;flex-shrink:0;font-size:1.15rem;background:var(--ea-surface-2)}
.ea-utility-card strong{display:block;font-size:14px;line-height:1.25;color:var(--ea-text-1)}
.ea-utility-card span span{display:block;font-size:12px;line-height:1.4;color:var(--ea-text-3);margin-top:.1rem}

@media (max-width:1100px){
  .ea-card-grid--3{grid-template-columns:repeat(2,1fr)}
  .ea-card-grid--4{grid-template-columns:repeat(2,1fr)}
  .ea-diaspora-grid{grid-template-columns:repeat(3,1fr)}
  .ea-utility-grid{grid-template-columns:1fr}
}
@media (max-width:760px){
  :root{--ea-section-gap:48px}
  .ea-shell,.theme-container{width:min(1320px,calc(100% - 32px));}
  .ea-eyebrow{font-size:12px;padding:.35rem .7rem}
  .ea-section-head{flex-direction:column;align-items:flex-start;gap:.5rem}
  .ea-card-grid--3,.ea-card-grid--4{grid-template-columns:1fr}
  .ea-diaspora-grid{grid-template-columns:repeat(2,1fr)}
  .ea-utility-card{align-items:flex-start}
}


/* ─── City hubs ───────────────────────────────────────────────────── */
.ea-city-row{
  display:flex;
  gap:1rem;
  overflow-x:auto;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
  padding-bottom:4px;
}
.ea-city-row::-webkit-scrollbar{display:none}
.ea-city-card{
  flex:0 0 calc(20% - .8rem);
  min-width:0;
  background:var(--ea-surface);
  border:1px solid var(--ea-border);
  border-radius:var(--ea-r-xl);
  padding:1.4rem 1.25rem 1.2rem;
  text-decoration:none;
  display:flex;
  flex-direction:column;
  gap:.3rem;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  position:relative;
  overflow:hidden;
}
.ea-city-card::before{
  content:'';
  position:absolute;
  inset:0;
  opacity:0;
  transition:opacity .18s ease;
}
.ea-city-card:hover{
  transform:translateY(-3px);
  box-shadow:var(--ea-shadow-md);
  border-color:rgba(27,107,58,.22);
}
.ea-city-card:hover::before{opacity:1}
.ea-city-card__flag{
  font-size:2rem;
  line-height:1;
  margin-bottom:.5rem;
  display:block;
}
.ea-city-card__city{
  display:block;
  font-size:17px;
  font-weight:800;
  color:var(--ea-text-1);
  letter-spacing:-.02em;
  line-height:1.15;
}
.ea-city-card__country{
  display:block;
  font-size:12px;
  color:var(--ea-text-3);
  font-weight:500;
  margin-top:.1rem;
}
.ea-city-card__cta{
  display:inline-flex;
  align-items:center;
  gap:.3rem;
  margin-top:.75rem;
  font-size:12px;
  font-weight:700;
  color:var(--ea-green-800);
}
.ea-city-card__cta::after{content:'→'}

/* Per-city background tints */
.ea-city-card--london  {background:linear-gradient(135deg,#EFF4FF 0%,#E8F0FE 100%)}
.ea-city-card--dc      {background:linear-gradient(135deg,#FFF5F5 0%,#FEE8E8 100%)}
.ea-city-card--toronto {background:linear-gradient(135deg,#FFFBF0 0%,#FEF3E2 100%)}
.ea-city-card--dubai   {background:linear-gradient(135deg,#FDFAF0 0%,#FDF6E3 100%)}
.ea-city-card--addis   {background:linear-gradient(135deg,#F0FAF3 0%,#E8F5ED 100%)}

@media (max-width:1100px){
  .ea-city-card{flex:0 0 calc(25% - .75rem)}
}
@media (max-width:760px){
  .ea-city-row{
    gap:.75rem;
    /* peek-through: last card shows ~30px of the next one */
    padding-right:1rem;
  }
  .ea-city-card{
    flex:0 0 200px;
    padding:1.15rem 1rem 1rem;
    border-radius:var(--ea-r-lg);
  }
  .ea-city-card__flag{font-size:1.75rem;margin-bottom:.4rem}
  .ea-city-card__city{font-size:16px}
}

/* ─── Inner pages (About, Pricing, How It Works, Help, Safety) ────── */
.ea-inner-page__hero{
  background:linear-gradient(135deg,var(--ea-green-900) 0%,#0D5C2E 100%);
  padding:clamp(3rem,8vw,5rem) 0 clamp(2.5rem,6vw,4rem);
}
.ea-inner-page__hero .ea-eyebrow{color:rgba(255,255,255,.7);font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;display:block;margin-bottom:.75rem}
.ea-inner-page__hero h1{color:#fff;font-size:clamp(2rem,5vw,3rem);font-weight:900;letter-spacing:-.03em;margin:0 0 .75rem;line-height:1.1}
.ea-inner-page__hero p{color:rgba(255,255,255,.8);font-size:18px;margin:0;max-width:52ch}
.ea-inner-page__body{padding:3rem 0 5rem}
.ea-inner-section{margin-bottom:3rem}
.ea-inner-section h2{font-size:clamp(1.4rem,3vw,1.9rem);font-weight:900;letter-spacing:-.025em;color:var(--ea-text-1);margin:0 0 1.25rem}
.ea-inner-section p{font-size:16px;line-height:1.7;color:var(--ea-text-2);max-width:68ch;margin:0 0 1rem}
.ea-inner-section--alt{background:var(--ea-surface-2);border-radius:var(--ea-r-xl);padding:2rem;margin-left:-1rem;margin-right:-1rem}
.ea-inner-section--cta{text-align:center;padding:3rem 1rem;background:linear-gradient(135deg,#F0FAF3,#E8F5ED);border-radius:var(--ea-r-xl)}
.ea-inner-section--cta h2{margin-bottom:.5rem}
.ea-inner-page__actions{display:flex;gap:.85rem;flex-wrap:wrap;margin-top:1.5rem;justify-content:center}

/* About grid */
.ea-about-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:1.5rem}
.ea-about-card{background:var(--ea-surface);border:1px solid var(--ea-border);border-radius:var(--ea-r-xl);padding:1.5rem 1.25rem}
.ea-about-card__icon{font-size:2rem;display:block;margin-bottom:.75rem}
.ea-about-card h3{font-size:16px;font-weight:800;color:var(--ea-text-1);margin:0 0 .5rem}
.ea-about-card p{font-size:14px;color:var(--ea-text-3);line-height:1.6;margin:0}

/* Pricing grid */
.ea-pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:1.5rem;align-items:start}
.ea-pricing-card{background:var(--ea-surface);border:1.5px solid var(--ea-border);border-radius:var(--ea-r-xl);padding:1.75rem 1.5rem;position:relative}
.ea-pricing-card--featured{border-color:var(--ea-green-800);box-shadow:0 8px 32px rgba(15,64,35,.12)}
.ea-pricing-card__badge{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--ea-green-900);color:#fff;font-size:11px;font-weight:700;padding:3px 12px;border-radius:999px;white-space:nowrap}
.ea-pricing-card__header h2{font-size:22px;font-weight:900;color:var(--ea-text-1);margin:0 0 .5rem}
.ea-pricing-card__price{margin-bottom:.75rem}
.ea-price-amount{font-size:2.25rem;font-weight:900;color:var(--ea-green-900);letter-spacing:-.03em}
.ea-price-period{font-size:14px;color:var(--ea-text-3);margin-left:.25rem}
.ea-pricing-card__header p{font-size:14px;color:var(--ea-text-3);margin:0 0 1.25rem}
.ea-pricing-card__features{list-style:none;padding:0;margin:0 0 1.5rem;display:grid;gap:.55rem}
.ea-pricing-card__features li{font-size:14px;color:var(--ea-text-2);line-height:1.4}

/* Steps */
.ea-steps{display:grid;gap:1.5rem;margin-top:1rem}
.ea-step{display:grid;grid-template-columns:48px 1fr;gap:1.25rem;align-items:start}
.ea-step__number{width:48px;height:48px;border-radius:50%;background:var(--ea-green-900);color:#fff;font-size:20px;font-weight:900;display:grid;place-items:center;flex-shrink:0}
.ea-step__body h3{font-size:18px;font-weight:800;color:var(--ea-text-1);margin:0 0 .4rem}
.ea-step__body p{font-size:15px;color:var(--ea-text-2);line-height:1.6;margin:0}

/* FAQ */
.ea-faq-list{display:grid;gap:.85rem;margin-top:1rem}
.ea-faq-item{background:var(--ea-surface);border:1px solid var(--ea-border);border-radius:var(--ea-r-lg);padding:1.25rem 1.5rem}
.ea-faq-item h3{font-size:16px;font-weight:800;color:var(--ea-text-1);margin:0 0 .5rem}
.ea-faq-item p{font-size:14px;color:var(--ea-text-2);line-height:1.6;margin:0}
.ea-faq-item a{color:var(--ea-green-800);text-decoration:underline}

/* Feature list */
.ea-feature-list{padding:0;margin:1rem 0 0;list-style:none;display:grid;gap:.85rem}
.ea-feature-list li{font-size:15px;color:var(--ea-text-2);line-height:1.6;padding-left:1.5rem;position:relative}
.ea-feature-list li::before{content:'✓';position:absolute;left:0;color:var(--ea-green-800);font-weight:700}

/* Ghost button for inner pages */
.ea-button--ghost{background:transparent;border-color:var(--ea-green-800);color:var(--ea-green-800)}
.ea-button--ghost:hover{background:var(--ea-green-050)}

/* Mobile adjustments */
@media(max-width:760px){
  .ea-about-grid{grid-template-columns:1fr}
  .ea-pricing-grid{grid-template-columns:1fr}
  .ea-inner-section--alt{margin-left:0;margin-right:0}
  .ea-inner-page__hero h1{font-size:clamp(1.75rem,8vw,2.5rem)}
  .ea-inner-page__hero p{font-size:16px}
  .ea-step{grid-template-columns:40px 1fr;gap:1rem}
  .ea-step__number{width:40px;height:40px;font-size:17px}
}

/* ─── Suppress Directorist PRE-HEADER injections ────────────────────── */
/* Exact selectors confirmed from live page source                       */
/* Safe: does NOT hide .directorist-wrapper (listing content)            */

/* Login/signup modal popup */
.directorist-signin-signup-wrap,
.atbdp-signin-signup-wrap,
.directorist-login-register,
.atbdp-login-register-wrap,
.atbdp_login_register_modal,
.directorist-modal-wrap,
.atbdp-modal,
[class*="atbdp-popup"],
[class*="directorist-popup"],

/* Directory type tab nav injected before header */
.directorist-archive-header,
.directorist-all-listing-header,
.atbdp-directory-type-nav,
.directorist-type-nav,
body > .directorist-pre-header,
body > .atbdp-pre-header,

/* Pre-header search bar */
.atbdp-search-filter-form,
.atbdp_search_form_area,
.atbdp-top-search-form{
  display:none !important;
  visibility:hidden !important;
  height:0 !important;
  max-height:0 !important;
  overflow:hidden !important;
  pointer-events:none !important;
}

/* Note: .directorist-wrapper is intentionally NOT targeted —
   it wraps real listing content on all-listings pages */

/* Hamburger drawer — nuke any Directorist bleed */
.main-navigation [class*="atbdp"],
.main-navigation [class*="directorist"],
#mobile-menu [class*="atbdp"],
#mobile-menu [class*="directorist"],
.mean-container [class*="atbdp"],
.mean-container [class*="directorist"]{
  display:none !important;
}
#mobile-menu .directorist-signin-signup-wrap,
.mean-container .atbdp-search-filter-form,
.mean-container .directorist-signin-signup-wrap{
  display:none !important;
}

/* ─── Skip to content link — accessibility ────────────────────────── */
.skip-link:not(.ea-skip-link){display:none}
.ea-skip-link{
  position:absolute;
  top:-200px;
  left:50%;
  transform:translateX(-50%);
  z-index:99999;
  padding:.6rem 1.2rem;
  background:var(--ea-green-900);
  color:#fff;
  font-size:14px;
  font-weight:700;
  border-radius:0 0 10px 10px;
  text-decoration:none;
  white-space:nowrap;
  transition:top .15s ease;
}
.ea-skip-link:focus{
  top:0;
  outline:3px solid var(--ea-gold-500);
  outline-offset:2px;
}

/* ─── Section empty state ──────────────────────────────────────────── */
.ea-section-empty-state{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:3rem 1.5rem;
  border:1.5px dashed var(--ea-border);
  border-radius:var(--ea-r-xl);
  background:var(--ea-surface);
}
.ea-section-empty-state__icon{
  font-size:2.5rem;
  margin-bottom:.75rem;
  opacity:.55;
}
.ea-section-empty-state h3{
  margin:0 0 .35rem;
  font-size:18px;
  font-weight:800;
  color:var(--ea-text-1);
  letter-spacing:-.02em;
}
.ea-section-empty-state p{
  margin:0 0 1.25rem;
  font-size:14px;
  color:var(--ea-text-3);
  max-width:32ch;
  line-height:1.55;
}

.ea-site-footer{background:linear-gradient(180deg,#FCFBF8 0%,#F5F2EC 100%);border-top:1px solid rgba(15,64,35,.08);margin-top:28px}
.ea-site-footer__top{padding:56px 0 36px}
.ea-site-footer__inner{display:grid;grid-template-columns:minmax(260px,320px) 1fr;gap:36px;align-items:start}
.ea-site-footer__logo{display:inline-block;font-size:28px;font-weight:900;letter-spacing:-.03em;color:var(--ea-green-900)}
.ea-site-footer__brand p{margin:14px 0 0;max-width:32ch;color:var(--ea-text-3);font-size:15px;line-height:1.68}
.ea-site-footer__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.ea-site-footer__column h2{margin:0 0 14px;font-size:15px;font-weight:900;line-height:1.2;color:var(--ea-text-1);letter-spacing:.01em}
.ea-site-footer__column ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.ea-site-footer__column a{color:var(--ea-text-2);font-size:14px;line-height:1.45}
.ea-site-footer__column a:hover{color:var(--ea-green-900)}
.ea-site-footer__bottom{border-top:1px solid rgba(15,64,35,.08);padding:16px 0 22px}
.ea-site-footer__bottom-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.ea-site-footer__bottom p{margin:0;color:var(--ea-text-4);font-size:12px;line-height:1.45}

@media (max-width:1100px){
  .ea-site-footer__inner{grid-template-columns:1fr;gap:28px}
  .ea-site-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:760px){
  .ea-site-footer__top{padding:40px 0 24px}
  .ea-site-footer__grid{grid-template-columns:1fr;gap:22px}
  .ea-site-footer__column{padding-bottom:14px;border-bottom:1px solid rgba(0,0,0,.06)}
  .ea-site-footer__column:last-child{border-bottom:none;padding-bottom:0}
  .ea-site-footer__bottom-inner{display:grid;gap:6px}
}

/* ─── Mobile nav — global so it applies on every page ─────────────── */
.ea-mobile-nav{display:none}
@media (max-width:760px){
  body{padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))}
  .ea-mobile-nav{
    display:block;
    position:fixed;
    left:50%;
    width:min(calc(100% - 32px),420px);
    transform:translateX(-50%);
    bottom:calc(env(safe-area-inset-bottom,0px) + 12px);
    z-index:9999;
    pointer-events:none;
  }
  .ea-mobile-nav__shell{
    pointer-events:auto;
    position:relative;
    display:grid;
    grid-template-columns:repeat(5,1fr);
    align-items:end;
    min-height:62px;
    padding:8px 8px 8px;
    border:1px solid rgba(17,17,17,.08);
    border-radius:18px;
    background:rgba(255,255,255,.97);
    box-shadow:0 12px 28px rgba(17,17,17,.14),0 2px 8px rgba(17,17,17,.05);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
  }
  .ea-mobile-nav__item{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:flex-end;
    gap:3px;
    min-height:48px;
    color:var(--ea-text-3);
    text-decoration:none;
  }
  .ea-mobile-nav__icon{
    display:flex;
    align-items:center;
    justify-content:center;
    width:24px;
    height:24px;
  }
  .ea-mobile-nav__icon svg{
    width:22px;
    height:22px;
    flex-shrink:0;
  }
  .ea-mobile-nav__label{
    font-size:10px;
    font-weight:700;
    line-height:1.1;
  }
  .ea-mobile-nav__item.is-active{color:var(--ea-green-900)}
  .ea-mobile-nav__item--center{
    position:relative;
    align-self:flex-start;
    justify-content:center;
    gap:0;
    transform:translateY(-12px);
  }
  .ea-mobile-nav__item--center .ea-mobile-nav__icon{
    width:46px;
    height:46px;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    border-radius:50%;
    background:var(--ea-green-800);
    box-shadow:0 12px 24px rgba(15,64,35,.24);
  }
  .ea-mobile-nav__item--center .ea-mobile-nav__icon svg{
    width:22px;
    height:22px;
    color:#fff;
  }
  .ea-mobile-nav__item--center .ea-mobile-nav__label{margin-top:6px}
}

.ea-listing-card__media{overflow:hidden}
.ea-listing-card__image{width:100%;height:100%;object-fit:cover;display:block}


/* ─── Tender results readability + fallback card content ───────────── */
body.ea-tenders-results .directorist-single-listing,
body.ea-tenders-results .directorist-listing-single,
body.ea-tenders-results .atbd_single_listing,
body.ea-tenders-results [class*="directorist-listing"]{overflow:hidden}
body.ea-tenders-results .ea-tender-fallback{display:block;padding:14px 16px 16px;background:#fff;border-top:1px solid rgba(15,64,35,.08)}
body.ea-tenders-results .ea-tender-fallback__kicker{display:inline-flex;align-items:center;gap:8px;min-height:28px;padding:0 10px;border-radius:999px;background:#F4F7FB;color:var(--ea-green-900);font-size:11px;font-weight:800;letter-spacing:.03em;text-transform:uppercase}
body.ea-tenders-results .ea-tender-fallback__title{display:block;margin:10px 0 8px;color:var(--ea-text-1);font-size:16px;line-height:1.35;font-weight:800;text-decoration:none}
body.ea-tenders-results .ea-tender-fallback__title:hover{color:var(--ea-green-900)}
body.ea-tenders-results .ea-tender-fallback__meta{margin:0 0 12px;color:var(--ea-text-3);font-size:13px;line-height:1.55}
body.ea-tenders-results .ea-tender-fallback__actions{display:flex;gap:10px;flex-wrap:wrap}
body.ea-tenders-results .ea-tender-fallback__actions a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 14px;border-radius:999px;font-size:13px;font-weight:800;text-decoration:none}
body.ea-tenders-results .ea-tender-fallback__actions .ea-tender-fallback__view{background:var(--ea-green-900);color:#fff}
body.ea-tenders-results .ea-tender-fallback__actions .ea-tender-fallback__browse{background:#fff;border:1px solid var(--ea-border);color:var(--ea-green-900)}
@media (max-width:760px){body.ea-tenders-results .ea-tender-fallback{padding:12px 14px 14px}body.ea-tenders-results .ea-tender-fallback__title{font-size:15px}body.ea-tenders-results .ea-tender-fallback__actions a{min-height:38px;font-size:12.5px}}


/* ─── v3.0.85 White header + brand red unification ─────────────────── */
/* Override OneListing Pro green header with white — industry standard  */
/* Multiple selectors cover all OneListing Pro header variations        */

.site-header,
.site-header .header-inner,
.site-header .header-container,
.header-wrap,
header.site-header,
#masthead,
#masthead .header-inner,
.onelisting-header,
.header-v1,
.header-default{
  background:#ffffff !important;
  background-color:#ffffff !important;
  border-bottom:1px solid #E8E4DE !important;
  box-shadow:0 1px 0 rgba(0,0,0,.06) !important;
}

/* Nav links — dark text on white background */
.site-header .nav-menu > li > a,
.site-header .main-navigation a,
.site-header .primary-menu > li > a,
.site-header ul.menu > li > a,
.site-header .menu-item > a,
#masthead .nav-menu > li > a,
#masthead .menu-item > a{
  color:#111111 !important;
}
.site-header .nav-menu > li > a:hover,
.site-header .menu-item > a:hover,
#masthead .nav-menu > li > a:hover,
#masthead .menu-item > a:hover{
  color:var(--ea-brand-red) !important;
}

/* Active nav item */
.site-header .nav-menu > .current-menu-item > a,
.site-header .menu-item.current-menu-item > a,
#masthead .current-menu-item > a{
  color:var(--ea-brand-red) !important;
}

/* Hamburger icon — dark on white */
.site-header .hamburger-menu,
.site-header .menu-toggle,
#masthead .menu-toggle{
  color:#111111 !important;
}
.site-header .hamburger-menu span,
.site-header .menu-toggle span,
#masthead .hamburger-toggle span{
  background:#111111 !important;
}

/* Add Listing button — brand red */
.site-header .btn-add-listing,
.site-header .add-listing-btn,
.site-header .header-btn,
.site-header a[href*="add-listing"],
.site-header .button.add-listing,
#masthead .btn-add-listing,
#masthead a[href*="add-listing"]{
  background:var(--ea-brand-red) !important;
  background-color:var(--ea-brand-red) !important;
  color:#ffffff !important;
  border-color:var(--ea-brand-red) !important;
}
.site-header .btn-add-listing:hover,
.site-header a[href*="add-listing"]:hover,
#masthead a[href*="add-listing"]:hover{
  background:var(--ea-brand-red-dark) !important;
  background-color:var(--ea-brand-red-dark) !important;
}

/* Sign In link — dark text */
.site-header .sign-in,
.site-header .header-sign-in,
.site-header a.sign-in,
#masthead .sign-in{
  color:#111111 !important;
}

/* Search icon — dark */
.site-header .header-search-icon,
.site-header .search-toggle,
#masthead .search-toggle{
  color:#111111 !important;
}

/* Logo area — ensure logo shows on white */
.site-header .site-logo,
.site-header .custom-logo-link,
#masthead .site-branding{
  background:transparent !important;
}

/* Sticky header — keep white */
.site-header.sticky,
.site-header.fixed,
.site-header.is-sticky,
.sticky-header{
  background:#ffffff !important;
  border-bottom:1px solid #E8E4DE !important;
}

/* Mobile header — also white */
@media (max-width:760px){
  .site-header,
  .site-header .header-inner,
  #masthead,
  .header-wrap{
    background:#ffffff !important;
  }
  .site-header .menu-toggle span,
  .site-header .hamburger-menu span{
    background:#111111 !important;
  }
}

/* ─── v3.0.85 additional header coverage ───────────────────────────── */

/* OneListing Pro specific class variants */
.header-style-1,
.header-style-2,
.header-style-3,
.header-absolute,
.header-transparent,
[class*="header-style"]{
  background:#ffffff !important;
  background-color:#ffffff !important;
}

/* Mobile dropdown panel — white background when hamburger opens */
.site-header .mobile-menu,
.site-header .mobile-nav,
.site-header .responsive-menu,
.site-header .nav-menu-mobile,
#mobile-menu,
.mobile-menu-container,
.mean-container .mean-nav{
  background:#ffffff !important;
}
/* Mobile menu links — dark */
.site-header .mobile-menu a,
.site-header .responsive-menu a,
.mean-container .mean-nav ul li a{
  color:#111111 !important;
  border-bottom-color:#E8E4DE !important;
}

/* OneListing sign-in button in header (circular icon style) */
.site-header .header-account-btn,
.site-header .user-account,
.site-header .account-btn,
#masthead .account-btn{
  color:#111111 !important;
  background:transparent !important;
}

/* OneListing Plus (+) Add button variant */
.site-header .header-add-btn,
.site-header [class*="add-btn"],
.site-header [class*="post-btn"]{
  background:var(--ea-brand-red) !important;
  color:#ffffff !important;
}


/* ─── Floating help button ──────────────────────────────────────────── */
.ea-help-fab{
  display:none;
}
@media (max-width:760px){
  .ea-help-fab{
    display:flex;
    align-items:center;
    justify-content:center;
    position:fixed;
    bottom:calc(96px + env(safe-area-inset-bottom,0px) + 12px);
    right:16px;
    width:40px;
    height:40px;
    border-radius:50%;
    background:var(--ea-green-800);
    color:#fff;
    box-shadow:0 2px 12px rgba(0,0,0,.18);
    z-index:9998;
    text-decoration:none;
    transition:transform .15s ease, background .15s ease;
  }
  .ea-help-fab:hover,
  .ea-help-fab:active{
    background:var(--ea-green-900);
    transform:scale(1.08);
  }
  .ea-help-fab svg{
    width:20px;
    height:20px;
    stroke:#fff;
    fill:none;
    stroke-width:2;
    stroke-linecap:round;
    stroke-linejoin:round;
  }
}


/* ─── Fix gap on all-listings / Browse page on mobile ───────────────── */
/* When Directorist header is OFF, it leaves empty space above content   */
.directorist-all-listing-contents,
.directorist-archive-wrapper,
.atbdp-all-listing-contents{
  margin-top:0 !important;
  padding-top:0 !important;
}
/* Remove any top whitespace from the Directorist wrapper on listing pages */
.directorist-wrapper{
  margin-top:0 !important;
}
@media (max-width:760px){
  .directorist-wrapper{
    padding-top:0 !important;
  }
  /* Remove large top gap that appears after hidden Directorist header */
  .directorist-all-listing-header + *,
  .directorist-archive-header + *{
    margin-top:0 !important;
    padding-top:0 !important;
  }
}


/* ─── Header search z-index fix ─────────────────────────────────────── */
/* Ensure OneListing Pro header search dropdown sits above all elements  */
.site-header .header-search,
.site-header .search-wrap,
.site-header .header-search-wrap,
.site-header .search-form,
#masthead .header-search,
#masthead .search-toggle,
#masthead .search-wrap{
  z-index:99999 !important;
  position:relative !important;
}
/* Search dropdown overlay */
.site-header .search-container,
.site-header .search-dropdown,
.header-search-container{
  z-index:99999 !important;
}
