/* AFRICA COMBO TOURS — CUSTOM HOMEPAGE */
:root{--green:#176b39;--deep:#0a2c1a;--gold:#d8ad4d;--cream:#f8f6ef;--ink:#18231d;--muted:#657169;--line:#e5e8e4;--white:#fff;--shadow:0 20px 60px rgba(9,39,23,.12);--max:1180px}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:"DM Sans",Arial,sans-serif;color:var(--muted);line-height:1.7;background:#fff}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}.container{width:min(var(--max),calc(100% - 40px));margin:auto}
.topbar{background:#092416;color:#dfe9e1;font-size:12px}.topbar-inner{min-height:38px;display:flex;justify-content:space-between;align-items:center;gap:20px}.top-links{display:flex;gap:22px}.top-links a:hover{color:#f0d184}
.header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.97);backdrop-filter:blur(12px);border-bottom:1px solid rgba(0,0,0,.06)}.nav-wrap{height:84px;display:flex;align-items:center;justify-content:space-between;gap:30px}.logo-link img{width:112px;height:auto}.nav{display:flex;align-items:center;gap:23px;font-size:14px;font-weight:700;color:#314138}.nav>a:hover,.nav .active{color:var(--green)}.nav-cta{background:var(--green);color:#fff!important;padding:12px 19px;border-radius:30px}.drop{position:relative}.drop>a span{font-size:17px}.drop-menu{position:absolute;top:calc(100% + 18px);left:-15px;width:245px;background:#fff;border-radius:12px;padding:10px;box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s}.drop:hover .drop-menu{opacity:1;visibility:visible;transform:none}.drop-menu a{display:block;padding:9px 11px;border-radius:8px}.drop-menu a:hover{background:#edf6ef;color:var(--green)}.menu-toggle{display:none;border:0;background:none;font-size:28px;color:var(--green);cursor:pointer}

.hero{height:min(760px,calc(100vh - 38px));min-height:650px;position:relative;overflow:hidden;color:#fff}.hero-slides,.hero-slide,.hero-shade{position:absolute;inset:0}.hero-slide{background-size:cover;background-position:center;opacity:0;transform:scale(1.03);transition:opacity 1s ease,transform 7s ease}.hero-slide.active{opacity:1;transform:scale(1)}.hero-shade{background:linear-gradient(90deg,rgba(3,20,10,.83) 0%,rgba(3,20,10,.52) 48%,rgba(3,20,10,.12) 100%)}.hero-content{height:100%;position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center}.hero-copy{max-width:780px}.eyebrow,.kicker{font-size:11px;letter-spacing:2.4px;text-transform:uppercase;font-weight:800;color:var(--gold)}.hero h1{font-family:"Playfair Display",Georgia,serif;font-size:clamp(48px,7vw,84px);line-height:1.03;margin:18px 0}.hero h1 em{font-style:normal;color:#efd181}.hero p{font-size:18px;max-width:700px;color:rgba(255,255,255,.9)}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 23px;border-radius:30px;font-size:13px;font-weight:800;transition:.2s}.btn:hover{transform:translateY(-2px)}.btn-gold{background:var(--gold);color:#17221a}.btn-white{background:#fff;color:var(--green)}.btn-whatsapp{background:#20b45a;color:#fff}.btn-outline{border:1.5px solid var(--green);color:var(--green)}.btn-outline:hover{background:var(--green);color:#fff}.hero-note{position:absolute;bottom:42px;right:0;max-width:270px;border-left:1px solid rgba(255,255,255,.5);padding-left:16px;font-size:11px;color:rgba(255,255,255,.8)}.hero-note strong{display:block;color:#fff;font-size:12px;letter-spacing:1px}.slider-dots{position:absolute;z-index:5;bottom:42px;left:50%;transform:translateX(-50%);display:flex;gap:8px}.dot{width:30px;height:3px;border:0;background:rgba(255,255,255,.4);cursor:pointer}.dot.active{background:#fff}

.intro{padding:70px 0;background:var(--cream)}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.intro h2,.heading h2,.why-copy h2,.split-copy h2,.cta h2{font-family:"Playfair Display",Georgia,serif;color:var(--ink);font-size:clamp(34px,4vw,50px);line-height:1.15;margin-top:8px}.intro h2 span,.heading h2 span,.why-copy h2 span,.split-copy h2 span,.cta h2 span{color:var(--green)}.intro p{font-size:16px}

.section{padding:95px 0}.heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px}.heading.centered{justify-content:center;text-align:center}.view-all,.card-link,.text-link{color:var(--green);font-size:13px;font-weight:800}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.tour-card{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff;transition:.25s;box-shadow:0 8px 28px rgba(15,40,25,.04)}.tour-card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}.card-img{display:block;height:240px;position:relative;overflow:hidden}.card-img img{width:100%;height:100%;object-fit:cover;transition:.45s}.tour-card:hover .card-img img{transform:scale(1.06)}.badge,.duration{position:absolute;top:15px;z-index:2;border-radius:20px;padding:6px 10px;font-size:9px;font-weight:900;letter-spacing:1px}.badge{left:15px;background:var(--gold);color:#1c251d}.duration{right:15px;background:rgba(0,0,0,.66);color:#fff}.card-body{padding:23px}.card-body small{color:var(--green);font-size:10px;font-weight:900;letter-spacing:.7px}.card-body h3{font-family:"Playfair Display",Georgia,serif;color:var(--ink);font-size:22px;line-height:1.28;margin:8px 0}.card-body p{font-size:13px;line-height:1.65;margin-bottom:18px}.card-link{display:inline-block}.center{text-align:center;margin-top:40px}

.destinations{background:var(--cream)}.destination-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.destination{height:390px;border-radius:18px;overflow:hidden;position:relative;background-size:cover;background-position:center;display:flex;align-items:end;transition:.25s}.destination:hover{transform:translateY(-5px)}.destination:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 25%,rgba(0,0,0,.78))}.destination div{position:relative;z-index:2;color:#fff;padding:25px;width:100%}.destination div>span{color:#efd181;font-size:11px;font-weight:900}.destination h3{font-family:"Playfair Display",Georgia,serif;font-size:34px;line-height:1;margin:5px 0}.destination p{font-size:11px;color:rgba(255,255,255,.85)}.kenya{background-image:url("safari/safari-kenya.jpg")}.tanzania{background-image:url("safari/tanzania-safari-1.jpeg")}.rwanda{background-image:url("safari/gorilla-trekking-tour.jpg")}.zanzibar{background-image:url("safari/zanzibar-holiday.jpg")}

.why-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.why-image{position:relative}.why-image>img{height:590px;width:100%;object-fit:cover;border-radius:22px}.floating-stat{position:absolute;right:-20px;bottom:30px;background:#fff;box-shadow:var(--shadow);border-radius:14px;padding:18px 22px}.floating-stat strong,.floating-stat span{display:block}.floating-stat strong{font-family:"Playfair Display",Georgia,serif;color:var(--green);font-size:21px}.floating-stat span{font-size:11px}.why-copy>p{margin:18px 0 27px}.points{display:grid;gap:17px;margin-bottom:25px}.points div{display:grid;grid-template-columns:42px 1fr;gap:13px;font-size:13px}.points b{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#edf6ef;color:var(--green);font-size:10px}.points strong{color:var(--ink)}

.split-banner{display:grid;grid-template-columns:1fr 1fr;min-height:520px}.split-photo{background:url("safari/header-3.webp") center/cover}.split-copy{background:var(--deep);color:rgba(255,255,255,.78);padding:80px clamp(35px,7vw,100px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.split-copy h2{color:#fff;max-width:600px}.split-copy p{max-width:560px;margin:20px 0 5px}

.reviews{background:#fff}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.review-grid article{background:var(--cream);border:1px solid var(--line);border-radius:18px;padding:30px}.review-grid .featured{background:var(--green);color:#fff;border-color:var(--green)}.stars{color:var(--gold);letter-spacing:3px;margin-bottom:15px}.review-grid p{font-family:"Playfair Display",Georgia,serif;font-size:16px;line-height:1.6}.review-grid strong,.review-grid small{display:block}.review-grid strong{margin-top:20px;color:var(--ink);font-size:12px}.featured strong{color:#fff}.review-grid small{font-size:10px}

.cta{padding:100px 0;background:linear-gradient(120deg,#103d25,#1a7440);color:#fff;text-align:center}.cta-inner{max-width:820px}.cta h2{color:#fff;font-size:clamp(42px,6vw,65px)}.cta p{max-width:650px;margin:12px auto}.cta .hero-actions{justify-content:center}

.footer{background:#081d12;color:rgba(255,255,255,.68);padding-top:70px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:45px;padding-bottom:55px}.footer-about img{width:105px;margin-bottom:15px}.footer-about p{font-size:12px;max-width:320px}.footer-about strong{display:block;color:#efd181;font-size:11px;margin-top:15px}.footer h4{color:#fff;font-size:13px;margin-bottom:15px}.footer-grid a,.footer-grid p{display:block;font-size:12px;margin-bottom:8px}.footer-grid a:hover{color:#efd181}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);min-height:65px;display:flex;justify-content:space-between;align-items:center;font-size:10px;gap:20px}.floating-wa{position:fixed;right:22px;bottom:22px;width:58px;height:58px;z-index:999;border-radius:50%;background:#20b45a;color:#fff;display:grid;place-items:center;font-size:27px;box-shadow:0 10px 30px rgba(0,0,0,.25)}

@media(max-width:1050px){.nav{gap:14px}.cards{grid-template-columns:repeat(2,1fr)}.destination-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.topbar-inner{justify-content:center}.topbar-inner>span{display:none}.nav-wrap{height:74px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:112px;left:0;right:0;background:#fff;padding:18px 20px 25px;box-shadow:0 20px 30px rgba(0,0,0,.08);flex-direction:column;align-items:stretch}.nav.open{display:flex}.nav>a,.drop>a{padding:9px 5px}.drop-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;width:auto;padding:0 0 0 15px}.intro-grid,.why-grid{grid-template-columns:1fr;gap:40px}.split-banner{grid-template-columns:1fr}.split-photo{min-height:400px}.hero-note{display:none}.hero{min-height:680px}.review-grid{grid-template-columns:1fr}}
@media(max-width:620px){.container{width:calc(100% - 28px)}.top-links{gap:10px;font-size:10px}.top-links a:nth-child(2){display:none}.logo-link img{width:95px}.hero h1{font-size:48px}.hero p{font-size:15px}.hero-actions{gap:9px}.btn{padding:12px 18px}.section{padding:70px 0}.cards,.destination-grid,.footer-grid{grid-template-columns:1fr}.destination{height:330px}.why-image>img{height:430px}.floating-stat{right:10px}.footer-bottom{flex-direction:column;align-items:flex-start;padding:17px 0}.slider-dots{bottom:25px}.hero{min-height:650px}.hero-content{justify-content:center}}


/* =========================================================
   EAST AFRICA COMBO TOUR EXPANSION
   ========================================================= */

.heading-sub {
  max-width: 780px;
  margin: 12px auto 0;
  color: #647068;
}

/* Combo cards */
.combo-section {
  background: #f7f8f4;
}

.combo-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

.combo-card {
  position: relative;
  min-height: 310px;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
  border-radius: 20px;
  color: #fff;
  background-size: cover;
  background-position: center;
  box-shadow: 0 14px 38px rgba(20,40,28,.10);
  transition: transform .25s ease, box-shadow .25s ease;
}

.combo-card:hover {
  transform: translateY(-7px);
  box-shadow: 0 22px 55px rgba(20,40,28,.18);
}

.combo-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,.03) 20%, rgba(0,0,0,.78) 100%);
}

.combo-kt { background-image: url("safari/7-days-combined-kenya-and-tanzania-sharing-safari.webp"); }
.combo-tr { background-image: url("safari/kenya-safari-and-rwanda-gorilla-trekking-tour.jpg"); }
.combo-kr { background-image: url("safari/kenya-safari-and-rwanda-gorilla-trekking-tour.jpg"); }
.combo-ku { background-image: url("safari/safari-kenya.jpg"); }
.combo-ur { background-image: url("safari/gorilla-trekking-tour.jpg"); }
.combo-eb { background-image: url("safari/header-3.webp"); }

.combo-number {
  position: absolute;
  top: 18px;
  left: 18px;
  z-index: 2;
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(255,255,255,.92);
  color: #17683a;
  font-size: 11px;
  font-weight: 900;
}

.combo-body {
  position: relative;
  z-index: 2;
  width: 100%;
  padding: 27px;
}

.combo-route {
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .5px;
  text-transform: uppercase;
}

.combo-route b {
  color: #f1d27e;
  padding: 0 4px;
}

.combo-body h3 {
  margin: 7px 0 5px;
  color: #fff;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 27px;
  line-height: 1.15;
}

.combo-body p {
  margin-bottom: 15px;
  color: rgba(255,255,255,.87);
  font-size: 13px;
  line-height: 1.55;
}

.combo-link {
  color: #f1d27e;
  font-size: 12px;
  font-weight: 900;
}

.combo-note {
  margin-top: 25px;
  padding: 19px 22px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 15px;
  border: 1px solid #dfe6df;
  border-radius: 14px;
  background: #fff;
}

.combo-note strong {
  color: #193022;
}

.combo-note span {
  flex: 1;
  min-width: 230px;
  font-size: 13px;
}

.combo-note a {
  color: #18753d;
  font-size: 13px;
  font-weight: 900;
}

/* Five-country layout */
.five-countries {
  grid-template-columns: repeat(5, 1fr);
}

.destination.uganda {
  background:
    linear-gradient(180deg, transparent 30%, rgba(0,0,0,.62)),
    url("safari/uganda.jpg") center/cover;
}

.destination.burundi {
  background:
    linear-gradient(180deg, transparent 30%, rgba(0,0,0,.62)),
    url("safari/header-3.webp") center/cover;
}

/* Make the country cards slightly more compact when five are shown */
.five-countries .destination {
  min-height: 355px;
}

.five-countries .destination h3 {
  font-size: 29px;
}

/* Responsive combo section */
@media (max-width: 1050px) {
  .combo-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .five-countries {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 620px) {
  .combo-grid,
  .five-countries {
    grid-template-columns: 1fr;
  }

  .combo-card {
    min-height: 330px;
  }

  .five-countries .destination {
    min-height: 315px;
  }

  .combo-note {
    align-items: flex-start;
    flex-direction: column;
  }
}


/* =========================================================
   FINAL EAST AFRICA HOMEPAGE — 3 COUNTRY COMBOS
   ========================================================= */

.triple-combos {
  background: #f6f8f4;
}

.triple-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

.triple-card {
  min-height: 335px;
  position: relative;
  overflow: hidden;
  border-radius: 20px;
  display: flex;
  align-items: flex-end;
  background-size: cover;
  background-position: center;
  text-decoration: none;
  box-shadow: 0 15px 38px rgba(20, 40, 28, .12);
  transition: transform .25s ease, box-shadow .25s ease;
}

.triple-card:hover {
  transform: translateY(-7px);
  box-shadow: 0 23px 52px rgba(20, 40, 28, .20);
}

.triple-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,.03) 16%, rgba(0,0,0,.82) 100%);
}

.triple-ktr { background-image: url("safari/kenya-safari-and-rwanda-gorilla-trekking-tour.jpg"); }
.triple-kur { background-image: url("safari/gorilla-trekking-tour.jpg"); }
.triple-tur { background-image: url("safari/header-1.webp"); }
.triple-ktz { background-image: url("safari/masai-mara-serengeti-and-zanzibar.jpg"); }
.triple-trz { background-image: url("safari/zanzibar-holiday.jpg"); }
.custom-triple {
  background-image: linear-gradient(135deg, rgba(23,104,58,.96), rgba(12,65,37,.94));
}

.triple-content {
  position: relative;
  z-index: 2;
  width: 100%;
  padding: 28px;
  color: #fff;
}

.route-pill {
  display: inline-block;
  margin-bottom: 8px;
  color: #f1d27e;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .8px;
  line-height: 1.4;
}

.triple-content h3 {
  margin: 2px 0 7px;
  color: #fff;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 27px;
  line-height: 1.15;
}

.triple-content p {
  margin: 0 0 16px;
  color: rgba(255,255,255,.9);
  font-size: 13px;
  line-height: 1.55;
}

.explore {
  color: #f1d27e;
  font-size: 12px;
  font-weight: 900;
}

/* =========================================================
   SIGNATURE EXPERIENCES
   ========================================================= */

.experiences {
  background: #fff;
}

.experience-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}

.experience-card {
  min-height: 255px;
  position: relative;
  overflow: hidden;
  border-radius: 17px;
  color: #fff;
  background: #193022;
  text-decoration: none;
  box-shadow: 0 10px 28px rgba(20,40,28,.10);
}

.experience-card img {
  width: 100%;
  height: 100%;
  min-height: 255px;
  object-fit: cover;
  transition: transform .45s ease;
}

.experience-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 28%, rgba(0,0,0,.78) 100%);
}

.experience-card:hover img {
  transform: scale(1.06);
}

.experience-card > div {
  position: absolute;
  z-index: 2;
  left: 21px;
  right: 21px;
  bottom: 19px;
}

.experience-card span {
  color: #f1d27e;
  font-size: 10px;
  font-weight: 900;
}

.experience-card h3 {
  margin: 4px 0 3px;
  color: #fff;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 23px;
}

.experience-card p {
  margin: 0;
  color: rgba(255,255,255,.85);
  font-size: 12px;
}

@media (max-width: 980px) {
  .triple-grid,
  .experience-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 620px) {
  .triple-grid,
  .experience-grid {
    grid-template-columns: 1fr;
  }

  .triple-card {
    min-height: 310px;
  }
}

/* ABOUT & CONTACT */

body{
margin:0;
font-family:Arial,Helvetica,sans-serif;
color:#333;
line-height:1.7;
}

.container{
width:90%;
max-width:1200px;
margin:auto;
}

.section{
padding:80px 0;
}

.inner-hero{
background:linear-gradient(rgba(0,0,0,.55),rgba(0,0,0,.55)),
url('safari/header.webp');
background-size:cover;
background-position:center;
color:#fff;
text-align:center;
padding:140px 0;
}

.contact-hero{
background:linear-gradient(rgba(0,0,0,.55),rgba(0,0,0,.55)),
url('safari/header-3.webp');
background-size:cover;
}

.hero-content h1{
font-size:55px;
margin-bottom:15px;
}

.about-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:50px;
align-items:center;
}

.about-image{
height:500px;
border-radius:20px;
background:url('safari/kenya-safari-and-rwanda-gorilla-trekking-tour.jpg');
background-size:cover;
background-position:center;
}

.features div{
padding:12px 0;
font-weight:bold;
color:#17683a;
}

.green-section{
background:#f3f8f3;
padding:80px 0;
text-align:center;
}

.country-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
gap:20px;
margin-top:40px;
}

.country{
background:#fff;
padding:25px;
border-radius:15px;
box-shadow:0 10px 20px rgba(0,0,0,.08);
}

.country span{
font-size:40px;
}

.cards{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:25px;
margin-top:40px;
}

.card{
padding:30px;
border-radius:15px;
box-shadow:0 10px 25px rgba(0,0,0,.08);
background:#fff;
}

.center-btn{
text-align:center;
margin-top:40px;
}

.btn{
display:inline-block;
background:#17683a;
color:#fff;
padding:15px 35px;
text-decoration:none;
border-radius:40px;
font-weight:bold;
border:none;
cursor:pointer;
}

.btn:hover{
background:#0f4f2b;
}

.contact-grid{
display:grid;
grid-template-columns:1fr 1.3fr;
gap:40px;
}

.contact-info{
background:#17683a;
color:#fff;
padding:35px;
border-radius:20px;
}

.contact-form{
background:#fff;
padding:35px;
border-radius:20px;
box-shadow:0 10px 25px rgba(0,0,0,.08);
}

.contact-form input,
.contact-form select,
.contact-form textarea{
width:100%;
padding:14px;
margin-bottom:18px;
border:1px solid #ddd;
border-radius:8px;
font-size:15px;
box-sizing:border-box;
}

footer{
background:#0f2f1d;
color:#fff;
text-align:center;
padding:30px 0;
margin-top:40px;
}

@media(max-width:768px){

.about-grid,
.contact-grid{
grid-template-columns:1fr;
}

.hero-content h1{
font-size:38px;
}

.about-image{
height:350px;
}

}