.page-intro{padding:55px 0 42px}.page-intro h1{font-size:clamp(38px,5.4vw,72px);max-width:900px;line-height:1.07}.page-intro p:not(.eyebrow){max-width:640px;color:var(--muted);font-size:18px;line-height:1.8;margin-top:24px}.page-intro .breadcrumb{margin-bottom:25px;font-size:14px!important}.page-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.page-tabs a{padding:10px 20px;border:1px solid #bccabc;border-radius:25px;font-size:14px}.page-tabs [aria-current=page]{background:var(--forest);color:white;border-color:var(--forest)}.page-banner{height:400px;width:100%;object-fit:cover;border-radius:8px}.page-banner.wide{height:480px}.gallery-toolbar{display:flex;flex-wrap:wrap;gap:10px;padding:28px 0;align-items:center}.gallery-toolbar button{padding:11px 18px;min-height:46px;border:1px solid #b7c5b6;border-radius:25px;background:transparent;font-size:14px}.gallery-toolbar button[aria-pressed=true]{background:var(--forest);color:white}.gallery-toolbar input{margin-left:auto;min-width:0;padding:12px 15px;border:1px solid #b7c5b6;border-radius:5px;background:white;font:inherit;max-width:100%}.gallery-status{font-size:14px;color:var(--muted);margin-bottom:22px}.full-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.gallery-tile{min-width:0;margin:0}.gallery-tile button{position:relative;display:block;width:100%;height:280px;padding:0;background:#e5e9dd;border-radius:6px;overflow:hidden;cursor:zoom-in}.gallery-tile img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.gallery-tile button:hover img{transform:scale(1.04)}.gallery-tile button>span{position:absolute;right:15px;bottom:15px;border-radius:50%;background:#fff;width:36px;height:36px;display:grid;place-items:center}.gallery-tile figcaption{padding:12px 0 0;font-size:14px;display:flex;justify-content:space-between;gap:15px}.gallery-tile figcaption span{color:var(--muted)}.photo-dialog{max-width:min(1100px,94vw)}.gallery-empty{border:1px solid var(--line);padding:30px}.page-cta{margin-top:65px;padding:40px;background:#edf0e6;border-radius:8px;display:flex;align-items:center;justify-content:space-between;gap:30px}.page-cta p{color:var(--muted);margin-top:12px}.page-cta h2{font-size:32px}.page-cta .button{flex-shrink:0}.story-layout{display:grid;grid-template-columns:240px minmax(0,760px);justify-content:space-between;gap:60px}.story-nav{position:sticky;top:115px;align-self:start;display:grid;gap:14px}.story-nav a{font-size:15px;border-bottom:1px solid var(--line);padding:9px 0}.source-copy{font-size:17px;line-height:1.9;min-width:0;overflow-wrap:break-word}.source-copy h2{font-size:34px;margin:42px 0 22px;scroll-margin-top:115px}.source-copy h2:first-child{margin-top:0}.source-copy h3{font-size:23px;margin:28px 0 15px}.source-copy p{color:var(--muted);margin:0 0 24px}.source-copy ul,.source-copy ol{padding-left:24px;margin:20px 0;color:var(--muted)}.source-copy li{margin:10px 0}.source-copy a{color:var(--forest);text-decoration:underline}.story-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;padding:38px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:45px}.story-stats strong{display:block;font-size:38px}.story-stats span{font-size:14px;color:var(--muted)}.faq-layout{display:grid;grid-template-columns:1fr 1.75fr;gap:7%}.faq-side{align-self:start;position:sticky;top:120px;padding:32px;background:#edf0e6;border-radius:8px}.faq-side p{margin:18px 0}.faq-list details{border-bottom:1px solid #c9d3c4;padding:23px 0}.faq-list details:first-child{border-top:1px solid #c9d3c4}.faq-list summary{display:flex;justify-content:space-between;gap:20px;cursor:pointer;font-size:19px;list-style:none;line-height:1.5}.faq-list summary>span:last-child{font-size:23px}.faq-list details p{color:var(--muted);font-size:16px;line-height:1.85;margin-top:20px}.faq-list a{text-decoration:underline}.contact-layout{display:grid;grid-template-columns:1fr 1.4fr;gap:7%;align-items:start}.contact-methods>div{padding:25px 0;border-bottom:1px solid var(--line)}.contact-methods h2{font-size:23px;margin-bottom:12px}.contact-methods a{overflow-wrap:anywhere}.contact-methods p{color:var(--muted)}.enquiry-form{background:#edf0e6;padding:36px;border-radius:8px}.enquiry-form h2{font-size:32px;margin-bottom:15px}.enquiry-form>p{color:var(--muted);margin-bottom:26px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.form-grid label{font-size:14px;display:block}.form-grid input,.form-grid textarea,.form-grid select{display:block;width:100%;min-width:0;border:1px solid #a9bba8;border-radius:4px;background:white;padding:13px;font:inherit;font-size:16px;margin-top:8px;color:var(--ink)}.form-grid .full{grid-column:1/-1}.form-grid textarea{min-height:150px;resize:vertical}.enquiry-form .button{margin-top:23px}.enquiry-form .form-note{font-size:14px;margin-top:15px}.email-preview{margin-top:20px;padding:20px;border:1px solid #b4c4ad;background:white;border-radius:4px}.email-preview pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:15px}.email-preview a{display:inline-flex;margin-top:18px}.empty-video{display:grid;grid-template-columns:1.25fr 1fr;gap:6%;align-items:center;padding:40px;background:#edf0e6;border-radius:8px}.empty-video img{width:100%;height:370px;border-radius:5px;object-fit:cover}.empty-video h2{font-size:35px}.empty-video p{margin:22px 0;color:var(--muted)}.video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.video-grid iframe,.video-grid video{width:100%;aspect-ratio:16/9;border:0;background:#102e24}.seasonal-detail{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:7%;align-items:start}.seasonal-detail .source-copy{max-width:760px}.seasonal-notice{font-size:15px;padding:18px 22px;border-left:3px solid #b28538;background:#f7eedc;margin:24px 0}.directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.directory-card{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:7px;overflow:hidden;background:#fff}.directory-card img{height:220px;width:100%;object-fit:cover}.directory-card>div{padding:24px;display:flex;flex-direction:column;flex:1}.directory-card h2{font-size:27px;line-height:1.2}.directory-card p{font-size:16px;color:var(--muted);margin:20px 0}.directory-card .text-link{margin-top:auto}.preview-directory{border-top:1px solid var(--line);padding:30px 0;display:flex;flex-wrap:wrap;gap:12px 25px;font-size:14px}.preview-directory a{text-decoration:underline}.page-section-label{font-size:14px;color:var(--muted);margin:0 0 18px}.source-copy table{width:100%;border-collapse:collapse}.source-copy td,.source-copy th{border:1px solid var(--line);padding:10px;text-align:left}.site-page [hidden]{display:none!important}
@media(max-width:1100px){.full-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.story-layout{grid-template-columns:180px minmax(0,1fr);gap:40px}.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-layout{gap:4%}.enquiry-form{padding:27px}}
@media(max-width:800px){.page-intro{padding-top:35px}.story-layout,.faq-layout,.contact-layout,.seasonal-detail{grid-template-columns:1fr;gap:35px}.story-nav{position:static;display:flex;flex-wrap:wrap;gap:10px 25px}.faq-side{position:static}.empty-video{grid-template-columns:1fr;gap:30px}.story-stats{grid-template-columns:1fr 1fr}.page-cta{display:block;padding:28px}.page-cta .button{margin-top:25px}.gallery-toolbar input{margin-left:0;width:100%}.seasonal-detail .booking-card{order:0}}
@media(max-width:540px){.page-intro h1{font-size:40px}.page-intro p:not(.eyebrow){font-size:17px}.page-banner,.page-banner.wide{height:280px}.full-gallery,.directory-grid,.video-grid{grid-template-columns:1fr}.gallery-tile button{height:300px}.gallery-toolbar{gap:8px}.gallery-toolbar button{font-size:14px;padding:10px 14px}.source-copy{font-size:16px}.source-copy h2{font-size:29px}.faq-list summary{font-size:17px}.empty-video{padding:22px}.empty-video img{height:260px}.empty-video h2{font-size:29px}.form-grid{grid-template-columns:1fr}.enquiry-form{padding:23px}.story-stats strong{font-size:33px}.page-tabs a{padding:10px 16px}.directory-card img{height:240px}}

@media(min-width:801px){.story-nav{max-height:calc(100dvh - 150px);overflow-y:auto;padding-right:12px}}

.feature-lead{display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:center;padding-top:45px}.feature-lead .page-intro{width:100%;padding:20px 0}.feature-lead h1{font-size:clamp(40px,4.6vw,66px)}.feature-photo{width:100%;aspect-ratio:1;object-fit:cover;border-radius:7px}@media(max-width:800px){.feature-lead{grid-template-columns:1fr;gap:25px;padding-top:20px}.feature-lead h1{font-size:40px}.feature-photo{max-height:540px}}

/* Preserve the complete photograph, including tall wildlife portraits. */
.full-gallery{display:block;columns:3;column-gap:25px}.gallery-tile{break-inside:avoid;margin:0 0 25px}.gallery-tile button{height:auto}.gallery-tile img{height:auto;display:block;object-fit:contain}.gallery-tile button:hover img{transform:none}@media(max-width:1100px){.full-gallery{columns:2}}@media(max-width:540px){.full-gallery{columns:1}}

.source-marks{display:flex;flex-wrap:wrap;justify-content:space-around;gap:24px;padding-bottom:45px}.source-marks img{width:120px;height:65px;object-fit:contain}

.enquiry-form .selected-trip{background:white;border-left:3px solid var(--forest);padding:16px 18px;color:var(--forest);font-size:16px;font-weight:600;line-height:1.7}.enquiry-form{scroll-margin-top:110px}

.gallery-films{padding:15px 0 30px;scroll-margin-top:120px}.gallery-film{margin:0;min-width:0}.gallery-film video{display:block;object-fit:contain;border-radius:7px;background:#102e24}.gallery-film figcaption{font-size:16px;font-weight:600;padding:14px 0}.gallery-films .section-heading{margin-bottom:25px}#photographs{scroll-margin-top:110px}

/* Seasonal packages: clear dates, rates and complete travel details. */
.package-lead{display:grid;grid-template-columns:1.02fr 1fr;gap:6%;align-items:center;padding-top:46px;padding-bottom:48px}.package-intro .breadcrumb{display:inline-block;margin-bottom:35px;font-size:14px}.package-intro h1{font-size:clamp(38px,4.8vw,67px);letter-spacing:-.055em;line-height:1.08;max-width:660px}.package-description{font-size:17px;color:var(--muted);margin:24px 0;max-width:590px}.package-quickfacts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;padding:23px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:26px 0}.package-quickfacts small,.package-stay small{display:block;font-size:12px;color:var(--muted);margin-bottom:8px}.package-quickfacts strong{font-size:14px;line-height:1.6;display:block}.package-photo-lead{align-self:stretch;min-height:470px}.package-photo-lead>button{position:relative;display:block;width:100%;height:100%;padding:0;border-radius:10px;overflow:hidden;background:var(--sand);cursor:zoom-in}.package-photo-lead img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.package-photo-label{position:absolute;bottom:20px;left:20px;right:20px;display:flex;justify-content:space-between;align-items:center;padding:14px 18px;background:#fffdf5f5;border-radius:5px;font-size:14px;font-weight:600}.package-photo-label>span{font-size:22px}.package-nav{display:flex;flex-wrap:wrap;gap:12px 34px;border-bottom:1px solid var(--line);padding:0 0 19px;font-size:15px}.package-nav a:hover{text-decoration:underline;text-underline-offset:8px}.package-layout{display:grid;grid-template-columns:minmax(0,1fr) 345px;gap:38px;align-items:start;padding-top:42px}.package-main{min-width:0}.package-date-panel{background:#eef1e9;border:1px solid #d6dfce;padding:30px;border-radius:8px;scroll-margin-top:120px}.package-date-heading{display:flex;gap:18px;justify-content:space-between;align-items:start}.package-date-heading h2{font-size:32px;line-height:1.2}.package-date-heading .eyebrow{margin-bottom:12px}.availability-tag{display:inline-flex;flex-shrink:0;padding:6px 10px;border:1px solid #acbca3;border-radius:20px;font-size:12px;font-weight:600;white-space:nowrap;background:#f9faf6}.package-offer-status{display:flex;gap:12px;align-items:start;margin:24px 0;font-size:14px;color:#415644}.package-offer-status>span{font-size:24px;line-height:1.2}.package-offer-status p{line-height:1.75}.package-date-request{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:center}.package-date-request label>span{font-size:13px;font-weight:600;display:block;margin-bottom:8px}.package-date-request input[type=date]{width:100%;min-width:0;font:inherit;font-size:16px;color:var(--ink);border:1px solid #9eaf99;border-radius:5px;padding:13px;background:white;min-height:51px}.package-stay{padding-left:20px;border-left:1px solid #c2cfba}.package-stay strong{font-size:21px;font-family:Georgia,serif;font-weight:400}.package-stay strong span{color:#8b9c84;padding:0 4px}.package-date-request .button{grid-column:1/-1;width:100%;font-size:15px}.package-date-hint{margin-top:18px;font-size:13px;color:#4e6350}.package-date-hint a{text-decoration:underline;text-underline-offset:3px}.package-booking{position:sticky;top:115px;border:1px solid var(--line);border-radius:8px;background:white;padding:29px}.package-rate-label{font-size:14px;color:var(--muted);margin-bottom:10px}.package-price{font-size:37px;font-weight:700;letter-spacing:-.05em;line-height:1.2;white-space:nowrap}.package-price>span{font-size:19px;letter-spacing:0;font-weight:400}.package-price-basis{font-size:13px;color:var(--muted);margin-top:13px}.package-booking-divider{border-top:1px solid var(--line);margin:24px 0}.package-booking-status{display:flex;gap:9px;align-items:center;font-size:14px}.availability-dot{width:8px;height:8px;background:#9a7023;border-radius:50%;flex-shrink:0}.package-booking-note{font-size:14px;color:var(--muted);margin:13px 0 23px}.package-booking .button{width:100%;font-size:14px;padding-left:12px;padding-right:12px}.package-help{font-size:13px;margin:22px 0 3px;color:var(--muted)}.package-phone{font-size:19px;font-weight:600;display:block}.package-terms{font-size:12px;display:block;margin-top:22px;text-decoration:underline;text-underline-offset:4px}.package-details{padding-top:48px;scroll-margin-top:100px}.package-details>h2{font-size:36px;margin-bottom:28px}.package-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.package-detail-card{padding:24px;background:white;border:1px solid var(--line);border-radius:7px;min-width:0}.package-detail-card h3{font-size:21px;line-height:1.4;margin-bottom:20px;letter-spacing:-.03em}.package-detail-card ul{list-style:none;margin:0;padding:0}.package-detail-card li{padding:10px 0 10px 20px;border-top:1px solid #e5e9e0;position:relative;font-size:15px;line-height:1.75;color:#455e4d}.package-detail-card li:before{content:'·';position:absolute;left:1px;color:var(--forest);font-size:20px}.package-detail-card.included li:before{content:'✓';font-size:13px;top:13px}.package-detail-card.excluded li:before{content:'−';font-size:17px}.package-detail-card:has(.package-note){grid-column:1/-1}.package-note{font-size:14px;line-height:1.85;color:var(--muted);margin-bottom:16px}.package-photographs{scroll-margin-top:100px}.package-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.package-photo-grid button{position:relative;padding:0;background:var(--sand);border-radius:7px;overflow:hidden;cursor:zoom-in}.package-photo-grid img{width:100%;height:265px;object-fit:cover}.package-photo-grid button>span{position:absolute;bottom:14px;right:14px;display:grid;place-items:center;width:34px;height:34px;background:#fff;border-radius:50%}
@media(max-width:1100px){.package-layout{grid-template-columns:minmax(0,1fr) 305px;gap:25px}.package-date-heading{display:block}.availability-tag{margin-top:18px}.package-date-panel{padding:25px}.package-booking{padding:23px}.package-price{font-size:33px}.package-detail-grid{grid-template-columns:1fr}.package-quickfacts{grid-template-columns:1fr 1fr}.package-photo-lead{min-height:430px}}
@media(max-width:800px){.package-lead{grid-template-columns:1fr;gap:28px;padding-top:28px;padding-bottom:30px}.package-intro h1{max-width:680px}.package-intro .breadcrumb{margin-bottom:24px}.package-photo-lead{min-height:360px}.package-quickfacts{grid-template-columns:repeat(3,minmax(0,1fr))}.package-layout{grid-template-columns:1fr;gap:28px;padding-top:28px}.package-booking{position:static;grid-row:1}.package-booking .eyebrow,.package-booking-divider,.package-help,.package-phone,.package-terms{display:none}.package-booking-note{margin:12px 0 20px}.package-booking-status{margin-top:18px}.package-price{font-size:40px}.package-detail-grid{grid-template-columns:1fr 1fr}.package-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.package-date-heading{display:flex}.availability-tag{margin-top:0}}
@media(max-width:540px){.package-intro h1{font-size:41px}.package-description{font-size:16px}.package-quickfacts{gap:12px}.package-quickfacts strong{font-size:13px}.package-quickfacts small{font-size:11px}.package-photo-lead{min-height:330px}.package-nav{gap:12px 22px;font-size:14px}.package-date-panel{padding:23px}.package-date-heading{display:block}.availability-tag{margin-top:16px}.package-date-heading h2{font-size:31px}.package-date-request{grid-template-columns:1fr;gap:20px}.package-stay{padding:0;border:0}.package-stay small{display:inline;margin-right:15px}.package-stay strong{font-size:20px}.package-detail-grid{grid-template-columns:1fr}.package-details>h2{font-size:32px}.package-photo-grid img{height:190px}.package-photo-grid{gap:12px}.package-price{font-size:37px}}
