:root{
  --navy:#082c59;
  --navy-2:#041f42;
  --orange:#ff5a12;
  --orange-dark:#e84600;
  --blue-soft:#eef6fc;
  --white:#fff;
  --text:#0b315d;
  --muted-blue:#64758b;
  --orange-line:rgba(255,90,18,.22);
  --blue-line:rgba(8,44,89,.14);
  --radius:18px;
  --shell:min(1320px,calc(100% - 48px));
  --sans:Arial,Helvetica,sans-serif;
  --serif:Arial,Helvetica,sans-serif;
}

body{background:#fff;color:var(--text);font-family:var(--sans)}
.site-header{position:relative;background:#fff;color:var(--navy);border-bottom:1px solid var(--blue-line);backdrop-filter:none;-webkit-backdrop-filter:none}
.header-inner{height:86px;gap:28px}.brand{align-self:center}.brand img{width:210px;height:58px;filter:none}
.desktop-nav{gap:26px}.desktop-nav a{font-size:14px;font-weight:700}.desktop-nav a:after{height:3px;bottom:-12px;background:var(--orange)}
.header-phone{color:var(--navy)}.header-phone>svg{stroke:var(--orange)}.header-phone small{color:var(--muted-blue)}
.button{border-radius:9px;background:var(--orange);box-shadow:0 12px 28px rgba(255,90,18,.2)}.button:hover{background:var(--orange-dark)}

.hero{min-height:720px;height:calc(100vh - 86px);max-height:820px;background:#fff;color:var(--navy);overflow:hidden}
.hero:after{content:"";position:absolute;z-index:1;left:0;right:0;bottom:-1px;height:28px;background:#fff;clip-path:polygon(0 50%,7% 36%,14% 62%,22% 42%,31% 67%,40% 44%,49% 64%,58% 38%,67% 61%,76% 40%,86% 66%,94% 43%,100% 58%,100% 100%,0 100%)}
.hero-photo{left:0;right:auto;width:57%;height:100%;object-fit:cover;object-position:center;clip-path:ellipse(88% 90% at 7% 48%);transform:none;animation:none}
.hero-wash{display:none}.hero-inner{display:flex;align-items:center;justify-content:flex-end;min-height:100%;padding:0}.hero-content{width:46%;max-width:660px;padding:48px 0 58px 58px}
.hero .eyebrow.light{display:none}.hero h1{margin:0;color:var(--navy);font:900 clamp(54px,5.1vw,82px)/.94 var(--sans);letter-spacing:-.045em;text-transform:uppercase}.hero h1 span{color:var(--orange)}
.hero-distance{display:none}.hero-copy{max-width:570px;margin:28px 0 30px;color:#40566f;font-size:18px;line-height:1.55}
.hero-actions{display:flex;flex-direction:row;gap:13px;max-width:450px}.hero-actions .button{min-width:200px}.video-link{min-height:56px;padding:0 22px;border:1px solid var(--navy);border-radius:9px;color:var(--navy)}.play-icon{border-color:var(--navy);color:var(--navy)}
.hero-facts{grid-template-columns:repeat(3,1fr);gap:0;margin:36px 0 0;padding:28px 0 0;border-top:1px solid var(--blue-line)}.hero-facts li{padding:0 17px;justify-content:center}.hero-facts li:first-child{padding-left:0}.hero-facts li+li{border-left:1px solid var(--blue-line)}.hero-facts svg{stroke:var(--orange)}.hero-facts b{color:var(--navy);font-weight:800;white-space:normal;text-align:center}
.hero-postcard,.hero-scroll{display:none}

.online-booking{padding:0 0 100px;background:#fff}.online-booking-panel{min-height:360px;padding:48px 55px;border-radius:0;background:var(--navy);box-shadow:none}.online-booking-panel:before,.online-booking-panel:after{border-color:rgba(255,255,255,.12)}
.online-booking-copy .eyebrow{display:none}.online-booking-copy h2{font:900 clamp(42px,4.2vw,62px)/.95 var(--sans);letter-spacing:-.035em;text-transform:uppercase}.online-booking-copy h2::first-line{color:#fff}.online-booking-copy>p:not(.eyebrow){color:rgba(255,255,255,.76)}
.online-booking-phone>svg{stroke:var(--orange);border-color:rgba(255,90,18,.5)}
.online-booking-surface{border-radius:15px;background:#fff;box-shadow:0 20px 48px rgba(0,0,0,.2)}.online-booking-topline{color:var(--navy)}

.section-pad{padding:108px 0}.intro{background:#fff}.intro:after{display:none}.intro-grid{grid-template-columns:1fr .72fr;gap:55px}.eyebrow{color:var(--orange);font-weight:900}.intro h2,.section-head h2,.comfort h2,.video-section h2,.contacts h2{color:var(--navy);font:900 clamp(44px,5vw,74px)/.98 var(--sans);letter-spacing:-.045em;text-transform:uppercase}.intro-lead{color:#425a73}
.benefits{border-top:1px solid var(--blue-line)}.benefits article+article{border-color:var(--blue-line)}.benefits-detailed article:nth-child(n+4){border-color:var(--blue-line)}.benefits span{background:#fff3ec;color:var(--orange);font-family:var(--sans);font-weight:900}.benefits h3{color:var(--navy);font:800 23px/1.15 var(--sans)}.benefits p{color:var(--muted-blue)}

.houses{background:var(--blue-soft)}.section-head>p{color:var(--muted-blue)}.filter{padding:12px 20px;border-color:var(--blue-line);border-radius:8px;background:#fff;color:var(--navy);font-weight:800}.filter.active{border-color:var(--orange);background:var(--orange);color:#fff}
.house-grid{grid-template-columns:repeat(4,1fr);gap:16px}.house-card{border:1px solid var(--blue-line);border-radius:14px;background:#fff;box-shadow:0 8px 24px rgba(8,44,89,.05)}.house-card:hover{border-color:var(--orange-line);box-shadow:0 18px 42px rgba(8,44,89,.13)}.house-card img,.house-card.wide img{height:225px}.house-card.wide{grid-column:span 2}.card-body{padding:21px}.card-kicker{color:var(--orange);font-size:11px}.house-card h3{color:var(--navy);font:800 23px/1.05 var(--sans)}.house-card p:not(.card-kicker){color:var(--muted-blue);font-size:14px}.text-button{color:var(--orange);font-weight:900}

.comfort{background:#fff;color:var(--navy)}.comfort-grid{grid-template-columns:.85fr 1.15fr;gap:76px}.comfort-photo{order:2}.comfort-copy{order:1}.comfort-photo img{height:610px;border-radius:0 120px 0 120px;clip-path:ellipse(83% 96% at 60% 50%)}.comfort-photo span{right:auto;left:-18px;bottom:38px;background:var(--orange);color:#fff}.amenities{border-color:var(--blue-line)}.amenities li{border-color:var(--blue-line);color:var(--navy);font-weight:700}.amenities li:before{color:var(--orange)}.note{color:var(--muted-blue)}

.video-section{background:var(--blue-soft)}.video-grid{grid-template-columns:.7fr 1.3fr}.video-section h2{color:var(--navy)}.video-section p:not(.eyebrow){color:var(--muted-blue)}.video-frame{position:relative}.video-frame:before{content:"";position:absolute;z-index:0;inset:-16px 22px 18px -16px;border:3px solid var(--orange);border-radius:54px 0 54px 0}.video-frame video{position:relative;z-index:1;border-radius:54px 0 54px 0;background:var(--navy)}

.prices{background:#fff}.period-tabs{border-color:var(--blue-line)}.period-tab{color:var(--navy);font-weight:800}.period-tab.active{color:var(--orange);border-color:var(--orange)}table{border:1px solid var(--blue-line);border-radius:14px;overflow:hidden}th{background:var(--blue-soft);color:var(--navy)}th,td{border-color:var(--blue-line)}td:nth-child(2){color:var(--orange);font-weight:900}.price-notes{background:var(--blue-soft);color:var(--muted-blue)}
.stay-conditions{border-color:var(--orange-line);background:#fff7f2}.stay-conditions article+article{border-color:var(--orange-line)}.stay-conditions strong{color:var(--orange)}.stay-conditions span{color:#5c6674}

.gallery{background:#fff}.gallery-intro strong{color:var(--navy)}.gallery-intro strong span{color:var(--orange);font-family:var(--sans);font-weight:900}.gallery-intro p{color:var(--muted-blue)}.gallery-filter{border-color:var(--blue-line);color:var(--navy)}.gallery-filter:hover,.gallery-filter.active{border-color:var(--orange);background:var(--orange)}.gallery-item{border-radius:12px;background:var(--navy)}.gallery-item:after{background:rgba(4,31,66,.62)}.gallery-more{border-color:var(--blue-line);background:#fff;color:var(--navy)}

.contacts{background:var(--blue-soft)}.address{color:var(--muted-blue)}.address strong{color:var(--navy)}.map-card{border-radius:80px 0 80px 0;background:#cbeaff;box-shadow:0 18px 50px rgba(8,44,89,.1)}

.footer{padding-top:70px;background:var(--navy-2)}.footer-grid{grid-template-columns:1.3fr repeat(3,1fr)}.footer-grid>img{width:240px;filter:brightness(0) invert(1)}.footer-grid b{color:var(--orange)}.footer-grid a,.footer-grid p{color:rgba(255,255,255,.7)}.footer-credit strong,.footer-credit>span{color:var(--orange);border-color:rgba(255,90,18,.4)}
.whatsapp{background:var(--orange)}

.house-dialog{background:#fff}.house-media{background:var(--blue-soft)}.house-main-media{background:var(--navy)}.house-thumb.active{border-color:var(--orange)}.house-info h2,.feature-columns h3{color:var(--navy);font-family:var(--sans);font-weight:900}.house-summary,.feature-columns li{color:var(--muted-blue)}.feature-columns li:before{color:var(--orange)}.house-service span{background:var(--blue-soft);border-color:var(--blue-line);color:var(--navy)}
.booking-dialog h2{color:var(--navy);font-family:var(--sans);font-weight:900}.lightbox{background:var(--navy-2)}

.legal-header{background:#fff;color:var(--navy);border-color:var(--blue-line)}.legal-header .desktop-nav a,.legal-header .header-phone{color:var(--navy)}.legal-header .header-phone small{color:var(--muted-blue)}.legal-hero{background:var(--navy)}.legal-hero h1{font-family:var(--sans);font-weight:900;text-transform:uppercase}.legal-document h2,.legal-document h3{color:var(--navy);font-family:var(--sans);font-weight:900}.legal-document li:before,.legal-document a{color:var(--orange)}.legal-note{border-color:var(--orange);background:#fff7f2}.legal-aside{background:var(--blue-soft);border-color:var(--blue-line)}.legal-aside b{color:var(--navy)}

@media(max-width:1180px){.brand img{width:185px}.desktop-nav{gap:16px}.hero-content{width:50%;padding-left:34px}.hero-actions{max-width:420px}.house-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:1000px){
  .site-header{background:#fff}.header-inner{height:76px}.brand img{width:170px;height:54px}.menu-toggle{color:var(--navy)}.mobile-menu.open{top:76px;background:var(--navy);color:#fff}
  .hero{height:auto;min-height:790px;max-height:none}.hero-photo{width:100%;height:47%;clip-path:ellipse(88% 77% at 50% 17%)}.hero-inner{align-items:flex-end;min-height:790px}.hero-content{width:100%;max-width:none;padding:390px 0 60px}.hero h1{font-size:56px;max-width:720px}.hero-copy{max-width:650px}.hero-facts{max-width:680px}
  .online-booking-panel{grid-template-columns:1fr}.house-grid{grid-template-columns:repeat(2,1fr)}.comfort-grid{grid-template-columns:1fr;gap:48px}.comfort-photo{order:2}.comfort-photo img{height:520px}.video-grid{grid-template-columns:1fr;gap:46px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>img{grid-column:1/-1}
}
@media(max-width:700px){
  :root{--shell:min(100% - 28px,640px)}.header-inner{height:68px}.brand img{width:150px;height:48px}.header-inner .button-small{display:none}.menu-toggle{display:block;margin-left:auto}
  .hero{min-height:950px}.hero-photo{height:40%;clip-path:ellipse(96% 70% at 50% 15%)}.hero-inner{min-height:950px}.hero-content{padding:380px 0 108px}.hero h1{font-size:44px}.hero-copy{font-size:15px;margin:18px 0 22px}.hero-actions{flex-direction:row}.hero-actions .button{min-width:0;flex:1;padding:0 12px}.video-link{flex:0 0 58px;font-size:0;padding:0}.hero-facts{margin-top:25px;padding-top:20px;grid-template-columns:1fr 1fr}.hero-facts li:first-child{grid-column:1/-1}.hero-facts li:nth-child(2){border-left:0}
  .online-booking{padding-bottom:68px}.online-booking-panel{width:calc(100% - 16px);padding:30px 18px;border-radius:18px}.online-booking-copy{text-align:left}.online-booking-copy h2{font-size:39px}.online-booking-phone{justify-content:flex-start}
  .section-pad{padding:72px 0}.intro-grid,.section-head{grid-template-columns:1fr;gap:22px}.intro h2,.section-head h2,.comfort h2,.video-section h2,.contacts h2{font-size:42px}.benefits-detailed{grid-template-columns:1fr}.house-grid{grid-template-columns:1fr}.house-card.wide{grid-column:auto}.house-card img,.house-card.wide img{height:245px}.comfort-photo img{height:430px;border-radius:0 70px 0 70px}.amenities{grid-template-columns:1fr}.video-frame:before{inset:-10px 12px 12px -10px;border-radius:34px 0 34px 0}.video-frame video{border-radius:34px 0 34px 0}.stay-conditions{grid-template-columns:1fr}.map-card{border-radius:45px 0 45px 0}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>img{width:210px}.footer-bottom{gap:11px}
  .legal-header{background:#fff}.legal-hero h1{font-size:40px}.whatsapp{display:none}
}

@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
