.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.price .vnd{display:block;font:600 16px/1.5 system-ui;margin:8px 0;color:var(--green2);white-space:normal}.price{white-space:normal}.price-note{font-size:13px;line-height:1.6;color:#595550;margin:16px 0 0}.event-copy .price-note{color:#d7e6df}.fx-note{margin:22px 0 0;font-size:14px;color:#595550}.consent-row{grid-column:1/-1;display:flex;align-items:flex-start;gap:12px;font-size:14px;line-height:1.6}.consent-row input{flex:0 0 22px;width:22px;height:22px;margin:3px 0 0;accent-color:#155244}.consent-row a,.form-policies a,.legal-links a{text-decoration:underline;text-underline-offset:3px}.form-policies{grid-column:1/-1;display:flex;gap:12px;flex-wrap:wrap;font-size:14px}.form .status{grid-column:1/-1;padding:14px;background:#edf4f1;color:#155244;border-radius:10px;margin:0}.form .status:empty{display:none}.form .status.error{background:#fff0ed;color:#942d1f}.form button:disabled{opacity:.65;cursor:wait}.booking-backup{grid-column:1/-1;display:flex;gap:18px;flex-wrap:wrap;font-size:15px;font-weight:700;color:#9f0018}.legal-links{display:flex;flex-wrap:wrap;gap:12px 24px;font-size:14px;padding-top:25px}.legal-links a{line-height:1.6}.legal-shell{width:min(860px,calc(100% - 36px));margin:0 auto;padding:36px 0 64px}.legal-shell h1{font:500 clamp(32px,5vw,52px)/1.15 Georgia,serif;color:#155244;letter-spacing:-.02em;margin:42px 0 20px}.legal-shell h2{font-size:22px;color:#155244;line-height:1.4;margin:32px 0 12px}.legal-shell p{line-height:1.8}.legal-shell a{text-decoration:underline;text-underline-offset:3px}.legal-header{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.legal-langs{display:flex;gap:14px}.legal-langs [aria-current=page]{font-weight:800;color:#9f0018}.legal-date{color:#625e5b;font-size:14px}.legal-footer{border-top:1px solid #ddd;margin-top:40px;padding-top:20px}.age-gate{width:min(520px,calc(100% - 32px));max-height:calc(100svh - 40px);overflow:auto;padding:28px;border:1px solid #d8dfd9;border-radius:20px;background:#f7f4ef;color:#171414;box-shadow:0 18px 60px #0004;font:16px/1.6 system-ui}.age-gate::backdrop{background:#071d17a6}.age-top{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.age-top strong{font:600 28px/1.4 Georgia,serif;color:#155244}.age-top strong span{font:700 14px system-ui;margin-left:8px}.age-gate p{margin:24px 0}.age-actions{display:flex;gap:12px;flex-wrap:wrap}.age-actions button{font:700 15px/1.4 system-ui;min-height:48px;padding:12px 20px;border-radius:99px;border:1px solid #155244;background:transparent;color:#155244;cursor:pointer}.age-actions .primary{background:#d61f2c;border-color:#d61f2c;color:#fff}.age-langs{display:flex;gap:2px}.age-langs button{border:0;padding:8px;border-radius:20px;color:#155244;background:transparent;cursor:pointer}.age-langs button[aria-pressed=true]{background:#155244;color:#fff}.age-policy{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px;font-size:12px}.age-policy a{text-decoration:underline}.age-check-open{overflow:hidden}.age-check-open .analytics-box{visibility:hidden}.media-player{position:relative;display:grid;min-width:0;align-self:stretch;background:#111}.media-player>img{width:100%;height:100%;object-fit:cover;grid-area:1/1;aspect-ratio:9/16}.media-player>video{grid-area:1/1;width:100%;height:100%;object-fit:cover;min-height:0}.media-player>video[hidden]{display:none}.media-play{grid-area:1/1;align-self:center;justify-self:center;z-index:1;display:flex;gap:9px;align-items:center;background:#f7f4efef;color:#0f392f;border:1px solid #fff;border-radius:99px;padding:14px 18px;font:700 15px/1.3 system-ui;cursor:pointer;box-shadow:0 2px 20px #0005}.media-play[hidden]{display:none}.media-player.playing>img{visibility:hidden}.video-wrap .media-player{max-height:690px}.video-wrap .media-player>img{aspect-ratio:9/12}.langs a{display:inline-flex;align-items:center;justify-content:center;padding:6px 8px;font-size:12px;border-radius:99px;color:#6c6663;min-width:33px}.langs a.active{background:#155244;color:#fff}
@media(max-width:600px){.langs a{padding:5px 6px;min-width:28px}.age-gate{padding:22px}.age-actions{display:grid;grid-template-columns:1fr}.price .vnd{font-size:15px}.media-player>img,.media-player>video{max-height:560px}.video-wrap .media-player{max-height:520px}.legal-shell{padding-top:24px}.legal-shell h1{font-size:32px}.legal-header{gap:16px}}





/* Preserve the original hero typography while using a semantic heading. */
h1.hero-slogan{font-family:inherit;font-weight:800;letter-spacing:normal;max-width:none;margin:0 0 12px;font-size:clamp(20px,2.3vw,30px);line-height:1.3;color:#fff}
/* Square villa tiles: intrinsic height attributes must not override the card ratio. */
.villa-tiles img{height:auto;aspect-ratio:1/1;object-fit:cover}
/* Deferred videos occupy the same fixed frames as the original players. */
.video-wrap .media-player{aspect-ratio:9/12;width:100%;max-height:690px}
.video-wrap .media-player>img,.video-wrap .media-player>video{position:absolute;inset:0;width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:cover}
@media(max-width:600px){h1.hero-slogan{font-size:22px}.video-wrap .media-player{max-height:520px}}
