.stay-header{background:#0f1013;color:#fff;padding:54px 0 34px}.stay-header h1{color:#fff;font-size:clamp(36px,5vw,64px);letter-spacing:-.045em;margin:12px 0}.stay-header p{color:#b8bbc2;font-size:18px}.stay-header__meta{display:flex;flex-wrap:wrap;gap:20px;margin-top:18px}.stay-header__meta span{align-items:center;display:flex;gap:7px}.stay-gallery{background:#0f1013;padding-bottom:40px}.stay-gallery__grid{border-radius:18px;display:grid;gap:6px;grid-template-columns:2fr 1fr 1fr;grid-template-rows:220px 220px;overflow:hidden}.stay-gallery__item{margin:0;overflow:hidden}.stay-gallery__item--0{grid-row:1/3}.stay-gallery__item img{height:100%;object-fit:cover;transition:.4s;width:100%}.stay-gallery__item:hover img{transform:scale(1.035)}.stay-layout{align-items:start;display:grid;gap:60px;grid-template-columns:minmax(0,1fr) 360px}.stay-content h2{font-size:28px;letter-spacing:-.03em}.stay-section,.stay-intro{border-bottom:1px solid #e4e5e8;padding:0 0 40px;margin:0 0 40px}.amenities-grid{display:grid;gap:14px;grid-template-columns:repeat(2,1fr)}.amenities-grid span{align-items:center;display:flex;gap:10px}.amenities-grid i{color:#1c9157;font-size:21px}.stay-booking{position:sticky;top:28px}.stay-booking__card{background:#fff;border:1px solid #dedfe3;border-radius:18px;box-shadow:0 18px 55px rgba(15,16,19,.13);padding:26px}.stay-price{align-items:baseline;display:flex;gap:5px}.stay-price strong{font-size:26px}.stay-price span{color:#747780}.stay-booking ul{border-bottom:1px solid #e5e6e8;border-top:1px solid #e5e6e8;list-style:none;margin:18px 0;padding:10px 0}.stay-booking li{align-items:center;display:flex;gap:12px;padding:10px 0}.stay-booking li>i{color:#d51f26;font-size:24px}.stay-booking li span,.stay-booking li strong{display:block}.stay-booking li span{color:#71747b;font-size:12px}.stay-booking li strong{color:#17181c;font-size:13px}.stay-booking small{color:#777b83;display:block;margin-top:10px;text-align:center}.stay-unavailable{background:#f0f1f3;border-radius:8px;display:block;padding:12px;text-align:center}.booking-calendar{display:grid;gap:30px;grid-template-columns:repeat(2,1fr);margin-top:24px}.booking-month h3{text-align:center}.booking-month__week,.booking-month__days{display:grid;grid-template-columns:repeat(7,1fr);text-align:center}.booking-month__week span{color:#858890;font-size:10px;font-weight:800;padding:5px}.booking-month__days span{align-items:center;aspect-ratio:1;border-radius:50%;display:flex;font-size:12px;justify-content:center;margin:2px}.booking-month__days .is-reserved{background:#ffe8e8;color:#bd1d22;text-decoration:line-through}.booking-month__days .is-available{background:#eaf7f0;color:#19754a}.booking-month__days .is-past{background:transparent;color:#b8bac0}.booking-legend{display:flex;gap:18px;margin-top:14px}.booking-legend span{align-items:center;display:flex;font-size:12px;gap:7px}.booking-legend i{border-radius:50%;height:12px;width:12px}.booking-legend .is-available{background:#eaf7f0}.booking-legend .is-reserved{background:#ffe8e8}
@media(max-width:900px){.stay-layout{grid-template-columns:1fr}.stay-booking{position:static}.stay-gallery__grid{grid-template-columns:2fr 1fr;grid-template-rows:180px 180px}.booking-calendar{grid-template-columns:1fr}}@media(max-width:600px){.stay-gallery__grid{display:block}.stay-gallery__item{display:none;height:270px}.stay-gallery__item:first-child{display:block}.amenities-grid{grid-template-columns:1fr}}
.stay-gallery__grid{border-radius:0;display:grid;gap:6px;grid-auto-flow:dense;grid-auto-rows:150px;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:none;max-height:none}.stay-gallery__item{background:#1b1c20;border:0;cursor:zoom-in;display:block;height:auto;margin:0;overflow:hidden;padding:0;position:relative}.stay-gallery__item--0{grid-column:span 2;grid-row:span 2}.stay-gallery__item:nth-child(7n+4){grid-row:span 2}.stay-gallery__item:nth-child(9n+6){grid-column:span 2}.stay-gallery__item img{height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.22,1,.36,1);width:100%}.stay-gallery__item:after{background:linear-gradient(135deg,transparent 55%,rgba(0,0,0,.38));content:"";inset:0;opacity:0;position:absolute;transition:.3s}.stay-gallery__item:hover img{transform:scale(1.04)}.stay-gallery__item:hover:after{opacity:1}.stay-lightbox[hidden]{display:none}.stay-lightbox{align-items:center;background:rgba(7,8,10,.94);display:flex;inset:0;justify-content:center;padding:70px 90px;position:fixed;z-index:100000}.stay-lightbox figure{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;margin:0;max-width:min(1200px,88vw)}.stay-lightbox figure img{max-height:calc(100vh - 130px);max-width:100%;object-fit:contain}.stay-lightbox figcaption{color:#d4d5d9;font-size:11px;letter-spacing:.05em;margin-top:12px}.stay-lightbox__close,.stay-lightbox__nav{align-items:center;border:1px solid rgba(255,255,255,.35);color:#fff;display:flex;height:46px;justify-content:center;position:absolute;width:46px}.stay-lightbox__close{right:24px;top:24px}.stay-lightbox__nav{top:50%;transform:translateY(-50%)}.stay-lightbox__nav--prev{left:24px}.stay-lightbox__nav--next{right:24px}.stay-lightbox__close:hover,.stay-lightbox__nav:hover{background:#cb2023;border-color:#cb2023}.has-lightbox{overflow:hidden}
@media(max-width:900px){.stay-gallery__grid{grid-auto-rows:135px;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:none}.stay-lightbox{padding:60px 64px}}
@media(max-width:600px){.stay-gallery__grid{display:grid;grid-auto-rows:120px;grid-template-columns:repeat(2,minmax(0,1fr))}.stay-gallery__item{display:block;height:auto}.stay-gallery__item--0{grid-column:1/-1;grid-row:span 2}.stay-lightbox{padding:64px 16px}.stay-lightbox__nav{bottom:18px;top:auto;transform:none}.stay-lightbox__nav--prev{left:calc(50% - 58px)}.stay-lightbox__nav--next{right:calc(50% - 58px)}}
.stay-booking__card,.stay-unavailable{border-radius:0}
.memory-hero{background:linear-gradient(125deg,#0f1013,#202228);color:#fff;padding:70px 0}.memory-hero h1{color:#fff;font-size:clamp(40px,6vw,72px);letter-spacing:-.05em;margin:10px 0}.memory-hero p{color:#b9bbc1;font-size:17px;max-width:650px}.album-grid{display:grid;gap:24px;grid-template-columns:repeat(3,1fr)}.album-card{background:#fff;border:1px solid #e3e4e7;border-radius:16px;color:#17181c;overflow:hidden;text-decoration:none;transition:.25s}.album-card:hover{box-shadow:0 18px 50px rgba(15,16,19,.12);transform:translateY(-5px)}.album-card figure{aspect-ratio:4/3;margin:0;overflow:hidden}.album-card figure img{height:100%;object-fit:cover;transition:.4s;width:100%}.album-card:hover figure img{transform:scale(1.04)}.album-card>div{padding:20px}.album-card span{color:#d51f26;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.album-card h2{font-size:21px;margin:7px 0}.album-card p{color:#747780}.album-card strong{font-size:12px}.memory-album__intro{margin-bottom:35px;max-width:780px}.masonry-gallery{columns:3;column-gap:12px}.masonry-gallery__item{background:none;border:0;break-inside:avoid;cursor:zoom-in;margin:0 0 12px;padding:0;position:relative;width:100%}.masonry-gallery__item img{border-radius:10px;height:auto;width:100%}.masonry-gallery__item span{background:linear-gradient(transparent,rgba(0,0,0,.75));bottom:0;color:#fff;left:0;padding:35px 12px 12px;position:absolute;right:0;text-align:left}.assojuris-lightbox{background:#08090b;border:0;border-radius:14px;color:#fff;max-height:92vh;max-width:92vw;padding:22px}.assojuris-lightbox::backdrop{background:rgba(0,0,0,.88)}.assojuris-lightbox img{display:block;max-height:78vh;max-width:86vw}.assojuris-lightbox>button{background:#fff;border:0;border-radius:50%;cursor:pointer;font-size:24px;height:38px;position:absolute;right:8px;top:8px;width:38px}.assojuris-lightbox p{text-align:center}@media(max-width:900px){.album-grid{grid-template-columns:repeat(2,1fr)}.masonry-gallery{columns:2}}@media(max-width:600px){.album-grid{grid-template-columns:1fr}.masonry-gallery{columns:1}}
.culture-hero{background-image:linear-gradient(90deg,rgba(10,11,13,.92),rgba(10,11,13,.36)),var(--culture-bg);background-position:center;background-size:cover;color:#fff;min-height:560px;padding:120px 0}.culture-hero span{color:#ff4e54;font-size:11px;font-weight:900;letter-spacing:.18em}.culture-hero h1{color:#fff;font-size:clamp(48px,7vw,88px);letter-spacing:-.055em;max-width:900px}.culture-hero p{color:#d3d5da;font-size:20px;max-width:650px}.culture-meta{background:#17181c;color:#fff;padding:24px 0}.culture-meta .container{display:flex;gap:55px}.culture-meta span{align-items:center;display:grid;grid-template-columns:auto 1fr;column-gap:10px}.culture-meta i{color:#f1464c;font-size:25px;grid-row:1/3}.culture-meta strong{font-size:10px;text-transform:uppercase}.people-grid{display:grid;gap:24px;grid-template-columns:repeat(4,1fr)}.person-card,.unit-card{background:#fff;border:1px solid #e2e3e6;border-radius:15px;overflow:hidden}.person-card figure{aspect-ratio:4/5;margin:0}.person-card img{height:100%;object-fit:cover;width:100%}.person-card>div{padding:18px}.person-card span,.unit-card>span{color:#d51f26;font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.person-card h2,.unit-card h2{font-size:20px;margin:6px 0}.profile-layout,.unit-detail{display:grid;gap:50px;grid-template-columns:360px minmax(0,1fr)}.unit-grid{display:grid;gap:20px;grid-template-columns:repeat(3,1fr)}.unit-card{color:#17181c;padding:24px;text-decoration:none;transition:.2s}.unit-card:hover{border-color:#d51f26;box-shadow:0 14px 40px rgba(15,16,19,.1);transform:translateY(-4px)}.unit-card>i{color:#d51f26;font-size:30px}.unit-detail{grid-template-columns:minmax(0,1fr) 350px}@media(max-width:900px){.people-grid,.unit-grid{grid-template-columns:repeat(2,1fr)}.profile-layout,.unit-detail{grid-template-columns:1fr}.culture-meta .container{flex-wrap:wrap}}@media(max-width:600px){.people-grid,.unit-grid{grid-template-columns:1fr}.culture-hero{min-height:460px;padding:80px 0}}
.memory-album__count{align-items:center;color:#747780;display:flex;font-size:12px;gap:6px;margin:0 0 18px}.memory-album__count strong{color:#d51f26;font-size:18px}.masonry-gallery__item--video{background:#15161a;border-radius:10px;min-height:190px;overflow:hidden}.masonry-gallery__item--video img{aspect-ratio:16/9;display:block;object-fit:cover;opacity:.78}.masonry-gallery__item--video:after{background:linear-gradient(transparent,rgba(0,0,0,.72));bottom:0;content:"";left:0;position:absolute;right:0;top:35%}.masonry-gallery__item .masonry-gallery__play{align-items:center;background:none;bottom:50%;display:flex;flex-direction:column;gap:8px;justify-content:center;padding:0;right:auto;text-align:center;transform:translateY(50%);z-index:2}.masonry-gallery__play i{align-items:center;background:#d51f26;border-radius:50%;display:flex;font-size:25px;height:54px;justify-content:center;padding-left:3px;width:54px}.masonry-gallery__play b{font-size:11px;letter-spacing:.08em;text-transform:uppercase}.masonry-gallery__video-placeholder{align-items:center;background:none!important;bottom:auto!important;display:flex;height:230px;justify-content:center;padding:0!important;position:static!important}.masonry-gallery__video-placeholder i{color:#f04a50;font-size:58px}.album-card__video-cover{align-items:center;background:#17181c;display:flex;justify-content:center}.album-card__video-cover i{color:#f04a50;font-size:56px}.assojuris-lightbox{inset:0!important;margin:auto!important;width:fit-content}.assojuris-lightbox[open]{align-items:center;justify-items:center}.assojuris-lightbox img{margin:0 auto;object-fit:contain}.assojuris-lightbox img[hidden],.assojuris-lightbox video[hidden],.assojuris-lightbox iframe[hidden]{display:none}.assojuris-lightbox video,.assojuris-lightbox iframe{background:#000;border:0;display:block;height:min(72vh,720px);margin:0 auto;max-width:86vw;width:min(86vw,1100px)}.assojuris-lightbox video{height:auto;max-height:78vh}.assojuris-lightbox p:empty{display:none}@media(max-width:600px){.assojuris-lightbox{padding:12px}.assojuris-lightbox iframe{height:52vw;width:88vw}.masonry-gallery__item--video{min-height:170px}}
.assojuris-lightbox>[data-lightbox-close]{align-items:center;color:#111!important;display:flex;font-family:Arial,sans-serif!important;font-size:0!important;font-weight:400;justify-content:center;line-height:1;z-index:4}.assojuris-lightbox>[data-lightbox-close]::before{content:"×";font-size:28px;line-height:1}.assojuris-lightbox>[data-lightbox-close]:hover{background:#d51f26;color:#fff!important}.assojuris-lightbox>[data-lightbox-close]:focus-visible{outline:3px solid #4b9fff;outline-offset:3px}
.memory-album__collection{border-bottom:1px solid #e3e4e7;margin:0 0 40px;padding:0 0 40px}.memory-album__collection>header{margin-bottom:24px;max-width:720px}.memory-album__collection h2{font-size:clamp(28px,4vw,42px);letter-spacing:-.04em;margin:7px 0}.memory-album__collection>header p{color:#747780;margin:0}.memory-album__media-title{font-size:clamp(26px,3vw,36px);letter-spacing:-.035em;margin:0 0 18px}.album-card{border-radius:0}.album-card figure,.masonry-gallery__item img,.masonry-gallery__item--video,.assojuris-lightbox{border-radius:0}
@media(max-width:600px){.memory-album__collection{margin-bottom:28px;padding-bottom:28px}.memory-album__collection .album-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.memory-album__collection .album-card>div{padding:14px}.memory-album__collection .album-card h2{font-size:16px}.memory-album__collection .album-card p{display:none}.memory-album__collection .album-card figure{aspect-ratio:1}.memory-album__collection .album-card strong{font-size:10px}}
.memory-hero--gallery{align-items:center;background:#111216;display:flex;isolation:isolate;min-height:310px;overflow:hidden;position:relative}.memory-hero--gallery::after{background:linear-gradient(105deg,rgba(9,10,12,.9) 0%,rgba(12,13,16,.7) 48%,rgba(12,13,16,.78) 100%);content:"";inset:0;pointer-events:none;position:absolute;z-index:-1}.memory-hero--gallery .container{position:relative;z-index:1}.memory-hero__video{filter:grayscale(1) contrast(1.12) brightness(.72);height:100%;inset:0;object-fit:cover;object-position:center 46%;pointer-events:none;position:absolute;width:100%;z-index:-2}.memory-hero--gallery h1{text-shadow:0 3px 28px rgba(0,0,0,.55)}.memory-hero--gallery p{color:#d8d9dd}.memory-hero--gallery .breadcrumb,.memory-hero--gallery .breadcrumb a{color:#d0d1d5}
@media(max-width:600px){.memory-hero--gallery{min-height:255px;padding:48px 0}.memory-hero__video{object-position:center}.memory-hero--gallery::after{background:rgba(9,10,12,.77)}}
@media(prefers-reduced-motion:reduce){.memory-hero__video{display:none}}

/* Áreas de lazer: leitura operacional e visual alinhado à identidade aprovada. */
.stay-page :is(.stay-gallery__grid,.stay-booking__card,.stay-unavailable){border-radius:0}.stay-page .btn{border-radius:0}.stay-units{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:24px}.stay-unit{border:1px solid #dedfe3;border-top:3px solid #17181c;padding:22px}.stay-unit>header{align-items:center;border-bottom:1px solid #e4e5e8;display:flex;gap:12px;justify-content:space-between;margin-bottom:16px;padding-bottom:13px}.stay-unit h3{font-size:21px;margin:0}.stay-unit>header span{color:#bd1d22;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.stay-unit dl{display:grid;gap:15px;margin:0}.stay-unit dl>div{display:grid;gap:4px}.stay-unit dt{align-items:center;color:#777a82;display:flex;font-size:10px;font-weight:800;gap:6px;letter-spacing:.07em;text-transform:uppercase}.stay-unit dt i{color:#d51f26;font-size:17px}.stay-unit dd{color:#202126;font-size:13px;line-height:1.55;margin:0}.stay-unit>p{border-left:2px solid #d51f26;color:#646870;font-size:12px;margin:16px 0 0;padding-left:11px}.stay-availability__head{align-items:end;display:flex;gap:20px;justify-content:space-between}.stay-availability__head h2{margin-bottom:0}.stay-calendar-sync{align-items:center;border:1px solid #dfe1e5;color:#5f636b;display:flex;font-size:10px;font-weight:900;gap:6px;letter-spacing:.06em;padding:8px 10px;text-transform:uppercase}.stay-calendar-sync i{font-size:17px}.stay-calendar-sync.is-success{border-color:#b9dfca;color:#177647}.stay-calendar-sync.is-warning{border-color:#e8d298;color:#8b650e}.stay-calendar-sync.is-error{border-color:#e8b7b9;color:#b51c21}.stay-availability>p{color:#6e727a;max-width:720px}.booking-month{border-top:2px solid #17181c;padding-top:14px}.booking-month h3{font-size:16px;margin:0 0 10px}.booking-month__days .is-available{background:#f1f2f3;color:#4e535b}.booking-legend .is-available{background:#dfe1e4}
@media(max-width:720px){.stay-units{grid-template-columns:1fr}.stay-availability__head{align-items:flex-start;display:grid}.stay-calendar-sync{justify-self:start}.stay-unit{padding:18px}.stay-page .amenities-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stay-page .amenities-grid span{align-items:flex-start;font-size:12px}}

.booking-calendar-nav{align-items:end;border-block:1px solid #dfe1e5;display:grid;gap:10px;grid-template-columns:46px minmax(190px,1fr) 46px;margin-top:24px;padding:12px 0}.booking-calendar-nav button{align-items:center;background:#17181c;border:1px solid #17181c;border-radius:0;color:#fff;display:flex;height:46px;justify-content:center;padding:0;width:46px}.booking-calendar-nav button:hover:not(:disabled),.booking-calendar-nav button:focus-visible{background:#cb2023;border-color:#cb2023}.booking-calendar-nav button:disabled{background:#f1f2f3;border-color:#dfe1e5;color:#a9acb2;cursor:not-allowed}.booking-calendar-nav label{display:grid;gap:5px}.booking-calendar-nav label>span{color:#6b6e75;font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.booking-calendar-nav select{appearance:none;background:#fff;border:1px solid #d8d9dd;border-radius:0;color:#17181c;font-size:14px;font-weight:800;height:46px;padding:0 14px;width:100%}.booking-calendar__month[hidden]{display:none!important}.booking-calendar[data-visible-count="1"]{grid-template-columns:minmax(0,1fr)}.booking-month__days .is-today{box-shadow:inset 0 0 0 2px #17181c;font-weight:900}.booking-month__days .is-today.is-reserved{box-shadow:inset 0 0 0 2px #bd1d22}
@media(max-width:900px){.booking-calendar{grid-template-columns:1fr}.booking-calendar-nav{grid-template-columns:44px minmax(0,1fr) 44px}.booking-calendar-nav button{height:44px;width:44px}}
@media(max-width:390px){.stay-page .amenities-grid{grid-template-columns:1fr}}
