/* Château La Châteline V5.0.0016 — responsive/navigation hardening */
html,body{max-width:100%;overflow-x:clip}
body.public-v5-0-0016 *{box-sizing:border-box;min-width:0}
body.public-v5-0-0016 img,body.public-v5-0-0016 video,body.public-v5-0-0016 iframe,body.public-v5-0-0016 svg{max-width:100%;height:auto}
body.public-v5-0-0016 main,body.public-v5-0-0016 .section,body.public-v5-0-0016 .dynamic-page-shell,body.public-v5-0-0016 .stay-detail-layout{max-width:100%}
body.public-v5-0-0016 .desktop-nav-list{display:flex;align-items:center;justify-content:center;gap:clamp(16px,2vw,30px)}
body.public-v5-0-0016 .mobile-nav-list{display:none}
body.public-v5-0-0016 .hospitality-header-inner{width:min(100%,1440px);padding-inline:clamp(20px,3vw,42px);grid-template-columns:minmax(220px,1fr) auto minmax(150px,.5fr);gap:clamp(18px,2.4vw,34px)}
body.public-v5-0-0016 .hospitality-brand{min-width:0}
body.public-v5-0-0016 .hospitality-brand span{min-width:0}
body.public-v5-0-0016 .hospitality-brand strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
body.public-v5-0-0016 .hospitality-nav{min-width:0}
body.public-v5-0-0016 .nav-more{position:relative}
body.public-v5-0-0016 .nav-more-menu{max-width:min(340px,calc(100vw - 32px))}
body.public-v5-0-0016 .hero-inner h1,body.public-v5-0-0016 .dynamic-page-hero h1,body.public-v5-0-0016 .stay-hero-copy h1{overflow-wrap:anywhere;text-wrap:balance}
body.public-v5-0-0016 .hero-inner p,body.public-v5-0-0016 .dynamic-page-hero p,body.public-v5-0-0016 .stay-hero-copy p{overflow-wrap:anywhere}
body.public-v5-0-0016 .stay-grid,body.public-v5-0-0016 .stay-grid-config,body.public-v5-0-0016 .review-rail,body.public-v5-0-0016 .news-grid,body.public-v5-0-0016 .cards-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}
body.public-v5-0-0016 .booking-panel,body.public-v5-0-0016 .contact-panel,body.public-v5-0-0016 .split-feature,body.public-v5-0-0016 .dynamic-page-shell{min-width:0}
body.public-v5-0-0016 input,body.public-v5-0-0016 select,body.public-v5-0-0016 textarea,body.public-v5-0-0016 button{max-width:100%}
body.public-v5-0-0016 .richtext{overflow-wrap:anywhere}
body.public-v5-0-0016 .richtext table{width:100%;max-width:100%;border-collapse:collapse}
body.public-v5-0-0016 #estate-map,body.public-v5-0-0016 .map-shell{max-width:100%;overflow:hidden}
body.public-v5-0-0016 .public-pwa-dock small{max-width:88px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.public-v5-0-0016.site-menu-open{overflow:hidden}

@media (max-width:1180px){
 body.public-v5-0-0016 .hospitality-header-inner{grid-template-columns:minmax(190px,1fr) auto;min-height:78px}
 body.public-v5-0-0016 .hospitality-book{display:none!important}
 body.public-v5-0-0016 .menu-toggle{display:flex!important;align-items:center;justify-content:center;flex-direction:column;gap:5px;width:48px;height:48px;border-radius:50%;z-index:1003}
 body.public-v5-0-0016 .hospitality-nav{display:none!important;position:fixed!important;inset:78px 14px auto 14px!important;width:auto!important;max-height:calc(100dvh - 96px);overflow:auto;overscroll-behavior:contain;background:#fff!important;color:var(--ink)!important;border:1px solid rgba(23,55,51,.12)!important;border-radius:22px!important;padding:14px!important;box-shadow:0 24px 70px rgba(17,48,42,.2)!important;z-index:1002!important}
 body.public-v5-0-0016 .hospitality-nav.open{display:block!important}
 body.public-v5-0-0016 .desktop-nav-list{display:none!important}
 body.public-v5-0-0016 .mobile-nav-list{display:grid!important;gap:4px}
 body.public-v5-0-0016 .mobile-nav-list a{display:flex!important;align-items:center;gap:12px;width:100%;padding:14px 14px!important;border-radius:14px;color:#173733!important;text-decoration:none!important;font:700 15px/1.25 var(--body-font,system-ui,sans-serif)!important;letter-spacing:0!important;text-transform:none!important;border:0!important}
 body.public-v5-0-0016 .mobile-nav-list a span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#edf6f3;color:#205d58;flex:0 0 30px}
 body.public-v5-0-0016 .mobile-nav-list a[aria-current="page"]{background:#eef6f3;color:#143d36!important}
 body.public-v5-0-0016 .mobile-nav-list .mobile-nav-book{margin-top:6px;background:#205d58!important;color:#fff!important}
 body.public-v5-0-0016 .mobile-nav-list .mobile-nav-book span{background:rgba(255,255,255,.16);color:#fff}
}

@media (max-width:760px){
 body.public-v5-0-0016{font-size:16px}
 body.public-v5-0-0016 .hotel-utility{display:none!important}
 body.public-v5-0-0016 .hospitality-header-inner{min-height:70px;padding-inline:16px;gap:12px}
 body.public-v5-0-0016 .hospitality-brand img{width:48px!important;height:48px!important;flex:0 0 48px}
 body.public-v5-0-0016 .hospitality-brand strong{font-size:17px!important;max-width:calc(100vw - 130px)}
 body.public-v5-0-0016 .hospitality-brand small{display:none!important}
 body.public-v5-0-0016 .hospitality-nav{inset:70px 10px auto 10px!important;max-height:calc(100dvh - 82px)}
 body.public-v5-0-0016 .section{width:calc(100% - 28px)!important;padding-block:clamp(52px,12vw,72px)!important}
 body.public-v5-0-0016 .hero-inner,body.public-v5-0-0016 .dynamic-page-hero-inner{width:calc(100% - 28px)!important;padding-inline:0!important}
 body.public-v5-0-0016 .hero-inner h1,body.public-v5-0-0016 .dynamic-page-hero h1,body.public-v5-0-0016 .stay-hero-copy h1{font-size:clamp(38px,11.5vw,58px)!important;line-height:.98!important;max-width:100%!important}
 body.public-v5-0-0016 .hero-inner p,body.public-v5-0-0016 .dynamic-page-hero p,body.public-v5-0-0016 .stay-hero-copy p{font-size:clamp(16px,4.6vw,20px)!important;line-height:1.5!important;max-width:100%!important}
 body.public-v5-0-0016 .stay-grid,body.public-v5-0-0016 .stay-grid-config,body.public-v5-0-0016 .review-rail,body.public-v5-0-0016 .news-grid,body.public-v5-0-0016 .cards-grid,body.public-v5-0-0016 .gallery-grid{grid-template-columns:1fr!important}
 body.public-v5-0-0016 .booking-panel,body.public-v5-0-0016 .contact-panel,body.public-v5-0-0016 .split-feature,body.public-v5-0-0016 .lake-intro-grid,body.public-v5-0-0016 .dynamic-page-shell,body.public-v5-0-0016 .footer-top{grid-template-columns:1fr!important}
 body.public-v5-0-0016 .form-row,body.public-v5-0-0016 .form-row.compact,body.public-v5-0-0016 .booking-top-row{grid-template-columns:1fr!important}
 body.public-v5-0-0016 .stay-hero-layout{width:calc(100% - 28px)!important;margin-inline:auto!important;grid-template-columns:1fr!important}
 body.public-v5-0-0016 .stay-hero-book-card{width:100%!important;max-width:none!important}
 body.public-v5-0-0016 .stay-hero-actions{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
 body.public-v5-0-0016 .stay-hero-actions .btn,body.public-v5-0-0016 .stay-tertiary{width:100%!important;justify-content:center!important;text-align:center!important}
 body.public-v5-0-0016 .stay-hero-facts{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
 body.public-v5-0-0016 .richtext table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap}
 body.public-v5-0-0016 .public-pwa-dock{left:8px!important;right:8px!important;bottom:max(8px,env(safe-area-inset-bottom))!important;width:auto!important;grid-template-columns:repeat(var(--dock-items,5),minmax(0,1fr))!important}
 body.public-v5-0-0016 .public-pwa-dock a,body.public-v5-0-0016 .public-pwa-dock button{min-width:0!important;padding-inline:4px!important}
 body.public-v5-0-0016 .public-pwa-dock small{font-size:10px!important;max-width:100%!important}
 body.public-v5-0-0016 .site-footer{padding-bottom:calc(92px + env(safe-area-inset-bottom))!important}
}

@media (max-width:420px){
 body.public-v5-0-0016 .hospitality-brand strong{font-size:15px!important;max-width:calc(100vw - 116px)}
 body.public-v5-0-0016 .hospitality-brand img{width:43px!important;height:43px!important;flex-basis:43px}
 body.public-v5-0-0016 .menu-toggle{width:44px;height:44px}
 body.public-v5-0-0016 .section{width:calc(100% - 22px)!important}
 body.public-v5-0-0016 .hero-inner,body.public-v5-0-0016 .dynamic-page-hero-inner,body.public-v5-0-0016 .stay-hero-layout{width:calc(100% - 22px)!important}
}
