:root{--forest:#103b29;--deep:#09291d;--gold:#b89350;--cream:#f8f5ef;--ink:#1b3025;--muted:#637166;--line:#e6e7df;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.72}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}button,input,textarea,select{font:inherit}.container{width:min(1220px,calc(100% - 48px));margin-inline:auto}.skip{position:absolute;top:-80px;left:10px;z-index:20;background:#fff;padding:8px}.skip:focus{top:8px}.topbar{background:var(--deep);color:#eee;font-size:12px;letter-spacing:.06em}.top-inner{display:flex;justify-content:space-between;gap:12px;padding:7px 0}.topbar a{color:#e5c78f}.site-header{background:#fff;position:sticky;top:0;z-index:100;box-shadow:0 2px 13px #051e1217}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:92px}.logo-link{display:flex;align-items:center;flex:0 0 auto}.logo-link img,.custom-logo{width:205px;height:auto;max-height:78px;object-fit:contain}.nav-list{list-style:none;display:flex;align-items:center;gap:23px;padding:0;margin:0}.nav-list a{font-size:13px;font-weight:700;color:#173825}.nav-list a:hover{color:#a78140}.nav-list li{position:relative}.nav-list .sub-menu{display:none;position:absolute;left:0;top:100%;min-width:220px;padding:12px;background:white;list-style:none;box-shadow:0 15px 30px #0002;z-index:5}.nav-list li:hover>.sub-menu,.nav-list li:focus-within>.sub-menu{display:block}.sub-menu li a{display:block;padding:9px}.btn{border:0;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:15px 25px;background:var(--forest);color:#fff;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border-radius:2px;transition:.2s}.btn:hover{background:#285840;color:#fff}.btn-gold{background:var(--gold);color:#172a1f}.btn-gold:hover{background:#e0bc7a;color:#14281a}.btn-small{padding:11px 16px;font-size:11px;white-space:nowrap}.menu-toggle{display:none}.hero{position:relative;background:linear-gradient(107deg,#082b20e8,#0a3321a9 58%,#173d2655),linear-gradient(135deg,#244332,#68806a);color:#fff;min-height:610px;display:flex;align-items:center;overflow:hidden}.hero.has-photo{background-size:cover;background-position:center}.hero-inner{padding:95px 0 100px}.hero-content{max-width:700px}.kicker{display:block;color:#e3bf75;letter-spacing:.22em;font-size:12px;font-weight:800;text-transform:uppercase;margin-bottom:18px}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;line-height:1.22}h1{font-size:clamp(42px,5.2vw,78px);font-weight:400;letter-spacing:-.025em;margin:0 0 24px}h2{font-size:clamp(30px,3.2vw,47px);font-weight:400;letter-spacing:-.015em;margin:0 0 16px}h3{font-weight:400}p{margin:0 0 18px}.hero p{font-size:18px;color:#e5e9df;max-width:570px;line-height:1.8}.hero-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:30px}.btn-outline{border:1px solid #ffffffa8;background:transparent;color:white}.btn-outline:hover{background:#fff;color:var(--forest)}.section{padding:85px 0}.cream{background:var(--cream)}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.eyebrow{display:block;color:#a37835;font-weight:800;font-size:11px;letter-spacing:.19em;text-transform:uppercase;margin-bottom:13px}.lead{font-size:18px;color:#4f6255}.intro-art,.feature-image{border-radius:2px;min-height:360px;background:linear-gradient(145deg,#335b3b,#ba9e67);position:relative;overflow:hidden}.intro-art img,.feature-image img{height:100%;width:100%;object-fit:cover;position:absolute;inset:0}.intro-art:after{content:'UGANDA  ·  RWANDA  ·  KENYA  ·  TANZANIA  ·  BURUNDI  ·  DR CONGO';display:block;position:absolute;bottom:0;left:0;right:0;padding:22px;background:linear-gradient(transparent,#061a10bc);color:white;font-size:11px;letter-spacing:.14em}.heading-row{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:31px}.heading-row p{max-width:650px;color:var(--muted)}.text-link{color:var(--forest);font-weight:800;border-bottom:1px solid var(--gold);font-size:13px;white-space:nowrap}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}.safari-card{border:1px solid var(--line);background:#fff;min-width:0;box-shadow:0 5px 20px #17342109;transition:transform .2s,box-shadow .2s}.safari-card:hover{transform:translateY(-4px);box-shadow:0 15px 30px #1734211b}.safari-photo{height:246px;position:relative;display:block;overflow:hidden;background:#28533a}.safari-photo img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.safari-card:hover img{transform:scale(1.055)}.photo-empty{display:flex;align-items:center;justify-content:center;height:100%;padding:20px;text-align:center;background:linear-gradient(145deg,#20402e,#6e7751);color:#f5e6ca;font-size:15px;font-family:Georgia,serif}.days{position:absolute;top:15px;left:15px;background:#fff;color:var(--deep);padding:4px 12px;font-weight:700;font-size:12px}.safari-body{padding:24px}.safari-body h3{font-size:25px;min-height:61px;margin:0 0 12px}.safari-body p{font-size:14px;color:var(--muted);min-height:72px}.card-bottom{border-top:1px solid var(--line);padding-top:17px;display:flex;justify-content:space-between;align-items:center;gap:10px}.from{font-size:12px;color:var(--muted)}.from strong{font-size:19px;color:var(--forest)}.arrow-link{font-size:12px;font-weight:800;color:var(--forest);white-space:nowrap}.country-section:nth-child(even){background:var(--cream)}.country-section{padding:75px 0}.country-header{margin-bottom:26px}.country-header h2{margin-bottom:12px}.country-header p{color:var(--muted);max-width:730px}.country-footer{margin-top:28px;text-align:center}.dest-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.dest-card{background:linear-gradient(140deg,#21462f,#637659);color:white;min-height:245px;display:flex;align-items:end;padding:24px;position:relative;overflow:hidden}.dest-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.dest-card:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent,#071a0edb)}.dest-card strong{position:relative;z-index:1;font:28px Georgia,serif}.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.why-item{padding:32px;border:1px solid #d9ded6;background:#fff}.why-item span{font:38px Georgia,serif;color:var(--gold)}.why-item h3{font-size:25px;margin:15px 0}.why-item p{color:var(--muted);font-size:14px}.cta-banner{background:var(--deep);color:white;padding:65px 0}.cta-inner{display:flex;justify-content:space-between;gap:30px;align-items:center}.cta-inner h2{margin-bottom:8px}.cta-inner p{color:#c8d8c9}.footer{background:#092a1c;color:#d4dfd4;padding:65px 0 0}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:45px}.footer h3{color:#fff;font:22px Georgia,serif;margin:0 0 22px}.footer a:not(.btn){display:block;margin:0 0 10px;font-size:13px}.footer p{font-size:14px;color:#c1cec2}.foot-logo{width:240px;max-height:125px;object-fit:contain;background:#fff;padding:7px;margin-bottom:20px}.footer-bottom{border-top:1px solid #ffffff26;margin-top:50px;padding:19px 0;color:#bbccbc;font-size:12px;display:flex;justify-content:space-between}.footer-bottom a{display:inline!important}.inner-hero{padding:90px 0;background:linear-gradient(110deg,#0b3326,#396048);color:#fff}.inner-hero h1{font-size:clamp(38px,4.4vw,60px);margin-bottom:14px}.inner-hero p{max-width:720px;color:#e3eae4}.content-area{padding:65px 0}.prose{max-width:830px;margin:auto}.prose h2{font-size:35px;margin:38px 0 15px}.prose h3{font-size:26px;margin:25px 0 12px}.prose li{margin-bottom:8px}.prose a{color:#8a652c;text-decoration:underline}.safari-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:55px;align-items:start}.safari-layout .prose{max-width:none}.safari-side{border:1px solid var(--line);padding:25px;position:sticky;top:120px}.safari-side h3{font-size:25px;margin-top:0}.summary-line{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}.summary-line strong{text-align:right}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.ngweta-form label{display:block;font-weight:700;font-size:13px;margin-bottom:7px}.ngweta-form input,.ngweta-form textarea,.ngweta-form select{display:block;width:100%;padding:12px 13px;border:1px solid #cbd6ce;background:#fff;border-radius:2px;color:var(--ink)}.ngweta-form textarea{min-height:120px}.ngweta-form .full{grid-column:1/-1}.form-help{font-size:12px;color:var(--muted)}.notice{padding:12px 15px;background:#e8f3e7;border:1px solid #b1d2b0;margin-bottom:20px}.notice-error{background:#fff0e7;border-color:#dcb19b}.package-banner{height:360px;overflow:hidden;background:#28462e;margin-bottom:35px}.package-banner img{width:100%;height:100%;object-fit:cover}.country-links{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0 30px}.country-links a{padding:8px 14px;border:1px solid #d3dcd3;font-size:13px}.country-links a:hover{background:var(--forest);color:#fff}@media(max-width:1100px){.nav-list{gap:13px}.nav-list a{font-size:12px}.header-cta{display:none}.logo-link img{width:170px}}@media(max-width:960px){.menu-toggle{border:0;background:transparent;padding:10px;display:flex;flex-direction:column;gap:5px;cursor:pointer}.menu-toggle span{background:var(--deep);height:2px;width:27px}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;box-shadow:0 14px 20px #0002;padding:12px 24px;max-height:70vh;overflow:auto}.site-nav.opened{display:block}.nav-list{flex-direction:column;align-items:stretch;gap:0}.nav-list a{display:block;padding:9px;font-size:14px}.nav-list .sub-menu{display:block;position:static;box-shadow:none;padding:0 0 0 20px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.dest-grid{grid-template-columns:repeat(3,1fr)}.intro-grid,.safari-layout{grid-template-columns:1fr;gap:30px}.safari-side{position:static}.footer-grid{grid-template-columns:repeat(2,1fr)}.why-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.container{width:min(100% - 30px,1220px)}.top-inner span{display:none}.top-inner{justify-content:center}.header-inner{min-height:76px}.logo-link img{width:155px;max-height:65px}.hero{min-height:520px}.hero-inner{padding:75px 0}.hero p{font-size:16px}.section,.country-section{padding:57px 0}.cards,.dest-grid,.why-grid,.footer-grid,.form-grid{grid-template-columns:1fr}.safari-photo{height:240px}.safari-body h3,.safari-body p{min-height:unset}.dest-card{min-height:170px}.heading-row,.cta-inner{flex-direction:column;align-items:start}.intro-art{min-height:260px}.footer-bottom{display:block}.inner-hero{padding:64px 0}.package-banner{height:230px}.safari-side{padding:18px}}

/* Ngweta v1.1 — full-width responsive upgrade. No external CSS dependencies. */
:root{
  --page-gutter:clamp(16px,3.5vw,74px);
  --text-measure:76ch;
}
html{overflow-x:clip}
body{overflow-wrap:break-word}
img,video,iframe,embed,object,svg{max-width:100%}
img{display:block}
.container{width:calc(100% - (var(--page-gutter) * 2));max-width:none;margin-inline:auto}
.main-content,.content-area,.page-content-area,.page-prose,.listing-section,.safari-layout,.safari-detail-section,.prose{min-width:0}
button,a,input,select,textarea{touch-action:manipulation}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #c59641;outline-offset:3px}
.site-header{isolation:isolate}
.header-inner{gap:clamp(10px,1.6vw,25px)}
.nav-list{flex-wrap:wrap;gap:clamp(10px,1.5vw,25px)}
.nav-list .sub-menu{border-top:3px solid var(--gold);border-radius:0 0 4px 4px}
.hero{width:100%;min-height:clamp(560px,68vh,880px);background:#103b29;isolation:isolate}
.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(95deg,rgba(4,26,17,.86),rgba(4,26,17,.59) 54%,rgba(5,25,17,.22));z-index:-1;pointer-events:none}
.hero-inner{padding-block:clamp(90px,11vw,155px)}
.hero-content{max-width:850px}
.hero-content h1{font-size:clamp(44px,5.6vw,95px)}
.hero p{max-width:670px;font-size:clamp(16px,1.3vw,20px)}
.section{padding-block:clamp(58px,6vw,105px)}
.country-section{padding-block:clamp(58px,5.2vw,96px)}
.intro-grid{grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);gap:clamp(32px,5vw,110px)}
.intro-grid>div{min-width:0}
.intro-art{min-height:clamp(360px,37vw,620px)}
.heading-row{align-items:flex-end}
.heading-row>div{min-width:0}
.heading-row>div p{max-width:850px}
.cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,1.65vw,30px)}
.safari-card{display:flex;flex-direction:column;min-width:0;border-radius:5px;overflow:hidden}
.safari-photo{height:auto;aspect-ratio:1.42/1;min-height:210px}
.safari-photo img{display:block}
.safari-body{flex:1;display:flex;flex-direction:column;padding:clamp(18px,2vw,30px)}
.safari-body h3{font-size:clamp(22px,1.65vw,28px)}
.safari-body p{flex-grow:1}
.card-bottom{margin-top:auto;flex-wrap:wrap}
.dest-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(12px,1.5vw,26px)}
.dest-card{min-width:0;min-height:clamp(240px,22vw,370px);border-radius:4px}
.dest-card strong{font-size:clamp(22px,2.0vw,32px)}
.dest-card img{display:block}
.cta-inner{flex-wrap:wrap}
.footer-grid{grid-template-columns:minmax(210px,1.65fr) repeat(2,minmax(140px,.75fr)) minmax(220px,1.1fr);gap:clamp(25px,3vw,65px)}

/* WordPress Page / Post content fills all available width without covering the viewport edges. */
.inner-hero{width:100%;min-height:clamp(260px,24vw,430px);padding:0;background:linear-gradient(112deg,#09291d,#366249);position:relative;display:flex;align-items:center;isolation:isolate;overflow:hidden}
.inner-hero--photo{background:#0c2e1e}
.inner-hero--photo:before{position:absolute;inset:0;content:"";background:linear-gradient(90deg,rgba(6,30,19,.83),rgba(6,30,19,.55) 64%,rgba(6,30,19,.26));z-index:-1}
.inner-hero__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.inner-hero__inner{padding-block:clamp(52px,6vw,108px);position:relative}
.inner-hero h1{max-width:1180px;margin-bottom:0;font-size:clamp(34px,4.6vw,72px)}
.inner-hero__excerpt{max-width:790px;font-size:clamp(16px,1.5vw,20px);margin:20px 0 0!important}
.breadcrumbs{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:#fff;opacity:.9;font-size:13px;margin-bottom:26px}
.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}
.breadcrumbs span[aria-current]{opacity:.75;max-width:65ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.content-area{padding-block:clamp(42px,4.5vw,86px)}
.page-prose,.blog-prose{max-width:none!important;width:100%;margin:0}
.prose{max-width:none;margin:0}
.page-prose>*:first-child{margin-top:0}
.page-prose>p,.page-prose>ul,.page-prose>ol{max-width:1120px}
.page-prose h2,.blog-prose h2{margin-top:clamp(28px,4vw,50px)}
.page-prose .wp-block-columns{display:flex;flex-wrap:wrap;gap:clamp(16px,2vw,32px)}
.page-prose .wp-block-column{flex:1 1 290px;min-width:0}
.page-prose .wp-block-image img,.page-prose figure img{max-width:100%;height:auto}
.page-prose .alignfull,.blog-prose .alignfull{width:calc(100% + (var(--page-gutter) * 2));max-width:none;margin-left:calc(-1 * var(--page-gutter));margin-right:calc(-1 * var(--page-gutter))}
.page-prose .alignwide,.blog-prose .alignwide{width:100%;max-width:none}
.page-prose .wp-block-cover{max-width:none;min-height:340px;display:flex;align-items:center;padding:40px}
.page-prose .wp-block-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:16px}
.page-prose .wp-block-gallery figure{margin:0}
.page-prose table{width:100%;border-collapse:collapse;min-width:550px}
.page-prose table td,.page-prose table th{border:1px solid var(--line);padding:12px;text-align:left}
.page-prose .wp-block-table{overflow-x:auto}
.page-prose iframe{max-width:100%}
.listing-section{margin-top:clamp(40px,5vw,85px);width:100%}
.listing-section .heading-row{margin-bottom:30px}
.listing-section .heading-row h2{margin-bottom:8px}
.country-listing{padding-bottom:clamp(30px,4vw,75px);border-bottom:1px solid var(--line)}
.country-links{position:relative;margin-top:32px;gap:10px}
.country-links a{border-radius:40px;padding:10px 22px;font-weight:700}
.destinations-page-grid{grid-template-columns:repeat(5,minmax(0,1fr))}

/* Itinerary content and enquiry column. */
.safari-detail-section{padding:clamp(32px,4.3vw,78px) 0 clamp(60px,5vw,90px)}
.safari-detail-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin-bottom:clamp(36px,4vw,64px)}
.safari-detail-meta>span{display:flex;flex-direction:column;justify-content:center;gap:2px;background:var(--cream);padding:clamp(14px,2.2vw,27px);font-family:Georgia,serif;font-size:clamp(15px,1.2vw,19px);line-height:1.3}
.safari-detail-meta strong{font-family:Arial,Helvetica,sans-serif;text-transform:uppercase;font-size:11px;letter-spacing:.13em;color:#637166;margin-bottom:8px}
.safari-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(295px,350px);gap:clamp(28px,4vw,84px);align-items:start;width:100%}
.itinerary-content{width:100%;max-width:none}
.itinerary-content>p{max-width:1000px}
.itinerary-content h2{font-size:clamp(29px,2.5vw,43px);margin:44px 0 22px}
.itinerary-content h3{font-size:clamp(23px,2vw,33px);margin:33px 0 15px;padding:0 0 0 20px;border-left:4px solid var(--gold)}
.itinerary-content h3+p{margin-left:24px;max-width:1050px}
.itinerary-content figure{margin:28px 0}
.itinerary-content img{width:auto;max-width:100%;height:auto}
.itinerary-content .wp-block-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:16px}
.itinerary-content .wp-block-gallery img{width:100%;height:100%;object-fit:cover}
.safari-side{position:sticky;top:115px;padding:clamp(22px,2.5vw,34px);background:var(--cream);border:1px solid #dfdccf;border-radius:5px;box-shadow:0 10px 30px rgba(10,34,21,.05)}
.safari-side h2{font-size:clamp(26px,2vw,34px);margin:5px 0 15px}
.safari-side p{font-size:14px;color:#536156}
.summary-line{gap:12px}
.summary-line span{color:var(--muted)}
.btn-block{display:flex;width:100%;margin-top:26px;text-align:center;white-space:normal}
.sidebar-small{margin:12px 0 0;text-align:center;font-size:12px!important}
.included-section{margin-top:35px}
.inclusions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.inclusion-panel{padding:clamp(18px,2vw,30px);background:var(--cream);border:1px solid var(--line);border-radius:5px}
.inclusion-panel h3{margin:0 0 14px;padding:0;border:0;font-size:25px}
.inclusion-panel ul{margin:0;padding-left:18px}
.inclusion-panel li{font-size:14px}
.safari-disclaimer{font-size:13px;color:var(--muted);margin-top:18px}
.related-safaris{margin-top:clamp(60px,6vw,100px);padding-top:clamp(35px,4vw,65px);border-top:1px solid var(--line)}
.related-safaris .heading-row{margin-bottom:28px}

/* Contact/enquiry forms use the full content area, with a comfortably sized form. */
.page-prose--enquiry>p{max-width:1000px}
.contact-panel{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:clamp(30px,5vw,110px);padding:clamp(26px,4vw,70px);background:var(--cream);border:1px solid var(--line);border-radius:5px;margin-top:40px;align-items:start}
.contact-panel__intro h2{font-size:clamp(30px,3vw,45px)}
.contact-highlights{display:flex;flex-direction:column;gap:14px;margin-top:35px}
.contact-highlights span{padding:14px 0;border-bottom:1px solid #d9ddd4;font-size:14px;font-weight:700;color:var(--forest)}
.contact-highlights span:before{content:"✓";margin-right:12px;color:#9d7939;font-weight:900}
.contact-panel__form{background:#fff;border:1px solid var(--line);padding:clamp(18px,2.6vw,42px);min-width:0}
.ngweta-form .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(13px,1.5vw,23px)}
.ngweta-form input:not([type=checkbox]),.ngweta-form textarea,.ngweta-form select{width:100%;min-width:0;font-size:16px;max-width:100%}
.ngweta-form input[type=checkbox]{flex:0 0 auto}
.ngweta-form textarea{min-height:155px;resize:vertical}
.ngweta-form .btn{max-width:100%}

/* Long content should never push mobile pages sideways. */
.prose pre,.prose code{max-width:100%;overflow-wrap:anywhere}
.prose pre{overflow-x:auto}
.prose blockquote{margin-inline:0;padding:20px 25px;border-left:3px solid var(--gold);background:var(--cream)}
.prose .wp-block-columns,.prose .wp-block-media-text,.prose .wp-block-group{max-width:100%}
@media (min-width:1750px){
  .container{width:calc(100% - 160px)}
  .cards{gap:30px}
}
@media (max-width:1180px){
  .header-cta{display:none}
  .safari-layout{grid-template-columns:minmax(0,1fr) minmax(270px,310px);gap:28px}
  .destinations-page-grid,.dest-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:960px){
  .container{width:calc(100% - (var(--page-gutter) * 2))}
  .intro-grid{grid-template-columns:1fr;gap:38px}
  .intro-art{min-height:390px}
  .safari-layout{grid-template-columns:1fr;gap:35px}
  .safari-side{position:static;max-width:none}
  .cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .safari-detail-meta{grid-template-columns:repeat(2,minmax(0,1fr))}
  .contact-panel{grid-template-columns:1fr;gap:23px}
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nav-list{flex-direction:column;align-items:stretch}
  .nav-list .sub-menu{border:0;background:#f8f5ef;margin:2px 0 10px}
  .site-nav{max-height:calc(100dvh - 95px);overflow-y:auto;overscroll-behavior:contain}
}
@media (max-width:640px){
  :root{--page-gutter:16px}
  .hero{min-height:490px}
  .hero-inner{padding-block:75px}
  .hero-content h1{font-size:clamp(40px,10vw,60px)}
  .hero-actions{align-items:stretch;flex-direction:column;max-width:380px}
  .hero-actions .btn{width:100%}
  .section,.country-section{padding-block:55px}
  .intro-art{min-height:290px}
  .dest-grid,.destinations-page-grid,.cards,.why-grid,.footer-grid,.form-grid,.inclusions-grid{grid-template-columns:1fr}
  .dest-card{min-height:235px}
  .safari-photo{aspect-ratio:1.5/1;min-height:0;height:auto}
  .safari-detail-meta{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:30px}
  .safari-detail-meta>span{padding:15px 12px;font-size:15px}
  .inner-hero{min-height:260px}
  .inner-hero__inner{padding-block:51px}
  .inner-hero h1{font-size:clamp(33px,9vw,45px)}
  .breadcrumbs{font-size:12px;margin-bottom:20px}
  .breadcrumbs span[aria-current]{max-width:23ch}
  .page-prose h2,.itinerary-content h2{font-size:30px}
  .page-prose h3,.itinerary-content h3{font-size:23px}
  .itinerary-content h3+p{margin-left:0}
  .inclusion-panel{padding:20px}
  .contact-panel{padding:18px;margin-top:30px}
  .contact-panel__form{padding:17px}
  .ngweta-form .form-grid{grid-template-columns:1fr}
  .ngweta-form button.btn{width:100%;font-size:12px;white-space:normal}
  .related-safaris{margin-top:55px}
  .related-safaris .heading-row{flex-direction:column;align-items:flex-start}
  .footer-bottom{line-height:1.8}
  .page-prose .wp-block-cover{min-height:230px;padding:22px}
}
@media (max-width:380px){
  .card-bottom{flex-direction:column;align-items:flex-start}
  .summary-line{font-size:12px}
  .safari-detail-meta{grid-template-columns:1fr 1fr}
  .safari-detail-meta>span{font-size:13px;padding:12px 10px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.safari-card,.safari-photo img,.btn{transition:none!important}}
/* Cropped, optimised version of the approved logo for clearer header display. */
.logo-link img{width:clamp(178px,16vw,240px);height:94px;max-height:94px;object-fit:contain}
@media (max-width:960px){.logo-link img{width:195px;height:85px;max-height:85px}}
@media (max-width:640px){.logo-link img{width:175px;height:74px;max-height:74px}.header-inner{min-height:82px}}


/* Ngweta 1.2: Legible, spacious navigation and accessible hover dropdowns. */
@media (min-width:1121px){
  .header-inner{gap:clamp(14px,1.2vw,25px)}
  .site-nav{display:block;position:static;flex:1 1 auto}
  .nav-list{flex-wrap:nowrap;justify-content:flex-end;gap:clamp(12px,1.25vw,25px)}
  .nav-list>li>a{font-size:clamp(15px,1.13vw,17px);letter-spacing:.005em;font-weight:700;padding:15px 0;line-height:1.25;white-space:nowrap;display:inline-flex;align-items:center;gap:5px;position:relative}
  .nav-list>li>a:before{content:"";position:absolute;bottom:7px;left:0;height:2px;background:var(--gold);width:0;transition:width .2s ease}
  .nav-list>li>a:hover:before,.nav-list>li>a:focus-visible:before,.nav-list>li.current-menu-item>a:before,.nav-list>li.current-menu-ancestor>a:before{width:100%}
  .nav-list .menu-item-has-children>a:after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);margin-left:5px;transition:transform .2s ease}
  .nav-list .menu-item-has-children:hover>a:after,.nav-list .menu-item-has-children:focus-within>a:after{transform:translateY(2px) rotate(225deg)}
  .nav-list li>.sub-menu{display:block;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(8px);transition:opacity .16s,transform .16s,visibility .16s;position:absolute;left:0;top:100%;min-width:260px;max-width:min(380px,calc(100vw - 30px));margin:0;padding:12px 0;background:#fff;box-shadow:0 18px 40px rgba(2,31,17,.18);border:1px solid #e2e3d8;border-top:3px solid var(--gold);z-index:200}
  .nav-list li:hover>.sub-menu,.nav-list li:focus-within>.sub-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
  .nav-list .sub-menu li>a{font-size:15px;font-weight:650;display:flex;align-items:center;justify-content:space-between;padding:11px 20px;line-height:1.35;color:var(--forest);white-space:normal}
  .nav-list .sub-menu li>a:hover,.nav-list .sub-menu li>a:focus-visible{color:var(--deep);background:#f7f2e7;padding-left:23px}
  .nav-list .sub-menu .sub-menu{top:-12px;left:100%;border-top:3px solid var(--gold)}
  .nav-list>li:last-child>.sub-menu,.nav-list>li:nth-last-child(2)>.sub-menu{left:auto;right:0}
  .nav-list>li:nth-last-child(2)>.sub-menu .sub-menu{left:auto;right:100%}
}
.submenu-toggle{display:none}
/* Keep the entire main menu inside the screen as menu typography increases. */
@media (min-width:1121px) and (max-width:1330px){
  .header-cta{display:none}
  .logo-link img{width:clamp(175px,17vw,210px)}
  .nav-list{gap:clamp(10px,1vw,16px)}
  .nav-list>li>a{font-size:15px}
}
@media (max-width:1120px){
  .header-cta{display:none}
  .site-header{position:sticky;top:0}
  .header-inner{min-height:84px;position:relative;flex-wrap:nowrap}
  .menu-toggle{border:1px solid #d9dfd7;border-radius:5px;background:#fff;padding:13px;display:flex;flex-direction:column;justify-content:center;gap:5px;cursor:pointer;min-width:50px;min-height:48px;margin-left:auto}
  .menu-toggle span{background:var(--deep);height:2px;width:24px;display:block}
  .site-nav{display:none;position:absolute;top:100%;left:calc(-1 * var(--page-gutter,24px));right:calc(-1 * var(--page-gutter,24px));width:auto;max-height:calc(100dvh - 105px);overflow:auto;overscroll-behavior:contain;background:#fff;box-shadow:0 18px 30px rgba(3,29,16,.14);padding:13px clamp(17px,4vw,42px) 30px;z-index:110}
  .site-nav.opened{display:block}
  .nav-list{display:block;list-style:none;padding:0;margin:0}
  .nav-list>li{display:block;position:relative;border-bottom:1px solid #e9ece4;padding-right:46px}
  .nav-list a{display:block;color:var(--forest);font-size:17px;font-weight:750;padding:16px 5px}
  .nav-list li:hover>a,.nav-list a:focus-visible{color:#96672b}
  .nav-list li>.sub-menu,.nav-list li:hover>.sub-menu,.nav-list li:focus-within>.sub-menu{display:none;position:static;opacity:1;visibility:visible;transform:none;pointer-events:auto;box-shadow:none;margin:0 0 14px;padding:3px 10px 8px 15px;max-width:none;min-width:0;width:100%;background:#f8f5ef;border:0;border-left:3px solid var(--gold);border-radius:3px}
  .nav-list li.submenu-open>.sub-menu{display:block}
  .nav-list .sub-menu>li{position:relative;border-bottom:1px solid #e4e5de}
  .nav-list .sub-menu>li:last-child{border-bottom:0}
  .nav-list .sub-menu a{font-size:15px;padding:13px 8px}
  .submenu-toggle{display:flex;align-items:center;justify-content:center;position:absolute;right:1px;top:6px;border:1px solid #d7dfd6;background:#f8f5ef;width:41px;height:41px;border-radius:3px;color:var(--forest);cursor:pointer}
  .submenu-toggle span{font-size:23px;line-height:1;transform:translateY(-4px);transition:transform .18s}
  .submenu-toggle[aria-expanded="true"] span{transform:translateY(3px) rotate(180deg)}
  .submenu-toggle:hover,.submenu-toggle:focus-visible{background:#e7e2d4}
  .nav-list .sub-menu .submenu-toggle{width:35px;height:35px;top:5px}
  .nav-list .sub-menu .menu-item-has-children{padding-right:40px}
}
@media (max-width:640px){
  .menu-toggle{min-width:45px;min-height:44px;padding:11px}
  .site-nav{left:-16px;right:-16px;padding-left:20px;padding-right:20px}
  .nav-list a{font-size:17px}
}
@media (prefers-reduced-motion:reduce){.nav-list a,.nav-list li>.sub-menu,.nav-list>li>a:before,.submenu-toggle span{transition:none!important}}

/* Day-by-day content upgrade — visible and readable without any extra images. */
.ngweta-highlights{padding:clamp(19px,2.3vw,30px);background:#f8f5ef;border-left:4px solid var(--gold);margin:30px 0 45px}
.ngweta-highlights h2{margin:0 0 15px!important;font-size:clamp(24px,2.3vw,32px)!important}
.ngweta-highlights ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 27px;padding-left:20px;margin:0}
.ngweta-highlights li{line-height:1.65}
.ngweta-day{margin:0 0 clamp(24px,3vw,46px);padding:0 0 25px;border-bottom:1px solid #dde5dc}
.ngweta-day h3{margin-top:0}
.ngweta-day p{font-size:clamp(15px,1.15vw,17px);line-height:1.85}
.ngweta-day .ngweta-overnight{display:block;padding:13px 17px;margin-top:16px;background:#f7f4ed;border-left:3px solid var(--gold);font-size:14px;color:#345342}
.ngweta-day .ngweta-route-note{padding:8px 0;font-size:14px;font-style:italic;color:#52695c}
.ngweta-travel-guide{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:26px 0}
.ngweta-travel-guide>div{border:1px solid #e1e5dc;background:#fff;padding:22px}
.ngweta-travel-guide h3{font:700 18px Arial,sans-serif;border:0;margin:0 0 10px;padding:0}
@media (max-width:640px){.ngweta-highlights ul,.ngweta-travel-guide{grid-template-columns:1fr}.ngweta-day p{font-size:16px}}

/* Six-country responsive destination rows; preserve photo aspect ratios. */
.dest-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
@media(max-width:980px){.dest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:570px){.dest-grid{grid-template-columns:1fr}}

.country-section .country-header p strong{font-weight:750}.dest-card{overflow:hidden}.dest-card img{object-fit:cover;width:100%;height:100%}@media(max-width:480px){.country-section .country-header{max-width:100%}}


/* Ngweta v1.3.2 — fast, full-width safari blog, with locally stored featured images. */
.ngw-home-journal{background:#fff}
.ngw-home-journal__bottom{text-align:center;margin-top:38px}
.ngw-blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2vw,28px)}
.ngw-blog-card{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid #e3e4d9;box-shadow:0 7px 25px rgba(6,30,18,.06);border-radius:5px;overflow:hidden;transition:transform .2s,box-shadow .2s}
.ngw-blog-card:hover,.ngw-blog-card:focus-within{transform:translateY(-4px);box-shadow:0 18px 38px rgba(6,30,18,.12)}
.ngw-blog-card__image{display:block;overflow:hidden;position:relative;aspect-ratio:1.54/1;background:#224634}
.ngw-blog-card__image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s}
.ngw-blog-card:hover .ngw-blog-card__image img{transform:scale(1.04)}
.ngw-blog-card__noimage{display:grid;place-items:center;height:100%;padding:20px;text-align:center;color:#f5eddd;font-family:Georgia,serif;font-size:20px;letter-spacing:.02em}
.ngw-blog-card__body{display:flex;flex-direction:column;align-items:flex-start;flex:1;padding:clamp(21px,2vw,30px)}
.ngw-blog-card__meta{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:15px;font-size:11px;text-transform:uppercase;letter-spacing:.07em;font-weight:700;color:#66766d}
.ngw-blog-card__meta span{color:#99733a}
.ngw-blog-card h3{font-size:clamp(21px,1.65vw,28px);line-height:1.28;margin:0 0 16px}
.ngw-blog-card h3 a:hover,.ngw-blog-card h3 a:focus-visible{color:#876329}
.ngw-blog-card__body p{font-size:15px;line-height:1.75;color:#58675e;margin:0 0 23px}
.ngw-blog-card__more{margin-top:auto;font-size:13px;font-weight:800;color:var(--forest);border-bottom:1px solid var(--gold)}
.ngw-blog-card__more:hover{color:#8c682e}
.ngw-journal__hero{background:linear-gradient(110deg,#092e21,#174d35);color:#fff;padding:clamp(63px,7vw,118px) 0}
.ngw-journal__head{max-width:none}
.ngw-journal__head h1{max-width:960px;font-size:clamp(43px,5.6vw,76px)}
.ngw-journal__head>p{font-size:clamp(16px,1.45vw,19px);max-width:800px;color:#e3ede6;line-height:1.8}
.ngw-journal__hero .breadcrumbs{margin-bottom:35px;color:#e3e9df}
.ngw-journal__hero .breadcrumbs a:hover{color:var(--gold)}
.ngw-blog-head{margin-bottom:31px}
.ngw-blog-pagination{padding-top:45px}
.ngw-blog-pagination ul{display:flex;gap:8px;justify-content:center;list-style:none;margin:0;padding:0;flex-wrap:wrap}
.ngw-blog-pagination a,.ngw-blog-pagination .current{display:inline-flex;align-items:center;justify-content:center;min-width:40px;padding:9px 13px;border:1px solid #d7ded6;border-radius:3px;font-weight:700}
.ngw-blog-pagination .current,.ngw-blog-pagination a:hover{background:var(--forest);color:#fff}
.ngw-journal__cta{padding:clamp(55px,6vw,100px) 0;background:var(--deep);color:#fff}
.ngw-journal__cta h2{max-width:900px}
.ngw-journal__cta p{max-width:680px;color:#e2e9e3;font-size:17px}
.blog-prose{max-width:920px!important;margin-inline:auto;line-height:1.85;font-size:17px}
.blog-prose h2{margin-top:40px;font-size:clamp(26px,2.8vw,36px)}
.blog-prose p{margin-bottom:22px}
.ngweta-article-lead{font-size:19px;color:#42594a;line-height:1.85}
@media(max-width:900px){.ngw-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.ngw-blog-grid{grid-template-columns:1fr}.ngw-blog-head{flex-direction:column;align-items:flex-start}.ngw-journal__hero{padding-block:63px}.ngw-blog-card__image{aspect-ratio:1.5/1}.blog-prose{font-size:16px}.ngw-journal__cta .hero-actions{align-items:stretch}}
@media(prefers-reduced-motion:reduce){.ngw-blog-card,.ngw-blog-card__image img{transition:none!important}}
