:root{--sand:#F5F0E8;--white:#FFFFFF;--navy:#1B3A4B;--ocean:#2E7D8C;--seafoam:#A8C5C0;--coral:#C9715A;--driftwood:#8B7355}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'DM Sans',sans-serif;font-weight:300;color:var(--navy);background:var(--sand);overflow-x:hidden}
.lang-bar{position:fixed;top:20px;right:28px;z-index:200;display:flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.18em}
.lang-bar span{color:rgba(255,255,255,.3)}
.lb{background:none;border:none;cursor:pointer;font-family:'DM Sans',sans-serif;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.5);font-weight:300;transition:color .2s}
.lb.active{color:#fff;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.float-deco{position:fixed;top:0;bottom:0;width:80px;pointer-events:none;z-index:50;overflow:hidden}
.float-deco.left{left:0}.float-deco.right{right:0}
.deco-svg{width:100%;height:100%}
#hero{position:relative;width:100%;height:100vh;min-height:580px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.hbg{position:absolute;inset:0;background:linear-gradient(155deg,#0a1e2e,#1B3A4B 40%,#2E7D8C 80%,#5a9a97)}
.himg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.32}
.hov{position:absolute;inset:0;background:rgba(15,35,52,.45)}
.hcont{position:relative;z-index:2;text-align:center;padding:0 24px}
.eyebrow{font-size:11px;font-weight:300;letter-spacing:.3em;text-transform:uppercase;color:var(--seafoam);margin-bottom:18px;opacity:.85}
.hero-title{font-family:'Cormorant Garamond',serif;font-size:clamp(66px,11vw,128px);font-weight:300;font-style:italic;color:#fff;line-height:.9}
.tagline{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--seafoam);margin-top:22px;opacity:.78}
.cta{display:inline-block;margin-top:40px;padding:13px 38px;border:1px solid rgba(255,255,255,.6);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#fff;text-decoration:none;transition:background .3s,color .3s;cursor:pointer}
.cta:hover{background:#fff;color:var(--navy)}
.bubbles{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.bubble{position:absolute;border-radius:50%;background:rgba(168,197,192,.12);animation:rise linear infinite}
@keyframes rise{0%{transform:translateY(100vh) scale(0);opacity:0}10%{opacity:1}90%{opacity:.5}100%{transform:translateY(-120px) scale(1);opacity:0}}
.seagrass{position:absolute;bottom:0;pointer-events:none}
.seagrass.left{left:20px}.seagrass.right{right:20px}
.wave-div{width:100%;overflow:hidden;line-height:0;background:var(--sand)}
.wave-div svg{display:block;width:100%}
#intro{background:var(--sand);padding:96px 0;position:relative;overflow:hidden}
.cont{max-width:1160px;margin:0 auto;padding:0 44px}
.igrid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
.orn{width:40px;height:1px;background:var(--ocean);display:block;margin-bottom:26px}
.slabel{font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--ocean);font-weight:400;margin-bottom:14px;display:block}
.sh2{font-family:'Cormorant Garamond',serif;font-size:clamp(32px,4.5vw,50px);font-weight:300;font-style:italic;line-height:1.2;color:var(--navy);margin-bottom:26px}
.bp{font-size:15px;line-height:1.85;color:var(--driftwood);margin-bottom:16px}
.iimg{aspect-ratio:3/4;overflow:hidden;position:relative}
.iimg img{width:100%;height:100%;object-fit:cover;display:block}
#highlights{background:var(--white);padding:96px 0;border-top:1px solid rgba(46,125,140,.1);border-bottom:1px solid rgba(46,125,140,.1)}
.shdr{text-align:center;margin-bottom:64px}
.hgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:52px}
.hi{text-align:center}
.hico{width:32px;height:32px;margin:0 auto 22px;color:var(--ocean)}
.hi h3{font-family:'Cormorant Garamond',serif;font-size:21px;font-weight:400;color:var(--navy);margin-bottom:11px}
.hi p{font-size:14px;line-height:1.8;color:var(--driftwood)}
#gallery{background:var(--sand);padding:72px 0}
.gallery-header{text-align:center;margin-bottom:40px}
.gallery-header h2{font-family:'Cormorant Garamond',serif;font-size:clamp(28px,4vw,40px);font-weight:300;font-style:italic;color:var(--navy)}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:220px;gap:4px}
.gi{overflow:hidden;cursor:pointer;position:relative}


.gi img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .65s ease}
.gi:hover img{transform:scale(1.07)}
.gov{position:absolute;inset:0;background:rgba(27,58,75,0);display:flex;align-items:center;justify-content:center;transition:background .4s}
.gi:hover .gov{background:rgba(27,58,75,.42)}
.gov span{color:#fff;font-size:10px;letter-spacing:.22em;text-transform:uppercase;opacity:0;transition:opacity .35s .08s}
.gi:hover .gov span{opacity:1}
#info{background:var(--sand);padding:96px 0;border-top:1px solid rgba(46,125,140,.12)}
.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:52px;margin-bottom:64px}
.ic .il{font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--ocean);font-weight:400;display:block;margin-bottom:18px}
.ic p{font-family:'Cormorant Garamond',serif;font-size:18px;font-weight:300;color:var(--navy);line-height:1.75;white-space:pre-line}
.mwrap{border:1px solid rgba(168,197,192,.4);overflow:hidden}
.mwrap iframe{display:block;width:100%;height:340px;border:none;filter:grayscale(15%)}
.ocean-scene{position:relative;width:100%;line-height:0;overflow:hidden;display:block}
.ocean-svg{display:block;width:100%;height:auto}
footer{background:var(--navy);padding:44px 0 0;text-align:center;position:relative;overflow:hidden}
.fn{font-family:'Cormorant Garamond',serif;font-size:clamp(34px,5.5vw,60px);font-weight:300;color:#fff;position:relative;z-index:1}
.ft{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--seafoam);opacity:.7;margin-top:14px;font-weight:300;position:relative;z-index:1}
.fdiv{width:36px;height:1px;background:rgba(168,197,192,.25);margin:26px auto;position:relative;z-index:1}
.fc{font-size:11px;letter-spacing:.1em;color:rgba(255,255,255,.22);font-weight:300;position:relative;z-index:1;padding-bottom:28px;display:block}
.fade-up{opacity:0;transform:translateY(28px);transition:opacity .7s ease-out,transform .7s ease-out}
.fade-up.vis{opacity:1;transform:translateY(0)}
@media(max-width:768px){
  .float-deco{display:none}
  .cont{padding:0 22px}
  .igrid{grid-template-columns:1fr;gap:36px}
  .iimg{aspect-ratio:4/3}
  .hgrid{grid-template-columns:1fr;gap:44px}
  .gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:160px}
  
  .info-grid{grid-template-columns:1fr;gap:36px}
  .lang-bar{top:14px;right:18px}
}
