.story-hero{background:#14291f;color:#fff;position:relative;min-height:520px;display:flex;align-items:center;isolation:isolate;overflow:hidden;padding:155px 0 90px}.story-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.story-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#102b21e8,#102b2140);z-index:-1}.story-hero .container{position:relative}.story-hero h1{font:400 clamp(42px,5vw,72px)/1.07 "Playfair Display",Georgia,serif;max-width:760px;color:#fff;margin:18px 0 24px}.story-hero p{max-width:590px;color:#f0f0e6;font-size:17px;line-height:1.8}.story-eyebrow{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#bd570c;font-weight:600}.story-hero .story-eyebrow{color:#ffbd86}.story-section{padding:85px 0;scroll-margin-top:90px}.story-cream{background:#f4f0e7}.story-green{background:#173a2b;color:#f1f3e9}.story-green h2,.story-green h3{color:white}.story-section h2{font:400 clamp(32px,3.6vw,48px)/1.15 "Playfair Display",Georgia,serif;color:#173a2b;margin:14px 0 24px}.story-green h2{color:white}.story-section h3{font:400 25px/1.2 "Playfair Display",Georgia,serif;color:#173a2b}.story-section p{line-height:1.85}.story-split{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.story-split>div{min-width:0}.story-photo{width:100%;height:450px;object-fit:cover;border-radius:6px}.story-photo.portrait{height:520px}.story-photo-caption{font-size:11px;color:#768174;margin-top:10px}.story-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.story-card{background:#fff;border:1px solid #e3e5db;border-radius:10px;overflow:hidden;min-width:0}.story-card>img{width:100%;height:225px;object-fit:cover}.story-card-body{padding:27px}.story-card p{font-size:14px;color:#647267}.story-card .story-eyebrow{display:block;margin-bottom:12px}.story-card h3{margin-bottom:16px}.story-card a{font-weight:600;font-size:13px}.story-link{display:inline-block;font-weight:600;border-bottom:2px solid #bd570c;padding:8px 0;color:#173a2b}.story-hero .story-link{color:white}.story-pills{display:flex;gap:10px;flex-wrap:wrap;margin:25px 0}.story-pills span{padding:8px 12px;font-size:12px;border:1px solid #b6c6b74d;border-radius:20px}.story-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;padding:32px 0}.story-stat-grid strong{display:block;font:400 35px Georgia,serif;color:#bd570c}.story-stat-grid span{font-size:13px;color:#5f7264}.story-note{padding:18px 22px;background:#eaf0e5;border-left:3px solid #bd570c;color:#334e3c;font-size:13px;line-height:1.7;border-radius:0 6px 6px 0}.story-list{padding-left:20px;line-height:1.9}.story-list li{margin-bottom:9px}.story-offer{background:#173a2b;color:white;border-radius:12px;padding:35px;position:relative;overflow:hidden}.story-offer h3{color:white;font-size:32px}.story-offer p{color:#e1e8dc}.story-offer strong{font:400 48px Georgia,serif;display:block;margin:10px 0}.story-offer .btn{margin-top:12px}.story-two{display:grid;grid-template-columns:1fr 1fr;gap:26px}.story-faq details,.itinerary{padding:22px 0;border-bottom:1px solid #d9dfd2}.story-faq summary,.itinerary>summary{cursor:pointer;color:#173a2b;font-weight:600;font-size:16px}.story-faq details p{margin:16px 0 0}.itinerary>summary{font:400 28px Georgia,serif;line-height:1.4}.itinerary-days{list-style:none;padding:25px 0 0;counter-reset:days}.itinerary-days li{position:relative;padding:0 0 24px 58px;font-size:14px;line-height:1.8}.itinerary-days li:before{counter-increment:days;content:counter(days,decimal-leading-zero);position:absolute;left:0;top:0;color:#bd570c;font:400 28px Georgia,serif}.itinerary-days li strong{display:block;color:#173a2b;font-size:15px}.destination-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 35px}.destination{padding:24px 0;border-bottom:1px solid #d9dfd2}.destination h3{font-size:25px}.destination p{font-size:14px;margin-bottom:8px}.destination span{font-size:10px;letter-spacing:.1em;color:#965023;text-transform:uppercase}.destination figure{margin:15px 0}.destination img{width:100%;height:240px;object-fit:cover;border-radius:5px}.story-cta{text-align:center;max-width:760px;margin:auto}.story-nav .menu li a{font-size:clamp(20px,3.5vh,30px);line-height:1.25}.story-nav .menu li{margin-bottom:10px}.story-menu-columns{display:grid;grid-template-columns:1fr 1fr;gap:10px 50px;width:100%}.story-footer{background:#173a2b;color:#d7e0d3;padding:65px 0 30px}.story-footer h3{color:#fff;font:400 25px Georgia,serif}.story-footer a{color:#f3e5d5}.story-footer .story-footer-grid{display:grid;grid-template-columns:1.1fr 1fr 1.3fr;gap:38px}.story-footer p,.story-footer li{font-size:13px;line-height:1.9}.story-footer ul{list-style:none;padding:0}.story-footer small{display:block;border-top:1px solid #ffffff26;margin-top:30px;padding-top:24px;color:#c8d1c3;font-size:11px}.story-footer a:focus-visible,.story-section a:focus-visible,.story-faq summary:focus-visible,.itinerary summary:focus-visible{outline:3px solid #bd570c;outline-offset:4px}.story-hero .btn+.story-link{margin-left:22px}.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.contact-card{padding:24px;border:1px solid #d8dfd4;border-radius:8px;background:#fff}.contact-card a{overflow-wrap:anywhere}.contact-card h3{font-size:22px}.content-page .site-header{position:fixed}.content-page .site-navbar{overflow-y:auto}.content-page .full-height{min-height:600px}.content-page .menu{margin-bottom:0}.content-page .menu-open{overflow:hidden}.dining-image{width:100%;max-height:470px;object-fit:cover;border-radius:6px}.home-update-strip{padding:40px 0;background:#f4f0e7}.home-update-strip .story-split{gap:35px}.home-update-strip h2{font:400 30px Georgia,serif;color:#173a2b;margin:0 0 8px}.home-update-strip p{margin:0;font-size:14px}.home-update-strip a{margin-top:12px}.compact-highlights{display:flex;gap:18px;flex-wrap:wrap;font-size:12px;color:#4c6453;margin:22px 0}.compact-highlights span{border-bottom:1px solid #c4cfc0;padding-bottom:8px}.story-section .room-eyebrow{margin-bottom:12px;display:block}.content-menu-toggle-label{position:absolute;right:60px;top:6px;font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:white}.scrolled .content-menu-toggle-label,.menu-open .content-menu-toggle-label{color:#173a2b}.story-credit{font-size:10px;color:#758274}.story-section details[open] summary{margin-bottom:12px}.story-header-intro{max-width:760px;margin:0 auto 42px;text-align:center}.story-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.story-photo-grid img{width:100%;height:225px;object-fit:cover;border-radius:6px}.story-photo-grid img:first-child{grid-column:1/-1;height:300px}
@media(max-width:991px){.story-split{gap:35px}.story-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.story-photo{height:360px}.story-footer .story-footer-grid{gap:24px}.story-menu-columns{gap:8px 24px}.story-nav .menu li a{font-size:25px}}
@media(max-width:767px){.story-section{padding:60px 0}.story-split,.story-two,.story-footer .story-footer-grid,.contact-cards{grid-template-columns:1fr;gap:28px}.story-cards,.destination-grid{grid-template-columns:1fr}.story-hero{min-height:500px;padding:145px 0 65px}.story-hero h1{font-size:43px}.story-hero p{font-size:15px}.story-stat-grid{grid-template-columns:1fr 1fr;gap:25px}.story-photo,.story-photo.portrait{height:340px}.story-offer{padding:27px}.story-menu-columns{grid-template-columns:1fr;gap:0}.story-nav .menu li a{font-size:23px}.story-nav .menu li{margin-bottom:8px}.story-footer{padding-top:50px}.story-hero .btn+.story-link{margin-left:12px}.story-hero .story-link{font-size:12px}.story-photo-grid img{height:170px}.story-photo-grid img:first-child{height:230px}}

.story-nav .menu a[aria-current="page"]{color:#bd570c}.content-page .story-hero .story-link{margin-top:12px}

/* Shared floating contact button. */
#lodge-chat{position:fixed;right:max(22px,env(safe-area-inset-right));bottom:calc(22px + env(safe-area-inset-bottom));z-index:1100;font-family:Roboto,Arial,sans-serif}
.lodge-chat-toggle{width:60px;height:60px;border-radius:50%;border:2px solid #fff;background:#bd570c;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 5px 24px #102b2145;margin-left:auto;transition:background .2s,transform .2s}
.lodge-chat-toggle:hover{background:#984308;transform:translateY(-2px)}
.lodge-chat-panel{position:absolute;right:0;bottom:76px;width:330px;max-width:calc(100vw - 32px);padding:30px 25px 24px;border-radius:16px;background:#fffdf8;color:#35513f;box-shadow:0 12px 48px #102b2140;border:1px solid #e1e6d9;text-align:left}
.lodge-chat-panel[hidden]{display:none!important}.lodge-chat-panel h2{font:400 29px/1.2 Georgia,serif;color:#173a2b;margin:12px 0}.lodge-chat-panel p{font-size:14px;line-height:1.7;margin:0 0 20px}.lodge-chat-eyebrow{font-size:9px;letter-spacing:.14em;color:#984308;font-weight:700}.lodge-chat-close{position:absolute;right:10px;top:6px;border:0;background:transparent;color:#173a2b;font-size:27px;width:36px;height:36px;cursor:pointer}.lodge-chat-call{display:block;padding:12px 8px;border-radius:7px;background:#173a2b;color:white!important;font-size:14px;text-align:center;font-weight:600}.lodge-chat-details{display:block;margin-top:14px;color:#984308;font-size:12px;text-align:center}
#lodge-chat button:focus-visible,#lodge-chat a:focus-visible{outline:3px solid #e09b49;outline-offset:4px}
body.menu-open #lodge-chat{visibility:hidden}
@media(max-width:767px){#lodge-chat{right:16px;bottom:calc(16px + env(safe-area-inset-bottom))}.lodge-chat-toggle{width:56px;height:56px}.lodge-chat-panel{bottom:70px}}
@media(prefers-reduced-motion:reduce){.lodge-chat-toggle{transition:none}}

/* Compact navigation card shared by every page. */
.site-navbar.story-nav,.menu-open .site-navbar.story-nav{inset:auto;top:94px;right:clamp(20px,4vw,64px);bottom:auto;left:auto;width:360px;max-width:calc(100vw - 32px);min-height:0;max-height:calc(100dvh - 120px);overflow-y:auto;overscroll-behavior:contain;border:1px solid #dce4d4;border-top:3px solid #bd570c;border-radius:16px;background:#fffdf8;box-shadow:0 18px 60px #102b2138;padding:18px;z-index:150}
.site-navbar.story-nav nav:before{content:"EXPLORE NGOGO";display:block;color:#985021;font:600 10px/1.4 Roboto,Arial,sans-serif;letter-spacing:.18em;padding:7px 12px 15px;border-bottom:1px solid #e3e8dc;margin-bottom:9px}
.site-navbar.story-nav .container{width:100%;max-width:none;padding:0}.site-navbar.story-nav .row{margin:0}.site-navbar.story-nav .full-height{height:auto!important;min-height:0!important}.site-navbar.story-nav .col-md-10{flex:0 0 100%;max-width:100%;padding:0}.site-navbar.story-nav .story-menu-columns{display:block;margin:0;padding:0;width:100%}
.site-navbar.story-nav .menu li{margin:0;list-style:none}.site-navbar.story-nav .menu li a{display:block;font:400 16px/1.35 Roboto,Arial,sans-serif;color:#173a2b;padding:10px 13px;border-radius:8px;transition:background .18s,color .18s;letter-spacing:0}
.site-navbar.story-nav .menu li a:hover,.site-navbar.story-nav .menu li a:focus-visible{background:#edf1e7;color:#984308;outline-offset:-2px}.site-navbar.story-nav .menu li a:before{display:none}.site-navbar.story-nav .menu li.active a,.site-navbar.story-nav .menu a[aria-current]{background:#f7ecde;color:#984308!important}
body.menu-open #lodge-chat{visibility:visible}.menu-open .site-navbar.story-nav{animation:compact-nav-in .2s ease-out}
@keyframes compact-nav-in{from{opacity:0;translate:0 -9px}to{opacity:1;translate:0 0}}
@media(max-width:767px){.site-navbar.story-nav,.menu-open .site-navbar.story-nav{top:84px;right:16px;width:310px;padding:13px;max-height:calc(100dvh - 104px)}.site-navbar.story-nav .menu li a{font-size:15px;padding:9px 12px}.site-navbar.story-nav nav:before{padding:6px 12px 12px}}
@media(prefers-reduced-motion:reduce){.menu-open .site-navbar.story-nav{animation:none}}

.menu-open .site-header .site-menu-toggle{background:transparent!important;box-shadow:none;border-radius:0;height:30px}

/* Keep the navigation icon clean on touch; preserve keyboard focus visibility. */
.site-header .site-menu-toggle:focus{outline:none;box-shadow:none}
.site-header .site-menu-toggle:focus-visible{outline:2px solid #bd570c;outline-offset:6px;border-radius:50%}
/* A warm welcome on the longer-stay offer. */
.story-offer.stay-welcome{padding-right:185px;min-height:330px;isolation:isolate}
.stay-welcome>span,.stay-welcome>strong,.stay-welcome>p,.stay-welcome>a{position:relative;z-index:1}
.stay-welcome>strong{font-size:42px;line-height:1.15}
.stay-welcome .stay-guest{position:absolute;right:-12px;bottom:0;width:205px;height:265px;object-fit:contain;object-position:center bottom;z-index:0;pointer-events:none}
@media(max-width:991px){.story-offer.stay-welcome{padding:30px 30px 175px;min-height:420px}.stay-welcome .stay-guest{height:190px;width:175px;right:0}.stay-welcome>p{max-width:290px}}
@media(max-width:767px){.story-offer.stay-welcome{padding:27px 27px 150px;min-height:390px}.stay-welcome .stay-guest{height:180px;width:170px;right:0}.stay-welcome>strong{font-size:40px}}

/* Slightly larger portrait on the opening offer. */
.stay-welcome .stay-guest[src*="stay-opening-man"]{width:240px;height:285px;object-fit:cover;object-position:center top;right:-22px}
@media(max-width:991px){.stay-welcome .stay-guest[src*="stay-opening-man"]{width:195px;height:210px;right:-8px}}
@media(max-width:767px){.stay-welcome .stay-guest[src*="stay-opening-man"]{width:185px;height:200px;right:-5px}}
