/* Tube/pill header: intentionally reuses original site's green/cream/gold palette and Manrope/Playfair typography. */
html{scroll-padding-top:126px}section[id]{scroll-margin-top:126px}
.site-header{position:fixed!important;top:15px;left:0;right:0;background:transparent!important;border:0!important;box-shadow:none!important;z-index:80;padding:0 18px;pointer-events:none}
.nav-wrap{pointer-events:auto;min-height:76px;height:auto;width:min(1440px,100%)!important;border-radius:999px;background:#153126f7;border:1px solid #d0b78575;box-shadow:0 16px 48px #11291c60;padding:10px 16px 10px 25px;gap:14px;backdrop-filter:blur(20px)}
.brand-logo{width:202px;max-height:54px;object-fit:contain}
.desktop-nav{gap:6px}.desktop-nav a{color:#f3ecdc;padding:12px 12px;border-radius:999px;font-size:11px}.desktop-nav a.active,.desktop-nav a:hover{background:#ffffff16;color:#f7d3a0}.desktop-nav a.active:after{display:none}
.call-link{color:#f6e9d0;font-size:11px}.tube-cta{border-radius:999px;min-height:45px}
.menu-toggle span{background:#f6e9d0}
.hero{height:min(850px,100svh);min-height:660px}.hero-content{padding-top:95px}.hero-overlay{background:linear-gradient(90deg,rgba(9,28,19,.87),rgba(9,28,19,.45) 58%,rgba(9,28,19,.12)),linear-gradient(0deg,#091c11b0,transparent 42%)}
.price-list-feature{margin:37px 0 0;display:flex;gap:22px;align-items:center;justify-content:space-between;background:#19382e;color:#fff;border-radius:17px;padding:28px 30px}
.price-list-feature h3{font:500 29px/1.25 var(--serif);margin:10px 0}.price-list-feature p{font-size:13px;line-height:1.65;color:#f6e9d6}.price-list-feature small{font-size:10px;line-height:1.6;color:#d7ddce}.price-feature-actions{display:flex;flex-direction:column;gap:9px;flex-shrink:0}.price-feature-actions .btn{border-radius:999px}
.media-section{background:#f5f3ec}.media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:23px}.media-tile{background:#fff;overflow:hidden;border-radius:13px;box-shadow:0 5px 24px #17352712}.media-cover{height:300px;position:relative}.media-cover img{width:100%;height:100%;object-fit:cover}.media-play{display:grid;place-items:center;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:65px;height:65px;background:#fff9;border-radius:50%;color:#234331}.media-body{padding:30px}.media-body h3{font:500 30px var(--serif);margin:14px 0}.media-body p{font-size:12px;color:#718175;line-height:1.8;min-height:75px}
@media(max-width:1250px){.desktop-nav{gap:0}.desktop-nav a{padding:12px 8px;font-size:10px}.brand-logo{width:165px}.header-actions{gap:8px}.call-link{display:none}}
@media(max-width:940px){.desktop-nav{display:none}.menu-toggle{display:flex}.site-header{top:10px}.nav-wrap{min-height:67px;padding:8px 14px 8px 20px}.mobile-nav{pointer-events:auto;background:#163527f8;border-radius:20px;margin:9px auto 0;max-width:95%;padding:13px}.mobile-nav a{color:#fff;border-bottom:1px solid #ffffff1b}.mobile-nav.open{display:block}.hero-content{padding-top:100px}}
@media(max-width:700px){.site-header{padding:0 10px}.nav-wrap{min-height:63px}.brand-logo{width:142px}.tube-cta{font-size:10px;padding:0 11px;min-height:38px}.hero{min-height:680px}.hero-content{padding-top:85px}.price-list-feature{flex-direction:column;align-items:stretch;padding:22px}.price-feature-actions{width:100%}.media-grid{grid-template-columns:1fr}.media-cover{height:220px}.media-body{padding:21px}.media-body p{min-height:0}}

/* Direction-aware floating header: upward fade on downward scroll, return on upward scroll. */
.site-header{transform:translate3d(0,0,0);opacity:1;transition:transform .42s cubic-bezier(.22,1,.36,1),opacity .34s ease;will-change:transform,opacity}
.site-header.header-hidden{transform:translate3d(0,calc(-100% - 26px),0);opacity:0;pointer-events:none}
.site-header.header-hidden .nav-wrap,.site-header.header-hidden .mobile-nav{pointer-events:none}
.site-header.header-revealed{transform:translate3d(0,0,0);opacity:1}
@media(prefers-reduced-motion:reduce){.site-header{transition:none!important}}
.video-player{position:relative;width:100%;aspect-ratio:16/9;background:#10241d;overflow:hidden;border-radius:13px}
.video-player video,.video-player iframe{width:100%;height:100%;border:0;display:block;object-fit:cover}
.video-player video{background:#10241d}
.media-empty{background:#fff;border:1px solid #d4d3c7;padding:24px;border-radius:14px;grid-column:1/-1}
.media-empty h3{font:500 25px var(--serif);margin:0 0 9px}.media-empty p{font-size:13px;line-height:1.7}
.media-tile .media-cover{height:auto;aspect-ratio:16/9}
.media-tile .media-cover img{width:100%;height:100%;object-fit:cover}
.media-status{font-size:12px;line-height:1.7;color:#597064;margin-top:14px}

/* Always-visible official walkthrough & construction update catalogue */
.video-unavailable{background:linear-gradient(135deg,#18372d,#376252 55%,#17352b);display:grid;place-items:center;color:#fff}
.video-placeholder-content{display:grid;justify-items:center;text-align:center;gap:12px;padding:18px;font:600 12px/1.5 var(--sans,Manrope,sans-serif);letter-spacing:.03em}
.video-placeholder-mark{width:64px;height:64px;border:1px solid #eacb8d8c;border-radius:50%;display:grid;place-items:center;font-size:24px;color:#e6c487}
.media-status{min-height:0!important;margin:12px 0 0!important}


/* Premium editorial amenity grid, separate walkthrough/construction sections. */
.amenity-photo-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:17px!important}
.amenity-photo-grid .amenity-card{position:relative!important;height:255px;min-height:0;background:#173127!important;overflow:hidden;border-radius:16px!important;padding:0!important;box-shadow:0 12px 34px #112a1a15!important}
.amenity-photo-grid .amenity-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s ease;filter:saturate(.9)}
.amenity-photo-grid .amenity-card:hover img{transform:scale(1.06)}
.amenity-photo-grid .amenity-card:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(4,21,12,.85));pointer-events:none}
.amenity-photo-grid .amenity-card h3{position:absolute!important;z-index:1;bottom:20px;left:22px;right:12px;color:#fff!important;font:500 clamp(20px,2vw,27px)/1.12 'Playfair Display',serif!important;margin:0!important;text-shadow:0 2px 10px #0005}
.amenity-photo-grid .amenity-card:first-child{grid-column:span 2;height:330px}
.amenity-photo-grid .amenity-card:nth-child(2){height:330px}
.hero-video-stage{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.hero-video-stage iframe{position:absolute;top:50%;left:50%;width:max(100%,177.78vh);height:max(100%,56.25vw);border:0;transform:translate(-50%,-50%);pointer-events:none}
.hero-video-stage video{width:100%;height:100%;object-fit:cover}
.walkthrough-feature{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,.75fr);background:#17362b;overflow:hidden;border-radius:18px;box-shadow:0 25px 55px #112e2130}
.walkthrough-frame{aspect-ratio:16/9;background:#172d25;min-height:320px;position:relative}
.walkthrough-frame iframe,.walkthrough-frame video{width:100%;height:100%;object-fit:cover;border:0;position:absolute;inset:0}
.walkthrough-side{padding:clamp(25px,3.8vw,60px);align-self:center;color:#e6e5d6}
.walkthrough-side h3{font:500 clamp(25px,3vw,41px)/1.17 'Playfair Display',serif;color:white;margin:17px 0 20px}
.walkthrough-side p{font-size:13px;line-height:1.9;color:#cbd3c6;margin-bottom:27px}
.source-unavailable{position:absolute;inset:0;background:linear-gradient(125deg,#1b3b2dca,#172d24c9),url('asset.php?name=vista') center/cover;display:grid;place-items:center;color:#fff;text-align:center;padding:20px}
.source-unavailable-inner h3{font:500 30px 'Playfair Display',serif;margin:15px 0}.source-unavailable-inner p{font-size:13px;margin-bottom:24px;color:#d5dfd0}.round-play{display:grid;place-items:center;margin:auto;width:62px;height:62px;color:#eed2a2;background:#fff2;border:1px solid #edcf9680;border-radius:50%;font-size:23px}
.construction-section{background:#f8f5ef}.construction-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:23px}.construction-card{border-radius:17px;overflow:hidden;background:white;box-shadow:0 12px 30px #17332612}.construction-cover{aspect-ratio:16/9;overflow:hidden;background:#173127}.construction-cover iframe,.construction-cover video{height:100%;width:100%;border:0;object-fit:cover}.construction-image{width:100%;height:100%;background-size:cover;background-position:center;display:grid;place-items:center;position:relative}.construction-image:before{content:'';position:absolute;inset:0;background:#0c281b62}.construction-image .round-play{position:relative}.construction-info{padding:25px 27px 29px}.construction-info h3{font:500 28px 'Playfair Display',serif;margin:12px 0}.construction-info a{font-size:12px;color:#4c6e5b;text-decoration:underline}
@media(max-width:900px){.walkthrough-feature{grid-template-columns:1fr}.walkthrough-frame{min-height:0}.amenity-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.amenity-photo-grid .amenity-card:first-child{grid-column:span 1;height:255px}.amenity-photo-grid .amenity-card:nth-child(2){height:255px}}
@media(max-width:640px){.amenity-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.amenity-photo-grid .amenity-card,.amenity-photo-grid .amenity-card:first-child,.amenity-photo-grid .amenity-card:nth-child(2){height:186px}.amenity-photo-grid .amenity-card h3{left:13px;bottom:14px;font-size:18px!important}.construction-grid{grid-template-columns:1fr}.walkthrough-side{padding:25px}.construction-info{padding:20px}.construction-info h3{font-size:24px}}

/* FINAL STRUCTURE OVERRIDES — retain original fonts, palette and cards. */
.amenity-photo-grid {display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:17px!important}
.amenity-photo-grid .amenity-card,.amenity-photo-grid .amenity-card:first-child,.amenity-photo-grid .amenity-card:nth-child(2){grid-column:auto!important;height:255px!important}
.construction-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:15px!important;align-items:stretch}
.construction-card{min-width:0!important}
.construction-info{padding:18px 16px 22px!important}
.construction-info h3{font-size:clamp(17px,1.65vw,23px)!important;line-height:1.3!important}
.construction-cover{aspect-ratio:4/3!important}
.construction-cover iframe,.construction-cover video{width:100%;height:100%;object-fit:cover}
.hero-video-stage{display:block;z-index:0}
.hero .hero-img{z-index:0}
.hero-overlay{z-index:1}
@media(max-width:900px){
 .construction-grid{display:flex!important;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-left:16px;gap:12px!important;padding:6px 16px 21px;margin:0 -16px;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;}
 .construction-card{flex:0 0 calc((100% - 30px)/2.5)!important;scroll-snap-align:start;min-width:0!important}
 .construction-info h3{font-size:16px!important}
 .construction-info{padding:13px!important}
 .construction-cover{aspect-ratio:1/1!important}
}
@media(max-width:640px){
 .amenity-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
 .amenity-photo-grid .amenity-card,.amenity-photo-grid .amenity-card:first-child,.amenity-photo-grid .amenity-card:nth-child(2){height:185px!important}
 .construction-grid{gap:10px!important}
 .construction-card{flex:0 0 calc((100% - 25px)/2.5)!important}
 .construction-info h3{font-size:14px!important}
 .construction-info .eyebrow{font-size:8px!important}
 .construction-info{padding:11px!important}
}
@media(prefers-reduced-motion:reduce){.construction-grid{scroll-behavior:auto}}

/* LOCKED REQUESTED LAYOUT — construction 4–5 inline on large screens, 2.5 mobile */
#construction .construction-grid {
 display:flex!important;
 flex-wrap:nowrap!important;
 gap:16px!important;
 overflow-x:auto!important;
 overflow-y:hidden!important;
 scroll-snap-type:x proximity;
 overscroll-behavior-x:contain;
 -webkit-overflow-scrolling:touch;
 padding:6px 1px 20px;
 scrollbar-width:thin;
}
#construction .construction-grid > .construction-card {
 flex:0 0 calc((100% - 3 * 16px) / 4)!important;
 width:calc((100% - 3 * 16px) / 4)!important;
 min-width:0!important;
 max-width:none!important;
 scroll-snap-align:start;
}
#construction .construction-cover {aspect-ratio:4/3!important;overflow:hidden}
#construction .construction-cover > * {width:100%;height:100%}
#construction .construction-cover iframe,
#construction .construction-cover video {display:block;width:100%;height:100%;object-fit:cover}
#construction .construction-info h3 {font-size:clamp(16px,1.55vw,23px)!important}
#amenities .amenity-photo-grid {display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}
#amenities .amenity-photo-grid > .amenity-card {grid-column:auto!important;min-width:0}
.casa-media-pending {width:100%;height:100%;display:flex;justify-content:center;align-items:center;text-align:center;background:linear-gradient(140deg,#17372b,#365b48);color:#e5d8bb;font:600 12px/1.5 'Manrope',sans-serif;letter-spacing:.045em;padding:14px}
@media (max-width:900px){
 #construction .construction-grid {gap:12px!important;margin:0 -16px!important;padding:6px 16px 20px!important;scroll-padding-inline:16px;scroll-snap-type:x mandatory}
 #construction .construction-grid > .construction-card {flex:0 0 calc((100% - 24px) / 2.5)!important;width:calc((100% - 24px) / 2.5)!important;min-width:0!important}
 #construction .construction-cover {aspect-ratio:1/1!important}
 #amenities .amenity-photo-grid {grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width:640px){
 #construction .construction-grid {gap:10px!important}
 #construction .construction-grid > .construction-card {flex-basis:calc((100% - 20px) / 2.5)!important;width:calc((100% - 20px) / 2.5)!important}
 #construction .construction-info {padding:11px!important}
 #construction .construction-info h3 {font-size:14px!important;overflow-wrap:anywhere}
 #amenities .amenity-photo-grid {gap:10px!important}
 #amenities .amenity-photo-grid > .amenity-card {height:185px!important}
}
