:root{--th-navy:#0D1B2A;--th-slate:#3A4A5A;--th-ivory:#FBF7F1;--th-sand:#BDAF9A;--th-coffee:#6B3E26;--th-display:"Cormorant Garamond",Georgia,serif;--th-sans:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body.th-page{margin:0;background:var(--th-ivory);color:var(--th-navy);font-family:var(--th-sans);overflow-x:hidden}.th-page img{display:block;max-width:100%}.th-page a{color:inherit}.th-wrap{width:min(1180px,calc(100% - 56px));margin:0 auto}.th-kicker{margin:0;color:var(--th-sand);font:700 10px/1.3 var(--th-sans);letter-spacing:.18em;text-transform:uppercase}.th-kicker:before{display:inline-block;width:30px;height:1px;margin:0 11px 3px 0;background:currentColor;content:""}.th-kicker--dark{color:var(--th-coffee)}.th-page h1,.th-page h2,.th-page h3{margin:0;font-family:var(--th-display);font-weight:500;letter-spacing:-.04em}.th-page h2{font-size:clamp(52px,5.5vw,84px);line-height:.93}.th-page h2 em,.th-page h1 em{font-style:italic;font-weight:500}.th-button{display:inline-flex;align-items:center;justify-content:center;gap:11px;min-height:50px;padding:0 21px;border:1px solid transparent;font:700 10px/1 var(--th-sans);letter-spacing:.13em;text-decoration:none;text-transform:uppercase;transition:.22s}.th-button--light{background:var(--th-ivory);color:var(--th-navy)}.th-button--light:hover{background:var(--th-sand);color:var(--th-navy)}.th-button--ghost{border-color:rgba(251,247,241,.8);color:var(--th-ivory)}.th-button--ghost:hover{border-color:var(--th-sand);background:var(--th-sand);color:var(--th-navy)}.th-button--sand{background:var(--th-sand);color:var(--th-navy)}.th-button--sand:hover{background:var(--th-ivory)}.th-actions{display:flex;flex-wrap:wrap;gap:12px}.th-arrow{display:inline-flex;align-items:center;gap:10px;border-bottom:1px solid var(--th-sand);padding-bottom:7px;color:var(--th-navy);font-size:10px;font-weight:700;letter-spacing:.11em;text-decoration:none;text-transform:uppercase}.th-arrow--light{color:var(--th-ivory)}
.th-hero{position:relative;min-height:clamp(680px,82vh,870px);overflow:hidden;background:var(--th-navy);color:var(--th-ivory)}.th-slides,.th-slide{position:absolute;inset:0}.th-slide{z-index:0;display:grid;align-items:end;visibility:hidden;opacity:0;transition:opacity .8s ease,visibility .8s ease}.th-slide.is-active{z-index:1;visibility:visible;opacity:1}.th-slide>img,.th-slide__shade{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover}.th-slide__shade{z-index:-1;background:linear-gradient(90deg,rgba(13,27,42,.93),rgba(13,27,42,.63) 48%,rgba(13,27,42,.12)),linear-gradient(0deg,rgba(13,27,42,.74),transparent 58%)}.th-hero__content{padding:185px 0 150px}.th-hero h1,.th-hero h2{max-width:850px;color:var(--th-ivory);font-size:clamp(70px,8.4vw,128px);line-height:.81}.th-hero h1 em,.th-hero h2 em{display:block;margin-top:17px;color:var(--th-sand);font-size:.5em;letter-spacing:-.02em;line-height:1}.th-hero__content>p:not(.th-kicker){max-width:550px;margin:27px 0 31px;color:rgba(251,247,241,.9);font-size:17px;line-height:1.75}.th-hero__footer{position:absolute;right:0;bottom:0;left:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:35px;padding:18px max(28px,calc((100% - 1180px)/2));border-top:1px solid rgba(251,247,241,.24)}.th-hero__promise{display:flex;gap:27px;color:rgba(251,247,241,.88);font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.th-hero__promise span+span:before{margin-right:27px;color:var(--th-sand);content:"✦"}.th-slider{display:flex;align-items:center;gap:11px;color:var(--th-ivory);font-size:10px;font-weight:700;letter-spacing:.11em}.th-slider strong{color:var(--th-sand);font-size:16px}.th-slider button{display:grid;width:34px;height:34px;border:1px solid rgba(251,247,241,.75);background:transparent;color:var(--th-ivory);cursor:pointer;place-items:center}.th-slider button:hover{background:var(--th-sand);border-color:var(--th-sand);color:var(--th-navy)}.th-slider__dots{display:flex;gap:6px}.th-slider .th-slider__dots button{width:18px;height:2px;padding:0;border:0;background:rgba(251,247,241,.4)}.th-slider .th-slider__dots button.is-active{background:var(--th-sand)}
.th-intro{padding:145px 0}.th-intro__grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:clamp(58px,10vw,150px);align-items:center}.th-intro__image{position:relative}.th-intro__image:after{position:absolute;top:27px;right:-27px;bottom:-27px;left:27px;z-index:0;border:1px solid var(--th-sand);content:""}.th-intro__image img{position:relative;z-index:1;width:100%;height:620px;object-fit:cover}.th-intro__content h2{margin:21px 0 25px;color:var(--th-navy)}.th-intro__content h2 em{color:var(--th-coffee)}.th-intro__content p:not(.th-kicker){max-width:560px;margin:0 0 19px;color:#42505e;font-size:16px;line-height:1.85}.th-intro__content .th-arrow{margin-top:8px}
.th-principles{padding:112px 0;background:var(--th-sand)}.th-principles .th-kicker{color:var(--th-coffee)}.th-principles__grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(58px,11vw,170px);align-items:start;margin-top:23px}.th-principles h2{font-size:clamp(52px,5vw,78px);color:var(--th-navy)}.th-principles h2 em{color:var(--th-coffee)}.th-principles__list{border-top:1px solid rgba(13,27,42,.36)}.th-principles article{display:grid;grid-template-columns:50px 1fr;gap:18px;padding:21px 0;border-bottom:1px solid rgba(13,27,42,.36)}.th-principles article>b{color:var(--th-coffee);font:500 24px/1 var(--th-display)}.th-principles h3{font-size:25px;line-height:1.05}.th-principles p{margin:8px 0 0;color:#364554;font-size:14px;line-height:1.65}
.th-places{padding:145px 0;background:#fff}.th-heading{display:flex;align-items:end;justify-content:space-between;gap:55px;margin-bottom:45px}.th-heading>div{max-width:750px}.th-heading h2{margin-top:20px;color:var(--th-navy)}.th-heading h2 em{color:var(--th-coffee)}.th-heading>p{max-width:380px;margin:0;color:#475462;font-size:15px;line-height:1.8}.th-place-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.th-place{position:relative;display:flex;min-height:515px;align-items:end;overflow:hidden;background:var(--th-slate);color:var(--th-ivory);text-decoration:none}.th-place:after{position:absolute;inset:0;background:linear-gradient(0deg,rgba(13,27,42,.94),rgba(13,27,42,.05) 74%);content:""}.th-place img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s}.th-place:hover img{transform:scale(1.06)}.th-place div{position:relative;z-index:1;padding:31px}.th-place span,.th-route span{display:block;color:var(--th-sand);font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.th-place h3{margin:12px 0 22px;font-size:33px;line-height:.98}.th-place b,.th-route b{display:flex;justify-content:space-between;color:var(--th-ivory);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.th-place b i,.th-route b i{color:var(--th-sand)}
.th-routes{padding:140px 0;background:var(--th-navy);color:var(--th-ivory)}.th-heading--light h2{color:var(--th-ivory)}.th-heading--light h2 em{color:var(--th-sand)}.th-route-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.th-route{display:flex;flex-direction:column;overflow:hidden;background:var(--th-ivory);color:var(--th-navy);text-decoration:none}.th-route>img{width:100%;height:258px;object-fit:cover;transition:transform .4s}.th-route:hover>img{transform:scale(1.04)}.th-route>div{display:flex;flex:1;flex-direction:column;padding:27px}.th-route h3{margin:13px 0 11px;font-size:31px;line-height:1}.th-route p{margin:0;color:#4b5865;font-size:14px;line-height:1.7}.th-route b{margin-top:auto;padding-top:24px;border-top:1px solid var(--th-sand);color:var(--th-coffee)}
.th-stay{display:grid;grid-template-columns:1.08fr .92fr;min-height:670px;background:var(--th-slate);color:var(--th-ivory)}.th-stay__image img{width:100%;height:100%;min-height:670px;object-fit:cover}.th-stay__copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(52px,7vw,120px)}.th-stay h2{margin:20px 0;color:var(--th-ivory)}.th-stay h2 em{color:var(--th-sand)}.th-stay p:not(.th-kicker){max-width:450px;margin:0 0 30px;color:rgba(251,247,241,.85);font-size:16px;line-height:1.8}
.th-planning{padding:130px 0;background:var(--th-ivory)}.th-planning__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(60px,12vw,190px)}.th-planning h2{margin-top:20px;color:var(--th-navy)}.th-planning h2 em{color:var(--th-coffee)}.th-planning__grid>div:last-child{padding-top:32px;border-top:1px solid var(--th-sand)}.th-planning p:not(.th-kicker){margin:0;color:#465360;font-size:16px;line-height:1.85}.th-planning ul{display:grid;gap:12px;margin:25px 0 27px;padding:0;list-style:none}.th-planning li{color:var(--th-navy);font-size:13px}.th-planning li:before{margin-right:11px;color:var(--th-coffee);content:"✦"}
.th-faq{padding:140px 0;background:#fff}.th-faq__grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(56px,11vw,170px)}.th-faq header h2{margin:20px 0;color:var(--th-navy)}.th-faq header h2 em{color:var(--th-coffee)}.th-faq header>p:not(.th-kicker){max-width:405px;margin:22px 0 26px;color:#465360;font-size:15px;line-height:1.8}.th-faq__list{border-top:1px solid var(--th-sand)}.th-faq details{border-bottom:1px solid var(--th-sand)}.th-faq summary{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 0;color:var(--th-navy);cursor:pointer;font-family:var(--th-display);font-size:27px;font-weight:600;line-height:1.08;list-style:none}.th-faq summary::-webkit-details-marker{display:none}.th-faq summary i{flex:0 0 auto;color:var(--th-coffee);font-size:13px;transition:.2s}.th-faq details[open] summary i{transform:rotate(45deg)}.th-faq details p{max-width:810px;margin:0;padding:0 0 25px;color:#465360;font-size:14px;line-height:1.86}.th-faq details a{color:var(--th-coffee);font-weight:700;text-decoration-color:var(--th-sand);text-underline-offset:4px}
.th-final{position:relative;padding:145px 0;isolation:isolate;overflow:hidden;background:linear-gradient(105deg,rgba(13,27,42,.82),rgba(13,27,42,.59) 58%,rgba(13,27,42,.38)),url('/images/1754565384805lemala-mpingo-ridge-safari--1-.jpg') center/cover no-repeat;color:var(--th-ivory);text-align:center}.th-final:before{position:absolute;z-index:-1;inset:0;background:linear-gradient(0deg,rgba(13,27,42,.47),transparent 66%);content:""}.th-final .th-kicker{justify-content:center}.th-final h2{margin:20px auto;color:var(--th-ivory)}.th-final h2 em{color:var(--th-sand)}.th-final p:not(.th-kicker){max-width:560px;margin:0 auto 30px;color:rgba(251,247,241,.92);font-size:16px;line-height:1.8}.th-final .th-actions{justify-content:center}
@media(max-width:900px){.th-intro__grid,.th-principles__grid,.th-planning__grid,.th-faq__grid{grid-template-columns:1fr;gap:42px}.th-intro__image{max-width:640px}.th-heading{display:block}.th-heading>p{margin-top:24px}.th-place-grid,.th-route-grid{grid-template-columns:1fr}.th-place{min-height:400px}.th-route>img{height:310px}.th-stay{grid-template-columns:1fr}.th-stay__image img{min-height:430px}.th-stay__copy{min-height:510px}.th-hero__promise{display:none}.th-hero__footer{justify-content:flex-end}}@media(max-width:620px){.th-wrap{width:calc(100% - 34px)}.th-hero{min-height:690px}.th-slide__shade{background:linear-gradient(0deg,rgba(13,27,42,.95),rgba(13,27,42,.25) 82%)}.th-hero__content{padding:155px 0 110px}.th-hero h1,.th-hero h2{font-size:clamp(60px,16vw,84px)}.th-hero__content>p:not(.th-kicker){font-size:15px}.th-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%}.th-button{width:auto;min-height:44px;padding:0 8px;font-size:8px;letter-spacing:.09em;white-space:nowrap}.th-slider>span{display:none}.th-slider{gap:8px}.th-intro,.th-places,.th-routes,.th-faq{padding:80px 0}.th-intro__image img{height:430px}.th-intro__image:after{top:18px;right:-18px;bottom:-18px;left:18px}.th-page h2{font-size:53px}.th-principles,.th-planning{padding:80px 0}.th-place{min-height:365px}.th-route>img{height:245px}.th-stay__image img{min-height:355px}.th-stay__copy{min-height:0;padding:75px 28px}.th-faq summary{font-size:25px}.th-final{padding:95px 0}.th-final h2{font-size:55px}}@media(max-width:360px){.th-button{font-size:7px;letter-spacing:.06em}}

body.th-page .th-button--light{color:var(--th-navy)}
body.th-page .th-button--light:hover{color:var(--th-navy)}
body.th-page .th-button--sand{color:var(--th-navy)}
body.th-page .th-place{color:var(--th-ivory)}
body.th-page .th-route{color:var(--th-navy)}

/* Protect the home page's hero, card and section hierarchy from generic
   shared type rules that are loaded after this page stylesheet. */
body.th-page main .th-hero h1,body.th-page main .th-hero h2{max-width:850px!important;font-size:clamp(70px,8.4vw,128px)!important;line-height:.81!important}body.th-page main .th-intro h2,body.th-page main .th-principles h2,body.th-page main .th-heading h2,body.th-page main .th-stay h2,body.th-page main .th-planning h2,body.th-page main .th-faq h2,body.th-page main .th-final h2{font-size:clamp(52px,5.5vw,84px)!important;line-height:.93!important}
@media(min-width:621px){.th-intro,.th-places,.th-routes,.th-planning,.th-faq{padding:96px 0}.th-principles{padding:88px 0}.th-final{padding:110px 0}.th-heading{margin-bottom:34px}.th-stay{min-height:590px}.th-stay__image img{min-height:590px}.th-stay__copy{padding-block:80px}}@media(max-width:620px){body.th-page main .th-hero h1,body.th-page main .th-hero h2{font-size:clamp(60px,16vw,84px)!important}body.th-page main .th-intro h2,body.th-page main .th-principles h2,body.th-page main .th-heading h2,body.th-page main .th-stay h2,body.th-page main .th-planning h2,body.th-page main .th-faq h2,body.th-page main .th-final h2{font-size:53px!important}.th-intro,.th-places,.th-routes,.th-planning,.th-faq{padding:68px 0}.th-principles{padding:68px 0}.th-final{padding:78px 0}}
