/* Chez Studio 1.0.0 — camada estável, responsiva e premium */
:root{--chez-v1-navy:#10263c;--chez-v1-gold:#cfa84f;--chez-v1-cream:#fbfaf7;--chez-v1-ease:cubic-bezier(.22,.61,.36,1)}
html{scroll-behavior:smooth}html,body{max-width:100%;overflow-x:clip}*,*::before,*::after{box-sizing:border-box}img{max-width:100%;height:auto}

/* Ofertas: grade confiável em qualquer viewport */
.chez-offers-section{width:100%!important;max-width:100%!important;overflow:visible!important;padding-inline:clamp(14px,3vw,48px)!important}
.chez-offers-section .chez-offers-grid{display:grid!important;width:min(1380px,100%)!important;max-width:1380px!important;margin-inline:auto!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:clamp(18px,2vw,28px)!important;transform:none!important}
.chez-offers-section .chez-offer-card{width:100%!important;min-width:0!important;max-width:100%!important;margin:0!important;min-height:clamp(500px,44vw,610px)!important;overflow:hidden!important;border-radius:24px!important}
.chez-offers-section .chez-offer-content{left:16px!important;right:16px!important;bottom:16px!important;width:auto!important;max-width:none!important;height:auto!important;max-height:68%!important;overflow:auto!important;padding:22px!important;border:1px solid rgba(255,255,255,.24)!important;border-radius:18px!important;background:linear-gradient(145deg,rgba(7,24,42,.52),rgba(7,24,42,.30))!important;-webkit-backdrop-filter:blur(16px) saturate(120%)!important;backdrop-filter:blur(16px) saturate(120%)!important;box-shadow:0 18px 44px rgba(0,0,0,.16)!important}
.chez-offers-section .chez-offer-content h3{overflow-wrap:normal!important;word-break:normal!important;text-wrap:balance!important}

/* Village: nunca é ocultado pela camada mobile e mantém grade fluida */
.chez-village-v18614{display:block!important;visibility:visible!important;opacity:1!important;width:100%!important;max-width:100%!important}
.chez-village-v18614-shell{width:min(1380px,calc(100% - 48px))!important;max-width:1380px!important;margin-inline:auto!important}
.chez-village-v18614-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:clamp(18px,2vw,28px)!important;width:100%!important}
.chez-village-room-card{display:flex!important;flex-direction:column!important;min-width:0!important;width:100%!important;overflow:hidden!important}
.chez-village-room-image{aspect-ratio:4/3!important;height:auto!important}.chez-village-room-image img{width:100%!important;height:100%!important;object-fit:cover!important}

/* Pop-up premium: imagem retangular + texto no rodapé da própria imagem */
.chez-offer-popup{position:fixed!important;inset:0!important;z-index:2147483646!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:clamp(16px,3vw,40px)!important;background:rgba(4,14,25,.72)!important;-webkit-backdrop-filter:blur(9px)!important;backdrop-filter:blur(9px)!important;visibility:visible!important;opacity:1!important}
.chez-offer-popup.is-closing{opacity:0!important;transition:opacity .2s ease!important}
.chez-offer-popup .chez-offer-card{position:relative!important;width:min(1040px,92vw)!important;height:min(650px,82vh)!important;max-height:82vh!important;aspect-ratio:16/10!important;overflow:hidden!important;border-radius:24px!important;background:#0b2034!important;box-shadow:0 34px 90px rgba(0,0,0,.42)!important}
.chez-offer-popup .chez-offer-card picture,.chez-offer-popup .chez-offer-card picture img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;display:block!important}.chez-offer-popup .chez-offer-card picture img{object-fit:cover!important}
.chez-offer-popup .chez-offer-overlay{position:absolute!important;inset:0!important;background:linear-gradient(180deg,rgba(3,14,27,.02) 28%,rgba(3,14,27,.20) 60%,rgba(3,14,27,.66) 100%)!important}
.chez-offer-popup .chez-offer-content{position:absolute!important;z-index:4!important;left:22px!important;right:22px!important;bottom:22px!important;top:auto!important;width:auto!important;max-width:760px!important;max-height:54%!important;overflow:auto!important;padding:22px 24px!important;border:1px solid rgba(255,255,255,.24)!important;border-radius:18px!important;background:linear-gradient(145deg,rgba(8,25,39,.48),rgba(8,25,39,.28))!important;-webkit-backdrop-filter:blur(16px) saturate(125%)!important;backdrop-filter:blur(16px) saturate(125%)!important;box-shadow:0 18px 46px rgba(0,0,0,.16)!important;color:#fff!important}
.chez-offer-popup .chez-offer-content h3{font-size:clamp(30px,3vw,48px)!important;line-height:1.02!important;margin:8px 0 10px!important;text-wrap:balance!important;overflow-wrap:normal!important;word-break:normal!important;color:#fff!important}
.chez-offer-popup .chez-offer-description{font-size:clamp(13px,1.25vw,16px)!important;line-height:1.5!important;color:rgba(255,255,255,.96)!important}.chez-offer-popup .chez-offer-description p{margin:.3em 0!important}
.chez-offer-popup .chez-offer-cta{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:48px!important;margin-top:14px!important;padding:0 24px!important;border-radius:2px!important;background:var(--chez-v1-gold)!important;color:#fff!important;text-decoration:none!important;font-weight:700!important;letter-spacing:.07em!important;text-transform:uppercase!important;box-shadow:0 10px 24px rgba(0,0,0,.14)!important}
.chez-offer-popup-close{position:absolute!important;z-index:9!important;top:16px!important;right:16px!important;width:44px!important;height:44px!important;display:grid!important;place-items:center!important;border:1px solid rgba(255,255,255,.72)!important;border-radius:50%!important;background:rgba(7,18,25,.38)!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;color:#fff!important;font:300 30px/1 Arial,sans-serif!important;cursor:pointer!important}
html.chez-popup-open,html.chez-popup-open body{overflow:hidden!important}

/* Calendário: viewport global, nunca atrás de seções */

/* Premium, leve: apenas opacity/transform */
.chez-v1-motion [data-chez-v1-reveal]{opacity:0;transform:translate3d(0,16px,0);transition:opacity .62s var(--chez-v1-ease),transform .62s var(--chez-v1-ease);will-change:opacity,transform}.chez-v1-motion [data-chez-v1-reveal].is-visible{opacity:1;transform:none;will-change:auto}
@media(hover:hover) and (pointer:fine){.chez-village-room-card,.chez-accommodation-v12-card,.chez-offers-section .chez-offer-card{transition:transform .38s var(--chez-v1-ease),box-shadow .38s var(--chez-v1-ease)}.chez-village-room-card:hover,.chez-accommodation-v12-card:hover,.chez-offers-section .chez-offer-card:hover{transform:translateY(-4px);box-shadow:0 24px 58px rgba(14,34,58,.12)}.chez-village-room-card img,.chez-accommodation-v12-card img,.chez-offers-section .chez-offer-card img{transition:transform .75s var(--chez-v1-ease)}.chez-village-room-card:hover img,.chez-accommodation-v12-card:hover img,.chez-offers-section .chez-offer-card:hover img{transform:scale(1.025)}}

@media(max-width:1024px){.chez-offers-section .chez-offers-grid,.chez-village-v18614-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.chez-village-v18614-shell{width:min(920px,calc(100% - 32px))!important}}
@media(max-width:700px){
 html,body{width:100%!important;max-width:100%!important;overflow-x:hidden!important}
 .chez-offers-section{display:block!important;visibility:visible!important;opacity:1!important;padding-inline:12px!important}
 .chez-offers-section .chez-offers-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:100%!important;max-width:520px!important;margin-inline:auto!important;gap:18px!important}
 .chez-offers-section .chez-offer-card{display:block!important;visibility:visible!important;opacity:1!important;width:100%!important;min-height:520px!important;max-width:100%!important}
 .chez-offers-section .chez-offer-content{left:12px!important;right:12px!important;bottom:12px!important;padding:17px 16px!important;max-height:65%!important}
 .chez-village-v18614{display:block!important;visibility:visible!important;opacity:1!important;padding-inline:12px!important;overflow:visible!important}
 .chez-village-v18614-shell{display:block!important;width:100%!important;max-width:520px!important;margin-inline:auto!important;padding:0!important}
 .chez-village-v18614-grid{display:grid!important;visibility:visible!important;opacity:1!important;grid-template-columns:minmax(0,1fr)!important;width:100%!important;gap:20px!important}
 .chez-village-room-card{display:flex!important;visibility:visible!important;opacity:1!important;width:100%!important;max-width:100%!important;margin:0!important}
 .chez-village-room-content{width:100%!important;padding:22px 18px!important}.chez-village-room-cta{width:100%!important;justify-content:center!important}
 .chez-offer-popup{display:flex!important;visibility:visible!important;opacity:1!important;padding:max(10px,env(safe-area-inset-top)) 10px max(10px,env(safe-area-inset-bottom))!important}
 .chez-offer-popup .chez-offer-card{width:100%!important;max-width:520px!important;height:min(78dvh,640px)!important;max-height:calc(100dvh - 20px)!important;aspect-ratio:auto!important;border-radius:20px!important}
 .chez-offer-popup .chez-offer-content{left:10px!important;right:10px!important;bottom:10px!important;max-width:none!important;max-height:58%!important;padding:16px!important;border-radius:15px!important}
 .chez-offer-popup .chez-offer-content h3{font-size:clamp(25px,8vw,36px)!important;line-height:1.04!important}.chez-offer-popup .chez-offer-description{font-size:clamp(12.5px,3.7vw,15px)!important}.chez-offer-popup .chez-offer-cta{width:100%!important;min-height:48px!important}.chez-offer-popup-close{top:10px!important;right:10px!important;width:42px!important;height:42px!important}
}
@media(max-width:390px){.chez-offer-popup .chez-offer-card{height:min(82dvh,620px)!important}.chez-offer-popup .chez-offer-content{max-height:62%!important}.chez-offers-section,.chez-village-v18614{padding-inline:9px!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.chez-v1-motion [data-chez-v1-reveal],.chez-village-room-card,.chez-accommodation-v12-card,.chez-offer-card,.chez-village-room-card img,.chez-accommodation-v12-card img,.chez-offer-card img{transition:none!important;transform:none!important;opacity:1!important}}
