/* Humbaro 1.2: a quieter interface and expressive, readable display type. */
@font-face{font-family:HumbaroEditorial;src:url('/assets/fonts/editorial-regular.woff2') format('woff2');font-style:normal;font-weight:400 600;font-display:swap}
@font-face{font-family:HumbaroEditorial;src:url('/assets/fonts/editorial-italic.woff2') format('woff2');font-style:italic;font-weight:400 600;font-display:swap}
:root{--editorial:HumbaroEditorial,Georgia,'Times New Roman',serif;--serif:var(--editorial)}
html{scroll-padding-top:155px}
body{font-weight:400;line-height:1.85}
h1,h2{font-family:var(--editorial);font-weight:500;letter-spacing:-.025em;line-height:1.08}
h3{font-family:Montserrat,sans-serif;font-weight:500;letter-spacing:-.025em}
.button{font-family:Roboto,sans-serif;font-weight:500;letter-spacing:.015em}
.eyebrow{font-family:Raleway,sans-serif;font-weight:600;font-size:11px;letter-spacing:.16em}
.topbar,.site-header.is-scrolled .topbar{display:flex;height:39px;background:var(--green);border:0;color:#fff;padding:0 3%;gap:28px;position:relative;z-index:2;font:400 11px/1.4 Roboto,sans-serif;letter-spacing:.025em}
.topbar>span{flex:1;min-width:0}.topline-mobile{display:none}
.topbar-contact{gap:24px;flex-shrink:0}
.topbar-contact a{font-size:12px;letter-spacing:0;color:#ffffffe6}
.topbar-contact a:hover{color:#fff}
.topbar-language{position:relative;flex-shrink:0;align-self:stretch}
.language-trigger{list-style:none;display:flex;align-items:center;gap:9px;height:100%;padding:0 0 0 24px;border-left:1px solid #ffffff40;cursor:pointer;font:500 12px/1.4 Roboto,sans-serif;letter-spacing:.01em;min-width:133px;justify-content:flex-end}
.language-trigger::-webkit-details-marker{display:none}
.language-trigger>svg:last-child{transition:transform .2s;margin-left:3px}
.topbar-language[open] .language-trigger>svg:last-child{transform:rotate(180deg)}
.language-menu{position:absolute;top:calc(100% + 9px);right:0;width:206px;padding:7px;background:var(--cream);color:var(--charcoal);border:1px solid var(--line);box-shadow:0 15px 35px #0002;letter-spacing:0}
.topbar .language-option{display:flex;gap:11px;align-items:center;padding:12px 10px;font:400 14px/1.5 'Open Sans',sans-serif;min-height:47px}
.language-option>svg{margin-left:auto;color:var(--green)}
.language-code{font:500 10px/1 Roboto,sans-serif;display:grid;place-items:center;width:28px;height:26px;border:1px solid var(--line);color:var(--green);letter-spacing:.04em}
.language-option:hover,.language-option.is-selected{background:var(--sand);color:var(--green)}
.nav-shell{height:106px;gap:28px}
.nav-link{font-size:14px;font-weight:500;letter-spacing:0;padding:24px 0}
.nav-submenu-toggle{padding-left:6px}
.nav-cta{font-size:14px;font-weight:500;min-height:48px}
.site-header.is-scrolled .nav-shell{height:90px}
.site-header.is-scrolled .brand-full{width:214px}
.dropdown-links>a{font-size:14px;line-height:1.6}
.dropdown-all{font-weight:500!important}
.home-hero{height:100svh;min-height:790px;max-height:1300px}
.home-hero .hero-shade{background:linear-gradient(180deg,#0004,transparent 38%,#0004),linear-gradient(90deg,#0008 0%,#0005 42%,#0000 90%)}
.hero-content{padding-top:clamp(228px,29svh,355px)}
.hero-content .eyebrow{font-size:11px;font-weight:500;letter-spacing:.23em;margin-bottom:24px;color:#fff}
.hero-content .hero-title{font-family:var(--editorial);font-weight:400;font-size:clamp(80px,7.5vw,112px);line-height:.98;letter-spacing:-.025em;max-width:1000px;color:#fff;text-wrap:initial;text-shadow:0 2px 28px #0002}
.hero-line,.hero-accent{display:block}
.hero-accent{font-weight:400;font-style:italic;letter-spacing:-.035em;margin-top:3px}
.hero-content p{font-family:'Open Sans',sans-serif;font-weight:400;font-size:15px;line-height:1.85;max-width:440px;margin-top:26px;color:#fffffff2;text-shadow:0 1px 12px #0005;text-wrap:pretty}
.hero-actions{display:flex;align-items:center;gap:30px;margin-top:30px;flex-wrap:wrap}
.hero-content .hero-actions .button{margin:0;min-height:53px;padding:15px 24px;font-size:14px;gap:26px}
.hero-secondary{display:inline-flex;align-items:center;gap:14px;font:500 14px/1.6 Roboto,sans-serif;color:#fff;border-bottom:1px solid #ffffff70;padding:9px 0 8px;transition:border-color .2s}
.hero-secondary:hover{border-color:#fff}
.hero-secondary>svg{transition:transform .2s;flex-shrink:0}
.hero-secondary:hover>svg{transform:translateX(4px)}
.hero-bottom{bottom:80px;font-family:Roboto,sans-serif}
.hero-location{font-size:12px;letter-spacing:.03em}
.slide-dots button{height:30px;background:none;position:relative}.slide-dots button:after{content:'';position:absolute;left:0;right:0;height:2px;top:14px;background:#ffffff70}.slide-dots button.active{background:none}.slide-dots button.active:after{background:#fff}
.slide-controls{gap:11px}
.intro-grid h2,.section-heading h2{font-family:var(--editorial);font-weight:500;font-size:clamp(42px,4.1vw,59px);letter-spacing:-.025em;line-height:1.08}
.section-heading p,.intro-copy p{font-size:15px;line-height:1.9}
.feature-row h3{font-weight:500;font-size:15px}
.feature-row p{font-size:13px}
.safari-card h3{font-weight:500;font-size:23px;line-height:1.4;letter-spacing:-.03em}
.safari-card-content>p{font-size:14px}
.destination-card h3,.home-destinations .destination-card:first-child h3{font-family:var(--editorial);font-size:41px;font-weight:500;letter-spacing:-.015em;line-height:1.08}
.experience-copy h2{font-family:var(--editorial);font-weight:500;font-size:clamp(43px,4.1vw,60px);line-height:1.1;letter-spacing:-.02em}
.experience-copy>p{font-size:15px}
.reviews-layout h2{font-size:49px;line-height:1.1}
.review blockquote{font-family:var(--editorial);font-size:34px;font-weight:400;line-height:1.45;letter-spacing:-.01em}
.article-card h3{font-weight:500;font-size:23px;line-height:1.4;letter-spacing:-.025em}
.closing-cta h2{font-family:var(--editorial);font-weight:500;font-size:clamp(48px,5vw,72px);line-height:1.08}
.page-hero h1{font-family:var(--editorial);font-size:clamp(54px,5.2vw,78px);font-weight:500;letter-spacing:-.03em;line-height:1.06;max-width:1080px}
.page-hero-content{padding-top:235px}
.page-hero p{font-size:15px;line-height:1.85}
.journey-section h2,.about-grid h2,.contact-layout h2,.experience-card h2{font-family:var(--editorial);font-weight:500;font-size:44px;line-height:1.1}
.journey-nav{top:129px}
.price-panel,.booking-aside,.guide-sidebar-inner{top:155px}
.guide-block h2{font:500 36px/1.12 var(--editorial);letter-spacing:-.02em}
.booking-aside h2{font:500 35px/1.12 var(--editorial)}
.booking-form-panel legend,.contact-form-panel h2{font:500 43px/1.12 var(--editorial);letter-spacing:-.02em}
.starting-grid h3{font-family:var(--editorial);font-size:34px;font-weight:500;line-height:1.1}
.footer-help-strip .eyebrow{font:500 32px/1.1 var(--editorial);text-transform:none;letter-spacing:-.015em}
.footer-column h3{font-weight:500;letter-spacing:.025em}
.drawer-intro h2{font:500 35px/1.1 var(--editorial);letter-spacing:-.02em}
.mobile-menu-heading>a,.drawer-home,.drawer-extra{font-weight:500}
@media(min-width:1340px) and (max-width:1450px){.nav-shell{gap:20px}.desktop-nav{gap:12px}.nav-link{font-size:14px}.site-header .brand-full{width:220px}.nav-cta{padding:13px 16px;gap:13px}}
@media(max-width:1339px){.topbar{padding:0 35px}.nav-shell{height:106px}.hero-content .hero-title{font-size:clamp(78px,8.5vw,104px);max-width:950px}.site-header.is-scrolled .nav-shell{height:90px}.site-header.is-scrolled .brand-full{width:218px}}
@media(max-width:1020px){.topbar-contact>a:first-child{display:none}.topbar{gap:24px}.hero-content .hero-title{font-size:clamp(71px,9vw,91px)}.hero-content{padding-top:250px}.intro-grid h2,.section-heading h2{font-size:46px}.destination-card h3{font-size:36px}.experience-copy h2{font-size:44px}.reviews-layout h2{font-size:42px}.journey-section h2{font-size:37px}.safari-card h3{font-size:20px}.booking-aside h2{font-size:31px}.booking-form-panel legend{font-size:36px}.page-hero h1{font-size:64px}}
@media(max-width:760px){
 html{scroll-padding-top:125px}.topline-desktop{display:none}.topline-mobile{display:inline}.topbar,.site-header.is-scrolled .topbar{height:36px;padding:0 20px;gap:15px;font-size:10px;letter-spacing:0}.topbar>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-contact{display:none}.language-trigger{padding-left:14px;min-width:111px;font-size:12px;gap:7px}.language-trigger>svg:first-child{width:14px}.language-menu{width:197px;top:calc(100% + 7px)}.topbar .language-option{font-size:14px;padding:12px 10px;gap:11px}.topbar .language-option>svg{width:17px}.nav-shell{height:94px;padding:0 20px;gap:15px}.site-header .brand-full{width:218px;max-width:61vw}.site-header.is-scrolled .nav-shell{height:79px}.site-header.is-scrolled .brand-full{width:190px}.menu-toggle>svg{width:27px;height:27px}.nav-actions{gap:8px}
 .home-hero{height:100svh;min-height:800px;max-height:none}.hero-content{padding-top:clamp(200px,25svh,270px)}.hero-content .eyebrow{font-size:10px;letter-spacing:.18em;margin-bottom:22px}.hero-content .hero-title{font-size:clamp(47px,12.2vw,78px);line-height:1.02;font-weight:400;letter-spacing:-.03em;max-width:100%}.hero-accent{letter-spacing:-.035em;margin-top:2px}.hero-content p{font-size:14px;line-height:1.9;max-width:330px;margin-top:23px}.hero-actions{align-items:flex-start;flex-direction:column;gap:14px;margin-top:26px}.hero-content .hero-actions .button{font-size:14px;padding:15px 22px;min-height:51px;gap:24px}.hero-secondary{font-size:13px;padding:6px 0 5px}.hero-bottom{bottom:88px;gap:14px}.hero-location{font-size:10px;max-width:43%;line-height:1.7}.slide-controls{font-size:11px;gap:6px}.slide-controls>button{min-height:36px;min-width:29px;justify-content:center}.slide-controls [data-pause]{display:flex}.slide-controls .slide-total{display:none}.slide-dots button{width:12px;height:36px}.slide-dots button:after{top:17px}.slide-dots{gap:4px}.hero-bottom .scroll-prompt{display:none}
 .intro-grid h2,.section-heading h2{font-size:42px;line-height:1.09}.intro-copy p,.section-heading p{font-size:15px}.feature-row h3{font-size:14px}.safari-card h3{font-size:23px}.destination-card h3{font-size:32px}.home-destinations .destination-card:first-child h3{font-size:43px}.experience-copy h2{font-size:43px;line-height:1.1}.reviews-layout h2{font-size:42px;line-height:1.1}.review blockquote{font-size:31px;line-height:1.5}.article-card h3{font-size:23px;line-height:1.4}.closing-cta h2{font-size:47px;line-height:1.1}.page-hero h1{font-size:51px;line-height:1.05}.page-hero-content{padding-top:215px}.page-hero p{font-size:14px}.page-hero{height:650px;min-height:620px}.journey-section h2,.about-grid h2,.contact-layout h2,.experience-card h2{font-size:39px}.guide-block h2{font-size:33px}.booking-form-panel legend,.contact-form-panel h2{font-size:36px}.journey-nav{top:115px}.price-panel,.booking-aside{position:static}.starting-grid h3{font-size:33px}.footer-help-strip .eyebrow{font-size:30px}.drawer-intro h2{font-size:33px}
}
@media(max-width:380px){.topbar,.site-header.is-scrolled .topbar{padding:0 16px;gap:8px}.topbar>span{font-size:9px}.language-trigger{min-width:103px;padding-left:11px;gap:6px}.nav-shell{padding:0 16px}.hero-content{padding-top:195px}.hero-content .hero-title{font-size:clamp(42px,12.2vw,47px)}.hero-content p{font-size:14px}.hero-content .eyebrow{font-size:9px}.slide-controls{gap:3px}.slide-controls>button{min-width:26px}.hero-location{font-size:9px}.slide-dots button{width:10px}.home-hero{min-height:790px}}
@media(prefers-reduced-motion:reduce){.language-trigger>svg,.hero-secondary>svg{transition:none}}
