/* Jade materials and booking surface: layout and interaction stay in their own stylesheets. */
:root{--jade-material-base:#4e8d39;--jade-material-image:url('/assets/jade-polished.webp');--jade-material-width:max(1536px,100vw);--jade-material-size:var(--jade-material-width) auto}
.site-header,.site-footer,.menu-header{isolation:isolate;background-color:var(--jade-material-base);background-image:none}
.site-footer,.menu-header{position:relative}
.site-header::before,.site-footer::before,.menu-header::before{content:'';position:absolute;inset:0;z-index:-2;border-radius:inherit;background-image:var(--jade-material-image);background-size:var(--jade-material-size);background-position:50% 50%;background-repeat:no-repeat;mix-blend-mode:luminosity;opacity:.32;pointer-events:none}
.site-header::after{content:'';position:absolute;inset:1px;z-index:-1;border-radius:7px;background:#fffdf7;pointer-events:none}
.site-header{border-color:#4e8d3966;box-shadow:0 1px 4px #173d2606,0 8px 20px #173d260e}
.site-header nav a:hover{border-bottom-color:var(--jade-material-base)}
.site-header:has(.menu-toggle[aria-expanded=true]) nav{border-color:#4e8d3940;box-shadow:0 6px 20px #173d2615}
.hero-bottom.jade-booking-rail{background:#fffdf7;box-shadow:0 4px 12px #18372208,0 12px 32px #16322214}
.booking-jade-texture,.jade-booking-rail::after{display:none}
.jade-booking-rail .stay-form{background:transparent}
.jade-booking-rail .date-field>label,.jade-booking-rail .hero-guest-field{font-size:.8125rem;color:#4e5e48}
.jade-booking-rail .date-field.has-calendar>label{color:#4e5e48}
.jade-booking-rail .date-trigger,.jade-booking-rail .hero-guest-field select{min-height:44px}
.jade-booking-rail .search-button{align-self:center;min-width:148px;min-height:64px;background:var(--jade-material-base);color:#fffdf7;font-size:1.1875rem;font-weight:700;gap:8px;padding:12px 20px;border-radius:6px}
.jade-booking-rail .search-button:hover{background:#437a31;color:#fffdf7;box-shadow:none}
.jade-booking-rail .date-trigger:focus-visible,.jade-booking-rail .hero-guest-field select:focus-visible,.jade-booking-rail .search-button:focus-visible{outline:2px solid #233c25;outline-offset:3px}
.jade-booking-rail .search-button>span{font-size:1rem}
.jade-booking-rail .booking-note{color:#4e5e48;font-size:.75rem}
#header-photo-name{background-color:#161e18ad;border-radius:6px;box-shadow:inset 0 0 0 1px #fffdf41a}
.header-photo-navigation{text-shadow:0 1px 4px #10271455}
.room-card{border-color:#4e8d393b;box-shadow:0 2px 6px #173d2605,0 12px 28px #173d260c}
.room-price{border-color:#4e8d3926}
.location-detail{background-color:#eef2e6;border-color:#4e8d3938}
.social-card{border-color:#4e8d392b}
.restaurant-socials{flex-wrap:wrap}
.restaurant-socials>a{white-space:nowrap}
.button{transition:background-color .18s,border-color .18s,box-shadow .18s}
.button:hover{transform:none}
.header-actions .button:hover,.room-price .button:hover{background-color:#477f35;border-color:#477f35}
.language-switch button[aria-pressed=true]{background-color:#4e8d3919;color:#294e2b}
.booking-dialog,.dates-dialog,.privacy-dialog,#menu-zoom{border-color:#4e8d3940;box-shadow:0 18px 60px #173d2626}
.site-footer{border-top-color:#33652d}
.site-footer::before{opacity:.14;mask-image:linear-gradient(180deg,transparent,#000 12%,#000 86%,transparent)}
.site-footer::after{content:'';position:absolute;inset:0;z-index:-1;background:#1639207a;pointer-events:none}
.site-footer .brand-lockup>span,.footer-brand>p,.footer-column>.eyebrow,.footer-bottom{color:#edf1e5}
.footer-socials>a{border-color:#f3f5e370}
.footer-column>a:hover{color:#fffdf7;text-decoration:underline;text-underline-offset:4px}
.menu-header{border-bottom-color:var(--jade-material-base)}
.menu-header::after{content:'';position:absolute;inset:0 0 3px;z-index:-1;background:var(--paper);pointer-events:none}
.menu-footer{border-color:#4e8d393b}
.page-arrow{border-color:#4e8d3970}
.page-arrow:hover{background-color:#4e8d3912}
@media(prefers-reduced-motion:reduce){.button{transition:none}}
@media(max-width:700px){.header-photo-navigation{bottom:190px}.jade-booking-rail .date-field>label,.jade-booking-rail .hero-guest-field{font-size:.75rem}.jade-booking-rail .search-button{min-width:0;min-height:48px;padding:10px 8px;gap:6px}.jade-booking-rail .booking-note{font-size:.6875rem}}
@media(max-width:360px){.jade-booking-rail .search-button>span{display:none}}
