@import url('/assets/fonts/fonts.css');
:root{--cream:#f7f5ed;--ink:#253f30;--muted:#5f6a5c;--green:#294e37;--lime:#e7edcd;--line:#d8ddcf;--white:#fffefa;--clay:#ac633e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.65 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button,input,select{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--clay);outline-offset:5px}img{display:block;width:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:500;line-height:1.13}h1{font-size:clamp(42px,5.1vw,76px);letter-spacing:-2px}h2{font-size:clamp(34px,3.7vw,52px);letter-spacing:-1.2px}h3{font-size:27px}p{color:var(--muted)}.wrap{width:min(1240px,calc(100% - 80px));margin:auto}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2.4px;text-transform:uppercase;color:var(--green);margin-bottom:22px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid var(--green);padding:13px 21px;border-radius:4px;background:var(--green);color:white;font-size:13px;font-weight:600;cursor:pointer;text-decoration:none!important}.btn:hover{background:#183a25}.btn.light{background:transparent;color:var(--green)}.btn.light:hover{background:var(--lime)}.btn[disabled]{opacity:.52;cursor:default}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.skip{position:absolute;top:-60px;background:white;padding:12px;z-index:20}.skip:focus{top:0}header{border-bottom:1px solid var(--line);background:var(--cream);position:relative;z-index:5}.nav{height:100px;display:flex;align-items:center;gap:30px}.brand{display:flex;gap:12px;align-items:center;margin-right:auto}.brand-icon{width:39px;height:45px;border:1px solid var(--green);border-radius:50%;display:grid;place-items:center;font:28px Georgia}.brand strong{font-family:Georgia,serif;font-size:24px;font-weight:500;letter-spacing:1px;display:block;line-height:1}.brand small{display:block;font-size:9px;text-transform:uppercase;letter-spacing:1.7px;margin-top:7px}.links{display:flex;gap:23px;font-size:12px}.menu{display:none}.hero{padding:54px 0 60px}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:center}.hero-copy{padding:22px 0}.hero h1 em{font-style:italic;color:#65794a}.hero .intro{max-width:480px;font-size:16px;margin-top:26px}.hero-note{font-size:11px;margin-top:24px;display:flex;gap:18px;flex-wrap:wrap}.hero-media{position:relative;min-height:500px;background:#d8dfc8;border-radius:6px 6px 95px 6px;overflow:hidden}.hero-media img{height:530px}.hero-media figcaption{position:absolute;bottom:0;left:0;right:0;padding:40px 25px 22px;color:white;background:linear-gradient(transparent,#193222d9);font-size:12px}.photo-empty{height:100%;min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#e5e8db;color:#526148;text-align:center;padding:30px}.photo-empty span{font-family:Georgia,serif;font-size:26px}.photo-empty small{max-width:230px;font-size:12px}.hero-media .photo-empty{min-height:530px}.strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0}.strip .wrap{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:12px}.strip b{font-weight:500}.section{padding:86px 0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:36px}.section-heading p{max-width:360px;font-size:14px}.section-heading .eyebrow{margin-bottom:15px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{border:1px solid var(--line);border-radius:6px;overflow:hidden;background:var(--white)}.card-image{height:220px;position:relative}.card-image img{height:220px}.card-image .photo-empty{min-height:220px;height:220px}.card-image .photo-empty span{font-size:21px}.card-body{padding:24px}.card h3{font-size:26px;margin-bottom:13px}.card p{font-size:13px;min-height:66px}.meta{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding-top:18px;margin-top:18px;font-size:12px}.meta strong{font-size:20px}.meta small{font-size:11px}.card .actions{margin-top:18px;gap:9px}.card .btn{padding:10px 12px;font-size:11px}.discount{background:var(--lime);border-radius:4px;padding:19px 24px;display:flex;gap:24px;justify-content:space-between;align-items:center;margin-top:28px;font-size:13px}.discount p{color:var(--green)}.about{background:#e9eddf}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.split p{margin-top:23px}.portrait{min-height:470px;border-radius:80px 4px 4px 4px;overflow:hidden}.portrait .photo-empty{min-height:470px}.signature{font:italic 30px Georgia;color:var(--green);margin-top:25px}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:36px}.benefits h3{font:600 16px 'DM Sans',sans-serif;margin-bottom:9px}.benefits p{font-size:13px}.gallery-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:18px;margin-top:35px}.gallery-grid figure{margin:0}.gallery-grid img,.gallery-grid .photo-empty{height:280px;min-height:280px;border-radius:5px}.gallery-grid figcaption{font-size:12px;margin-top:9px;color:var(--muted)}.reviews{text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.reviews p{max-width:560px;margin:22px auto 0}.reviews .actions{justify-content:center}.small{font-size:12px}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.faq-grid>div>p{margin-top:22px}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-weight:500;list-style:none;padding-right:30px;position:relative}summary:after{content:'+';position:absolute;right:4px}details[open] summary:after{content:'−'}details p{font-size:14px;margin-top:15px;max-width:620px}.location{background:#e9eddf}.map-slot{min-height:260px;border:1px solid #bac4ad;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:35px;border-radius:5px}.map-slot span{font:30px Georgia;margin-bottom:12px}.cta{background:var(--green);color:var(--cream);text-align:center;padding:76px 24px}.cta p{color:#d5dfcf;margin-top:20px}.cta .btn{background:var(--lime);color:var(--green);border-color:var(--lime)}.cta .actions{justify-content:center}footer{padding:52px 0 28px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:60px}.footer-grid p{font-size:12px;margin-top:18px}.footer-grid nav{display:flex;flex-direction:column;align-items:start;gap:8px;font-size:13px}.footer-grid h3{font:600 12px 'DM Sans',sans-serif;margin-bottom:15px}.social{font-size:12px;display:block;margin:9px 0}.social small{color:var(--muted)}.copyright{border-top:1px solid var(--line);margin-top:35px;padding-top:22px;font-size:11px;color:var(--muted)}.mobile-book{display:none}.breadcrumbs{font-size:12px;margin-bottom:32px;color:var(--muted)}.detail{padding:45px 0 80px}.detail-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:70px}.detail-copy p{margin-top:25px}.detail-copy h2{font-size:32px;margin-top:45px}.booking-box{align-self:start;padding:30px;background:#e9eddf;border-radius:6px;position:sticky;top:25px}.booking-box .price{font-size:48px;font-family:Georgia,serif}.booking-box p{margin-top:15px;font-size:14px}.booking-box .btn{width:100%}.detail-copy .photo-empty{margin:30px 0;border-radius:6px}.form{display:grid;gap:18px;margin-top:26px}.form label{font-size:13px;font-weight:500}.form input,.form select{width:100%;padding:12px;border:1px solid #abb7a0;border-radius:4px;background:var(--white);margin-top:6px;color:var(--ink)}.form button{justify-self:start}.prose{max-width:760px;margin:auto}.prose p{margin-top:25px}.prose h1{margin-bottom:35px}.lead{font-size:21px}.ref-note{font-size:11px!important;min-height:0!important;color:var(--muted);margin-top:10px}
@media(max-width:1100px){.links{gap:12px}.nav{gap:20px}.nav>.btn{padding:12px}.wrap{width:calc(100% - 48px)}.hero-grid{gap:35px}.cards{gap:16px}.card-body{padding:18px}.split{gap:40px}}@media(max-width:850px){.nav{height:82px}.links{display:none;position:absolute;top:82px;left:0;right:0;padding:24px;background:var(--cream);border-bottom:1px solid var(--line);flex-direction:column;font-size:16px;gap:18px}.links.open{display:flex}.menu{display:block;border:1px solid var(--line);background:transparent;border-radius:4px;padding:8px 13px;cursor:pointer}.nav>.btn{display:none}.hero-grid{grid-template-columns:1fr 1fr;gap:25px}h1{font-size:46px}.hero-media,.hero-media img,.hero-media .photo-empty{min-height:450px;height:450px}.cards{grid-template-columns:repeat(2,1fr)}.faq-grid{gap:35px}.footer-grid{gap:25px}.detail-grid{gap:35px}.hero-note{gap:8px;font-size:10px}}@media(max-width:600px){.wrap{width:calc(100% - 36px)}.hero{padding:26px 0 35px}.hero-grid,.split,.faq-grid,.detail-grid{grid-template-columns:1fr}.hero-copy{padding:7px 0}.hero h1{font-size:46px;letter-spacing:-1.4px}.hero .intro{margin-top:22px;font-size:15px}.eyebrow{font-size:10px;margin-bottom:16px}.hero-media{margin-top:6px;border-radius:4px 4px 65px 4px}.hero-media,.hero-media img,.hero-media .photo-empty{min-height:340px;height:340px}.strip .wrap{display:grid;grid-template-columns:1fr 1fr;font-size:11px;gap:12px}.section{padding:58px 0}.section-heading{display:block;margin-bottom:28px}.section-heading p{margin-top:20px}.cards{grid-template-columns:1fr;gap:23px}.card-image,.card-image img,.card-image .photo-empty{height:230px}.card-body{padding:23px}.card p{min-height:0}.card .btn{font-size:12px;padding:11px 13px}.discount{align-items:start;flex-direction:column;gap:7px;padding:20px}.split{gap:30px}.portrait,.portrait .photo-empty{min-height:340px}.benefits{grid-template-columns:1fr 1fr;gap:28px}.gallery-grid{grid-template-columns:1fr 1fr;gap:15px}.gallery-grid figure:first-child{grid-column:1/-1}.gallery-grid img,.gallery-grid .photo-empty{height:215px;min-height:215px}.gallery-grid .photo-empty{padding:18px}.gallery-grid .photo-empty span{font-size:21px}.faq-grid{gap:30px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:first-child{grid-column:1/-1}.copyright{padding-bottom:65px}.mobile-book{display:block;position:fixed;bottom:12px;left:18px;right:18px;z-index:10;text-align:center;box-shadow:0 4px 18px #15332130}.booking-box{position:static}.detail{padding-top:30px}.detail h1{font-size:44px}.cta h2{font-size:37px}.brand strong{font-size:23px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Supplied photography: preserve portrait and workshop framing. */
.personal-hero img{height:auto;aspect-ratio:3/4;object-fit:cover}.personal-hero{min-height:0}.detail-copy>img{height:auto;margin:30px 0;border-radius:6px}.experience-gallery{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start;margin-top:20px}.experience-gallery figure{margin:0}.experience-gallery img{height:auto;border-radius:5px}.experience-gallery a{display:block}.experience-gallery a:hover{opacity:.92}@media(max-width:850px){.personal-hero,.personal-hero img{height:auto;min-height:0}}@media(max-width:600px){.personal-hero img{aspect-ratio:3/4}.experience-gallery{gap:12px}}

.card-image img[src="/assets/chemka-swimming.webp"]{object-position:center 78%}

.farm-gallery{grid-template-columns:repeat(3,1fr);align-items:start;gap:24px}.farm-gallery img{height:auto;min-height:0}.farm-gallery a{display:block}.farm-gallery a:hover{opacity:.93}@media(max-width:600px){.farm-gallery{grid-template-columns:1fr 1fr;gap:16px}.farm-gallery figure:first-child{grid-column:auto}}

.other-excursions{background:#eef0e6}.other-excursions .section-heading p{max-width:490px}.excursion-options{display:grid;grid-template-columns:1fr 1fr;gap:24px}.excursion-options .card-body{padding:30px}.excursion-options p{min-height:0}.excursion-note{margin-top:22px}@media(max-width:600px){.excursion-options{grid-template-columns:1fr}.excursion-options .card-body{padding:24px}}

.safari-photos{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:28px}.safari-photos a{display:block}.safari-photos img{height:auto;border-radius:6px}.safari-photos a:hover{opacity:.94}@media(max-width:600px){.safari-photos{grid-template-columns:1fr;gap:16px}}

/* Keep the expanded brand and navigation comfortable on smaller screens. */
.brand small{font-size:11px;letter-spacing:1px;line-height:1.4}.brand{flex-shrink:0}.links{gap:16px}@media(min-width:851px) and (max-width:1150px){.nav{height:auto;min-height:100px;flex-wrap:wrap;padding:18px 0;gap:18px}.links{order:3;width:100%;justify-content:center;flex-wrap:wrap}}

.instagram-feature{background:var(--lime);padding:56px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.instagram-feature-inner{display:grid;grid-template-columns:1.3fr 1fr;gap:50px;align-items:center}.instagram-feature h2{font-size:clamp(32px,3.3vw,46px)}.instagram-feature p{max-width:560px;margin-top:20px}.instagram-feature-action{display:flex;flex-direction:column;align-items:center;gap:17px}.instagram-feature-action .btn{font-size:14px;padding:16px 22px}.instagram-handle{font-size:14px;font-weight:600;overflow-wrap:anywhere}.instagram-story-link{display:inline-block;margin-top:20px;font-size:14px;text-decoration:underline;text-underline-offset:4px}.instagram-social{background:var(--lime);border:1px solid var(--line);border-radius:5px;padding:13px 15px;overflow-wrap:anywhere}.instagram-social small{display:inline-block;margin-top:6px}.instagram-feature .eyebrow{margin-bottom:16px}@media(max-width:600px){.instagram-feature{padding:40px 0}.instagram-feature-inner{grid-template-columns:1fr;gap:28px}.instagram-feature-action{align-items:flex-start}.instagram-feature-action .btn{width:100%;font-size:13px}.instagram-social{padding:12px;font-size:11px}}

.map-consent{min-height:300px;background:var(--lime);padding:30px;border-radius:6px;display:flex;flex-direction:column;justify-content:center;gap:16px}.map-consent iframe{border:0;width:100%;min-height:300px}.map-consent.is-loaded{padding:0;background:transparent}.prose p{margin-bottom:20px}.prose h2{margin-top:32px}.prose a,.map-consent .small a{text-decoration:underline}
