:root{--gold:#c9a84c;--gold-l:#e8cc7a;--em:#0d3d2e;--em-m:#0f5c43;--em-b:#1a7a5a;--dark:#080c0a;--dark2:#0d1410;--cream:#f0ead6;--white:#faf8f2}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--dark);color:var(--white);font-family:'Montserrat',sans-serif;font-weight:300;overflow-x:hidden;cursor:none}
.cursor{position:fixed;width:8px;height:8px;background:var(--gold);border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%,-50%)}
.cursor-ring{position:fixed;width:36px;height:36px;border:1px solid rgba(201,168,76,.4);border-radius:50%;pointer-events:none;z-index:9998;transform:translate(-50%,-50%);transition:width .3s,height .3s}
body::before{content:'';position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");opacity:.03;pointer-events:none;z-index:9000}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:200;padding:22px 60px;display:flex;justify-content:space-between;align-items:center;background:rgba(8,12,10,.94);backdrop-filter:blur(20px);border-bottom:1px solid rgba(201,168,76,.08)}
.logo{font-family:'Cormorant Garamond',serif;font-size:24px;font-weight:400;letter-spacing:8px;color:var(--gold-l)}
.logo sup{font-size:12px;letter-spacing:3px;color:rgba(201,168,76,.8);margin-left:2px}
.nav-links{display:flex;gap:36px;list-style:none}
.nav-links a{font-size:12px;font-weight:500;letter-spacing:2px;text-transform:uppercase;color:rgba(240,234,214,.85);text-decoration:none;transition:color .3s}
.nav-links a:hover{color:var(--gold-l)}
.nav-right{display:flex;align-items:center;gap:20px}
.nav-live{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:500;letter-spacing:2px;text-transform:uppercase;color:rgba(240,234,214,.85)}
.nav-dot{width:6px;height:6px;border-radius:50%;background:#22c55e;animation:dotPulse 2s infinite}
@keyframes dotPulse{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(34,197,94,.5)}70%{box-shadow:0 0 0 8px rgba(34,197,94,0)}}
.nav-cta{font-size:11px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;color:var(--dark);background:var(--gold);padding:12px 26px;text-decoration:none;transition:all .3s}
.nav-cta:hover{background:var(--gold-l)}

/* MOBILE MENU */
.menu-btn{display:none; color:var(--gold); font-size:26px; cursor:pointer;}
.mobile-menu{position:fixed; inset:0; background:rgba(8,12,10,0.98); z-index:201; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:30px; transform:translateY(-100%); transition:transform 0.4s ease; backdrop-filter:blur(20px);}
.mobile-menu.open{transform:translateY(0);}
.mobile-menu a{color:var(--cream); font-size:16px; font-weight:500; letter-spacing:4px; text-transform:uppercase; text-decoration:none; transition:color 0.3s;}
.mobile-menu a:hover{color:var(--gold);}
.mobile-close{position:absolute; top:24px; right:24px; font-size:32px; color:rgba(240,234,214,.5); cursor:pointer; transition:color 0.2s;}
.mobile-close:hover{color:var(--gold);}

/* HERO */
.hero{position:relative;height:100vh;min-height:720px;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;padding-top:70px}
.hero-left{position:relative;display:flex;flex-direction:column;justify-content:center;padding:60px 60px 60px 80px;z-index:2;background:linear-gradient(135deg,rgba(8,12,10,1) 0%,rgba(13,30,20,.95) 100%)}
.hero-right{position:relative;overflow:hidden}
.hero-single-img{position:absolute;inset:0;}
.hero-single-img img{width:100%;height:100%;object-fit:cover;transition:transform 12s ease;}
.hero-right:hover .hero-single-img img{transform:scale(1.08);}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,12,10,.95) 0%,rgba(8,12,10,.4) 40%,transparent 100%);z-index:1}

/* LIVE DASHBOARD (JUNKET MONEY) */
.hero-dash{position:absolute;top:50%;right:80px;transform:translateY(-50%);background:rgba(13,20,16,.65);backdrop-filter:blur(16px);border:1px solid rgba(201,168,76,.2);padding:32px;width:340px;z-index:10;box-shadow:0 30px 60px rgba(0,0,0,.6);opacity:0;animation:fadeUp .8s 1s forwards}
.dash-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}
.dash-title{font-size:12px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--gold)}
.dash-badge{font-size:10px;font-weight:600;padding:4px 10px;background:rgba(34,197,94,.15);border:1px solid rgba(34,197,94,.4);color:#4ade80;text-transform:uppercase;letter-spacing:1px;display:flex;align-items:center;gap:6px}
.dash-badge::before{content:'';width:5px;height:5px;background:#4ade80;border-radius:50%;animation:dotPulse 1.5s infinite}
.dash-row{margin-bottom:18px}
.dash-lbl{font-size:12px;font-weight:500;letter-spacing:2px;color:rgba(240,234,214,.9);text-transform:uppercase;margin-bottom:6px}
.dash-val{font-family:'Montserrat',sans-serif;font-size:32px;font-weight:400;color:var(--white);letter-spacing:1px}
.dash-bar-bg{width:100%;height:5px;background:rgba(255,255,255,.1);border-radius:2px;margin-top:10px;overflow:hidden}
.dash-bar-fill{height:100%;width:78%;background:linear-gradient(90deg,var(--gold),var(--gold-l));animation:barLoad 2s ease-out}
@keyframes barLoad{from{width:0}to{width:78%}}
.dash-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px;padding-top:24px;border-top:1px solid rgba(255,255,255,.1)}
.dg-val{font-size:20px;color:var(--gold-l);font-family:'Montserrat',sans-serif;margin-top:4px}

.hero-tag{display:inline-flex;align-items:center;gap:12px;font-size:11px;font-weight:500;letter-spacing:4px;text-transform:uppercase;color:var(--gold);margin-bottom:28px;opacity:0;animation:fadeUp .8s .2s forwards}
.hero-tag::before,.hero-tag::after{content:'';width:24px;height:1px;background:var(--gold);opacity:.5}
.hero-h1{font-family:'Cormorant Garamond',serif;font-size:clamp(52px,6vw,96px);font-weight:300;line-height:.92;color:var(--cream);margin-bottom:20px;opacity:0;animation:fadeUp .8s .35s forwards}
.hero-h1 em{font-style:italic;color:var(--gold-l);display:block}
.hero-desc{font-size:15px;font-weight:400;line-height:1.9;color:rgba(240,234,214,.9);max-width:480px;margin-bottom:44px;opacity:0;animation:fadeUp .8s .5s forwards}
.hero-btns{display:flex;gap:14px;flex-wrap:wrap;opacity:0;animation:fadeUp .8s .65s forwards}
.btn-gold{display:inline-flex;align-items:center;gap:9px;padding:16px 40px;background:linear-gradient(135deg,var(--gold),#a8893a);color:var(--dark);font-size:11px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;text-decoration:none;transition:opacity .3s;position:relative;overflow:hidden}
.btn-gold::after{content:'';position:absolute;inset:0;background:rgba(255,255,255,.15);transform:translateX(-100%);transition:.4s}
.btn-gold:hover::after{transform:translateX(0)}
.btn-ghost{display:inline-flex;align-items:center;gap:9px;padding:16px 40px;border:1px solid rgba(201,168,76,.4);color:var(--gold-l);font-size:11px;font-weight:500;letter-spacing:2.5px;text-transform:uppercase;text-decoration:none;transition:all .3s}
.btn-ghost:hover{background:rgba(201,168,76,.15);border-color:var(--gold)}
.hero-stats{display:flex;gap:40px;margin-top:52px;padding-top:36px;border-top:1px solid rgba(201,168,76,.15);opacity:0;animation:fadeUp .8s .8s forwards}
.hstat-val{font-family:'Cormorant Garamond',serif;font-size:36px;font-weight:300;color:var(--gold-l);line-height:1}
.hstat-lbl{font-size:11px;font-weight:500;letter-spacing:2px;text-transform:uppercase;color:rgba(240,234,214,.8);margin-top:6px}

/* TRUST BAR */
.trust-bar{background:rgba(13,61,46,.2);border-top:1px solid rgba(201,168,76,.1);border-bottom:1px solid rgba(201,168,76,.1);padding:20px 60px;display:flex;justify-content:space-around;align-items:center;flex-wrap:wrap;gap:16px}
.trust-item{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:500;letter-spacing:2px;text-transform:uppercase;color:rgba(240,234,214,.85)}
.trust-val{font-family:'Cormorant Garamond',serif;font-size:24px;font-weight:300;color:var(--gold-l);margin-right:4px}
.live-badge{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;letter-spacing:2px;color:#4ade80}
.ldot{width:6px;height:6px;border-radius:50%;background:#4ade80;animation:dotPulse 2s infinite}

/* TICKER */
.ticker{background:var(--dark2);padding:16px 0;overflow:hidden}
.t-track{display:flex;animation:tMove 35s linear infinite;width:max-content}
.t-item{display:flex;align-items:center;gap:12px;padding:0 40px;font-size:13px;font-weight:500;letter-spacing:2px;text-transform:uppercase;color:rgba(240,234,214,.8);white-space:nowrap;border-right:1px solid rgba(255,255,255,.08)}
.t-item b{color:var(--gold)}
@keyframes tMove{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* SECTION */
.sec{padding:120px 80px;max-width:1400px;margin:0 auto}
.slabel{font-size:12px;font-weight:600;letter-spacing:4px;text-transform:uppercase;color:var(--gold);margin-bottom:16px;display:flex;align-items:center;gap:12px}
.slabel::before{content:'';width:24px;height:1px;background:var(--gold);opacity:.6}
.stitle{font-family:'Cormorant Garamond',serif;font-size:clamp(40px,5vw,64px);font-weight:300;color:var(--cream);margin-bottom:16px;line-height:1.05}
.stitle em{font-style:italic;color:var(--gold-l)}
.sdesc{font-size:15px;font-weight:400;line-height:2;color:rgba(240,234,214,.85)}

/* HOTEL GALLERY */
.hotel-gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:280px 280px;gap:6px;margin-top:60px}
.hg-cell{position:relative;overflow:hidden;background-size:cover;background-position:center;cursor:pointer}
.hg-cell:first-child{grid-row:1/3}
.hg-cell::after{content:'';position:absolute;inset:0;background:linear-gradient(160deg,transparent 40%,rgba(8,12,10,.8));transition:opacity .4s}
.hg-cell:hover::after{opacity:.4}
.hg-cell img{width:100%;height:100%;object-fit:cover;transition:transform 6s ease}
.hg-cell:hover img{transform:scale(1.07)}
.hg-label{position:absolute;bottom:20px;left:20px;z-index:2;font-size:11px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;color:rgba(255,255,255,.95);background:rgba(8,12,10,.7);padding:8px 16px;backdrop-filter:blur(6px); border: 1px solid rgba(201,168,76,.4)}

/* LIFESTYLE GALLERY */
.life-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(320px, 1fr));gap:24px;margin-top:50px}
.life-card{position:relative;height:380px;background:#000;overflow:hidden;border:1px solid rgba(201,168,76,.15);border-radius:4px; cursor: pointer;}
.life-card img{width:100%;height:100%;object-fit:cover;transition:transform 8s ease, filter .3s}
.life-card:hover img{transform:scale(1.1);filter:brightness(0.7)}
.life-overlay{position:absolute;bottom:0;left:0;right:0;padding:36px 24px;background:linear-gradient(0deg, rgba(8,12,10,.95) 0%, transparent 100%);z-index:2}
.life-cat{font-size:10px;font-weight:600;color:var(--gold);letter-spacing:3px;text-transform:uppercase;margin-bottom:8px}
.life-title{font-family:'Cormorant Garamond',serif;font-size:26px;color:var(--white)}
.jackpot-badge{position:absolute;top:20px;right:20px;background:rgba(201,168,76,.3);backdrop-filter:blur(8px);border:1px solid var(--gold);color:var(--white);font-size:11px;font-weight:600;padding:8px 16px;letter-spacing:2px;z-index:3;animation:flashBg 2s infinite; box-shadow: 0 0 20px rgba(201,168,76,0.4)}
@keyframes flashBg{0%,100%{background:rgba(201,168,76,.3)}50%{background:rgba(201,168,76,.6)}}

/* BOOKING TABS */
.booking-sec{padding:120px 80px;max-width:1400px;margin:0 auto;background:rgba(13,20,16,.2)}
.tab-row{display:flex;gap:4px;margin-bottom:48px;border-bottom:1px solid rgba(201,168,76,.15);flex-wrap:wrap}
.tab-btn{padding:16px 36px;background:none;border:none;font-family:'Montserrat',sans-serif;font-size:12px;font-weight:500;letter-spacing:2.5px;text-transform:uppercase;color:rgba(240,234,214,.6);cursor:pointer;transition:all .3s;border-bottom:2px solid transparent;margin-bottom:-1px}
.tab-btn.active{color:var(--gold-l);border-bottom-color:var(--gold);font-weight:600}
.tab-panel{display:none}
.tab-panel.active{display:block;animation:fadeUp .4s ease}

/* BOOKING SLIDER FOR SUITES AND GOLF */
.bk-slider-wrap { position: relative; width: 100%; margin-top: 20px; }
.bk-slider-view { overflow: hidden; width: 100%; border-radius: 4px; }
.bk-slider-track { display: flex; transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1); }
.bk-slide { min-width: 100%; flex-shrink: 0; display: flex; justify-content: center; }
.bk-slide > .golf-wrap { width: 100%; max-width: 800px; margin: 0 auto; }
.bk-nav-btn { position: absolute; top: 50%; transform: translateY(-50%); width: 44px; height: 44px; background: rgba(8,12,10,0.9); border: 1px solid rgba(201,168,76,0.5); color: var(--gold); border-radius: 50%; display: flex; align-items: center; justify-content: center; cursor: pointer; z-index: 10; font-size: 22px; transition: all 0.3s; box-shadow: 0 10px 30px rgba(0,0,0,0.8); }
.bk-nav-btn:hover { background: var(--gold); color: var(--dark); transform: translateY(-50%) scale(1.1); }
.bk-prev { left: -20px; }
.bk-next { right: -20px; }

/* JUNKET ROOM GRID */
.rest-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:24px}
.rest-card{background:rgba(13,20,16,.7);border:1px solid rgba(201,168,76,.15);overflow:hidden;transition:all .35s}
.rest-card:hover{border-color:rgba(201,168,76,.4);transform:translateY(-4px);box-shadow:0 20px 60px rgba(0,0,0,.6)}
.rest-img{height:220px;position:relative;overflow:hidden}
.rest-img img{width:100%;height:100%;object-fit:cover;transition:transform 5s ease}
.rest-card:hover .rest-img img{transform:scale(1.08)}
.rest-badge{position:absolute;top:16px;left:16px;padding:6px 14px;background:var(--gold);font-size:10px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--dark)}
.rest-body{padding:26px}
.rest-name{font-family:'Cormorant Garamond',serif;font-size:24px;color:var(--cream);margin-bottom:6px}
.rest-type{font-size:11px;font-weight:500;letter-spacing:2px;text-transform:uppercase;color:rgba(240,234,214,.8);margin-bottom:16px}
.rest-meta{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:18px}
.rest-mi{font-size:11px;font-weight:500;color:rgba(240,234,214,.85)}
.rest-btn{width:100%;padding:14px;background:rgba(201,168,76,.1);border:1px solid rgba(201,168,76,.25);color:var(--gold-l);font-size:11px;font-weight:600;letter-spacing:2px;text-transform:uppercase;cursor:pointer;transition:all .3s;font-family:'Montserrat',sans-serif}
.rest-btn:hover{background:var(--gold);color:var(--dark)}

/* GOLF/SUITE CALENDAR WRAPPER */
.golf-wrap{background:rgba(13,20,16,.6);border:1px solid rgba(201,168,76,.15)}
.golf-header{padding:28px 32px;border-bottom:1px solid rgba(201,168,76,.1);display:flex;justify-content:space-between;align-items:center}
.calendar-grid{padding:28px 32px}
.cal-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}
.cal-title{font-family:'Cormorant Garamond',serif;font-size:22px;color:var(--cream)}
.cal-arrow{background:none;border:1px solid rgba(201,168,76,.3);color:var(--gold);width:36px;height:36px;cursor:pointer;font-size:16px;transition:all .3s}
.cal-arrow:hover{background:rgba(201,168,76,.2)}
.cal-days-header{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;margin-bottom:10px}
.cal-day-lbl{font-size:11px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;color:rgba(240,234,214,.5);padding:8px 0}
.cal-days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.cal-day{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:13px;font-weight:500;color:rgba(240,234,214,.7);cursor:pointer;border:1px solid transparent;transition:all .2s;border-radius:4px;gap:3px}
.cal-day:hover{border-color:rgba(201,168,76,.4);color:var(--cream)}
.cal-day.today{color:var(--gold);font-weight:600}
.cal-day.has-avail{color:var(--white)}
.cal-day.has-avail::after{content:'';width:5px;height:5px;border-radius:50%;background:#4ade80}
.cal-day.full::after{content:'';width:5px;height:5px;border-radius:50%;background:#ef4444}
.cal-day.selected{background:rgba(201,168,76,.2);border-color:var(--gold);color:var(--gold-l)}
.cal-day.empty{cursor:default;opacity:0}
.time-slots{padding:0 32px 28px}
.time-slots-title{font-size:11px;font-weight:500;letter-spacing:3px;text-transform:uppercase;color:rgba(240,234,214,.8);margin-bottom:16px}
.slots-grid{display:flex;gap:10px;flex-wrap:wrap}
.slot{padding:10px 20px;border:1px solid rgba(201,168,76,.25);font-size:12px;font-weight:500;letter-spacing:1px;color:rgba(240,234,214,.85);cursor:pointer;transition:all .25s;border-radius:4px}
.slot:hover,.slot.sel{border-color:var(--gold);color:var(--gold-l);background:rgba(201,168,76,.15)}
.slot.full{border-color:rgba(239,68,68,.3);color:rgba(239,68,68,.6);cursor:not-allowed}
.golf-book-btn{display:block;margin:0 32px 28px;padding:16px;background:linear-gradient(135deg,var(--gold),#a8893a);color:var(--dark);border:none;font-family:'Montserrat',sans-serif;font-size:11px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;cursor:pointer;width:calc(100% - 64px);transition:opacity .3s}
.golf-book-btn:hover{opacity:.88}

/* PICKUP */
.pickup-wrap{background:rgba(13,20,16,.6);border:1px solid rgba(201,168,76,.15);padding:48px;max-width:800px;margin:24px auto 0}
.pw-title{font-family:'Cormorant Garamond',serif;font-size:34px;color:var(--cream);margin-bottom:6px}
.pw-sub{font-size:11px;font-weight:500;letter-spacing:3px;text-transform:uppercase;color:rgba(240,234,214,.8);margin-bottom:36px}
.car-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px}
.car-opt{padding:20px;border:1px solid rgba(201,168,76,.2);text-align:center;cursor:pointer;transition:all .3s}
.car-opt.sel,.car-opt:hover{border-color:var(--gold);background:rgba(201,168,76,.1)}
.car-opt-icon{font-size:30px;display:block;margin-bottom:8px}
.car-opt-name{font-size:11px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;color:rgba(240,234,214,.85)}
.fg{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}
.fl{font-size:10px;font-weight:500;letter-spacing:3px;text-transform:uppercase;color:rgba(240,234,214,.8);margin-bottom:8px;display:block}
.fi,.fs{width:100%;background:rgba(255,255,255,.05);border:1px solid rgba(201,168,76,.2);padding:14px 16px;color:var(--cream);font-family:'Montserrat',sans-serif;font-size:13px;outline:none;transition:border .3s}
.fi:focus,.fs:focus{border-color:var(--gold)}
.fi::placeholder{color:rgba(240,234,214,.4)}
.fs option{background:var(--dark2)}
.psub-btn{width:100%;padding:18px;background:linear-gradient(135deg,var(--gold),#a8893a);color:var(--dark);border:none;font-family:'Montserrat',sans-serif;font-size:11px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;cursor:pointer;margin-top:12px;transition:opacity .3s}
.psub-btn:hover{opacity:.88}

/* MEMBERSHIP CARD SECTION */
.card-section{position:relative;padding:140px 80px;overflow:hidden;background:linear-gradient(135deg,rgba(8,12,10,.98) 0%,rgba(13,30,20,.95) 50%,rgba(8,12,10,.98) 100%)}
.card-section-bg{position:absolute;inset:0;background:radial-gradient(ellipse 60% 60% at 50% 50%,rgba(201,168,76,.08) 0%,transparent 70%);pointer-events:none}
.card-section-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.card-3d-wrap{position:relative;height:400px;perspective:1200px; animation: cardFloat 6s ease-in-out infinite;}
@keyframes cardFloat { 0%, 100%{transform:translateY(0);} 50%{transform:translateY(-15px);} }
.card-3d{width:380px;height:230px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotateX(18deg) rotateY(-22deg) rotateZ(-6deg);transform-style:preserve-3d;transition:transform .5s ease;cursor:pointer}
.card-3d:hover{transform:translate(-50%,-50%) rotateX(12deg) rotateY(-10deg) rotateZ(-3deg)}
.card-face{width:100%;height:100%;border-radius:18px;padding:32px 36px;background:linear-gradient(135deg,#1a1208 0%,#2d2010 30%,#c9a84c 60%,#e8cc7a 80%,#a8893a 100%);box-shadow:0 40px 100px rgba(0,0,0,.8),0 0 0 1px rgba(201,168,76,.4),inset 0 1px 0 rgba(255,255,255,.2);position:relative;overflow:hidden}
.card-face::before{content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(135deg,transparent,rgba(255,255,255,.5),transparent);transform:rotate(35deg) translateX(-100%);pointer-events:none;animation:cardShimmer 4s infinite;}
@keyframes cardShimmer { 0%, 20%{transform:rotate(35deg) translateX(-100%);opacity:0;} 50%{opacity:1;} 80%, 100%{transform:rotate(35deg) translateX(100%);opacity:0;} }
.card-face::after{content:'';position:absolute;bottom:-40px;right:-40px;width:240px;height:240px;border-radius:50%;background:rgba(255,255,255,.05);pointer-events:none}
.card-chip{width:46px;height:34px;background:linear-gradient(135deg,#d4af37,#f5e6b8,#b8922a);border-radius:5px;margin-bottom:24px;display:grid;grid-template-columns:1fr 1fr;gap:2px;padding:5px;overflow:hidden}
.card-chip-line{background:rgba(0,0,0,.3);border-radius:1px}
.card-number{font-family:'Montserrat',sans-serif;font-size:15px;letter-spacing:5px;color:rgba(255,255,255,.9);margin-bottom:22px;font-weight:400}
.card-bottom{display:flex;justify-content:space-between;align-items:flex-end}
.card-holder-lbl{font-size:8px;font-weight:500;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.6);margin-bottom:6px}
.card-holder-name{font-family:'Cormorant Garamond',serif;font-size:18px;letter-spacing:3px;color:rgba(255,255,255,.95)}
.card-brand{font-family:'Cormorant Garamond',serif;font-size:22px;letter-spacing:6px;color:rgba(255,255,255,.7);text-align:right}
.card-brand-sub{font-size:8px;font-weight:500;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.5);text-align:right;margin-top:3px}
.card-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:550px;height:350px;border-radius:50%;background:radial-gradient(ellipse,rgba(201,168,76,.2) 0%,transparent 70%);pointer-events:none;filter:blur(25px)}
.card-shadow{position:absolute;bottom:-50px;left:50%;transform:translateX(-50%);width:350px;height:35px;background:radial-gradient(ellipse,rgba(0,0,0,.6) 0%,transparent 70%);filter:blur(12px)}
.card-info{z-index:2}
.card-badge{display:inline-flex;align-items:center;gap:10px;padding:8px 20px;background:rgba(201,168,76,.15);border:1px solid rgba(201,168,76,.3);font-size:10px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--gold-l);margin-bottom:24px}
.card-title{font-family:'Cormorant Garamond',serif;font-size:clamp(40px,5vw,60px);font-weight:300;color:var(--cream);line-height:1.05;margin-bottom:22px}
.card-title em{font-style:italic;color:var(--gold-l)}
.card-desc{font-size:14px;line-height:2;color:rgba(240,234,214,.85);margin-bottom:36px}
.card-perks{display:flex;flex-direction:column;gap:16px;margin-bottom:40px}
.perk{display:flex;align-items:center;gap:14px;font-size:13px;font-weight:400;color:rgba(240,234,214,.9)}
.perk-icon{width:32px;height:32px;border:1px solid rgba(201,168,76,.3);display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0;color:var(--gold-l)}
.coming-badge{display:inline-flex;align-items:center;gap:10px;padding:12px 24px;background:rgba(34,197,94,.1);border:1px solid rgba(34,197,94,.3);font-size:11px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:#4ade80}
.coming-badge::before{content:'';width:6px;height:6px;border-radius:50%;background:#4ade80;animation:dotPulse 1.5s infinite}

/* COMMUNITY / AGENTS */
.comm-section{background:rgba(13,20,16,.6);padding:120px 0;border-top:1px solid rgba(201,168,76,.1);border-bottom:1px solid rgba(201,168,76,.1)}
.comm-inner{max-width:1400px;margin:0 auto;padding:0 80px}
.comm-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:60px}
.comm-card{padding:40px 34px;background:rgba(8,12,10,.75);border:1px solid rgba(201,168,76,.1);transition:all .35s;cursor:default}
.comm-card:hover{background:rgba(13,30,20,.8);border-color:rgba(201,168,76,.25)}
.comm-card-icon{font-size:36px;margin-bottom:20px;display:block}
.comm-card-title{font-family:'Cormorant Garamond',serif;font-size:26px;color:var(--cream);margin-bottom:12px;font-weight:400}
.comm-card-desc{font-size:13px;line-height:1.9;font-weight:400;color:rgba(240,234,214,.8)}
.comm-card-stat{margin-top:24px;font-family:'Cormorant Garamond',serif;font-size:32px;color:var(--gold-l);font-weight:300}
.comm-card-stat-lbl{font-size:11px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;color:rgba(240,234,214,.7)}
.staff-row{display:flex;gap:20px;margin-top:64px;align-items:center;flex-wrap:wrap}
.staff-card{display:flex;align-items:center;gap:14px;padding:16px 24px;background:rgba(8,12,10,.8);border:1px solid rgba(201,168,76,.15)}
.staff-av{width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}
.staff-name{font-size:13px;font-weight:500;color:rgba(240,234,214,.9);margin-bottom:4px}
.staff-role{font-size:10px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;color:rgba(240,234,214,.6)}
.staff-dot{width:8px;height:8px;border-radius:50%;background:#4ade80;margin-left:auto}
.staff-label{font-size:11px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:rgba(240,234,214,.7);margin-right:12px}

/* MODAL */
.modal-ov{display:none;position:fixed;inset:0;z-index:600;background:rgba(8,12,10,.92);backdrop-filter:blur(12px);align-items:center;justify-content:center}
.modal-ov.open{display:flex}
.modal-box{background:var(--dark2);border:1px solid rgba(201,168,76,.2);max-width:520px;width:93%;padding:50px;position:relative;animation:modalIn .3s ease; box-shadow: 0 40px 100px rgba(0,0,0,.8)}
@keyframes modalIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
.mc-btn{position:absolute;top:20px;right:20px;background:none;border:none;color:rgba(240,234,214,.5);cursor:pointer;font-size:20px;transition:color .2s}
.mc-btn:hover{color:var(--gold-l)}
.m-title{font-family:'Cormorant Garamond',serif;font-size:30px;color:var(--cream);margin-bottom:6px}
.m-sub{font-size:10px;font-weight:500;letter-spacing:3px;text-transform:uppercase;color:rgba(240,234,214,.6);margin-bottom:32px}
.mfg{margin-bottom:16px}
.mfl{font-size:10px;font-weight:500;letter-spacing:2.5px;text-transform:uppercase;color:rgba(240,234,214,.8);margin-bottom:8px;display:block}
.mfi,.mfs{width:100%;background:rgba(255,255,255,.05);border:1px solid rgba(201,168,76,.2);padding:14px 16px;color:var(--cream);font-family:'Montserrat',sans-serif;font-size:13px;outline:none;transition:border .3s}
.fi:focus,.mfs:focus{border-color:var(--gold)}
.mfi::placeholder{color:rgba(240,234,214,.4)}
.mfs option{background:var(--dark2)}
.mg2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.msub-btn{width:100%;padding:16px;background:linear-gradient(135deg,var(--gold),#a8893a);color:var(--dark);border:none;font-family:'Montserrat',sans-serif;font-size:11px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;cursor:pointer;margin-top:10px;transition:opacity .3s}
.msub-btn:hover{opacity:.88}
.m-success{display:none;text-align:center;padding:20px 0}
.m-sicon{font-size:46px;margin-bottom:16px; color:var(--gold)}
.m-stitle{font-family:'Cormorant Garamond',serif;font-size:30px;color:var(--cream);margin-bottom:12px}
.m-sdesc{font-size:13px;color:rgba(240,234,214,.8);line-height:2}

/* COMMUNITY GALLERY TABS */
.comm-tab-btn{padding:10px 20px;background:rgba(255,255,255,.05);border:1px solid rgba(201,168,76,.2);color:rgba(240,234,214,.7);font-family:'Montserrat',sans-serif;font-size:11px;font-weight:500;letter-spacing:1px;cursor:pointer;transition:all .3s;white-space:nowrap;border-radius:4px;}
.comm-tab-btn.active,.comm-tab-btn:hover{background:rgba(201,168,76,.15);border-color:var(--gold);color:var(--gold-l);}
.comm-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px; margin-top: 20px;}
.comm-gallery-img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:4px;border:1px solid rgba(201,168,76,.1);transition:transform .3s;cursor:pointer;}
.comm-gallery-img:hover{transform:scale(1.03);border-color:var(--gold);}

/* SLIDE MODAL */
.slide-modal-ov{display:none;position:fixed;inset:0;z-index:600;background:rgba(8,12,10,.92);backdrop-filter:blur(12px);align-items:center;justify-content:center}
.slide-modal-ov.open{display:flex}
.slide-container{position:relative;width:90%;max-width:1000px;aspect-ratio:16/9;overflow:hidden;border:1px solid rgba(201,168,76,.2);box-shadow:0 40px 100px rgba(0,0,0,.8);border-radius:8px; background:#000;}
.slide-track{display:flex;height:100%;transition:transform .5s ease-in-out}
.slide-item{min-width:100%;height:100%;position:relative; display:flex; align-items:center; justify-content:center;}
.slide-item img, .slide-item video{width:100%;height:100%;object-fit:cover}
.slide-caption{position:absolute;bottom:0;left:0;right:0;padding:24px;background:linear-gradient(0deg,rgba(8,12,10,.8) 0%,transparent 100%);color:var(--white);font-family:'Cormorant Garamond',serif;font-size:24px;text-align:center; pointer-events: none;}
.slide-prev,.slide-next{position:absolute;top:50%;transform:translateY(-50%);background:rgba(8,12,10,.5);border:1px solid rgba(201,168,76,.3);color:var(--gold);width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s;font-size:24px; z-index:10;}
.slide-prev{left:24px}
.slide-next{right:24px}
.slide-prev:hover,.slide-next:hover{background:var(--gold);color:var(--dark)}

/* TESTIMONIALS */
.test-sec{background:rgba(8,12,10,.85);padding:120px 0;border-top:1px solid rgba(201,168,76,.1)}
.test-inner{max-width:1400px;margin:0 auto;padding:0 80px}
.test-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:60px}
.test-card{padding:40px;background:rgba(13,20,16,.8);border:1px solid rgba(201,168,76,.15);position:relative}
.test-card::before{content:'"';font-family:'Cormorant Garamond',serif;font-size:80px;color:rgba(201,168,76,.12);position:absolute;top:10px;left:24px;line-height:1}
.t-stars{color:var(--gold);font-size:14px;letter-spacing:4px;margin-bottom:20px}
.t-text{font-size:14px;font-weight:400;line-height:2;color:rgba(240,234,214,.9);margin-bottom:24px;font-style:italic}
.t-author{display:flex;align-items:center;gap:12px}
.t-av{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--em-m),var(--em-b));display:flex;align-items:center;justify-content:center;font-size:15px}
.t-name{font-size:12px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;color:rgba(240,234,214,.9)}
.t-loc{font-size:10px;color:rgba(240,234,214,.5);margin-top:2px}

/* CTA */
.cta-sec{padding:140px 80px;text-align:center;position:relative;overflow:hidden}
.cta-sec::before{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:700px;height:700px;border-radius:50%;border:1px solid rgba(201,168,76,.08)}
.cta-sec::after{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:1000px;height:1000px;border-radius:50%;border:1px solid rgba(201,168,76,.05)}
.cta-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:600px;height:300px;background:radial-gradient(ellipse,rgba(13,61,46,.4) 0%,transparent 70%);pointer-events:none}
.cta-title{font-family:'Cormorant Garamond',serif;font-size:clamp(46px,6vw,86px);font-weight:300;color:var(--cream);margin-bottom:16px;line-height:1.05;position:relative}
.cta-title em{font-style:italic;color:var(--gold-l)}
.cta-sub{font-size:13px;font-weight:400;line-height:2;color:rgba(240,234,214,.8);margin-bottom:50px;position:relative}
.cta-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;position:relative}
.cta-contact{display:flex;gap:32px;justify-content:center;margin-top:40px;flex-wrap:wrap;position:relative}
.cc-link{font-size:12px;font-weight:500;letter-spacing:2px;text-transform:uppercase;color:rgba(240,234,214,.7);text-decoration:none;transition:color .3s}
.cc-link:hover{color:var(--gold-l)}

/* CHAT */
.chat-wrap{position:fixed;bottom:32px;right:32px;z-index:400}
.chat-toggle{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,var(--gold),#a8893a);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:26px;box-shadow:0 10px 40px rgba(201,168,76,.45);transition:all .3s;position:relative}
.chat-toggle:hover{transform:scale(1.07)}
.chat-notif{position:absolute;top:-2px;right:-2px;width:20px;height:20px;border-radius:50%;background:#ef4444;border:2px solid var(--dark);display:flex;align-items:center;justify-content:center;font-size:10px;color:#fff;font-weight:700}
.chat-win{display:none;position:absolute;bottom:80px;right:0;width:360px;background:var(--dark2);border:1px solid rgba(201,168,76,.2);box-shadow:0 24px 80px rgba(0,0,0,.8);flex-direction:column;animation:chatIn .3s ease;border-radius:4px}
.chat-win.open{display:flex}
@keyframes chatIn{from{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:none}}
.ch-head{padding:18px 20px;background:rgba(13,61,46,.45);border-bottom:1px solid rgba(201,168,76,.1);display:flex;align-items:center;gap:12px}
.ch-av{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--em-m));display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;position:relative}
.ch-av::after{content:'';position:absolute;bottom:1px;right:1px;width:10px;height:10px;border-radius:50%;background:#4ade80;border:2px solid var(--dark2)}
.ch-hname{font-size:14px;font-weight:600;color:var(--cream)}
.ch-hstatus{font-size:10px;font-weight:500;color:rgba(240,234,214,.7);letter-spacing:1px;margin-top:2px}
.ch-close{background:none;border:none;color:rgba(240,234,214,.5);cursor:pointer;font-size:18px;margin-left:auto}
.ch-close:hover{color:var(--gold-l)}
.ch-msgs{flex:1;padding:20px;overflow-y:auto;max-height:320px;display:flex;flex-direction:column;gap:12px;background:rgba(8,12,10,.5)}
.cmsg{display:flex;gap:8px;align-items:flex-end}
.cmsg.me{flex-direction:row-reverse}
.cmsg-av{width:28px;height:28px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--gold),var(--em-m));display:flex;align-items:center;justify-content:center;font-size:12px}
.cmsg.me .cmsg-av{background:rgba(201,168,76,.2)}
.cmsg-bub{max-width:80%;padding:11px 15px;font-size:13px;font-weight:400;line-height:1.7;border-radius:12px 12px 12px 4px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);color:rgba(240,234,214,.95)}
.cmsg.me .cmsg-bub{background:rgba(201,168,76,.2);border-color:rgba(201,168,76,.3);border-radius:12px 12px 4px 12px}
.typing-bub{display:flex;align-items:center;gap:5px;padding:11px 15px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);border-radius:12px 12px 12px 4px;width:fit-content}
.tdot{width:6px;height:6px;border-radius:50%;background:rgba(240,234,214,.5);animation:tp 1.2s ease-in-out infinite}
.tdot:nth-child(2){animation-delay:.2s}.tdot:nth-child(3){animation-delay:.4s}
@keyframes tp{0%,100%{opacity:.4;transform:scale(.8)}50%{opacity:1;transform:scale(1)}}
.ch-quick{padding:12px 16px;display:flex;gap:8px;overflow-x:auto;border-top:1px solid rgba(255,255,255,.05)}
.ch-quick::-webkit-scrollbar{display:none}
.qb{padding:6px 14px;border:1px solid rgba(201,168,76,.25);background:rgba(201,168,76,.05);color:rgba(240,234,214,.85);font-size:11px;font-weight:500;letter-spacing:1px;white-space:nowrap;cursor:pointer;transition:all .2s;border-radius:99px;font-family:'Montserrat',sans-serif}
.qb:hover{border-color:var(--gold);color:var(--gold-l);background:rgba(201,168,76,.15)}
.ch-inp-row{padding:14px 16px;display:flex;gap:8px;border-top:1px solid rgba(255,255,255,.05)}
.ch-inp{flex:1;background:rgba(255,255,255,.08);border:1px solid rgba(201,168,76,.2);padding:11px 15px;color:var(--cream);font-family:'Montserrat',sans-serif;font-size:13px;outline:none;transition:border .3s}
.ch-inp:focus{border-color:var(--gold)}
.ch-inp::placeholder{color:rgba(240,234,214,.4)}
.ch-send{width:40px;height:40px;background:var(--gold);border:none;color:var(--dark);cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;transition:opacity .3s}
.ch-send:hover{opacity:.85}

footer{padding:40px 60px;border-top:1px solid rgba(201,168,76,.1);display:flex;justify-content:space-between;align-items:center}
.foot-logo{font-family:'Cormorant Garamond',serif;font-size:20px;letter-spacing:6px;color:rgba(201,168,76,.5)}
.foot-copy{font-size:11px;font-weight:500;letter-spacing:2px;color:rgba(240,234,214,.4);text-transform:uppercase}

@keyframes fadeUp{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}

@media(max-width:960px){
  nav{padding:16px 22px}.nav-links{display:none}
  .nav-live{display:none;}
  .menu-btn{display:block;}
  .nav-right{gap:12px;}
  .nav-cta{padding:10px 16px; font-size:10px;}
  .hero{grid-template-columns:1fr;height:auto}
  .hero-right{height:320px}
  .hero-left{padding:60px 24px 48px}
  .hero-dash{position:relative;top:auto;right:auto;transform:none;width:100%;margin-top:20px}
  .sec,.booking-sec{padding:72px 24px}
  .hotel-gallery{grid-template-columns:1fr 1fr;grid-template-rows:200px 200px 200px}
  .hg-cell:first-child{grid-row:auto}
  .card-section-inner{grid-template-columns:1fr;gap:48px}
  .card-3d-wrap{height:280px}
  .card-3d{width:290px;height:170px}
  .comm-grid{grid-template-columns:1fr 1fr}
  .rest-grid{grid-template-columns:1fr}
  .fg{grid-template-columns:1fr}
  .trust-bar{padding:14px 22px}
  .cta-sec{padding:80px 24px}
  footer{flex-direction:column;gap:12px;text-align:center;padding:32px 24px}
  .chat-win{width:calc(100vw - 38px);right:-12px}
  .comm-inner{padding:0 24px}
  .bk-slide { padding: 0 10px; }
  .bk-nav-btn { width: 36px; height: 36px; font-size: 18px; top: calc(50% - 20px); }
  .bk-prev { left: -10px; }
  .bk-next { right: -10px; }
}
