@charset "UTF-8";
:root{--brand-width:min(435px,calc(100vw - 48px));--header-height:174px;--navy:#122A3E;--blue:#52778A;--white:#FFFFFF;--gold:#DEB773;--line:rgba(255,255,255,.17);--muted:rgba(255,255,255,.73);--font:'Avenir Next','Segoe UI',Arial,sans-serif;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 16px)}body{margin:0;background:var(--navy);color:var(--white);font:16px/1.7 var(--font);-webkit-font-smoothing:antialiased}body.modal-open,body.menu-open{overflow:hidden}button,input,textarea,select{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button{border:0}img{display:block;max-width:100%}svg{display:block}button:disabled{cursor:wait;opacity:.55}button[hidden],[hidden]{display:none!important}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--gold);outline-offset:5px}::selection{background:var(--blue);color:var(--white)}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.13}h2{font-size:clamp(34px,3.75vw,57px);letter-spacing:-2.1px;font-weight:600}h3{font-size:20px;font-weight:550;letter-spacing:-.4px}p{color:var(--muted)}p+p{margin-top:20px}.container{width:min(1280px,calc(100% - 112px));margin:auto}.section{padding:116px 0}.icon{width:24px;height:24px;flex-shrink:0}.eyebrow{font-size:11px;font-weight:600;letter-spacing:2.4px;line-height:1.6;color:var(--gold);margin-bottom:27px}.section-heading{display:grid;grid-template-columns:1.3fr 1fr;align-items:end;gap:100px;margin-bottom:54px}.section-heading>p,.section-heading>div>p{max-width:450px}.section-heading .button{margin-top:26px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;background:var(--blue);color:var(--white);border:1px solid var(--blue);border-radius:2px;padding:17px 23px;min-height:58px;font-size:13px;font-weight:600;line-height:1.4;transition:background .2s,border-color .2s,transform .2s}.button .icon{width:20px;height:20px;color:var(--gold)}.button:hover{background:rgba(82,119,138,.75);border-color:var(--gold)}.button-secondary{background:transparent;border-color:var(--line)}.button-secondary:hover{background:rgba(82,119,138,.18)}.link-arrow{display:inline-flex;align-items:center;gap:17px;font-size:13px;border-bottom:1px solid var(--line);padding:12px 0}.link-arrow .icon{width:18px;color:var(--gold)}.icon-button{display:grid;place-items:center;min-width:44px;min-height:44px;border:1px solid var(--line);border-radius:50%;background:transparent}.icon-button:hover{background:var(--blue)}.text-button{background:none;padding:0;color:var(--muted);text-align:left;font-size:12px;text-decoration:underline;text-underline-offset:4px}.text-button:hover{color:var(--white)}.gold-rule{display:block;width:76px;height:1px;background:var(--gold)}.pending{font-size:10px;letter-spacing:.5px;color:var(--muted);white-space:nowrap}.small-note{font-size:12px;line-height:1.8}.muted{color:var(--muted)}.skip-link{position:fixed;left:20px;top:-100px;z-index:100;background:var(--blue);padding:12px}.skip-link:focus{top:12px}
/* Layout and language-aware branding */
.header{--brand-width:300px;position:sticky;top:0;z-index:30;background:var(--navy);border-bottom:1px solid transparent;transition:background .3s,border-color .3s}.header.scrolled{background:rgba(18,42,62,.94);backdrop-filter:blur(18px);border-color:var(--line)}.header-inner{width:min(1390px,calc(100% - 80px));height:auto;margin:auto;padding:10px 0;display:grid;grid-template-columns:var(--brand-width) 1fr auto;align-items:center;justify-content:space-between;gap:28px}.brand{display:block;flex:0 0 auto;width:var(--brand-width);max-width:100%}.brand img{width:100%;height:auto;aspect-ratio:2000 / 1012;object-fit:contain;object-position:center}.desktop-nav{display:flex;gap:27px;align-items:center}.desktop-nav a{font-size:12px;white-space:nowrap;padding:10px 0;position:relative}.desktop-nav a:after{content:'';height:1px;background:var(--gold);position:absolute;bottom:3px;left:0;width:0;transition:width .2s}.desktop-nav a:hover:after,.desktop-nav a[aria-current]:after{width:100%}.header-actions{display:flex;align-items:center;gap:22px}.languages{display:flex;align-items:center;gap:3px;font-size:10px;white-space:nowrap}.languages button{background:none;min-width:30px;min-height:44px;font-size:11px;padding:3px;font-weight:500;border-bottom:1px solid transparent}.languages span{color:rgba(255,255,255,.3);font-size:10px}.languages button[aria-pressed=true]{color:var(--gold);border-bottom-color:var(--gold)}.header-actions>.button{padding:12px 19px;min-height:46px;font-size:11px;gap:20px}.header-actions>.button .icon{width:15px}.menu-toggle{display:none}.mobile-menu{display:none}.mobile-bar{display:none}
/* Abstract image placeholders, deliberately not photographs of the property. */
.art{overflow:hidden;position:relative;background:var(--blue);isolation:isolate;width:100%;height:100%;min-height:200px}.art:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(18,42,62,.5),transparent 50%);pointer-events:none}.art-sun{width:22%;aspect-ratio:1;position:absolute;border-radius:50%;background:rgba(255,255,255,.57);left:58%;top:13%;box-shadow:0 0 80px rgba(255,255,255,.14)}.art-horizon{position:absolute;left:0;right:0;top:44%;height:56%;background:linear-gradient(180deg,rgba(18,42,62,.9),rgba(82,119,138,.6));border-top:1px solid rgba(222,183,115,.8)}.art-wave{position:absolute;left:-20%;right:-30%;height:48%;border:1px solid rgba(255,255,255,.13);border-radius:50%;transform:rotate(-12deg)}.wave-one{top:57%}.wave-two{top:66%;left:-50%;border-color:rgba(222,183,115,.25)}.wave-three{top:77%;left:-40%;right:-80%}.art-outline{position:absolute;inset:7%;border:1px solid rgba(255,255,255,.15);border-radius:50% 50% 0 0}.art-caption{position:absolute;bottom:24px;left:25px;right:20px;z-index:3;color:rgba(255,255,255,.8);font-size:10px;letter-spacing:.9px;display:flex;align-items:center;gap:9px;line-height:1.5}.art-caption .icon{width:15px;height:15px}.art-lines{background:linear-gradient(135deg,var(--navy),var(--blue))}.art-lines .art-sun{left:12%;top:16%;width:28%;opacity:.5}.art-lines .art-horizon{left:52%;width:44%;top:0;height:100%;background:rgba(18,42,62,.35);border:0;transform:skew(-18deg)}.art-lines .art-outline{inset:12% 18%;border-radius:48% 48% 0 0;transform:rotate(15deg);border-color:rgba(222,183,115,.3)}.art-lines .art-wave{border-color:rgba(255,255,255,.14);height:80%;left:5%;top:40%;transform:rotate(-38deg)}.art-lines .wave-two{left:16%;top:48%}.art-lines .wave-three{left:26%;top:57%}.art-arch{background:linear-gradient(115deg,rgba(82,119,138,.55),var(--navy))}.art-arch .art-outline{inset:13% 20% 0;border-radius:48% 48% 0 0;border:1px solid rgba(255,255,255,.32);background:rgba(82,119,138,.18);box-shadow:35px 0 0 rgba(255,255,255,.02),-35px 0 0 rgba(255,255,255,.02)}.art-arch .art-sun{width:16%;top:29%;left:53%;background:rgba(222,183,115,.7)}.art-arch .art-horizon{top:65%;border-color:rgba(255,255,255,.25)}.art-arch .art-wave{top:82%;height:40%;border-color:rgba(255,255,255,.1)}.art-pool{background:linear-gradient(25deg,var(--navy),var(--blue))}.art-pool .art-sun{width:12%;left:74%;top:16%;opacity:.75}.art-pool .art-outline{inset:28% 13% -35%;transform:perspective(500px) rotateX(40deg) rotateZ(-9deg);border:1px solid rgba(255,255,255,.3);border-radius:50% 50% 12% 12%;box-shadow:0 0 0 17px rgba(255,255,255,.03),0 0 0 18px rgba(222,183,115,.2)}.art-pool .art-horizon{top:75%;opacity:.4}.art-pool .art-wave{border-color:rgba(255,255,255,.17)}
/* Opening composition */
.hero{position:relative;padding:16px 0 74px;overflow:hidden}.hero-inner{position:relative;display:grid;grid-template-columns:1.07fr 1fr;min-height:590px;align-items:center}.hero-copy{position:relative;z-index:2;min-width:0;padding:35px 0 60px}.hero .eyebrow{font-size:10px;margin-bottom:29px}.hero h1{font-size:clamp(34px,4.5vw,64px);letter-spacing:-.045em;font-weight:550;line-height:1.12;position:relative;margin-left:0;padding-right:25px;max-width:100%;white-space:normal;overflow-wrap:break-word;text-wrap:balance}.hero-text{font-size:18px;line-height:1.6;max-width:400px;margin-top:32px;color:rgba(255,255,255,.89)}.hero-detail{font-size:11px;max-width:380px;margin-top:18px;line-height:1.8;color:rgba(255,255,255,.58)}.hero-ctas{display:flex;gap:29px;align-items:center;margin-top:34px}.hero-ctas .button{min-height:57px;gap:28px}.hero-visual{height:590px;position:relative;margin-left:0}.hero-visual>.art{border-radius:170px 2px 2px 2px}.hero-visual>.art .art-outline{display:none}.hero-visual>.art .art-sun{width:25%;left:57%;top:15%}.hero-visual>.art .art-caption{bottom:25px;left:25px;max-width:250px}.hero-location{position:absolute;left:-27px;bottom:81px;background:var(--navy);border:1px solid var(--line);padding:18px 25px;display:flex;align-items:center;gap:18px;z-index:4}.hero-location .icon{color:var(--gold)}.hero-location>span{font-size:12px}.hero-location small{display:block;color:var(--muted);font-size:10px;letter-spacing:1px;margin-top:3px}.visual-index{position:absolute;right:23px;top:25px;font-size:10px;letter-spacing:2px}.hero-scroll{position:absolute;bottom:0;left:0;display:flex;align-items:center;gap:15px;font-size:10px;letter-spacing:1px;color:var(--muted)}.hero-scroll .icon{width:15px;color:var(--gold)}.quick-booking-wrap{position:relative;margin-top:-18px;z-index:3}.booking-form{margin:0}.booking-fields{display:grid;gap:22px}.booking-compact{padding:25px 30px;background:var(--navy);border:1px solid rgba(255,255,255,.28);box-shadow:0 12px 35px rgba(18,42,62,.3);display:grid;grid-template-columns:1fr auto;align-items:center;gap:28px}.booking-compact .booking-fields{grid-template-columns:1.2fr 1.2fr .7fr .7fr;gap:20px}.field label{display:block;font-size:11px;line-height:1.4;margin-bottom:12px;font-weight:500}.input-wrap{position:relative;display:flex;gap:8px;align-items:center}.input-wrap>.icon{width:17px;color:var(--gold)}input,textarea{min-width:0;border:1px solid var(--line);border-radius:2px;width:100%;background:transparent;color:var(--white);padding:15px 14px;min-height:52px;line-height:1.4}input::placeholder,textarea::placeholder{color:rgba(255,255,255,.45);font-size:13px}input[aria-invalid],textarea[aria-invalid]{border-color:var(--gold)}input::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.55}input[type=number]{appearance:textfield}.booking-compact input{font-size:14px;padding:4px 0;min-height:33px;border:0}.booking-compact .field{border-right:1px solid var(--line);padding-right:15px}.booking-compact label{color:var(--muted);font-size:10px;margin-bottom:4px}.booking-compact .field:last-child{border:0}.booking-compact .button{font-size:12px;gap:25px}.form-status:empty{display:none}.booking-compact .form-status{grid-column:1/-1;margin:0}.form-status{font-size:13px;color:var(--gold);line-height:1.6;margin:15px 0}.benefit-bar{display:flex;justify-content:space-between;padding:32px 0;border-bottom:1px solid var(--line);gap:20px}.benefit-bar>div{display:flex;align-items:center;gap:12px}.benefit-bar .icon{width:21px;color:var(--gold)}.benefit-bar span{font-size:11px;line-height:1.5}.benefit-bar small{font-size:9px;display:block;color:rgba(255,255,255,.48);margin-top:4px}
/* Editorial sections */
.intro-heading{align-items:start}.intro-heading h2{font-size:clamp(32px,3.1vw,47px)}.benefits-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:70px}.benefits-grid article{border-left:1px solid var(--line);padding:0 32px;position:relative}.benefits-grid article:first-child{border:0;padding-left:0}.benefits-grid article:last-child{padding-right:0}.benefits-grid .icon{color:var(--gold);width:30px;height:30px;margin-bottom:30px}.card-number{position:absolute;top:5px;right:32px;font-size:10px;color:rgba(255,255,255,.3)}.benefits-grid h3{font-size:17px;margin-bottom:17px}.benefits-grid p{font-size:13px;line-height:1.9}.emotion{padding:12px 0 110px}.emotion-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.emotion-visual{height:490px;position:relative}.emotion-visual .art,.emotion-visual .section-photo{border-radius:2px 120px 2px 2px}.quiet-word{position:absolute;left:-25px;bottom:65px;font-size:110px;font-style:italic;font-weight:300;line-height:1;letter-spacing:-7px;z-index:4}.emotion-copy p:not(.eyebrow){margin-top:28px}.emotion-copy .gold-rule{margin-top:40px}.apartment-layout{display:grid;grid-template-columns:1.02fr 1fr;gap:62px;align-items:stretch}.apartment-visual{min-height:600px;position:relative}.photo-title{position:absolute;left:40px;top:35px;font-size:12px;letter-spacing:2px}.photo-title span{display:block;font-size:10px;letter-spacing:1px;color:var(--muted);margin-top:4px}.apartment-facts h3{margin-bottom:24px}.apartment-facts dl{margin:0}.apartment-facts dl>div{display:grid;grid-template-columns:23px 1fr auto;align-items:center;gap:14px;border-top:1px solid var(--line);padding:12px 0;min-height:44px}.apartment-facts dt{font-size:12px}.apartment-facts dd{margin:0;font-size:12px}.apartment-facts dd.pending{font-size:9px;color:rgba(255,255,255,.55)}.apartment-facts dl .icon{width:18px;height:18px;color:var(--gold)}.apartment-facts .small-note{margin-top:20px}.floorplan{margin-top:30px;padding:25px 30px;border:1px dashed rgba(255,255,255,.24);display:flex;align-items:center;gap:23px}.floorplan>.icon{color:var(--gold)}.floorplan h3{font-size:15px}.floorplan p{font-size:12px;margin-top:6px}.floorplan>.pending{margin-left:auto}.gallery-section{background:rgba(82,119,138,.10)}.gallery-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 35px}.gallery-filters button{background:transparent;color:var(--muted);border:1px solid var(--line);padding:11px 17px;min-height:44px;font-size:11px;transition:border-color .2s}.gallery-filters button[aria-pressed=true]{background:var(--blue);color:var(--white);border-color:var(--blue);box-shadow:inset 0 -2px var(--gold)}.gallery-filters button:hover{border-color:var(--gold)}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:27px 22px}.gallery-card{background:none;text-align:left;padding:0;min-width:0}.gallery-image{height:230px;overflow:hidden;position:relative}.gallery-card:first-child,.gallery-card:nth-child(6){grid-column:span 2}.gallery-card .art{min-height:0;transition:transform .5s}.gallery-card:hover .art{transform:scale(1.035)}.gallery-image img{width:100%;height:100%;object-fit:cover}.gallery-card .art-caption{font-size:8px;left:16px;bottom:17px;right:40px;letter-spacing:.3px}.gallery-expand{position:absolute;right:14px;bottom:16px;z-index:4;display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--line);border-radius:50%;background:var(--navy)}.gallery-expand .icon{width:15px;height:15px}.gallery-caption{display:flex;justify-content:space-between;margin-top:12px;font-size:12px}.gallery-caption>span:last-child{color:var(--gold);font-size:10px}.family-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.family-copy p:not(.eyebrow){margin-top:28px}.family-copy .small-note{border-left:1px solid var(--gold);padding-left:18px;margin-top:25px}.family-copy .button{margin-top:30px}.family-visual{height:540px;position:relative}.family-visual .art{border-radius:50% 50% 2px 2px}.family-stamp{position:absolute;bottom:35px;left:-35px;width:142px;height:142px;border-radius:50%;background:var(--navy);border:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}.family-stamp .icon{color:var(--gold);width:30px;height:30px}.family-stamp span{font-size:12px}.resort-visual{height:480px;position:relative}.resort-visual .art-pool .art-sun{width:8%}.resort-name{position:absolute;left:55px;top:55px;font-size:43px;font-weight:500;letter-spacing:-1.2px;line-height:1.1}.resort-name>span{display:block;font-size:11px;letter-spacing:2px;margin-top:22px}.resort-services{display:grid;grid-template-columns:.8fr 1.4fr auto;align-items:center;gap:40px;border-bottom:1px solid var(--line);padding:30px 0}.resort-services>div{display:flex;gap:18px;align-items:center}.resort-services h3{font-size:17px}.resort-services .icon{color:var(--gold)}.resort-services p{font-size:13px}.confirmed-services{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:15px}.confirmed-services li{display:flex;gap:12px;font-size:13px;align-items:center}.confirmed-services small{display:block}.beach-section{padding-top:20px}.beach-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.beach-visual{height:620px;position:relative}.beach-visual .art,.beach-visual .section-photo{border-radius:2px 2px 150px 2px}.vertical-label{position:absolute;top:30px;left:22px;writing-mode:vertical-rl;font-size:10px;letter-spacing:4px}.beach-grid>div>p:not(.eyebrow){margin-top:25px}.beach-facts{margin:35px 0;display:grid;grid-template-columns:1fr 1fr;gap:25px}.beach-facts dt{font-size:11px;color:var(--muted)}.beach-facts dd{margin:10px 0 0;color:var(--white);font-size:12px}.route-placeholder{border:1px dashed rgba(255,255,255,.25);padding:25px}.route-line{display:flex;align-items:center;gap:15px;margin-bottom:18px;max-width:280px}.route-line span{width:100%;border-top:1px dashed var(--gold)}.route-line .icon{color:var(--gold);width:21px;height:21px}.route-placeholder h3{font-size:14px}.route-placeholder p{font-size:11px;line-height:1.8;margin-top:10px}.destination-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px 24px}.destination-card{min-width:0}.destination-card>.art{height:190px;min-height:0}.destination-card>.art .art-caption{font-size:8px;left:14px;right:14px;bottom:15px;letter-spacing:.2px}.destination-card>.art .art-caption .icon{display:none}.destination-card>div:last-child{padding:20px 0 0;position:relative}.destination-card h3{font-size:21px;margin-bottom:10px}.destination-card p{font-size:12px}.destination-number{float:right;font-size:10px;color:var(--gold)}.location-map{display:grid;grid-template-columns:1.2fr 1fr;gap:0;margin-top:55px;border:1px solid var(--line)}.map-art{min-height:300px;position:relative;background:var(--blue);overflow:hidden}.map-art:after{content:'';inset:0;position:absolute;background:linear-gradient(90deg,transparent 98%,rgba(255,255,255,.07) 98%),linear-gradient(0deg,transparent 98%,rgba(255,255,255,.07) 98%);background-size:40px 40px;pointer-events:none}.map-land{position:absolute;inset:-50% 20% -20% -40%;border-radius:40%;background:var(--navy);transform:rotate(-30deg);border-right:1px solid var(--gold)}.map-ring{position:absolute;width:200px;height:200px;border:1px solid rgba(255,255,255,.12);border-radius:50%;left:28%;top:13%}.ring-two{transform:scale(1.6)}.map-label{position:absolute;left:34%;top:39%;display:flex;align-items:center;gap:12px;font-size:12px;background:var(--navy);border:1px solid var(--line);padding:12px;z-index:2}.map-label .icon{color:var(--gold);width:20px}.map-caption{position:absolute;bottom:22px;right:25px;font-size:10px;letter-spacing:2px}.map-info{padding:43px;display:flex;flex-direction:column;align-items:start;justify-content:center}.map-info h3{font-size:20px}.map-info p{font-size:13px;margin:20px 0}.map-info .button{font-size:11px;min-height:50px}.travel-section{background:rgba(82,119,138,.12)}.travel-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:35px;margin:55px 0 37px}.travel-grid article{border-top:1px solid var(--line);padding-top:26px;position:relative}.travel-step{position:absolute;right:0;top:24px;font-size:10px;color:var(--muted)}.travel-grid .icon{color:var(--gold);margin-bottom:27px}.travel-grid h3{font-size:18px;margin-bottom:20px}.travel-grid p{font-size:12px;line-height:1.9}
/* Booking and contact */
.booking-section{padding-bottom:75px}.booking-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:38px}.booking-card{padding:35px;border:1px solid var(--line)}.booking-full .booking-fields{grid-template-columns:1fr 1fr;gap:24px}.booking-full .input-wrap{position:relative}.booking-full .input-wrap .icon{position:absolute;left:13px;pointer-events:none}.booking-full input{padding-left:42px;font-size:14px}.booking-full>.button{margin-top:28px;width:100%}.booking-notice{display:flex;gap:14px;border-top:1px solid var(--line);padding-top:24px;margin-top:26px}.booking-notice .icon{width:18px;height:18px;color:var(--gold);margin-top:2px}.booking-notice p{font-size:12px;line-height:1.8}.booking-summary{padding:34px;background:rgba(82,119,138,.27);border:1px solid rgba(82,119,138,.6)}.summary-heading{display:flex;align-items:center;gap:13px;margin-bottom:23px}.summary-heading .icon{color:var(--gold)}.summary-heading h3{font-size:18px}.booking-summary dl{margin:0}.booking-summary dl>div{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 0;border-bottom:1px solid var(--line)}.booking-summary dt{font-size:12px;color:var(--muted)}.booking-summary dd{font-size:12px;margin:0;text-align:right}.booking-summary .summary-total{border-color:var(--gold);padding-top:23px;padding-bottom:23px}.booking-summary .summary-total dt{font-size:15px;color:var(--white);font-weight:600;letter-spacing:1px}.booking-summary>p{font-size:11px;margin-top:21px}.booking-capacity{font-size:11px;margin-top:14px}.direct-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:80px}.direct-section{padding-top:50px}.direct-steps{list-style:none;padding:0;margin:26px 0}.direct-steps li{display:flex;gap:22px;align-items:center;border-bottom:1px solid var(--line);padding:13px 0;font-size:13px}.direct-steps span{font-size:10px;color:var(--gold)}.reviews-section{background:rgba(82,119,138,.1);padding:80px 0}.reviews-section h2{font-size:39px}.reviews-empty{margin-top:40px;border-top:1px solid var(--line);padding-top:30px;display:flex;align-items:center;gap:35px}.quote-mark{font-size:100px;line-height:1;color:var(--gold);font-family:Georgia,serif}.reviews-empty h3{font-size:21px;font-weight:400;margin-bottom:13px}.reviews-empty p{font-size:13px}.reviews-empty .gold-rule{margin-left:auto;flex-shrink:0}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.reviews-grid figure{margin:40px 0 0;padding:24px;border:1px solid var(--line)}.reviews-grid figure>span{color:var(--gold)}.reviews-grid blockquote{margin:20px 0}.reviews-grid small{display:block;color:var(--muted)}.faq-layout{display:grid;grid-template-columns:.9fr 1.3fr;gap:100px;align-items:start}.faq-heading{position:sticky;top:calc(var(--header-height) + 28px)}.faq-heading>p:not(.eyebrow){margin-top:28px;font-size:14px;max-width:350px}.faq-heading .button{margin-top:30px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{padding:21px 0;display:flex;align-items:center;justify-content:space-between;gap:24px;cursor:pointer;font-size:14px;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>.icon{width:18px;height:18px;color:var(--gold);transition:transform .2s}.faq-list details[open] summary>.icon{transform:rotate(45deg)}.faq-list details p{font-size:13px;padding:0 35px 22px 0;line-height:1.9}.contact-section{border-top:1px solid var(--line);background:rgba(82,119,138,.12)}.contact-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:100px}.contact-grid>div>p:not(.eyebrow){margin-top:28px;max-width:380px}.contact-channels{margin-top:40px}.contact-channel{display:flex;align-items:center;gap:19px;padding:18px 0;border-top:1px solid var(--line)}.contact-channel>.icon{color:var(--gold);width:22px;height:22px}.contact-channel>span{display:flex;flex-direction:column;gap:5px}.contact-channel strong{font-size:13px;font-weight:500}.contact-channel>span>span{font-size:11px;color:var(--muted)}.contact-channel>.icon:last-child:not(:first-child){margin-left:auto}.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px}.contact-form>.field{margin-top:22px}.contact-form label span{font-size:9px;color:rgba(255,255,255,.5);font-weight:400;margin-left:9px}.contact-form .form-note{font-size:10px;line-height:1.8;margin:22px 0}.contact-form .form-note .text-button{font-size:10px;display:inline}.contact-form textarea{resize:vertical;min-height:150px}.contact-form>.button{min-width:210px}.contact-form #download-enquiry{margin-top:15px}.footer{padding-top:65px}.footer-grid{display:grid;grid-template-columns:1.3fr .8fr 1fr .75fr;gap:60px}.footer-brand .brand{margin-bottom:25px}.footer-brand p{font-size:12px;max-width:260px;line-height:1.9}.footer-region{display:block;font-size:10px;margin-top:15px;color:var(--muted)}.footer h3{font-size:12px;margin:28px 0 23px;font-weight:500}.footer-nav{display:flex;flex-direction:column;gap:12px}.footer-nav a,.footer-grid>div>a,.footer-grid>div>.muted{font-size:11px;display:flex;gap:15px;margin-bottom:12px}.footer-grid>div>a .icon{width:16px;height:16px}.footer a:hover{color:var(--gold)}.footer .social-title{margin-bottom:14px;margin-top:26px}.socials{display:flex;flex-direction:column;gap:6px;font-size:9px;color:var(--muted)}.footer-tagline{display:block;font-size:30px;line-height:1.08;letter-spacing:-1px;font-weight:500;margin-top:24px}.footer .languages{justify-content:flex-start;gap:7px}.footer-bottom{display:flex;justify-content:space-between;gap:40px;border-top:1px solid var(--line);padding:26px 0 30px;margin-top:56px}.footer-bottom>span{font-size:9px;color:var(--muted)}.footer-bottom>div{display:flex;flex-wrap:wrap;gap:20px}.footer-bottom .text-button{font-size:9px;text-decoration:none}
/* Dialogs */
dialog{background:var(--navy);color:var(--white);border:1px solid var(--line);padding:0}dialog::backdrop{background:rgba(18,42,62,.92);backdrop-filter:blur(10px)}.lightbox{width:min(1100px,calc(100% - 60px));max-height:94dvh;overflow:auto}.lightbox-top{padding:18px 24px;display:flex;align-items:center;justify-content:space-between}.lightbox-top>span{font-size:11px;letter-spacing:2px;color:var(--gold)}.lightbox-media{height:min(62dvh,640px)}.lightbox-media .art{height:100%}.lightbox-media>img{width:100%;height:100%;object-fit:contain}.lightbox-bottom{padding:25px;display:flex;align-items:center;justify-content:space-between;text-align:center;gap:15px}.lightbox-bottom p{font-size:11px;margin-top:9px}.lightbox-bottom h3{font-size:22px}.lightbox-bottom [data-lightbox-prev]{transform:rotate(180deg)}.legal-dialog{padding:35px;width:min(620px,calc(100% - 36px));max-height:85dvh}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:30px}.dialog-top h2{font-size:30px;letter-spacing:-.6px}.legal-dialog>p{font-size:14px;line-height:1.9}.legal-dialog>.button{margin-top:25px}
@media(min-width:1600px){.header-inner{width:min(1430px,calc(100% - 112px))}.hero h1{font-size:64px}.hero-inner{min-height:655px}.hero-visual{height:655px}}
@media(max-width:1200px){.container{width:calc(100% - 72px)}.header-inner{width:calc(100% - 50px);gap:20px}.desktop-nav{gap:17px}.desktop-nav a{font-size:10px}.header-actions{gap:12px}.header-actions>.button{font-size:10px;padding:11px 13px}.hero-ctas{gap:20px;flex-wrap:wrap}.hero-visual{height:570px}.section-heading{gap:55px}.emotion-grid,.family-grid,.beach-grid{gap:65px}.apartment-layout{gap:38px}.gallery-image{height:195px}.contact-grid,.faq-layout{gap:65px}.footer-grid{gap:35px}.booking-compact{gap:15px;padding:25px 20px}.booking-compact .booking-fields{gap:12px}.booking-compact .button{font-size:10px;gap:17px}.benefit-bar{gap:13px}.benefit-bar>div{gap:8px}}
@media(max-width:1000px){.desktop-nav{display:none}.header-actions>.button{font-size:11px;padding:13px 20px}.menu-toggle{display:grid}.header-actions{gap:20px}.mobile-menu:not([hidden]){display:flex;position:fixed;inset:var(--header-height) 0 0;background:var(--navy);z-index:29;padding:30px 36px 100px;flex-direction:column;gap:25px;overflow:auto}.mobile-menu nav{display:flex;flex-direction:column;gap:0}.mobile-menu nav a{font-size:25px;padding:13px 0;border-bottom:1px solid var(--line)}.mobile-menu>.button{align-self:start}.mobile-contact{display:flex;gap:14px;font-size:14px;color:var(--muted)}.mobile-contact .icon{color:var(--gold)}.hero-text{font-size:16px}.hero-visual{height:540px}.hero-inner{min-height:540px}.hero-copy{padding-bottom:70px}.hero-ctas{gap:10px}.hero-location{left:-18px;bottom:68px;padding:13px 18px}.hero-location .icon{width:20px}.hero-visual>.art{border-radius:120px 2px 2px 2px}.booking-compact{grid-template-columns:1fr;gap:19px}.booking-compact .booking-fields{grid-template-columns:1fr 1fr .6fr .6fr}.booking-compact .button{justify-content:center;font-size:12px;min-height:46px}.benefit-bar{display:grid;grid-template-columns:repeat(3,1fr);gap:24px 30px}.section{padding:85px 0}.section-heading{gap:35px}h2{font-size:39px;letter-spacing:-1.5px}.benefits-grid{grid-template-columns:1fr 1fr;gap:36px}.benefits-grid article{border:0;border-top:1px solid var(--line);padding:25px 0 0}.benefits-grid article:first-child{border-top:1px solid var(--line);padding-top:25px}.card-number{top:26px;right:0}.benefits-grid .icon{margin-bottom:24px}.emotion-grid,.family-grid,.beach-grid{gap:40px}.emotion-visual{height:440px}.quiet-word{font-size:90px;left:-14px}.emotion{padding-top:0}.apartment-layout{grid-template-columns:1fr 1fr;gap:30px}.apartment-visual{min-height:640px}.apartment-facts dt{font-size:10px}.apartment-facts dl>div{gap:10px}.gallery-grid{grid-template-columns:repeat(3,1fr)}.gallery-card:first-child,.gallery-card:nth-child(6){grid-column:auto}.gallery-image{height:210px}.family-visual{height:490px}.family-stamp{left:-17px;width:120px;height:120px}.resort-visual{height:400px}.resort-services{grid-template-columns:1fr 1.5fr;gap:25px}.resort-services>.pending{grid-column:2}.beach-visual{height:620px}.beach-facts{gap:12px}.beach-facts dd{font-size:10px}.destination-grid{grid-template-columns:repeat(3,1fr)}.map-info{padding:25px}.map-label{left:18%}.travel-grid{grid-template-columns:1fr 1fr;gap:30px}.booking-layout{gap:25px;grid-template-columns:1.1fr 1fr}.booking-card,.booking-summary{padding:25px}.booking-full .booking-fields{gap:20px}.booking-full input{font-size:12px;padding-left:12px}.booking-full .input-wrap>.icon{display:none}.direct-grid{gap:40px}.contact-grid,.faq-layout{gap:40px}.contact-fields{grid-template-columns:1fr;gap:20px}.footer-grid{grid-template-columns:1.3fr 1fr;gap:35px 80px}.footer-bottom{flex-direction:column;gap:15px}}
@media(max-width:700px){html{scroll-padding-top:calc(var(--header-height) + 16px)}.container{width:calc(100% - 40px)}.header-inner{width:calc(100% - 32px);gap:12px}.header-actions{gap:13px}.header-actions>.button{display:none}.languages{gap:1px}.languages button{min-width:29px;font-size:10px;min-height:44px}.languages span{font-size:8px}.menu-toggle{width:40px;height:40px;min-width:40px;min-height:40px;border-radius:0;border:0}.menu-toggle .icon{width:23px}.mobile-menu:not([hidden]){top:var(--header-height);padding:15px 24px 100px}.mobile-menu nav a{font-size:23px}.mobile-menu .mobile-brand{display:block}.hero{padding:17px 0 54px}.hero-inner{display:flex;flex-direction:column;min-height:0;align-items:stretch}.hero-copy{padding:20px 0 30px}.hero .eyebrow{font-size:8px;letter-spacing:1.7px;margin-bottom:23px;max-width:300px}.hero h1{font-size:clamp(32px,8.6vw,46px);padding-right:0;line-height:1.14}.hero-text{font-size:16px;line-height:1.7;max-width:340px;margin-top:25px}.hero-detail{font-size:10px;max-width:310px;margin-top:15px}.hero-ctas{margin-top:26px;gap:17px;flex-wrap:nowrap}.hero-ctas .button{min-height:54px;font-size:11px;padding:15px 16px;gap:18px}.hero-ctas .link-arrow{font-size:10px;gap:8px;max-width:130px}.hero-visual{height:350px;margin-left:25px;margin-top:15px}.hero-visual>.art{border-radius:100px 2px 2px 2px}.hero-visual>.art .art-sun{width:22%;left:57%;top:13%}.hero-location{left:-25px;bottom:54px;padding:14px 19px}.hero-location>span{font-size:11px}.hero-location small{font-size:9px}.hero-visual>.art .art-caption{font-size:8px;bottom:18px;left:18px;max-width:260px;letter-spacing:.5px}.visual-index{right:18px;top:20px;font-size:9px}.hero-scroll{display:none}.quick-booking-wrap{margin-top:-25px}.booking-compact{padding:23px 20px;gap:20px}.booking-compact .booking-fields{grid-template-columns:1fr 1fr;gap:18px}.booking-compact .field{padding-right:0;border:0}.booking-compact .field:nth-child(-n+2){border-bottom:1px solid var(--line);padding-bottom:10px}.booking-compact label{font-size:10px}.booking-compact input{font-size:13px;min-height:40px}.booking-compact .button{min-height:52px;justify-content:space-between}.booking-compact .input-wrap>.icon{width:16px}.benefit-bar{padding:28px 0;grid-template-columns:repeat(3,1fr);gap:23px 12px}.benefit-bar>div{align-items:start;gap:8px}.benefit-bar .icon{width:18px;height:18px}.benefit-bar span{font-size:9px}.benefit-bar small{font-size:7px}.section{padding:65px 0}h2{font-size:36px;letter-spacing:-1.6px;line-height:1.16}.eyebrow{font-size:9px;letter-spacing:1.8px;margin-bottom:20px}.section-heading{display:block;margin-bottom:35px}.section-heading>p,.section-heading>div>p{margin-top:24px;font-size:14px}.intro-heading h2{font-size:32px}.benefits-grid{gap:28px 24px;margin-top:40px}.benefits-grid h3{font-size:16px;line-height:1.3;margin-bottom:13px}.benefits-grid p{font-size:11px;line-height:1.9}.benefits-grid .icon{width:25px;height:25px;margin-bottom:20px}.card-number{font-size:8px}.emotion{padding-top:10px}.emotion-grid{display:flex;flex-direction:column;gap:35px}.emotion-visual{height:380px;width:100%}.emotion-visual .art,.emotion-visual .section-photo{border-radius:2px 100px 2px 2px}.emotion-copy{width:100%;padding:0 5px}.emotion-copy p:not(.eyebrow){font-size:14px;margin-top:22px}.emotion-copy .gold-rule{margin-top:28px}.quiet-word{font-size:100px;left:-8px;bottom:55px}.apartment-layout{display:block}.apartment-visual{min-height:0;height:430px;margin-bottom:34px}.photo-title{left:26px;top:25px;font-size:10px}.apartment-facts h3{font-size:22px;margin-bottom:25px}.apartment-facts dt{font-size:12px}.apartment-facts dd{font-size:14px}.apartment-facts dl>div{padding:13px 0;gap:13px}.apartment-facts dd.pending{font-size:9px}.floorplan{padding:21px 18px;gap:15px;flex-wrap:wrap}.floorplan h3{font-size:14px}.floorplan p{font-size:11px}.floorplan>.pending{margin-left:39px}.gallery-filters{flex-wrap:nowrap;overflow:auto;padding:3px 0 12px;margin-bottom:20px;scrollbar-width:thin;scrollbar-color:var(--blue) transparent}.gallery-filters button{flex-shrink:0;font-size:10px;padding:10px 14px}.gallery-grid{grid-template-columns:1fr 1fr;gap:23px 14px}.gallery-card:first-child{grid-column:span 2}.gallery-image{height:185px}.gallery-card:first-child .gallery-image{height:280px}.gallery-card .art-caption{font-size:7px;letter-spacing:0;left:11px;bottom:14px;right:38px;line-height:1.6}.gallery-card .art-caption>.icon{display:none}.gallery-expand{right:10px;bottom:13px;width:27px;height:27px}.gallery-caption{font-size:11px;margin-top:9px}.gallery-caption>span:last-child{font-size:9px}.family-grid{display:flex;flex-direction:column;gap:40px}.family-copy p:not(.eyebrow){font-size:14px;margin-top:23px}.family-copy p.small-note{font-size:11px}.family-copy .button{font-size:12px;padding:16px 19px;gap:20px}.family-visual{width:calc(100% - 20px);height:420px;margin-left:20px}.family-stamp{left:-20px;bottom:28px;width:113px;height:113px}.family-stamp span{font-size:10px}.resort-visual{height:335px}.resort-name{left:26px;top:30px;font-size:32px}.resort-name>span{font-size:9px;margin-top:17px}.resort-visual .art-pool .art-sun{width:13%}.resort-services{display:block;padding:25px 0}.resort-services>div{gap:14px}.resort-services h3{font-size:16px}.resort-services p{font-size:12px;margin:16px 0}.resort-services>.pending{display:block}.beach-section{padding-top:10px}.beach-grid{display:flex;flex-direction:column;gap:38px}.beach-visual{width:100%;height:430px}.beach-grid>div{width:100%}.beach-grid>div>p:not(.eyebrow){font-size:14px;margin-top:22px}.beach-facts{margin:28px 0;gap:20px}.beach-facts dd{font-size:11px}.beach-facts dt{font-size:10px}.route-placeholder{padding:23px}.destination-grid{grid-template-columns:1fr 1fr;gap:29px 17px}.destination-card>.art{height:155px}.destination-card>div:last-child{padding-top:15px}.destination-card h3{font-size:19px}.destination-card p{font-size:11px}.destination-card>.art .art-caption{font-size:7px;left:10px;right:10px;bottom:12px;line-height:1.4}.destination-number{font-size:9px}.location-map{grid-template-columns:1fr;margin-top:35px}.map-art{height:275px;min-height:0}.map-label{left:30%;font-size:11px}.map-info{padding:25px}.map-info h3{font-size:19px;line-height:1.4}.map-info p{font-size:12px;margin:15px 0 22px}.travel-grid{gap:30px 25px;margin:36px 0 30px}.travel-grid h3{font-size:16px;line-height:1.4}.travel-grid p{font-size:11px;line-height:1.9}.travel-grid .icon{margin-bottom:19px}.travel-section>.container>.button{font-size:12px;padding:15px 17px;gap:20px}.booking-layout{grid-template-columns:1fr;gap:25px}.booking-card{padding:24px 20px}.booking-full .booking-fields{gap:22px 18px}.booking-full input{font-size:13px}.booking-full>.button{font-size:12px}.booking-summary{padding:25px}.booking-summary dt,.booking-summary dd{font-size:12px}.booking-summary .summary-total{padding:24px 0}.booking-notice p{font-size:11px}.booking-capacity{font-size:10px}.direct-section{padding-top:0}.direct-grid{grid-template-columns:1fr;gap:27px}.direct-grid>div>p{font-size:14px}.direct-steps li{font-size:12px}.reviews-section{padding:50px 0}.reviews-section h2{font-size:32px}.reviews-empty{gap:22px;align-items:start}.reviews-empty .gold-rule{display:none}.quote-mark{font-size:80px}.reviews-empty h3{font-size:20px;line-height:1.3}.reviews-empty p{font-size:12px}.faq-layout{grid-template-columns:1fr;gap:35px}.faq-heading{position:static}.faq-heading>p:not(.eyebrow){font-size:14px}.faq-heading .button{margin-top:22px}.faq-list summary{font-size:13px;padding:19px 0;gap:20px}.faq-list details p{font-size:12px;padding:0 22px 20px 0}.contact-grid{grid-template-columns:1fr;gap:38px}.contact-grid>div>p:not(.eyebrow){font-size:14px;margin-top:22px}.contact-channels{margin-top:28px}.contact-fields{grid-template-columns:1fr 1fr;gap:22px 18px}.contact-form label{font-size:11px}.contact-form label span{display:block;margin:5px 0 0;font-size:8px}.contact-form input,.contact-form textarea{padding:14px 12px;font-size:14px}.contact-form input::placeholder{font-size:11px}.contact-form>.button{width:100%}.footer{padding-top:35px;padding-bottom:74px}.footer-grid{grid-template-columns:1fr 1fr;gap:25px 35px}.footer-brand{grid-column:1/-1}.footer-brand .brand{margin-bottom:20px}.footer-brand p{max-width:300px}.footer-grid>div:last-child{grid-column:1/-1;display:flex;align-items:center;flex-wrap:wrap;gap:0 25px}.footer-grid>div:last-child h3{margin:0}.footer-grid>div:last-child .footer-tagline{display:none}.footer h3{margin-top:18px}.footer-bottom{gap:20px;margin-top:35px;padding:22px 0 28px}.footer-bottom>div{gap:14px 20px}.footer-bottom .text-button{min-height:30px;display:inline-flex;align-items:center}.mobile-bar{position:fixed;display:flex;bottom:0;left:0;right:0;background:rgba(18,42,62,.97);border-top:1px solid var(--line);padding:9px 17px max(9px,env(safe-area-inset-bottom));gap:12px;align-items:center;z-index:25;backdrop-filter:blur(10px)}.mobile-whatsapp{width:47px;height:47px;display:grid;place-items:center;border:1px solid var(--line);flex-shrink:0}.mobile-whatsapp>.icon{width:22px;height:22px;color:var(--gold)}.mobile-bar>.button{width:100%;font-size:12px;min-height:47px;padding:12px 17px}.lightbox{width:calc(100% - 20px);max-height:90dvh}.lightbox-top{padding:13px 16px}.lightbox-media{height:53dvh}.lightbox-bottom{padding:20px 14px}.lightbox-bottom h3{font-size:18px}.lightbox-bottom p{font-size:10px}.lightbox-bottom .icon-button{width:43px;min-width:43px}.legal-dialog{padding:25px}.dialog-top h2{font-size:25px}.legal-dialog>p{font-size:13px}.legal-dialog .icon-button{min-width:40px;min-height:40px}.reviews-grid{grid-template-columns:1fr}}
@media(max-width:370px){.container{width:calc(100% - 32px)}.header-inner{width:calc(100% - 26px)}.header-actions{gap:8px}.languages button{min-width:27px}.hero h1{font-size:32px}.hero-ctas{flex-wrap:wrap;gap:13px}.hero-ctas .link-arrow{max-width:none}.hero-visual{height:310px}.benefit-bar{gap:21px 8px}.benefit-bar>div{gap:5px}.benefit-bar span{font-size:8px}.benefit-bar .icon{width:16px}.gallery-image{height:168px}.contact-fields{grid-template-columns:1fr}.beach-facts{grid-template-columns:1fr}.footer-grid{gap:20px}h2{font-size:33px}.booking-compact{padding:20px 15px}.booking-compact .booking-fields{gap:15px}.booking-compact input{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* One shared logo size for every language and brand placement. */
@media(min-width:1281px) and (max-width:1450px){.desktop-nav{gap:18px}.desktop-nav a{font-size:11px}.header-actions{gap:15px}}
@media(min-width:1281px){
  .footer-grid{grid-template-columns:var(--brand-width) repeat(3,minmax(0,1fr));gap:40px}
}
@media(max-width:1280px){
  .header-inner{grid-template-columns:var(--brand-width) auto;gap:24px}
  .header-actions{justify-content:flex-end}
  .desktop-nav{display:none}
  .menu-toggle{display:grid}
  .mobile-menu:not([hidden]){display:flex;position:fixed;inset:var(--header-height) 0 0;background:var(--navy);z-index:29;padding:24px 24px 100px;flex-direction:column;align-items:flex-start;gap:25px;overflow:auto}
  .mobile-menu nav{display:flex;flex-direction:column;width:100%}
  .mobile-menu nav a{font-size:25px;padding:13px 0;border-bottom:1px solid var(--line)}
  .mobile-menu>.button{align-self:flex-start}
  .mobile-contact{display:flex;gap:14px;font-size:14px;color:var(--muted)}
  .mobile-contact .icon{color:var(--gold)}
  .footer-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}
  .footer-brand{grid-column:1/-1}
}
@media(max-width:900px){
  .header-inner{grid-template-columns:minmax(0,1fr) auto;justify-items:stretch;gap:16px;padding:10px 0}
  .header-actions{width:auto;justify-content:flex-end;gap:16px}
}
@media(max-width:700px){
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 35px}
  .mobile-menu nav a{font-size:23px}
}

/* Supplied section photography keeps the existing responsive image frames. */
.section-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.family-visual .section-photo{border-radius:50% 50% 2px 2px}.apartment-visual .photo-title{top:0;left:0;right:0;padding:30px 32px 60px;background:linear-gradient(rgba(18,42,62,.85),rgba(18,42,62,0));}.apartment-visual .photo-title span{color:var(--white)}

/* Keep the requested gallery title break clear across the full heading width. */
.gallery-section .section-heading{grid-template-columns:minmax(0,1fr)}
.hero-location{transition:border-color .2s}
.hero-location:hover{border-color:var(--gold)}

/* Keep the resort name legible over the supplied entrance photograph. */
.resort-visual .section-photo{object-position:30% center}
.resort-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(130deg,rgba(18,42,62,.7),transparent 60%);pointer-events:none}
.resort-name{z-index:1}

/* Localized welcome videos show the full frame with unobstructed controls. */
.hero-visual.hero-visual-video{width:min(100%,480px);height:auto;min-height:0;align-self:center;justify-self:center;margin-left:0}
.hero-video{display:block;width:100%;height:auto;aspect-ratio:2574 / 3218;max-height:655px;object-fit:contain;background:#091b28;border:1px solid var(--line);border-radius:2px}
.hero-visual-video .hero-location{position:static;width:max-content;max-width:100%;margin-top:18px}

/* Compact header shared by CZ, EN and RU; footer branding keeps its own size. */
.header .menu-toggle{width:44px;height:44px;min-width:44px;min-height:44px}
@media(max-width:700px){
  .header{--brand-width:200px}
  .header-inner{gap:12px;padding:8px 0}
  .header-actions{gap:12px}
}
/* Reserve space for the header, location link and margins on desktop screens. */
@media(min-width:701px){
  .hero-visual.hero-visual-video{
    --video-height-limit:max(240px,calc(100svh - var(--header-height) - 120px));
    width:min(100%,480px,calc(var(--video-height-limit) * .7998756992));
    align-self:start;
  }
}

.benefit-bar .benefit-status{display:block;margin-top:4px;font-size:11px;font-weight:600;letter-spacing:.05em;color:var(--gold)}

.socials .social-button{display:inline-flex;align-items:center;align-self:flex-start;justify-content:center;gap:14px;min-height:44px;max-width:100%;padding:11px 16px;border:1px solid var(--gold);border-radius:2px;background:var(--gold);color:var(--navy);font-size:12px;font-weight:600;line-height:1.5;transition:background .2s,color .2s}
.socials .social-button:hover{background:transparent;color:var(--gold)}
.socials .social-button .icon{width:16px;height:16px}

.form-honeypot{display:none!important}
