*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:#18332d;background:#fff;line-height:1.65}.container{width:min(1180px,92%);margin:auto}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:1rem;top:1rem;background:#fff;padding:.8rem;z-index:99}.site-header{position:sticky;top:0;background:#fff;border-bottom:1px solid #dbe7e2;z-index:20}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:78px}.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;color:#103a30}.brand span{display:flex;flex-direction:column}.brand small{font-size:.78rem}.site-logo{width:auto;height:62px}.primary-nav{display:flex;align-items:center;gap:.8rem}.primary-nav a{color:#173b32;text-decoration:none;font-weight:700;padding:.7rem}.nav-toggle{display:none}.hero{background:linear-gradient(90deg,rgba(3,31,27,.9),rgba(3,31,27,.55)),url('https://www.africatourvisa.com/img/africa-tour-digital-640.webp') center/cover;min-height:350px;color:#fff;padding:2rem 0}.hero h1,.page-hero h1{font-size:clamp(2rem,2vw,2rem);line-height:1.05;margin:.4rem 0 1rem}.hero h2{font-size:clamp(1.2rem,2vw,1.7rem);font-weight:500}.planner{margin-top:2rem;background:rgba(255,255,255,.96);color:#18332d;padding:1.25rem;border-radius:18px;box-shadow:0 18px 50px rgba(0,0,0,.25)}.planner-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.planner label{display:block;font-weight:700;margin-bottom:.35rem}.planner select,.planner input,.planner button{width:100%;min-height:48px;border:1px solid #9bb9b0;border-radius:10px;padding:.75rem;font:inherit}.btn,.planner button{display:inline-flex;justify-content:center;align-items:center;background:#0f766e;color:#fff;border:0;text-decoration:none;font-weight:800}.planner-result{margin-top:1rem;padding:1rem;background:#ecfdf5;border-left:4px solid #0f766e}.section{padding:2rem 0}.section.alt{background:#f4f8f6}.section h2{font-size:clamp(1.7rem,3vw,2.6rem);line-height:1.2}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.card{border:1px solid #d9e6e1;border-radius:16px;padding:1.2rem;background:#fff}.card h3{margin-top:0}.pill{display:inline-block;background:#dff5ee;color:#0b5f52;padding:.3rem .7rem;border-radius:999px;font-size:.85rem;font-weight:800}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;background:#fff}th,td{padding:.85rem;text-align:left;border:1px solid #d7e5df;vertical-align:top}th{background:#e6f5f0}.page-hero{background:#e9f6f1;padding:3.5rem 0}.breadcrumbs{display:flex;gap:.5rem;flex-wrap:wrap;font-size:.9rem}.checklist{columns:2;padding-left:1.2rem}.country-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}.country-grid a{display:block;padding:.8rem;border:1px solid #d7e5df;border-radius:10px;text-decoration:none;color:#15463a;background:#fff}.site-footer{background:#092f28;color:#dff5ee;padding:3rem 0 1rem}.footer-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:2rem}.site-footer a{color:#fff}.footer-bottom{border-top:1px solid #35645b;margin-top:2rem;padding-top:1rem}.notice{background:#fff4d6;border-left:4px solid #e0a100;padding:1rem}.faq-list details{border-bottom:1px solid #d8e5e0;padding:1rem 0}.faq-list summary{font-weight:800;cursor:pointer}@media(max-width:900px){.planner-grid,.card-grid,.country-grid,.footer-grid{grid-template-columns:1fr 1fr}.nav-toggle{display:block}.primary-nav{display:none;position:absolute;left:0;right:0;top:78px;background:#fff;padding:1rem;flex-direction:column;align-items:stretch}.primary-nav.is-open{display:flex}}@media(max-width:620px){.planner-grid,.card-grid,.country-grid,.footer-grid{grid-template-columns:1fr}.checklist{columns:1}.hero{padding:3rem 0;min-height:auto}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
/* language selector */
.language-selector{position:relative;margin-left:.25rem}
.language-toggle{display:flex;align-items:center;gap:.45rem;min-height:44px;padding:.62rem .85rem;border:1px solid #b9cec7;background:#fff;color:#173b32;border-radius:9px;cursor:pointer;font:inherit;font-weight:700;white-space:nowrap}
.language-toggle:hover,.language-toggle:focus-visible{background:#eef8f4;border-color:#0f766e;outline:3px solid rgba(15,118,110,.2);outline-offset:2px}
.language-menu{position:absolute;top:calc(100% + .5rem);right:0;display:none;min-width:235px;max-height:420px;overflow-y:auto;margin:0;padding:.45rem 0;list-style:none;background:#fff;border:1px solid #d5e3de;border-radius:11px;box-shadow:0 16px 45px rgba(8,47,40,.18);z-index:1000}
.language-menu.is-open{display:block}
.language-menu a{display:block;padding:.65rem 1rem;color:#173b32;text-decoration:none;line-height:1.35}
.language-menu a:hover,.language-menu a:focus-visible{background:#e9f6f1;color:#0b5f52;outline:none}
.language-menu a[aria-current="page"]{font-weight:800;background:#dff5ee}
@media(max-width:900px){.language-selector{margin-left:0;width:100%}.language-toggle{width:100%;justify-content:space-between}.language-menu{position:static;width:100%;max-height:320px;margin-top:.4rem;box-shadow:none}}
