/* ==========================================================================
   Africompass header & footer  —  mobile-first, v1.3
   File: wp-content/themes/africompass/assets/acmp-hf.css
   Warm editorial palette. No green. Hover/active = brand orange.
   Plan CTA = bold sunset gradient that pops.
   ========================================================================== */
:root{
	--acmp-o:#ea7940;
	--acmp-o-deep:#d8662f;
	--acmp-dark:#16150f;
	--acmp-ink:#1f1c16;
	--acmp-line:#ece8e1;
	--acmp-cream:#faf5ee;
	--acmp-sand:#fdf0e7;
	--acmp-warm:#5c5749;
}
.acmp-container{max-width:1180px;margin:0 auto;padding:0 22px;}

.acmp-reviews__h::before,
.acmp-plan__h::before,
.acmp-faq__h::before{
	display:block;font-family:'Montserrat',system-ui,sans-serif;
	font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
	color:var(--acmp-o);margin-bottom:10px;
}
.acmp-reviews__h::before{content:"Reviews";}
.acmp-plan__h::before{content:"Plan with us";}
.acmp-faq__h::before{content:"Good to know";}

/* ============================ HEADER (premium) =========================== */
/* top marquee strip */
.acmp-marquee{background:#16150f;color:#fff;overflow:hidden;font-family:'Montserrat',system-ui,sans-serif;}
.acmp-marquee__in{display:flex;align-items:center;min-height:42px;}
.acmp-marquee__track{flex:1 1 auto;min-width:0;overflow:hidden;}
.acmp-marquee__text{display:inline-flex;white-space:nowrap;animation:acmp-marq 30s linear infinite;will-change:transform;}
.acmp-marquee__text span{padding-right:3.5rem;font-size:13px;letter-spacing:.02em;color:#fff;}
.acmp-marquee:hover .acmp-marquee__text{animation-play-state:paused;}
@keyframes acmp-marq{from{transform:translateX(0);}to{transform:translateX(-50%);}}
@media (prefers-reduced-motion:reduce){.acmp-marquee__text{animation:none;}}

/* main bar */
.acmp-header{position:sticky;top:0;z-index:1000;background:#fff;font-family:'Montserrat',system-ui,sans-serif;transition:box-shadow .25s ease;}
.acmp-header.is-stuck{box-shadow:0 8px 30px rgba(20,18,12,.10);}
.acmp-header__in{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:92px;transition:min-height .25s ease;}
.acmp-header.is-stuck .acmp-header__in{min-height:72px;}
.acmp-header__logo img{max-height:64px;width:auto;max-width:300px !important;display:block;transition:max-height .25s ease;}
.acmp-header.is-stuck .acmp-header__logo img{max-height:54px;}
@media (min-width:1000px){ .acmp-header__logo img{max-height:76px;} .acmp-header.is-stuck .acmp-header__logo img{max-height:60px;} }
.acmp-logo-text{font-family:'Poppins','Montserrat',sans-serif;font-weight:800;font-size:23px;color:var(--acmp-ink);text-decoration:none;letter-spacing:-.01em;}

/* desktop nav */
.acmp-nav{display:none;}
@media (min-width:1000px){ .acmp-nav{display:flex;flex:1;justify-content:center;} }
.acmp-menu{display:flex;list-style:none;margin:0;padding:0;gap:34px;align-items:center;}
.acmp-menu>li{position:relative;}
.acmp-menu>li>a{position:relative;font-family:'Montserrat',system-ui,sans-serif;font-weight:600;font-size:14.5px;letter-spacing:.02em;color:var(--acmp-ink);text-decoration:none;padding:10px 0;display:inline-block;transition:color .18s ease;}
.acmp-menu>li>a::after{content:"";position:absolute;left:0;bottom:4px;height:2px;width:0;background:var(--acmp-o);transition:width .22s ease;}
.acmp-menu>li:hover>a,.acmp-menu .current-menu-item>a,.acmp-menu .current-menu-parent>a{color:var(--acmp-o);}
.acmp-menu>li:hover>a::after,.acmp-menu .current-menu-item>a::after{width:100%;}
.acmp-menu .sub-menu{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(8px);min-width:222px;background:#fff;border:1px solid var(--acmp-line);box-shadow:0 18px 44px rgba(20,18,12,.14);border-radius:14px;padding:10px;list-style:none;margin:14px 0 0;opacity:0;visibility:hidden;transition:opacity .2s ease,transform .2s ease;}
.acmp-menu>li:hover>.sub-menu{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);}
.acmp-menu .sub-menu a{display:block;padding:10px 14px;border-radius:9px;font-size:14px;font-weight:500;color:var(--acmp-ink);text-decoration:none;white-space:nowrap;transition:.15s ease;}
.acmp-menu .sub-menu a:hover{background:var(--acmp-sand);color:var(--acmp-o);}

/* mega menu: top-level icon + chevron */
.acmp-mi__ico{display:inline-flex;align-items:center;margin-right:7px;color:var(--acmp-o);}
.acmp-mi__ico svg{width:16px;height:16px;}
.acmp-mi__label{vertical-align:middle;}
.acmp-mi__chev{width:11px;height:11px;margin-left:5px;vertical-align:middle;transition:transform .2s ease;}
.acmp-menu>li:hover .acmp-mi__chev{transform:rotate(180deg);}
/* mega panel */
.acmp-menu>li>.acmp-mega{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(8px);background:#fff;border:1px solid var(--acmp-line);box-shadow:0 20px 48px rgba(20,18,12,.16);border-radius:18px;padding:14px;margin-top:14px;opacity:0;visibility:hidden;transition:opacity .2s ease,transform .2s ease;z-index:60;}
.acmp-menu>li:hover>.acmp-mega{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);}
.acmp-mega__grid{display:grid;grid-template-columns:repeat(2,minmax(230px,1fr));gap:4px;}
@media (min-width:1280px){ .acmp-mega__grid{grid-template-columns:repeat(3,minmax(220px,1fr));} }
.acmp-mc{display:flex;align-items:flex-start;gap:13px;padding:12px;border-radius:12px;text-decoration:none;transition:background .15s ease;}
.acmp-mc:hover{background:var(--acmp-sand);}
.acmp-mc__ico{flex:0 0 auto;width:44px;height:44px;border-radius:11px;background:var(--acmp-sand);display:flex;align-items:center;justify-content:center;color:var(--acmp-o);transition:.15s ease;}
.acmp-mc__ico svg{width:22px;height:22px;}
.acmp-mc:hover .acmp-mc__ico{background:var(--acmp-o);color:#fff;}
.acmp-mc__body{min-width:0;}
.acmp-mc__title{display:block;font-size:14.5px;font-weight:700;color:var(--acmp-ink);line-height:1.2;}
.acmp-mc__sub{display:block;font-size:12.5px;color:var(--acmp-warm);margin-top:3px;line-height:1.4;}

/* right side actions */
.acmp-header__actions{display:flex;align-items:center;gap:14px;}
.acmp-cta{background:linear-gradient(135deg,#f5873f,#e0641c);color:#fff;font-weight:700;font-size:14.5px;letter-spacing:.01em;text-decoration:none;padding:13px 26px;border-radius:999px;white-space:nowrap;box-shadow:0 10px 24px rgba(224,100,28,.40);transition:filter .15s ease,transform .15s ease,box-shadow .15s ease;}
.acmp-cta:hover{filter:brightness(1.06);color:#fff;transform:translateY(-2px);box-shadow:0 14px 30px rgba(224,100,28,.5);}
@media (max-width:999px){ .acmp-header__actions .acmp-cta{display:none;} }

.acmp-burger{display:flex;flex-direction:column;gap:6px;background:none;border:0;cursor:pointer;padding:8px;}
@media (min-width:1000px){ .acmp-burger{display:none;} }
.acmp-burger span{width:26px;height:2px;background:var(--acmp-ink);border-radius:2px;}

/* mobile slide-in drawer */
.acmp-drawer-ov{position:fixed;inset:0;background:rgba(20,18,12,.5);opacity:0;visibility:hidden;transition:.25s ease;z-index:1000000;}
.acmp-drawer-ov.is-open{opacity:1;visibility:visible;}
.acmp-drawer{position:fixed;top:0;right:0;height:100%;width:86%;max-width:360px;background:#fff;z-index:1000001;transform:translateX(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;overflow-y:auto;box-shadow:-20px 0 50px rgba(0,0,0,.2);}
.acmp-drawer.is-open{transform:translateX(0);}
.acmp-drawer__top{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid var(--acmp-line);}
.acmp-drawer__top img{max-height:42px;width:auto;max-width:160px !important;}
.acmp-drawer__top .acmp-logo-text{font-size:20px;}
.acmp-drawer-close{background:none;border:0;cursor:pointer;color:var(--acmp-ink);padding:6px;line-height:0;}
.acmp-drawer-close svg{width:22px;height:22px;}
.acmp-drawer-menu{list-style:none;margin:0;padding:10px 14px;flex:1;}
.acmp-drawer-menu li{border-bottom:1px solid var(--acmp-line);}
.acmp-drawer-menu a{display:flex;align-items:center;padding:14px 8px;color:var(--acmp-ink);text-decoration:none;font-weight:600;font-size:15.5px;}
.acmp-drawer-menu a:hover{color:var(--acmp-o);}
.acmp-di__ico{display:inline-flex;align-items:center;margin-right:10px;color:var(--acmp-o);}
.acmp-di__ico svg{width:17px;height:17px;}
.acmp-drawer-menu .acmp-di--child a{padding-left:14px;color:var(--acmp-warm);font-weight:500;font-size:14px;}
.acmp-drawer-menu .sub-menu{list-style:none;margin:0;padding:0 0 8px 14px;}
.acmp-drawer-menu .sub-menu li{border:0;}
.acmp-drawer-menu .sub-menu a{padding:9px 8px;font-weight:500;font-size:14px;color:var(--acmp-warm);}
.acmp-drawer__foot{padding:18px 22px 26px;border-top:1px solid var(--acmp-line);}
.acmp-drawer__cta{display:flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(135deg,#f5873f,#e0641c);color:#fff;font-weight:700;padding:14px;border-radius:999px;text-decoration:none;}
.acmp-drawer__cta:hover{filter:brightness(1.06);color:#fff;}
.acmp-drawer__cta svg{width:16px;height:16px;}

/* header hardening: beat theme nav typography */
.acmp-header .acmp-menu>li>a,.acmp-drawer .acmp-drawer-menu a{font-family:'Montserrat',system-ui,sans-serif !important;text-transform:none !important;}
.acmp-header .acmp-menu>li>a{color:var(--acmp-ink) !important;}
.acmp-header .acmp-menu>li:hover>a,.acmp-header .acmp-menu .sub-menu a:hover{color:var(--acmp-o) !important;}

/* ======================= REVIEWS (top of footer) ========================= */
.acmp-reviews{background:var(--acmp-cream);padding:56px 0;font-family:'Montserrat',system-ui,sans-serif;text-align:center;}
.acmp-reviews__h{margin:0 0 26px;}
@media (min-width:1024px){ .acmp-reviews{padding:72px 0;} }

/* ===================== PLAN CTA  (bold sunset gradient) =================== */
.acmp-plan{position:relative;overflow:hidden;font-family:'Montserrat',system-ui,sans-serif;
	background:linear-gradient(115deg,#16150f 0%,#3a281b 40%,#c9551f 100%);}
.acmp-plan::after{content:"";position:absolute;right:-100px;top:-130px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(255,184,122,.38),transparent 70%);pointer-events:none;}
.acmp-plan::before{content:"";position:absolute;left:-90px;bottom:-110px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(234,121,64,.30),transparent 70%);pointer-events:none;}
.acmp-plan__in{position:relative;z-index:1;display:flex;flex-direction:column;gap:28px;padding:54px 0;}
.acmp-plan__h{font-family:'Poppins','Montserrat',sans-serif;font-size:28px;line-height:1.1;font-weight:800;margin:0;color:#fff;}
.acmp-plan__h::before{color:#ffd2b8;}
.acmp-plan__p{margin:14px 0 0;font-size:15px;line-height:1.65;color:rgba(255,255,255,.9);max-width:46ch;}
.acmp-plan__action{display:flex;align-items:center;gap:18px;}
.acmp-plan__avatar{position:relative;flex:0 0 auto;}
.acmp-plan__avatar::before{content:"";position:absolute;inset:-7px;border-radius:50%;border:2px solid rgba(255,255,255,.85);}
.acmp-plan__avatar img{width:78px;height:78px;border-radius:50%;object-fit:cover;display:block;}
.acmp-plan__who{display:flex;flex-direction:column;gap:2px;}
.acmp-plan__name{font-weight:700;font-size:15px;color:#fff;}
.acmp-plan__role{font-size:13px;color:rgba(255,255,255,.82);margin-bottom:14px;}
.acmp-plan__btn{display:inline-block;align-self:flex-start;background:#fff;color:var(--acmp-o-deep);font-weight:700;font-size:15px;padding:14px 30px;border-radius:999px;border:0;cursor:pointer;text-decoration:none;box-shadow:0 12px 28px rgba(0,0,0,.28);transition:transform .15s ease,background .15s ease,color .15s ease;}
.acmp-plan__btn:hover{background:var(--acmp-dark);color:#fff;transform:translateY(-2px);}
@media (min-width:760px){
	.acmp-plan__in{flex-direction:row;align-items:center;justify-content:space-between;padding:68px 0;gap:40px;}
	.acmp-plan__h{font-size:36px;}
}
@media (min-width:1024px){ .acmp-plan__h{font-size:44px;} .acmp-plan__in{padding:80px 0;} }

/* ================================= FAQ =================================== */
.acmp-faq{background:#fff;padding:56px 0;font-family:'Montserrat',system-ui,sans-serif;}
.acmp-faq__h{margin:0 0 22px;}
.acmp-faq__list{max-width:840px;}
.acmp-faq__item{border-bottom:1px solid var(--acmp-line);}
.acmp-faq__q{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 4px;font-weight:600;font-size:16px;color:var(--acmp-ink);transition:color .15s ease;}
.acmp-faq__q::-webkit-details-marker{display:none;}
.acmp-faq__q:hover{color:var(--acmp-o);}
.acmp-faq__chev{width:22px;height:22px;color:var(--acmp-o);flex:0 0 auto;transition:transform .2s ease;}
.acmp-faq__item[open] .acmp-faq__q{color:var(--acmp-o);}
.acmp-faq__item[open] .acmp-faq__chev{transform:rotate(180deg);}
.acmp-faq__a{padding:0 4px 22px 16px;color:var(--acmp-warm);line-height:1.75;font-size:15px;border-left:2px solid var(--acmp-o);margin:0 0 4px;}
.acmp-faq__a p{margin:0 0 10px;}
@media (min-width:1024px){ .acmp-faq{padding:72px 0;} }

/* =============================== FOOTER ================================== */
.acmp-footer{background:var(--acmp-dark);color:rgba(255,255,255,.7);font-family:'Montserrat',system-ui,sans-serif;border-top:3px solid var(--acmp-o);}
.acmp-footer__cols{display:grid;grid-template-columns:1fr;gap:34px;padding:52px 0 36px;}
.acmp-footer__about img{max-height:54px;width:auto;max-width:190px;margin-bottom:16px;display:block;}
.acmp-foot-logo{font-family:'Poppins','Montserrat',sans-serif;font-weight:800;font-size:20px;color:#fff;display:block;margin-bottom:12px;}
.acmp-footer__blurb{font-size:14px;line-height:1.75;max-width:42ch;margin:0;}
.acmp-footer__social{display:flex;gap:11px;margin-top:18px;}
.acmp-footer__social a{width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;color:#fff;transition:.18s ease;}
.acmp-footer__social a:hover{background:var(--acmp-o);border-color:var(--acmp-o);color:#fff;transform:translateY(-2px);}
.acmp-footer__social svg{width:16px;height:16px;}
.acmp-footer__ch{position:relative;font-family:'Poppins','Montserrat',sans-serif;color:#fff;font-size:15px;font-weight:700;margin:0 0 22px;padding-bottom:12px;}
.acmp-footer__ch::after{content:"";position:absolute;left:0;bottom:0;width:26px;height:2px;background:var(--acmp-o);}
.acmp-foot-menu,.acmp-foot-contact{list-style:none;margin:0;padding:0;}
.acmp-foot-menu li,.acmp-foot-contact li{margin-bottom:12px;font-size:14px;line-height:1.5;}
.acmp-foot-menu a,.acmp-foot-contact a{color:rgba(255,255,255,.7);text-decoration:none;transition:color .18s ease,padding-left .18s ease;}
.acmp-foot-menu a:hover{color:var(--acmp-o);padding-left:4px;}
.acmp-foot-contact a:hover{color:var(--acmp-o);}
.acmp-foot-contact li{display:flex;gap:10px;align-items:flex-start;}
.acmp-foot-contact svg{width:16px;height:16px;color:var(--acmp-o);flex:0 0 auto;margin-top:2px;}
.acmp-footer__bottom{border-top:1px solid rgba(255,255,255,.1);}
.acmp-footer__bottom .acmp-container{padding-top:20px;padding-bottom:20px;font-size:13px;color:rgba(255,255,255,.5);}
@media (min-width:680px){ .acmp-footer__cols{grid-template-columns:1fr 1fr;gap:36px;} }
@media (min-width:1024px){ .acmp-footer__cols{grid-template-columns:1.8fr 1fr 1fr 1.4fr;gap:44px;padding:64px 0 42px;} }

/* ========================================================================
   THEME-CONFLICT HARDENING  —  force typography, kill theme green
   ======================================================================== */
.acmp-reviews,.acmp-plan,.acmp-faq,.acmp-footer{font-family:'Montserrat',system-ui,sans-serif !important;}
.acmp-reviews .acmp-reviews__h,
.acmp-plan .acmp-plan__h,
.acmp-faq .acmp-faq__h,
.acmp-footer .acmp-footer__ch{font-family:'Poppins','Montserrat',sans-serif !important;text-transform:none !important;letter-spacing:normal !important;line-height:1.12 !important;}
.acmp-reviews .acmp-reviews__h{font-size:24px !important;font-weight:800 !important;color:var(--acmp-ink) !important;}
.acmp-plan .acmp-plan__h{font-size:28px !important;font-weight:800 !important;color:#fff !important;}
.acmp-plan .acmp-plan__p{font-size:15px !important;color:rgba(255,255,255,.9) !important;}
.acmp-plan .acmp-plan__name{font-size:15px !important;color:#fff !important;}
.acmp-plan .acmp-plan__role{font-size:13px !important;color:rgba(255,255,255,.82) !important;}
.acmp-faq .acmp-faq__h{font-size:24px !important;font-weight:800 !important;color:var(--acmp-ink) !important;}
.acmp-faq .acmp-faq__q{font-size:16px !important;font-weight:600 !important;text-transform:none !important;letter-spacing:normal !important;}
.acmp-faq .acmp-faq__a{font-size:15px !important;line-height:1.75 !important;color:var(--acmp-warm) !important;}
.acmp-footer .acmp-footer__ch{font-size:15px !important;font-weight:700 !important;color:#fff !important;}
.acmp-footer .acmp-footer__blurb{font-size:14px !important;line-height:1.75 !important;color:rgba(255,255,255,.7) !important;margin:0 !important;}
.acmp-footer .acmp-foot-menu a,
.acmp-footer .acmp-foot-contact a,
.acmp-footer .acmp-foot-contact span{font-size:14px !important;line-height:1.5 !important;}
.acmp-footer .acmp-footer__bottom .acmp-container{font-size:13px !important;}
/* hover/active everywhere = orange, never green */
.acmp-reviews a:hover,.acmp-plan a:not(.acmp-plan__btn):hover,.acmp-faq a:hover,.acmp-footer a:hover,
.acmp-faq .acmp-faq__item[open] .acmp-faq__q,
.acmp-faq .acmp-faq__q:hover{color:var(--acmp-o) !important;}
.acmp-footer .acmp-footer__social a:hover{background:var(--acmp-o) !important;border-color:var(--acmp-o) !important;color:#fff !important;}
.acmp-topbar .acmp-topbar__social a:hover{color:var(--acmp-o) !important;}
.acmp-plan .acmp-plan__btn:hover{background:var(--acmp-dark) !important;color:#fff !important;}
.acmp-plan .acmp-plan__h::before{color:#ffd2b8 !important;}
.acmp-faq .acmp-faq__h::before,
.acmp-reviews .acmp-reviews__h::before{color:var(--acmp-o) !important;}
@media (min-width:760px){ .acmp-plan .acmp-plan__h{font-size:36px !important;} }
@media (min-width:1024px){
	.acmp-reviews .acmp-reviews__h,.acmp-faq .acmp-faq__h{font-size:28px !important;}
	.acmp-plan .acmp-plan__h{font-size:44px !important;}
}
