/* Homepage-only media. Responsive sources and loading behavior live in PHP. */
[hidden]{display:none!important}
.hero-copy .hero-title{font-family:var(--script);font-size:clamp(64px,7.4vw,114px);line-height:1.05;margin:0 0 12px;color:#fff}.hero-copy .hero-actions{margin-top:35px}.hero-controls [data-hero-toggle]{font-family:var(--sans);font-size:14px}
.hero-stars img{width:130px;height:auto;margin:auto}.direct-badge{display:block;width:160px;margin-top:25px}.direct-badge img{width:100%;height:auto}
.hero-controls{position:absolute;right:48px;bottom:125px;display:flex;align-items:center;gap:15px;z-index:2;color:white;font:12px var(--narrow);letter-spacing:2px}.hero-controls button{border:1px solid #ffffff80;background:#1114;color:white;border-radius:50%;width:42px;height:42px;padding:0;font:29px/1 var(--serif)}.hero-controls button:hover{background:var(--gold);color:#111}.hero-slide{object-position:center}
.foxy-home .villa-grid{gap:24px;border:0;background:transparent}.foxy-home .villa-card{padding:0 0 30px;border:1px solid var(--line)}.foxy-home .villa-card>.eyebrow,.foxy-home .villa-card>h3,.foxy-home .villa-card>p,.foxy-home .villa-card>.text-link,.foxy-home .villa-card>.villa-video{margin-left:27px;margin-right:27px}.foxy-home .villa-card>h3{max-width:calc(100% - 54px)}.foxy-home .villa-card>.villa-number{display:none}.villa-photo{display:block;overflow:hidden;margin-bottom:27px}.villa-photo img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;transition:transform .35s}.villa-photo:hover img{transform:scale(1.025)}
.foxy-home .video-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.foxy-home .welcome-videos .video-links{grid-template-columns:repeat(2,minmax(0,1fr))}.video-tile{display:block;position:relative;overflow:hidden;background:#252c22;aspect-ratio:16/10;border:1px solid var(--line);color:white}.video-poster{width:100%;height:100%;object-fit:cover}.video-tile-shade{position:absolute;inset:0;background:linear-gradient(180deg,#0000 20%,#000b)}.video-tile .play{position:absolute;left:50%;top:43%;transform:translate(-50%,-50%);width:65px;height:65px;background:#151a1455;border-color:#fff9;color:white}.video-tile:hover .play{background:var(--gold);border-color:var(--gold)}.video-tile-label{position:absolute;bottom:22px;left:24px;right:24px;font:25px var(--serif);line-height:1.3}.video-tile-label small{display:block;font:11px var(--narrow);letter-spacing:1.4px;text-transform:uppercase;margin-top:8px;color:#e3cfac}
.home-amenities{position:relative;isolation:isolate;overflow:hidden}.amenities-background{position:absolute;inset:0;z-index:-1;opacity:.18}.amenities-background img{width:100%;height:100%;object-fit:cover}.home-amenities:before{content:'';position:absolute;inset:0;background:linear-gradient(#12131299,#121312ee);z-index:-1}.amenity-photo-card{background:#171a16c9;border:1px solid var(--line)}.foxy-home .amenity-grid>div{padding:0 0 20px}.amenity-photo-card img{width:100%;aspect-ratio:4/3;object-fit:cover;margin-bottom:19px}.foxy-home .amenity-grid h3{padding-inline:12px;font-size:19px}
.home-final-story{max-width:1280px;display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:start}.home-final-story p{color:var(--muted)}.final-story-photo{position:sticky;top:35px}.final-story-photo img{width:100%;aspect-ratio:4/5;object-fit:cover}.home-final-story .serif-note{color:#e5e0d5}.video-dialog{padding:20px;max-width:min(960px,calc(100vw - 32px));width:960px;background:#151914;color:white;border:1px solid var(--gold);box-shadow:0 20px 100px #0008;max-height:calc(100dvh - 40px);overflow:auto}.video-dialog::backdrop{background:#000d}.video-dialog-header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px}.video-dialog h2{font:25px var(--serif);margin:0;color:white}.video-close{background:transparent;color:white;font:32px/1 var(--sans);border:1px solid #777;padding:3px;width:42px;height:42px;border-radius:0}.video-close:hover{background:var(--gold);color:#111}.video-player-slot{aspect-ratio:16/9;background:#000}.video-player-slot iframe{display:block;border:0;width:100%;height:100%}.video-youtube-fallback{display:inline-block;margin-top:15px;font:14px var(--sans);color:var(--gold-light)}
@media(max-width:1000px){.home-final-story{gap:35px}.foxy-home .video-links{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-controls{right:32px}.direct-badge{width:135px}.welcome>div:first-child{position:relative;padding-right:160px}.welcome>div:first-child .direct-badge{position:absolute;right:0;top:0;margin:0}}
@media(max-width:650px){.hero-copy .hero-title{font-size:68px;max-width:400px;margin-inline:auto}.hero-controls{right:20px;bottom:100px;gap:10px}.hero-controls button{width:35px;height:35px}.hero-controls [data-hero-count]{font-size:10px}.hero-bottom{bottom:45px}.foxy-home .villa-grid{gap:25px}.foxy-home .video-links,.foxy-home .welcome-videos .video-links{grid-template-columns:1fr}.video-tile-label{font-size:25px}.video-tile{aspect-ratio:16/9}.home-final-story{grid-template-columns:1fr;gap:35px}.final-story-photo{position:static}.final-story-photo img{aspect-ratio:4/3}.welcome>div:first-child{padding-right:0}.welcome>div:first-child .direct-badge{position:static;margin:20px 0 25px;width:130px}.video-dialog{padding:12px}.video-dialog h2{font-size:21px}.video-close{flex-shrink:0}.foxy-home .amenity-grid{gap:18px 12px}.foxy-home .amenity-grid h3{font-size:17px}}
/* Match the approved Fish Eagle hero typography and lower-left composition. */
.foxy-home .home-hero{height:clamp(620px,82svh,850px);min-height:620px;place-items:end center}
.foxy-home .home-hero .hero-image{object-position:center 48%}
.foxy-home .home-hero .hero-shade{background:linear-gradient(180deg,#091209bd 0%,#09120940 27%,#09120908 48%,#09120922 62%,#091209a6 100%)}
.foxy-home .hero-copy{text-align:left;padding-top:175px;padding-bottom:145px}
.foxy-home .hero-copy .hero-stars{display:none}
.foxy-home .hero-copy .eyebrow{color:#ede8db;font:500 10px/1.5 var(--narrow);letter-spacing:2.4px;margin:0 0 16px}
.foxy-home .hero-copy .hero-title{font-family:var(--serif);font-size:clamp(42px,4.5vw,72px);font-weight:400;line-height:1.1;max-width:950px;margin:0 0 27px;text-shadow:0 2px 20px #0004}
.foxy-home .hero-copy .hero-actions{justify-content:flex-start;margin:0;gap:12px}
.foxy-home .hero-copy .hero-actions .button{font-size:12px;padding:15px 24px;min-height:49px}
@media(max-width:1000px){.foxy-home .hero-copy .hero-title{max-width:760px;font-size:52px}}
@media(max-width:650px){.foxy-home .home-hero{height:620px;min-height:620px}.foxy-home .hero-copy{padding-top:150px;padding-bottom:140px}.foxy-home .hero-copy .eyebrow{font-size:9px;line-height:1.7;letter-spacing:1.7px;max-width:290px;margin-bottom:13px}.foxy-home .hero-copy .hero-title{font-size:43px;line-height:1.12;max-width:350px;margin:0 0 24px}.foxy-home .hero-copy .hero-actions .button{font-size:11px;padding:13px 19px;min-height:45px}.foxy-home .hero-controls{bottom:75px}.foxy-home .hero-bottom{bottom:35px}}
/* Original live wildlife strip: five portrait panels, no captions. */
.wildlife-video-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px;margin-top:24px}
.wildlife-video{position:relative;display:block;height:400px;overflow:hidden;border-radius:10px;background:#252c22;color:#fff}
.wildlife-video .wildlife-poster{display:block;width:100%;height:100%;object-fit:cover;object-position:top center}
.wildlife-video:after{content:'';position:absolute;inset:0;background:#0003;pointer-events:none}
.wildlife-play{position:absolute;z-index:1;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;width:80px;height:80px;border-radius:50%;background:rgba(170,132,83,.7);color:white;font-size:30px;transition:background .3s,transform .3s}
.wildlife-play:before,.wildlife-play:after{content:'';position:absolute;inset:0;border-radius:50%;animation:wildlife-pulse 3s infinite}
.wildlife-play:before{animation-delay:.9s}.wildlife-play:after{animation-delay:.6s}
.wildlife-video:hover .wildlife-play{background:var(--gold-light);color:var(--ink);transform:translate(-50%,-50%) scale(.9)}
.wildlife-video:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
@keyframes wildlife-pulse{0%,100%{box-shadow:0 0 0 0 #fff9}60%{box-shadow:0 0 0 60px #fff0}}
.video-links:empty{display:none!important}
.foxy-home .safari-details{position:relative;padding-top:0;padding-bottom:30px;margin-top:-76px}.foxy-home .safari-details .wildlife-video-strip{margin-top:0}
@media(max-width:767px){.wildlife-video-strip{grid-template-columns:1fr;gap:20px}.foxy-home .safari-details{margin-top:0;padding-top:20px}}
@media(prefers-reduced-motion:reduce){.wildlife-play:before,.wildlife-play:after{animation:none}}
/* Current team background and amenity-specific client photography. */
.home-amenities .amenities-background{opacity:.65}.home-amenities:before{background:linear-gradient(180deg,#12131280,#121312c9)}.home-amenities .amenities-background img{object-position:center 24%}.amenity-image-wrap{position:relative}.amenity-wifi-symbol{position:absolute;top:14px;right:14px;width:44px;height:44px;display:grid;place-items:center;background:#1b2419dd;color:#e6c793;border:1px solid #d3af7799;border-radius:50%}.amenity-wifi-symbol svg{display:block}.home-amenities .amenity-photo-card{background:#171c16ed}
@media(max-width:650px){.home-amenities .amenities-background img{object-position:center top}.amenity-wifi-symbol{top:9px;right:9px;width:34px;height:34px}.amenity-wifi-symbol svg{width:21px;height:21px}}
.home-amenities .amenities-background{z-index:-2}.home-amenities:before{z-index:-1}.home-amenities .amenities-background img{transform:translateY(-14%) scale(1.1);transform-origin:center top}
@media(max-width:650px){.home-amenities .amenities-background img{transform:none;object-fit:contain;object-position:center top}}
/* Light guest-information section, with no background photograph. */
.home-amenities{background:var(--paper);color:#293524}.home-amenities:before{display:none}.home-amenities .amenities>h2{color:#293524}.home-amenities .amenities>.eyebrow{color:#886631}.home-amenities .amenity-photo-card{background:#f0ece2;border-color:#ddd3bf}.foxy-home .home-amenities .amenity-grid h3{color:#293524}
