/* Dinkwe layer on top of the Intrio theme: two logo fonts, cream paper, Big Five art, service hero */
:root{
  --d-head:"Antonio","Arial Narrow",sans-serif;
  --d-body:"Alegreya",Georgia,serif;
  --pad:clamp(16px,3.4vw,48px);
  --gut:max(var(--pad),calc((100vw - 1500px)/2));
  --primary-color:#a4692c;
  --primary-color-rgb:164,105,44;
  --secondary-color:#a4692c;
  --secondary-color-rgb:164,105,44;
  --cream:#f4ecdd;
  --bark:#2b1a12;
  --ochre:#c48a3f;
}
html{background:var(--cream)}
body{background:transparent!important;font-variant-numeric:lining-nums;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;z-index:-1;background:url(../assets/img/bg-art.webp) center/cover no-repeat;opacity:.22;pointer-events:none}
section{background:transparent}
h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6,.hs-1,.hs-2,.hs-3,.hs-4,.hs-5,.hs-6{font-family:var(--d-head)!important;font-weight:300;letter-spacing:.005em}
h2{font-size:clamp(44px,4.6vw,72px);line-height:1.06}
p,li,.widget a,span{color:inherit}
body{color:#3a2619}
.text-light,.text-light p,.section-dark p{color:rgba(255,255,255,.88)}
.fs-40{font-size:clamp(32px,2.8vw,44px)!important;line-height:1.06!important;font-weight:400!important}
.fs-36{font-size:clamp(28px,2.4vw,38px)!important;font-weight:400!important}
.subtitle{font-family:var(--d-head);letter-spacing:.09em;font-size:15px;font-weight:400}
.btn-main,.btn-main span{font-family:var(--d-head);letter-spacing:.07em;font-weight:400;text-transform:uppercase}
#mainmenu a,#mainmenu li li a{font-family:var(--d-head);letter-spacing:.06em}
header.smaller,header.transparent.smaller{background:var(--bark)!important}
#logo img{width:var(--logo-width);height:auto}
.btn-main,.btn-main span{white-space:nowrap}
@media (min-width:994px){
  #logo{margin-right:clamp(16px,2vw,36px)}
  header .de-flex{flex-wrap:nowrap}
  header .header-col-mid{flex:1 1 auto;display:flex;justify-content:center;min-width:0}
  #mainmenu{display:flex;flex-wrap:nowrap;align-items:center}
  #mainmenu>li>a{white-space:nowrap;padding-left:0;padding-right:0;font-size:clamp(14px,1.02vw,18px)}
}
.section-dark,footer.section-dark{background:var(--bark)!important}
footer h3{font-weight:300;font-size:clamp(24px,2.1vw,32px);line-height:1.2}
.btn-line{display:inline-block;padding:12px 26px;border:1px solid currentColor;font:400 15px/1.3 var(--d-head);letter-spacing:.07em;text-transform:uppercase;text-decoration:none;color:#fff;transition:background .3s,color .3s,border-color .3s}
.btn-line:hover{background:var(--ochre);border-color:var(--ochre);color:#1c110b}
.btn-line--dark{color:var(--bark);margin-top:8px}
.about-img{aspect-ratio:3/2;object-fit:cover;object-position:58% center}
.de_count h3{font-size:clamp(46px,4.6vw,72px)!important;font-weight:300!important;line-height:1.05!important}
.de-step h3{font-weight:400;font-size:24px;line-height:1.2}
.pkg img{aspect-ratio:16/10;object-fit:cover}
.extra-text .bg-blur{font:400 15px/1.2 var(--d-head);letter-spacing:.05em}
.band-video{height:min(92vh,860px)}
.band-video>div{height:100%}
.band-video video{width:100%;height:100%;object-fit:cover;display:block}

/* Hero: a different service on every slide */
.hero-full{height:100vh;height:100svh;min-height:600px}
#heroSwiper{position:absolute;inset:0;width:100%;height:100%}
#heroSwiper .swiper-slide{overflow:hidden}
#heroSwiper .swiper-inner{position:absolute;inset:0;background-size:cover;background-position:var(--p,center)}
#heroSwiper video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--p,center)}
.hero-shade{position:absolute;inset:0;z-index:2;pointer-events:none;transition:background .8s}
.hero-shade[data-cap=left]{background:linear-gradient(90deg,rgba(20,11,5,.72) 0,rgba(20,11,5,.36) 32%,rgba(20,11,5,0) 54%),linear-gradient(0deg,rgba(20,11,5,.6) 0,rgba(20,11,5,0) 22%),linear-gradient(180deg,rgba(20,11,5,.45) 0,rgba(20,11,5,0) 18%)}
.hero-shade[data-cap=right]{background:linear-gradient(270deg,rgba(20,11,5,.72) 0,rgba(20,11,5,.36) 32%,rgba(20,11,5,0) 54%),linear-gradient(0deg,rgba(20,11,5,.6) 0,rgba(20,11,5,0) 22%),linear-gradient(180deg,rgba(20,11,5,.45) 0,rgba(20,11,5,0) 18%)}
.hero-shade[data-cap=top]{background:linear-gradient(180deg,rgba(20,11,5,.72) 0,rgba(20,11,5,.42) 36%,rgba(20,11,5,0) 58%),linear-gradient(0deg,rgba(20,11,5,.55) 0,rgba(20,11,5,0) 18%)}
.hero-shade[data-cap=low]{background:linear-gradient(0deg,rgba(20,11,5,.82) 0,rgba(20,11,5,.5) 34%,rgba(20,11,5,0) 58%),linear-gradient(180deg,rgba(20,11,5,.42) 0,rgba(20,11,5,0) 18%)}
.hero-caps{position:absolute;inset:0;z-index:3;pointer-events:none;--side:var(--gut)}
.hero-cap{position:absolute;opacity:0;visibility:hidden;transition:opacity .4s,visibility .4s;max-width:620px}
.hero-cap.is-on{opacity:1;visibility:visible;pointer-events:auto}
.cap-left{left:var(--side);bottom:clamp(92px,13vh,130px);width:min(40vw,620px)}
.cap-right{right:var(--side);bottom:clamp(92px,13vh,130px);width:min(40vw,620px)}
.cap-low{left:var(--side);bottom:clamp(84px,10vh,110px);width:min(60vw,900px);max-width:none}
.cap-top{left:var(--side);top:clamp(100px,14vh,136px);width:min(58vw,860px);max-width:none}
.hero-cap h1,.hero-cap h2{margin:0 0 14px;font-weight:300;line-height:1.03;color:#fff;font-size:clamp(46px,5.4vw,96px);letter-spacing:0}
.hero-cap h1 span,.hero-cap h2 span{display:block}
.hero-cap h2 span:last-child{font-size:.62em;line-height:1.18;color:#ecd5b0}
.cap-top h2,.cap-low h2{font-size:clamp(44px,4.6vw,84px)}
.hero-cap p{font-size:clamp(18px,1.4vw,21px);line-height:1.42;color:#fff;margin:0 0 20px;max-width:560px;text-shadow:0 1px 14px rgba(20,11,5,.5)}
.hero-btns{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.hero-cap.is-on h1,.hero-cap.is-on h2{animation:dLeft 1s .15s both cubic-bezier(.2,.7,.2,1)}
.hero-cap.is-on p{animation:dLeft 1s .35s both cubic-bezier(.2,.7,.2,1)}
.hero-cap.is-on .hero-btns{animation:dRight 1s .5s both cubic-bezier(.2,.7,.2,1)}
@keyframes dLeft{from{opacity:0;transform:translateX(-40px)}to{opacity:1;transform:none}}
@keyframes dRight{from{opacity:0;transform:translateX(40px)}to{opacity:1;transform:none}}
.hero-tabs{position:absolute;left:0;right:0;bottom:0;z-index:4;display:flex;gap:6px;padding:0 var(--gut) 16px}
.hero-tabs button{flex:1 1 0;min-width:0;background:none;border:0;color:rgba(255,255,255,.72);font:400 14px/1.2 var(--d-head);letter-spacing:.06em;text-transform:uppercase;text-align:left;padding:12px 2px 0;position:relative;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .3s}
.hero-tabs button::before,.hero-tabs button::after{content:"";position:absolute;left:0;top:0;height:2px;width:100%;background:rgba(255,255,255,.28)}
.hero-tabs button::after{width:0;background:var(--ochre)}
.hero-tabs button:hover,.hero-tabs button.is-on{color:#fff}
.hero-tabs button.is-on::after{width:100%;transition:width var(--tab,7s) linear}

/* Chalet selector, after Grandeur's room section */
.lodge__list{list-style:none;padding:0;margin:26px 0 0}
.lodge__list button{display:block;width:100%;text-align:left;background:none;border:0;border-top:1px solid rgba(255,255,255,.16);padding:14px 0;color:rgba(255,255,255,.7);cursor:pointer;transition:color .3s,padding .35s}
.lodge__list li:last-child button{border-bottom:1px solid rgba(255,255,255,.16)}
.lodge__list b{display:block;font:300 clamp(24px,2vw,30px)/1.15 var(--d-head);text-transform:uppercase}
.lodge__list span{font-size:17px;line-height:1.35}
.lodge__list .is-on button,.lodge__list button:hover{color:#fff;padding-left:14px}
.lodge__list .is-on b{color:#e4bb80}
.lodge__stage{position:relative;aspect-ratio:3/2;overflow:hidden;background:#1c110b}
.lodge__stage>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.06);transition:opacity .9s,transform 1.6s cubic-bezier(.2,.7,.2,1)}
.lodge__stage>img.is-on{opacity:1;transform:none}
.lodge__go{position:absolute;right:22px;bottom:22px;width:72px;height:72px;border-radius:50%;background:var(--ochre);display:flex;align-items:center;justify-content:center;transition:transform .35s}
.lodge__go:hover{transform:scale(1.1)}
.lodge__go img{width:26px}
.lodge__note{margin:20px 0 0;color:rgba(255,255,255,.82)}

.trophy{margin:18px 0 26px}
.trophy b{font-weight:500}
.de_count h3{margin-bottom:8px!important}
.rates .de_count{border-top:1px solid rgba(52,31,22,.24);padding-top:14px;height:100%;line-height:1.35}
.team-c{position:relative;overflow:hidden;background:var(--bark)}
.team-c img{width:100%;aspect-ratio:3/4;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.team-c:hover img{transform:scale(1.07)}
.team-c div{position:absolute;left:0;right:0;bottom:0;padding:50px 18px 14px;color:#fff;background:linear-gradient(0deg,rgba(20,11,5,.85),rgba(20,11,5,0))}
.team-c b{display:block;font:400 25px/1.1 var(--d-head);text-transform:uppercase}
.team-c span{font-size:16px;line-height:1.25;display:block;margin-top:3px}
.member{font-size:18px;line-height:1.5;margin-top:24px}
.shows{list-style:none;padding:0;margin:0}
.shows li{display:grid;grid-template-columns:minmax(0,190px) 1fr auto;gap:18px;align-items:baseline;padding:20px 0;border-top:1px solid rgba(52,31,22,.24)}
.shows li:last-child{border-bottom:1px solid rgba(52,31,22,.24)}
.shows b{font:400 22px/1.2 var(--d-head);color:#341f16}
.shows i{font:400 15px/1 var(--d-head);letter-spacing:.06em;text-transform:uppercase;opacity:.8}
#enquire::after{content:"";position:absolute;left:0;right:0;bottom:0;height:150px;background:linear-gradient(0deg,var(--bark),rgba(43,26,18,0));z-index:1;pointer-events:none}
.enq{background:var(--cream);padding:clamp(22px,3vw,38px)}
.enq .form-control{background:transparent;border:0;border-bottom:1px solid #341f16;border-radius:0;color:#341f16;font:400 19px/1.3 var(--d-body);padding:10px 0;box-shadow:none}
.enq .form-control::placeholder{color:rgba(52,31,22,.72)}
.enq .enq-note{color:#341f16;font-size:16px;margin:14px 0 0}
.enq-links a{display:block;color:#fff;text-decoration:none;font:400 19px/1.7 var(--d-head);letter-spacing:.04em}
.enq-links i{width:24px}
.d-toast{position:fixed;left:50%;bottom:26px;z-index:9999;transform:translate(-50%,20px);background:#341f16;color:var(--cream);padding:12px 22px;font-size:18px;opacity:0;pointer-events:none;transition:.3s;width:max-content;max-width:90vw}
.d-toast.on{opacity:1;transform:translate(-50%,0)}

@media (max-width:992px){
  .hero-tabs{display:none}
  .hero-cap,.cap-left,.cap-right,.cap-low,.cap-top{left:16px;right:16px;top:auto;bottom:34px;width:auto;max-width:none}
  .hero-shade,.hero-shade[data-cap]{background:linear-gradient(0deg,rgba(20,11,5,.88) 0,rgba(20,11,5,.6) 30%,rgba(20,11,5,0) 54%),linear-gradient(180deg,rgba(20,11,5,.45) 0,rgba(20,11,5,0) 18%)}
  .hero-cap h1,.hero-cap h2,.cap-top h2,.cap-low h2{font-size:clamp(40px,11.5vw,62px)}
  .hero-cap p{font-size:18px;margin-bottom:16px}
  .shows li{grid-template-columns:1fr;gap:4px}
  .lodge__stage{aspect-ratio:4/3}
}
@media (max-width:760px){
  body::before{background-image:url(../assets/img/bg-art-m.webp);opacity:.26}
  #heroSwiper .swiper-inner,#heroSwiper video{background-position:var(--pm,center);object-position:var(--pm,center)}
  .band-video{height:60vh}
}
@media (prefers-reduced-motion:reduce){
  .hero-cap.is-on h1,.hero-cap.is-on h2,.hero-cap.is-on p,.hero-cap.is-on .hero-btns{animation:none}
}


/* Desktop menu: one line, arrow beside its label */
@media (min-width:994px){
  #mainmenu>li{display:flex;align-items:center;white-space:nowrap;padding:0;margin-right:clamp(10px,1.25vw,24px)}
  #mainmenu>li>span{position:static;margin-left:2px}
  #mainmenu>li>ul{white-space:normal}
}
/* Phone menu sits on the hero */
@media (max-width:993px){
  header.header-mobile{background:transparent;padding-bottom:0;transition:background .3s}
  header.header-mobile.d-past,header.header-mobile.menu-open{background:var(--bark)}
  header.header-mobile #logo img{width:86px}
}

/* Small laptops: the side menu button keeps the enquiry link, so the main menu still fits */
@media (min-width:994px) and (max-width:1279px){
  header .menu_side_area .btn-main{display:none!important}
  #logo img{width:88px}
  #mainmenu>li{margin-right:12px}
  #mainmenu>li>a{font-size:14px}
}
/* Buttons */
.hero-btns a.btn-main,.hero-btns a.btn-line{min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.hero-btns a.btn-line{color:#fff;border:1px solid rgba(255,255,255,.8)}
a.btn-line.btn-line--dark{color:var(--bark);border:1px solid rgba(43,26,18,.55);min-height:44px;display:inline-flex;align-items:center}
a.btn-line.btn-line--dark:hover{background:var(--ochre);border-color:var(--ochre);color:#1c110b}
/* Guest quotes: the old quote leaves at once so two never sit on top of each other */
.owl-single-dots .owl-animated-out{visibility:hidden}
/* Steps */
.de-step{padding:20px clamp(14px,1.6vw,26px)}
.de-step p{font-size:18px;line-height:27px}
.de-step-arrow::after{top:48px;right:-14px;transform:none;color:var(--bark)}

/* Content sits in a 1500px container */
.container{max-width:1596px!important;width:100%;padding-left:var(--pad);padding-right:var(--pad)}
/* Every other section is darker, so each one reads as its own section */
.art--alt{background:linear-gradient(180deg,rgba(140,92,40,.26),rgba(140,92,40,.17))!important;border-top:1px solid rgba(90,58,30,.16);border-bottom:1px solid rgba(90,58,30,.16)}
/* White space above the team */
.team-sec{padding-top:clamp(110px,11vw,170px)}
/* Package prices: solid accent colour, same as the buttons */
.extra-text{flex-wrap:wrap;gap:6px}
.extra-text .bg-blur{background:var(--primary-color)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;color:#fff!important;font-size:17px!important;padding:10px 16px!important;margin-right:0!important;border-radius:0}

/* Section headings: centred, text under the heading, arrows under the text */
.sec-head{max-width:880px;margin:0 auto clamp(32px,4vw,56px);text-align:center}
.sec-head .subtitle{margin-bottom:10px}
.sec-head h2{margin-bottom:16px}
.sec-head p{margin:0 auto}
.sec-head .de-custom-nav{position:static!important;justify-content:center!important;margin-top:24px;gap:6px}
.de_count{text-align:center}
.rates .de_count{height:auto}
.price-foot{margin:clamp(28px,3vw,44px) auto clamp(30px,3.5vw,50px);max-width:760px}
.price-foot .trophy{margin:0 0 20px}
.lodge__list--top{margin-top:0}
.owl-single-dots .owl-dots{text-align:center}

/* Slider photos keep their shape */
#services-carousel img,#projects-carousel img{height:auto}
.sec-head h2{text-wrap:balance}
.about-member{max-width:820px;margin:clamp(30px,3.5vw,48px) auto 0}
/* Shows */
.shows-h{text-align:center;font-weight:400;font-size:clamp(26px,2.2vw,34px);color:#e4bb80;margin:0 0 clamp(22px,2.6vw,34px)}
.show-card{background:var(--cream);color:#2b1a12;text-align:center;height:100%;overflow:hidden}
.show-card img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.show-card__in{padding:clamp(22px,2.4vw,34px) clamp(18px,2vw,28px) clamp(26px,2.6vw,36px)}
.show-date{font:300 clamp(34px,3vw,46px)/1.1 var(--d-head);text-transform:uppercase;color:#2b1a12!important;margin:0 0 10px}
.show-card h4{font:400 clamp(20px,1.6vw,24px)/1.25 var(--d-head)!important;text-transform:uppercase;color:#2b1a12;margin:0 0 6px}
.show-card p{color:#3a2619}
.show-card__in p:not(.show-date){margin:0 0 18px}
.show-booth{display:inline-block;background:var(--primary-color);color:#fff;padding:9px 18px;font:400 16px/1.2 var(--d-head);letter-spacing:.06em;text-transform:uppercase}
.shows-note{text-align:center;margin:clamp(24px,3vw,40px) 0 0}
/* FAQ */
.faq-img{height:100%;min-height:320px;overflow:hidden}
.faq-img img{width:100%;height:100%;object-fit:cover;object-position:center 45%;display:block}
.faq-more{margin-top:26px}
@media (max-width:991px){
  .faq-img{height:auto;min-height:0}
  .faq-img img{height:auto;aspect-ratio:16/11}
}

/* Questions read as headings, answers as text */
.accordion-section-title{font-family:var(--d-head)!important;font-weight:400!important;font-size:clamp(19px,1.5vw,23px)!important;line-height:1.3!important;text-transform:uppercase;letter-spacing:.025em;color:#2b1a12!important}
.accordion-section-content{font-family:var(--d-body);font-size:19px;line-height:1.5}
/* FAQ image always matches the height of the questions beside it */
@media (min-width:992px){
  .faq-img{position:relative;height:100%}
  .faq-img img{position:absolute;inset:0}
}

/* Hero caption at the top right, for clips where the animal fills the left */
.cap-tr{right:var(--side);top:clamp(100px,14vh,136px);width:min(38vw,560px);text-align:right}
.cap-tr p{margin-left:auto}
.cap-tr .hero-btns{justify-content:flex-end}
.hero-shade[data-cap=tr]{background:linear-gradient(225deg,rgba(20,11,5,.74) 0,rgba(20,11,5,.38) 30%,rgba(20,11,5,0) 52%),linear-gradient(180deg,rgba(20,11,5,.42) 0,rgba(20,11,5,0) 18%),linear-gradient(0deg,rgba(20,11,5,.5) 0,rgba(20,11,5,0) 16%)}
.cap-tr.is-on h2,.cap-tr.is-on p{animation-name:dRight}
@media (max-width:992px){
  .cap-tr{left:16px;right:16px;top:auto;bottom:34px;width:auto;max-width:none;text-align:left}
  .cap-tr p{margin-left:0}
  .cap-tr .hero-btns{justify-content:flex-start}
}

/* Bow hunting words stay clear of the impala */
.cap-tr{width:min(30vw,440px)}
.cap-tr p{max-width:300px}
@media (max-width:992px){
  .cap-tr{width:auto}
  .cap-tr p{max-width:none}
  .hero-shade[data-cap=tr]{background:linear-gradient(0deg,rgba(20,11,5,.9) 0,rgba(20,11,5,.68) 30%,rgba(20,11,5,0) 54%),linear-gradient(180deg,rgba(20,11,5,.45) 0,rgba(20,11,5,0) 18%)}
}

.cap-narrow p{max-width:370px}
.hero-tabs button{color:rgba(255,255,255,.9)}
/* Phones: heading and button only after the first slide, so the animal stays clear */
@media (max-width:992px){
  #heroCaps .hero-cap:not(:first-child) p{display:none}
  .hero-cap.m-top{top:96px;bottom:auto}
  .hero-shade[data-cap][data-m=top]{background:linear-gradient(180deg,rgba(20,11,5,.72) 0,rgba(20,11,5,.42) 32%,rgba(20,11,5,0) 50%)}
}

/* Phones, first slide: heading above the leopard, text and buttons below it */
@media (max-width:992px){
  .hero-cap.m-split{top:92px;bottom:34px;display:flex;flex-direction:column;pointer-events:none}
  .hero-cap.m-split a{pointer-events:auto}
  .hero-cap.m-split h1{font-size:min(9.8vw,60px);margin-bottom:0}
  .hero-cap.m-split h1 span{display:inline}
  .hero-cap.m-split p{margin-top:auto}
  .hero-shade[data-cap][data-m=split]{background:linear-gradient(180deg,rgba(20,11,5,.72) 0,rgba(20,11,5,.42) 20%,rgba(20,11,5,0) 34%),linear-gradient(0deg,rgba(20,11,5,.9) 0,rgba(20,11,5,.62) 16%,rgba(20,11,5,0) 30%)}
}

.hero-cap h1,.hero-cap h2{text-shadow:0 1px 18px rgba(20,11,5,.5)}
.hero-cap h2 span:last-child{color:#f3e2c6}
@media (max-width:992px){
  .hero-cap.m-split h1{text-wrap:balance}
}

/* ===== Inner pages ===== */
/* Page hero: shorter than the homepage, no slider. The clips are cut to this shape, so nothing is cropped by surprise. */
.ph{position:relative;overflow:hidden;padding:0!important;background:var(--bark);height:clamp(320px,min(38.75vw,72vh),860px)}
/* Clips where the animals fill the frame top to bottom keep the full banner shape on short screens */
.ph--fit{height:clamp(320px,38.75vw,860px)}
.ph--short{height:clamp(320px,min(24vw,46vh),440px)}
.ph__media{position:absolute;inset:0}
.ph__media img,.ph__media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--p,center);display:block}
.ph__media video{opacity:0;transition:opacity .7s}
.ph__media video.is-on{opacity:1}
.ph__shade{position:absolute;inset:0;z-index:2;pointer-events:none}
.ph__in{position:absolute;z-index:3;color:#fff;width:min(50vw,860px)}
.ph__in h1{margin:0 0 12px;font-weight:300;line-height:1.04;color:#fff;font-size:clamp(44px,4.6vw,84px);letter-spacing:0;text-shadow:0 1px 18px rgba(20,11,5,.5);text-wrap:balance}
.ph__in p{margin:0;color:#fff;font-size:clamp(18px,1.4vw,21px);line-height:1.42;max-width:560px;text-shadow:0 1px 14px rgba(20,11,5,.55)}
.ph__crumb{font:400 14px/1.2 var(--d-head);letter-spacing:.08em;text-transform:uppercase;margin:0 0 12px;color:#f3e2c6}
.ph__crumb a{color:inherit;text-decoration:none}
.ph__crumb a:hover{color:#fff}
.ph__crumb i{font-style:normal;margin:0 8px;opacity:.7}
.ph--tl .ph__in{left:var(--gut);top:clamp(104px,23%,160px)}
.ph--tr .ph__in{right:var(--gut);top:clamp(104px,23%,160px);text-align:right}
.ph--tr .ph__in p{margin-left:auto}
.ph--t .ph__in{left:var(--gut);top:clamp(104px,23%,160px);width:min(62vw,940px)}
.ph--bl .ph__in{left:var(--gut);bottom:clamp(24px,7%,60px)}
.ph--l .ph__in{left:var(--gut);bottom:clamp(30px,11%,90px)}
.ph--r .ph__in{right:var(--gut);bottom:clamp(30px,11%,90px);text-align:right}
.ph--r .ph__in p{margin-left:auto}
.ph--short.ph--l .ph__in{bottom:clamp(20px,9%,44px)}
.ph--tl .ph__shade{background:linear-gradient(120deg,rgba(20,11,5,.76) 0,rgba(20,11,5,.42) 30%,rgba(20,11,5,0) 56%),linear-gradient(180deg,rgba(20,11,5,.45) 0,rgba(20,11,5,0) 24%)}
.ph--tr .ph__shade{background:linear-gradient(240deg,rgba(20,11,5,.76) 0,rgba(20,11,5,.42) 30%,rgba(20,11,5,0) 56%),linear-gradient(180deg,rgba(20,11,5,.45) 0,rgba(20,11,5,0) 24%)}
.ph--t .ph__shade{background:linear-gradient(180deg,rgba(20,11,5,.76) 0,rgba(20,11,5,.44) 40%,rgba(20,11,5,0) 66%)}
.ph--bl .ph__shade,.ph--l .ph__shade{background:linear-gradient(60deg,rgba(20,11,5,.8) 0,rgba(20,11,5,.44) 30%,rgba(20,11,5,0) 56%),linear-gradient(180deg,rgba(20,11,5,.45) 0,rgba(20,11,5,0) 24%)}
.ph--r .ph__shade{background:linear-gradient(300deg,rgba(20,11,5,.8) 0,rgba(20,11,5,.44) 30%,rgba(20,11,5,0) 56%),linear-gradient(180deg,rgba(20,11,5,.45) 0,rgba(20,11,5,0) 24%)}
@media (max-width:760px){
  .ph{height:max(480px,68svh)}
  .ph--short{height:clamp(300px,42svh,380px)}
  .ph__media img,.ph__media video{object-position:var(--pm,center)}
  .ph .ph__in,.ph--tr .ph__in,.ph--r .ph__in{left:16px;right:16px;width:auto;top:auto;bottom:22px;text-align:left}
  .ph .ph__in p{margin-left:0;font-size:18px}
  .ph .ph__in h1{font-size:clamp(38px,11vw,56px)}
  .ph.ph--m-top .ph__in{top:88px;bottom:auto}
  .ph .ph__shade{background:linear-gradient(0deg,rgba(20,11,5,.88) 0,rgba(20,11,5,.6) 28%,rgba(20,11,5,0) 52%),linear-gradient(180deg,rgba(20,11,5,.45) 0,rgba(20,11,5,0) 18%)}
  .ph.ph--m-top .ph__shade{background:linear-gradient(180deg,rgba(20,11,5,.8) 0,rgba(20,11,5,.5) 34%,rgba(20,11,5,0) 56%)}
  /* Group photo on a phone: the whole photo under the words, so nobody is cut off */
  .ph.ph--m-whole{height:calc(196px + 69.7vw)}
  .ph.ph--m-whole .ph__media img{object-fit:contain;object-position:center bottom}
  .ph.ph--m-whole .ph__shade{display:none}
  .ph.ph--m-whole .ph__in{top:88px;bottom:auto}
}

/* Tablets: the banner is short, so the title stands alone and stays off the animals */
@media (min-width:761px) and (max-width:1023px){
  .ph__in p{display:none}
  .ph--tl .ph__in,.ph--tr .ph__in,.ph--t .ph__in{top:92px}
}

/* Desktop dropdown: opens under the menu, not on top of it */
@media (min-width:994px){
  #mainmenu>li{position:relative}
  #mainmenu>li>ul{top:100%;left:-16px;width:236px;height:auto!important;background:var(--cream);border:0;border-top:2px solid var(--primary-color);border-radius:0;box-shadow:0 16px 34px rgba(20,11,5,.3)}
  #mainmenu>li>ul a{color:#2b1a12;font-size:16px;padding:11px 16px;white-space:normal}
  #mainmenu>li>ul a:hover{background:var(--primary-color);color:#fff}
  #mainmenu>li>span{pointer-events:none}
}

/* Menu: the page you are on */
#mainmenu>li.current>a{color:#e4bb80}

/* Photos beside words */
.d-pic{aspect-ratio:3/2;object-fit:cover;display:block}
.d-pic--tall{aspect-ratio:4/5}
.d-counts{margin-top:0}
.d-h3{font-weight:400;font-size:clamp(26px,2.2vw,34px);line-height:1.15;margin:0 0 14px;color:inherit}
.section-dark .d-h3{color:#e4bb80}
.d-after{margin-top:clamp(26px,3vw,42px)}
.d-after-s{margin-top:22px}
.d-center{justify-content:center}
a.d-link-light{color:#e4bb80!important;text-decoration:underline;text-underline-offset:3px}
a.d-link-light:hover{color:#fff!important}
.art a:not([class]),.legal a:not([class]){color:var(--primary-color);text-decoration:underline;text-underline-offset:3px}

/* Ruled rows */
.ruled__row{padding:clamp(16px,1.8vw,26px) 0;border-top:1px solid rgba(52,31,22,.24)}
.ruled__row:last-child{border-bottom:1px solid rgba(52,31,22,.24)}
.ruled__row--n{display:grid;grid-template-columns:clamp(44px,5vw,76px) 1fr;gap:12px}
.ruled__n{font:300 clamp(34px,3vw,48px)/1 var(--d-head);color:var(--primary-color)}
.ruled h3{font-weight:400;font-size:clamp(24px,2vw,30px);line-height:1.15;margin:0 0 6px}
.ruled p{margin:0}
.section-dark .ruled__row{border-color:rgba(255,255,255,.18)}
.section-dark .ruled h3{color:#e4bb80}

/* Lists */
.d-list{list-style:none;padding:0;margin:0 0 16px}
.d-list li{position:relative;padding:4px 0 4px 24px;line-height:1.4}
.d-list li::before{content:"";position:absolute;left:2px;top:.72em;width:10px;height:2px;background:var(--primary-color)}
.d-list--light li::before{background:#e4bb80}

/* Photo cards, title on the picture */
.pcard{position:relative;display:block;overflow:hidden;color:#fff;text-decoration:none;background:var(--bark)}
.pcard>img:first-child{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.pcard--tall>img:first-child{aspect-ratio:3/4}
.pcard:hover>img:first-child{transform:scale(1.06)}
.pcard__go{position:absolute;top:14px;right:14px;width:44px;opacity:.85}
.pcard__t{position:absolute;left:0;right:0;bottom:0;padding:70px 20px 18px;background:linear-gradient(0deg,rgba(20,11,5,.85),rgba(20,11,5,0))}
.pcard__t h3{margin:0;color:#fff;font-weight:400;font-size:clamp(26px,2.2vw,36px);line-height:1.1}
.pcard__t p{margin:6px 0 0;color:#fff;font-size:18px;line-height:1.35}

/* Chalets and hunts: photo with words under it, no box */
.chalet>img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block;margin-bottom:18px}
.chalet--wide>img{aspect-ratio:16/10}
.chalet h3{font-weight:400;font-size:clamp(26px,2.2vw,36px);line-height:1.1;margin:0 0 8px}
.chalet p{margin:0 0 12px}

/* Rates on dark */
.rates--light .de_count{border-top:1px solid rgba(255,255,255,.24);color:rgba(255,255,255,.88)}
.rates--light .de_count h3{color:#e4bb80}

/* Packages */
.pack{scroll-margin-top:110px;height:100%}
.pack__pic{position:relative;overflow:hidden;background:var(--bark)}
.pack__pic img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;display:block}
.pack__price{position:absolute;left:0;bottom:0;padding:10px 16px;background:var(--primary-color);color:#fff;font:400 clamp(18px,1.5vw,22px)/1.2 var(--d-head);letter-spacing:.03em}
.pack__price b{font-weight:400}
.pack__in{padding-top:16px}
.pack__no{font:400 15px/1.2 var(--d-head);letter-spacing:.08em;text-transform:uppercase;color:var(--primary-color);margin:0 0 6px}
.pack h3{font-weight:400;font-size:clamp(27px,2.3vw,38px);line-height:1.1;margin:0 0 10px}
.pack h4{font-weight:400;font-size:20px;line-height:1.2;margin:14px 0 6px}
.pack__line{margin:0 0 8px}
.pack__note{margin:0 0 10px;padding:8px 12px;background:rgba(164,105,44,.16);line-height:1.35}
.pack .btn-line{margin-top:16px}
.d-more{border-top:1px solid rgba(52,31,22,.24);margin-top:12px}
.d-more+.d-more{margin-top:0}
.d-more>summary,.d-q>summary{cursor:pointer;list-style:none;position:relative;padding:12px 34px 12px 0;font:400 clamp(19px,1.5vw,23px)/1.3 var(--d-head);text-transform:uppercase;letter-spacing:.025em;color:#2b1a12}
.d-more>summary::-webkit-details-marker,.d-q>summary::-webkit-details-marker{display:none}
.d-more>summary::after,.d-q>summary::after{content:"+";position:absolute;right:2px;top:50%;transform:translateY(-50%);font-size:26px;line-height:1;color:var(--primary-color)}
.d-more[open]>summary::after,.d-q[open]>summary::after{content:"\2212"}
.d-days{list-style:none;padding:0;margin:0 0 12px}
.d-days li{display:grid;grid-template-columns:62px 1fr;gap:8px;padding:6px 0;border-top:1px dotted rgba(52,31,22,.28);line-height:1.35}
.d-days li:first-child{border-top:0}
.d-days b{font:400 16px/1.5 var(--d-head);letter-spacing:.04em;text-transform:uppercase;color:var(--primary-color)}
.d-jump{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}

/* Questions */
.d-q{border-top:1px solid rgba(52,31,22,.24)}
.d-q:last-child{border-bottom:1px solid rgba(52,31,22,.24)}
.d-q>summary{padding:16px 34px 16px 0}
.d-q>div{padding:0 0 18px;font-size:19px;line-height:1.5}
.faq-side{position:sticky;top:110px}
.faq-side .faq-img{height:auto;min-height:0;margin-bottom:22px}
.faq-side .faq-img img{position:static;height:auto;aspect-ratio:16/11}
@media (max-width:991px){.faq-side{position:static}}

/* Price tables */
.d-tools{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;margin-bottom:14px}
.d-tools .form-control{flex:1 1 260px;max-width:420px;background:transparent;border:0;border-bottom:1px solid #341f16;border-radius:0;font:400 19px/1.3 var(--d-body);color:#341f16;padding:10px 0;box-shadow:none}
.d-tools .form-control::placeholder{color:rgba(52,31,22,.72)}
.d-table-wrap{overflow:auto;border-top:2px solid var(--bark);border-bottom:1px solid rgba(52,31,22,.24);background:rgba(244,236,221,.72)}
.d-table-wrap--tall{max-height:min(74vh,720px)}
.d-table{width:100%;border-collapse:separate;border-spacing:0;font-size:18px;line-height:1.3}
.d-table thead th{position:sticky;top:0;z-index:2;background:var(--bark);color:#fff;font:400 15px/1.2 var(--d-head);letter-spacing:.06em;text-transform:uppercase;padding:12px 14px;text-align:right;white-space:nowrap}
.d-table thead th:first-child{text-align:left}
.d-table tbody th{font:inherit;font-weight:500;text-align:left;padding:10px 14px;border-top:1px solid rgba(52,31,22,.16)}
.d-table tbody th span{font-weight:400;opacity:.8;display:inline-block;margin-left:4px}
.d-table td{text-align:right;padding:10px 14px;border-top:1px solid rgba(52,31,22,.16);white-space:nowrap;font-variant-numeric:lining-nums tabular-nums}
.d-table tbody tr:hover th,.d-table tbody tr:hover td{background:rgba(164,105,44,.12)}
.d-tick{font-style:normal;color:var(--primary-color);font-weight:700}
.d-table--species th:nth-child(n+3),.d-table--species td:nth-child(n+3){text-align:center}
.d-table--taxi thead th{white-space:normal;min-width:88px;vertical-align:bottom}
.d-table--taxi th:first-child{position:sticky;left:0;z-index:1;background:var(--cream);min-width:150px}
.d-table--taxi thead th:first-child{z-index:3;background:var(--bark)}
.d-none-found{margin:14px 0 0}
@media (max-width:760px){
  .d-table{font-size:17px}
  .d-table thead th,.d-table tbody th,.d-table td{padding:9px 8px}
  .d-table--species thead th{font-size:13px}
  .d-tools{flex-direction:column;align-items:stretch}
  .d-tools .form-control{max-width:none;flex:none}
  .d-tools .btn-line{justify-content:center;text-align:center}
}

/* Galleries: each photo keeps its own shape, nothing is cropped */
.gal{--h:250px;display:flex;flex-wrap:wrap;gap:8px}
.gal::after{content:"";flex:999 1 0}
.gal--fill::after{display:none}
.gal--big{--h:clamp(300px,34vw,560px);justify-content:center}
.gal--big::after{display:none}
.gal--big a{flex-grow:0}
.gal a{position:relative;display:block;flex:var(--r) 1 calc(var(--r)*var(--h));aspect-ratio:var(--r);overflow:hidden;background:#d9ccb6;cursor:zoom-in}
.gal img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.gal a:hover img{transform:scale(1.03)}
.gal--refs a span{position:absolute;left:0;bottom:0;background:var(--primary-color);color:#fff;font:400 14px/1 var(--d-head);letter-spacing:.06em;padding:7px 10px}
@media (max-width:760px){.gal{--h:110px;gap:5px}}
.d-filter{display:flex;flex-wrap:wrap;gap:6px 22px;justify-content:center;margin-bottom:clamp(22px,3vw,38px)}
.d-filter button{background:none;border:0;border-bottom:2px solid transparent;padding:6px 2px;color:#2b1a12;font:400 clamp(17px,1.4vw,21px)/1.2 var(--d-head);letter-spacing:.05em;text-transform:uppercase;cursor:pointer;transition:color .25s,border-color .25s}
.d-filter button:hover{color:var(--primary-color)}
.d-filter button.is-on{color:var(--primary-color);border-color:var(--primary-color)}
#galleryMore[hidden]{display:none}
.lb{position:fixed;inset:0;z-index:100000;background:rgba(20,11,5,.95);display:none;align-items:center;justify-content:center}
.lb.is-on{display:flex}
.lb figure{margin:0;max-width:92vw;text-align:center}
.lb img{max-width:92vw;max-height:86vh;width:auto;height:auto;display:block;margin:auto}
.lb figcaption{color:#f3e2c6;font:400 16px/1.4 var(--d-head);letter-spacing:.06em;margin-top:8px;min-height:22px}
.lb button{position:absolute;background:none;border:0;color:#fff;font-size:52px;line-height:1;width:64px;height:64px;cursor:pointer}
.lb button:hover{color:#e4bb80}
.lb__x{top:10px;right:10px}
.lb__p{left:4px;top:50%;transform:translateY(-50%)}
.lb__n{right:4px;top:50%;transform:translateY(-50%)}

/* Memberships and recognition: heading, text, then a slideshow of logos */
.assoc__block{text-align:center;max-width:1180px;margin:0 auto}
.assoc__block+.assoc__block{margin-top:clamp(52px,6vw,88px);padding-top:clamp(40px,5vw,70px);border-top:1px solid rgba(255,255,255,.14)}
.assoc__block .d-h3{font-size:clamp(32px,3vw,46px);font-weight:300;margin-bottom:16px}
.assoc__list{list-style:none;padding:0;margin:0 auto;max-width:760px}
.assoc__list li{padding:3px 0;line-height:1.4}
.assoc__block .de-custom-nav{position:static!important;justify-content:center!important;gap:6px;margin:22px 0}
.assoc__tile{background:#fff;height:clamp(130px,13vw,180px);display:flex;align-items:center;justify-content:center;padding:18px clamp(14px,2vw,28px)}
.assoc__slides .assoc__tile img{display:block;width:auto;max-width:100%;max-height:100%;object-fit:contain}
.assoc__tile--dark{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.2);flex-direction:column;gap:12px;height:clamp(170px,15vw,210px)}
.assoc__slides .assoc__tile--dark img{max-height:62%}
.assoc__tile--dark span{font:400 clamp(15px,1.2vw,18px)/1.2 var(--d-head);letter-spacing:.04em;text-transform:uppercase;color:#f3e2c6}

/* Guest quotes */
.d-quotes{columns:2;column-gap:clamp(30px,5vw,80px)}
.d-quote{break-inside:avoid;margin:0 0 clamp(26px,3vw,44px);padding:clamp(16px,1.8vw,24px) 0 0;border-top:1px solid rgba(52,31,22,.24)}
.d-quote p{font:300 clamp(25px,2.2vw,34px)/1.22 var(--d-head);margin:0 0 12px;color:#2b1a12}
.d-who{font-size:17px;line-height:1.35}
@media (max-width:760px){.d-quotes{columns:1}}

/* Two photos edge to edge */
.d-duo img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}

/* Contact */
.ct{margin-top:22px}
.ct__row{padding:14px 0;border-top:1px solid rgba(52,31,22,.24)}
.ct__row:last-child{border-bottom:1px solid rgba(52,31,22,.24)}
.ct__row h3{font-weight:400;font-size:clamp(21px,1.7vw,25px);margin:0 0 4px;line-height:1.2}
.ct__row p{margin:0}
.enq--on{margin-top:14px;background:transparent;padding:0}
#enquire.col-lg-6{scroll-margin-top:110px}
#enquire.col-lg-6::after{display:none}
select.form-control{appearance:auto;cursor:pointer}
.enq-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.d-map{line-height:0}
.d-map iframe{width:100%;height:clamp(320px,38vw,480px);border:0;display:block}

/* Documents and legal pages */
.legal{max-width:860px;margin:0 auto}
.legal h2{font-size:clamp(28px,2.6vw,40px);font-weight:300;line-height:1.12;margin:clamp(28px,3vw,42px) 0 10px}
.legal h2:first-child{margin-top:0}
.legal h3{font-weight:400;font-size:clamp(23px,1.9vw,28px);line-height:1.2;margin:clamp(22px,2.4vw,32px) 0 6px}
.legal ul{padding-left:20px;margin:0 0 18px}
.legal li{padding:4px 0;line-height:1.45}
.legal__lead{font-size:clamp(20px,1.6vw,23px);line-height:1.4}
.legal blockquote{margin:6px 0 0;padding:4px 0 4px 18px;border-left:2px solid var(--primary-color);font:300 clamp(22px,1.9vw,28px)/1.25 var(--d-head);color:#2b1a12}
.legal__contact{margin-top:clamp(26px,3vw,40px);padding-top:16px;border-top:1px solid rgba(52,31,22,.24);font-size:17px}
.docs{margin:18px 0 22px}
.docs__row{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;padding:16px 0;border-top:1px solid rgba(52,31,22,.24);color:inherit;text-decoration:none}
.docs__row:last-child{border-bottom:1px solid rgba(52,31,22,.24)}
.docs__row h3{margin:0 0 4px}
.docs__row p{margin:0}
.docs__row span{font:400 15px/1 var(--d-head);letter-spacing:.07em;text-transform:uppercase;color:var(--primary-color);white-space:nowrap}
.docs__row:hover h3{color:var(--primary-color)}
.sign{margin:22px 0}
.sign>div{display:grid;grid-template-columns:2fr 1fr;gap:22px;margin-bottom:26px}
.sign span{display:block;border-top:1px solid #2b1a12;padding-top:6px;margin-top:34px;font-size:16px}
.sign span:empty{border-top:0}
.sign-intro{margin-top:24px;overflow-wrap:anywhere}
@media (max-width:560px){.docs__row{grid-template-columns:1fr;gap:8px}}
@media print{
  header,footer,#extra-wrap,#back-to-top,.ph,.d-noprint{display:none!important}
  body::before{display:none}
  .art{padding:0!important}
}
