:root{--forest:#172d32;--cream:#f4ebdd;--gold:#e8c392;--white:#faf8f3;--charcoal:#242822;--olive:#65704a;--serif:"Italiana",Georgia,serif;--sans:"DM Sans",Arial,sans-serif;--pad:clamp(1.25rem,5vw,5rem)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--white);color:var(--charcoal);font-family:var(--sans);margin:0;font-size:16px;line-height:1.65}img{max-width:100%;display:block}a{color:inherit}button,input,textarea{font:inherit}.shell{width:min(100% - 2.5rem,1380px);margin-inline:auto}.section-pad{padding:clamp(5rem,10vw,9rem) var(--pad)}.skip-link{z-index:100;background:var(--white);padding:.6rem 1rem;position:fixed;top:1rem;left:1rem;transform:translateY(-200%)}.skip-link:focus{transform:none}:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.eyebrow{text-transform:uppercase;letter-spacing:.25em;color:var(--olive);margin:0 0 1.25rem;font-size:.72rem;font-weight:600}h1,h2,h3{font-family:var(--serif);margin:0;font-weight:400;line-height:.98}h2{letter-spacing:-.035em;font-size:clamp(2.7rem,6vw,6rem)}em{color:var(--gold);font-weight:400}.hero{background:var(--forest);color:#fff;align-items:flex-end;min-height:100svh;display:flex;position:relative;overflow:hidden}.hero-image{object-fit:cover;object-position:55% center;width:100%;height:100%;animation:1.5s ease-out both heroReveal;position:absolute;inset:0}.hero-shade{background:linear-gradient(#0815178f 0%,#0815171a 36%,#081517bd 100%),linear-gradient(90deg,#08151773,#0000 72%);position:absolute;inset:0}.nav{z-index:2;justify-content:space-between;align-items:center;padding-top:1.15rem;display:flex;position:absolute;top:0;left:50%;transform:translate(-50%)}.nav img{width:150px;height:auto}.nav div{gap:2rem;display:flex}.nav div a{text-transform:uppercase;letter-spacing:.14em;font-size:.8rem;text-decoration:none}.hero-content{z-index:1;padding-bottom:clamp(4rem,8vh,7rem);animation:.8s ease-out .2s both rise;position:relative}.hero-location{text-transform:uppercase;letter-spacing:.28em;margin:0 0 1.2rem;font-size:.72rem}.hero-location span{color:var(--gold)}h1{letter-spacing:-.045em;max-width:1000px;font-size:clamp(3.35rem,8.5vw,8.4rem)}.hero-copy{color:#ffffffe6;max-width:600px;margin:1.5rem 0 1.7rem;font-size:clamp(1rem,1.5vw,1.2rem)}.booking-button{border:1px solid var(--forest);text-transform:uppercase;letter-spacing:.07em;background:var(--forest);color:#fff;border-radius:100px;justify-content:center;align-items:center;gap:1rem;min-height:56px;padding:.85rem 1.35rem;font-size:.74rem;font-weight:600;text-decoration:none;transition:all .25s;display:inline-flex}.booking-button span:last-child{font-size:1.35rem;line-height:0}.booking-button:hover{transform:translateY(-2px);box-shadow:0 10px 30px #0003}.booking-button.light{background:var(--cream);color:var(--forest);border-color:var(--cream)}.scroll-cue{display:none}.experience{background:var(--cream);gap:3rem;display:grid}.experience-copy{max-width:680px}.experience-copy>p:not(.eyebrow){color:#48504b;max-width:650px;margin:2rem 0}.experience-copy ul{margin:2rem 0 0;padding:0;list-style:none}.experience-copy li{border-bottom:1px solid #2428222e;padding:.65rem 0}.experience-copy li:before{content:"✓";border:1px solid var(--olive);width:1.45rem;height:1.45rem;color:var(--olive);border-radius:50%;place-items:center;margin-right:.85rem;font-size:.75rem;display:inline-grid}.experience-image{margin:0}.experience-image img{aspect-ratio:4/5;object-fit:cover;border-radius:180px 180px 1rem 1rem;width:100%}.experience-image figcaption{font-family:var(--serif);text-align:right;color:#6f6b62;margin-top:.8rem;font-style:italic}.gallery-section{background:var(--white)}.section-heading{text-align:center;max-width:900px;margin:0 auto 4rem}.section-heading>p:last-child{color:#68706b;max-width:540px;margin:1.5rem auto 0}.gallery-grid{scroll-snap-type:x mandatory;grid-auto-columns:82vw;grid-auto-flow:column;gap:1rem;padding-bottom:1rem;display:grid;overflow-x:auto}.gallery-item{scroll-snap-align:center;cursor:zoom-in;background:#ddd;border:0;border-radius:.25rem;min-height:60vh;padding:0;position:relative;overflow:hidden}.gallery-item img{object-fit:cover;width:100%;height:100%;transition:transform .6s}.gallery-item:hover img{transform:scale(1.025)}.gallery-item span{color:#fff;letter-spacing:.08em;text-transform:uppercase;background:#172d32e0;border-radius:99px;padding:.45rem .9rem;font-size:.72rem;position:absolute;bottom:1rem;left:1.1rem}.signature{background:var(--forest);color:#fff}.signature-intro{margin-bottom:4rem}.signature-list{border-top:1px solid #fff3}.signature-item{border-bottom:1px solid #fff3;grid-template-columns:2rem 1fr;align-items:center;gap:1rem;padding:2rem 0;display:grid}.signature-item>span{color:var(--gold);align-self:start;font-size:.7rem}.signature-item h3{font-size:2.15rem}.signature-item p{color:#ffffffad;max-width:520px;margin:.6rem 0 0}.signature-item img,.photo-needed{object-fit:cover;grid-column:1/-1;width:100%;height:220px;margin-top:1rem}.photo-needed{color:#ffffff85;text-transform:uppercase;letter-spacing:.12em;background:linear-gradient(135deg,#e8c3920d,#ffffff05);border:1px dashed #e8c39266;place-items:center;display:grid}.reassurance{background:#efe3d1;gap:1rem;display:grid}.reassurance-mark{font:12rem/1 var(--serif);color:var(--gold);height:6rem}.reassurance>div:last-child{max-width:760px}.reassurance h2{font-size:clamp(2.6rem,5vw,5rem)}.reassurance p:not(.eyebrow){color:#5c625d;margin:1.5rem 0}.reassurance a{text-underline-offset:5px}.details{background:var(--white)}.details-head{margin-bottom:4rem}.details-grid{background:#cbc7bd;border:1px solid #cbc7bd;gap:1px;display:grid}.details-grid article{background:var(--white);padding:2rem}.details-grid span{color:var(--olive);font-size:.7rem}.details-grid h3{margin:1.2rem 0;font-size:2rem}.details-grid p{color:#5c625d}.details-grid a{text-underline-offset:4px;font-size:.82rem}.final-cta{text-align:center;color:#fff;place-items:center;min-height:80svh;display:grid;position:relative;overflow:hidden}.final-cta>img,.final-shade{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.final-shade{background:#0a1a1c9e}.final-content{z-index:1;padding:5rem 1.25rem;position:relative}.final-content .eyebrow{color:var(--gold)}.final-content p:not(.eyebrow){max-width:500px;margin:1.5rem auto 2rem}.footer{align-items:center;gap:2rem;padding-block:3rem;display:grid}.footer-logo img{width:180px}.footer p{color:#68706b;margin:.2rem 0;font-size:.8rem}.footer nav{flex-wrap:wrap;gap:1.3rem;display:flex}.footer nav a{text-transform:uppercase;letter-spacing:.08em;text-underline-offset:5px;font-size:.8rem}.lightbox,.enquiry-dialog{background:var(--forest);color:#fff;border:0;width:100vw;max-width:none;height:100dvh;max-height:none;padding:0}.lightbox::backdrop,.enquiry-dialog::backdrop{background:#000c}.lightbox figure{place-items:center;width:100%;height:100%;margin:0;padding:4rem 1rem;display:grid}.lightbox figure img{max-width:calc(100vw - 2rem);max-height:calc(100dvh - 8rem)}.lightbox figcaption{position:absolute;bottom:1.2rem}.lightbox-close,.dialog-close{z-index:2;color:#fff;background:0 0;border:1px solid #ffffff80;border-radius:50%;width:44px;height:44px;font-size:1.6rem;position:absolute;top:1rem;right:1rem}.lightbox-nav{z-index:2;background:var(--cream);border:0;border-radius:50%;width:44px;height:44px;font-size:1.2rem;position:absolute;top:50%}.lightbox-prev{left:1rem}.lightbox-next{right:1rem}.enquiry-dialog{border-radius:.5rem;width:min(100% - 2rem,680px);height:auto;max-height:calc(100dvh - 2rem);padding:clamp(2rem,6vw,4rem)}.enquiry-dialog h2{font-size:3.5rem}.enquiry-dialog>p:not(.eyebrow){color:#ffffffb3}.enquiry-form{gap:1rem;margin-top:2rem;display:grid}.enquiry-form label{text-transform:uppercase;letter-spacing:.1em;gap:.35rem;font-size:.8rem;display:grid}.enquiry-form input,.enquiry-form textarea{color:#fff;text-transform:none;letter-spacing:0;background:#ffffff14;border:1px solid #ffffff59;border-radius:.2rem;padding:.8rem}.enquiry-form .honey{position:absolute;left:-9999px}.submit-button{background:var(--gold);color:var(--forest);border:0;border-radius:99px;padding:1rem;font-weight:600}.submit-button:disabled{opacity:.6}.form-status{min-height:1.5rem;margin:0}.legal{max-width:800px}.legal h1{color:var(--forest);margin:2rem 0;font-size:clamp(3rem,8vw,6rem)}.legal p{margin:1.5rem 0}.js .reveal{opacity:0;transition:opacity .8s,transform .8s;transform:translateY(25px)}.js .reveal.is-visible{opacity:1;transform:none}@media (width>=760px){.experience{grid-template-columns:1.05fr .95fr;align-items:center}.gallery-grid{grid-template-columns:repeat(12,1fr);grid-auto-rows:250px;grid-auto-flow:row;overflow:visible}.gallery-item{grid-column:span 4;min-height:0}.gallery-wide{grid-column:span 8}.gallery-tall{grid-row:span 2}.signature-item{grid-template-columns:3rem 1fr 42%;min-height:270px}.signature-item img,.photo-needed{grid-column:3;height:230px;margin:0}.reassurance{grid-template-columns:180px 1fr}.details-grid{grid-template-columns:repeat(3,1fr)}.footer{grid-template-columns:1fr 1fr auto}}@media (width>=1100px){.nav img{width:190px}.hero-content{padding-left:clamp(0rem,5vw,5rem)}.experience{padding-inline:max(var(--pad),calc((100vw - 1300px)/2))}.experience-image img{aspect-ratio:4/4.6}.gallery-section{padding-inline:max(var(--pad),calc((100vw - 1450px)/2))}.signature{padding-inline:max(var(--pad),calc((100vw - 1400px)/2));grid-template-columns:.8fr 1.2fr;gap:8vw;display:grid}.signature-intro{align-self:start;position:sticky;top:4rem}.signature-item h3{font-size:2.7rem}.details,.reassurance{padding-inline:max(var(--pad),calc((100vw - 1300px)/2))}.scroll-cue{z-index:2;text-transform:uppercase;letter-spacing:.18em;align-items:center;gap:.8rem;font-size:.65rem;text-decoration:none;display:flex;position:absolute;bottom:2.5rem;right:2.5rem}.scroll-cue i{background:#fff;width:42px;height:1px;display:block}.footer{padding-inline:0}}@media (width<=600px){.nav div{display:none}.hero{min-height:760px}.hero-image{object-position:62% center}.hero-content{padding-bottom:3.5rem}.hero-location{font-size:.64rem}.hero-copy{max-width:330px;line-height:1.5}.booking-button{width:100%;max-width:360px;font-size:.68rem}.gallery-section{padding-inline:0}.section-heading,.gallery-grid{padding-inline:1.25rem}.lightbox-nav{top:auto;bottom:1rem}.lightbox figcaption{bottom:1.4rem}.lightbox-prev{left:calc(50% - 80px)}.lightbox-next{right:calc(50% - 80px)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}.js .reveal{opacity:1;transform:none}}@keyframes heroReveal{0%{opacity:0;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.hero-image{object-position:center 54%}.nav img{width:210px}.hero-facts{color:#ffffffd1;letter-spacing:.11em;text-transform:uppercase;align-items:center;gap:.55rem;margin:-.55rem 0 1.35rem;font-size:.72rem;line-height:1.4;display:flex}.hero-facts span{color:var(--gold)}.booking-button{padding-inline:1.55rem}.booking-assurance{letter-spacing:.06em;color:#ffffffb8!important;margin:.65rem 0 0!important;font-size:.7rem!important}.gallery-section{background:var(--forest);padding:0}.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:42vw;grid-auto-flow:row;gap:3px;padding:0;display:grid;overflow:hidden}.gallery-item{scroll-snap-align:none;border-radius:0;min-height:0}.gallery-item:hover img{filter:saturate(1.08);transform:scale(1.035)}.gallery-wide{grid-column:span 2}.gallery-tall{grid-row:span 2}.footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem 2rem;min-height:120px;padding-block:1.5rem;display:flex}.footer-identity{flex-direction:column;line-height:1.45;display:flex}.footer-identity strong{font-family:var(--serif);font-size:1.15rem;font-weight:400}.footer-identity span,.footer>p{color:#68706b;font-size:.74rem}.footer>p{margin:0}.footer nav{gap:1.3rem;display:flex}@media (width>=760px){.gallery-grid{grid-template-columns:repeat(12,1fr);grid-auto-rows:min(28vw,390px)}.gallery-item{grid-column:span 4}.gallery-wide{grid-column:span 8}.gallery-tall{grid-row:span 2}.footer{display:flex}}@media (width>=1100px){.nav img{width:280px}.gallery-section{padding-inline:0}}@media (width<=600px){.nav img{width:180px}.hero-image{object-position:56% center}.hero-content{padding-bottom:2.6rem}.hero-copy{margin-bottom:1.25rem}.hero-facts{letter-spacing:.075em;white-space:nowrap;gap:.4rem;margin-bottom:1.05rem;font-size:.62rem}.gallery-grid{padding:0}.gallery-item:nth-child(4),.gallery-item:nth-child(6){grid-column:span 2}.footer{justify-content:flex-start}.footer>p{flex-basis:100%}}
