/* style.min.css */
:root{--stiltz-bg:#FFFFFF;--stiltz-paper:#FAF8F3;--stiltz-soft:#FAF8F3;--stiltz-sand:#FAF8F3;--stiltz-white:#FFFFFF;--stiltz-ink:#242320;--stiltz-secondary-text:#4A4640;--stiltz-muted:#756F66;--stiltz-timber:#7E6650;--stiltz-driftwood:#B79E83;--stiltz-reed:#7D8672;--stiltz-blue:#61798C;--stiltz-blue-soft:#53697C;--stiltz-charcoal:#242320;--stiltz-border:rgba(36,35,32,.12);--stiltz-light-divider:rgba(36,35,32,.08);--stiltz-shadow:0 18px 44px rgba(36, 35, 32, .08);--stiltz-serif:'Cormorant Garamond',Georgia,serif;--stiltz-sans:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}*{box-sizing:border-box}html{overflow-x:hidden;scroll-behavior:smooth}body{margin:0;background:var(--stiltz-bg);color:var(--stiltz-ink);font-family:var(--stiltz-sans);font-size:clamp(16px, 1vw, 18px);line-height:1.85;overflow-x:hidden;padding-bottom:92px;text-rendering:optimizeLegibility}img{max-width:100%;display:block;height:auto}picture{display:contents}a{color:inherit;text-decoration:none}p{max-width:70ch;margin:0 0 1.4rem}.stiltz-shell{width:min(1400px,calc(100% - 48px));margin-inline:auto}.stiltz-wide{width:min(1600px,calc(100% - 32px));margin-inline:auto}.eyebrow{color:#8e6b45;font-family:Allura,cursive;font-size:36px;font-weight:400;letter-spacing:0;line-height:1;margin-bottom:12px;padding-bottom:0;text-transform:capitalize}.lead{font-size:clamp(18px, 2.1vw, 22px);line-height:1.8;max-width:620px}h1,h2,h3{font-family:var(--stiltz-serif);font-weight:500;line-height:1.05;margin:0;color:var(--stiltz-ink);text-wrap:balance}h1{font-size:clamp(48px, 8vw, 84px);max-width:820px}h2{font-size:clamp(40px, 5.8vw, 64px)}h3{font-size:clamp(28px, 3.5vw, 38px)}.button,.wp-block-button__link{align-items:center;border:1px solid var(--stiltz-charcoal);border-radius:3px;display:inline-flex;font-size:15px;font-weight:600;gap:12px;justify-content:center;letter-spacing:.08em;min-height:48px;padding:14px 34px;text-transform:uppercase;transition:background .2s ease,color .2s ease,border-color .2s ease}.button.primary{background:var(--stiltz-charcoal);color:#fff}.button.primary:hover{background:#3a3833;border-color:#3a3833}.button.secondary{background:0 0;color:var(--stiltz-charcoal)}.button.secondary:hover{background:var(--stiltz-charcoal);color:#fff}.text-link{border-bottom:1px solid rgba(126,102,80,.42);color:var(--stiltz-timber);display:inline-block;font-size:15px;font-weight:600;letter-spacing:.08em;padding-bottom:7px;text-transform:uppercase}.text-link:hover{border-color:var(--stiltz-timber);color:var(--stiltz-charcoal)}.site-header{background:rgba(0,0,0,.2);color:#fff;left:0;min-height:166px;padding:0;position:fixed;right:0;top:0;transition:background .28s ease,color .28s ease,min-height .28s ease,box-shadow .28s ease;z-index:100}.admin-bar .site-header{top:32px}.header-frame{display:grid;grid-template-columns:190px minmax(0,1fr) 188px;grid-template-rows:102px 64px;min-height:166px;transition:grid-template-rows .28s ease,min-height .28s ease;width:100%}.site-logo{align-items:center;display:inline-flex;justify-self:start}.header-mark{align-items:center;background:0 0;border-bottom:1px solid rgba(248,245,239,.24);border-right:1px solid rgba(248,245,239,.28);display:flex;grid-row:1/span 2;justify-content:center;justify-self:stretch;transition:background .28s ease,border-color .28s ease}.header-mark img{filter:drop-shadow(0 2px 10px rgba(0,0,0,.24));max-height:74px;object-fit:contain;transition:filter .28s ease,max-height .28s ease;width:92px}.header-mark img.header-mark-bird{transform:scaleX(-1)}.header-mark img.header-mark-logo{display:none}.header-main{display:grid;grid-column:2;grid-row:1/span 2;grid-template-rows:102px 64px;min-width:0;transition:grid-template-rows .28s ease}.header-brand{align-items:center;border-bottom:1px solid rgba(248,245,239,.24);display:flex;flex-direction:column;gap:6px;justify-content:center;min-width:0;padding:6px 20px 8px;text-align:center;transition:opacity .22s ease,visibility .22s ease,width .22s ease}.header-wordmark{align-items:center;display:inline-flex;font-family:var(--stiltz-serif);font-size:clamp(44px, 4.1vw, 64px);font-weight:500;justify-content:center;letter-spacing:.16em;line-height:.9;text-transform:none;text-shadow:0 2px 14px rgba(0,0,0,.26);transition:color .28s ease,opacity .22s ease,visibility .22s ease}.header-slogan{color:#e4c16f;display:block;font-size:clamp(10px, .75vw, 13px);font-weight:800;letter-spacing:.22em;line-height:1.15;text-shadow:0 2px 8px rgba(0,0,0,.42);text-transform:uppercase}.main-nav{align-items:center;border-bottom:1px solid rgba(248,245,239,.24);display:flex;justify-content:center;min-width:0;transition:border-color .28s ease}.main-nav ul{align-items:center;display:flex;gap:clamp(22px,2.2vw,42px);justify-content:center;list-style:none;margin:0;min-width:0;padding:0}.main-nav a{color:currentColor;display:inline-flex;font-size:13px;font-weight:500;letter-spacing:.12em;line-height:1;padding:26px 0 23px;position:relative;text-shadow:0 1px 10px rgba(0,0,0,.32);text-transform:uppercase}.main-nav a::after{background:currentColor;bottom:14px;content:'';height:1px;left:50%;opacity:0;position:absolute;transform:translateX(-50%);transition:opacity .2s ease,width .2s ease;width:0}.main-nav .current-menu-item>a::after,.main-nav a:hover::after{opacity:1;width:34px}.menu-toggle{align-items:center;background:0 0;border:0;color:currentColor;cursor:pointer;display:none;height:52px;justify-content:center;padding:0;width:52px}.menu-toggle-lines,.menu-toggle-lines::after,.menu-toggle-lines::before{background:currentColor;content:'';display:block;height:2px;transition:transform .2s ease,opacity .2s ease;width:28px}.menu-toggle-lines{position:relative}.menu-toggle-lines::after,.menu-toggle-lines::before{left:0;position:absolute}.menu-toggle-lines::before{top:-7px}.menu-toggle-lines::after{top:7px}.menu-toggle[aria-expanded=true] .menu-toggle-lines{background:0 0}.menu-toggle[aria-expanded=true] .menu-toggle-lines::before{transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-toggle-lines::after{transform:translateY(-7px) rotate(-45deg)}.screen-reader-text{clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.header-book-panel{align-items:center;background:0 0;border-bottom:1px solid rgba(248,245,239,.24);border-left:1px solid rgba(248,245,239,.24);color:#fff;display:flex;font-family:var(--stiltz-serif);font-size:28px;font-weight:600;grid-column:3;grid-row:1/span 2;justify-content:center;letter-spacing:.12em;min-width:0;text-shadow:0 2px 12px rgba(0,0,0,.28);text-transform:uppercase;transition:background .28s ease,color .28s ease,border-color .28s ease}.header-book-panel:hover{background:rgba(36,35,32,.76);color:#fff}.site-header.is-condensed{background:#faf8f3;box-shadow:0 14px 34px rgba(36,35,32,.08);color:var(--stiltz-ink);min-height:74px}.site-header.is-condensed .header-frame{grid-template-columns:226px minmax(0,1fr) 188px;grid-template-rows:74px;min-height:74px}.site-header.is-condensed .header-mark{background:0 0;border-bottom:0;border-color:var(--stiltz-light-divider);box-sizing:border-box;grid-row:1;justify-content:flex-start;padding-left:26px}.site-header.is-condensed .header-mark img{filter:none;max-height:50px;width:68px}.site-header.is-condensed .header-mark img.header-mark-bird{display:none}.site-header.is-condensed .header-mark img.header-mark-logo{display:block;max-height:60px;width:174px}.site-header.is-condensed .header-main{align-items:center;display:flex;grid-row:1;grid-template-rows:none;justify-content:center}.site-header.is-condensed .header-brand{opacity:0;overflow:hidden;padding:0;visibility:hidden;width:0}.site-header.is-condensed .header-wordmark{opacity:0;visibility:hidden;width:0}.site-header.is-condensed .main-nav{border-bottom:0}.site-header.is-condensed .main-nav a{padding:30px 0 29px;text-shadow:none}.site-header.is-condensed .main-nav a::after{bottom:20px}.site-header.is-condensed .header-book-panel{background:var(--stiltz-charcoal);border-bottom:0;border-color:var(--stiltz-charcoal);color:#fff;font-family:var(--stiltz-sans);font-size:14px;font-weight:700;grid-row:1;letter-spacing:.16em;text-shadow:none}.site-header.is-condensed .header-book-panel:hover{background:#3a3833}.hero{align-items:end;background:#6d6a63;color:#fff;display:grid;min-height:100vh;min-height:100svh;overflow:hidden;padding:176px 0 90px;position:relative}.hero-media{inset:0;position:absolute;z-index:0}.hero-media img{height:100%;object-fit:cover;object-position:center;width:100%}.hero::after{background:linear-gradient(180deg,rgba(0,0,0,.28),rgba(0,0,0,.1) 40%,rgba(0,0,0,.58));content:'';inset:0;position:absolute;z-index:1}.hero .stiltz-shell,.hero-caption{position:relative;z-index:2}.hero h1,.hero p{color:#fff}.hero .button.secondary{border-color:rgba(255,255,255,.72);color:#fff}.hero .button.secondary:hover{background:#fff;border-color:#fff;color:var(--stiltz-charcoal)}.hero .lead{margin-top:32px;max-width:560px}.hero-actions{display:flex;flex-wrap:wrap;gap:18px;margin-top:36px}.hero-caption{border-left:1px solid rgba(255,255,255,.38);bottom:90px;color:rgba(255,255,255,.82);font-size:14px;letter-spacing:.11em;padding-left:18px;position:absolute;right:max(24px,calc((100vw - 1400px)/ 2));text-transform:uppercase;writing-mode:vertical-rl}.section{padding:140px 0}.intro-grid{align-items:center;display:grid;gap:clamp(50px,8vw,120px);grid-template-columns:.9fr 1.1fr}.intro-copy{padding-left:min(7vw,90px)}.intro-image-stack{min-height:650px;position:relative}.intro-image-stack img:first-child{height:560px;object-fit:cover;width:74%;box-shadow:var(--stiltz-shadow)}.intro-image-stack img:last-child{bottom:0;height:360px;object-fit:cover;position:absolute;right:0;width:52%;border:18px solid var(--stiltz-bg)}.architecture{background:var(--stiltz-soft);color:var(--stiltz-secondary-text);padding:150px 0}.architecture h2,.architecture h3{color:var(--stiltz-ink)}.arch-grid{display:grid;gap:70px;grid-template-columns:1.1fr .9fr;align-items:start}.arch-card{border-top:1px solid rgba(255,255,255,.18);margin-top:64px;padding-top:36px;max-width:520px}.arch-photo{margin-top:70px}.arch-photo img{aspect-ratio:4/5;object-fit:cover;width:100%}.wow-boardwalk{min-height:92vh;overflow:hidden;position:relative}.wow-boardwalk>img,.wow-boardwalk>picture>img{height:92vh;object-fit:cover;object-position:center;width:100%}.wow-boardwalk::after{background:linear-gradient(90deg,rgba(30,30,30,.7),rgba(30,30,30,.18) 48%,rgba(30,30,30,.04));content:'';inset:0;position:absolute}.wow-copy{bottom:12vh;color:#fff;left:max(24px,calc((100vw - 1400px)/ 2));max-width:560px;position:absolute;z-index:1}.wow-copy h2,.wow-copy p{color:#fff}.wow-copy p{font-size:clamp(19px, 2vw, 24px);line-height:1.75;max-width:520px}.stay-grid{display:grid;gap:42px;grid-template-columns:1.1fr .9fr;align-items:end}.stay-feature img{aspect-ratio:4/3;object-fit:cover;width:100%}.stay-panel{background:var(--stiltz-paper);box-shadow:var(--stiltz-shadow);margin-left:-150px;margin-bottom:-90px;padding:clamp(38px,5vw,78px);position:relative;z-index:2}.meta-row{border-top:1px solid var(--stiltz-border);display:grid;gap:22px;grid-template-columns:repeat(3,1fr);margin-top:44px;padding-top:28px}.meta-row span{color:var(--stiltz-timber);display:block;font-size:13px;letter-spacing:.18em;text-transform:uppercase}.meta-row strong{display:block;font-family:var(--stiltz-serif);font-size:25px;font-weight:500;line-height:1.2;margin-top:8px}.experiences{padding-top:190px}.experience-layout{display:grid;gap:80px;grid-template-columns:.75fr 1.25fr}.experience-list{border-top:1px solid var(--stiltz-border);margin-top:44px}.experience-item{border-bottom:1px solid var(--stiltz-border);padding:28px 0}.experience-item h3{font-family:var(--stiltz-sans);font-size:22px;font-weight:600;line-height:1.35}.experience-item p{color:var(--stiltz-muted);font-size:16px;margin:10px 0 0}.experience-photo img{height:760px;object-fit:cover;width:100%}.wildlife-pause{background:var(--stiltz-sand);padding:150px 0}.wildlife-inner{display:grid;gap:42px;grid-template-columns:.48fr 1fr}.wildlife-inner h2{max-width:520px}.wildlife-inner p{align-self:end;font-family:var(--stiltz-serif);font-size:clamp(32px, 4.2vw, 56px);line-height:1.15;margin:0;max-width:820px}.gallery-preview{background:var(--stiltz-soft)}.gallery-head{align-items:end;display:flex;justify-content:space-between;gap:32px;margin-bottom:70px}.gallery-mosaic{display:grid;gap:26px;grid-template-columns:1.18fr .72fr .95fr;align-items:start}.gallery-mosaic img{object-fit:cover;width:100%}.gallery-mosaic img:first-child{aspect-ratio:4/5;margin-top:80px}.gallery-mosaic img:nth-child(2){aspect-ratio:1/1;width:86%}.gallery-mosaic img:nth-child(3){aspect-ratio:4/3;margin-top:150px}.gallery-mosaic img:nth-child(4){aspect-ratio:16/9;grid-column:2/span 2;width:82%;justify-self:end}.quote-section{padding:190px 0}.quote{font-family:var(--stiltz-serif);font-size:clamp(44px, 6.2vw, 82px);line-height:1.04;max-width:1180px;position:relative}.quote span{color:var(--stiltz-timber);font-size:1.35em;line-height:0;margin-right:10px}.quote-source{color:var(--stiltz-muted);font-size:14px;letter-spacing:.18em;margin-top:36px;text-transform:uppercase}.location-stage{display:grid;grid-template-columns:1fr 360px;position:relative}.location-photo{grid-column:1/-1}.location-photo img{aspect-ratio:16/7;object-fit:cover;width:100%}.location-card{align-self:end;background:var(--stiltz-paper);box-shadow:var(--stiltz-shadow);grid-column:1;grid-row:1;justify-self:start;margin:0 0 -70px 70px;max-width:470px;padding:58px;position:relative;z-index:2}.location-map{align-self:end;background:var(--stiltz-paper);box-shadow:var(--stiltz-shadow);grid-column:2;grid-row:1;margin:0 70px -45px 0;padding:14px;position:relative;z-index:3}.location-map img{width:100%}.final-cta{background-image:linear-gradient(rgba(30,30,30,.38),rgba(30,30,30,.5)),var(--cta-image);background-position:center;background-size:cover;color:#fff;min-height:78vh;padding:220px 0;text-align:center}.final-cta h2,.final-cta p{color:#fff;margin-left:auto;margin-right:auto}.final-cta .lead{margin-top:30px}.final-cta .button{margin-top:30px}.site-footer{background:#fff;border-top:1px solid var(--stiltz-light-divider);color:var(--stiltz-ink);padding:2px 0 0}.footer-link-row{align-items:center;border-bottom:1px solid rgba(36,35,32,.18);border-top:1px solid rgba(36,35,32,.18);display:flex;flex-wrap:wrap;gap:clamp(22px,5.2vw,78px);justify-content:center;min-height:122px}.footer-link-row a{color:#171717;font-size:13px;font-weight:500;letter-spacing:.12em;line-height:1.2;text-decoration:none;text-transform:uppercase;transition:color .2s ease;white-space:nowrap}.footer-link-row a:hover{color:var(--stiltz-timber)}.footer-recognition{align-items:center;display:grid;gap:64px;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);padding:48px 0 52px}.footer-recognition h3{color:#171717;font-family:var(--stiltz-sans);font-size:12px;font-weight:600;letter-spacing:.12em;margin:0 0 20px;text-transform:uppercase}.footer-awards-list{align-items:start;display:flex;flex-wrap:nowrap;gap:clamp(12px,1.2vw,18px)}.footer-awards-list a,.footer-sister-lodge a{align-items:center;display:inline-flex;justify-content:center}.footer-awards-list a{color:#171717;flex:0 0 clamp(96px,7vw,108px);flex-direction:column;gap:10px;text-align:center;text-decoration:none}.footer-awards-list img{display:block;height:90px;max-width:108px;object-fit:contain;opacity:1;width:auto}.footer-award-label{display:block;font-size:10px;font-weight:700;letter-spacing:.07em;line-height:1.25;max-width:108px;text-transform:uppercase}.footer-awards-list a:hover .footer-award-label{color:var(--stiltz-timber)}.footer-sister-lodge{justify-self:end;text-align:right}.footer-sister-lodge img{display:block;height:auto;margin-left:auto;max-height:84px;max-width:min(320px,100%);object-fit:contain;width:280px}.footer-minimal{align-items:center;display:grid;gap:18px;grid-template-columns:minmax(0,1fr) auto auto;min-height:76px;position:relative}.footer-minimal::before{background:#faf8f3;border-top:1px solid var(--stiltz-light-divider);content:'';inset:0 50%;margin-inline:-50vw;position:absolute;z-index:0}.footer-minimal>*{position:relative;z-index:1}.footer-built-by,.footer-credit{align-items:center;color:var(--stiltz-secondary-text);display:flex;flex-wrap:wrap;font-size:12px;font-weight:500;gap:8px 18px;letter-spacing:.12em;line-height:1.4;text-transform:uppercase}.footer-built-by{justify-content:flex-end}.footer-built-by a,.footer-credit a{color:var(--stiltz-ink);text-decoration:none;transition:color .2s ease}.footer-built-by a:hover,.footer-credit a:hover{color:var(--stiltz-timber)}.footer-social{align-items:center;display:flex;gap:10px;justify-content:flex-end}.footer-social-top{justify-content:center;padding:30px 0 22px}.footer-social a{align-items:center;background:#3a3833;border:1px solid #3a3833;border-radius:50%;color:#fff;display:inline-flex;height:34px;justify-content:center;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease;width:34px}.footer-social a:hover{background:var(--stiltz-charcoal);border-color:var(--stiltz-charcoal);color:#fff;transform:translateY(-1px)}.footer-social svg{display:block;fill:currentColor;height:16px;width:16px}@media (min-width:981px){.footer-minimal{width:min(1400px,calc(100% - 48px))}}.award-lightbox{align-items:center;background:rgba(16,15,13,.88);display:grid;inset:0;justify-items:center;opacity:0;padding:clamp(20px,4vw,58px);pointer-events:none;position:fixed;transition:opacity .22s ease;z-index:260}.award-lightbox.is-open{opacity:1;pointer-events:auto}.award-lightbox-frame{display:grid;gap:16px;justify-items:center;margin:0;max-height:min(86vh,900px);max-width:min(720px,92vw);position:relative}.award-lightbox-frame img{background:#fff;box-shadow:0 24px 70px rgba(0,0,0,.34);display:block;max-height:calc(86vh - 96px);max-width:100%;object-fit:contain;padding:clamp(12px,2vw,18px);width:auto}.award-lightbox-frame figcaption{color:rgba(255,255,255,.9);font-size:14px;line-height:1.5;text-align:center}.award-lightbox-close{align-items:center;background:#faf8f3;border:0;border-radius:50%;color:var(--stiltz-ink);cursor:pointer;display:inline-flex;font-family:var(--stiltz-serif);font-size:32px;height:48px;justify-content:center;line-height:1;position:fixed;right:28px;top:24px;transition:background .2s ease,color .2s ease,transform .2s ease;width:48px;z-index:2}.award-lightbox-close:focus-visible,.award-lightbox-close:hover{background:#fff;color:var(--stiltz-timber);outline:0;transform:scale(1.04)}body.award-lightbox-open{overflow:hidden}.sticky-booking-bar{background:#faf8f3;border-top:1px solid var(--stiltz-light-divider);bottom:0;box-shadow:0 -14px 34px rgba(36,35,32,.08);color:var(--stiltz-ink);left:0;opacity:0;pointer-events:none;position:fixed;right:0;transform:translateY(100%);transition:opacity .28s ease,transform .28s ease;z-index:95}.sticky-booking-bar.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.sticky-booking-inner{align-items:center;display:grid;gap:clamp(22px,3.8vw,70px);grid-template-columns:auto minmax(260px,330px) minmax(260px,330px) auto;justify-content:center;min-height:92px;padding:16px 28px}.sticky-booking-title{font-size:15px;font-weight:600;letter-spacing:.13em;line-height:1.2;text-transform:uppercase;white-space:nowrap}.sticky-booking-field{align-items:center;border-bottom:1px solid rgba(36,35,32,.35);display:flex;font-size:15px;font-weight:500;gap:14px;justify-content:space-between;letter-spacing:.08em;line-height:1.2;min-height:46px;padding:0 0 12px;transition:border-color .2s ease,color .2s ease}.sticky-booking-field:hover{border-color:var(--stiltz-timber);color:var(--stiltz-timber)}.sticky-booking-field svg{fill:currentColor;flex:0 0 auto;height:17px;width:17px}.sticky-booking-submit{align-items:center;background:var(--stiltz-charcoal);color:#fff;display:inline-flex;font-size:15px;font-weight:600;justify-content:center;letter-spacing:.08em;min-height:50px;min-width:100px;padding:14px 24px;transition:background .2s ease,color .2s ease}.sticky-booking-submit:hover{background:#3a3833;color:#fff}.hero-booking-mockup{align-items:stretch;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(250,248,243,.94);border:1px solid rgba(255,255,255,.34);border-top:3px solid rgba(126,102,80,.72);bottom:clamp(34px,5vh,62px);box-shadow:0 24px 58px rgba(0,0,0,.24);color:var(--stiltz-ink);display:grid;gap:12px;grid-template-columns:1fr;max-width:390px;padding:16px;position:absolute;right:clamp(40px,5vw,92px);width:min(390px,calc(100% - 96px));z-index:2}.hero-booking-heading{border-bottom:1px solid rgba(36,35,32,.14);display:grid;gap:8px;min-width:0;padding:8px 6px 14px;place-content:center start}.hero-booking-field span,.hero-booking-heading span{color:var(--stiltz-timber);display:block;font-size:10px;font-weight:700;letter-spacing:.16em;line-height:1.1;text-transform:uppercase}.hero-booking-heading strong{color:var(--stiltz-ink);display:block;font-family:var(--stiltz-serif);font-size:clamp(25px, 2.1vw, 34px);font-weight:500;letter-spacing:0;line-height:1;max-width:none}.hero-booking-fields{display:grid;gap:1px;grid-template-columns:repeat(2,minmax(0,1fr))}.hero-booking-field{appearance:none;background:#fff;border:1px solid rgba(36,35,32,.1);border-radius:0;color:var(--stiltz-ink);cursor:default;display:grid;font-family:var(--stiltz-sans);gap:7px;min-height:76px;min-width:0;padding:14px 12px;text-align:left}.hero-booking-field strong{color:var(--stiltz-ink);display:block;font-size:15px;font-weight:600;letter-spacing:.02em;line-height:1.15;min-width:0;overflow-wrap:anywhere}.hero-booking-submit{align-items:center;background:var(--stiltz-charcoal);color:#fff;display:inline-flex;font-size:12px;font-weight:700;justify-content:center;letter-spacing:.1em;min-height:54px;padding:16px 22px;text-align:center;text-transform:uppercase;transition:background .2s ease,color .2s ease,transform .2s ease;white-space:nowrap}.hero-booking-submit:focus-visible,.hero-booking-submit:hover{background:#3a3833;color:#fff;outline:0;transform:translateY(-1px)}.scroll-to-top{align-items:center;background:#faf8f3;border:1px solid rgba(36,35,32,.18);border-radius:50%;box-shadow:0 10px 24px rgba(36,35,32,.1);color:var(--stiltz-charcoal);cursor:pointer;display:inline-flex;height:48px;justify-content:center;justify-self:end;opacity:1;padding:0;pointer-events:auto;position:relative;transform:none;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease;width:48px;z-index:1}.scroll-to-top.is-visible{opacity:1;pointer-events:auto;transform:none}.scroll-to-top svg{display:block;fill:currentColor;height:22px;width:22px}.scroll-to-top:focus-visible,.scroll-to-top:hover{background:var(--stiltz-charcoal);border-color:var(--stiltz-charcoal);color:#fff;outline:0}.scroll-to-top:focus-visible{box-shadow:0 0 0 3px rgba(126,102,80,.28),0 16px 34px rgba(36,35,32,.12)}@media (min-width:981px){.scroll-to-top,.scroll-to-top.is-visible{transform:translateX(50px)}}@media (prefers-reduced-motion:reduce){.sticky-booking-bar{transition:none}.scroll-to-top{transition:none}}.content-page{padding:170px 0 110px}.content-page .entry-content{background:var(--stiltz-paper);padding:clamp(32px,6vw,82px)}@media (max-width:980px){body{padding-bottom:126px}.site-header{background:#faf8f3;color:var(--stiltz-ink);min-height:144px}.header-frame{grid-template-columns:minmax(0,1fr) 84px;grid-template-rows:88px 56px;min-height:144px;position:relative}.header-mark{background:0 0;border-bottom:1px solid var(--stiltz-light-divider);border-right:1px solid var(--stiltz-light-divider);grid-column:1;grid-row:1;justify-content:flex-start;padding-left:clamp(8px,2vw,18px)}.header-mark img{filter:none;max-height:58px;width:74px}.header-mark img.header-mark-bird{display:none}.header-mark img.header-mark-logo{display:block;max-height:74px;transform:translateX(-32px);width:min(340px,66vw)}.header-main{align-items:center;border-bottom:1px solid var(--stiltz-light-divider);display:flex;grid-column:2;grid-row:1;justify-content:center;min-width:0}.header-brand{display:none}.header-wordmark{display:none}.menu-toggle{display:inline-flex}.main-nav{background:#faf8f3;border:1px solid var(--stiltz-light-divider);box-shadow:0 18px 40px rgba(36,35,32,.1);color:var(--stiltz-ink);display:none;left:clamp(14px,4vw,32px);overflow:visible;position:absolute;right:clamp(14px,4vw,32px);top:calc(100% + 10px);z-index:120}.main-nav.is-open{display:block}.main-nav ul{align-items:stretch;display:grid;gap:0;justify-content:stretch;min-width:0;overflow:visible;padding:12px 18px}.main-nav a{border-bottom:1px solid rgba(36,35,32,.08);display:flex;font-size:12px;justify-content:center;padding:16px 0;text-shadow:none;white-space:nowrap;width:100%}.main-nav li:last-child a{border-bottom:0}.main-nav a::after{bottom:9px}.header-book-panel{background:var(--stiltz-charcoal);border:0;color:#fff;font-family:var(--stiltz-sans);font-size:13px;font-weight:700;grid-column:1/-1;grid-row:2;letter-spacing:.16em;min-height:56px;text-shadow:none}.site-header.is-condensed{background:#faf8f3;color:var(--stiltz-ink);min-height:144px}.site-header.is-condensed .header-frame{grid-template-columns:minmax(0,1fr) 84px;grid-template-rows:88px 56px;min-height:144px}.site-header.is-condensed .header-mark{border-bottom:1px solid var(--stiltz-light-divider);border-right:1px solid var(--stiltz-light-divider);grid-row:1;justify-content:flex-start;padding-left:clamp(8px,2vw,18px)}.site-header.is-condensed .header-mark img.header-mark-logo{display:block;max-height:74px;transform:translateX(-32px);width:min(340px,66vw)}.site-header.is-condensed .header-main{border-bottom:1px solid var(--stiltz-light-divider);display:flex;grid-row:1;justify-content:center}.site-header.is-condensed .main-nav{border-bottom:1px solid var(--stiltz-light-divider)}.site-header.is-condensed .main-nav a{padding:16px 0}.site-header.is-condensed .main-nav a::after{bottom:9px}.site-header.is-condensed .header-book-panel{grid-column:1/-1;grid-row:2;min-height:56px}.hero-caption{display:none}.architecture,.quote-section,.section,.wildlife-pause{padding:80px 0}.arch-grid,.experience-layout,.footer-recognition,.intro-grid,.stay-grid,.wildlife-inner{grid-template-columns:1fr}.intro-copy{padding-left:0}.intro-image-stack{min-height:480px}.intro-image-stack img:first-child{height:390px;width:84%}.intro-image-stack img:last-child{height:260px;width:58%}.stay-panel{margin:0}.wow-boardwalk,.wow-boardwalk>img,.wow-boardwalk>picture>img{min-height:100vh;min-height:100svh;height:100vh;height:100svh}.wow-copy{bottom:9vh;left:24px;right:24px}.experiences{padding-top:80px}.experience-photo img{height:auto;aspect-ratio:4/5}.gallery-head{align-items:start;flex-direction:column}.gallery-mosaic{grid-template-columns:1fr 1fr}.gallery-mosaic img:nth-child(n){grid-column:auto;margin-top:0;width:100%}.location-stage{display:block}.location-card,.location-map{margin:-60px 24px 40px;max-width:none}.location-map{margin-top:0}.footer-link-row{gap:22px 38px;min-height:auto;padding:34px 0}.footer-recognition{gap:38px;padding:38px 0 42px}.footer-awards,.footer-sister-lodge{justify-self:stretch;text-align:center}.footer-awards-list{justify-content:center}.footer-sister-lodge img{margin-inline:auto}.sticky-booking-inner{gap:16px 22px;grid-template-columns:1fr 1fr auto;justify-content:stretch;min-height:126px;padding:18px 24px}.sticky-booking-title{grid-column:1/-1;text-align:center}.sticky-booking-field{min-width:0}}@media (min-width:641px) and (max-width:1368px){body{padding-bottom:0}.sticky-booking-bar{bottom:auto;box-shadow:none;left:auto;opacity:1;pointer-events:auto;position:static;right:auto;transform:none;transition:none;z-index:auto}.sticky-booking-bar.is-visible{transform:none}.scroll-to-top{position:relative}}@media (max-width:640px),(min-width:641px) and (max-width:980px) and (orientation:portrait){.about-answers-heading,.about-answers-heading .eyebrow,.about-answers-heading h2,.experience-answers-heading,.experience-answers-heading .eyebrow,.experience-answers-heading h2,.home-answers-heading,.home-answers-heading .eyebrow,.home-answers-heading h2,.stay-answers-heading,.stay-answers-heading .eyebrow,.stay-answers-heading h2{margin-left:auto;margin-right:auto;text-align:center}}@media (max-width:640px){body{padding-bottom:206px}body{font-size:16px}.stiltz-shell{width:min(100% - 40px,1400px)}.site-header,.site-header.is-condensed{min-height:126px}.header-frame,.site-header.is-condensed .header-frame{grid-template-columns:minmax(0,1fr) 68px;grid-template-rows:74px 52px;min-height:126px}.header-mark,.site-header.is-condensed .header-mark{padding-left:4px}.header-mark img.header-mark-logo,.site-header.is-condensed .header-mark img.header-mark-logo{max-height:64px;transform:translateX(-34px);width:min(282px,70vw)}.menu-toggle{height:50px;width:50px}.main-nav{left:12px;right:12px;top:calc(100% + 8px)}.main-nav ul{padding:8px 14px}.main-nav a,.site-header.is-condensed .main-nav a{font-size:11px;padding:14px 0}.header-book-panel,.site-header.is-condensed .header-book-panel{font-size:13px;min-height:52px}.hero{min-height:100vh;min-height:100svh;padding:150px 0 70px}.hero-actions{align-items:stretch;flex-direction:column}.button{width:100%}.meta-row{grid-template-columns:1fr}.site-footer{padding-top:14px}.footer-link-row{display:grid;gap:18px 22px;grid-template-columns:repeat(2,minmax(0,1fr));justify-items:center;padding:28px 0}.footer-link-row a{font-size:11px;white-space:normal}.footer-social-top{padding:24px 0 20px}.footer-awards-list{display:grid;gap:24px 18px;grid-template-columns:repeat(2,minmax(0,1fr));justify-items:center}.footer-awards-list a{max-width:128px;width:100%}.footer-awards-list img{height:76px;max-width:112px}.footer-award-label{font-size:10px;letter-spacing:.07em;max-width:112px}.footer-sister-lodge img{width:min(270px,100%)}.footer-minimal{gap:18px;grid-template-columns:1fr;min-height:auto;padding:22px 0;text-align:center}.footer-built-by,.footer-credit,.footer-social{justify-content:center}.footer-credit{font-size:11px}.footer-built-by{font-size:11px}.sticky-booking-inner{gap:12px;grid-template-columns:1fr;min-height:206px;padding:16px 18px}.sticky-booking-title{font-size:12px}.sticky-booking-field{font-size:13px;min-height:38px;padding-bottom:9px}.sticky-booking-submit{min-height:44px;width:100%}.scroll-to-top{height:44px;width:44px}.scroll-to-top svg{height:20px;width:20px}.gallery-mosaic{grid-template-columns:1fr}.location-card{padding:34px 26px}}.contact-page{background:var(--stiltz-bg)}.contact-hero{min-height:100vh;min-height:100svh;overflow:hidden;position:relative}.contact-hero img{height:100vh;height:100svh;object-fit:cover;object-position:center;width:100%}.contact-hero::after{background:linear-gradient(90deg,rgba(20,20,20,.62),rgba(20,20,20,.2) 54%,rgba(20,20,20,.05));content:'';inset:0;position:absolute}.contact-hero-copy{bottom:7vh;color:#fff;left:max(48px,6vw);position:absolute;transform:none;width:min(780px,calc(100% - 96px));z-index:1}.contact-hero-copy h1{color:#fff;font-size:clamp(58px, 7vw, 92px);line-height:.98}.contact-hero-copy p{color:rgba(255,255,255,.94);font-size:clamp(18px, 1.75vw, 22px);font-weight:500;line-height:1.35;margin-top:12px;max-width:780px}.contact-hero-copy span{display:none}.contact-grid{align-items:start;display:grid;gap:clamp(60px,10vw,140px);grid-template-columns:.8fr 1.2fr}.contact-details h2{max-width:460px}.contact-details>p{max-width:430px}.contact-rule{background:#8e6b45;height:1px;margin:34px 0;opacity:.68;width:170px}.contact-list{display:grid;gap:30px;margin-top:10px}.contact-item{display:grid;gap:24px;grid-template-columns:24px 1fr}.contact-item span{color:var(--stiltz-charcoal);font-size:22px;line-height:1.2}.contact-item p{font-size:16px;line-height:1.65;margin:0}.contact-item strong{font-weight:500}.contact-check-times{display:grid;gap:24px;grid-template-columns:repeat(2,minmax(0,1fr))}.contact-intro{background:#fff}.contact-form{background:#fff;display:grid;gap:24px;padding:clamp(34px,5vw,58px)}.contact-form label{color:var(--stiltz-charcoal);display:grid;font-size:12px;font-weight:600;gap:10px;letter-spacing:.18em;text-transform:uppercase}.contact-form input,.contact-form textarea{background:#faf8f3;border:1px solid var(--stiltz-border);border-radius:0;color:var(--stiltz-charcoal);font:16px/1.6 var(--stiltz-sans);padding:14px 16px;width:100%}.contact-form textarea{min-height:160px;resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--stiltz-timber);outline:2px solid rgba(126,102,80,.16)}.contact-form .button{justify-self:start}.contact-booking{display:grid;grid-template-columns:1.15fr .95fr}.contact-booking-image img{height:100%;min-height:560px;object-fit:cover;width:100%}.contact-booking-copy{align-self:center;padding:clamp(60px,9vw,130px)}.contact-booking-copy h2{max-width:560px}.contact-booking-copy p{max-width:440px}.contact-location{background:#faf8f3;padding:96px 0}.contact-location-grid{align-items:center;display:grid;gap:clamp(44px,7vw,96px);grid-template-columns:1.08fr .92fr}.contact-map-panel{overflow:visible;position:relative}.contact-map-panel img{margin-inline:-5%;max-width:none;mix-blend-mode:multiply;opacity:.88;width:110%}.contact-location-copy h2{color:var(--stiltz-ink);max-width:520px}.contact-location-copy p{max-width:470px}.contact-location-copy .button.secondary{background:0 0}.contact-location-copy .button.secondary:hover{background:var(--stiltz-charcoal);color:#fff}.contact-answers{background:#fff;padding:clamp(72px,9vw,112px) 0}.contact-answers-inner{display:grid;gap:clamp(38px,6vw,78px);grid-template-columns:minmax(260px,.48fr) minmax(0,1fr)}.contact-answers-heading h2{font-size:clamp(38px, 4.6vw, 58px);max-width:460px}#contact-answers-title{scroll-margin-top:190px}.contact-answer-grid{display:grid;gap:2px;grid-template-columns:repeat(2,minmax(0,1fr))}.contact-answer-card{background:#faf8f3;min-height:210px;padding:clamp(28px,4vw,42px)}.contact-answer-card h3{color:var(--stiltz-ink);font-family:var(--stiltz-serif);font-size:clamp(24px, 2.4vw, 32px);line-height:1.08;margin:0 0 18px}.contact-answer-card p{color:var(--stiltz-secondary-text);font-size:16px;line-height:1.7;margin:0}.contact-affiliates{background:#fff;overflow:hidden;padding:82px 0 64px;text-align:center}.contact-affiliates-title{font-size:clamp(40px, 5vw, 58px);margin:0 0 42px}.affiliate-slider{margin-inline:auto;max-width:1120px;overflow:hidden;padding:18px 0 10px}.affiliate-track{align-items:center;display:flex;gap:clamp(42px,7vw,112px);transition:transform 2.8s linear;will-change:transform}.affiliate-item{color:rgba(126,102,80,.28);flex:0 0 auto;font-family:var(--stiltz-serif);font-size:clamp(21px, 3vw, 36px);font-weight:500;line-height:1.08;max-width:min(48vw,380px);opacity:.58;text-align:center;text-wrap:balance;transform:scale(.95);transition:color .45s ease,opacity .45s ease,transform .45s ease}.affiliate-item.is-active{color:var(--stiltz-timber);opacity:1;transform:scale(1)}.affiliate-item:hover{color:var(--stiltz-timber);opacity:1}.affiliate-url{color:var(--stiltz-charcoal);display:inline-block;font-size:12px;font-weight:500;letter-spacing:.08em;line-height:1.4;margin-top:8px;text-transform:uppercase;transition:color .2s ease}.affiliate-url:hover{color:var(--stiltz-timber)}body:has(.contact-page) .site-footer{border-top:0}@media (max-width:980px){.contact-hero,.contact-hero img{min-height:100vh;min-height:100svh;height:100vh;height:100svh}.contact-answers-inner,.contact-booking,.contact-grid,.contact-location-grid{grid-template-columns:1fr}.contact-booking-image img{min-height:360px}.contact-booking-copy{padding:70px 24px}.contact-location{padding:80px 0}.contact-answer-grid{grid-template-columns:1fr}.contact-affiliates{padding:70px 0 39px}}@media (min-width:641px) and (max-width:980px) and (orientation:portrait){.contact-grid{gap:54px;justify-items:center}.contact-details{max-width:640px;text-align:center;width:100%}.contact-details .eyebrow,.contact-details h2,.contact-details>p{margin-left:auto;margin-right:auto;text-align:center}.contact-rule{margin-left:auto;margin-right:auto}.contact-list{margin-left:auto;margin-right:auto;max-width:560px;text-align:left}.contact-form{max-width:640px;width:100%}.contact-location-grid{justify-items:center;text-align:center}.contact-answers-heading,.contact-answers-heading .eyebrow,.contact-answers-heading h2,.contact-location-copy,.contact-location-copy .eyebrow,.contact-location-copy h2,.contact-location-copy p{margin-left:auto;margin-right:auto;text-align:center}.contact-location-copy .button{margin-left:auto;margin-right:auto}}@media (max-width:640px){.contact-hero-copy{bottom:7vh;left:24px;width:calc(100% - 48px)}.contact-form{padding:28px 20px}.contact-item{gap:16px}.contact-check-times{gap:10px;grid-template-columns:1fr}.contact-answers{padding:64px 0}.contact-answer-card{min-height:0;padding:26px 22px}.contact-affiliates-title{font-size:clamp(36px, 11vw, 46px)}.affiliate-track{gap:46px}.affiliate-item{font-size:clamp(22px, 7vw, 30px);max-width:74vw}.affiliate-url{font-size:11px;max-width:84vw;overflow-wrap:anywhere}}.about-page{background:var(--stiltz-bg)}.about-hero{min-height:100vh;min-height:100svh;overflow:hidden;position:relative}.about-hero img{height:100vh;height:100svh;object-fit:cover;object-position:center;width:100%}.about-hero::after{background:linear-gradient(90deg,rgba(12,12,12,.64),rgba(12,12,12,.28) 45%,rgba(12,12,12,.04));content:'';inset:0;position:absolute}.about-hero-copy{bottom:13vh;color:#fff;left:50%;position:absolute;transform:translateX(-50%);z-index:1}.about-hero-copy h1{color:#fff;font-size:clamp(56px, 7.2vw, 92px)}.about-hero-copy span,.about-rule{background:currentColor;display:block;height:1px;margin:28px 0 26px;opacity:.68;width:54px}.about-rule{background:#8e6b45}.about-hero-copy p{color:#fff;font-family:var(--stiltz-serif);font-size:clamp(22px, 2.5vw, 32px);line-height:1.2;max-width:560px}.about-story{padding:90px 0 110px}.about-story-grid{align-items:center;display:grid;gap:clamp(70px,10vw,150px);grid-template-columns:1.05fr .95fr}.about-story-image img{aspect-ratio:1.28/1;object-fit:cover;transform:scale(1.15);transform-origin:center;width:100%}.about-story-copy{max-width:540px}.about-architecture-copy h2,.about-commitment-copy h2,.about-hosts-copy h2,.about-reviews h2,.about-story-copy h2{font-size:clamp(42px, 5.2vw, 64px)}.about-architecture-copy p,.about-commitment-copy p,.about-hosts-copy p,.about-story-copy p{color:var(--stiltz-secondary-text);font-size:16px;line-height:1.65;max-width:520px}.about-story-copy .about-story-lead{font-weight:600}.about-values{background:#faf8f3;padding:76px 0 34px;text-align:center}.about-values-title{margin-bottom:36px}.about-values-quote{align-items:center;display:grid;justify-items:center}.about-values-main{color:var(--stiltz-ink);display:block;font-family:var(--stiltz-serif);font-size:clamp(42px, 5.4vw, 74px);font-weight:500;line-height:.95;text-transform:uppercase}.about-values-script{color:var(--stiltz-timber);display:block;font-family:Allura,cursive;font-size:clamp(52px, 7vw, 98px);line-height:.9;margin-top:8px}.about-aerial{background:#faf8f3;overflow:hidden}.about-aerial img{display:block;height:clamp(420px,56vw,820px);object-fit:cover;width:100%}.about-landscape-line{align-items:center;color:var(--stiltz-driftwood);display:inline-flex;flex-wrap:wrap;font-size:12px;font-weight:600;gap:14px;justify-content:center;letter-spacing:.24em;line-height:1.2;margin-top:22px;text-align:center;text-transform:uppercase}.about-landscape-line span{color:inherit}.about-landscape-line i{background:currentColor;border-radius:50%;display:inline-block;flex:0 0 auto;height:4px;opacity:.72;width:4px}.about-values-grid{display:grid;grid-template-columns:repeat(4,1fr)}.about-values-grid article{padding:0 42px;position:relative}.about-values-grid article+article::before{background:var(--stiltz-border);content:'';height:92px;left:0;position:absolute;top:72px;width:1px}.about-icon{color:#1d1d1d;font-size:46px;line-height:1;margin-bottom:24px}.about-values-grid h3{font-family:var(--stiltz-serif);font-size:24px;font-weight:500;margin-bottom:18px}.about-values-grid p{color:var(--stiltz-secondary-text);font-size:15px;line-height:1.45;margin:0 auto;max-width:250px}.about-architecture{display:grid;grid-template-columns:1fr 1fr}.about-architecture-image img{height:100%;min-height:520px;object-fit:cover;width:100%}.about-architecture-copy{align-self:center;padding:clamp(56px,8vw,120px)}.about-commitment{background:#faf8f3;padding:0}.about-commitment-grid{align-items:stretch;display:grid;gap:0;grid-template-columns:1fr 1fr}.about-commitment-grid.stiltz-shell{margin-inline:0;width:100%}.about-commitment-copy{align-self:center;padding:clamp(56px,8vw,120px)}.about-commitment-copy ul{color:var(--stiltz-secondary-text);list-style:none;margin:0 0 34px;padding:0}.about-commitment-copy li{font-size:15px;line-height:1.7;padding-left:24px;position:relative}.about-commitment-copy li::before{border:1px solid var(--stiltz-timber);border-radius:50%;color:var(--stiltz-timber);content:'✓';font-size:10px;height:14px;left:0;line-height:13px;position:absolute;text-align:center;top:6px;width:14px}.about-commitment-image{overflow:hidden}.about-commitment-image img{display:block;height:100%;min-height:520px;object-fit:cover;width:100%}.about-hosts{display:grid;grid-template-columns:.9fr 1.1fr}.about-hosts-copy{align-self:center;background:var(--stiltz-bg);padding:clamp(56px,8vw,110px) clamp(38px,7vw,120px)}.about-hosts-image img{height:100%;min-height:440px;object-fit:cover;width:100%}.about-reviews{background:#fff;padding:clamp(74px,9vw,128px) 0;text-align:center}.about-reviews-inner{align-items:center;display:grid;justify-items:center}.about-reviews .about-rule{margin-left:auto;margin-right:auto}.about-reviews-widget{margin:22px auto 0;max-width:1120px;width:100%}.trustindex-lazy{align-items:center;background:rgba(255,255,255,.7);border:1px solid rgba(48,43,38,.12);color:var(--stiltz-muted);display:flex;font-size:14px;justify-content:center;min-height:230px;padding:28px;text-align:center}.trustindex-lazy span{opacity:.8}.about-book-cta{align-items:center;color:#fff;display:grid;grid-template-areas:'stack';justify-items:center;min-height:clamp(347px,41vw,520px);overflow:hidden;place-items:center;position:relative;text-align:center}.about-book-cta::after{background:rgba(18,18,16,.42);content:'';inset:0;position:absolute;z-index:1}.about-book-cta>picture{grid-area:stack;height:100%;width:100%}.about-book-cta img{height:100%;inset:0;object-fit:cover;object-position:center 54%;position:absolute;width:100%;z-index:0}.stay-book-cta img{object-position:22% 56%}.about-book-cta-copy{align-content:center;align-items:center;display:grid;grid-area:stack;justify-items:center;left:50%;margin-inline:auto;place-self:center;position:absolute;text-align:center;top:100%;transform:translate(-50%,-50%);width:min(100% - 48px,1400px);z-index:2}.about-book-cta h2{color:#fff;font-size:clamp(34px, 4.6vw, 62px);line-height:1.04;max-width:760px;text-shadow:0 3px 18px rgba(0,0,0,.35)}.about-book-cta .button{background:#fff;border-color:#fff;color:var(--stiltz-charcoal);margin-top:24px}.about-book-cta .button:hover{background:0 0;color:#fff}@media (max-width:980px){.about-hero,.about-hero img{min-height:100vh;min-height:100svh;height:100vh;height:100svh}.about-architecture,.about-commitment-grid,.about-hosts,.about-story-grid{grid-template-columns:1fr}.about-story-copy{order:1}.about-story-image{order:2}.about-architecture-copy{order:1}.about-architecture-image{order:2}.about-values-grid{grid-template-columns:1fr 1fr;row-gap:52px}.about-values-grid article:nth-child(3)::before{display:none}.about-hosts-copy{order:2}}@media (min-width:641px) and (max-width:980px) and (orientation:portrait){.about-architecture-copy,.about-commitment-copy,.about-hosts-copy,.about-story-copy{margin-left:auto;margin-right:auto;text-align:center}.about-architecture-copy .eyebrow,.about-architecture-copy h2,.about-architecture-copy p,.about-commitment-copy .eyebrow,.about-commitment-copy h2,.about-commitment-copy p,.about-hosts-copy .eyebrow,.about-hosts-copy h2,.about-hosts-copy p,.about-story-copy .eyebrow,.about-story-copy h2,.about-story-copy p{margin-left:auto;margin-right:auto;text-align:center}.about-architecture-copy .about-rule,.about-commitment-copy .about-rule,.about-hosts-copy .about-rule,.about-story-copy .about-rule{margin-left:auto;margin-right:auto}}@media (max-width:640px){.about-hero-copy{bottom:9vh}.about-values-grid{grid-template-columns:1fr}.about-values-grid article{padding:0 20px}.about-values-grid article::before{display:none}.about-architecture-copy,.about-commitment-copy,.about-hosts-copy{padding:54px 24px}}.gallery-page-full{background:var(--stiltz-bg)}.gallery-hero-full{min-height:100vh;min-height:100svh;overflow:hidden;position:relative}.gallery-hero-full img{height:100vh;height:100svh;object-fit:cover;object-position:center;width:100%}.gallery-hero-full::after{background:linear-gradient(90deg,rgba(12,12,12,.62),rgba(12,12,12,.22) 48%,rgba(12,12,12,.02));content:'';inset:0;position:absolute}.gallery-hero-copy{bottom:10vh;color:#fff;left:50%;position:absolute;transform:translateX(-50%);z-index:1}.gallery-hero-copy h1{color:#fff;font-size:clamp(56px, 7vw, 90px)}.gallery-hero-copy span{background:#fff;display:block;height:1px;margin:24px 0 22px;opacity:.72;width:54px}.gallery-hero-copy p{color:#fff;font-family:var(--stiltz-serif);font-size:clamp(22px, 2.2vw, 30px);line-height:1.22;max-width:460px}.gallery-index{padding:116px 0 80px;scroll-margin-top:120px}.gallery-tabs{align-items:center;display:flex;gap:clamp(28px,5vw,76px);justify-content:center;margin-bottom:34px;overflow-x:auto;padding:0 0 14px}.gallery-tabs button{appearance:none;background:0 0;border:0;color:#171717;cursor:pointer;flex:0 0 auto;font:600 12px/1 var(--stiltz-sans);letter-spacing:.18em;padding:0 0 12px;position:relative;text-transform:uppercase}.gallery-tabs button::after{background:var(--stiltz-timber);bottom:0;content:'';height:1px;left:0;opacity:0;position:absolute;transition:opacity .2s ease;width:28px}.gallery-tabs button.active::after,.gallery-tabs button:hover::after{opacity:1}.gallery-tabs button:focus-visible{outline:2px solid var(--stiltz-timber);outline-offset:8px}.gallery-page-mosaic{column-count:3;column-gap:16px;margin-inline:auto;max-width:1360px}.gallery-page-mosaic figure{break-inside:avoid;margin:0 0 16px;overflow:hidden;position:relative}.gallery-page-mosaic figure[hidden]{display:none}.gallery-masonry-button{appearance:none;background:0 0;border:0;cursor:zoom-in;display:block;overflow:hidden;padding:0;position:relative;width:100%}.gallery-masonry-button::after{background:linear-gradient(180deg,rgba(20,20,18,0),rgba(20,20,18,.18));content:'';inset:0;opacity:0;position:absolute;transition:opacity .35s ease}.gallery-page-mosaic img{height:auto;transition:transform .55s ease;width:100%}.gallery-masonry-button:focus-visible img,.gallery-page-mosaic figure:hover img{transform:scale(1.035)}.gallery-masonry-button:focus-visible::after,.gallery-page-mosaic figure:hover .gallery-masonry-button::after{opacity:1}.gallery-masonry-button:focus-visible{outline:2px solid var(--stiltz-timber);outline-offset:5px}.gallery-lightbox[hidden]{display:none}.gallery-lightbox{align-items:center;background:rgba(16,15,13,.88);display:grid;inset:0;justify-items:center;padding:clamp(24px,4vw,64px);position:fixed;z-index:200}.gallery-lightbox-frame{display:grid;gap:18px;justify-items:center;margin:0;max-height:calc(100vh - 90px);max-width:min(1120px,86vw)}.gallery-lightbox-frame img{box-shadow:0 30px 90px rgba(0,0,0,.38);max-height:calc(100vh - 160px);object-fit:contain;width:auto}.gallery-lightbox-frame figcaption{align-items:center;color:rgba(255,255,255,.92);display:flex;font-size:14px;gap:24px;justify-content:space-between;line-height:1.5;text-align:left;width:100%}.gallery-lightbox-frame figcaption span:first-child{max-width:760px}.gallery-lightbox-frame figcaption span:last-child{color:rgba(255,255,255,.62);font-size:12px;font-weight:600;letter-spacing:.12em;white-space:nowrap}.gallery-lightbox-arrow,.gallery-lightbox-close{appearance:none;background:#faf8f3;border:0;color:var(--stiltz-ink);cursor:pointer;display:inline-flex;font-family:var(--stiltz-serif);justify-content:center;position:absolute;transition:background .2s ease,color .2s ease,transform .2s ease}.gallery-lightbox-close{align-items:center;border-radius:50%;font-size:32px;height:48px;line-height:1;right:28px;top:24px;width:48px}.gallery-lightbox-arrow{align-items:center;border-radius:50%;font-size:42px;height:58px;line-height:.8;top:50%;transform:translateY(-50%);width:58px}.gallery-lightbox-prev{left:28px}.gallery-lightbox-next{right:28px}.gallery-lightbox-arrow:focus-visible,.gallery-lightbox-arrow:hover,.gallery-lightbox-close:focus-visible,.gallery-lightbox-close:hover{background:#fff;color:var(--stiltz-timber);outline:0}.gallery-lightbox-arrow:focus-visible,.gallery-lightbox-arrow:hover{transform:translateY(-50%) scale(1.04)}body.gallery-lightbox-open{overflow:hidden}.gallery-share{padding:62px 0 16px;text-align:center}.gallery-camera{color:var(--stiltz-charcoal);height:36px;line-height:1;margin:0 auto 18px;width:36px}.gallery-camera svg{display:block;fill:currentColor;height:36px!important;max-height:36px;max-width:36px;width:36px!important}.gallery-share h2{font-size:clamp(28px, 3.2vw, 42px)}.gallery-share p{color:var(--stiltz-secondary-text);font-size:16px;line-height:1.55;margin:14px auto 22px;max-width:470px}.gallery-socials{display:flex;gap:18px;justify-content:center}.gallery-socials a{align-items:center;border:1px solid rgba(30,30,30,.28);border-radius:50%;display:inline-flex;font-size:18px;height:34px;justify-content:center;width:34px}.gallery-socials a:hover{background:var(--stiltz-charcoal);color:#fff}@media (max-width:980px){.gallery-hero-full,.gallery-hero-full img{min-height:100vh;min-height:100svh;height:100vh;height:100svh}.gallery-tabs{justify-content:flex-start}.gallery-page-mosaic{column-count:2}.gallery-lightbox-frame{max-width:min(980px,82vw)}}@media (max-width:640px){.gallery-hero-copy{bottom:8vh}.gallery-index{padding:58px 0 64px}.gallery-tabs{flex-wrap:wrap;gap:18px 26px;justify-content:flex-start;margin-bottom:28px;overflow:visible;padding-bottom:0}.gallery-tabs button{flex:0 1 auto;font-size:11px;letter-spacing:.14em;line-height:1.25;padding-bottom:10px;text-align:left;white-space:normal}.gallery-page-mosaic{column-count:1}.gallery-page-mosaic figure{margin-bottom:18px}.gallery-masonry-button{aspect-ratio:4/3}.gallery-page-mosaic img{height:100%;object-fit:cover;width:100%}.gallery-lightbox{padding:18px}.gallery-lightbox-frame{max-width:calc(100vw - 36px)}.gallery-lightbox-frame img{max-height:calc(100vh - 180px)}.gallery-lightbox-frame figcaption{align-items:flex-start;flex-direction:column;gap:8px}.gallery-lightbox-close{right:16px;top:14px}.gallery-lightbox-arrow{bottom:24px;top:auto;transform:none}.gallery-lightbox-arrow:focus-visible,.gallery-lightbox-arrow:hover{transform:scale(1.04)}.gallery-lightbox-prev{left:24px}.gallery-lightbox-next{right:24px}}.experiences-page-full{background:var(--stiltz-bg)}.experiences-hero-full{min-height:100vh;min-height:100svh;overflow:hidden;position:relative}.experiences-hero-full img{height:100vh;height:100svh;object-fit:cover;object-position:center;width:100%}.experiences-hero-full::after{background:linear-gradient(90deg,rgba(12,12,12,.66),rgba(12,12,12,.3) 48%,rgba(12,12,12,.05));content:'';inset:0;position:absolute}.experiences-hero-copy{color:#fff;left:50%;position:absolute;top:16vh;transform:translateX(-50%);z-index:1}.experiences-hero-copy .eyebrow{margin-bottom:12px}.experiences-hero-copy h1{color:#fff;font-size:clamp(56px, 6.6vw, 86px);max-width:760px}.experience-rule,.experiences-hero-copy span{background:currentColor;display:block;height:1px;margin:26px 0 24px;opacity:.66;width:56px}.experience-rule{background:#8e6b45}.experiences-hero-copy p{color:#fff;font-family:var(--stiltz-serif);font-size:clamp(20px, 2vw, 28px);line-height:1.25;max-width:590px}.experiences-intro{padding:70px 0 70px}.experiences-intro-grid{align-items:center;display:grid;gap:clamp(70px,10vw,150px);grid-template-columns:.72fr 1.28fr}.experiences-intro-copy h2{font-size:clamp(40px, 5vw, 58px)}.experiences-intro-copy p{color:var(--stiltz-secondary-text);font-size:16px;line-height:1.65;max-width:420px}.experience-icons{display:grid;grid-template-columns:repeat(4,1fr);text-align:center}.experience-icons article{padding:0 34px;position:relative}.experience-icons article+article::before{background:var(--stiltz-border);content:'';height:90px;left:0;position:absolute;top:20px;width:1px}.experience-icons span{color:#1d1d1d;display:block;font-size:42px;line-height:1;margin-bottom:18px}.experience-icons p{font-family:var(--stiltz-serif);font-size:18px;line-height:1.25;margin:0 auto;max-width:140px}.experience-listing{padding-bottom:0}.experience-feature{align-items:stretch;display:grid;grid-template-columns:1.1fr .95fr}.experience-feature.image-right{grid-template-columns:.9fr 1.15fr}.experience-feature-image img{height:100%;min-height:320px;object-fit:cover;width:100%}.experience-feature-copy{align-self:center;background:var(--stiltz-paper);min-height:320px;padding:clamp(46px,6vw,78px)}.experience-number{color:#1e1e1e;display:block;font-size:12px;font-weight:600;letter-spacing:.16em;margin-bottom:24px}.experience-feature-copy h2{font-size:clamp(34px, 4vw, 48px)}.experience-feature-copy p{color:var(--stiltz-secondary-text);font-size:16px;line-height:1.65;max-width:450px}.experience-feature-copy a:not(.button){display:inline-block;font-size:12px;font-weight:700;letter-spacing:.18em;margin-top:12px;text-transform:uppercase}.experience-feature-copy a:not(.button):hover{color:var(--stiltz-timber)}.experience-cta{background:var(--stiltz-sand);margin-top:0;padding:34px 0}.experience-cta-grid{align-items:center;display:grid;gap:48px;grid-template-columns:.55fr 1fr;max-width:1040px}.experience-cta img{aspect-ratio:16/7;object-fit:cover;width:100%}.experience-cta h2{font-size:clamp(34px, 4.2vw, 52px)}.experience-cta p{color:var(--stiltz-secondary-text);font-size:16px;line-height:1.6;max-width:520px}.experience-cta .button{margin-top:4px}.experience-answers{background:#fff;padding:clamp(72px,9vw,112px) 0}#experience-questions{scroll-margin-top:190px}.experience-answers-inner{align-items:start;display:grid;gap:clamp(38px,6vw,78px);grid-template-columns:minmax(260px,.48fr) minmax(0,1fr)}.experience-answers-heading h2{font-size:clamp(38px, 4.6vw, 58px);max-width:460px}.experience-answer-grid{display:grid;gap:2px;grid-template-columns:repeat(2,minmax(0,1fr))}.experience-answer-card{background:#faf8f3;min-height:210px;padding:clamp(28px,4vw,42px)}.experience-answer-card h3{color:var(--stiltz-ink);font-family:var(--stiltz-serif);font-size:clamp(24px, 2.4vw, 32px);font-weight:500;line-height:1.08;margin:0 0 18px}.experience-answer-card p{color:var(--stiltz-secondary-text);font-size:16px;line-height:1.7;margin:0}@media (max-width:980px){.experiences-hero-full,.experiences-hero-full img{min-height:100vh;min-height:100svh;height:100vh;height:100svh}.experience-answers-inner,.experience-cta-grid,.experience-feature,.experience-feature.image-right,.experiences-intro-grid{grid-template-columns:1fr}.experience-icons{grid-template-columns:1fr 1fr;row-gap:46px}.experience-icons article:nth-child(3)::before{display:none}.experience-feature.image-right .experience-feature-image{order:-1}.experience-answer-grid{grid-template-columns:1fr}}@media (max-width:640px){.experiences-hero-copy{top:16vh}.experience-icons{grid-template-columns:1fr}.experience-icons article::before{display:none}.experience-feature-copy{padding:42px 24px}.experience-answers{padding:64px 0}.experience-answer-card{min-height:0;padding:26px 22px}}.stay-page-full{background:var(--stiltz-bg)}.stay-hero-full{min-height:100vh;min-height:100svh;overflow:hidden;position:relative}.stay-hero-full img{height:100vh;height:100svh;object-fit:cover;object-position:center;width:100%}.stay-hero-full::after{background:linear-gradient(90deg,rgba(12,12,12,.64),rgba(12,12,12,.22) 48%,rgba(12,12,12,.04));content:'';inset:0;position:absolute}.stay-hero-copy{color:#fff;left:50%;position:absolute;top:15vh;transform:translateX(-50%);z-index:1}.stay-hero-copy h1{color:#fff;font-size:clamp(56px, 6.5vw, 86px);max-width:620px}.stay-hero-copy span,.stay-rule{background:currentColor;display:block;height:1px;margin:26px 0 24px;opacity:.68;width:56px}.stay-rule{background:#8e6b45}.stay-hero-copy p{color:#fff;font-family:var(--stiltz-serif);font-size:clamp(20px, 2vw, 28px);line-height:1.25;max-width:470px}.stay-paths-intro{padding:clamp(72px,10vw,132px) 0 clamp(58px,8vw,96px);text-align:center}.stay-paths-heading{align-items:center;display:grid;justify-items:center;row-gap:0}.stay-paths-heading .eyebrow{margin:0 0 clamp(6px,.9vw,10px)}.stay-paths-heading h2{font-size:clamp(48px, 6.1vw, 88px);line-height:1.02;margin-bottom:clamp(18px,2.2vw,28px);max-width:920px}.stay-paths-heading p{color:var(--stiltz-secondary-text);font-size:clamp(18px, 1.45vw, 23px);line-height:1.65;margin:0;max-width:820px}.stay-aerial-story{height:clamp(440px,56vh,680px);overflow:hidden;position:relative}.stay-aerial-story>img,.stay-aerial-story>picture>img{display:block;height:100%;object-fit:cover;object-position:center 42%;width:100%}.stay-paths{background:var(--stiltz-paper);padding:clamp(54px,8vw,112px) 0 clamp(24px,4vw,58px)}.stay-path.stiltz-shell{max-width:1480px;width:min(1480px,calc(100% - 48px))}.stay-path{align-items:center;display:grid;gap:clamp(34px,5.5vw,82px);grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);padding:clamp(52px,7vw,96px) 0}.stay-path-white{position:relative}.stay-path-white::before{background:#fff;content:'';inset:0 50%;margin-inline:-50vw;position:absolute;z-index:0}.stay-path-white>*{position:relative;z-index:1}.stay-paths .stay-path:last-child{padding-bottom:clamp(28px,4vw,52px)}.stay-path-reverse{grid-template-columns:minmax(0,1.22fr) minmax(0,.78fr)}.stay-path-reverse .stay-path-copy{order:2}.stay-path-copy{align-self:center}.stay-path-number{color:var(--stiltz-timber);font-family:var(--stiltz-serif);font-size:clamp(34px, 4.7vw, 64px);line-height:1;margin-bottom:clamp(14px,2.4vw,26px);opacity:.82}.stay-path-copy h2{font-size:clamp(38px, 4.1vw, 58px);max-width:620px}.stay-path-lead{color:var(--stiltz-ink);font-family:var(--stiltz-serif);font-size:clamp(20px, 1.65vw, 27px);line-height:1.24;margin-top:20px;max-width:620px}.stay-path-copy p:not(.stay-path-lead):not(.stay-path-note){color:var(--stiltz-secondary-text);font-size:16px;line-height:1.72;max-width:700px}.stay-path-note{color:var(--stiltz-timber);font-size:14px;line-height:1.55;margin-top:18px;max-width:660px}.stay-path-copy .button{margin-top:14px}.stay-path-included{border-top:1px solid var(--stiltz-border);margin-top:24px;padding-top:22px}.stay-path-included h3{color:var(--stiltz-ink);font-size:clamp(24px, 2vw, 32px);margin-bottom:16px}.stay-path-included ul{color:var(--stiltz-secondary-text);display:grid;gap:10px 22px;grid-template-columns:1fr 1fr;list-style:none;margin:0;padding:0}.stay-path-included li{font-size:14px;line-height:1.4;padding-left:18px;position:relative}.stay-path-included li::before{background:var(--stiltz-timber);border-radius:50%;content:'';height:5px;left:0;position:absolute;top:.62em;width:5px}.stay-path-media{margin:0;overflow:hidden;position:relative}.stay-path-media::after{border:1px solid rgba(255,255,255,.52);content:'';inset:18px;pointer-events:none;position:absolute;z-index:2}.stay-path-media img{aspect-ratio:1.02/1;height:100%;object-fit:cover;width:100%}.stay-path-slider{aspect-ratio:1.02/1;background:var(--stiltz-soft)}.stay-path-slider-track{height:100%;position:relative;width:100%}.stay-path-slider img{inset:0;opacity:0;position:absolute;transition:opacity .45s ease,transform .8s ease;transform:scale(1.025)}.stay-path-slider img.is-active{opacity:1;transform:scale(1);z-index:1}.stay-path-slider-arrow{align-items:center;appearance:none;background:#faf8f3;border:1px solid rgba(36,35,32,.16);border-radius:50%;color:var(--stiltz-ink);cursor:pointer;display:inline-flex;font-family:var(--stiltz-serif);font-size:32px;height:44px;justify-content:center;line-height:1;padding:0 0 4px;position:absolute;top:50%;transform:translateY(-50%);transition:background .2s ease,color .2s ease,transform .2s ease;width:44px;z-index:3}.stay-path-slider-arrow:focus-visible,.stay-path-slider-arrow:hover{background:#fff;color:var(--stiltz-timber);outline:0;transform:translateY(-50%) scale(1.04)}.stay-path-slider-prev{left:28px}.stay-path-slider-next{right:28px}.stay-included{background:#fff;padding:34px 0 42px}.stay-included-grid{align-items:center;display:grid;gap:18px;grid-template-columns:1.2fr repeat(4,1fr);text-align:center}.stay-included-grid .eyebrow{align-items:center;color:#8e6b45;display:flex;font-family:var(--stiltz-serif);font-size:clamp(22px, 2vw, 30px);line-height:1.1;margin:0;min-height:74px;padding-bottom:0;text-align:left}.stay-included-grid article{padding:0 22px;position:relative}.stay-included-grid article::before{background:var(--stiltz-border);content:'';height:74px;left:0;position:absolute;top:10px;width:1px}.stay-included-grid span{color:var(--stiltz-timber);display:block;font-size:34px;line-height:1;margin-bottom:12px}.stay-included-icon svg{display:block;height:34px;margin:0 auto;width:34px}.stay-included-icon path{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.35}.stay-included-grid p{font-family:var(--stiltz-serif);font-size:18px;line-height:1.2;margin:0 auto}.stay-reviews{background:var(--stiltz-paper);border-top:1px solid var(--stiltz-border);padding:clamp(56px,7vw,92px) 0}.stay-reviews-grid{align-items:start;display:grid;gap:clamp(34px,6vw,78px);grid-template-columns:minmax(220px,.46fr) minmax(0,1fr)}.stay-reviews-intro{max-width:380px}.stay-reviews h2{font-size:clamp(30px, 3.55vw, 46px)}.stay-review-widget{min-width:0;width:100%}.stay-review-slider{min-width:0}.stay-review-viewport{border-left:1px solid var(--stiltz-border);overflow:hidden}.stay-review-track{display:flex;transition:transform .65s ease;width:100%}.stay-reviews blockquote{flex:0 0 100%;font-family:var(--stiltz-serif);font-size:clamp(19px, 1.55vw, 25px);font-style:italic;line-height:1.5;margin:0;padding:12px clamp(24px,4.2vw,58px)}.stay-reviews blockquote>span:first-child{color:var(--stiltz-timber);display:block;font-size:44px;line-height:.7}.stay-review-copy{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:7;overflow:hidden}.stay-review-slide.is-expanded .stay-review-copy{display:block;overflow:visible}.stay-reviews cite{color:var(--stiltz-secondary-text);display:block;font-family:var(--stiltz-sans);font-size:13px;font-style:normal;margin-top:20px}.stay-review-more{appearance:none;background:0 0;border:0;border-bottom:1px solid currentColor;color:var(--stiltz-ink);cursor:pointer;display:inline-block;font-family:var(--stiltz-sans);font-size:12px;font-style:normal;letter-spacing:.08em;margin-top:18px;padding:0 0 4px;text-transform:uppercase}.stay-review-more:focus-visible,.stay-review-more:hover{color:var(--stiltz-timber);outline:0}.stay-review-controls{align-items:center;display:flex;gap:18px;justify-content:center;margin-top:30px}.stay-review-arrow,.stay-review-dot{appearance:none;background:0 0;border:0;cursor:pointer;padding:0}.stay-review-arrow{align-items:center;border:1px solid var(--stiltz-border);color:var(--stiltz-ink);display:inline-flex;font-family:var(--stiltz-serif);font-size:34px;height:42px;justify-content:center;line-height:1;transition:background .2s ease,border-color .2s ease;width:42px}.stay-review-arrow:focus-visible,.stay-review-arrow:hover{background:var(--stiltz-sand);border-color:var(--stiltz-timber);outline:0}.stay-review-dots{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.stay-review-dot{border:1px solid var(--stiltz-timber);border-radius:999px;height:10px;opacity:.45;transition:background .2s ease,opacity .2s ease,transform .2s ease;width:10px}.stay-review-dot.is-active{background:var(--stiltz-timber);opacity:1;transform:scale(1.2)}.stay-review-dot:focus-visible{outline:2px solid var(--stiltz-timber);outline-offset:3px}.stay-answers{background:#fff;padding:clamp(72px,9vw,112px) 0}#stay-questions{scroll-margin-top:190px}.stay-answers-inner{align-items:start;display:grid;gap:clamp(38px,6vw,78px);grid-template-columns:minmax(0,1fr) minmax(260px,.48fr)}.stay-answers-heading{grid-column:2;grid-row:1}.stay-answers-heading h2{font-size:clamp(38px, 4.6vw, 58px);max-width:460px}.stay-answer-grid{display:grid;gap:4px;grid-column:1;grid-row:1;grid-template-columns:repeat(2,minmax(0,1fr))}.stay-answer-card{background:#faf8f3;min-height:210px;padding:clamp(28px,4vw,42px)}.stay-answer-card h3{color:var(--stiltz-ink);font-family:var(--stiltz-serif);font-size:clamp(24px, 2.4vw, 32px);font-weight:500;line-height:1.08;margin:0 0 18px}.stay-answer-card p{color:var(--stiltz-secondary-text);font-size:16px;line-height:1.7;margin:0}@media (max-width:980px){.stay-hero-full,.stay-hero-full img{min-height:100vh;min-height:100svh;height:100vh;height:100svh}.stay-path,.stay-path-reverse{grid-template-columns:1fr}.stay-path-reverse .stay-path-copy{order:0}.stay-aerial-story{height:clamp(320px,42vh,480px)}.stay-path{gap:34px;padding:56px 0}.stay-path-media img,.stay-path-slider{aspect-ratio:4/3}.stay-included-grid{grid-template-columns:1fr 1fr;row-gap:36px}.stay-included-grid .eyebrow{font-size:clamp(28px, 4.4vw, 34px);font-weight:600;grid-column:1/-1;justify-content:center;text-align:center}.stay-included-grid article:nth-child(2)::before{display:none}.stay-reviews-grid{grid-template-columns:1fr}.stay-reviews-intro{max-width:none}.stay-review-viewport{border-left:0;border-top:1px solid var(--stiltz-border)}.stay-reviews blockquote{padding:28px 0 0}.stay-answers-inner{grid-template-columns:1fr}.stay-answer-grid,.stay-answers-heading{grid-column:auto;grid-row:auto}.stay-answer-grid{grid-template-columns:1fr}}@media (min-width:641px) and (max-width:980px) and (orientation:portrait){.stay-reviews-intro,.stay-reviews-intro .eyebrow,.stay-reviews-intro h2{margin-left:auto;margin-right:auto;text-align:center}.stay-reviews-intro .stay-rule{margin-left:auto;margin-right:auto}}@media (max-width:640px){.stay-hero-copy{top:14vh}.stay-paths-intro{padding-top:58px}.stay-path-copy h2{font-size:clamp(34px, 9vw, 44px)}.stay-path-lead{font-size:clamp(18px, 5vw, 21px);line-height:1.28;margin-top:18px}.stay-path-included ul{grid-template-columns:1fr}.stay-included-grid{grid-template-columns:1fr}.stay-included-grid article::before{display:none}.stay-reviews-intro,.stay-reviews-intro .eyebrow,.stay-reviews-intro h2{margin-left:auto;margin-right:auto;text-align:center}.stay-reviews-intro .about-rule{margin-left:auto;margin-right:auto}.stay-review-controls{gap:12px}.stay-review-arrow{height:38px;width:38px}.stay-answers{padding:64px 0}.stay-answer-card{min-height:0;padding:26px 22px}}.home-page-refined{background:var(--stiltz-bg)}.home-ref-hero{min-height:100vh;min-height:100svh;overflow:hidden;position:relative}.home-ref-hero>img,.home-ref-hero>picture>img{height:100vh;height:100svh;object-fit:cover;object-position:center;width:100%}.home-ref-hero::after{background:linear-gradient(90deg,rgba(0,0,0,.34),rgba(0,0,0,.22) 54%,rgba(0,0,0,.08));content:'';inset:0;position:absolute}.home-ref-hero-copy{color:#fff;left:50%;position:absolute;top:18vh;transform:translateX(-50%);z-index:1}.home-ref-hero-copy h1{color:#fff;font-size:clamp(58px, 6.8vw, 90px);max-width:670px}.home-ref-hero-copy span,.home-rule{background:currentColor;display:block;height:1px;margin:24px 0 22px;opacity:.68;width:56px}.home-rule{background:#8e6b45}.home-ref-hero-copy p{color:#fff;font-family:var(--stiltz-serif);font-size:clamp(20px, 2vw, 28px);line-height:1.25;max-width:560px}.home-ref-actions{display:flex;flex-wrap:wrap;gap:20px;margin-top:26px}.home-ref-hero .button.secondary{border-color:rgba(255,255,255,.75);color:#fff}.home-ref-hero .button.secondary:hover{background:#fff;border-color:#fff;color:var(--stiltz-charcoal)}.home-signals{background:var(--stiltz-soft);padding:54px 0}.home-signals-grid{display:grid;grid-template-columns:repeat(4,1fr);text-align:center}.home-signals article{padding:0 44px;position:relative}.home-signals article+article::before{background:var(--stiltz-border);content:'';height:96px;left:0;position:absolute;top:12px;width:1px}.home-signals span{display:block;font-size:40px;line-height:1;margin-bottom:16px}.home-signals h3{font-size:25px;margin-bottom:12px}.home-signals p{color:var(--stiltz-secondary-text);font-size:14px;line-height:1.45;margin:0 auto;max-width:230px}.home-story-ref{background:#faf8f3;padding:100px 0 70px}.home-story-grid-ref{align-items:center;display:grid;gap:clamp(44px,6vw,84px);grid-template-columns:1.44fr .66fr}.home-experience-copy-ref h2,.home-location-card-ref h2,.home-stay-copy-ref h2,.home-story-copy-ref h2{font-size:clamp(40px, 4.8vw, 58px)}.home-experience-copy-ref p,.home-location-card-ref p,.home-stay-copy-ref p,.home-story-copy-ref p{color:var(--stiltz-secondary-text);font-size:16px;line-height:1.65;max-width:470px}.home-stay-copy-ref p{max-width:540px}.home-story-mosaic-ref{display:grid;gap:10px;grid-template-columns:1.6fr .95fr}.home-story-mosaic-ref img{height:100%;object-fit:cover;width:100%}.home-story-mosaic-ref .story-main{grid-row:span 2;min-height:430px}.home-story-map-ref{position:relative}.home-story-map-ref img{border:1px solid var(--stiltz-light-divider);height:auto;width:100%}.map-expand-button{align-items:center;background:#faf8f3;border:1px solid rgba(36,35,32,.18);bottom:16px;color:var(--stiltz-charcoal);cursor:pointer;display:inline-flex;font-size:12px;font-weight:700;gap:8px;letter-spacing:.14em;min-height:40px;padding:12px 16px;position:absolute;right:16px;text-transform:uppercase;transition:background .2s ease,border-color .2s ease,color .2s ease;z-index:4}.map-expand-button::after{content:'+';font-size:17px;line-height:1;margin-top:-1px}.map-expand-button:focus-visible,.map-expand-button:hover{background:var(--stiltz-charcoal);border-color:var(--stiltz-charcoal);color:#fff;outline:0}.map-lightbox{align-items:center;background:rgba(16,15,13,.88);display:grid;inset:0;justify-items:center;opacity:0;padding:clamp(20px,4vw,58px);pointer-events:none;position:fixed;transition:opacity .22s ease;z-index:250}.map-lightbox.is-open{opacity:1;pointer-events:auto}.map-lightbox-frame{background:var(--stiltz-paper);box-shadow:0 24px 70px rgba(0,0,0,.34);margin:0;max-height:min(84vh,900px);max-width:min(1180px,94vw);padding:clamp(10px,1.4vw,18px);position:relative;width:100%}.map-lightbox-frame img{display:block;height:auto;max-height:calc(84vh - 72px);object-fit:contain;width:100%}.map-lightbox-close{align-items:center;background:var(--stiltz-charcoal);border:0;color:#fff;cursor:pointer;display:inline-flex;font-size:28px;height:44px;justify-content:center;line-height:1;position:absolute;right:10px;top:10px;width:44px;z-index:2}.map-lightbox-close:focus-visible,.map-lightbox-close:hover{background:#3a3833;outline:0}body.map-lightbox-open{overflow:hidden}.home-stay-ref{background:#fff;padding:clamp(28px,3.2vw,48px) 0}.home-stay-grid-ref{align-items:stretch;display:grid;gap:0;grid-template-columns:1.05fr .95fr;margin-inline:auto;width:min(1400px,calc(100% - 48px))}.home-stay-photo-ref{background:var(--stiltz-soft);overflow:hidden}.home-stay-slider-ref{height:100%;min-height:620px;position:relative}.home-stay-slide-ref{inset:0;opacity:0;position:absolute;transition:opacity .7s ease,transform 1.2s ease;transform:scale(1.015)}.home-stay-slide-ref.is-active{opacity:1;transform:scale(1);z-index:1}.home-stay-photo-ref img{display:block;height:100%;inset:0;object-fit:cover;object-position:center;position:absolute;width:100%}.home-stay-slider-controls-ref{align-items:center;bottom:24px;display:flex;gap:14px;justify-content:center;left:0;pointer-events:none;position:absolute;right:0;transform:none;z-index:3}.home-stay-slider-arrow-ref,.home-stay-slider-dot-ref{appearance:none;cursor:pointer;padding:0}.home-stay-slider-arrow-ref{align-items:center;background:rgba(250,248,243,.56);border:1px solid rgba(36,35,32,.12);border-radius:50%;color:var(--stiltz-ink);display:inline-flex;font-family:var(--stiltz-serif);font-size:32px;height:42px;justify-content:center;line-height:1;padding-bottom:4px;pointer-events:auto;position:absolute;transition:background .2s ease,color .2s ease,transform .2s ease;width:42px}.home-stay-slider-arrow-ref.prev{left:24px}.home-stay-slider-arrow-ref.next{right:24px}.home-stay-slider-arrow-ref:focus-visible,.home-stay-slider-arrow-ref:hover{background:rgba(250,248,243,.78);color:var(--stiltz-timber);outline:0;transform:scale(1.04)}.home-stay-slider-dots-ref{align-items:center;background:0 0;border:0;display:flex;gap:10px;padding:0;pointer-events:auto}.home-stay-slider-dot-ref{background:rgba(255,255,255,.68);border:0;border-radius:999px;box-shadow:0 1px 4px rgba(0,0,0,.18);height:8px;opacity:1;transition:background .2s ease,opacity .2s ease,transform .2s ease;width:8px}.home-stay-slider-dot-ref.is-active{background:#fff;opacity:1;transform:scale(1.22)}.home-stay-slider-dot-ref:focus-visible{outline:2px solid var(--stiltz-timber);outline-offset:3px}.home-stay-copy-ref{align-self:center;max-width:680px;padding:clamp(54px,6vw,94px) clamp(52px,5.4vw,88px)}.home-stay-types-ref{border-bottom:1px solid rgba(36,35,32,.12);border-top:1px solid rgba(36,35,32,.12);display:grid;gap:0;grid-template-columns:repeat(3,minmax(0,1fr));margin:30px 0 22px}.home-stay-types-ref a{color:var(--stiltz-ink);display:grid;gap:12px;min-height:108px;padding:22px 18px 18px 0;text-decoration:none;transition:color .2s ease}.home-stay-types-ref a+a{border-left:1px solid rgba(36,35,32,.12);padding-left:18px}.home-stay-types-ref a:focus-visible,.home-stay-types-ref a:hover{color:var(--stiltz-timber);outline:0}.home-stay-types-ref span{display:block;font-family:var(--stiltz-serif);font-size:clamp(22px, 1.7vw, 28px);line-height:1.05;min-height:2.1em}.home-stay-types-ref .home-stay-villa-label span{display:inline;font:inherit;min-height:0}.home-stay-villa-desktop{display:none!important}.home-stay-villa-standard{display:inline!important}@media (min-width:981px){.home-stay-villa-desktop{display:inline!important}.home-stay-villa-standard{display:none!important}}.home-stay-types-ref small{color:var(--stiltz-muted);font-size:13px;line-height:1.35}.home-stay-proofs-ref{color:var(--stiltz-secondary-text);display:flex;flex-wrap:wrap;gap:10px 18px;list-style:none;margin:0 0 28px;padding:0}.home-stay-proofs-ref li{align-items:center;display:inline-flex;font-size:14px;line-height:1.35}.home-stay-proofs-ref li::before{background:var(--stiltz-timber);border-radius:50%;content:'';height:5px;margin-right:9px;width:5px}.home-experiences-ref{background:#faf8f3;padding:calc(clamp(82px,8vw,124px) + 30px) 0 clamp(82px,8vw,124px)}.home-experience-slider-ref{align-items:center;display:grid;gap:clamp(46px,5.6vw,88px);grid-template-columns:.7fr 1.3fr}.home-experience-copy-ref{align-self:center;max-width:460px;padding-right:0}.home-experience-copy-ref h2{color:#2f2b26}.home-experience-view-all{align-items:center;color:var(--stiltz-timber);display:inline-flex;font-size:14px;font-weight:600;gap:10px;letter-spacing:.08em;margin-top:20px;text-transform:uppercase}.home-experience-view-all:hover{color:var(--stiltz-blue-soft)}.home-experience-slider-wrap{position:relative}.home-experience-worlds-ref{display:grid;gap:18px;grid-template-columns:.82fr 1.18fr;min-height:clamp(560px,45vw,680px);position:relative}.home-experience-stack-ref{display:grid;gap:18px;grid-template-rows:repeat(2,minmax(0,1fr));min-width:0}.home-experience-card{color:#fff;min-height:0;min-width:0;overflow:hidden;position:relative}.home-experience-card-feature{min-height:clamp(560px,45vw,680px)}.home-experience-card img{display:block;height:100%;object-fit:cover;width:100%}.home-experience-card-lagoon img{object-position:center 58%}.home-experience-card-ocean img{object-position:center center}.home-experience-card-desert img{object-position:46% center}.home-experience-card::after{background:linear-gradient(180deg,rgba(20,20,20,.06),rgba(20,20,20,.02) 38%,rgba(20,20,20,.22) 62%,rgba(18,15,12,.76));content:'';inset:0;position:absolute}.home-experience-card div{bottom:38px;left:34px;position:absolute;right:34px;text-shadow:0 3px 14px rgba(0,0,0,.38);z-index:1}.home-experience-card span{color:rgba(255,255,255,.76);display:block;font-size:11px;font-weight:700;letter-spacing:.18em;line-height:1;margin-bottom:13px;text-transform:uppercase}.home-experience-card h3{color:#fff;font-size:clamp(23px, 1.75vw, 30px);line-height:1.04}.home-experience-card-feature h3{font-size:clamp(34px, 3.4vw, 54px);max-width:360px}.home-experience-card p{color:rgba(255,255,255,.92);font-size:14px;font-weight:600;line-height:1.45;margin:16px 0 0;max-width:260px}.home-experience-card-feature p{font-size:15px;max-width:320px}.home-memory-line-ref{align-items:center;color:#bfa276;display:grid;min-height:clamp(320px,42vw,560px);overflow:hidden;place-items:center;position:relative;text-align:center}.home-memory-line-ref img{height:100%;inset:0;object-fit:cover;object-position:center;position:absolute;width:100%;z-index:0}.home-memory-line-ref::after{background:rgba(18,18,16,.3);content:'';inset:0;position:absolute;z-index:1}.home-memory-line-ref p{display:grid;gap:clamp(0px,.45vw,7px);left:50%;line-height:1.02;margin:0;max-width:1120px;padding:0 20px;position:absolute;text-shadow:0 3px 18px rgba(0,0,0,.45);top:50%;transform:translate(-50%,-50%);width:min(100% - 40px,1120px);z-index:2}.home-memory-line-main{color:#fff;font-family:var(--stiltz-serif);font-size:clamp(29px, 3.5vw, 52px);white-space:nowrap}.home-memory-line-script{color:#d7bd8a;font-family:Allura,cursive;font-size:clamp(45px, 5.9vw, 86px);line-height:.9;white-space:nowrap}.home-quote-ref{background:#fff;padding:clamp(70px,6vw,94px) 0 clamp(42px,4vw,62px);scroll-margin-top:150px;text-align:center}.home-quote-inner-ref{align-items:center;display:grid;justify-items:center;max-width:1160px}.home-quote-ref h2{font-size:clamp(40px, 4.8vw, 58px);max-width:760px}.home-quote-intro{color:var(--stiltz-secondary-text);font-size:clamp(18px, 1.55vw, 22px);line-height:1.55;margin:22px auto 0;max-width:760px;white-space:nowrap}.home-quote-feature-ref{margin:clamp(22px,2.7vw,34px) auto 0;max-width:1120px;width:100%}.home-quote-ref blockquote{font-family:var(--stiltz-serif);font-size:clamp(27px, 3vw, 42px);line-height:1.2;margin:0}.home-quote-ref blockquote>span{color:rgba(122,87,60,.32);display:inline-block;font-size:72px;line-height:.2;margin-right:14px;vertical-align:middle}.home-quote-ref cite{color:var(--stiltz-secondary-text);display:block;font-family:var(--stiltz-sans);font-size:13px;font-style:normal;margin-top:22px}.home-quote-more-ref{display:none}.home-location-ref{display:grid;grid-template-columns:.52fr 1fr;position:relative}.home-location-map-ref,.home-location-photo-ref{min-height:330px}.home-location-map-ref img,.home-location-photo-ref img{height:100%;object-fit:cover;width:100%}.home-location-card-ref{background:var(--stiltz-paper);box-shadow:var(--stiltz-shadow);max-width:430px;padding:52px;position:absolute;right:7vw;top:50%;transform:translateY(-50%)}.home-answers{background:#fff;padding:clamp(72px,9vw,112px) 0}#home-questions{scroll-margin-top:190px}.home-answers-inner{align-items:start;display:grid;gap:clamp(38px,6vw,78px);grid-template-columns:minmax(260px,.48fr) minmax(0,1fr)}.home-answers-heading h2{font-size:clamp(38px, 4.6vw, 58px);max-width:460px}.home-answer-grid{display:grid;gap:2px;grid-template-columns:repeat(2,minmax(0,1fr))}.home-answer-card{background:#faf8f3;min-height:210px;padding:clamp(28px,4vw,42px)}.home-answer-card h3{color:var(--stiltz-ink);font-family:var(--stiltz-serif);font-size:clamp(24px, 2.4vw, 32px);font-weight:500;line-height:1.08;margin:0 0 18px}.home-answer-card p{color:var(--stiltz-secondary-text);font-size:16px;line-height:1.7;margin:0}.home-final-ref{align-items:center;color:#fff;display:grid;grid-template-areas:'stack';justify-items:center;min-height:clamp(347px,41vw,520px);overflow:hidden;place-items:center;position:relative;text-align:center}.home-final-ref>picture{grid-area:stack;height:100%;width:100%}.home-final-ref>img,.home-final-ref>picture>img{height:100%;inset:0;object-fit:cover;object-position:70% 58%;position:absolute;width:100%;z-index:0}.home-final-ref::after{background:rgba(18,18,16,.42);content:'';inset:0;position:absolute;z-index:1}.home-final-copy-ref{align-content:center;align-items:center;color:#fff;display:grid;grid-area:stack;justify-items:center;left:50%;margin-inline:auto;place-self:center;position:absolute;text-align:center;top:100%;transform:translate(-50%,-50%);width:min(100% - 48px,1400px);z-index:2}.home-final-copy-ref h2,.home-final-copy-ref p{color:#fff;margin:0;text-shadow:0 3px 18px rgba(0,0,0,.35)}.home-final-copy-ref h2{font-size:clamp(34px, 4.6vw, 62px);line-height:1.04;max-width:760px}.home-final-copy-ref p{font-size:clamp(17px, 1.55vw, 22px);line-height:1.45;margin-top:16px;max-width:560px}.home-final-copy-ref .button{background:#fff;border-color:#fff;color:var(--stiltz-charcoal);margin-top:24px;text-shadow:none}.home-final-copy-ref .button:hover{background:0 0;color:#fff}@media (max-width:980px){.home-ref-hero,.home-ref-hero>img,.home-ref-hero>picture>img{min-height:100vh;min-height:100svh;height:100vh;height:100svh}.home-answers-inner,.home-location-ref,.home-signals-grid,.home-stay-grid-ref,.home-story-grid-ref{grid-template-columns:1fr}.home-signals-grid{row-gap:44px}.home-signals article{padding:0 24px}.home-signals article::before{display:none}.home-story-mosaic-ref{grid-template-columns:1fr 1fr}.home-stay-slider-ref{min-height:420px}.home-stay-grid-ref{width:min(100% - 28px,1400px)}.home-stay-copy-ref{max-width:680px;padding:54px 24px 66px}.home-stay-types-ref{grid-template-columns:1fr}.home-stay-types-ref a{min-height:auto;padding:18px 0}.home-stay-types-ref a+a{border-left:0;border-top:1px solid rgba(36,35,32,.12);padding-left:0}.home-experience-slider-ref{grid-template-columns:1fr}.home-experience-copy-ref{max-width:640px}.home-experience-worlds-ref{min-height:560px}.home-quote-intro{white-space:normal}.home-quote-inner-ref{max-width:100%;min-width:0;overflow:visible}.home-location-card-ref{margin:-70px 24px 60px;max-width:none;position:relative;right:auto;top:auto;transform:none}.home-answer-grid{grid-template-columns:1fr}}@media (min-width:641px) and (max-width:980px) and (orientation:portrait){.home-stay-grid-ref{width:min(100% - 88px,680px)}.home-stay-photo-ref img{height:100%;min-height:0;width:100%}.home-stay-slider-ref{aspect-ratio:4/3;min-height:0}}@media (max-width:640px){.home-ref-hero-copy{top:22vh}.home-ref-hero-copy h1{font-size:clamp(48px, 14vw, 64px);max-width:340px}.home-ref-hero-copy p{font-size:clamp(18px, 5vw, 22px);max-width:340px}.home-ref-actions{flex-direction:column}.home-stay-grid-ref{width:min(100% - 40px,1400px)}.home-signals-grid{grid-template-columns:1fr}.home-stay-copy-ref .eyebrow{margin-bottom:12px}.home-stay-copy-ref h2{font-size:clamp(36px, 10vw, 42px)}.home-stay-copy-ref p{line-height:1.5;margin-bottom:1rem}.home-stay-copy-ref .button{min-height:44px;padding:11px 24px}.home-stay-types-ref{margin:24px 0 20px}.home-stay-types-ref span{font-size:24px}.home-stay-proofs-ref{display:grid;gap:9px;margin-bottom:24px}.home-experiences-ref{padding-top:72px}.home-quote-ref{padding:62px 0 44px}.home-quote-inner-ref{width:min(100% - 28px,1160px)}.home-quote-ref h2{font-size:clamp(32px, 9.5vw, 42px);line-height:1.04;max-width:100%}.home-quote-intro{font-size:16px;line-height:1.45;margin-top:16px;max-width:28ch}.home-experience-worlds-ref{grid-template-columns:1fr;min-height:0}.home-experience-stack-ref{grid-template-rows:none}.home-experience-card,.home-experience-card-feature{min-height:360px}.home-experience-card div{bottom:30px;left:28px;right:28px}.home-answers{padding:64px 0}.home-answer-card{min-height:0;padding:26px 22px}.home-signals article::before{display:none}.home-story-mosaic-ref{grid-template-columns:1fr}.home-stay-slider-ref{min-height:320px}.home-stay-slider-controls-ref{bottom:16px;gap:10px}.home-stay-slider-arrow-ref{height:38px;width:38px}.home-stay-slider-arrow-ref.prev{left:14px}.home-stay-slider-arrow-ref.next{right:14px}.home-stay-slider-dots-ref{padding:0}.home-memory-line-ref p{left:50%;margin:0;position:absolute;top:50%;transform:translate(-50%,-50%);width:min(100% - 16px,460px)}.home-memory-line-main{font-size:clamp(23px, 6.4vw, 29px);font-weight:500;white-space:normal}.home-memory-line-script{font-size:clamp(37px, 9.6vw, 50px);white-space:nowrap}.about-book-cta,.home-final-ref{min-height:380px;place-items:center}.stay-book-cta img{object-position:18% 56%}.home-final-ref>img,.home-final-ref>picture>img{object-position:72% 58%}.about-book-cta-copy,.home-final-copy-ref{align-self:center;justify-self:center;left:50%;margin-inline:auto;position:absolute;text-align:center;top:100%;transform:translate(-50%,-50%);width:min(100% - 40px,360px)}.about-book-cta h2,.home-final-copy-ref h2{font-size:clamp(31px, 8.5vw, 40px);max-width:340px}.home-final-copy-ref p{font-size:clamp(16px, 4.4vw, 18px);line-height:1.35;margin-top:12px;max-width:320px}.about-book-cta .button,.home-final-copy-ref .button{margin-top:18px;max-width:280px;min-height:46px;padding:12px 24px;width:auto}}.about-hero-copy,.contact-hero-copy,.experiences-hero-copy,.gallery-hero-copy,.home-ref-hero-copy,.stay-hero-copy{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:rgba(12,12,12,.22);bottom:0;box-shadow:0 18px 44px rgba(0,0,0,.14);color:#fff;left:50px;max-width:min(920px,calc(100% - 96px));padding:clamp(28px,2.8vw,42px) clamp(38px,4vw,66px);position:absolute;top:auto;transform:none;width:fit-content;z-index:1}@media (min-width:981px){.stay-hero-copy{left:50px}}.about-hero-copy h1,.contact-hero-copy h1,.experiences-hero-copy h1,.gallery-hero-copy h1,.home-ref-hero-copy h1,.stay-hero-copy h1{color:#fff;font-size:clamp(48px, 5.8vw, 50px);line-height:.98;max-width:920px}@media (min-width:981px){.about-hero-copy,.contact-hero-copy,.experiences-hero-copy,.gallery-hero-copy,.home-ref-hero-copy,.stay-hero-copy{max-width:calc(100% - 100px)}.about-hero-copy h1,.contact-hero-copy h1,.experiences-hero-copy h1,.gallery-hero-copy h1,.home-ref-hero-copy h1,.stay-hero-copy h1{max-width:none;white-space:nowrap}.about-hero-copy,.home-ref-hero-copy,.stay-hero-copy{bottom:0;max-width:min(860px,calc(100% - 600px))}.about-hero-copy h1,.home-ref-hero-copy h1,.stay-hero-copy h1{white-space:normal}}.about-hero-copy>span,.contact-hero-copy>span,.experiences-hero-copy>span,.gallery-hero-copy>span,.home-ref-hero-copy>span,.stay-hero-copy>span{display:none}.about-hero-copy p,.contact-hero-copy p,.experiences-hero-copy p,.gallery-hero-copy p,.home-ref-hero-copy p,.stay-hero-copy p{color:rgba(255,255,255,.92);font-family:var(--stiltz-sans);font-size:clamp(15px, 1.45vw, 19px);font-weight:400;line-height:1.42;margin:12px 0 0;max-width:920px}.experiences-hero-copy .eyebrow{margin-bottom:12px}.home-ref-actions,.stay-hero-copy .button.secondary{margin-top:28px}.home-ref-hero-copy .button.secondary,.stay-hero-copy .button.secondary{border-color:rgba(255,255,255,.75);color:#fff}.home-ref-hero-copy .button.secondary:focus-visible,.home-ref-hero-copy .button.secondary:hover,.stay-hero-copy .button.secondary:focus-visible,.stay-hero-copy .button.secondary:hover{background:var(--stiltz-charcoal);border-color:var(--stiltz-charcoal);color:#fff}.about-hero::after,.contact-hero::after,.experiences-hero-full::after,.gallery-hero-full::after,.hero::after,.home-ref-hero::after,.stay-hero-full::after{background:0 0;content:none;display:none}@media (min-width:641px) and (max-width:1368px) and (orientation:landscape){.about-hero-copy h1,.contact-hero-copy h1,.experiences-hero-copy h1,.gallery-hero-copy h1,.home-ref-hero-copy h1,.stay-hero-copy h1{font-size:clamp(44px, 5.4vw, 45px)}.about-book-cta h2,.home-final-copy-ref h2{font-size:clamp(38px, 4vw, 50px)}}@media (max-width:980px){.about-hero-copy,.home-ref-hero-copy,.stay-hero-copy{bottom:auto;left:clamp(24px,6vw,44px);max-width:min(560px,calc(100% - 48px));top:clamp(176px,24vh,240px);width:fit-content}.about-hero-copy h1,.home-ref-hero-copy h1,.stay-hero-copy h1{font-size:clamp(34px, 7.4vw, 46px);white-space:normal}.hero-booking-mockup{bottom:22px;left:clamp(24px,6vw,44px);right:auto;top:auto;width:min(100% - 84px,420px)}}@media (max-width:640px){.about-hero-copy,.contact-hero-copy,.experiences-hero-copy,.gallery-hero-copy,.home-ref-hero-copy,.stay-hero-copy{bottom:0;left:44px;max-width:calc(100% - 68px);padding:24px 28px;top:auto;width:fit-content}.about-hero-copy h1,.contact-hero-copy h1,.experiences-hero-copy h1,.gallery-hero-copy h1,.home-ref-hero-copy h1,.stay-hero-copy h1{font-size:clamp(34px, 10vw, 46px);line-height:1.02;max-width:520px;white-space:normal}.about-hero-copy p,.contact-hero-copy p,.experiences-hero-copy p,.gallery-hero-copy p,.home-ref-hero-copy p,.stay-hero-copy p{font-size:clamp(14px, 3.8vw, 16px);font-weight:400;line-height:1.45;max-width:520px}.about-hero-copy,.home-ref-hero-copy,.stay-hero-copy{bottom:auto;left:20px;max-width:calc(100% - 40px);padding:22px;top:clamp(180px,24vh,220px);width:fit-content}.about-hero-copy h1,.home-ref-hero-copy h1,.stay-hero-copy h1{font-size:clamp(30px, 8.8vw, 40px)}.hero-booking-mockup{bottom:22px;left:42px;gap:10px;grid-template-columns:1fr;max-width:none;padding:10px;right:auto;top:auto;width:min(100% - 84px,340px)}.hero-booking-heading{border-bottom:1px solid rgba(36,35,32,.14);gap:6px;padding:6px 4px 12px}.hero-booking-heading strong{font-size:22px;max-width:none}.hero-booking-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-booking-field{min-height:64px;padding:12px 11px}.hero-booking-field strong{font-size:14px}.hero-booking-submit{min-height:48px;padding:14px 18px;white-space:normal}}@media (max-width:980px){.about-hero-copy,.home-ref-hero-copy,.stay-hero-copy{bottom:0;top:auto}.about-hero-copy p,.contact-hero-copy p,.experiences-hero-copy p,.gallery-hero-copy p,.home-ref-hero-copy p,.stay-hero-copy p{display:none}}@media (max-width:640px){body{padding-bottom:0}.sticky-booking-bar{display:none!important}}@media (min-width:641px) and (max-width:1180px){.stiltz-shell{width:min(1400px,calc(100% - 88px))}.stiltz-wide{width:min(1600px,calc(100% - 88px))}.stay-path.stiltz-shell{max-width:1480px;width:min(1480px,calc(100% - 88px))}.about-book-cta-copy,.home-final-copy-ref,.home-stay-grid-ref{width:min(1400px,calc(100% - 88px))}.home-quote-inner-ref{width:min(1160px,calc(100% - 88px))}.wow-copy{left:44px;right:44px}.home-location-card-ref,.location-card,.location-map{margin-left:44px;margin-right:44px}.about-architecture-copy,.about-commitment-copy,.about-hosts-copy,.contact-booking-copy,.experience-feature-copy,.home-stay-copy-ref{padding-left:44px;padding-right:44px}.about-hero-copy,.contact-hero-copy,.experiences-hero-copy,.gallery-hero-copy,.home-ref-hero-copy,.stay-hero-copy{left:44px;max-width:calc(100% - 88px)}}@media (max-width:640px){.stiltz-shell{width:min(1400px,calc(100% - 76px))}.stiltz-wide{width:min(1600px,calc(100% - 76px))}.stay-path.stiltz-shell{max-width:1480px;width:min(1480px,calc(100% - 76px))}.about-book-cta-copy,.home-final-copy-ref,.home-stay-grid-ref{width:min(1400px,calc(100% - 76px))}.home-quote-inner-ref{width:min(1160px,calc(100% - 76px))}.contact-hero-copy{left:38px;width:calc(100% - 76px)}.about-hero-copy,.contact-hero-copy,.experiences-hero-copy,.gallery-hero-copy,.home-ref-hero-copy,.stay-hero-copy{left:38px;max-width:calc(100% - 76px)}.wow-copy{left:38px;right:38px}.home-location-card-ref,.location-card,.location-map{margin-left:38px;margin-right:38px}.about-architecture-copy,.about-commitment-copy,.about-hosts-copy,.contact-booking-copy,.contact-form,.experience-feature-copy,.home-stay-copy-ref{padding-left:38px;padding-right:38px}.home-memory-line-ref p{padding-left:0;padding-right:0;width:min(1120px,calc(100% - 76px))}.home-experience-card div{left:38px;right:38px}.hero-booking-mockup{left:38px;width:min(340px,calc(100% - 76px))}}
 .home-hero-slide{inset:0;opacity:0;position:absolute;transform:scale(1.018);transition:opacity .9s ease,transform 5.8s ease;z-index:0}.home-hero-slide.is-active{opacity:1;transform:scale(1);z-index:1}.home-hero-slide>img,.home-hero-slide>picture>img{height:100vh;height:100svh;object-fit:cover;object-position:center;width:100%}.home-hero-slide-old>img,.home-hero-slide-old>picture>img{object-position:center right}.home-hero-dots{align-items:center;bottom:28px;display:flex;gap:10px;position:absolute;right:max(38px,calc((100vw - 1400px)/2 + 38px));z-index:3}.home-hero-dot{appearance:none;background:rgba(255,255,255,.64);border:0;border-radius:999px;box-shadow:0 2px 8px rgba(0,0,0,.18);cursor:pointer;height:9px;padding:0;transition:background .2s ease,transform .2s ease;width:9px}.home-hero-dot.is-active{background:#fff;transform:scale(1.24)}.home-hero-dot:focus-visible{outline:2px solid #fff;outline-offset:4px}@media (max-width:800px){.home-hero-slide-old>img,.home-hero-slide-old>picture>img{object-position:center}}@media (max-width:640px){.home-hero-dots{bottom:20px;right:38px}}
.site-header.is-condensed .header-mark img.header-mark-logo{max-height:66px;width:190px}.stay-hero-slide{inset:0;opacity:0;position:absolute;transform:scale(1.018);transition:opacity .9s ease,transform 5.8s ease;z-index:0}.stay-hero-slide.is-active{opacity:1;transform:scale(1);z-index:1}.stay-hero-slide>img,.stay-hero-slide>picture>img{height:100vh;height:100svh;object-fit:cover;object-position:center;width:100%}.stay-hero-dots{align-items:center;bottom:28px;display:flex;gap:10px;position:absolute;right:max(38px,calc((100vw - 1400px)/2 + 38px));z-index:3}.stay-hero-dot{appearance:none;background:rgba(255,255,255,.64);border:0;border-radius:999px;box-shadow:0 2px 8px rgba(0,0,0,.18);cursor:pointer;height:9px;padding:0;transition:background .2s ease,transform .2s ease;width:9px}.stay-hero-dot.is-active{background:#fff;transform:scale(1.24)}.stay-hero-dot:focus-visible{outline:2px solid #fff;outline-offset:4px}@media (max-width:640px){.stay-hero-dots{bottom:20px;right:38px}}
@media (min-width:981px){.about-architecture,.about-commitment-grid{height:800px}.about-architecture-image,.about-commitment-image,.about-architecture-image img,.about-commitment-image img{height:100%;min-height:0}}@media (max-width:980px){.about-architecture-image,.about-commitment-image{height:clamp(420px,66vw,520px);min-height:0}.about-architecture-image img,.about-commitment-image img{height:100%;min-height:0}}

/* Keep photo descriptions out of public image viewers; image alt text is preserved. */
.gallery-lightbox-frame [data-gallery-lightbox-caption],
.award-lightbox-frame figcaption,
.stay-path-slider figcaption,
.home-stay-slider-ref figcaption {
    display: none;
}

/* Fitted gallery masonry: selected larger photographs, four-pixel seams, no empty pockets. */
.gallery-page-mosaic { column-gap: 4px; }
.gallery-page-mosaic figure { margin-bottom: 4px; }
.gallery-page-mosaic.gallery-curated-masonry { column-count: auto; position: relative; }
.gallery-curated-masonry > figure[data-gallery-item] { margin: 0; position: absolute; }
.gallery-curated-masonry .gallery-masonry-button { aspect-ratio: auto; height: 100%; }
.gallery-curated-masonry img { height: 100%; object-fit: cover; width: 100%; }

/* connectivity.css */
/* Africa Online connectivity statement */
.home-connectivity-ref {
  background: var(--stiltz-paper);
  border-bottom: 1px solid var(--stiltz-light-divider);
  border-top: 1px solid var(--stiltz-light-divider);
  scroll-margin-top: 96px;
}

.home-connectivity-inner-ref {
  align-items: center;
  display: grid;
  gap: clamp(24px, 3vw, 46px);
  grid-template-columns: max-content 1px minmax(0, 820px);
  justify-content: center;
  padding-block: clamp(30px, 3.2vw, 46px);
}

.home-connectivity-kicker-ref {
  color: #8E6B45;
  font-family: var(--stiltz-sans);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: .16em;
  line-height: 1.4;
  text-transform: uppercase;
}

.home-connectivity-divider-ref {
  background: #8E6B45;
  height: 46px;
  opacity: .48;
  width: 1px;
}

.home-connectivity-ref p {
  color: var(--stiltz-secondary-text);
  font-family: var(--stiltz-serif);
  font-size: clamp(19px, 1.65vw, 25px);
  line-height: 1.4;
  margin: 0;
  max-width: 820px;
}

.home-connectivity-ref strong {
  color: var(--stiltz-ink);
  font-weight: 600;
}

@media (max-width: 700px) {
  .home-connectivity-inner-ref {
    gap: 15px;
    grid-template-columns: 1fr;
    justify-items: center;
    padding-block: 28px 30px;
    text-align: center;
    width: min(100% - 40px, 1400px);
  }

  .home-connectivity-divider-ref {
    height: 1px;
    width: 62px;
  }

  .home-connectivity-ref p {
    font-size: 19px;
    line-height: 1.48;
    max-width: 33ch;
  }
}

/* Follow the shared page content width outside the main element, 2026-09-16. */
.home-connectivity-ref { --connectivity-content-edge: 64px; }
@media (max-width: 980px) {
  .home-connectivity-ref { --connectivity-content-edge: 32px; }
}
@media (max-width: 640px) {
  .home-connectivity-ref { --connectivity-content-edge: 20px; }
}
.home-connectivity-ref .home-connectivity-inner-ref {
  width: min(1400px, calc(100% - var(--connectivity-content-edge) * 2));
  margin-inline: auto;
}
.home-connectivity-ref p {
  max-width: none;
  width: 100%;
}
@media (min-width: 701px) {
  .home-connectivity-ref .home-connectivity-inner-ref {
    grid-template-columns: max-content 1px minmax(0, 1fr);
  }
}

/* layout-refinements.css */
/* Shared typography and content spacing, matching the approved Desert Breeze scale. */
@media (min-width: 641px) {
    body main :is(h1,h2,h3,h4,h5,h6):not(.home-experiences-ref *) { font-size: 32px !important; }
}
@media (min-width: 981px) {
    body main :is(h1,h2,h3,h4,h5,h6):not(.home-experiences-ref *) { font-size: 40px !important; }
    .home-answer-grid, .stay-answer-grid, .experience-answer-grid, .contact-answer-grid {
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 360px), 1fr));
    }
}
@media (max-width: 640px) {
    body main :is(.home-ref-hero-copy, .stay-hero-copy, .about-hero-copy, .experiences-hero-copy, .gallery-hero-copy, .contact-hero-copy) h1 {
        font-size: 26px !important;
    }
}
body main :is(.home-answer-card, .stay-answer-card, .experience-answer-card, .contact-answer-card) h3 {
    font-size: 22px !important;
}
@media (min-width: 981px) {
    body main :is(.home-answer-card, .stay-answer-card, .experience-answer-card, .contact-answer-card) h3 {
        font-size: 24px !important;
    }
}

/* All text-button labels use the same size across desktop, tablet and mobile. */
:is(.button, .wp-block-button__link, .header-book-panel, .sticky-booking-submit, .sticky-booking-field, .stay-award-button, .stay-review-more, .map-expand-button, .text-link, [data-gallery-filter], input[type="submit"], input[type="button"], input[type="reset"]):not(.home-experiences-ref *) {
    font-size: 13px !important;
}

/* Shared content edge spacing. Header, footer and hero containers are excluded. */
main {
    --stiltz-content-edge: 64px;
    --stiltz-after-hero-space: 96px;
}
@media (max-width: 980px) {
    main { --stiltz-content-edge: 32px; --stiltz-after-hero-space: 72px; }
}
@media (max-width: 640px) {
    main { --stiltz-content-edge: 20px; --stiltz-after-hero-space: 56px; }
}
main > section:not(:is([class*="hero"], .home-final-ref, .about-book-cta, .home-experiences-ref)) > :is(.stiltz-shell, .stiltz-wide),
main > .stiltz-shell,
main > .about-architecture {
    width: min(1400px, calc(100% - var(--stiltz-content-edge) * 2)) !important;
    margin-inline: auto !important;
}
/* Give Your Stay more width while preserving the shared content gutters. */
#your-stay.home-stay-ref { padding-top: var(--stiltz-after-hero-space); }
#your-stay .home-stay-grid-ref,
#home-location .home-story-grid-ref {
    width: min(1400px, calc(100% - var(--stiltz-content-edge) * 2)) !important;
}
@media (min-width: 641px) and (max-width: 980px) {
    #your-stay .home-stay-grid-ref,
    #home-location .home-story-grid-ref { max-width: 680px; }
}

/* Keep the stay details divider inside the content edge. */
#your-stay .home-stay-types-ref::before { right: 0; }

/* Let the review widget shrink with its containing column. */
.home-quote-inner-ref, .about-reviews-inner { grid-template-columns: minmax(0, 1fr); }
.home-quote-feature-ref, .about-reviews-widget { min-width: 0; max-width: 100%; }

/* Keep the contact map within the same edges as its section content. */
main .contact-map-panel img { width: 100%; max-width: 100%; margin-inline: 0; }

@media (max-width: 640px) {
    main .knut-place-image { margin-inline: 0; }
}

/* Long contact links wrap inside the mobile content column. */
main .contact-item { grid-template-columns: 24px minmax(0, 1fr); }
main .contact-item a { overflow-wrap: anywhere; }
main .contact-answer-card { overflow-wrap: anywhere; min-width: 0; }

/* Stacked text uses the section gutter once, without another inner side inset. */
@media (max-width: 980px) {
    #your-stay .home-stay-copy-ref { padding-inline: 0; }
    main :is(.about-architecture-copy, .about-commitment-copy) {
        width: 100%;
        padding-inline: 0;
    }
}

/* Balance the Your Stay photo with more spacious copy. */
@media (min-width: 981px) {
    #your-stay .home-stay-grid-ref {
        grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
        column-gap: clamp(40px, 5vw, 72px);
    }
    #your-stay .home-stay-copy-ref { padding-inline: 0; }
    #your-stay .home-stay-photo-ref { align-self: center; }
    #your-stay .home-stay-slider-ref { min-height: 0; height: auto; aspect-ratio: 3 / 2; }
}

/* Keep the About story photograph inside its content frame. */
main .about-story-image img { transform: none; }

/* Breathing room between the Your Stay text groups and room options. */
@media (min-width: 641px) {
    #your-stay .home-stay-copy-ref .eyebrow { margin-bottom: 12px; }
    #your-stay .home-stay-copy-ref .home-rule { margin: 24px 0; }
    #your-stay .home-stay-copy-ref p { line-height: 1.7; }
    #your-stay .home-stay-types-ref { margin: 28px 0 24px; }
    #your-stay .home-stay-types-ref a { padding-block: 20px; gap: 12px; }
    #your-stay .home-stay-types-ref span { line-height: 1.2; }
    #your-stay .home-stay-proofs-ref { gap: 12px 20px; margin-bottom: 28px; }
}
@media (min-width: 641px) and (max-width: 980px) {
    #your-stay .home-stay-grid-ref { column-gap: 28px; }
}

/* Match the Stay accommodation sliders: inset frame and centred cream arrows. */
#your-stay .home-stay-slider-ref {
    aspect-ratio: 3 / 2;
    background: var(--stiltz-soft);
    overflow: hidden;
}
#your-stay .home-stay-slider-ref::after {
    border: 1px solid rgba(255,255,255,.52);
    content: '';
    inset: 18px;
    pointer-events: none;
    position: absolute;
    z-index: 2;
}
#your-stay .home-stay-slider-ref img { transform: none; }
#your-stay .home-stay-slider-ref img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
#your-stay .home-stay-slider-controls-ref { inset: 0; display: block; }
#your-stay .home-stay-slider-dots-ref { display: none; }
#your-stay .home-stay-slider-arrow-ref {
    background: #FAF8F3;
    border: 1px solid rgba(36,35,32,.16);
    height: 44px;
    width: 44px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 3;
}
#your-stay .home-stay-slider-arrow-ref.prev { left: 28px; }
#your-stay .home-stay-slider-arrow-ref.next { right: 28px; }
#your-stay .home-stay-slider-arrow-ref:hover,
#your-stay .home-stay-slider-arrow-ref:focus-visible {
    background: #fff;
    color: var(--stiltz-timber);
    transform: translateY(-50%) scale(1.04);
}

/* Mirror Your Stay's columns: Location copy left, full map right. */
@media (min-width: 641px) {
    #home-location .home-story-grid-ref {
        grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
        column-gap: 28px;
    }
    #home-location .home-story-copy-ref p { max-width: none; }
}
@media (min-width: 981px) {
    #home-location .home-story-grid-ref {
        grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
        column-gap: clamp(40px, 5vw, 72px);
    }
}

/* Alternate the desktop flow below Location: answers left, heading right. */
@media (min-width: 981px) {
    #home-questions .home-answers-inner {
        grid-template-columns: minmax(0, 1fr) minmax(260px, .48fr);
    }
    #home-questions .home-answers-heading { grid-column: 2; grid-row: 1; }
    #home-questions .home-answer-grid { grid-column: 1; grid-row: 1; }
}

/* Subtle, consistent separation between every Good to know card. */
main :is(.home-answer-grid, .stay-answer-grid, .experience-answer-grid, .contact-answer-grid) {
    gap: 12px;
}

/* Vertically balance every Good to know heading beside its answer cards. */
main :is(.home-answers-heading, .stay-answers-heading, .experience-answers-heading, .contact-answers-heading) {
    align-self: center;
}

/* Match the opening About story to the four established lower image/text panels. */
.about-page .about-story { padding: var(--stiltz-after-hero-space) 0; }
.about-page .about-story-grid {
    align-items: stretch;
    gap: 0;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.about-page .about-story-image { height: 100%; min-height: 0; overflow: hidden; }
.about-page .about-story-image img {
    display: block;
    aspect-ratio: auto;
    width: 100%;
    height: 100%;
    min-height: 0;
    object-fit: cover;
}
.about-page .about-story-copy {
    align-self: center;
    max-width: none;
    padding: clamp(56px, 8vw, 120px);
}
@media (min-width: 981px) {
    /* Trim the bottom of the photo while retaining its width and original framing. */
    .about-page .about-story-grid { height: auto; min-height: 700px; }
    .about-page .about-story-image { position: relative; height: auto; }
    .about-page .about-story-image img {
        position: absolute;
        top: 0;
        left: 0;
        height: max(800px, 100%);
    }
    .about-page .about-story-copy { padding-block: 32px; }
}
@media (max-width: 980px) {
    .about-page .about-story-grid { grid-template-columns: 1fr; }
    .about-page .about-story-image { height: clamp(420px, 66vw, 520px); }
    .about-page .about-story-copy { padding-inline: 0; }
}
@media (max-width: 640px) {
    .about-page .about-story-copy { padding-block: 54px; }
}

/* Separate the garden-image panel from the aerial photograph above it. */
.about-page .about-aerial + .about-architecture {
    margin-top: var(--stiltz-after-hero-space);
}

/* Centre the Stay review introduction beside the changing review content. */
.stay-page-full .stay-reviews-intro { align-self: center; }

/* Give the Contact details and form equal room and a more comfortable gap. */
@media (min-width: 981px) {
    .contact-page .contact-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        column-gap: clamp(40px, 5vw, 70px);
    }
    .contact-page .contact-details h2,
    .contact-page .contact-details > p { max-width: none; }
}

/* Match the home Location proportions, with the Contact map remaining on the left. */
@media (min-width: 981px) {
    .contact-page .contact-location-grid {
        grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
        column-gap: clamp(40px, 5vw, 72px);
    }
}

/* Gallery filters: bring categories closer to the banner. */
.gallery-page-full .gallery-index { padding-top: 78px; }
@media (max-width: 640px) {
  .gallery-page-full .gallery-index { padding-top: 39px; }
}

/* Balance the accommodation introduction between the hero and sunset image. */
.stay-page-full .stay-paths-intro { padding-top: 80px; padding-bottom: 60px; }
@media (min-width: 981px) {
    .stay-page-full .stay-paths-intro { padding-top: 100px; padding-bottom: 75px; }
}
@media (max-width: 640px) {
    .stay-page-full .stay-paths-intro { padding-top: 56px; padding-bottom: 42px; }
}

/* Centre each review within the shared slider height, including short entries. */
.stay-page-full .stay-reviews-intro { align-self: center; }
.stay-page-full .stay-review-track { align-items: center; }

/* Subtle footer colour refinements using this site's accent. */
.site-footer { --footer-accent: #8E6B45; }
.site-footer .footer-social a { background: var(--footer-accent); border-color: var(--footer-accent); color: #FFFFFF; }
.site-footer .footer-social a:is(:hover, :focus-visible) { background: #76583A; border-color: #76583A; color: #FFFFFF; }
.site-footer .footer-link-row { border-top-color: rgba(142, 107, 69, .2); border-bottom-color: rgba(142, 107, 69, .2); }
.site-footer .footer-link-row a:is(:hover, :focus-visible) { color: var(--footer-accent); }
.site-footer .footer-award-label { color: #4A4640; }
.site-footer .footer-awards-list a:is(:hover, :focus-visible) .footer-award-label { color: var(--footer-accent); }

/* Align the Awards and sister-lodge headings at the top of their columns. */
.site-footer .footer-recognition { align-items: start; }

/* Use The Stiltz accent on the condensed Phase 2 booking button. */
body .site-header.is-condensed .header-book-panel {
    background: #8E6B45;
    border-color: #8E6B45;
    color: #FFFFFF;
}
body .site-header.is-condensed .header-book-panel:is(:hover, :focus-visible) {
    background: #76583A;
    border-color: #76583A;
    color: #FFFFFF;
}

/* Use the lodge accent for the Contact form submit button. */
.contact-page #contact-form { scroll-margin-top: 160px; }
.contact-page .contact-form [role="status"] { color: #8E6B45; }
.contact-page .contact-form [type="submit"] { background: #8E6B45; border-color: #8E6B45; color: #FFFFFF; }
.contact-page .contact-form [type="submit"]:is(:hover, :focus-visible) { background: #76583A; border-color: #76583A; color: #FFFFFF; }

/* Balance visible contact content and form edges in the two-column layout. */
@media (min-width: 981px) {
    .contact-page .contact-grid { align-items: stretch; }
    .contact-page .contact-form { margin-block: 0; padding-block: 0; }
    .contact-page .contact-details { display: flex; flex-direction: column; }
    .contact-page .contact-details h2 { margin-bottom: 20px; }
    .contact-page .contact-details > p { margin-bottom: 0; }
    .contact-page .contact-rule { margin-block: 35px; flex-shrink: 0; }
    .contact-page .contact-list { flex: 1; align-content: space-between; gap: 35px; margin-top: 0; }
    .contact-page .contact-item p { line-height: 1.55; }
}

/* cta-banner-height.css */
/* Compact closing CTA banners, approved 2026-09-14.
   These are final rendered heights, including the active desktop proportions preview. */
main > :is(.home-final-ref, .about-book-cta) {
    min-height: 320px;
}
@media (max-width: 980px) {
    main > :is(.home-final-ref, .about-book-cta) {
        min-height: 300px;
    }
}

/* Match the Home remembered-places banner to the compact CTA scale. */
main > .home-memory-line-ref { min-height: 320px; }
main > .home-memory-line-ref :is(.home-memory-line-main, .home-memory-line-script) {
    line-height: 1.15;
    white-space: normal;
}
main > .home-memory-line-ref .home-memory-line-main { font-size: 27.6px; }
main > .home-memory-line-ref .home-memory-line-script { font-size: 44px; }
@media (max-width: 980px) {
    main > .home-memory-line-ref { min-height: 300px; }
    main > .home-memory-line-ref .home-memory-line-main { font-size: 25.3px; }
    main > .home-memory-line-ref .home-memory-line-script { font-size: 40px; }
}
@media (max-width: 640px) {
    main > .home-memory-line-ref .home-memory-line-main { font-size: 22px; }
    main > .home-memory-line-ref .home-memory-line-script { font-size: clamp(26px, 8vw, 32px); }
}

/* Let more of the lagoon landscape show behind the larger text. */
main > .home-memory-line-ref::after { background: rgba(18, 18, 16, .24); }

/* Give the remembered-places banner more separation from Your Stay. */
main > .home-memory-line-ref { margin-top: 32px; }
@media (max-width: 640px) {
    main > .home-memory-line-ref { margin-top: 24px; }
}

/* Full-width photo and CTA banners match The Stiltz Stay panorama.
   Approved 2026-09-15. Opening heroes and contained images are excluded.
   Recorded displayed heights are compensated for the page scale (2026-09-16). */
main > :is(.home-final-ref, .about-book-cta, .home-memory-line-ref, .about-aerial, .about-full-width-image, .stay-aerial-story, .stay-breakfast-banner, .contact-photo-banner, .contact-camels-banner) {
    --full-width-banner-height: clamp(440px, 56vh, 680px);
    height: calc(var(--full-width-banner-height) / var(--site-page-scale, 1));
    min-height: calc(var(--full-width-banner-height) / var(--site-page-scale, 1));
}
@media (min-width: 981px) and (pointer: fine) {
    main > :is(.home-final-ref, .about-book-cta, .home-memory-line-ref, .about-aerial, .about-full-width-image, .stay-aerial-story, .stay-breakfast-banner, .contact-photo-banner, .contact-camels-banner) {
        --full-width-banner-height: clamp(352px, 56vh, 544px);
    }
}
@media (max-width: 980px) {
    main > :is(.home-final-ref, .about-book-cta, .home-memory-line-ref, .about-aerial, .about-full-width-image, .stay-aerial-story, .stay-breakfast-banner, .contact-photo-banner, .contact-camels-banner) {
        --full-width-banner-height: clamp(320px, 42vh, 480px);
    }
}
main > :is(.home-final-ref, .about-book-cta, .home-memory-line-ref, .about-aerial, .about-full-width-image, .stay-aerial-story, .stay-breakfast-banner, .contact-photo-banner, .contact-camels-banner) > img,
main > :is(.home-final-ref, .about-book-cta, .home-memory-line-ref, .about-aerial, .about-full-width-image, .stay-aerial-story, .stay-breakfast-banner, .contact-photo-banner, .contact-camels-banner) > picture > img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

/* mobile-tablet.css */
/* Approved mobile/tablet audit fixes, 2026-09-14. Keep every menu item reachable. */
@media (max-width: 980px) {
  .site-header .main-nav {
    max-height: calc(100vh - 188px);
    max-height: calc(100dvh - 188px - env(safe-area-inset-bottom, 0px));
    overflow-y: auto;
    overscroll-behavior: contain;
  }
}
@media (max-width: 640px) {
  .site-header .main-nav {
    max-height: calc(100vh - 175px);
    max-height: calc(100dvh - 175px - env(safe-area-inset-bottom, 0px));
  }
}

/* Touch tablets retain their normal text scale instead of the desktop preview. */
@media (min-width: 981px) and (pointer: coarse) {
  body main :is(h1,h2,h3,h4,h5,h6):not(.home-experiences-ref *) { font-size: 32px !important; }
  body main :is(.home-answer-card,.stay-answer-card,.experience-answer-card,.contact-answer-card) h3 { font-size: 22px !important; }
  main { --stiltz-content-edge: 32px; --stiltz-after-hero-space: 72px; }
}

/* Larger touch areas, with the existing button text and small visual review dots. */
@media (pointer: coarse), (max-width: 980px) {
  [data-gallery-filter] {
    box-sizing: border-box;
    min-height: 44px !important;
    min-width: 44px !important;
    padding-block: 10px !important;
  }
  .stay-review-arrow, .home-stay-slider-arrow-ref {
    min-width: 44px;
    min-height: 44px;
  }
  .stay-review-more {
    box-sizing: border-box;
    min-height: 44px;
    padding-block: 12px;
  }
  .footer-social a { width: 44px; height: 44px; flex-shrink: 0; }
  .stay-review-dots { gap: 0; }
  .stay-review-dot,
  .stay-review-dot.is-active {
    align-items: center;
    display: inline-flex;
    justify-content: center;
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    border: 0;
    background: transparent;
    transform: none;
  }
  .stay-review-dot::before {
    content: '';
    box-sizing: border-box;
    width: 10px;
    height: 10px;
    border: 1px solid var(--stiltz-timber);
    border-radius: 50%;
  }
  .stay-review-dot.is-active::before {
    background: var(--stiltz-timber);
    transform: scale(1.2);
  }
}

/* Keep the complete wordmark inside the mobile/tablet header in both states. */
@media (max-width: 980px) {
  .site-header .header-mark img.header-mark-logo,
  .site-header.is-condensed .header-mark img.header-mark-logo {
    transform: none;
    max-width: 100%;
  }
}


/* Approved mobile/tablet Phase 1 artwork, balanced spacing and Book colour, 2026-09-16. */
@media (max-width: 980px), (pointer: coarse) {
  body .site-header[data-site-header] .header-book-panel,
  body .site-header[data-site-header] .header-book-panel:is(:hover, :focus-visible, :active) {
    background-color: var(--hospitality-brand) !important;
    border-color: var(--hospitality-brand) !important;
    color: #fff !important;
  }
  body .site-header[data-site-header] .header-book-panel:focus-visible {
    outline: 2px solid #fff;
    outline-offset: -5px;
  }
  body .site-header[data-site-header] .header-mark {
    align-items: center;
    justify-content: flex-start;
    min-width: 0;
    padding: 10px 25px;
  }
  body .site-header[data-site-header] .header-mark img.header-mark-logo {
    flex: 0 1 auto;
    height: auto;
    margin: 0;
    max-height: none;
    max-width: 100%;
    object-fit: contain;
    transform: none;
    width: min(100%, 210.9264px);
  }
}
@media (max-width: 980px) {
  body .site-header[data-site-header],
  body .site-header[data-site-header].is-condensed { min-height: 168px; }
  body .site-header[data-site-header] .header-frame {
    grid-template-rows: 112px 56px;
    min-height: 168px;
  }
  body .site-header[data-site-header] .header-mark img.header-mark-logo {
    width: min(100%, 261.6627px);
  }
}
@media (max-width: 640px) {
  body .site-header[data-site-header],
  body .site-header[data-site-header].is-condensed { min-height: 157px; }
  body .site-header[data-site-header] .header-frame {
    grid-template-rows: 105px 52px;
    min-height: 157px;
  }
}
@media (min-width: 981px) and (pointer: coarse) {
  body .site-header[data-site-header]:not(.is-condensed) .header-brand {
    padding: 10px 25px !important;
  }
  body .site-header[data-site-header]:not(.is-condensed) .header-brand-logo img {
    align-self: center;
    height: 82px;
    max-height: 100%;
    max-width: 100%;
    transform: none;
    width: auto;
  }
}


/* Owner-requested larger phone/tablet logos, 2026-09-16.
   Natural aspect ratios, 20px displayed side padding, and desktop styles retained. */
@media (max-width: 640px) {
  body .site-header[data-site-header] .header-mark img.header-mark-logo {
    width: min(100%, 242.2803px);
  }
}
@media (min-width: 981px) and (pointer: coarse) {
  body .site-header[data-site-header].is-condensed { min-height: 94px; }
  body .site-header[data-site-header].is-condensed .header-frame {
    grid-template-columns: 266px minmax(0, 1fr) 188px;
    grid-template-rows: 94px;
    min-height: 94px;
  }
}


/* Phone split sections: image/slider first, sharing the text content gutter.
   Approved 2026-09-16. Portrait tablets and normal tablet landscape stay unchanged. */
@media (max-width: 640px), (max-width: 980px) and (max-height: 500px) and (pointer: coarse) {
  body main[class] :is(.home-stay-grid-ref, .home-story-grid-ref, .stay-path,
      .about-story-grid:has(.about-story-image), .about-architecture,
      .about-commitment-grid, .contact-location-grid, .knut-intro, .activity-mobile-card) {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: none;
    height: auto;
    min-height: 0;
  }
  body main #your-stay .home-stay-grid-ref,
  body main #home-location .home-story-grid-ref {
    grid-template-columns: minmax(0, 1fr);
  }
  body main[class] :is(.home-stay-photo-ref, .home-story-map-ref, .stay-path-media,
      .about-story-image, .about-architecture-image, .about-commitment-image,
      .contact-map-panel, .knut-portrait) {
    grid-column: 1;
    grid-row: auto;
    order: -1;
    min-width: 0;
    max-width: 100%;
    width: 100%;
    margin: 0;
    padding: 0;
  }
  body main[class] :is(.home-stay-copy-ref, .home-story-copy-ref, .stay-path-copy,
      .about-story-grid:has(.about-story-image) > .about-story-copy,
      .about-architecture-copy, .about-commitment-copy, .contact-location-copy,
      .knut-intro-copy) {
    grid-column: 1;
    grid-row: auto;
    order: 1;
    min-width: 0;
    max-width: none;
    width: 100%;
    margin-inline: 0;
    padding-inline: 0;
  }
  body main #your-stay .home-stay-copy-ref { padding-inline: 0; }
  body main[class] :is(.about-architecture-image, .about-commitment-image) :is(picture, img) {
    width: 100%;
    max-width: 100%;
    margin-inline: 0;
  }
  body main[class] .activity-mobile-card > picture {
    display: block;
    grid-column: 1;
    grid-row: auto;
    order: -1;
    width: 100%;
  }
  body main[class] .activity-mobile-card > img,
  body main[class] .activity-mobile-card > picture > img {
    aspect-ratio: 4 / 3;
    height: auto;
    min-height: 0;
    width: 100%;
    order: -1;
  }
  body main[class] .activity-mobile-card > div {
    grid-column: 1;
    grid-row: auto;
    order: 1;
    min-width: 0;
    width: 100%;
    padding-inline: 0;
  }
  body main[class] :is(.home-stay-slider-ref, .stay-path-slider) {
    width: 100%;
    max-width: 100%;
  }
}


/* Phone amenity labels use one line; keep the Wi-Fi provider on two lines. */
@media (max-width: 640px), (max-width: 980px) and (max-height: 500px) and (pointer: coarse) {
  .stay-included-grid > article:nth-of-type(n + 2) > p { white-space: nowrap; }
  .stay-included-grid > article:nth-of-type(n + 2) > p > br { display: none; }
}

/* Phone opening photos fill the visible area below the fixed logo/Book header.
   The opening section still occupies exactly one screen. */
@media (max-width: 640px), (max-width: 980px) and (max-height: 500px) and (pointer: coarse) {
  body { --phone-hero-header: 168px; }
  body main > :is(.home-ref-hero, .stay-hero-full, .about-hero, .experiences-hero-full, .gallery-hero-full, .contact-hero) img {
    position: absolute;
    inset: var(--phone-hero-header) 0 0;
    width: 100%;
    height: calc(var(--opening-hero-height) - var(--phone-hero-header));
    min-height: 0;
    max-height: none;
    margin: 0;
    object-fit: cover;
    transform: none;
  }
}
@media (max-width: 640px) {
  body { --phone-hero-header: 157px; }
}

/* Keep the main subject in the phone crop. */
@media (max-width: 640px), (max-width: 980px) and (max-height: 500px) and (pointer: coarse) {
  body main > .gallery-hero-full img { object-position: 5% 50%; }
  body main > .contact-hero img { object-position: 90% 50%; }
}

/* Footer navigation: readable labels and generous touch targets at 80% scale. */
@media (max-width: 980px), (pointer: coarse) {
  .site-footer .footer-link-row {
    gap: calc(8px / var(--site-page-scale, 1)) calc(16px / var(--site-page-scale, 1));
    padding-block: calc(24px / var(--site-page-scale, 1));
  }
  .site-footer .footer-link-row a {
    align-items: center;
    box-sizing: border-box;
    display: inline-flex;
    justify-content: center;
    min-height: calc(44px / var(--site-page-scale, 1));
    min-width: calc(44px / var(--site-page-scale, 1));
    padding: calc(8px / var(--site-page-scale, 1));
    font-size: calc(11px / var(--site-page-scale, 1));
    line-height: 1.4;
    text-align: center;
  }
}
@media (max-width: 640px) {
  .site-footer .footer-link-row { justify-items: stretch; }
  .site-footer .footer-link-row a { width: 100%; }
}


/* Phone footer: separate recognition groups and centre the return-to-top control. */
@media (max-width: 640px), (max-width: 980px) and (max-height: 500px) and (pointer: coarse) {
  body .site-footer .footer-recognition {
    row-gap: calc(56px / var(--site-page-scale, .8));
  }
  body .site-footer .footer-minimal {
    padding-bottom: calc(24px / var(--site-page-scale, .8));
  }
  body .site-footer .footer-minimal .scroll-to-top {
    grid-column: 1 / -1;
    justify-self: center;
    margin-inline: auto;
    /* The footer grid already supplies an 18px row gap. */
    margin-top: calc(24px / var(--site-page-scale, .8) - 18px);
    transform: none;
  }
}

/* Home map: compact outer spacing on phones, including short touch landscape. */
@media (max-width: 640px), (max-width: 980px) and (max-height: 500px) and (pointer: coarse) {
  body main #home-location.home-story-ref {
    padding-block: calc(32px / var(--site-page-scale, 1));
  }
}

/* Phone Experiences: match the compact Home map outer spacing, 2026-09-16. */
@media (max-width: 640px), (max-width: 980px) and (max-height: 500px) and (pointer: coarse) {
  body main.experiences-page-full > :is(.experiences-intro, .activity-scroll-story) {
    padding-block: calc(32px / var(--site-page-scale, 1));
  }
}


/* Portrait tablets: fit opening photos below the header and retain full-screen sections.
   Mobile and every landscape orientation retain their approved framing. */
@media (min-width: 641px) and (orientation: portrait) and (pointer: coarse) {
  body { --tablet-hero-header: 168px; }
  body main > :is(.home-ref-hero, .stay-hero-full, .about-hero, .experiences-hero-full, .gallery-hero-full, .contact-hero) img {
    position: absolute;
    inset: var(--tablet-hero-header) 0 0;
    width: 100%;
    height: calc(var(--opening-hero-height) - var(--tablet-hero-header));
    min-height: 0;
    max-height: none;
    margin: 0;
    object-fit: cover;
    transform: none;
  }
}
/* Wide tablets use the existing expanded/compact header dimensions and timing. */
@media (min-width: 981px) and (orientation: portrait) and (pointer: coarse) {
  body { --tablet-hero-header: 166px; }
  body:has(.site-header.is-condensed) { --tablet-hero-header: 94px; }
  body main > :is(.home-ref-hero, .stay-hero-full, .about-hero, .experiences-hero-full, .gallery-hero-full, .contact-hero) img {
    transition: top .28s ease, height .28s ease;
  }
}

@media (min-width: 641px) and (orientation: portrait) and (pointer: coarse) {
  body main > .gallery-hero-full img { object-position: 5% 50%; }
  body main > .contact-hero img { object-position: 92% 50%; }
}

/* Consistent phone About content photos; retain original proportions and focal points. */
@media (max-width: 640px), (max-width: 980px) and (max-height: 500px) and (pointer: coarse) {
  body main.about-page { --about-mobile-photo-ratio: 3 / 2; }
  body main.about-page :is(.about-story-image, .about-architecture-image, .about-commitment-image) {
    aspect-ratio: var(--about-mobile-photo-ratio);
    height: auto;
    min-height: 0;
    overflow: hidden;
  }
  body main.about-page :is(.about-story-image, .about-architecture-image, .about-commitment-image) > picture {
    display: contents;
  }
  body main.about-page :is(.about-story-image, .about-architecture-image, .about-commitment-image) img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 0;
    max-height: none;
    aspect-ratio: var(--about-mobile-photo-ratio);
    object-fit: cover;
    transform: none;
  }
}

/* Short phone landscape uses a wider frame, avoiding enlargement of older sources. */
@media (max-width: 980px) and (max-height: 500px) and (pointer: coarse) {
  body main.about-page { --about-mobile-photo-ratio: 16 / 9; }
}
/* Home Your Stay: readable text followed by a full-content-width slider on portrait tablets. */
@media (min-width: 641px) and (orientation: portrait) and (pointer: coarse) {
  body main #your-stay .home-stay-grid-ref {
    grid-template-columns: minmax(0, 1fr);
  }
  body main #your-stay .home-stay-copy-ref {
    grid-column: 1;
    grid-row: 1;
    width: 100%;
    max-width: none;
    min-width: 0;
    padding: 0 0 32px;
  }
  body main #your-stay .home-stay-photo-ref {
    grid-column: 1;
    grid-row: 2;
    width: 100%;
    min-width: 0;
    padding: 0;
  }
}
/* Let Stiltz use the shared tablet gutters and a compact row of room choices. */
@media (min-width: 641px) and (orientation: portrait) and (pointer: coarse) {
  body main #your-stay .home-stay-grid-ref { max-width: none; }
}
@media (min-width: 641px) and (max-width: 980px) and (orientation: portrait) and (pointer: coarse) {
  body main #your-stay .home-stay-types-ref { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  body main #your-stay .home-stay-types-ref a + a {
    border-top: 0;
    border-left: 1px solid rgba(36,35,32,.12);
    padding-left: 18px;
  }
}

/* Stay inclusion feature: more arrival space and a readable mobile heading. */
@media (max-width: 640px), (max-width: 980px) and (max-height: 500px) and (pointer: coarse) {
  body main.stay-page-full > .stay-included {
    padding-top: calc(52px / var(--site-page-scale, 1));
  }
  html body main.stay-page-full .stay-included-grid > .eyebrow {
    font-size: 32px !important;
    line-height: 1.12;
    display: block;
    width: 100%;
    max-width: none;
    min-height: 0;
    line-height: 1.15;
    margin-inline: auto;
    text-wrap: balance;
  }
}
/* Home Location: match Desert Breeze's balanced map-left tablet portrait layout. */
@media (min-width: 641px) and (orientation: portrait) and (pointer: coarse) {
  body main #home-location .home-story-grid-ref {
    max-width: none;
    grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
    column-gap: 28px;
  }
  body main #home-location .home-story-map-ref {
    grid-column: 1;
    grid-row: 1;
    min-width: 0;
  }
  body main #home-location .home-story-copy-ref {
    grid-column: 2;
    grid-row: 1;
    min-width: 0;
  }
}
@media (min-width: 641px) and (max-width: 980px) and (orientation: portrait) and (pointer: coarse) {
  body main #home-location .home-story-copy-ref,
  body main #home-location .home-story-copy-ref :is(.eyebrow, h2, p) {
    margin-inline: auto;
    text-align: center;
  }
  body main #home-location .home-story-copy-ref :is(.home-rule, .button) {
    margin-inline: auto;
  }
}
@media (min-width: 981px) and (orientation: portrait) and (pointer: coarse) {
  body main #home-location .home-story-grid-ref {
    column-gap: clamp(40px, 5vw, 72px);
  }
}
/* Stay rooms: full-bleed alternating white bands in tablet portrait. */
@media (min-width: 641px) and (orientation: portrait) and (pointer: coarse) {
  body main.stay-page-full .stay-path-white::before {
    left: 50%;
    right: auto;
    width: calc(100vw / var(--site-page-scale, 1));
    margin-inline: 0;
    transform: translateX(-50%);
  }
}
/* Match Stay room sliders and copy to the 90%-width Home photo on portrait tablets. */
@media (min-width: 641px) and (orientation: portrait) and (pointer: coarse) {
  body main.stay-page-full .stay-path {
    grid-template-columns: minmax(0, 1fr);
  }
  body main.stay-page-full .stay-path :is(.stay-path-copy, .stay-path-media) {
    grid-column: 1;
    width: 90%;
    max-width: none;
    justify-self: center;
  }
  body main.stay-page-full .stay-path .stay-path-copy { grid-row: 1; order: 0; }
  body main.stay-page-full .stay-path .stay-path-media { grid-row: 2; order: 0; }
}
/* Home Your Stay: centre the copy above its slider on portrait tablets. */
@media (min-width: 641px) and (orientation: portrait) and (pointer: coarse) {
  body main #your-stay .home-stay-copy-ref { text-align: center; }
  body main #your-stay .home-stay-copy-ref :is(h2, p, .home-rule) { margin-inline: auto; }
  body main #your-stay .home-stay-types-ref a {
    justify-items: center;
    padding-inline: 16px;
    text-align: center;
  }
  body main #your-stay .home-stay-proofs-ref { justify-content: center; }
  body main #your-stay .home-stay-proofs-ref li { justify-content: center; text-align: center; }
}

/* Owner review: soften only the mobile Stiltz wordmark size by 8%. */
@media (max-width: 640px) {
  body .site-header[data-site-header] .header-mark img.header-mark-logo {
    width: min(92%, 222.8979px);
  }
}
@media (min-width: 641px) and (max-width: 980px) and (max-height: 500px) and (pointer: coarse) {
  body .site-header[data-site-header] .header-mark img.header-mark-logo {
    width: min(92%, 240.7297px);
  }
}
/* Home Location: left-align copy in the map/text portrait-tablet layout. */
@media (min-width: 641px) and (max-width: 980px) and (orientation: portrait) and (pointer: coarse) {
  body main #home-location .home-story-copy-ref,
  body main #home-location .home-story-copy-ref :is(.eyebrow, h2, p) {
    margin-inline: 0;
    text-align: left;
  }
  body main #home-location .home-story-copy-ref :is(.home-rule, .button) {
    margin-inline: 0;
  }
}
/* Four FAQs form two balanced rows on portrait tablets. */
@media (min-width: 641px) and (max-width: 980px) and (orientation: portrait) and (pointer: coarse) {
  body main :is(.home-answer-grid, .stay-answer-grid, .experience-answer-grid, .contact-answer-grid) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
/* Keep the Home photo centred and nearly as wide as its copy on portrait tablets.
   Stay room sliders remain aligned with their existing text width. */
@media (min-width: 641px) and (orientation: portrait) and (pointer: coarse) {
  body main #your-stay .home-stay-photo-ref {
    width: 90%;
    max-width: none;
    justify-self: center;
  }
}

/* Match the Desert Breeze Your Stay paragraph measure on portrait tablets. */
@media (min-width: 641px) and (orientation: portrait) and (pointer: coarse) {
  body main #your-stay .home-stay-copy-ref p {
    width: 100%;
    max-width: 540px;
    margin-inline: auto;
  }
}

/* Match Desert Breeze's two-part inclusion heading on phones only. */
@media (max-width: 640px), (max-width: 980px) and (max-height: 500px) and (pointer: coarse) {
  html body main.stay-page-full .stay-included-grid > .eyebrow {
    display: grid;
    gap: 6px;
    font-size: 0 !important;
    letter-spacing: normal;
    text-transform: none;
  }
  html body main.stay-page-full .stay-included-grid > .eyebrow .mobile-included-kicker {
    display: block;
    color: var(--stiltz-ink);
    font-family: var(--stiltz-serif);
    font-size: 12px;
    font-weight: 500;
    font-style: normal;
    letter-spacing: .16em;
    line-height: 1.2;
    text-transform: uppercase;
  }
  html body main.stay-page-full .stay-included-grid > .eyebrow .mobile-included-script {
    display: block;
    color: var(--hospitality-brand);
    font-family: "Hospitality Papyrus", Papyrus, fantasy;
    font-size: 36px !important;
    font-weight: 400;
    font-style: normal;
    letter-spacing: normal;
    line-height: 1.1;
    text-transform: none;
  }
}

/* Center Stiltz room descriptions like Desert Breeze on portrait tablets. */
@media (min-width: 641px) and (orientation: portrait) and (pointer: coarse) {
  body main.stay-page-full .stay-path-copy { text-align: center; }
  body main.stay-page-full .stay-path-copy :is(.eyebrow, h2, p) { margin-inline: auto; }
}

/* Phone guest-review intro: centred divider and Desert Breeze's tighter gap. */
@media (max-width: 640px), (max-width: 980px) and (max-height: 500px) and (pointer: coarse) {
  body main.stay-page-full .stay-reviews-intro .stay-rule {
    margin-inline: auto;
    margin-bottom: 4px;
  }
  body main.stay-page-full .stay-reviews-grid { row-gap: 28px; }
}

/* Phone About story: centred introduction before its water-view photo. */
@media (max-width: 640px), (max-width: 980px) and (max-height: 500px) and (pointer: coarse) {
  body main.about-page .about-story-grid > .about-story-copy {
    order: 0;
    grid-row: 1;
    text-align: center;
  }
  body main.about-page .about-story-grid > .about-story-image {
    order: 1;
    grid-row: 2;
  }
  body main.about-page .about-story-copy :is(.eyebrow, h2, p) {
    text-align: center;
    margin-inline: auto;
  }
  body main.about-page .about-story-copy .about-rule { margin-inline: auto; }
}

/* Match Desert Breeze's Included section on tablets and desktop, using Stiltz blue. */
@media (min-width: 641px) and (orientation: portrait) and (pointer: coarse),
       (min-width: 641px) and (pointer: fine),
       (min-width: 641px) and (min-height: 501px) and (orientation: landscape) and (pointer: coarse) {
  body main.stay-page-full .stay-included-grid { column-gap: 16px; }
  body main.stay-page-full .stay-included-grid > .eyebrow {
    display: grid;
    gap: 6px;
    min-height: 74px;
    padding: 0;
    margin: 0;
    align-items: initial;
    justify-content: initial;
    line-height: 1;
  }
  body main.stay-page-full .stay-included-grid > .eyebrow .mobile-included-kicker {
    display: block;
    color: var(--stiltz-ink) !important;
    font-family: Marcellus, Georgia, serif !important;
    font-size: 13px !important;
    font-weight: 500;
    letter-spacing: .16em;
    line-height: 1.2;
    text-transform: uppercase;
    margin: 0;
  }
  body main.stay-page-full .stay-included-grid > .eyebrow .mobile-included-script {
    display: block;
    color: var(--hospitality-brand) !important;
    font-family: 'Hospitality Papyrus', Papyrus, fantasy !important;
    font-size: 26px !important;
    font-style: normal;
    font-weight: 400;
    line-height: 1.3;
    letter-spacing: 0;
    text-transform: none;
    margin: 0;
  }
  body main.stay-page-full .stay-included-grid article { padding-inline: 16px; }
  body main.stay-page-full .stay-included-grid article p {
    font-family: Marcellus, Georgia, serif;
    font-size: 18px;
    line-height: 1.2;
  }
}
@media (min-width: 641px) and (max-width: 980px) {
  body main.stay-page-full .stay-included-grid > .eyebrow { text-align: center; }
}
@media (min-width: 981px) {
  body main.stay-page-full .stay-included-grid { grid-template-columns: 1.16fr .96fr .96fr .96fr 1.16fr; }
  body main.stay-page-full .stay-included-grid > .eyebrow { text-align: left; }
}

/* Complete the desktop inclusion heading's small kicker / Papyrus hierarchy. */
@media (min-width: 981px) and (pointer: fine) {
  body main.stay-page-full .stay-included-grid > .eyebrow .mobile-included-kicker {
    font-size: clamp(13px, .9vw, 15px) !important;
  }
  body main.stay-page-full .stay-included-grid > .eyebrow .mobile-included-script {
    font-size: 32px !important;
    transform: translateX(-6px);
  }
}

/* Phone Experiences introduction: breathing room above the opening eyebrow. */
@media (max-width: 640px), (max-width: 980px) and (max-height: 500px) and (pointer: coarse) {
  body main.experiences-page-full > section.experiences-intro { padding-top: 70px; }
}

/* Match Desert Breeze's Stay review divider and space below on portrait tablets. */
@media (min-width: 641px) and (max-width: 980px) and (orientation: portrait) {
  body main.stay-page-full .stay-reviews-intro .stay-rule {
    width: 100px;
    margin-bottom: 4px;
  }
  body main.stay-page-full .stay-reviews-grid { row-gap: 28px; }
}

/* Match Desert Breeze's experience-number size on standard tablets. */
@media (min-width: 641px) and (max-width: 980px) {
  body main.experiences-page-full .activity-mobile-card .experience-number {
    font-size: 18px;
    line-height: 1;
  }
}

/* Phone activity numbers: larger, stronger and high contrast for quick scanning. */
@media (max-width: 640px), (max-width: 980px) and (max-height: 500px) and (pointer: coarse) {
  body main.experiences-page-full .activity-mobile-card .experience-number {
    font-size: 18px;
    font-weight: 500;
    line-height: 1.2;
    color: var(--stiltz-ink);
    font-variant-numeric: tabular-nums;
  }
}

/* Phone gallery viewer uses the visible screen, independent of page zoom. */
@media (max-width: 640px), (max-width: 980px) and (max-height: 500px) and (pointer: coarse) {
  body .gallery-lightbox {
    zoom: calc(1 / var(--site-page-scale, 1));
    inset: 0 auto auto 0;
    width: 100vw;
    height: 100vh;
    height: 100dvh;
    box-sizing: border-box;
    padding: 64px 16px 80px;
    align-content: center;
    justify-content: center;
  }
  body .gallery-lightbox-frame {
    max-width: calc(100vw - 32px);
    max-height: calc(100dvh - 144px);
    gap: 12px;
  }
  body .gallery-lightbox-frame img { max-height: calc(100dvh - 180px); }
  body .gallery-lightbox-close {
    width: 48px;
    height: 48px;
    top: max(12px, env(safe-area-inset-top));
    right: 16px;
    z-index: 2;
  }
  body .gallery-lightbox-arrow {
    display: flex;
    width: 48px;
    height: 48px;
    top: auto;
    bottom: max(20px, env(safe-area-inset-bottom));
    transform: none;
    z-index: 2;
    background: #FCFAF6;
    color: #242320;
    font-size: 38px;
  }
  body .gallery-lightbox-prev { left: 20px; }
  body .gallery-lightbox-next { right: 20px; }
  body .gallery-lightbox-arrow:hover,
  body .gallery-lightbox-arrow:focus-visible { transform: none; }
}

/* Phone gallery categories: centre wrapped rows like Desert Breeze. */
@media (max-width: 640px), (max-width: 980px) and (max-height: 500px) and (pointer: coarse) {
  body main .gallery-tabs {
    justify-content: center;
    text-align: center;
    flex-wrap: wrap;
  }
  body main .gallery-tabs button { text-align: center; }
}

/* Phone viewer controls: geometric icons avoid font-baseline misalignment. */
@media (max-width: 640px), (max-width: 980px) and (max-height: 500px) and (pointer: coarse) {
  body .gallery-lightbox .gallery-lightbox-close,
  body .gallery-lightbox .gallery-lightbox-arrow {
    font-size: 0;
    padding: 0;
    line-height: 1;
  }
  body .gallery-lightbox-close::before,
  body .gallery-lightbox-arrow::before {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    width: 24px;
    height: 24px;
    transform: translate(-50%, -50%);
    background: center / 24px 24px no-repeat;
    pointer-events: none;
  }
  body .gallery-lightbox-close::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23242320' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M6 6L18 18M18 6L6 18'/%3E%3C/svg%3E");
  }
  body .gallery-lightbox-prev::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23242320' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 6L9 12L15 18'/%3E%3C/svg%3E");
  }
  body .gallery-lightbox-next::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23242320' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 6L15 12L9 18'/%3E%3C/svg%3E");
  }
}

/* Center the Gallery category row on tablets, matching Desert Breeze. */
@media (min-width: 641px) and (max-width: 980px) {
  body main.gallery-page-full .gallery-tabs { justify-content: center; }
}

/* Keep Contact details/form and map/location side by side on portrait tablets. */
@media (min-width: 641px) and (max-width: 980px) and (orientation: portrait) and (pointer: coarse) {
  body main.contact-page .contact-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: clamp(32px, 4vw, 52px);
    align-items: stretch;
    justify-items: stretch;
  }
  body main.contact-page .contact-details {
    display: flex;
    flex-direction: column;
    max-width: none;
    min-width: 0;
    width: auto;
    text-align: left;
  }
  body main.contact-page .contact-details :is(.eyebrow, h2, p) {
    margin-left: 0;
    margin-right: 0;
    text-align: left;
  }
  body main.contact-page .contact-rule { margin-left: 0; margin-right: 0; flex-shrink: 0; }
  body main.contact-page .contact-list {
    margin-left: 0;
    margin-right: 0;
    max-width: none;
    text-align: left;
  }
  body main.contact-page .contact-form {
    margin: 0;
    max-width: none;
    min-width: 0;
    padding: 0;
    width: 100%;
  }
  body main.contact-page .contact-location-grid {
    grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
    column-gap: clamp(28px, 4vw, 48px);
    justify-items: stretch;
    text-align: left;
  }
  body main.contact-page :is(.contact-map-panel, .contact-location-copy) {
    grid-column: auto;
    grid-row: auto;
    min-width: 0;
    order: 0;
  }
  body main.contact-page .contact-location-copy,
  body main.contact-page .contact-location-copy :is(.eyebrow, h2, p) {
    margin-left: 0;
    margin-right: 0;
    text-align: left;
  }
  body main.contact-page .contact-location-copy .button { margin-left: 0; margin-right: 0; }
}

/* Portrait-tablet About panels follow desktop ordering with tablet-sized gutters and type. */
@media (min-width: 641px) and (orientation: portrait) and (pointer: coarse) {
  body main.about-page .about-story-grid,
  body main.about-page section.about-architecture,
  body main.about-page .about-commitment-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0;
    height: auto;
    min-height: 520px;
    align-items: stretch;
  }
  body main.about-page :is(.about-story-image, .about-story-copy, .about-architecture-image, .about-architecture-copy, .about-commitment-image, .about-commitment-copy) {
    order: 0;
    grid-column: auto;
    grid-row: auto;
    min-width: 0;
  }
  body main.about-page :is(.about-story-copy, .about-architecture-copy, .about-commitment-copy) {
    align-self: center;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 40px clamp(20px, 3vw, 32px);
    box-sizing: border-box;
    text-align: left;
  }
  body main.about-page :is(.about-story-copy, .about-architecture-copy, .about-commitment-copy) :is(.eyebrow, h2, p) {
    text-align: left;
    margin-inline: 0;
  }
  body main.about-page :is(.about-story-copy, .about-architecture-copy, .about-commitment-copy) .about-rule {
    margin-left: 0;
    margin-right: auto;
  }
  body main.about-page :is(.about-story-image, .about-architecture-image, .about-commitment-image) {
    position: relative;
    align-self: stretch;
    height: auto;
    min-height: 0;
    overflow: hidden;
  }
  body main.about-page :is(.about-story-image, .about-architecture-image, .about-commitment-image) picture {
    display: block;
    width: 100%;
    height: 100%;
  }
  body main.about-page :is(.about-story-image, .about-architecture-image, .about-commitment-image) img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    min-height: 0;
    max-height: none;
    object-fit: cover;
    transform: none;
  }
}

/* Match Desert Breeze's separation between portrait-tablet About image panels. */
@media (min-width: 641px) and (max-width: 980px) and (orientation: portrait) and (pointer: coarse) {
  body main.about-page > :is(section.about-architecture, section.about-commitment) { margin-bottom: 32px; }
  body main.about-page > section.about-knut { margin-bottom: 56px; }
}

/* Home accommodation labels: compact heading/description spacing on phones. */
@media (max-width: 640px), (max-width: 980px) and (max-height: 500px) and (pointer: coarse) {
  body main #your-stay .home-stay-types-ref a {
    gap: 3px;
    align-content: start;
  }
  body main #your-stay .home-stay-types-ref a > span { min-height: 0; }
}

/* Knut profile: use the site's type hierarchy and brand accents. */
body main .knut-profile {
  --knut-accent: var(--hospitality-brand);
  --knut-accent-soft: color-mix(in srgb, var(--hospitality-brand) 8%, transparent);
}
body main .knut-kicker {
  color: var(--hospitality-brand);
  font-family: 'Hospitality Montserrat', var(--stiltz-sans);
  font-weight: 500;
}
body main .knut-panel > p:first-child {
  color: var(--stiltz-secondary-text);
  font-family: var(--stiltz-sans);
  font-size: 17px;
  line-height: 1.72;
  max-width: 760px;
}
body main .knut-inspirations h2 {
  color: var(--stiltz-ink);
  font-size: clamp(30px, 3.1vw, 42px);
  line-height: 1.25;
  margin: 0 0 24px;
  text-align: center;
}
body main .knut-word-break {
  color: var(--hospitality-brand);
  font-family: var(--hospitality-accent-font);
  font-weight: 400;
  line-height: 1.25;
}
@media (max-width: 980px), (pointer: coarse) {
  body main.content-page:has(.knut-profile) article > :is(h1, .eyebrow),
  body main .knut-profile :is(h2, h3, .knut-word-break) { text-align: center; }
  body main .knut-intro-copy { text-align: center; }
  body main .knut-intro h2 {
    width: 100%;
    max-width: 22ch;
    margin-inline: auto;
    line-height: 1.25;
    text-wrap: balance;
  }
  body main .knut-kicker { margin: 0 auto 20px; }
  body main .knut-intro-lead {
    color: var(--stiltz-secondary-text);
    font-family: var(--stiltz-sans);
    font-size: 16px;
    line-height: 1.65;
    max-width: 40ch;
    margin: 20px auto 0;
  }
  body main .knut-word-break { font-size: var(--small-screen-h2, 30px); }
  body main .knut-intro { height: auto; align-items: center; }
  body main.content-page .knut-portrait {
    max-width: 640px;
    margin-inline: auto;
    height: auto;
    min-height: 0;
    background: transparent;
  }
  body main .knut-portrait img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: auto;
    object-fit: contain;
  }
  body main .knut-place-image {
    padding: 0;
    margin-inline: auto;
    width: 100%;
    background: transparent;
  }
  body main .knut-place-image img {
    display: block;
    width: 100%;
    height: auto;
    max-height: none;
    object-fit: contain;
  }
}
@media (min-width: 641px) and (orientation: portrait) and (pointer: coarse) {
  body main .knut-intro {
    grid-template-columns: minmax(0, 1fr);
    height: auto;
  }
  body main .knut-portrait {
    order: 0;
    width: min(100%, 640px);
    margin: 0 auto;
  }
  body main .knut-intro-copy { order: 1; padding: 40px 24px; }
}

/* Extend the approved Knut presentation to desktop; keep tablet/phone styling. */
body main.content-page:has(.knut-profile) article > h1 {
  width: 100%;
  max-width: none;
}
@media (min-width: 981px) and (pointer: fine) {
  body main.content-page:has(.knut-profile) article > :is(h1, .eyebrow),
  body main .knut-profile :is(h2, h3, .knut-word-break),
  body main .knut-intro-copy { text-align: center; }
  body main .knut-intro {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    height: auto;
    align-items: center;
    gap: 32px;
    padding: 32px;
    background: var(--stiltz-paper);
  }
  body main .knut-intro-copy { padding: 48px 24px; }
  body main .knut-intro h2 {
    width: 100%;
    max-width: 22ch;
    margin-inline: auto;
    line-height: 1.25;
    text-wrap: balance;
  }
  body main .knut-kicker { margin: 0 auto 20px; }
  body main .knut-intro-lead {
    color: var(--stiltz-secondary-text);
    font-family: var(--stiltz-sans);
    font-size: 17px;
    line-height: 1.65;
    max-width: 40ch;
    margin: 20px auto 0;
  }
  body main .knut-portrait {
    width: 100%;
    max-width: 480px;
    height: auto;
    min-height: 0;
    margin: 0 auto;
    background: transparent;
  }
  body main .knut-portrait img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: auto;
    object-fit: contain;
  }
  body main .knut-place-image { padding: 0; background: transparent; }
  body main .knut-place-image img {
    display: block;
    width: 100%;
    height: auto;
    max-height: none;
    object-fit: contain;
  }
}

/* Owner refinement: centred biography introduction and more heading space. */
body main .knut-panel > p:nth-of-type(-n + 3) { text-align: center; }
body main .knut-inspirations { padding-top: 24px; }

/* Owner-approved Phase B logo increase, 2026-10-06. */
@media (min-width: 981px) and (pointer: fine) {
  body .site-header[data-site-header].is-condensed .header-mark img.header-mark-logo {
    scale: 1.1;
    transform-origin: right center;
  }
}

/* Owner-approved extra left padding for Phase B logos, 2026-10-06. */
@media (min-width: 981px) and (pointer: fine) {
  body .site-header[data-site-header].is-condensed .header-mark { padding-left: calc(26px + 10px / var(--site-page-scale, 1)); }
  body .site-header[data-site-header].is-condensed .header-frame { grid-template-columns: calc(226px + 10px / var(--site-page-scale, 1)) minmax(0, 1fr) 188px; }
}

/* Restore Phase A with logos 15% larger, preserving the Phase B refinements. */
@media (min-width: 981px) and (pointer: fine) {
  body .site-header[data-site-header]:not(.is-condensed) .header-brand-logo img { height: 78px; align-self: flex-start; scale: 1.15; transform-origin: center top; }
  body .site-header[data-site-header]:not(.is-condensed) .header-frame,
  body .site-header[data-site-header]:not(.is-condensed) .header-main { grid-template-rows: 117px 64px; min-height: 181px; }
  body .site-header[data-site-header]:not(.is-condensed) { min-height: 181px; }
}

/* content-photo-shadows-20260915.css */
/* Separate About photos and lift them gently from the page. */
.about-page .about-architecture-image,
.about-page .about-commitment-image,
.about-page .about-story-image,
.about-page .about-hosts-image {
  filter: drop-shadow(0 7px 10px rgba(36, 30, 24, .20));
}
@media (min-width: 981px) {
  .about-page .about-architecture-image,
  .about-page .about-commitment-image,
  .about-page .about-hosts-image {
    margin: 12px;
    min-width: 0;
    overflow: hidden;
  }
}

/* Match DB's usable desktop About text width with responsive side insets. */
@media (min-width: 981px) {
  .about-page .about-architecture-copy,
  .about-page .about-commitment-copy {
    padding-inline: clamp(24px, 3vw, 40px);
  }
  .about-page .about-architecture-copy p,
  .about-page .about-commitment-copy p {
    max-width: 480px;
  }
}

/* Soft outer shadows for full-width photography, approved on both sites. */
main > :is(.hero, .home-ref-hero, .stay-hero-full, .about-hero,
  .experiences-hero-full, .gallery-hero-full, .contact-hero,
  .home-final-ref, .about-book-cta, .about-aerial, .about-full-width-image,
  .stay-aerial-story, .stay-breakfast-banner, .contact-camels-banner,.contact-photo-banner,
  .home-memory-line-ref, .wow-boardwalk) {
  box-shadow: 0 7px 14px rgba(36, 30, 24, .20);
  position: relative;
  z-index: 1;
}

/* Match DB's soft shadows on contained maps and image sliders. */
.home-stay-photo-ref,
.home-story-map-ref,
.stay-path-media,
.activity-story-media,
.activity-mobile-card img,
.contact-map-panel {
  filter: drop-shadow(0 7px 10px rgba(36, 30, 24, .20));
}

/* Let the About photo insets fit inside each coloured section, as on DB. */
@media (min-width: 981px) {
  .about-page .about-architecture-image,
  .about-page .about-commitment-image,
  .about-page .about-hosts-image {
    height: auto;
    min-height: 0;
    align-self: stretch;
  }
}

/* Consistent white About image/text sections, matching DB. */
.about-page > .about-commitment {
  background-color: #fff;
}

/* Accent-framed illustrated maps, 2026-10-05. */
#home-location .home-story-map-ref,
.contact-location .contact-map-panel {
  box-sizing: border-box;
  padding: 8px;
  background: #F7F1E7;
  border: 1px solid rgba(142, 107, 69, .22);
}
#home-location .home-story-map-ref img,
.contact-location .contact-map-panel img {
  display: block;
  width: 100%;
  max-width: 100%;
  margin: 0;
  border: 0;
}

/* Keep the Contact mat on phones where the shared image-layout rule resets padding. */
body main.contact-page .contact-location .contact-map-panel { padding: 8px; }

/* Airier gallery seams and a soft photo shadow, refined 2026-10-05. */
.gallery-page-mosaic { column-gap: 16px; }
.gallery-page-mosaic:not(.gallery-curated-masonry) > figure[data-gallery-item] { margin-bottom: 16px; }
.gallery-page-mosaic > figure[data-gallery-item] {
  border: 0;
  filter: none;
  box-shadow: 0 4px 14px rgba(28, 24, 20, 0.14);
}
.gallery-page-mosaic > figure[data-gallery-item] img { border: 0; }

@media (max-width: 639px) {
  .gallery-page-mosaic { column-gap: 12px; }
  .gallery-page-mosaic:not(.gallery-curated-masonry) > figure[data-gallery-item] { margin-bottom: 12px; }
}

/* About image/text photos: matted frames with the site's soft image shadow. */
body main.about-page {
  --about-photo-paper: #f8f3eb;
  --about-photo-accent: rgba(142, 107, 69, .28);
}
body main.about-page > :is(.about-architecture, .about-commitment) :is(.about-architecture-image, .about-commitment-image) {
  position: relative;
  box-sizing: border-box;
  filter: none;
  background: var(--about-photo-paper);
  border: 1px solid var(--about-photo-accent);
  box-shadow: 0 4px 14px rgba(28, 24, 20, .14);
}
body main.about-page > :is(.about-architecture, .about-commitment) :is(.about-architecture-image, .about-commitment-image) img {
  display: block;
}
@media (min-width: 981px) {
  body main.about-page > :is(.about-architecture, .about-commitment) :is(.about-architecture-image, .about-commitment-image) {
    margin: 24px;
    padding: 12px;
    overflow: hidden;
  }
  body main.about-page > :is(.about-architecture, .about-commitment) :is(.about-architecture-image, .about-commitment-image) img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  body main.about-page > .about-commitment:not(.about-staff):not(.about-knut) .about-commitment-image,
  body main.about-page > :is(.about-garden, .about-art, .about-knut) :is(.about-architecture-image, .about-commitment-image) {
    width: calc(88% - 48px);
    height: calc(100% - 60px);
    align-self: center;
    justify-self: center;
    margin: 30px auto;
  }
}


/* Match all page photography to the Experiences card's two-layer shadow. */
body {
  --site-photo-shadow: 0 6px 16px rgba(37, 29, 21, .18), 0 24px 55px rgba(37, 29, 21, .24);
}
body main > :is(.hero, .home-ref-hero, .stay-hero-full, .about-hero,
  .experiences-hero-full, .gallery-hero-full, .contact-hero,
  .home-final-ref, .about-book-cta, .about-aerial, .about-full-width-image,
  .stay-aerial-story, .stay-breakfast-banner, .contact-camels-banner, .contact-photo-banner,
  .home-memory-line-ref, .wow-boardwalk) {
  box-shadow: var(--site-photo-shadow);
}
body main.stay-page-full > :is(.stay-hero-full, .stay-aerial-story, .stay-breakfast-banner, .stay-book-cta) {
  box-shadow: var(--site-photo-shadow);
}
body main :is(.home-stay-slider-ref, .home-stay-photo-ref, .home-stay-photo-overlap,
  .home-story-map-ref, .location-map, .contact-map-frame, .contact-map-panel,
  .activity-story-media, .knut-portrait, .knut-place-image) {
  filter: none;
  box-shadow: var(--site-photo-shadow);
}
body main.stay-page-full .stay-path-media {
  filter: none;
  box-shadow: var(--site-photo-shadow);
}
body main.about-page .about-story-image,
body main.about-page > :is(.about-architecture, .about-commitment) :is(.about-architecture-image, .about-commitment-image) {
  filter: none;
  box-shadow: var(--site-photo-shadow);
}
body main .gallery-page-mosaic > figure[data-gallery-item] {
  filter: none;
  box-shadow: var(--site-photo-shadow);
}
body main .intro-image-stack img:first-child,
body .gallery-lightbox-frame img,
body .map-lightbox-frame {
  box-shadow: var(--site-photo-shadow);
}

/* Experience numbers start directly below the photograph, 2026-10-06. */
body main.experiences-page-full .activity-mobile-card > div { padding-top: 0 !important; }
body main.experiences-page-full .activity-mobile-card .experience-number { font-style: italic; }

/* The Home slider casts its shadow once, from its outer photo frame. */
body main .home-stay-photo-ref .home-stay-slider-ref { filter: none; box-shadow: none; }

/* Remove the decorative inset lines from Stay photographs. */
body main.stay-page-full .stay-path-media::after { content: none; display: none; border: 0; }

/* Contact fact sheet downloads, 2026-10-06. */
body .contact-fact-sheets p { margin: 0 0 14px; }
body .contact-fact-sheet-buttons { display: flex; flex-wrap: wrap; gap: 12px; }
body .contact-fact-sheet-buttons .contact-fact-sheet-button { background: #526d9e; border-color: #526d9e; color: #fff; padding: 14px 18px; min-height: 44px; font-size: 14px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; text-align: center; white-space: normal; }
body .contact-fact-sheet-button small { font-size: 10px; opacity: .9; }
body .contact-fact-sheet-buttons .contact-fact-sheet-button:hover { filter: brightness(.88); }
@media (max-width: 639px) { body .contact-fact-sheet-buttons { flex-direction: column; } }

/* Match contact downloads to primary actions and keep the enquiry form compact. */
body main.contact-page .contact-fact-sheet-buttons a.contact-fact-sheet-button {
  background: var(--hospitality-brand); border-color: var(--hospitality-brand); color: #fff !important;
}
body main.contact-page .contact-form { align-self: center; align-content: start; }
body main.contact-page .contact-form > button[type="submit"] {
  align-self: start; padding-block: 14px; min-height: 0; height: auto;
}

/* Match Desert Breeze's current About photographs: clean edges and soft shadows. */
body main.about-page > :is(.about-architecture, .about-commitment) :is(.about-architecture-image, .about-commitment-image) {
  position: relative;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  filter: none !important;
  box-shadow: var(--site-photo-shadow) !important;
  overflow: hidden;
}
body main.about-page > :is(.about-architecture, .about-commitment) :is(.about-architecture-image, .about-commitment-image)::before {
  content: none !important;
}

/* Remove white inset outlines from Home accommodation sliders. */
body main #your-stay .home-stay-slider-ref::after { content: none; display: none; border: 0; }

/* Stronger shadows for Home and Stay image sliders, owner requested 2026-10-06. */
body main :is(.home-stay-photo-ref, .home-stay-photo-overlap),
body main #your-stay > .home-stay-slider-ref,
body main.stay-page-full .stay-path-media,
body main > :is(.home-ref-hero, .hero, .stay-hero-full) {
  box-shadow: 0 8px 20px rgba(37,29,21,.24), 0 28px 60px rgba(37,29,21,.32);
  filter: none;
}

/* Match Desert Breeze amenities summary beneath Stay icons. */
.stay-page-full .stay-included-notes { border-top: 1px solid var(--stiltz-border); margin-top: 32px; padding-top: 28px; text-align: center; }
.stay-page-full .stay-included-notes p { color: var(--stiltz-secondary-text); font-family: Marcellus, Georgia, serif; font-size: 16px; font-style: italic; line-height: 1.55; margin: 0 auto; max-width: none; text-align: center; white-space: normal; width: 100%; }
.stay-page-full .stay-included-notes p + p { margin-top: 10px; }

/* papyrus-brand-preview-20260915.css */
/* Owner-approved Papyrus accent preview, 2026-09-15. */
@font-face {
  font-family: 'Hospitality Papyrus';
  src: url('./assets/fonts/papyrus-preview-20260915.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
:root { --hospitality-accent-font: 'Hospitality Papyrus', Papyrus, fantasy; }
body .eyebrow,
body .about-values-script,
body .about-love-brand,
body .stay-included-script,
body .home-memory-line-script,
body .home-memory-line-kicker {
  font-family: var(--hospitality-accent-font) !important;
  font-style: normal !important;
  font-weight: 400 !important;
  font-synthesis: none;
  letter-spacing: 0;
  line-height: 1.3;
}
body .eyebrow { font-size: clamp(22px, 2.1vw, 28px); }
body .about-values-script,
body .about-love-brand,
body .stay-included-script { font-size: clamp(28px, 3vw, 40px); }
body .home-memory-line-script {
  font-size: clamp(28px, 3.5vw, 48px);
  white-space: normal;
}
body .home-memory-line-kicker { font-size: clamp(22px, 2.1vw, 28px); }
@media (min-width: 981px) and (pointer: fine) {
  body .eyebrow { font-size: clamp(17.6px, 2.1vw, 22.4px); }
  body .about-values-script,
  body .about-love-brand,
  body .stay-included-script { font-size: clamp(22.4px, 3vw, 32px); }
  body .home-memory-line-script { font-size: clamp(22.4px, 3.5vw, 38.4px); }
  body .home-memory-line-kicker { font-size: clamp(17.6px, 2.1vw, 22.4px); }
}

/* Logo colour for decorative accents and primary actions. */
:root { --hospitality-brand: #314f86; }
body :is(.eyebrow, .about-values-script, .about-love-brand, .stay-included-script, .home-memory-line-script, .home-memory-line-kicker) {
  color: var(--hospitality-brand) !important;
}
body :is(.about-rule, .home-rule, .stay-rule, .experience-rule) { background-color: var(--hospitality-brand) !important; }
body .button.primary,
body .site-header.is-condensed .header-book-panel {
  background-color: var(--hospitality-brand) !important;
  border-color: var(--hospitality-brand) !important;
  color: #fff;
}
body .button.primary:hover,
body .site-header.is-condensed .header-book-panel:hover {
  background-color: color-mix(in srgb, var(--hospitality-brand) 85%, #000);
  border-color: color-mix(in srgb, var(--hospitality-brand) 85%, #000);
}
/* White accents remain readable over photography. */
body :is(.hero, .home-ref-hero, .stay-hero-full, .about-hero, .experiences-hero-full, .gallery-hero-full, .contact-hero, .home-final-ref, .about-book-cta, .home-memory-line-ref) :is(.eyebrow, .home-memory-line-script, .home-memory-line-kicker) { color: #fff !important; }

/* Stiltz links and button hover states use the logo blue. */
body main a:not(.button),
body .text-link,
body :is(.footer-link-row, .footer-credit, .footer-built-by) a {
  color: var(--hospitality-brand) !important;
}
body .text-link { border-bottom-color: var(--hospitality-brand); }
body main a:not(.button):hover,
body main a:not(.button):focus-visible {
  color: var(--hospitality-brand) !important;
}
body .button:hover,
body .button:focus-visible,
body .map-expand-button:hover,
body .map-expand-button:focus-visible,
body .footer-social a:hover,
body .gallery-socials a:hover {
  background-color: var(--hospitality-brand) !important;
  border-color: var(--hospitality-brand) !important;
  color: #fff !important;
}

/* Papyrus headings; paragraph typography remains independent. */
body :is(h1, h2, h3, h4, h5, h6) {
  font-family: var(--hospitality-accent-font) !important;
  font-style: normal !important;
  font-weight: 400 !important;
  font-synthesis: none;
  line-height: 1.25;
}

/* Social links follow each site's logo colour. */
body :is(.footer-social, .gallery-socials) a {
  background-color: var(--hospitality-brand) !important;
  color: #fff !important;
  border-color: var(--hospitality-brand) !important;
}
body :is(.footer-social, .gallery-socials) a:hover,
body :is(.footer-social, .gallery-socials) a:focus-visible {
  background-color: var(--hospitality-brand) !important;
  border-color: var(--hospitality-brand) !important;
  color: #fff !important;
}

/* Montserrat Medium eyebrows contrast with the Papyrus headings. */
@font-face {
  font-family: 'Hospitality Montserrat';
  src: url('./assets/fonts/montserrat-medium-20260915.woff2') format('woff2');
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}
body .eyebrow,
body .home-memory-line-kicker,
body .about-love-kicker {
  font-family: 'Hospitality Montserrat', Montserrat, sans-serif !important;
  font-style: normal !important;
  font-weight: 500 !important;
  font-size: 14px !important;
  letter-spacing: .12em !important;
  line-height: 1.5 !important;
  text-transform: uppercase !important;
}
@media (max-width: 980px) {
  body .eyebrow,
  body .home-memory-line-kicker,
  body .about-love-kicker { font-size: 13px !important; }
}

/* Owner-approved stronger hero text panels on four Stiltz pages. */
body :is(.home-ref-hero-copy, .stay-hero-copy, .experiences-hero-copy, .contact-hero-copy) {
  background-color: rgba(0, 0, 0, .45) !important;
}

/* FAQ card question headings: clear hierarchy within the eyebrow style, 2026-09-16. */
body main :is(.home-answer-card, .stay-answer-card, .experience-answer-card, .contact-answer-card) h3 {
  color: var(--hospitality-brand) !important;
  font-family: 'Hospitality Montserrat', Montserrat, sans-serif !important;
  font-size: 17px !important;
  font-style: normal !important;
  font-weight: 600 !important;
  letter-spacing: .06em !important;
  line-height: 1.35 !important;
  text-transform: uppercase !important;
}
@media (max-width: 980px) {
  body main :is(.home-answer-card, .stay-answer-card, .experience-answer-card, .contact-answer-card) h3 { font-size: 15px !important; }
}

/* Desktop footer: shared heading and artwork rows for awards and sister lodge, 2026-09-16. */
@media (min-width: 981px) {
  .site-footer .footer-sister-lodge { align-self: start; }
  .site-footer .footer-sister-lodge > a {
    display: flex;
    justify-content: flex-end;
    margin-top: 20px;
  }
}

/* Full-bleed footer band and accent scroll-to-top control, 2026-09-16. */
.site-footer .footer-minimal::before {
  background: #faf8f3;
  inset-block: 0;
  left: 50%;
  margin: 0;
  transform: translateX(-50%);
  width: 125vw; /* Compensates for the fixed 80% desktop zoom. */
}
.site-footer .scroll-to-top,
.site-footer .scroll-to-top:is(:hover, :focus-visible) {
  background: var(--hospitality-brand);
  border-color: var(--hospitality-brand);
  color: #fff;
}

/* The Stiltz desktop sister-lodge logo placement, 2026-09-16. */
@media (min-width: 981px) {
  .site-footer .footer-sister-lodge > a { transform: translateY(50px); }
}

/* The Stiltz Contact detail presentation, 2026-09-16. */
.contact-page .contact-item {
  column-gap: 20px;
  grid-template-columns: 28px minmax(0, 1fr);
}
.contact-page .contact-item > span {
  display: grid;
  font-size: 26px;
  place-items: start center;
}
.contact-page .contact-item strong {
  color: var(--stiltz-charcoal);
  font-family: 'Hospitality Montserrat', Montserrat, sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.contact-page .contact-item a {
  color: var(--stiltz-charcoal) !important;
  text-decoration: none;
}
.contact-page .contact-item a:is(:hover, :focus-visible) {
  color: var(--hospitality-brand) !important;
  outline: 0;
}


/* Smaller mobile/tablet heading hierarchy, approved 2026-09-16.
   Values are before the existing 0.8 page scale; keep small labels readable. */
@media (max-width: 980px), (pointer: coarse) {
  main {
    --small-screen-faq: 15px;
    --small-screen-h1: 28px;
    --small-screen-h2: 30px;
    --small-screen-h3: 22px;
    --small-screen-h4: 20px;
    --small-screen-h5: 18px;
    --small-screen-h6: 16px;
    --small-screen-script: 26px;
    --small-screen-banner-script: 30px;
    --small-screen-banner-lead: 22px;
  }
  html body main[class] h1:not(.home-experiences-ref *) { font-size: var(--small-screen-h1) !important; }
  html body main[class] h2:not(.home-experiences-ref *) { font-size: var(--small-screen-h2) !important; }
  html body main[class] h3:not(.home-experiences-ref *) { font-size: var(--small-screen-h3) !important; }
  html body main[class] h4:not(.home-experiences-ref *) { font-size: var(--small-screen-h4) !important; }
  html body main[class] h5:not(.home-experiences-ref *) { font-size: var(--small-screen-h5) !important; }
  html body main[class] h6:not(.home-experiences-ref *) { font-size: var(--small-screen-h6) !important; }
  html body main[class] :is(h1, h2, h3, h4, h5, h6):not(.home-experiences-ref *) { line-height: 1.25; }
  html body main[class] :is(.home-answer-card, .stay-answer-card, .experience-answer-card, .contact-answer-card) h3 {
    font-size: var(--small-screen-faq) !important;
    line-height: 1.35 !important;
  }
  html body main[class].about-page .about-love article h3 { font-size: 20px !important; }
  html body main[class] :is(.about-values-script, .about-love-brand, .stay-included-script) {
    font-size: var(--small-screen-script) !important;
    line-height: 1.3;
  }
  html body main[class] .about-values-main { font-size: var(--small-screen-h2) !important; line-height: 1.25; }
  html body main[class] :is(.home-space-intro .about-values-main, .home-memory-line-main) { font-size: var(--small-screen-banner-lead) !important; line-height: 1.25; }
  html body main[class] .home-memory-line-script {
    font-size: var(--small-screen-banner-script) !important;
    line-height: 1.25;
  }
}
@media (max-width: 640px) {
  main {
    --small-screen-h1: 24px;
    --small-screen-h2: 28px;
    --small-screen-h3: 20px;
    --small-screen-h4: 18px;
    --small-screen-h5: 16px;
    --small-screen-h6: 15px;
    --small-screen-script: 24px;
    --small-screen-banner-script: 26px;
    --small-screen-banner-lead: 20px;
  }
  html body main[class] .stay-award-content h2 { font-size: 23px !important; }
  html body main[class] .gallery-share h2 { font-size: 26px !important; }
  html body main[class].about-page .about-love article h3 { font-size: 18px !important; }
}
@media (min-width: 981px) and (pointer: coarse) {
  main { --small-screen-faq: 17px; }
}

/* Stiltz Home remembered-places text: clearer tablet sizing. */
@media (min-width: 641px) and (pointer: coarse) {
  html body main[class] .home-memory-line-ref .home-memory-line-main { font-size: 32px !important; }
  html body main[class] .home-memory-line-ref .home-memory-line-script { font-size: 46px !important; }
}

/* Owner-approved footer and reviews-loading accessibility, 2026-11-09. */
body .footer-built-by a[href="https://www.dic.net"] {
  color: var(--stiltz-timber) !important;
  text-decoration: underline;
  text-decoration-color: currentColor;
  text-underline-offset: .2em;
}
body .trustindex-lazy > span {
  color: var(--stiltz-secondary-text);
  opacity: 1;
}

/* Common Latin glyphs use smaller files; full fonts above remain fallbacks. */
@font-face {
  font-family: 'Hospitality Papyrus';
  src: url('./assets/fonts/papyrus-preview-latin-20261109.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  unicode-range: U+0000-00FF, U+2000-206F, U+20AC, U+2122, U+FFFD;
}
@font-face {
  font-family: 'Hospitality Montserrat';
  src: url('./assets/fonts/montserrat-medium-latin-20261109.woff2') format('woff2');
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  unicode-range: U+0000-00FF, U+2000-206F, U+20AC, U+2122, U+FFFD;
}

/* header-phase1-book.css */
/* Larger Book label only in the expanded desktop navigation. */
@media (min-width: 981px) {
    .site-header:not(.is-condensed) .header-book-panel {
        font-size: 24px !important;
    }
}

/* header-logo-20260915.css */
/* Supplied Stiltz logo replaces the separate Phase 1 wordmark and slogan. */
.site-header .header-brand-logo {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
  line-height: 0;
  max-width: 100%;
  min-height: 0;
  width: 100%;
}
.site-header .header-brand-logo img {
  display: block;
  height: 100%;
  max-height: 100%;
  max-width: 100%;
  object-fit: contain;
  width: auto;
}

/* Expanded desktop header: centred logo and menu, without side panels. */
@media (min-width: 981px) {
  .site-header:not(.is-condensed) .header-frame {
    grid-template-columns: minmax(0, 1fr);
  }
  .site-header:not(.is-condensed) .header-main {
    grid-column: 1;
  }
  .site-header:not(.is-condensed) .header-mark,
  .site-header:not(.is-condensed) .header-book-panel {
    display: none;
  }
  .site-header:not(.is-condensed) .header-brand,
  .site-header:not(.is-condensed) .main-nav {
    border: 0;
  }
}

/* Breathing room above the expanded desktop logo. */
@media (min-width: 981px) {
  .site-header:not(.is-condensed) .header-brand {
    padding-top: 16px !important;
  }
}

/* Expand the Phase 1 logo downward, preserving top spacing and menu position. */
@media (min-width: 981px) {
  .site-header:not(.is-condensed) .header-brand-logo img {
    transform: scale(1.265);
    transform-origin: center top;
  }
}

/* Phase 1 white overlay fades into the hero without a hard bottom edge. */
@media (min-width: 981px) {
  .site-header:not(.is-condensed) {
    --phase1-overlay-opacity: .65;
    background: transparent;
  }
  .site-header:not(.is-condensed)::before {
    content: '';
    position: absolute;
    inset: 0 0 -100px;
    pointer-events: none;
    z-index: -1;
    background: linear-gradient(to bottom,
      rgba(255, 255, 255, var(--phase1-overlay-opacity)) 0%,
      rgba(255, 255, 255, var(--phase1-overlay-opacity)) calc(100% - 100px),
      rgba(255, 255, 255, 0) 100%);
  }
  .site-header:not(.is-condensed) .main-nav a {
    color: #000;
    text-shadow: none;
  }
  body:has(main.stay-page-full) .site-header:not(.is-condensed) { --phase1-overlay-opacity: .65; }
  body:has(main.contact-page) .site-header:not(.is-condensed) { --phase1-overlay-opacity: .65; }
}

/* Keep the existing Phase B image box when using Phase A shadow artwork. */
@media (min-width: 981px) and (pointer: fine) {
  .site-header.is-condensed .header-mark img.header-mark-logo {
    aspect-ratio: 1200 / 353;
    object-fit: contain;
  }
}

/* Match Desert Breeze Phase 1 header height and logo-to-menu spacing. */
@media (min-width: 981px) and (pointer: fine) {
  body .site-header[data-site-header]:not(.is-condensed) .header-frame,
  body .site-header[data-site-header]:not(.is-condensed) .header-main {
    grid-template-rows: 130px 64px;
    min-height: 194px;
  }
  body .site-header[data-site-header]:not(.is-condensed) { min-height: 194px; }
  body .site-header[data-site-header]:not(.is-condensed) .header-brand-logo img { height: 71px; }
}

/* Phase B uses the same clean white header surface. */
body .site-header[data-site-header].is-condensed { background: #fff; }

/* home-stay-slider.css */
/* Match the Stay page's accommodation slider proportions at every screen size. */
.home-stay-ref .home-stay-photo-ref {
  align-self: center;
}
.home-stay-ref .home-stay-slider-ref {
  aspect-ratio: 3 / 2;
  height: auto;
  min-height: 0;
}

/* Photos and copy sit side by side above mobile widths. */
@media (min-width: 641px) {
  .home-stay-ref .home-stay-grid-ref {
    grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
    max-width: none;
  }
  .home-stay-ref .home-stay-copy-ref {
    max-width: none;
    padding: 0 0 0 clamp(36px, 4vw, 64px);
  }
  .home-stay-ref .home-stay-copy-ref .eyebrow { margin-bottom: 8px; }
  .home-stay-ref .home-stay-copy-ref .home-rule { margin: 16px 0; }
  .home-stay-ref .home-stay-copy-ref p { max-width: none; margin-bottom: 0; line-height: 1.55; }
  .home-stay-ref .home-stay-types-ref { margin: 16px 0 12px; }
  .home-stay-ref .home-stay-types-ref a {
    min-height: 0;
    gap: 8px;
    padding-top: 12px;
    padding-bottom: 12px;
  }
  .home-stay-ref .home-stay-types-ref span { font-size: 20px; line-height: 1.1; min-height: 0; }
  .home-stay-ref .home-stay-villa-desktop { display: none !important; }
  .home-stay-ref .home-stay-villa-standard { display: inline !important; }
  .home-stay-ref .home-stay-proofs-ref { gap: 8px 14px; margin-bottom: 16px; }
  .home-stay-ref .home-stay-copy-ref > .button { min-height: 46px; padding: 12px 24px; line-height: 1.4; }
}
@media (min-width: 641px) and (max-width: 980px) {
  .home-stay-ref .home-stay-copy-ref { padding-left: 24px; }
  .home-stay-ref .home-stay-copy-ref h2 { font-size: 32px; }
  .home-stay-ref .home-stay-copy-ref p { font-size: 15px; }
}

/* hardcoded-desktop-zoom-20260916.css */
/* Authoritative 80% scale. Mobile/tablet trial authorised 2026-09-16. */
@media screen {
  html {
    --site-page-scale: .8;
    --opening-hero-height: calc(100vh / var(--site-page-scale));
    zoom: var(--site-page-scale);
  }
  @supports (height: 100dvh) {
    html { --opening-hero-height: calc(100dvh / var(--site-page-scale)); }
  }

  /* Opening photographs fill one visible screen despite the page scale.
     Dynamic viewport units track browser chrome, resizing and orientation. */
  main > :is(.home-ref-hero, .stay-hero-full, .about-hero, .experiences-hero-full, .gallery-hero-full, .contact-hero) {
    height: var(--opening-hero-height);
    min-height: 0;
    max-height: none;
  }
  main > :is(.home-ref-hero, .stay-hero-full, .about-hero, .experiences-hero-full, .gallery-hero-full, .contact-hero) img {
    height: var(--opening-hero-height);
    min-height: 0;
    max-height: none;
  }
}
