/* African Finfoot Safaris: Finfoot Editorial design layer over Turio + Elementor */
:root{
  --aff-bg:#FFFFFF; --aff-surface:#F4F7F4; --aff-ink:#162B32; --aff-muted:#55655D; --aff-line:#E1E8E3;
  --aff-accent:#056839; --aff-accent-strong:#04512D; --aff-highlight:#F67F11;
  --aff-footer-bg:#132A24; --aff-footer-bg2:#0E2019;
  --aff-serif:'Cormorant Garamond',Georgia,serif; --aff-sans:'Manrope',system-ui,sans-serif;
  --aff-r-sm:8px; --aff-r-md:14px; --aff-r-lg:20px;
  --aff-shadow:0 22px 44px -28px rgba(5,72,44,.5);
  --f-primary:var(--aff-sans);
}

/* Base */
body,p,li,dd,dt,td,th,label,input,select,textarea,button,a,span{ font-family:var(--aff-sans); }
body{ color:var(--aff-ink); font-size:16px; line-height:1.7; -webkit-font-smoothing:antialiased; }
p{ color:var(--aff-muted); }
h1,h2,h3,h4,h5,h6,.elementor-heading-title,.breadcrumb-title,.hero-title{
  font-family:var(--aff-serif) !important; font-weight:600; color:var(--aff-ink); line-height:1.1 !important; letter-spacing:-.01em;
}
h1{ font-size:clamp(42px,5.4vw,72px); } h2{ font-size:clamp(34px,3.8vw,50px); } h3{ font-size:clamp(26px,2.4vw,32px); }
h4{ font-size:25px; } h5{ font-size:22px; } h6{ font-size:19px; }
a{ color:var(--aff-accent); transition:color .2s ease; } a:hover{ color:var(--aff-accent-strong); }
.container{ max-width:1240px; }
:focus-visible{ outline:2px solid var(--aff-accent); outline-offset:2px; }

/* Buttons */
.button-fill-primary,.eg-btn,.theme-btn,.egns-btn,.turio-btn,.wp-block-button__link,.wp-element-button,.elementor-button,
input[type=submit],button[type=submit],.wpcf7-submit{
  background:var(--aff-accent); color:#fff; border:0; border-radius:999px; font-family:var(--aff-sans) !important; font-weight:700;
  letter-spacing:0; transition:background .2s ease, transform .2s ease;
}
.button-fill-primary:hover,.eg-btn:hover,.theme-btn:hover,.egns-btn:hover,.turio-btn:hover,.wp-block-button__link:hover,.wp-element-button:hover,.elementor-button:hover,
input[type=submit]:hover,button[type=submit]:hover,.wpcf7-submit:hover{ background:var(--aff-accent-strong); color:#fff; }
.button-fill-primary:active,.elementor-button:active,button[type=submit]:active{ transform:translateY(1px); }

/* Forms */
.wpcf7-form input:not([type=submit]),.wpcf7-form textarea,.wpcf7-form select,
.frm_forms input[type=text],.frm_forms input[type=email],.frm_forms input[type=tel],.frm_forms input[type=number],.frm_forms select,.frm_forms textarea{
  border:1px solid var(--aff-line); border-radius:var(--aff-r-sm); padding:12px 14px; background:#fff; color:var(--aff-ink); width:100%;
}
input:focus,textarea:focus,select:focus{ border-color:var(--aff-accent) !important; box-shadow:0 0 0 3px rgba(5,104,57,.12); outline:none; }

/* Top bar + header */
.topbar-area.topbar-style-one{ background:var(--aff-accent-strong) !important; }
.topbar-area,.topbar-area a,.topbar-area span{ color:#fff; font-size:13px; }
.header.head-one{ background:#fff; border-bottom:1px solid var(--aff-line); }
.header-area .main-nav-wrapper > ul > li > a{ font-family:var(--aff-sans) !important; font-weight:600; font-size:14px; letter-spacing:.01em; text-transform:none; color:var(--aff-ink); }
.header-area .main-nav-wrapper > ul > li > a:hover{ color:var(--aff-accent); }
#menu-great > li#menu-item-8196 > a,.main-nav-wrapper #menu-item-8196 > a{
  background:var(--aff-accent) !important; color:#fff !important; border-radius:999px !important; padding:11px 24px !important;
  font-weight:700 !important; line-height:1 !important; display:inline-block; text-shadow:none !important;
}
#menu-great > li#menu-item-8196 > a:hover,.main-nav-wrapper #menu-item-8196 > a:hover{ background:var(--aff-accent-strong) !important; }
#menu-great > li#menu-item-8196 > i.menu-plus{ display:none !important; }
.header-area .sub-menu{ border-top:2px solid var(--aff-accent); border-radius:0 0 var(--aff-r-sm) var(--aff-r-sm); box-shadow:0 22px 40px -24px rgba(22,43,50,.45); padding:8px 0; }
.header-area .sub-menu li a{ font-family:var(--aff-sans) !important; font-size:14px; text-transform:none; }
.header-area .sub-menu li a:hover{ background:var(--aff-surface); color:var(--aff-accent); }
.header.head-one.aff-stuck{
  position:fixed !important; top:0; left:0; right:0; z-index:999; margin:0 !important; background:#fff !important;
  box-shadow:0 12px 30px -22px rgba(22,43,50,.55); animation:affDown .3s ease;
}
.header.head-one.aff-stuck .main-nav-wrapper > ul > li > a{ color:var(--aff-ink); text-shadow:none; }
.header.head-one.aff-stuck .custom-logo{ max-height:56px; width:auto !important; }
@keyframes affDown{ from{ transform:translateY(-100%); } to{ transform:none; } }

/* Page banners */
.breadcrumb.breadcrumb-style-one{ padding:clamp(90px,11vw,150px) 0 clamp(60px,7vw,96px); background-size:cover; background-position:center; }
.breadcrumb-title{ color:#fff !important; font-size:clamp(42px,5vw,66px) !important; }
.breadcrumb .breadcrumb-items a,.breadcrumb .breadcrumb-item{ font-family:var(--aff-sans) !important; font-size:14px !important; color:#fff; }

/* Home hero */
.hero-single-slide{ position:relative; }
.hero-single-slide .hero-highlighted-bg{ z-index:0; }
.hero-single-slide::before{ content:""; position:absolute; inset:0; z-index:1; pointer-events:none;
  background:linear-gradient(95deg,rgba(11,26,20,.78) 0%,rgba(11,26,20,.5) 40%,rgba(11,26,20,.08) 76%,rgba(11,26,20,0) 100%),linear-gradient(0deg,rgba(11,26,20,.42) 0%,rgba(11,26,20,0) 34%); }
.hero-single-slide .hero-content-bg{ position:relative; z-index:2; }
.hero-single-slide .hero-content{ max-width:780px; text-align:left; }
.hero-single-slide .hero-content h5{ margin:0 0 18px; display:flex; align-items:center; gap:12px; font-size:0; line-height:1 !important; }
.hero-single-slide .hero-content h5::before{ content:""; width:40px; height:2px; background:var(--aff-highlight); flex:none; }
.hero-single-slide .hero-content h5::after{ content:"Guided East African Safaris"; color:#fff; font-family:var(--aff-sans); font-weight:700; letter-spacing:.14em; text-transform:uppercase; font-size:12px; }
.hero-single-slide .hero-content .hero-title{ font-size:clamp(46px,6.4vw,84px) !important; font-weight:600 !important; max-width:13ch; margin:0 0 20px !important; color:#fff !important; line-height:1.02 !important; text-shadow:none !important; }
.hero-single-slide .hero-content > p{ font-size:clamp(16px,1.4vw,19px); color:rgba(255,255,255,.94); max-width:46ch; margin:0 0 30px; line-height:1.6; }
.hero-single-slide .hero-btns a{ background:var(--aff-accent) !important; color:#fff !important; border:0 !important; border-radius:999px !important; padding:15px 32px !important; font-weight:700 !important; font-size:15px !important; }
.hero-single-slide .hero-btns a:hover{ background:var(--aff-accent-strong) !important; }

/* Home sections */
.page-id-774 .elementor-element-e4490f3,.page-id-774 .elementor-element-d5a46e6,.page-id-774 .elementor-element-f725cb0,
.page-id-774 .elementor-element-1f4e302,.page-id-774 .elementor-element-0c1b017,.page-id-774 .elementor-element-7a444b0,.page-id-774 .elementor-element-3cfa71c{
  padding-top:clamp(56px,7vw,100px) !important; padding-bottom:clamp(56px,7vw,100px) !important;
}
.page-id-774 .elementor-element-e4490f3,.page-id-774 .elementor-element-f725cb0,.page-id-774 .elementor-element-3cfa71c{ background:#fff !important; }
.page-id-774 .elementor-element-d5a46e6,.page-id-774 .elementor-element-1f4e302,.page-id-774 .elementor-element-7a444b0{ background:var(--aff-surface) !important; }
.page-id-774 .elementor-element-1a8ea40{ padding-top:clamp(56px,7vw,100px) !important; }
.page-id-774 .elementor-element-ccd9bb5{ padding-bottom:clamp(56px,7vw,100px) !important; }
.page-id-774 .elementor-element-0c1b017{ background:#fff !important; }

/* Tour cards */
.package-card-alpha{ background:#fff; border:1px solid var(--aff-line); border-radius:var(--aff-r-md) !important; overflow:hidden !important; height:100% !important; display:flex; flex-direction:column; box-shadow:none !important; transition:transform .3s ease, box-shadow .3s ease; }
.package-card-alpha:hover{ transform:translateY(-4px); box-shadow:var(--aff-shadow) !important; }
.package-card-alpha .package-thumb{ position:relative; aspect-ratio:4/3; overflow:hidden; margin:0; }
.package-card-alpha .package-thumb > a{ display:block; height:100%; }
.package-card-alpha .package-thumb img{ width:100%; height:100%; object-fit:cover; transition:transform .6s ease; }
.package-card-alpha:hover .package-thumb img{ transform:scale(1.05); }
.package-card-alpha .card-lavel{ position:absolute; top:14px; left:14px; z-index:2; margin:0; display:inline-flex; align-items:center; gap:6px; background:#fff !important; color:var(--aff-ink) !important; font-weight:700; font-size:12px; line-height:1; padding:8px 12px; border-radius:999px !important; }
.package-card-alpha .card-lavel span{ color:inherit; }
.package-card-alpha .card-lavel i{ color:var(--aff-accent); }
.package-card-alpha .package-card-body{ padding:22px 22px 20px !important; display:flex; flex-direction:column; flex:1; gap:16px; }
.package-card-alpha .p-card-title{ margin:0; font-size:25px !important; line-height:1.15 !important; }
.package-card-alpha .p-card-title a{ color:var(--aff-ink) !important; font-family:var(--aff-serif) !important; font-weight:600; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.package-card-alpha .p-card-title a:hover{ color:var(--aff-accent) !important; }
.package-card-alpha .package-card-body .p-card-bottom{ margin-top:auto; padding:16px 0 0 !important; background:none !important; border:0; border-top:1px solid var(--aff-line); border-radius:0 !important; display:flex; flex-direction:row-reverse; align-items:center; justify-content:space-between; gap:12px; }
.package-card-alpha .p-card-info{ text-align:left; line-height:1.2; }
.package-card-alpha .p-card-info span{ display:block; font-size:12px; color:var(--aff-muted); font-weight:500; }
.package-card-alpha .p-card-info h6{ margin:2px 0 0; font-family:var(--aff-sans) !important; color:var(--aff-ink); font-weight:800; font-size:17px; letter-spacing:0; line-height:1.2 !important; }
.package-card-alpha .p-card-info h6 del{ color:var(--aff-muted); font-weight:500; font-size:13px; }
.package-card-alpha .book-btn a{ display:inline-flex; align-items:center; gap:6px; padding:10px 16px !important; background:var(--aff-accent) !important; color:#fff !important; border:0 !important; border-radius:999px !important; font-size:13px !important; font-weight:700; text-transform:none; white-space:nowrap; }
.package-card-alpha .book-btn a:hover{ background:var(--aff-accent-strong) !important; }

/* Blog + article cards */
.blog-card-gamma-full,.pt-cv-content-item{ background:#fff; border:1px solid var(--aff-line); border-radius:var(--aff-r-md); overflow:hidden; box-shadow:none !important; transition:transform .3s ease, box-shadow .3s ease; }
.blog-card-gamma-full:hover,.pt-cv-content-item:hover{ transform:translateY(-4px); box-shadow:var(--aff-shadow) !important; }
.blog-card-gamma-full .blog-thumb{ aspect-ratio:16/9; overflow:hidden; margin:0; }
.blog-card-gamma-full .blog-thumb a{ display:block; height:100%; }
.blog-card-gamma-full .blog-thumb img{ width:100%; height:100%; object-fit:cover; }
.blog-card-gamma-full .blog-content{ padding:24px; }
.blog-card-gamma-full .blog-content i{ color:var(--aff-accent); }
.blog-card-gamma-full .blog-title{ font-size:29px !important; margin:10px 0; }
.blog-card-gamma-full .blog-title a,.pt-cv-title a{ color:var(--aff-ink) !important; font-family:var(--aff-serif) !important; font-weight:600; }
.pt-cv-title,.pt-cv-title a{ font-size:24px !important; line-height:1.15 !important; }
.blog-card-gamma-full .blog-short-description{ font-size:15px; margin:0 0 12px; }
.blog-card-gamma-full .read-more a{ font-weight:700; font-size:14px; color:var(--aff-accent); }

/* About + contact */
.page-id-7937 .elementor-heading-title,.page-id-31 .elementor-heading-title{ text-decoration:none !important; color:var(--aff-ink) !important; }
.page-id-7937 .elementor-icon-box-wrapper{ background:#fff; border:1px solid var(--aff-line); border-radius:var(--aff-r-md); padding:28px 24px; height:100%; }
.page-id-7937 .elementor-icon-box-icon .elementor-icon,.page-id-7937 .elementor-icon-box-icon i,.page-id-7937 .elementor-icon-box-icon svg{ color:var(--aff-accent) !important; fill:var(--aff-accent) !important; }
.page-id-31 .elementor-icon-list-icon i,.page-id-31 .elementor-icon-list-icon svg{ color:var(--aff-accent) !important; fill:var(--aff-accent) !important; }
.page-id-31 .frm_forms{ background:#fff; border:1px solid var(--aff-line); border-radius:var(--aff-r-lg); padding:clamp(20px,3vw,32px); }
.page-id-31 .elementor-widget-google_maps iframe{ border-radius:var(--aff-r-md); }

/* Tour template */
.aff-tour-hero{ position:relative; min-height:clamp(440px,70vh,680px); display:flex; align-items:flex-end; background:var(--aff-footer-bg); overflow:hidden; }
.aff-tour-hero::after{ content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(11,26,20,.82) 0%,rgba(11,26,20,.28) 52%,rgba(11,26,20,.12) 100%); }
.aff-tour-hero__img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.aff-tour-hero__inner{ position:relative; z-index:1; padding-top:90px; padding-bottom:clamp(36px,5vw,64px); }
.aff-tour-hero .breadcrumb-items{ list-style:none; margin:0 0 16px; padding:0; gap:8px; background:none; }
.aff-tour-hero .breadcrumb-items li,.aff-tour-hero .breadcrumb-items a{ color:rgba(255,255,255,.88); font-size:13px; }
.aff-tour-hero .breadcrumb-items li::before{ color:rgba(255,255,255,.6); }
.aff-tour-hero h1{ color:#fff; max-width:18ch; margin:0 0 14px; }
.aff-tour-facts{ border-bottom:1px solid var(--aff-line); }
.aff-tour-facts dl{ display:flex; gap:0; margin:0; }
.aff-tour-facts dl > div{ flex:1 1 auto; padding:22px 20px; border-left:1px solid var(--aff-line); }
.aff-tour-facts dl > div:first-child{ border-left:0; padding-left:0; }
.aff-tour-facts dt{ font-size:12px; font-weight:600; color:var(--aff-muted); margin-bottom:4px; }
.aff-tour-facts dd{ font-size:15px; font-weight:700; color:var(--aff-ink); margin:0; line-height:1.4; }
.aff-tour-nav{ position:sticky; top:0; z-index:40; background:#fff; border-bottom:1px solid var(--aff-line); }
body:has(.aff-stuck) .aff-tour-nav{ top:82px; }
.aff-tour-nav .container{ display:flex; gap:30px; overflow-x:auto; scrollbar-width:none; }
.aff-tour-nav a{ flex:none; padding:17px 0; color:var(--aff-muted); font-size:14px; font-weight:700; border-bottom:2px solid transparent; }
.aff-tour-nav a:hover,.aff-tour-nav a.is-active{ color:var(--aff-accent); border-bottom-color:var(--aff-accent); }
.aff-tour{ padding:clamp(44px,5vw,72px) 0 clamp(56px,6vw,88px); }
.aff-tour__main{ padding-right:clamp(12px,3vw,48px); }
.aff-tour-section{ scroll-margin-top:150px; padding-bottom:clamp(40px,5vw,60px); margin-bottom:clamp(40px,5vw,60px); border-bottom:1px solid var(--aff-line); }
.aff-tour-section:last-child{ border-bottom:0; margin-bottom:0; padding-bottom:0; }
.aff-tour-section > h2{ margin:0 0 24px; }
.aff-tour-prose{ max-width:70ch; }
.aff-tour-prose h2,.aff-tour-prose h3,.aff-tour-prose h4{ margin:1.2em 0 .45em; text-align:left !important; }
.aff-tour-prose img{ max-width:100%; height:auto; border-radius:var(--aff-r-md); }
.aff-tour-prose ul,.aff-tour-prose ol{ padding-left:1.2em; color:var(--aff-muted); }
.aff-tour-plan-intro{ margin-bottom:28px; }
.aff-day{ position:relative; padding-left:34px; }
.aff-day::before{ content:""; position:absolute; left:6px; top:0; bottom:0; width:1px; background:var(--aff-line); }
.aff-day::after{ content:""; position:absolute; left:0; top:27px; width:13px; height:13px; border-radius:50%; background:#fff; border:3px solid var(--aff-accent); }
.aff-day__head{ width:100%; display:grid; grid-template-columns:72px 1fr 24px; gap:14px; align-items:start; text-align:left; padding:20px 0; background:none !important; color:var(--aff-ink); border:0; border-bottom:1px solid var(--aff-line); border-radius:0; font-weight:400; }
.aff-day__head:hover{ background:none !important; color:var(--aff-accent); }
.aff-day__mark{ font-size:13px; font-weight:800; color:var(--aff-accent); padding-top:6px; }
.aff-day__title{ font-family:var(--aff-serif); font-size:24px; font-weight:600; line-height:1.2; }
.aff-day__title small{ display:block; font-family:var(--aff-sans); font-size:13px; font-weight:500; color:var(--aff-muted); margin-top:6px; line-height:1.4; }
.aff-day__head i{ font-size:24px; transition:transform .2s ease; transform:rotate(180deg); padding-top:3px; }
.aff-day__head.collapsed i{ transform:none; }
.aff-day__body{ padding:18px 0 24px; }
.aff-gallery{ display:grid; grid-template-columns:repeat(2,1fr); gap:10px; }
.aff-gallery a{ display:block; aspect-ratio:4/3; overflow:hidden; border-radius:var(--aff-r-sm); }
.aff-gallery img{ width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.aff-gallery a:hover img{ transform:scale(1.04); }
.aff-gallery--1{ grid-template-columns:1fr; }
.aff-gallery--1 a,.aff-gallery--3 a:first-child,.aff-gallery--5 a:first-child{ grid-column:1/-1; aspect-ratio:16/9; }
.aff-map-address{ margin:-12px 0 16px; }
.aff-map{ border-radius:var(--aff-r-md); overflow:hidden; border:1px solid var(--aff-line); }
.aff-map iframe{ display:block; width:100%; height:400px; border:0; }
.aff-book{ position:sticky; top:154px; background:#fff; border:1px solid var(--aff-line); border-radius:var(--aff-r-lg); box-shadow:var(--aff-shadow); overflow:hidden; scroll-margin-top:100px; }
.aff-book__price{ padding:24px 24px 20px; border-bottom:1px solid var(--aff-line); background:var(--aff-surface); }
.aff-book__price strong{ display:block; font-size:28px; font-weight:800; line-height:1.2; color:var(--aff-ink); }
.aff-book__price del{ font-size:15px; font-weight:500; color:var(--aff-muted); }
.aff-book__price span{ font-size:13px; color:var(--aff-muted); }
.aff-book .booking-form-box{ padding:22px 24px 8px; margin:0; background:none; box-shadow:none; border:0; }
.aff-book .booking-form-box > h3{ font-size:27px; margin:0 0 16px; }
.aff-book .search-box-single{ display:block; margin:0 0 10px; padding:0; background:none; border:0; }
.aff-book .searchbox-icon{ display:none; }
.aff-book .searchbox-input input,.aff-book .searchbox-input textarea{ width:100%; border:1px solid var(--aff-line); border-radius:var(--aff-r-sm); padding:11px 13px; font-size:14px; background:#fff; color:var(--aff-ink); }
.aff-book .searchbox-input input::placeholder,.aff-book .searchbox-input textarea::placeholder{ color:var(--aff-muted); }
.aff-book .searchbox-input textarea{ height:96px; }
.aff-book .button-fill-primary{ width:100%; padding:14px 20px; font-size:15px; }
.aff-book__help{ padding:14px 24px 22px; display:grid; gap:6px; }
.aff-book__help p{ margin:0 0 2px; font-size:13px; }
.aff-book__help a{ display:inline-flex; align-items:center; gap:8px; font-size:14px; font-weight:700; }
.aff-tour-related{ background:var(--aff-surface); padding:clamp(56px,7vw,96px) 0; }
.aff-tour-related h2{ margin:0 0 28px; }
.aff-tour-mobilebar{ display:none; }

/* Footer */
.aff-footer{ background:var(--aff-footer-bg2); }
.aff-footer-cta{ background:var(--aff-accent); color:#fff; padding:clamp(48px,6vw,76px) 0; }
.aff-cta-inner{ display:flex; align-items:center; justify-content:space-between; gap:36px; flex-wrap:wrap; }
.aff-cta-eyebrow{ display:block; font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:rgba(255,255,255,.82); margin-bottom:10px; }
.aff-footer-cta h2{ color:#fff; margin:0 0 10px; font-size:clamp(34px,4vw,50px); }
.aff-footer-cta p{ color:rgba(255,255,255,.92); margin:0; max-width:52ch; }
.aff-cta-actions{ display:flex; gap:12px; flex-wrap:wrap; }
.aff-btn{ display:inline-flex; align-items:center; justify-content:center; font-weight:700; font-size:15px; padding:14px 26px; border-radius:999px; white-space:nowrap; transition:background .2s ease,color .2s ease; }
.aff-btn-light{ background:#fff; color:var(--aff-accent-strong); }
.aff-btn-light:hover{ background:rgba(255,255,255,.88); color:var(--aff-accent-strong); }
.aff-btn-ghost{ color:#fff; border:1px solid rgba(255,255,255,.6); }
.aff-btn-ghost:hover{ background:#fff; color:var(--aff-accent-strong); }
.aff-footer .footer-main-wrapper.aff-footer-main{ background:var(--aff-footer-bg) !important; color:#C5D6CE; padding:clamp(52px,6vw,80px) 0 44px; }
.aff-footer .footer-widget h3{ color:#fff; font-size:25px; margin:0 0 18px; }
.aff-footer .aff-footer-brand{ display:block; font-family:var(--aff-serif); font-weight:600; font-size:31px; line-height:1.05; color:#fff; margin-bottom:14px; }
.aff-footer .aff-footer-brand span{ font-family:inherit; color:inherit; }
.aff-footer .footer-widget p{ color:#B7C9C0; font-size:14.5px; line-height:1.7; max-width:38ch; }
.aff-footer .footer-widget ul{ margin:0; padding:0; }
.aff-footer .footer-widget ul li{ list-style:none; margin-bottom:9px; }
.aff-footer .footer-widget ul li a{ color:#C5D6CE; font-size:14.5px; }
.aff-footer .footer-widget ul li a:hover{ color:#fff; }
.aff-footer .footer-social-icons h5{ font-family:var(--aff-sans) !important; color:#fff; font-size:13px; font-weight:700; margin:18px 0 10px; }
.aff-footer .footer-social-links{ display:flex; gap:8px; padding:0; margin:0; }
.aff-footer .footer-social-links li{ list-style:none; }
.aff-footer .footer-social-links li a{ display:inline-flex; align-items:center; justify-content:center; width:38px; height:38px; border-radius:50%; border:1px solid rgba(255,255,255,.25); color:#fff; font-size:18px; }
.aff-footer .footer-social-links li a:hover{ background:var(--aff-accent); border-color:var(--aff-accent); }
.aff-contact-list li{ display:flex; align-items:flex-start; gap:10px; }
.aff-contact-list li i{ color:#8FCDAA; font-size:18px; margin-top:3px; }
.aff-foot-cta-link{ display:inline-flex; align-items:center; gap:6px; margin-top:8px; color:#fff; font-weight:700; font-size:14.5px; }
.aff-footer .footer-bottom,.aff-footer .copyright-area,.aff-footer .footer-copyright{ background:var(--aff-footer-bg2) !important; color:#AFC3BA; font-size:13.5px; padding:16px 0; border-top:1px solid rgba(255,255,255,.08); }
.aff-footer .footer-bottom a,.aff-footer .copyright-area a,.aff-footer .footer-copyright a{ color:#fff; }

/* Mobile */
@media (max-width:1199px){
  .header.head-one{ position:relative; z-index:60; }
  .header-area .main-nav-wrapper > ul > li > a{ color:var(--aff-ink) !important; text-shadow:none; }
}
@media (max-width:991px){
  .aff-tour__main{ padding-right:12px; }
  .aff-book{ position:static; margin-top:8px; }
  .aff-tour-facts dl{ display:grid; grid-template-columns:repeat(2,1fr); }
  .aff-tour-facts dl > div{ border-left:0; border-top:1px solid var(--aff-line); padding:14px 0; }
  .aff-tour-facts dl > div:nth-child(-n+2){ border-top:0; }
  .aff-tour-mobilebar{ position:fixed; left:0; right:0; bottom:0; z-index:90; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 86px 10px 16px; background:#fff; border-top:1px solid var(--aff-line); box-shadow:0 -10px 24px -18px rgba(22,43,50,.5); }
  .aff-tour-mobilebar strong{ font-size:15px; font-weight:800; line-height:1.2; color:var(--aff-ink); }
  .aff-tour-mobilebar strong del{ display:none; }
  .aff-tour-mobilebar a{ flex:none; background:var(--aff-accent); color:#fff; border-radius:999px; padding:11px 18px; font-size:14px; font-weight:700; }
  .single-turio-package{ padding-bottom:66px; }
}
@media (max-width:767px){
  .aff-cta-actions,.aff-btn{ width:100%; }
  .hero-single-slide::before{ background:linear-gradient(0deg,rgba(11,26,20,.82) 0%,rgba(11,26,20,.42) 60%,rgba(11,26,20,.25) 100%); }
  .aff-day{ padding-left:26px; }
  .aff-day__head{ grid-template-columns:1fr 24px; }
  .aff-day__mark{ grid-column:1/-1; padding:0; }
  .aff-day__title{ grid-row:2; font-size:22px; }
  .aff-day__head i{ grid-row:2; grid-column:2; }
  .aff-map iframe{ height:300px; }
  .aff-footer .footer-social-links{ justify-content:center; }
}
@media (prefers-reduced-motion:reduce){
  html{ scroll-behavior:auto; }
  *,*::before,*::after{ animation:none !important; transition:none !important; }
}

/* Keep the enquiry card usable under the sticky bars */
@media (min-width:992px){
  .aff-book{ max-height:calc(100vh - 170px); overflow-y:auto; scrollbar-width:thin; }
  .aff-book__price{ padding:16px 24px 14px; }
  .aff-book__price strong{ font-size:24px; }
  .aff-book .booking-form-box{ padding:14px 24px 4px; }
  .aff-book .booking-form-box > h3{ font-size:24px; margin:0 0 10px; text-align:left; }
  .aff-book .search-box-single{ margin-bottom:7px; }
  .aff-book .searchbox-input input{ padding:8px 12px !important; height:40px; }
  .aff-book .searchbox-input textarea{ padding:8px 12px !important; height:72px; }
  .aff-book .button-fill-primary{ margin-top:6px !important; padding:11px 20px; }
  .aff-book__help{ padding:10px 24px 16px; }
}
.aff-tour-prose > .swp_social_panel:first-child,.aff-tour-prose .swp_social_panel.swp_social_panelTop{ display:none !important; }
/* Language switcher: clear of header controls */
#gt_float_wrapper{ top:auto !important; right:auto !important; bottom:16px !important; left:16px !important; }
@media (max-width:991px){ .single-turio-package #gt_float_wrapper{ bottom:78px !important; } }
.swp_social_panel .swp_share,.swp_social_panel .swp_count,.swp_social_panel .swp_label{ font-family:var(--aff-sans) !important; }
.hero-single-slide .hero-content,.hero-single-slide .hero-content > p{ text-align:left !important; margin-left:0; }
.hero-single-slide .hero-btns{ justify-content:flex-start; text-align:left; }
@media (max-width:767px){
  .e-con .row.g-4,.elementor-widget-container .row.g-4{ --bs-gutter-x:0; margin-left:0; margin-right:0; }
  .e-con .row.g-4 > [class*='col-']{ width:100%; flex:0 0 100%; max-width:100%; }
  .e-con.e-parent{ padding-left:16px !important; padding-right:16px !important; }
  .hero-single-slide .hero-content .hero-title{ max-width:none; }
}
.package-card-alpha .p-card-title a{ -webkit-line-clamp:3; }
.page-id-774 .elementor-element-e4490f3 .elementor-heading-title,.page-id-774 .elementor-element-f725cb0 .elementor-heading-title,.page-id-774 .elementor-element-3cfa71c .elementor-heading-title,.page-id-774 .elementor-element-1f4e302 .elementor-heading-title{ color:var(--aff-ink) !important; }

/* Home section order and grounds */
.page-id-774 .elementor-element-e4490f3{ background:var(--aff-surface) !important; }
.page-id-774 .elementor-element-d5a46e6{ background:#fff !important; padding-top:clamp(48px,6vw,80px) !important; padding-bottom:clamp(48px,6vw,80px) !important; }
.page-id-774 .elementor-element-d5a46e6 > .e-con-inner{ max-width:1240px; }
.page-id-774 .elementor-element-a1f0d01{ margin-bottom:12px; }
.page-id-774 .elementor-element-a1f0d01 .elementor-heading-title{ color:var(--aff-ink) !important; }

/* Destination tiles */
.aff-dest-grid{ display:grid; grid-template-columns:repeat(5,1fr); gap:14px; }
.aff-dest-tile{ position:relative; display:block; aspect-ratio:3/4; overflow:hidden; border-radius:var(--aff-r-md); background:var(--aff-footer-bg); }
.aff-dest-tile img{ width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.aff-dest-tile::after{ content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(11,26,20,.84) 0%,rgba(11,26,20,.2) 44%,rgba(11,26,20,0) 66%); }
.aff-dest-tile:hover img{ transform:scale(1.05); }
.aff-dest-tile__label{ position:absolute; z-index:1; left:18px; right:14px; bottom:16px; color:#fff; font-family:var(--aff-serif); font-size:29px; font-weight:600; line-height:1.1; }
.aff-dest-tile__label small{ display:block; margin-top:5px; font-family:var(--aff-sans); font-size:13px; font-weight:700; color:#fff; }

/* Blog listing */
.aff-blog{ padding:clamp(48px,6vw,84px) 0; }
.aff-post-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:24px; }
.aff-post-grid--3{ grid-template-columns:repeat(3,1fr); }
.aff-post-card{ display:flex; flex-direction:column; background:#fff; border:1px solid var(--aff-line); border-radius:var(--aff-r-md); overflow:hidden; transition:transform .3s ease, box-shadow .3s ease; }
.aff-post-card:hover{ transform:translateY(-4px); box-shadow:var(--aff-shadow); }
.aff-post-card__img{ display:block; aspect-ratio:16/10; overflow:hidden; background:var(--aff-surface); }
.aff-post-card__img img{ width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.aff-post-card:hover .aff-post-card__img img{ transform:scale(1.04); }
.aff-post-card__body{ display:flex; flex-direction:column; flex:1; padding:20px 22px 22px; }
.aff-post-meta{ margin:0 0 8px; font-size:13px; font-weight:500; color:var(--aff-muted); }
.aff-post-card h3{ font-size:25px; line-height:1.15 !important; margin:0 0 10px; }
.aff-post-card h3 a{ color:var(--aff-ink); }
.aff-post-card h3 a:hover{ color:var(--aff-accent); }
.aff-post-card__excerpt{ font-size:14.5px; line-height:1.6; margin:0 0 14px; }
.aff-post-card__more{ margin-top:auto; font-size:14px; font-weight:700; }
.aff-blog-pagination{ display:flex; justify-content:center; margin-top:36px; }

/* Blog sidebar */
.aff-blog-side{ display:grid; gap:22px; padding-left:clamp(0px,1.5vw,16px); }
.aff-side-box,.aff-side-cta{ background:#fff; border:1px solid var(--aff-line); border-radius:var(--aff-r-md); padding:22px; }
.aff-side-box h3,.aff-side-cta h3{ font-size:27px; margin:0 0 14px; }
.aff-pop-list{ list-style:none; margin:0; padding:0; }
.aff-pop-list li + li{ border-top:1px solid var(--aff-line); }
.aff-pop-list a{ display:grid; grid-template-columns:72px 1fr; gap:12px; align-items:center; padding:11px 0; }
.aff-pop-list img{ width:72px; height:72px; object-fit:cover; border-radius:var(--aff-r-sm); }
.aff-pop-list strong{ display:block; font-family:var(--aff-serif); font-size:19px; font-weight:600; line-height:1.15; color:var(--aff-ink); }
.aff-pop-list a:hover strong{ color:var(--aff-accent); }
.aff-pop-list small{ display:block; margin-top:4px; font-size:12.5px; color:var(--aff-muted); }
.aff-side-more{ display:inline-block; margin-top:10px; font-size:14px; font-weight:700; }
.aff-side-cta{ background:var(--aff-accent); border:0; }
.aff-side-cta h3,.aff-side-cta p{ color:#fff; }
.aff-side-cta p{ font-size:14.5px; margin:0 0 16px; }
.aff-side-cta .button-fill-primary{ display:inline-block; background:#fff; color:var(--aff-accent-strong); padding:12px 22px; font-size:14px; }
.aff-side-cta .button-fill-primary:hover{ background:rgba(255,255,255,.88); color:var(--aff-accent-strong); }

/* Single article */
.aff-article__head{ padding:clamp(40px,5vw,72px) 0 clamp(24px,3vw,36px); }
.aff-article__head .breadcrumb-items{ list-style:none; margin:0 0 14px; padding:0; gap:8px; background:none; }
.aff-article__head .breadcrumb-items li,.aff-article__head .breadcrumb-items a{ color:var(--aff-muted); font-size:13px; }
.aff-article__head h1{ max-width:20ch; margin:0 0 14px; font-size:clamp(40px,5vw,66px); }
.aff-article__img{ margin:0 0 clamp(32px,4vw,52px); border-radius:var(--aff-r-lg); overflow:hidden; aspect-ratio:21/9; }
.aff-article__img img{ width:100%; height:100%; object-fit:cover; }
.aff-article__main{ padding-right:clamp(12px,3vw,48px); padding-bottom:clamp(44px,5vw,72px); }
.aff-article__body{ font-size:17px; line-height:1.8; }
.aff-article__body p,.aff-article__body li{ color:var(--aff-ink); }
.aff-article__body > p:first-child{ font-size:19px; }
.aff-article__tax{ display:flex; flex-wrap:wrap; gap:8px; margin:28px 0; }
.aff-article__tax a{ padding:6px 13px; border:1px solid var(--aff-line); border-radius:999px; font-size:13px; font-weight:600; color:var(--aff-ink); }
.aff-article__tax a:hover{ border-color:var(--aff-accent); color:var(--aff-accent); }
.aff-article__nav{ display:grid; grid-template-columns:1fr 1fr; gap:20px; padding:20px 0; margin-bottom:28px; border-top:1px solid var(--aff-line); border-bottom:1px solid var(--aff-line); }
.aff-article__nav a{ font-family:var(--aff-serif); font-size:21px; font-weight:600; line-height:1.2; color:var(--aff-ink); }
.aff-article__nav span:last-child{ text-align:right; }
@media (min-width:992px){ .aff-article .aff-blog-side{ position:sticky; top:104px; } }

/* Booking page */
.page-id-31 .aff-booking{ background:var(--aff-surface); padding:clamp(44px,6vw,80px) 16px !important; }
.page-id-31 .aff-booking__row{ display:grid !important; grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); gap:28px; align-items:start; max-width:1240px; margin:0 auto; }
.page-id-31 .aff-booking__form{ width:100% !important; background:#fff; border:1px solid var(--aff-line); border-radius:var(--aff-r-lg); padding:clamp(22px,3.5vw,44px); box-shadow:var(--aff-shadow); }
.page-id-31 .aff-booking__form .frm_forms{ background:none; border:0; padding:0; border-radius:0; box-shadow:none; }
.page-id-31 .aff-booking__form .elementor-heading-title{ margin:0; }
.page-id-31 .aff-booking__side{ width:100% !important; display:flex; flex-direction:column; gap:20px; }
.page-id-31 .frm_forms label,.page-id-31 .frm_primary_label{ font-size:14px !important; font-weight:600 !important; color:var(--aff-ink) !important; }
.page-id-31 .frm_button_submit,.page-id-31 .frm_submit button{ width:100%; padding:15px 24px !important; border-radius:999px !important; background:var(--aff-accent) !important; color:#fff !important; font-weight:700 !important; font-size:16px !important; border:0 !important; }
.page-id-31 .frm_button_submit:hover,.page-id-31 .frm_submit button:hover{ background:var(--aff-accent-strong) !important; }
.aff-trust-card{ background:#fff; border:1px solid var(--aff-line); border-radius:var(--aff-r-md); padding:24px; }
.aff-trust-card + .aff-trust-card{ margin-top:20px; }
.aff-trust-card h3{ font-size:27px; margin:0 0 14px; }
.aff-trust-card h4{ font-size:21px; margin:18px 0 8px; }
.aff-trust-card p{ font-size:14.5px; line-height:1.6; margin:0 0 10px; }
.aff-steps{ list-style:none; counter-reset:s; margin:0 0 12px; padding:0; }
.aff-steps li{ counter-increment:s; position:relative; padding:0 0 14px 42px; }
.aff-steps li::before{ content:counter(s); position:absolute; left:0; top:0; width:28px; height:28px; display:flex; align-items:center; justify-content:center; border-radius:50%; background:var(--aff-accent); color:#fff; font-size:13px; font-weight:800; }
.aff-steps strong{ display:block; font-size:15px; }
.aff-steps span{ display:block; font-size:14px; line-height:1.55; color:var(--aff-muted); }
.aff-trust-link{ font-size:14px; font-weight:700; }
.aff-contact-lines{ list-style:none; margin:0; padding:0; }
.aff-contact-lines li{ display:flex; align-items:center; gap:10px; margin-bottom:8px; font-size:14.5px; font-weight:600; overflow-wrap:anywhere; }
.aff-contact-lines i{ color:var(--aff-accent); font-size:19px; }
.page-id-31 .elementor-widget-google_maps iframe{ height:260px !important; border:1px solid var(--aff-line); }
.page-id-31 .aff-booking-reviews{ padding:clamp(48px,6vw,80px) 16px; }
.page-id-31 .aff-booking-reviews .elementor-heading-title{ margin-bottom:12px; }

/* Online payment */
.page-id-9647 .elementor-element-daa7a7e{ max-width:760px; margin:0 auto; background:#fff; border:1px solid var(--aff-line); border-radius:var(--aff-r-lg); padding:clamp(24px,4vw,48px); box-shadow:var(--aff-shadow); }
.page-id-9647 .elementor-element-ecc77a1{ background:var(--aff-surface) !important; }
.page-id-9647 .elementor-heading-title{ color:var(--aff-ink) !important; }

/* Cache notice */
.aff-cache-toast{ position:fixed; z-index:100000; right:20px; top:48px; margin:0; padding:10px 16px; background:var(--aff-accent); color:#fff; border-radius:var(--aff-r-sm); }
.aff-cache-toast p{ margin:0; color:#fff; }

@media (max-width:991px){
  .aff-post-grid--3{ grid-template-columns:repeat(2,1fr); }
  .page-id-31 .aff-booking__row{ grid-template-columns:1fr; }
  .aff-blog-side{ margin-top:32px; padding-left:0; }
  .aff-article__main{ padding-right:12px; }
  .aff-dest-grid{ grid-template-columns:repeat(3,1fr); }
}
@media (max-width:767px){
  .aff-post-grid,.aff-post-grid--3{ grid-template-columns:1fr; }
  .aff-dest-grid{ grid-template-columns:repeat(2,1fr); gap:10px; }
  .aff-dest-tile:last-child{ grid-column:1/-1; aspect-ratio:16/9; }
  .aff-dest-tile__label{ font-size:25px; left:14px; bottom:12px; }
  .aff-article__img{ aspect-ratio:16/10; }
  .aff-article__nav{ grid-template-columns:1fr; }
  .aff-article__nav span:last-child{ text-align:left; }
}
h1 a,h2 a,h3 a,h4 a,h5 a,h6 a{ font-family:var(--aff-serif); }
.aff-article__head .aff-post-meta{ font-size:14px; }

/* Destination pages */
.aff-destination .page-wrapper,.aff-destination .elementor{ background:#fff; }
.aff-dest-facts{ border-bottom:1px solid var(--aff-line); background:#fff; }
.aff-dest-facts .container{ display:flex; align-items:center; justify-content:space-between; gap:24px; padding-top:20px; padding-bottom:20px; flex-wrap:wrap; }
.aff-dest-facts dl{ display:flex; gap:40px; margin:0; flex-wrap:wrap; }
.aff-dest-facts dt{ font-size:12px; font-weight:600; color:var(--aff-muted); margin-bottom:3px; }
.aff-dest-facts dd{ margin:0; font-size:15px; font-weight:700; color:var(--aff-ink); }
.aff-dest-facts .button-fill-primary{ padding:12px 24px; font-size:14px; }
.aff-destination [data-elementor-type="wp-page"] > .e-con:not(.aff-dest-tours){ background:#fff !important; padding:clamp(40px,5vw,72px) 16px !important; }
.aff-destination [data-elementor-type="wp-page"] > .e-con:not(.aff-dest-tours) > .e-con-inner,
.aff-destination [data-elementor-type="wp-page"] > .e-con:not(.aff-dest-tours) .e-con-inner{ max-width:820px !important; margin:0 auto; }
.aff-destination .elementor-widget-heading .elementor-heading-title{ text-align:left !important; color:var(--aff-ink) !important; text-decoration:none !important; font-size:clamp(32px,3.4vw,46px) !important; font-weight:600 !important; font-family:var(--aff-serif) !important; line-height:1.1 !important; }
.aff-destination .elementor-widget-heading{ margin-top:clamp(20px,3vw,36px); margin-bottom:6px; }
.aff-destination .elementor-widget-heading:first-child{ margin-top:0; }
.aff-destination .elementor-widget-text-editor,.aff-destination .elementor-widget-text-editor *{ text-align:left !important; font-family:var(--aff-sans); }
.aff-destination .elementor-widget-text-editor p,.aff-destination .elementor-widget-text-editor li{ color:var(--aff-muted); font-size:16px !important; line-height:1.75 !important; }
.aff-destination .elementor-widget-text-editor h2,.aff-destination .elementor-widget-text-editor h3,.aff-destination .elementor-widget-text-editor h4,.aff-destination .elementor-widget-text-editor strong{ color:var(--aff-ink); }
.aff-destination .elementor-widget-text-editor h2,.aff-destination .elementor-widget-text-editor h3,.aff-destination .elementor-widget-text-editor h4{ font-family:var(--aff-serif) !important; }
.aff-destination .elementor-widget-image img{ width:100%; height:auto; border-radius:var(--aff-r-lg); border:1px solid var(--aff-line); }
.aff-destination .elementor-widget-image{ margin:clamp(16px,2.5vw,28px) 0; }
.aff-destination .e-n-tabs-heading{ gap:8px; flex-wrap:wrap; }
.aff-destination .e-n-tab-title{ border:1px solid var(--aff-line) !important; border-radius:999px !important; background:#fff !important; color:var(--aff-ink) !important; padding:10px 18px !important; }
.aff-destination .e-n-tab-title[aria-selected="true"]{ background:var(--aff-accent) !important; border-color:var(--aff-accent) !important; color:#fff !important; }
.aff-destination .e-n-tab-title *{ color:inherit !important; }
.aff-dest-tours{ background:var(--aff-surface) !important; padding:clamp(52px,6vw,88px) 16px !important; scroll-margin-top:90px; }
.aff-dest-tours > .e-con-inner{ max-width:1240px !important; }
.aff-dest-tours .elementor-widget-heading{ margin-bottom:18px; }
.aff-dest-tours .elementor-heading-title{ font-size:clamp(34px,3.8vw,50px) !important; }
.aff-dest-more{ padding:clamp(52px,6vw,88px) 0; background:#fff; }
.aff-dest-more h2{ margin:0 0 22px; }
.aff-dest-more .aff-dest-grid{ grid-template-columns:repeat(4,1fr); }

/* Listing pages: Mountain Hikes, Group Tours */
.aff-listing__intro{ background:#fff; padding:clamp(44px,6vw,80px) 16px clamp(28px,4vw,44px) !important; }
.aff-listing__intro > .e-con-inner{ max-width:820px !important; }
.aff-listing__intro .elementor-heading-title{ margin-bottom:8px; color:var(--aff-ink) !important; }
.aff-listing__tours{ background:var(--aff-surface); padding:clamp(44px,5vw,72px) 16px clamp(56px,6vw,88px) !important; }
.aff-listing__tours > .e-con-inner{ max-width:1240px !important; }

/* Eight-item menu */
@media (min-width:1200px){
  .header-area .main-nav-wrapper > ul > li{ margin-left:4px; margin-right:4px; }
  .header-area .main-nav-wrapper > ul > li > a{ font-size:13.5px; white-space:nowrap; }
}
@media (max-width:767px){
  .aff-dest-facts dl{ gap:18px; }
  .aff-dest-facts .button-fill-primary{ width:100%; text-align:center; }
  .aff-dest-more .aff-dest-grid{ grid-template-columns:repeat(2,1fr); }
  .aff-dest-more .aff-dest-tile:last-child{ grid-column:auto; aspect-ratio:3/4; }
}
/* One-line desktop menu */
@media (min-width:1200px){
  .header-area .main-nav{ float:none !important; flex:1 1 auto; display:flex; justify-content:flex-end; min-width:0; }
  .header-area .main-nav-wrapper{ display:flex; align-items:center; }
  .header-area .main-nav-wrapper > ul{ display:flex !important; flex-wrap:nowrap; align-items:center; gap:clamp(12px,1.5vw,24px); margin:0; }
  .header-area .main-nav-wrapper > ul > li{ float:none !important; margin:0 !important; padding:0 !important; display:flex; align-items:center; flex:none; }
  .header-area .main-nav-wrapper > ul > li > a{ padding-left:0 !important; padding-right:0 !important; font-size:13.5px; }
  .header-area .main-nav-wrapper > ul > li > i.menu-plus{ position:static !important; margin-left:3px; }
  .header-area .main-nav-wrapper > ul > li:not(.menu-item-has-children) > i.menu-plus{ display:none !important; }
}
/* Full-width header */
.topbar-area > .container,.header-area > .container{ max-width:100% !important; width:100%; padding-left:clamp(16px,3vw,48px); padding-right:clamp(16px,3vw,48px); }

/* Left popup menu and loader removed */
.category-sidebar-wrapper,.header-area .category-toggle,.egns-preloader{ display:none !important; }

/* No animations. Slider and carousel tracks keep their own movement. */
*:not(.swiper-wrapper):not(.swiper-slide):not(.slick-track):not(.slick-slide):not([class*="ti-"]),
*:not(.swiper-wrapper):not(.swiper-slide):not(.slick-track):not(.slick-slide):not([class*="ti-"])::before,
*:not(.swiper-wrapper):not(.swiper-slide):not(.slick-track):not(.slick-slide):not([class*="ti-"])::after{ animation:none !important; transition:none !important; }
.wow,.animate,.fadeffect,.elementor-invisible,[data-wow-delay]{ visibility:visible !important; opacity:1 !important; transform:none !important; }
.hero-content,.hero-content *{ opacity:1 !important; transform:none !important; visibility:visible !important; }
.package-card-alpha:hover,.package-card-alpha:hover .package-thumb img,.blog-card-gamma-full:hover,.pt-cv-content-item:hover,.aff-post-card:hover,.aff-post-card:hover .aff-post-card__img img,
.aff-dest-tile:hover img,.aff-gallery a:hover img,.button-fill-primary:active,.elementor-button:active,button[type=submit]:active{ transform:none !important; }
.hero-single-slide .hero-content .hero-title{ max-width:19ch !important; font-size:clamp(44px,5.4vw,72px) !important; }

.page-id-774 .elementor-element-4c9ae37 .swiper-pagination,.page-id-774 .elementor-element-4c9ae37 [class*=swiper-button],.page-id-774 .elementor-element-4c9ae37 [class*=slider-arrows]{ display:none !important; }

.hero-single-slide::before{ background:linear-gradient(95deg,rgba(11,26,20,.86) 0%,rgba(11,26,20,.68) 42%,rgba(11,26,20,.2) 78%,rgba(11,26,20,.08) 100%) !important; }
@media (max-width:767px){ .hero-single-slide::before{ background:rgba(11,26,20,.58) !important; } }

/* About page */
.page-id-7937 [data-elementor-type="wp-page"] > .e-con{ padding:clamp(52px,6.5vw,96px) 16px !important; background:#fff !important; }
.page-id-7937 [data-elementor-type="wp-page"] > .e-con > .e-con-inner{ max-width:1240px !important; }
.page-id-7937 .elementor-heading-title{ font-family:var(--aff-serif) !important; color:var(--aff-ink) !important; text-decoration:none !important; font-weight:600 !important; font-size:clamp(34px,3.8vw,50px) !important; line-height:1.1 !important; text-transform:none !important; }
.page-id-7937 .elementor-widget-text-editor p{ color:var(--aff-muted); font-size:16px; line-height:1.75; margin:0 0 12px; }
.aff-about-intro > .e-con-inner{ display:grid !important; grid-template-columns:minmax(0,1.08fr) minmax(0,1fr); gap:clamp(32px,5vw,72px); align-items:center; }
.aff-about-intro > .e-con-inner > .e-con{ width:100% !important; padding:0; }
.aff-about-intro__media img{ width:100%; aspect-ratio:5/4; object-fit:cover; border-radius:var(--aff-r-lg); }
.aff-about-intro__copy{ gap:14px; }
.page-id-7937 .aff-about-lead{ font-size:19px; line-height:1.6; color:var(--aff-ink); }
.aff-about-intro__copy .elementor-button{ padding:14px 28px; font-size:15px; }
.page-id-7937 .aff-about-factband{ padding-top:0 !important; padding-bottom:0 !important; }
.aff-about-facts{ display:grid; grid-template-columns:repeat(4,1fr); margin:0; border-top:1px solid var(--aff-line); border-bottom:1px solid var(--aff-line); }
.aff-about-facts > div{ padding:24px 22px; border-left:1px solid var(--aff-line); }
.aff-about-facts > div:first-child{ border-left:0; padding-left:0; }
.aff-about-facts dt{ font-size:12px; font-weight:600; color:var(--aff-muted); margin-bottom:4px; }
.aff-about-facts dd{ margin:0; font-size:15px; font-weight:700; line-height:1.45; color:var(--aff-ink); }
.aff-about-how > .e-con-inner{ display:grid !important; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:clamp(32px,6vw,88px); align-items:start; }
.aff-about-how > .e-con-inner > .e-con{ width:100% !important; padding:0; }
.aff-about-ways section{ padding:20px 0; border-top:1px solid var(--aff-line); }
.aff-about-ways section:first-child{ border-top:0; padding-top:0; }
.aff-about-ways h3{ font-size:27px; margin:0 0 6px; }
.aff-about-ways p{ margin:0; font-size:15.5px; line-height:1.7; }
.page-id-7937 .aff-about-why{ background:var(--aff-surface) !important; }
.aff-about-why > .e-con-inner{ gap:24px; }
.aff-about-why__list{ display:grid !important; grid-template-columns:repeat(2,1fr); gap:0 clamp(32px,5vw,72px); counter-reset:why; padding:0; width:100% !important; }
.aff-about-why__list .elementor-widget-icon-box{ counter-increment:why; width:100% !important; border-top:1px solid var(--aff-line); padding:22px 0 24px; }
.page-id-7937 .aff-about-why__list .elementor-icon-box-wrapper{ background:none; border:0; border-radius:0; padding:0 !important; box-shadow:none !important; height:auto; display:grid; grid-template-columns:42px 1fr; gap:6px; text-align:left; }
.aff-about-why__list .elementor-icon-box-wrapper::before{ content:counter(why); grid-row:1 / span 2; width:30px; height:30px; display:flex; align-items:center; justify-content:center; border-radius:50%; background:var(--aff-accent); color:#fff; font-size:13px; font-weight:800; }
.aff-about-why__list .elementor-icon-box-icon{ display:none !important; }
.aff-about-why__list .elementor-icon-box-content{ grid-column:2; grid-row:1 / span 2; }
.page-id-7937 .aff-about-why__list .elementor-icon-box-title,.page-id-7937 .aff-about-why__list .elementor-icon-box-title *{ font-family:var(--aff-serif) !important; font-size:27px !important; font-weight:600 !important; line-height:1.15 !important; color:var(--aff-ink) !important; margin:0 0 6px; }
.aff-about-why__list .elementor-icon-box-description{ color:var(--aff-muted); font-size:15.5px; line-height:1.7; margin:0; text-align:left; }
.aff-about-reviews .elementor-heading-title{ text-align:center; margin-bottom:12px; }
@media (max-width:991px){
  .aff-about-intro > .e-con-inner,.aff-about-how > .e-con-inner{ grid-template-columns:1fr; }
  .aff-about-facts{ grid-template-columns:repeat(2,1fr); }
  .aff-about-facts > div:nth-child(odd){ border-left:0; padding-left:0; }
  .aff-about-facts > div:nth-child(n+3){ border-top:1px solid var(--aff-line); }
}
@media (max-width:767px){
  .aff-about-why__list{ grid-template-columns:1fr; }
  .aff-about-facts{ grid-template-columns:1fr; }
  .aff-about-facts > div{ border-left:0; padding:14px 0; border-top:1px solid var(--aff-line); }
  .aff-about-facts > div:first-child{ border-top:0; }
}
.aff-about-intro__copy .elementor-button{ background:var(--aff-accent) !important; color:#fff !important; }
.aff-about-intro__copy .elementor-button:hover{ background:var(--aff-accent-strong) !important; }
.page-id-7937 .aff-about-intro{ padding-bottom:clamp(36px,4vw,56px) !important; }

html{ scroll-behavior:auto !important; }
.aff-about-why__list{ display:block !important; }
.aff-about-why__list > .e-con-inner{ display:grid !important; grid-template-columns:repeat(2,1fr); gap:0 clamp(32px,5vw,72px); max-width:none !important; padding:0; }
.page-id-7937 .aff-about-why__list .elementor-icon-box-description{ font-family:var(--aff-sans) !important; }
@media (max-width:767px){ .aff-about-why__list > .e-con-inner{ grid-template-columns:1fr; } }
.page-id-7937 [data-elementor-type="wp-page"] > .e-con.aff-about-why{ background:var(--aff-surface) !important; }

/* Hero: the photo is on .hero-content-bg, so the overlay must live inside that layer */
.hero-single-slide::before{ display:none !important; }
.hero-single-slide .hero-content-bg{ position:relative; background-size:125% auto !important; background-position:0% 28% !important; background-repeat:no-repeat; }
.hero-single-slide .hero-content-bg::before{ content:"" !important; position:absolute !important; inset:0; z-index:0; pointer-events:none; opacity:1 !important; display:block !important; background:linear-gradient(95deg,rgba(11,26,20,.82) 0%,rgba(11,26,20,.66) 36%,rgba(11,26,20,.18) 66%,rgba(11,26,20,.04) 100%) !important; }
.hero-single-slide .hero-content-bg > .container{ position:relative; z-index:1; }
@media (max-width:767px){
  .hero-single-slide .hero-content-bg{ background-size:cover !important; background-position:60% center !important; }
  .hero-single-slide .hero-content-bg::before{ background:rgba(11,26,20,.55) !important; }
}
@media (max-width:767px){
  .hero-single-slide .hero-content-bg{ background-color:#0E2019; background-size:auto 56% !important; background-position:58% top !important; }
  .hero-single-slide .hero-content-bg::before{ background:linear-gradient(180deg,rgba(14,32,25,.05) 0%,rgba(14,32,25,.1) 34%,rgba(14,32,25,.96) 56%,#0E2019 100%) !important; }
  .hero-single-slide .hero-content{ position:relative; top:140px; }
}
/* Home banner: black shade */
.hero-single-slide .hero-content-bg::before{ background:linear-gradient(95deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.52) 42%,rgba(0,0,0,.24) 72%,rgba(0,0,0,.18) 100%) !important; }
@media (max-width:767px){
  .hero-single-slide .hero-content-bg{ background-color:#000; }
  .hero-single-slide .hero-content-bg::before{ background:linear-gradient(180deg,rgba(0,0,0,.26) 0%,rgba(0,0,0,.3) 34%,rgba(0,0,0,.95) 56%,#000 100%) !important; }
}
/* Dropdown link for the menu's All Safaris parent */
.header-area .sub-menu{ min-width:210px; }
@media (min-width:1200px){ .header-area .main-nav-wrapper > ul{ gap:clamp(24px,2.7vw,44px) !important; } }

/* Home: text tour list */
.aff-home-tours > .e-con-inner{ max-width:1240px !important; }
.page-id-774 .aff-home-tours .elementor-heading-title{ text-align:left; font-family:var(--aff-serif) !important; font-size:clamp(34px,3.8vw,50px) !important; font-weight:600 !important; color:var(--aff-ink) !important; }
.aff-tour-list{ columns:3; column-gap:clamp(32px,4vw,56px); margin-top:12px; }
.aff-tour-list__group h3{ font-size:27px; margin:0; padding:18px 0 8px; color:var(--aff-accent); break-after:avoid; }
.aff-tour-list__group ul{ list-style:none; margin:0 0 10px; padding:0; }
.aff-tour-list__group li{ border-top:1px solid var(--aff-line); break-inside:avoid; }
.aff-tour-list__group a{ display:block; padding:11px 0; color:var(--aff-ink); }
.aff-tour-list__group a span{ display:block; font-size:15px; font-weight:600; line-height:1.4; }
.aff-tour-list__group a:hover span{ color:var(--aff-accent); text-decoration:underline; }
.aff-tour-list__group small{ display:block; margin-top:2px; font-size:13px; color:var(--aff-muted); }
.aff-home-tours .elementor-button{ background:var(--aff-accent) !important; color:#fff !important; margin-top:20px; padding:14px 28px; font-size:15px; }
.page-id-774 .elementor-element-1a8ea40,.page-id-774 .elementor-element-ccd9bb5{ background:var(--aff-surface) !important; }

/* Tour packages: destination tabs */
.aff-tours{ padding:clamp(36px,4.5vw,60px) 0 clamp(56px,6vw,88px); }
.aff-tabs{ display:flex; gap:8px; overflow-x:auto; scrollbar-width:none; margin-bottom:clamp(28px,3vw,40px); padding-bottom:2px; }
.aff-tab{ flex:none; display:inline-flex; align-items:center; gap:8px; padding:11px 20px; border:1px solid var(--aff-line); border-radius:999px; background:#fff; color:var(--aff-ink); font-size:15px; font-weight:700; }
.aff-tab span{ font-size:12px; font-weight:700; color:var(--aff-muted); }
.aff-tab:hover{ border-color:var(--aff-accent); color:var(--aff-accent); }
.aff-tab.is-active{ background:var(--aff-accent); border-color:var(--aff-accent); color:#fff; }
.aff-tab.is-active span{ color:#fff; }
.aff-tab-panel{ margin-bottom:40px; scroll-margin-top:110px; }
.aff-tab-panel h2{ margin:0 0 22px; }
.aff-tabs-ready .aff-tab-panel{ display:none; margin-bottom:0; }
.aff-tabs-ready .aff-tab-panel.is-open{ display:block; }
@media (max-width:991px){ .aff-tour-list{ columns:2; } }
@media (max-width:767px){ .aff-tour-list{ columns:1; } .aff-tours .row.g-4{ --bs-gutter-x:0; } }
.aff-tour-list__group summary{ list-style:none; }
.aff-tour-list__group summary::-webkit-details-marker{ display:none; }
.aff-tour-list__group > ul{ display:block; }
@media (min-width:768px){ .aff-tour-list__group summary{ pointer-events:none; } }
@media (max-width:767px){ .aff-tour-list__group{ border-top:1px solid var(--aff-line); } .aff-tour-list__group summary{ cursor:pointer; display:flex; justify-content:space-between; align-items:center; } .aff-tour-list__group summary::after{ content:"+"; font-size:24px; color:var(--aff-accent); } .aff-tour-list__group[open] summary::after{ content:"\2212"; } .aff-tour-list__group h3{ padding:14px 0; } }

.post-type-archive-turio-package .breadcrumb.breadcrumb-style-one{ background-position:center 30%; }

/* Dropdown indicator on the desktop menu */
@media (min-width:1200px){
  header .header-style-one .main-nav-wrapper #menu-great > li.menu-item-has-children::after,
  header .header-style-one .main-nav-wrapper #menu-great > li:hover.menu-item-has-children::after{ content:"+" !important; position:static !important; margin-left:5px; font-family:var(--aff-sans) !important; font-size:17px !important; font-weight:700 !important; line-height:1; color:var(--aff-accent) !important; transform:none !important; display:inline-block; }
}

@media (min-width:1200px){
  header .header-style-one .main-nav-wrapper #menu-great > li{ display:flex !important; flex-flow:row nowrap !important; align-items:center !important; position:relative; }
  header .header-style-one .main-nav-wrapper #menu-great > li > a{ display:inline-block; width:auto !important; flex:none; }
  header .header-style-one .main-nav-wrapper #menu-great > li.menu-item-has-children::after{ flex:none; }
}

@media (min-width:1200px){
  header .header-style-one .main-nav-wrapper #menu-great > li > ul.sub-menu{ position:absolute !important; top:100% !important; bottom:auto !important; left:0 !important; right:auto !important; margin:0 !important; }
}

/* Trip prices, includes and excludes */
.aff-price-table{ width:100%; max-width:520px; border-collapse:collapse; margin:0 0 28px; font-size:15px; }
.aff-price-table th{ text-align:left; padding:10px 14px; background:var(--aff-surface); font-weight:700; color:var(--aff-ink); }
.aff-price-table td{ padding:11px 14px; border-top:1px solid var(--aff-line); color:var(--aff-ink); }
.aff-price-table td:last-child{ font-weight:800; }
.aff-inc-exc{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(20px,3vw,36px); margin-top:8px; }
.aff-inc-exc h3{ margin-top:0 !important; font-size:27px; }
.aff-inc-exc ul{ list-style:none; padding:0 !important; margin:0; }
.aff-inc-exc li{ position:relative; padding:0 0 10px 26px; color:var(--aff-muted); font-size:15px; line-height:1.6; }
.aff-inc-exc li::before{ position:absolute; left:0; top:0; font-weight:800; }
.aff-inc li::before{ content:"\2713"; color:var(--aff-accent); }
.aff-exc li::before{ content:"\2715"; color:#A23B2A; }
@media (max-width:767px){ .aff-inc-exc{ grid-template-columns:1fr; } }