@font-face{font-family:Josefin;src:url(assets/josefin-sans-300-normal-latin.woff2)}@font-face{font-family:OpenSans;src:url(assets/open-sans-400-normal-latin.woff2)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#171c22;color:#f4f3f3;font:15px/1.85 OpenSans,Arial,sans-serif}h1,h2,h3,nav,.btn{font-family:Josefin,Arial,sans-serif;font-weight:300}h1{font-size:clamp(38px,5vw,68px);line-height:1.2}h2{font-size:clamp(29px,3.6vw,47px);line-height:1.2;margin:0 0 25px}h3{font-size:25px;margin:0 0 15px}p{margin:0 0 18px}a{color:inherit;text-decoration:none}header{position:relative;background:linear-gradient(120deg,#1d2832,#171a20);text-align:center;padding:16px 20px 25px;z-index:3}header.homehead{position:absolute;left:0;right:0;top:0;background:linear-gradient(#1a222af2,#1a222ad9 75%,transparent)}.brand{display:block;width:min(550px,90vw);margin:0 auto 5px}.brand img{width:100%;display:block}nav{display:flex;justify-content:center;gap:clamp(15px,3vw,42px);flex-wrap:wrap;font-size:13px;letter-spacing:.1em}nav a:hover,nav a[aria-current]{color:#b3d3e9}.hero{position:relative;height:95vh;min-height:690px;display:grid;place-items:center;text-align:center;overflow:hidden}.hero video{position:absolute;width:100%;height:100%;object-fit:cover}.hero-content{position:relative;z-index:1;padding:230px 25px 30px;text-shadow:0 2px 15px #000b}.container{max-width:1150px;margin:auto;padding:88px 28px}.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px}.split img{width:100%;height:410px;object-fit:cover}.reverse img{order:2}.teaser{background:#20262d}.smallcaps{text-transform:uppercase;letter-spacing:.14em;color:#b7cee0;font-size:17px;margin-bottom:14px;font-family:Josefin,Arial,sans-serif}.btn{display:inline-block;background:#a7c1d5;color:#161b21;padding:11px 26px;text-transform:uppercase;letter-spacing:.1em;font:13px Josefin,Arial,sans-serif;margin-top:18px}.quote{font-style:italic;font-size:19px;border-left:2px solid #a7c1d5;padding-left:22px;margin:0 0 25px}.expect{background:#1d242b;text-align:center}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:35px}.cards article{background:#29313a;padding:32px;text-align:left}.cta{text-align:center;background:#252f3a;padding:80px 20px}.cta h2{margin:0 0 10px}.pagehero{position:relative;min-height:470px;display:grid;align-items:end;background-size:cover;background-position:center}.pagehero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#111820b5,#11182025)}.pagehero>div{position:relative;z-index:1;width:min(1150px,100%);margin:auto;padding:100px 28px 55px}.pagehero p{font:24px Josefin,Arial,sans-serif}.intro{max-width:900px}.service-list{background:#1c232b}.service-item{border-top:1px solid #53616e;display:grid;grid-template-columns:1fr 1.6fr;gap:45px;padding:30px 0}.service-item h3{color:#f7f7f7}.service-item p{color:#d6dce2}.service-item:last-child{border-bottom:1px solid #53616e}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px 70px}.service-grid article{border-top:1px solid #52616e;padding-top:25px}.service-grid p{color:#d6dce2}.footer{border-top:1px solid #52616e;background:#1b1d20}.footer-grid{max-width:1100px;margin:auto;padding:45px 25px;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:55px}.footer-grid .brand{width:300px;max-width:100%;margin:0}.footer-grid h3{font:600 15px OpenSans,Arial;margin:0 0 12px}.footer-grid a{display:block;font-size:13px;line-height:1.65}.footer-grid p{font-size:13px}.legal{border-top:1px solid #4c535d;text-align:center;padding:18px;font-size:11px;color:#c1c4c8}.legal a{display:inline}.preview-note{font-size:11px;color:#c2cbd4;text-align:center;padding:10px 20px;background:#28333f}.contact-info{font-size:18px}.contact-info a{color:#b9d6e8}.photo-note{font-size:12px;color:#b9c3cc}@media(max-width:760px){header{padding:12px 10px 22px}.brand{width:min(430px,93vw)}nav{font-size:10px;gap:9px 15px}.hero{height:85vh;min-height:590px}.hero-content{padding-top:230px}.container{padding:65px 22px}.split,.service-item,.service-grid,.footer-grid{grid-template-columns:1fr;gap:25px}.split img{height:280px}.reverse img{order:0}.cards{grid-template-columns:1fr}.pagehero{min-height:350px}.pagehero>div{padding:70px 22px 30px}.footer-grid .brand{margin:0}.footer-grid{padding:35px 22px}.service-item{gap:4px}}
/* Revision 2 — consistent sitewide header, clear hierarchy and restored hero brightness */
header{padding-bottom:36px}header .brand{margin-bottom:21px}nav{font-size:16px;gap:clamp(22px,3.5vw,55px)}
header.homehead{background:linear-gradient(#1a222af2,#1a222ad2 70%,transparent)}
.hero-content{text-shadow:0 2px 5px #17202b88,0 1px 15px #17202b44}
.smallcaps{font-size:22px}
.pagehero{min-height:395px;align-items:center}.pagehero:before{background:linear-gradient(90deg,#11182072,#11182015)}.pagehero>div{padding:70px 28px;text-align:center}.pagehero h1{font-size:clamp(33px,4vw,53px);margin:0 0 22px}.pagehero p{font-size:clamp(17px,2vw,23px);margin:0}.intro h2{font-size:clamp(29px,3.1vw,41px)}
.service-grid{display:block;padding-top:45px;padding-bottom:45px}.lifestyle-row{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding:40px 0;border-top:1px solid #52616e}.lifestyle-row.image-left img{order:-1}.lifestyle-row img{width:100%;height:300px;object-fit:cover}.lifestyle-row:last-child img{object-position:center 40%}.lifestyle-row p{color:#d6dce2}
.contact-hero{height:370px;background:url('assets/contact-sea-preview.webp') center center/cover;display:flex;align-items:center}.contact-hero>div{max-width:1150px;margin:auto;width:100%;padding:25px}.contact-hero h1{font-size:clamp(36px,4vw,56px);margin:0 0 12px}.contact-hero p{font-size:18px}
.footer-grid a{margin-bottom:2px}
@media(max-width:760px){header .brand{margin-bottom:18px}nav{font-size:12px;gap:10px 18px}.pagehero{min-height:300px}.pagehero>div{padding:45px 22px}.lifestyle-row{grid-template-columns:1fr;gap:22px}.lifestyle-row.image-left img{order:0}.lifestyle-row img{height:270px}.contact-hero{height:280px}}

/* Approved refinements – October 2026 */
.pagehero>div{transform:translateY(25px)}.pagehero h1{margin-bottom:0}.property-intro{max-width:1150px}.property-intro img{height:480px;object-position:center 55%}.property-intro p{max-width:510px}.footer-icon{display:inline-block;width:22px;color:#aec5d6;font-size:17px}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.contact-layout h2{font-size:clamp(27px,3vw,36px)}.contact-entry{display:flex;align-items:start;gap:14px;margin:0 0 28px}.contact-square{background:#a6bed1;color:#fff;width:44px;height:44px;display:grid;place-items:center;border-radius:5px;font-size:24px}.contact-entry strong,.contact-entry a{display:block}.contact-entry a{font-size:14px}.form-preview label{display:block;font-size:13px;margin-bottom:17px}.form-preview input,.form-preview textarea{display:block;width:100%;background:#fff;border:1px solid #d9dde1;border-radius:4px;margin-top:7px;padding:12px;font:15px Arial;opacity:1}.form-notice{color:#c7d2dc;font-size:12px;line-height:1.7}.contact-hero{background-position:center 32%}.contact-hero>div{padding-left:45px}.contact-hero h1{font-family:Josefin,Arial,sans-serif;font-weight:300}.contact-hero p{margin:0}.contact-layout{padding-top:72px;padding-bottom:85px}@media(max-width:760px){.contact-layout{grid-template-columns:1fr;gap:35px}.property-intro img{height:380px}.contact-hero>div{padding-left:25px}}

/* Final combined preview — approved visual refinements */
header .brand{margin-bottom:30px}nav{font-size:clamp(13px,1.4vw,17px);gap:clamp(23px,4vw,65px)}
.smallcaps{font-size:clamp(22px,2.5vw,27px)}
.cards article h3{font-size:clamp(18px,1.7vw,22px);white-space:nowrap;letter-spacing:-.025em}
.cards article{padding:30px 26px}
.footer-brand{text-align:center}.footer-brand .brand{margin:0 auto}.footer-brand p{margin:7px auto 0;text-align:center;white-space:nowrap;font-size:12px}
.footer-contact{display:flex!important;align-items:center;gap:10px;margin-bottom:8px!important}.footer-contact svg,.contact-square svg{width:18px;height:18px;fill:currentColor;color:#b4d2e5;flex-shrink:0}.contact-square svg{width:24px;height:24px;color:white}
.centered-property-intro{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:1150px;gap:0}
.centered-property-intro p{max-width:730px;margin:0 auto 42px}.centered-property-intro img{width:100%;height:auto;max-height:570px;aspect-ratio:16/8;object-fit:cover;object-position:center 45%;display:block}
.pagehero{background-position:center center}.pagehero:before{background:linear-gradient(#101a2138,#101a2140)}
.lifestyle-row img{height:350px}.lifestyle-row.image-left img{order:-1}.lifestyle-row:last-child img{object-position:center center}
.contact-hero{background-image:url('assets/contact.jpg');background-position:center 16%;height:375px}
.contact-hero h1{font-family:Josefin,Arial,sans-serif;font-weight:400}
@media(max-width:850px){.cards article h3{white-space:normal}.footer-brand p{white-space:normal}}
@media(max-width:760px){nav{font-size:12px;gap:10px 18px}.lifestyle-row.image-left img{order:0}.centered-property-intro img{aspect-ratio:4/3}.contact-hero{height:300px;background-position:center 12%}}

/* Final approved alignment adjustments — Lifestyle Services */
.lifestyle-hero{background-size:115% auto;background-position:left center;background-repeat:no-repeat;background-color:#08748b}
.lifestyle-hero>div{width:100%;max-width:none;transform:none;text-align:center;padding:0 20px}
.lifestyle-hero h1{margin:0;font-size:clamp(32px,3.6vw,49px);white-space:nowrap}
.lifestyle-intro{text-align:center;max-width:900px}
.lifestyle-intro h2{margin-left:auto;margin-right:auto}
.lifestyle-intro p{max-width:620px;margin:0 auto}
/* Preserve original sea photograph; keep pink swimmer below the top edge, no beach */
.contact-hero{background-image:url('assets/contact.jpg');background-position:center 2%;background-size:cover}
@media(max-width:760px){.lifestyle-hero{background-size:cover;background-position:32% center}.lifestyle-hero h1{font-size:clamp(26px,6vw,38px);white-space:normal}.contact-hero{background-position:50% 0%}}

/* Bilingual preview language navigation */
header nav .lang-switch{opacity:.85;border-left:1px solid rgba(255,255,255,.3);padding-left:15px;margin-left:4px;font-size:.85em}
/* Approved final visual correction: no separator above the final Lifestyle villa image */
.lifestyle-row:last-child{border-top:0}

/* Approved mobile refinements — October 2026. Desktop remains unchanged. */
.mobile-menu-toggle{display:none}
@media(max-width:760px){
 header{padding:12px 12px 22px}
 header .brand{margin-bottom:10px}
 .mobile-menu-toggle{display:block;margin:0 auto;border:1px solid #8294a4;background:transparent;color:#f0f2f4;border-radius:3px;min-width:48px;min-height:42px;font-size:25px;line-height:1;cursor:pointer}
 header nav{display:none;flex-direction:column;align-items:center;gap:0;padding:13px 0 5px}
 header nav.is-open{display:flex}
 header nav a{display:block;padding:11px 8px;font-size:14px;letter-spacing:.08em}
 header nav .lang-switch{border-left:0;border-top:1px solid #596674;padding:13px 25px 4px;margin:8px 0 0}
 .hero-content{text-shadow:0 2px 7px #0c1825,0 0 16px #0c1825bb}
 /* Home: each section reads text first, then its approved image. */
 #philosophy,#property .split,#lifestyle .split,.teaser .split{display:flex;flex-direction:column;align-items:stretch;gap:25px}
 #philosophy>div,#property .split>div,#lifestyle .split>div,.teaser .split>div{order:1}
 #philosophy>img,#property .split>img,#lifestyle .split>img,.teaser .split>img{order:2}
 .footer-grid{gap:34px}
 .footer-brand{padding-bottom:12px}
 .footer-brand p{margin-top:12px}
 .mobile-keep-together{display:block;white-space:nowrap}
 .service-list h2{font-size:clamp(23px,6.4vw,30px);letter-spacing:-.025em}
}
@media(max-width:375px){.mobile-keep-together{white-space:normal}}


/* Final bilingual mobile refinements — desktop styles remain intact. */
@media (max-width:760px){
 header,header.homehead{z-index:20}
 header .brand{margin:0 auto 12px;display:block}
 .mobile-menu-toggle{display:flex;align-items:center;justify-content:center;margin:0 auto;position:relative;left:0;right:0;transform:none;width:46px;height:42px;min-width:46px;border:1px solid #8294a4;background:#1c2833;color:#f0f2f4;line-height:1;cursor:pointer}
 header nav{display:none!important;position:relative;width:100%;max-width:100%;margin:12px auto 0;padding:14px 12px 17px;background:#1b2631;flex-direction:column;align-items:center;justify-content:center;gap:0;box-shadow:0 10px 22px #0005;z-index:30}
 header nav.is-open{display:flex!important}
 header nav a{display:block;text-align:center;width:100%;padding:11px 6px;line-height:1.45;font-size:13px;letter-spacing:.07em}
 header nav .lang-switch{width:auto;min-width:90px;margin:8px auto 0;padding:15px 20px 4px;border-left:0;border-top:1px solid #637587;text-align:center}
 .homehead .hero-content{position:relative}
 /* Text/photo alternation applies only to homepage sections. */
 body>section#philosophy,body>section#property .split,body>section#lifestyle .split,body>section.teaser .split{display:flex;flex-direction:column;align-items:stretch;gap:25px}
 body>section#philosophy>div,body>section#property .split>div,body>section#lifestyle .split>div,body>section.teaser .split>div{order:1}
 body>section#philosophy>img,body>section#property .split>img,body>section#lifestyle .split>img,body>section.teaser .split>img{order:2}
 .footer-grid{row-gap:38px}
 .footer-brand{padding-bottom:16px}
 .service-list h2{font-size:clamp(27px,7.1vw,34px);line-height:1.2;margin-bottom:30px}
 .service-list .service-item h3{font-size:clamp(21px,5.2vw,25px);line-height:1.3}
 .mobile-slogan{display:block;white-space:nowrap}
 /* Shift the Lifestyle yacht image while keeping title centered and desktop unchanged. */
 .lifestyle-hero{background-position:24% center}
 .lifestyle-hero>div{text-align:center}
}
@media(max-width:375px){.mobile-slogan{white-space:nowrap}}

/* Final mobile-only correction: fixed visual alignment and non-overlapping navigation.
   Desktop and approved footer remain unchanged. */
@media(max-width:760px){
  body>header,body>header.homehead{position:relative;left:auto;right:auto;top:auto;width:100%;padding:12px 12px 18px;text-align:center;background:#1b2631;z-index:20}
  body>header .brand{display:block;width:min(430px,93vw);margin:0 auto 10px}
  body>header .mobile-menu-toggle{display:flex;position:static;float:none;clear:both;margin:0 auto;width:46px;min-width:46px;height:42px;align-items:center;justify-content:center;transform:none}
  body>header nav{position:static;margin:12px auto 0;width:100%;background:#1b2631;box-shadow:none}
  body>header nav:not(.is-open){display:none!important}
  body>header nav.is-open{display:flex!important}
  body>header.homehead + .hero{height:75vh;min-height:480px}
  body>header.homehead + .hero .hero-content{padding:30px 22px}
  /* Text immediately followed by its original approved image, in each home section. */
  body>section#philosophy,body>section#lifestyle,body>section#property>.split,body>section.teaser>.split{display:flex;flex-direction:column;align-items:stretch;gap:25px}
  body>section#philosophy>div,body>section#lifestyle>div,body>section#property>.split>div,body>section.teaser>.split>div{order:1}
  body>section#philosophy>img,body>section#lifestyle>img,body>section#property>.split>img,body>section.teaser>.split>img{order:2}
}

/* Approved bilingual Villas & Stays slogan: own line on desktop and mobile. */
.service-copy .mobile-slogan{display:block;white-space:nowrap;margin-top:0.35em}

/* Final mobile-only refinements: exact centred navigation and yacht-safe heading.
   No desktop, photography, footer, or page content changes. */
@media (max-width:760px) {
  body > header, body > header.homehead {
    display:grid;
    grid-template-columns:minmax(0,1fr);
    justify-items:center;
    align-items:center;
  }
  body > header > .brand {grid-column:1;justify-self:center;margin-inline:auto}
  body > header > .mobile-menu-toggle {
    grid-column:1;justify-self:center;align-self:center;
    box-sizing:border-box;left:auto;right:auto;margin-inline:auto;
    padding:0;text-align:center;transform:none;
  }
  body > header > nav {grid-column:1;justify-self:stretch}
  /* Yacht sits on the right of the original image. Keep mobile heading in the sea. */
  .lifestyle-hero {background-position:left center}
  .lifestyle-hero > div {
    width:69%;max-width:69%;margin:0 auto 0 0;
    padding:0 6px 0 12px;
    text-align:center;
  }
  .lifestyle-hero h1 {
    font-size:clamp(20px,5.4vw,28px);
    line-height:1.22;
    white-space:normal;
    overflow-wrap:normal;
    text-wrap:balance;
  }
}

/* Five-language preview: language selector only. Existing design rules retained. */
header nav .language-options{display:inline-flex;align-items:center;gap:7px;border-left:1px solid rgba(255,255,255,.3);padding-left:12px;margin-left:4px;white-space:nowrap;font-size:.79em;letter-spacing:.06em}
header nav .language-options a{opacity:.65;padding:3px 1px}
header nav .language-options a.selected-language{opacity:1;text-decoration:underline;text-underline-offset:5px}
@media(max-width:760px){header nav .language-options{display:flex;justify-content:center;width:100%;margin:8px 0 0;padding:9px 0 0;border-left:0;border-top:1px solid #596674;gap:13px}header nav .language-options a{padding:7px 3px;font-size:13px}}
