:root{--bg:#05070c;--bg2:#0a1020;--paper:#0e1528;--text:#f5f8ff;--muted:#9ca7c1;--line:rgba(255,255,255,.12);--gold:#2f66ff;--gold2:#a8d2ff;--green:#5bb7ff;--max:1440px;--pad:clamp(20px,4vw,72px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;background:var(--bg);color:var(--text);font-family:'Be Vietnam Pro',system-ui,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}img{max-width:100%;display:block}::selection{background:var(--gold);color:#fff}
.noise{position:fixed;inset:0;pointer-events:none;z-index:999;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.9'/%3E%3C/svg%3E")}.scroll-progress{position:fixed;left:0;top:0;height:2px;width:0;background:linear-gradient(90deg,var(--gold),var(--gold2));z-index:1001}
.preloader{position:fixed;inset:0;z-index:2000;background:#03050a;display:grid;place-items:center;transition:opacity .65s ease,visibility .65s}.preloader.hide{opacity:0;visibility:hidden}.preloader-inner{width:min(280px,65vw);text-align:center}.preloader img{width:190px;margin:0 auto 30px;filter:drop-shadow(0 18px 45px rgba(47,102,255,.35))}.preloader small{display:block;margin-top:14px;letter-spacing:.28em;font-size:9px;color:#8e8e84}.loader-line{height:1px;background:#2b2d29;overflow:hidden}.loader-line span{display:block;height:100%;width:40%;background:var(--gold);animation:loader 1.2s ease-in-out infinite}@keyframes loader{0%{transform:translateX(-120%)}100%{transform:translateX(350%)}}
.topbar{position:fixed;left:0;top:0;width:100%;z-index:1000;height:110px;padding:0 var(--pad);display:grid;grid-template-columns:1fr 180px 1fr;align-items:center;transition:.35s}.topbar.scrolled{height:82px;background:rgba(7,8,7,.82);backdrop-filter:blur(20px);border-bottom:1px solid var(--line)}.desktop-nav{display:flex;align-items:center;gap:clamp(20px,2.3vw,46px);font-size:11px;font-weight:700;letter-spacing:.14em}.nav-right{justify-content:flex-end}.desktop-nav a{position:relative;padding:10px 0;color:#eee7dc}.desktop-nav a:after{content:"";position:absolute;left:0;bottom:4px;height:1px;width:0;background:var(--gold);transition:.3s}.desktop-nav a:hover:after{width:100%}.brand-mark{width:170px;justify-self:center;transition:.3s}.topbar.scrolled .brand-mark{width:130px}.brand-mark img{width:100%}.mobile-menu-btn{display:none;background:none;border:0;width:46px;height:46px;padding:0;position:relative}.mobile-menu-btn span{position:absolute;right:0;width:30px;height:1px;background:white;transition:.3s}.mobile-menu-btn span:first-child{top:18px}.mobile-menu-btn span:last-child{top:27px;width:22px}.mobile-menu-btn.open span:first-child{transform:rotate(45deg);top:23px}.mobile-menu-btn.open span:last-child{transform:rotate(-45deg);top:23px;width:30px}.mobile-menu{position:fixed;inset:0;z-index:950;background:#080a08;transform:translateY(-105%);transition:.55s cubic-bezier(.77,0,.18,1);padding:120px 28px 35px;display:flex;flex-direction:column;justify-content:space-between}.mobile-menu.open{transform:none}.mobile-menu-grid{display:grid}.mobile-menu-grid a{font-family:'Cormorant Garamond',serif;font-size:clamp(34px,11vw,58px);line-height:1.05;padding:11px 0;border-bottom:1px solid var(--line)}.mobile-menu-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:12px}
.hero{position:relative;min-height:100svh;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 30%,#18306f 0,#090d17 52%,#04060b 100%)}.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.8) contrast(1.08) brightness(.72);transform:scale(1.03)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,5,4,.42) 0%,rgba(4,5,4,.1) 42%,rgba(4,5,4,.75) 100%),radial-gradient(circle at center,transparent 25%,rgba(0,0,0,.5) 100%)}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.5),transparent 17%,transparent 83%,rgba(0,0,0,.5));pointer-events:none}.hero-content{position:relative;z-index:5;text-align:center;padding:130px 20px 110px;max-width:1000px;will-change:transform}.hero-eyebrow{display:block;font-size:10px;letter-spacing:.42em;margin-bottom:18px;color:#f0e7d6}.hero-logo{width:clamp(140px,16vw,230px);margin:0 auto 4px;filter:drop-shadow(0 20px 60px rgba(0,0,0,.55))}.hero h1{font-family:'Cormorant Garamond',serif;font-size:clamp(58px,8vw,132px);line-height:.72;letter-spacing:-.045em;margin:18px 0;color:#fff;text-shadow:0 12px 60px rgba(0,0,0,.3)}.hero p{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:clamp(20px,2vw,30px);color:#e7dece;margin:24px 0 34px}.hero-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.btn{min-width:190px;height:54px;border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:space-between;gap:25px;padding:0 18px;font-size:11px;font-weight:800;letter-spacing:.12em;transition:.3s;position:relative;overflow:hidden}.btn:before{content:"";position:absolute;inset:0;transform:translateX(-101%);transition:.35s;background:white}.btn span,.btn i,.btn{font-style:normal}.btn>*{position:relative;z-index:1}.btn-primary{background:var(--gold);border-color:var(--gold);color:#10110e}.btn-primary:hover{color:#111;border-color:white}.btn-primary:hover:before{transform:none}.btn-ghost{background:rgba(10,10,10,.15);backdrop-filter:blur(8px);color:#fff}.btn-ghost:before{background:rgba(255,255,255,.1)}.btn-ghost:hover:before{transform:none}.hero-side{position:absolute;top:50%;z-index:4;display:flex;align-items:center;gap:12px;font-size:9px;letter-spacing:.26em;color:#d7d2c7}.hero-side-left{left:28px;transform:translateY(-50%) rotate(-90deg)}.hero-side-right{right:28px;transform:translateY(-50%) rotate(90deg)}.hero-side .dot{width:4px;height:4px;border-radius:50%;background:var(--gold)}.hero-bottom{position:absolute;z-index:5;left:var(--pad);right:var(--pad);bottom:24px;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;font-size:9px;letter-spacing:.16em;color:#d7d2c7}.hero-bottom>span:last-child{text-align:right}.scroll-cue{text-align:center}.scroll-cue b{color:var(--gold);margin-left:8px}.live-pill{display:flex;align-items:center;gap:9px}.live-pill i{width:7px;height:7px;background:#69b7ff;border-radius:50%;box-shadow:0 0 14px #69b7ff;animation:pulse 1.3s infinite}@keyframes pulse{50%{opacity:.3;transform:scale(.7)}}.hero-orbit{position:absolute;z-index:2;border:1px solid rgba(255,255,255,.07);border-radius:50%}.orbit-one{width:min(52vw,760px);aspect-ratio:1}.orbit-two{width:min(38vw,540px);aspect-ratio:1;border-style:dashed;animation:spin 35s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.marquee{height:78px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;background:#0b0d0b;display:flex;align-items:center}.marquee-track{display:flex;align-items:center;gap:34px;width:max-content;animation:marquee 24s linear infinite;white-space:nowrap}.marquee span{font-family:'Cormorant Garamond',serif;font-size:25px;letter-spacing:.08em}.marquee i{color:var(--gold);font-style:normal}@keyframes marquee{to{transform:translateX(-50%)}}
.section{padding:clamp(90px,12vw,170px) var(--pad);position:relative}.section-grid,.section-head,.menu-grid,.event-list,.booking-section,.footer-grid,.footer-top,.footer-bottom{max-width:var(--max);margin:0 auto}.section-grid{display:grid;grid-template-columns:90px minmax(0,1fr) minmax(330px,.85fr);gap:clamp(25px,5vw,90px);align-items:center}.section-number{align-self:start;color:var(--gold);font-family:'Cormorant Garamond',serif;font-size:24px}.kicker{display:block;color:var(--gold);font-size:10px;font-weight:700;letter-spacing:.25em;margin-bottom:22px}.section-copy h2,.section-head h2,.booking-copy h2,.gallery-title h2{font-family:'Cormorant Garamond',serif;font-size:clamp(48px,6.5vw,96px);line-height:.92;letter-spacing:-.035em;margin:0 0 30px;font-weight:600}.section-copy p,.section-head p,.booking-copy>p{font-size:14px;line-height:1.95;color:var(--muted);max-width:630px}.text-link{margin-top:28px;display:inline-flex;align-items:center;gap:18px;font-size:11px;font-weight:800;letter-spacing:.14em;border-bottom:1px solid var(--gold);padding-bottom:8px}.text-link span{color:var(--gold)}.about{background:linear-gradient(180deg,#0a0c0a 0%,#0f120f 100%)}.about-art{position:relative;min-height:520px}.art-card{position:absolute;border:1px solid rgba(47,102,255,.22);background:linear-gradient(145deg,rgba(47,102,255,.07),rgba(255,255,255,.015));backdrop-filter:blur(4px)}.art-main{inset:0 0 45px 50px;padding:28px;overflow:hidden}.art-main:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 60% 30%,rgba(47,102,255,.24),transparent 34%),linear-gradient(145deg,transparent 45%,rgba(91,183,255,.10));}.art-main strong{position:absolute;left:34px;bottom:44px;font-family:'Cormorant Garamond',serif;font-size:clamp(50px,5.5vw,82px);line-height:.77;z-index:2}.art-main small{position:absolute;right:25px;bottom:25px;letter-spacing:.2em;color:var(--muted)}.art-label{position:relative;z-index:2;font-size:9px;letter-spacing:.24em}.art-ring{position:absolute;right:-70px;top:20px;width:320px;height:320px;border:1px solid rgba(47,102,255,.25);border-radius:50%;box-shadow:0 0 0 38px rgba(47,102,255,.03),0 0 0 75px rgba(47,102,255,.02)}.art-mini{width:150px;height:170px;left:0;bottom:0;z-index:4;display:flex;flex-direction:column;justify-content:end;padding:20px;background:#0f1730}.art-mini span{font-size:10px;letter-spacing:.2em;color:var(--gold)}.art-mini b{font-family:'Cormorant Garamond',serif;font-size:54px;line-height:1}.stats-row{max-width:var(--max);margin:90px auto 0;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr)}.stat{padding:28px 24px 0 0;border-right:1px solid var(--line);min-height:120px}.stat:last-child{border-right:0;padding-left:26px}.stat:nth-child(2){padding-left:26px}.stat strong{display:block;font-family:'Cormorant Garamond',serif;font-size:44px;color:var(--gold2)}.stat span{font-size:11px;color:var(--muted);letter-spacing:.1em}
.menu-section{background:#090a09}.section-head{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:65px}.section-head em,.gallery-title em{color:var(--gold);font-weight:500}.section-head p{max-width:430px;margin-bottom:8px}.menu-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.menu-card{min-height:370px;padding:28px;position:relative;border-right:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;transition:.35s}.menu-card:before{content:"";position:absolute;inset:auto -40% -60% -40%;height:70%;background:radial-gradient(circle,var(--gold) 0,transparent 65%);opacity:0;transition:.45s}.menu-card:hover{background:#0e1730;transform:translateY(-8px)}.menu-card:hover:before{opacity:.09}.menu-index{font-family:'Cormorant Garamond',serif;color:#65665f;font-size:20px}.menu-tag{position:absolute;right:22px;top:24px;border:1px solid rgba(47,102,255,.35);color:var(--gold2);font-size:8px;letter-spacing:.16em;padding:7px 9px}.menu-card h3{font-family:'Cormorant Garamond',serif;font-size:39px;line-height:1;margin:85px 0 15px}.menu-card p{font-size:12px;line-height:1.8;color:var(--muted)}.menu-foot{position:absolute;left:28px;right:28px;bottom:28px;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:17px}.menu-foot strong{font-size:11px;letter-spacing:.12em}.menu-foot span{color:var(--gold)}
.events-section{overflow:hidden;background:#09101f}.events-bg-word{position:absolute;right:-2vw;top:80px;font-family:'Cormorant Garamond',serif;font-size:25vw;line-height:1;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.025);pointer-events:none}.event-list{border-top:1px solid var(--line)}.event-row{display:grid;grid-template-columns:130px 1fr minmax(220px,.6fr) 70px;align-items:center;min-height:150px;border-bottom:1px solid var(--line);transition:.3s}.event-row:hover{background:rgba(47,102,255,.045);padding-left:12px}.event-date{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;align-items:end;width:90px}.event-date span{font-size:9px;letter-spacing:.14em;color:var(--gold);grid-column:1/3}.event-date strong{font-family:'Cormorant Garamond',serif;font-size:58px;line-height:.9}.event-date small{font-size:9px;letter-spacing:.14em;margin-bottom:7px;color:var(--muted)}.event-title h3{font-family:'Cormorant Garamond',serif;font-size:clamp(28px,3.2vw,48px);margin:0 0 4px}.event-title p,.event-note{font-size:10px;letter-spacing:.14em;color:var(--muted)}.event-arrow{width:52px;height:52px;border:1px solid var(--line);display:grid;place-items:center;font-size:20px;transition:.3s}.event-row:hover .event-arrow{background:var(--gold);color:#111;border-color:var(--gold);transform:rotate(45deg)}
.gallery-section{background:#080908;padding:clamp(90px,12vw,160px) var(--pad)}.gallery-title{max-width:var(--max);margin:0 auto 60px;display:grid;grid-template-columns:1fr 2fr;align-items:start}.gallery-title>span{font-size:9px;letter-spacing:.2em;color:var(--gold)}.gallery-title h2{margin:0}.gallery-grid{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:90px;gap:14px}.gallery-item{margin:0;position:relative;overflow:hidden;background:#141713}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.22,.61,.36,1),filter .5s}.gallery-item:hover img{transform:scale(1.05);filter:saturate(1.15)}.gallery-item figcaption{position:absolute;left:14px;right:14px;bottom:14px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:.15em;text-shadow:0 2px 10px #000}.g1{grid-column:1/7;grid-row:1/6}.g2{grid-column:7/10;grid-row:1/4}.g3{grid-column:10/13;grid-row:1/5}.g4{grid-column:7/10;grid-row:4/8}.g5{grid-column:1/5;grid-row:6/10}.g6{grid-column:5/13;grid-row:8/11}
.booking-section{max-width:none;margin:0;padding:clamp(90px,11vw,160px) var(--pad);display:grid;grid-template-columns:minmax(0,1fr) minmax(400px,.8fr);gap:clamp(50px,8vw,130px);background:#0a1020;position:relative;overflow:hidden}.booking-section>*{position:relative;z-index:2}.booking-glow{position:absolute;z-index:0;width:700px;height:700px;border-radius:50%;background:radial-gradient(circle,rgba(47,102,255,.15),transparent 62%);left:-270px;top:-230px}.booking-copy h2{font-size:clamp(55px,7vw,105px)}.booking-contact{margin-top:45px;border-top:1px solid var(--line);padding-top:20px}.booking-contact span{display:block;font-size:9px;letter-spacing:.2em;color:var(--muted)}.booking-contact a{font-family:'Cormorant Garamond',serif;font-size:34px;color:var(--gold2)}.booking-form{background:#0b0d0a;border:1px solid var(--line);padding:clamp(24px,3vw,44px)}.field{display:flex;flex-direction:column;gap:9px;margin-bottom:19px}.field label{font-size:8px;letter-spacing:.18em;color:#aaa99e}.field input,.field select,.field textarea{width:100%;border:0;border-bottom:1px solid #363932;background:transparent;color:white;padding:11px 0 12px;outline:none;transition:.25s;border-radius:0}.field select option{background:#111}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--gold)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.submit-btn{width:100%;margin-top:5px}.form-status{font-size:11px;margin-top:15px;min-height:20px;color:var(--muted)}.form-status.ok{color:#b7d88e}.form-status.err{color:#e99988}
.footer{background:#04070d;padding:85px var(--pad) 25px;border-top:1px solid var(--line)}.footer-top{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid var(--line);padding-bottom:35px}.footer-top img{width:190px}.footer-top-no-logo{justify-content:flex-end}.footer-top-no-logo p{text-align:right;margin-left:auto}.footer-top p{font-size:10px;letter-spacing:.2em;color:var(--muted)}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;border-bottom:1px solid var(--line)}.footer-grid>div{padding:35px 35px 45px 0;border-right:1px solid var(--line)}.footer-grid>div+div{padding-left:35px}.footer-grid>div:last-child{border-right:0}.footer-grid span{font-size:8px;letter-spacing:.2em;color:var(--gold)}.footer-grid p{font-family:'Cormorant Garamond',serif;font-size:24px;line-height:1.2}.footer-grid a,.footer-grid small{font-size:9px;letter-spacing:.12em;color:var(--muted)}.socials{display:flex;gap:18px}.footer-bottom{display:flex;justify-content:space-between;padding-top:22px;color:#66675f;font-size:8px;letter-spacing:.14em}.floating-booking{position:fixed;right:22px;bottom:22px;z-index:70;width:80px;height:80px;border-radius:50%;background:var(--gold);color:#111;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 20px 55px rgba(0,0,0,.35);font-size:9px;font-weight:900;letter-spacing:.1em;transition:.3s}.floating-booking b{font-size:18px}.floating-booking:hover{transform:scale(1.08) rotate(6deg)}
.reveal{opacity:0;transform:translateY(34px);transition:opacity .8s ease,transform .8s cubic-bezier(.16,1,.3,1)}.reveal.visible{opacity:1;transform:none}
@media(max-width:1000px){.desktop-nav{display:none}.topbar{grid-template-columns:1fr auto;height:88px}.brand-mark{justify-self:start;width:135px}.topbar.scrolled .brand-mark{width:120px}.mobile-menu-btn{display:block;justify-self:end}.hero-side{display:none}.hero-bottom{grid-template-columns:1fr 1fr}.hero-bottom .scroll-cue{display:none}.section-grid{grid-template-columns:55px 1fr}.about-art{grid-column:2;min-height:450px;width:min(100%,620px)}.menu-grid{grid-template-columns:repeat(2,1fr)}.event-row{grid-template-columns:110px 1fr 60px}.event-note{display:none}.booking-section{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:nth-child(3){grid-column:1/3;border-top:1px solid var(--line);padding-left:0}.gallery-title{grid-template-columns:1fr}.gallery-title>span{margin-bottom:20px}}
@media(max-width:680px){:root{--pad:20px}.topbar{height:76px}.hero-content{padding-top:110px}.hero-logo{width:130px}.hero h1{font-size:clamp(56px,19vw,84px);line-height:.76}.hero p{font-size:21px}.btn{width:100%;max-width:340px}.hero-actions{flex-direction:column;align-items:center}.hero-bottom{font-size:8px;bottom:16px}.hero-bottom>span:last-child{display:none}.hero-bottom{grid-template-columns:1fr}.hero-orbit{display:none}.marquee{height:64px}.marquee span{font-size:20px}.section{padding:85px 20px}.section-grid{display:block}.section-number{margin-bottom:25px}.section-copy h2,.section-head h2,.gallery-title h2{font-size:52px}.about-art{min-height:390px;margin-top:45px}.art-main{left:24px}.art-main strong{font-size:53px}.stats-row{margin-top:55px;grid-template-columns:1fr}.stat,.stat:nth-child(2),.stat:last-child{border-right:0;border-bottom:1px solid var(--line);padding:22px 0;min-height:auto}.section-head{display:block;margin-bottom:35px}.menu-grid{grid-template-columns:1fr}.menu-card{min-height:310px}.event-row{grid-template-columns:86px 1fr 48px;min-height:128px}.event-date strong{font-size:46px}.event-title h3{font-size:30px}.event-title p{line-height:1.5}.event-arrow{width:42px;height:42px}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:190px;gap:8px}.gallery-item{grid-column:auto!important;grid-row:auto!important}.gallery-item:first-child,.gallery-item:last-child{grid-column:1/3!important}.gallery-title{margin-bottom:35px}.booking-section{padding:90px 20px}.booking-form{padding:22px 18px}.form-row{grid-template-columns:1fr;gap:0}.footer{padding:65px 20px 20px}.footer-top{align-items:flex-start;flex-direction:column;gap:20px}.footer-top img{width:155px}.footer-top-no-logo{align-items:flex-end}.footer-top-no-logo p{text-align:right;margin-left:auto}.footer-grid{display:block}.footer-grid>div,.footer-grid>div+div,.footer-grid>div:nth-child(3){padding:28px 0;border-right:0;border-top:0;border-bottom:1px solid var(--line)}.footer-bottom{gap:15px;flex-direction:column}.floating-booking{width:68px;height:68px;right:14px;bottom:14px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* R1.1.1 HERO BRAND POLISH VIP */
.hero-video{filter:saturate(.96) contrast(1.05) brightness(.84);transform:scale(1.015)}
.hero-overlay{background:linear-gradient(180deg,rgba(2,5,12,.32) 0%,rgba(2,5,12,.08) 40%,rgba(2,5,12,.62) 100%),radial-gradient(circle at center,transparent 34%,rgba(0,0,0,.38) 100%)}
.hero:after{background:linear-gradient(90deg,rgba(0,0,0,.38),transparent 14%,transparent 86%,rgba(0,0,0,.38))}
.hero-content{padding:142px 20px 105px;max-width:1120px}
.hero-eyebrow{font-size:10px;letter-spacing:.46em;margin-bottom:26px;color:#e8efff;text-shadow:0 2px 18px rgba(0,0,0,.7)}
.hero h1{font-size:clamp(54px,6.7vw,108px);line-height:.82;letter-spacing:-.04em;margin:0;color:#fff;text-wrap:balance;text-shadow:0 14px 48px rgba(0,0,0,.48)}
.hero p{font-size:clamp(19px,1.65vw,27px);margin:22px 0 30px;color:#edf3ff;text-shadow:0 4px 24px rgba(0,0,0,.68)}
.hero-actions{gap:10px}
.hero-orbit{opacity:.58}
.orbit-one{width:min(44vw,650px)}
.orbit-two{width:min(31vw,455px);opacity:.45}
.hero-bottom{bottom:20px}

@media(max-width:1000px){
  .hero-content{padding:120px 28px 100px;max-width:860px}
  .hero h1{font-size:clamp(52px,10vw,82px);line-height:.84}
  .hero-eyebrow{margin-bottom:22px}
  .orbit-one{width:min(70vw,620px)}
  .orbit-two{width:min(52vw,440px)}
}

@media(max-width:680px){
  .topbar{background:linear-gradient(180deg,rgba(3,5,10,.42),transparent)}
  .brand-mark{width:112px}
  .topbar.scrolled .brand-mark{width:102px}
  .hero-content{padding:112px 18px 92px;max-width:100%}
  .hero-eyebrow{font-size:8px;letter-spacing:.36em;margin-bottom:18px}
  .hero h1{font-size:clamp(46px,13.8vw,64px);line-height:.86;letter-spacing:-.035em;margin:0 auto;max-width:95vw}
  .hero p{font-size:18px;line-height:1.35;margin:18px auto 25px;max-width:310px}
  .hero-actions{gap:9px}
  .hero-actions .btn{height:50px;max-width:305px}
  .hero-video{filter:saturate(.98) contrast(1.04) brightness(.82)}
  .hero-overlay{background:linear-gradient(180deg,rgba(2,5,12,.36) 0%,rgba(2,5,12,.08) 38%,rgba(2,5,12,.66) 100%),radial-gradient(circle at center,transparent 28%,rgba(0,0,0,.34) 100%)}
  .hero-bottom{bottom:13px}
}

@media(max-width:390px){
  .brand-mark{width:98px}
  .topbar.scrolled .brand-mark{width:92px}
  .hero-content{padding-top:104px}
  .hero h1{font-size:clamp(42px,13.2vw,54px)}
  .hero p{font-size:17px}
}

/* =========================================================
   R1.1.2 — HERO CINEMATIC MOTION SUPER VIP PRO
   ========================================================= */
.hero{
  isolation:isolate;
  --mx:50%;
  --my:45%;
}
.hero-video{
  filter:saturate(1.06) contrast(1.08) brightness(.88);
  transform:scale(1.035);
  animation:natraCinematicDrift 18s ease-in-out infinite alternate;
  will-change:transform,filter;
}
@keyframes natraCinematicDrift{
  0%{transform:scale(1.035) translate3d(-.35%,0,0)}
  50%{transform:scale(1.055) translate3d(.35%,-.25%,0)}
  100%{transform:scale(1.04) translate3d(.1%,.2%,0)}
}
.hero-overlay{
  z-index:1;
  background:
    linear-gradient(180deg,rgba(2,5,13,.30) 0%,rgba(2,5,13,.035) 38%,rgba(2,5,13,.68) 100%),
    radial-gradient(circle at var(--mx) var(--my),rgba(52,104,255,.08) 0%,transparent 34%),
    radial-gradient(circle at center,transparent 30%,rgba(0,0,0,.40) 100%);
}
.hero-cinematic{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden;mix-blend-mode:screen}
.cinematic-aura{position:absolute;border-radius:50%;filter:blur(60px);opacity:.18;will-change:transform,opacity}
.cinematic-aura-one{width:46vw;height:46vw;min-width:420px;min-height:420px;left:-12vw;top:18%;background:radial-gradient(circle,rgba(31,91,255,.8),rgba(45,130,255,.22) 38%,transparent 70%);animation:natraAuraOne 11s ease-in-out infinite alternate}
.cinematic-aura-two{width:38vw;height:38vw;min-width:360px;min-height:360px;right:-10vw;top:7%;background:radial-gradient(circle,rgba(72,180,255,.66),rgba(38,83,255,.16) 42%,transparent 72%);animation:natraAuraTwo 13s ease-in-out infinite alternate}
.cinematic-beam{position:absolute;left:-28%;top:-60%;width:38%;height:220%;transform:rotate(18deg);background:linear-gradient(90deg,transparent,rgba(125,196,255,.04),rgba(129,188,255,.11),rgba(77,116,255,.035),transparent);filter:blur(13px);animation:natraBeam 12s cubic-bezier(.45,0,.2,1) infinite}
@keyframes natraAuraOne{to{transform:translate3d(18vw,-8vh,0) scale(1.14);opacity:.27}}
@keyframes natraAuraTwo{to{transform:translate3d(-17vw,12vh,0) scale(.88);opacity:.24}}
@keyframes natraBeam{0%,18%{transform:translateX(-10vw) rotate(18deg);opacity:0}34%{opacity:.95}72%{opacity:.55}100%{transform:translateX(155vw) rotate(18deg);opacity:0}}

/* Running light frame — four-edge VIP rail */
.hero-edge-light{position:absolute;z-index:6;inset:14px;pointer-events:none;border:1px solid rgba(112,173,255,.10);box-shadow:inset 0 0 34px rgba(47,102,255,.025);overflow:hidden}
.edge-light{position:absolute;display:block;filter:drop-shadow(0 0 5px #62b7ff) drop-shadow(0 0 12px rgba(47,102,255,.9));opacity:.92}
.edge-top,.edge-bottom{width:180px;height:1px;background:linear-gradient(90deg,transparent,#d9f2ff 32%,#4bb6ff 53%,#315dff 70%,transparent)}
.edge-right,.edge-left{width:1px;height:180px;background:linear-gradient(180deg,transparent,#d9f2ff 32%,#4bb6ff 53%,#315dff 70%,transparent)}
.edge-top{left:-190px;top:-1px;animation:edgeTopRun 7s linear infinite}
.edge-right{right:-1px;top:-190px;animation:edgeRightRun 7s linear 1.75s infinite}
.edge-bottom{right:-190px;bottom:-1px;animation:edgeBottomRun 7s linear 3.5s infinite}
.edge-left{left:-1px;bottom:-190px;animation:edgeLeftRun 7s linear 5.25s infinite}
@keyframes edgeTopRun{to{left:calc(100% + 10px)}}
@keyframes edgeRightRun{to{top:calc(100% + 10px)}}
@keyframes edgeBottomRun{to{right:calc(100% + 10px)}}
@keyframes edgeLeftRun{to{bottom:calc(100% + 10px)}}
.edge-corner{position:absolute;width:30px;height:30px;opacity:.55}
.edge-corner-tl{left:-1px;top:-1px;border-left:1px solid rgba(125,201,255,.75);border-top:1px solid rgba(125,201,255,.75);box-shadow:-5px -5px 22px rgba(51,114,255,.25)}
.edge-corner-br{right:-1px;bottom:-1px;border-right:1px solid rgba(125,201,255,.75);border-bottom:1px solid rgba(125,201,255,.75);box-shadow:5px 5px 22px rgba(51,114,255,.25)}

/* Premium brand motion */
.brand-mark{position:relative;z-index:2;filter:drop-shadow(0 10px 28px rgba(38,91,255,.22))}
.topbar:not(.scrolled) .brand-mark{animation:natraLogoFloat 4.6s ease-in-out infinite}
.topbar:not(.scrolled) .brand-mark:after{content:"";position:absolute;left:20%;right:20%;bottom:-12px;height:2px;border-radius:50%;background:radial-gradient(ellipse,rgba(105,183,255,.75),transparent 72%);filter:blur(4px);opacity:.45;animation:natraLogoGlow 4.6s ease-in-out infinite}
@keyframes natraLogoFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@keyframes natraLogoGlow{0%,100%{transform:scaleX(.72);opacity:.28}50%{transform:scaleX(1.05);opacity:.62}}

/* Hero title optical depth */
.hero-eyebrow{position:relative;text-shadow:0 0 20px rgba(73,142,255,.35),0 3px 18px rgba(0,0,0,.85)}
.hero h1{text-shadow:0 13px 48px rgba(0,0,0,.56),0 0 42px rgba(38,92,255,.09)}
.hero h1:after{content:"";display:block;width:min(210px,34vw);height:1px;margin:22px auto 0;background:linear-gradient(90deg,transparent,rgba(130,197,255,.62),rgba(47,102,255,.95),rgba(130,197,255,.62),transparent);box-shadow:0 0 14px rgba(47,102,255,.45);opacity:.65}
.hero p{margin-top:18px}

/* Super VIP CTA: border light + sweep + lift */
.hero-actions .btn{border-color:rgba(132,190,255,.28);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 12px 34px rgba(0,0,0,.18);transition:transform .28s cubic-bezier(.16,1,.3,1),box-shadow .28s,border-color .28s,background .28s}
.hero-actions .btn:after{content:"";position:absolute;top:-35%;left:-60%;width:45%;height:170%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-18deg);transition:none;opacity:0;pointer-events:none}
.hero-actions .btn:hover:after{opacity:1;animation:natraBtnSweep .72s ease forwards}
.hero-actions .btn:hover{box-shadow:0 17px 44px rgba(0,0,0,.28),0 0 26px rgba(47,102,255,.24);border-color:rgba(157,211,255,.62)}
.btn-primary{background:linear-gradient(135deg,#2f66ff,#2d8cff 68%,#4bb8ff);border-color:rgba(154,211,255,.75);color:#fff;box-shadow:0 12px 34px rgba(34,86,255,.24)}
.btn-primary:before{background:linear-gradient(90deg,rgba(255,255,255,.14),rgba(255,255,255,.42),rgba(255,255,255,.10))}
.btn-primary:hover{color:#fff;border-color:#a8dfff;box-shadow:0 18px 48px rgba(37,96,255,.33),0 0 30px rgba(66,157,255,.26)}
.btn-ghost{background:linear-gradient(135deg,rgba(6,12,30,.46),rgba(13,22,47,.30));border-color:rgba(154,202,255,.24)}
@keyframes natraBtnSweep{from{left:-60%}to{left:135%}}
.hero-actions .btn i{transition:transform .28s ease,text-shadow .28s}
.hero-actions .btn:hover i{transform:translate(3px,-2px);text-shadow:0 0 10px rgba(255,255,255,.8)}

/* Orbit upgrade */
.hero-orbit{box-shadow:0 0 34px rgba(47,102,255,.025),inset 0 0 38px rgba(47,102,255,.018)}
.orbit-one{border-color:rgba(151,195,255,.10);animation:natraOrbitPulse 7s ease-in-out infinite}
.orbit-two{border-color:rgba(99,164,255,.10);animation:spin 38s linear infinite,natraOrbitPulse 9s ease-in-out infinite reverse}
@keyframes natraOrbitPulse{0%,100%{opacity:.36;box-shadow:0 0 0 rgba(47,102,255,0)}50%{opacity:.68;box-shadow:0 0 42px rgba(47,102,255,.06)}}

/* Topbar glass refinement */
.topbar.scrolled{background:linear-gradient(180deg,rgba(4,8,18,.90),rgba(4,8,18,.74));backdrop-filter:blur(22px) saturate(1.2);-webkit-backdrop-filter:blur(22px) saturate(1.2);border-bottom-color:rgba(93,151,255,.16);box-shadow:0 12px 36px rgba(0,0,0,.16)}
.desktop-nav a:after{height:1px;background:linear-gradient(90deg,#2f66ff,#79c9ff);box-shadow:0 0 10px rgba(57,134,255,.75)}

@media(max-width:1000px){
  .cinematic-aura{filter:blur(55px);opacity:.14}
  .cinematic-beam{opacity:.65}
  .hero-edge-light{inset:9px}
}
@media(max-width:680px){
  .hero-video{filter:saturate(1.01) contrast(1.05) brightness(.84);animation:natraMobileDrift 20s ease-in-out infinite alternate}
  @keyframes natraMobileDrift{from{transform:scale(1.025)}to{transform:scale(1.045) translate3d(.3%,0,0)}}
  .hero-cinematic{opacity:.72}
  .cinematic-aura-one{min-width:320px;min-height:320px;left:-45vw;top:18%}
  .cinematic-aura-two{min-width:280px;min-height:280px;right:-48vw;top:26%}
  .cinematic-beam{display:none}
  .hero-edge-light{inset:5px;border-color:rgba(118,183,255,.08);opacity:.62}
  .edge-top,.edge-bottom{width:115px}
  .edge-right,.edge-left{height:115px}
  .edge-right,.edge-left{display:none}
  .edge-top{animation-duration:8s}
  .edge-bottom{animation-duration:8s;animation-delay:4s}
  .edge-corner{width:20px;height:20px;opacity:.42}
  .topbar:not(.scrolled) .brand-mark{animation-duration:5.6s}
  .hero h1:after{margin-top:16px;width:130px}
  .hero-actions .btn{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
}
@media(prefers-reduced-motion:reduce){
  .hero-video,.cinematic-aura,.cinematic-beam,.edge-light,.topbar:not(.scrolled) .brand-mark,.topbar:not(.scrolled) .brand-mark:after,.orbit-one,.orbit-two{animation:none!important}
  .hero-cinematic{opacity:.35}
  .edge-light{display:none}
}

/* ==========================================================
   R1.2 – REAL CONTENT SYNC PRO / LOCAL PRESENCE
   ========================================================== */
.location-section{position:relative;padding:clamp(72px,9vw,130px) var(--pad);overflow:hidden;background:linear-gradient(180deg,#070b14 0%,#09101f 100%);border-top:1px solid rgba(75,135,255,.18);border-bottom:1px solid rgba(75,135,255,.18)}
.location-section:before{content:"";position:absolute;inset:-35% auto auto 45%;width:min(760px,65vw);height:min(760px,65vw);border-radius:50%;background:radial-gradient(circle,rgba(47,102,255,.16),rgba(47,102,255,.035) 35%,transparent 68%);filter:blur(8px);pointer-events:none}
.location-section:after{content:"";position:absolute;left:var(--pad);right:var(--pad);top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(73,139,255,.7),transparent);animation:natraLocationLine 5.5s ease-in-out infinite}
@keyframes natraLocationLine{0%,100%{opacity:.25;transform:scaleX(.65)}50%{opacity:1;transform:scaleX(1)}}
.location-inner{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(430px,.95fr);gap:clamp(40px,7vw,110px);align-items:end;position:relative;z-index:2}
.location-copy h2{font-family:'Cormorant Garamond',serif;font-size:clamp(48px,6vw,90px);line-height:.9;letter-spacing:-.035em;margin:0 0 24px;font-weight:600}
.location-copy h2 em{font-weight:500;color:var(--gold2)}
.location-copy p{margin:0;color:var(--muted);font-size:13px;line-height:1.7;letter-spacing:.02em}
.location-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.location-card{min-height:158px;border:1px solid rgba(255,255,255,.13);background:rgba(7,12,24,.68);backdrop-filter:blur(14px);padding:22px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;transition:.35s cubic-bezier(.16,1,.3,1)}
.location-card:before{content:"";position:absolute;inset:-80% -30%;background:linear-gradient(110deg,transparent 38%,rgba(130,188,255,.17) 48%,transparent 58%);transform:translateX(-65%);transition:.65s}
.location-card:hover{transform:translateY(-6px);border-color:rgba(94,156,255,.55);box-shadow:0 20px 55px rgba(0,0,0,.34),0 0 36px rgba(47,102,255,.10)}
.location-card:hover:before{transform:translateX(55%)}
.location-card-primary{background:linear-gradient(135deg,rgba(37,87,228,.95),rgba(57,163,255,.74));border-color:rgba(117,184,255,.72)}
.location-card span{font-size:8px;letter-spacing:.2em;color:#b9c8e5;position:relative;z-index:1}
.location-card-primary span{color:#eaf4ff}
.location-card strong{font-family:'Cormorant Garamond',serif;font-size:27px;line-height:1.05;position:relative;z-index:1}
.location-card i{position:absolute;right:20px;top:18px;font-style:normal;font-size:18px;z-index:1}
.event-date strong{font-size:clamp(34px,3.2vw,52px);white-space:nowrap}
.footer-grid a[href*="facebook.com"],.footer-grid a[href*="google.com/maps"]{transition:.25s}.footer-grid a[href*="facebook.com"]:hover,.footer-grid a[href*="google.com/maps"]:hover{color:var(--gold2)}
@media(max-width:1000px){.location-inner{grid-template-columns:1fr}.location-actions{max-width:760px}}
@media(max-width:680px){.location-section{padding:74px 20px}.location-copy h2{font-size:49px}.location-actions{grid-template-columns:1fr}.location-card{min-height:130px}.location-card strong{font-size:25px}.event-date strong{font-size:34px}}
@media(prefers-reduced-motion:reduce){.location-section:after{animation:none}}


/* ==========================================================
   R1.2.1 – TYPOGRAPHY POLISH VIP
   Modern Vietnamese readability + luxury display hierarchy
   ========================================================== */
:root{
  --font-ui:'Be Vietnam Pro',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --font-display:'Playfair Display','Times New Roman',serif;
}
body{font-family:var(--font-ui);font-weight:400;letter-spacing:-.006em;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
.desktop-nav,.hero-eyebrow,.hero-side,.hero-bottom,.kicker,.menu-tag,.event-title p,.event-note,.field label,.footer-grid span,.footer-grid a,.footer-grid small,.footer-bottom,.location-card span{font-family:var(--font-ui)}
.desktop-nav{font-size:10.5px;font-weight:800;letter-spacing:.115em}
.mobile-menu-grid a{font-family:var(--font-ui);font-weight:750;letter-spacing:-.03em}
.hero h1,.section-copy h2,.section-head h2,.booking-copy h2,.gallery-title h2,.location-copy h2{font-family:var(--font-display);font-weight:600;letter-spacing:-.038em}
.hero p{font-family:var(--font-ui);font-style:normal;font-weight:400;letter-spacing:-.018em;line-height:1.6;color:#d8e2f2}
.marquee span{font-family:var(--font-ui);font-size:18px;font-weight:700;letter-spacing:.14em}
.section-number,.menu-index,.event-date strong{font-family:var(--font-ui);font-weight:700}
.section-copy p,.section-head p,.booking-copy>p,.location-copy p{font-family:var(--font-ui);font-size:14px;line-height:1.85;letter-spacing:-.006em}
.art-main strong{font-family:var(--font-display);font-weight:600;letter-spacing:-.045em}
.art-mini b{font-family:var(--font-ui);font-weight:800;letter-spacing:-.04em}
.stat strong{font-family:var(--font-ui);font-weight:800;letter-spacing:-.045em}
.menu-card h3{font-family:var(--font-ui);font-size:30px;line-height:1.18;font-weight:750;letter-spacing:-.035em}
.menu-card p{font-size:12.5px;line-height:1.75;letter-spacing:-.008em}
.event-title h3{font-family:var(--font-ui);font-weight:750;letter-spacing:-.035em;line-height:1.12}
.booking-contact a{font-family:var(--font-ui);font-size:27px;font-weight:750;letter-spacing:-.025em}
.location-card strong{font-family:var(--font-ui);font-size:22px;line-height:1.35;font-weight:650;letter-spacing:-.025em}
.footer-grid p{font-family:var(--font-ui);font-size:19px;line-height:1.5;font-weight:500;letter-spacing:-.02em;color:#eef4ff;text-wrap:balance}
.footer-grid span{font-weight:700;letter-spacing:.16em}
.footer-grid a,.footer-grid small{font-size:9.5px;font-weight:500;letter-spacing:.095em}
.footer-top p{font-family:var(--font-ui);font-weight:600;letter-spacing:.16em}
.btn,.floating-booking{font-family:var(--font-ui);font-weight:800;letter-spacing:.09em}
.field input,.field select,.field textarea{font-family:var(--font-ui);font-weight:450;letter-spacing:-.01em}
@media(max-width:680px){
  .desktop-nav{letter-spacing:.08em}
  .hero h1{letter-spacing:-.045em}
  .hero p{font-size:18px;line-height:1.55}
  .section-copy p,.section-head p,.booking-copy>p,.location-copy p{font-size:13.5px;line-height:1.8}
  .menu-card h3{font-size:26px}
  .event-title h3{font-size:27px}
  .location-card strong{font-size:20px}
  .footer-grid p{font-size:17px;line-height:1.5}
}
