:root{--bg:#0c0f13;--panel:#12161c;--panel-2:#0f1318;--txt:#e8ecf2;--muted:#a8b0bb;--gold:#d9a441;--gold-2:#b8872d;--stroke:rgba(255,255,255,.06);--shadow:0 10px 25px rgba(0,0,0,.35);--radius:18px}*{box-sizing:border-box}html,body,#root{height:100%}html{scroll-behavior:smooth}body{margin:0;font:16px/1.6 system-ui,-apple-system,Segoe UI,Roboto,Ubuntu;color:var(--txt);background:radial-gradient(1200px 700px at 70% -10%,#1a2230,#0c0f13 60%),var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.container{max-width:1200px;margin-inline:auto;padding-inline:24px}h1{font-size:clamp(32px,4vw + 6px,56px);line-height:1.1;margin:0 0 10px}h2{font-size:clamp(24px,2vw + 6px,34px);margin:0 0 8px}h3{font-size:clamp(18px,1vw + 6px,22px);margin:0 0 6px}p{margin:0 0 10px}a{color:inherit;text-decoration:none}.muted{color:var(--muted)}.t-gold{color:var(--gold)}.eyebrow{letter-spacing:.12em;text-transform:uppercase;font-size:12px;color:var(--muted);margin-bottom:6px}.nav{position:sticky;top:0;z-index:20;-webkit-backdrop-filter:saturate(120%) blur(10px);backdrop-filter:saturate(120%) blur(10px);background:#0c0f1399;border-bottom:1px solid var(--stroke)}.nav__inner{display:flex;align-items:center;justify-content:space-between;height:64px}.brand{display:flex;align-items:center;gap:10px;font-weight:700}.brand__dot{width:10px;height:10px;border-radius:50%;background:var(--gold)}.nav__links{display:flex;gap:12px;align-items:center}.nav__links a{opacity:.9;display:inline-flex;align-items:center;justify-content:center;height:40px;padding:0 8px;border-radius:10px}.nav__links a:hover{opacity:1}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 18px;border-radius:12px;font-weight:600;border:1px solid var(--stroke);color:var(--txt);background:var(--panel);box-shadow:var(--shadow);transition:.2s ease}.btn:hover{transform:translateY(-1px);border-color:#ffffff1f}.btn--sm{height:36px;padding:0 14px}.btn--gold{background:linear-gradient(180deg,var(--gold) 0%,var(--gold-2) 100%);color:#1b1205;border:0}.btn--gold:hover{filter:saturate(110%) brightness(1.02)}.btn--ghost{background:transparent}.hero{padding:68px 0 18px;background:radial-gradient(800px 500px at 20% -5%,rgba(217,164,65,.1) 0%,transparent 60%),radial-gradient(700px 500px at 100% 20%,rgba(47,74,120,.15) 0%,transparent 60%)}.hero__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center}.hero__copy .cta{display:flex;gap:12px;margin:18px 0 12px}.hero__lead{max-width:55ch}.bullets{list-style:none;padding:0;margin:12px 0 0;color:var(--muted)}.bullets li{margin:4px 0}.hero__visual{display:grid;place-items:center}.visual-card{width:100%;border-radius:var(--radius);background:radial-gradient(100% 120% at 80% 0%,#1a2029,#0f141a 60%),var(--panel);border:1px solid var(--stroke);box-shadow:var(--shadow);position:relative;overflow:hidden}.visual-glow{position:absolute;inset:-30% -10% auto auto;width:60%;height:60%;background:radial-gradient(closest-side,#d9a44138,#d9a44100);filter:blur(30px);pointer-events:none}.gtrack{display:flex;gap:16px;height:100%;padding:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;cursor:grab;-webkit-mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent)}.gtrack.is-grabbing{cursor:grabbing}.gtrack:focus{outline:1px solid rgba(255,255,255,.12);outline-offset:2px}.gtrack::-webkit-scrollbar{height:10px}.gtrack::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:999px}.gitem{flex:0 0 82%;position:relative;scroll-snap-align:center;border-radius:16px;overflow:hidden;border:1px solid var(--stroke);background:#0f141a;box-shadow:var(--shadow);transition:transform .18s ease}.gitem:hover{transform:translateY(-2px)}.gbox{width:100%;aspect-ratio:16/9;min-height:300px;background:#0f141a}.gbox img{width:100%;height:100%;display:block;object-fit:cover;image-rendering:auto;transform:scale(1.02);transition:filter .6s ease,opacity .6s ease,transform .6s ease}.img-loading{filter:blur(14px) saturate(90%);opacity:.7}.img-loaded{filter:none;opacity:1;transform:scale(1)}.img-cap{position:absolute;left:10px;bottom:10px;font-size:12px;padding:2px 8px;border-radius:999px;background:#00000073;color:#fff;border:1px solid rgba(255,255,255,.18)}.gallery__hint{position:absolute;right:12px;bottom:10px;font-size:12px;color:var(--muted);opacity:.85}@media(max-width:980px){.hero__grid{grid-template-columns:1fr}.gitem{flex-basis:92%}}.pillars{padding:30px 0}.pillars__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{background:linear-gradient(180deg,var(--panel) 0%,var(--panel-2) 100%);border:1px solid var(--stroke);border-radius:16px;padding:18px;min-height:160px;transition:transform .18s ease,box-shadow .18s ease}.card:hover{transform:translateY(-2px)}.card p{color:var(--muted)}@media(max-width:980px){.pillars__grid{grid-template-columns:1fr}}.services{padding:18px 0 40px}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:18px;margin-bottom:10px}.services__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service{position:relative;background:var(--panel);border:1px solid var(--stroke);border-radius:16px;padding:18px;transition:.2s ease;display:flex;flex-direction:column;gap:6px}.service:hover{transform:translateY(-2px)}.service__badge{position:absolute;top:12px;right:12px;padding:4px 8px;font-size:12px;border-radius:999px;background:#d9a4412e;color:var(--gold);border:1px solid rgba(217,164,65,.32)}.service p{color:var(--muted)}.link{color:var(--gold)}.link:hover{text-decoration:underline}@media(max-width:1100px){.services__grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.services__grid{grid-template-columns:1fr}}.location{padding:10px 0 60px}.location__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:24px;align-items:start}.hours{list-style:none;padding:0;margin:10px 0;color:var(--muted)}.map{border-radius:16px;overflow:hidden;border:1px solid var(--stroke);box-shadow:var(--shadow)}.map iframe{width:100%;height:340px;border:0}@media(max-width:980px){.location__grid{grid-template-columns:1fr}}.footer{border-top:1px solid var(--stroke);background:#0a0d11}.footer__inner{display:flex;align-items:center;justify-content:space-between;height:68px}[data-reveal]{opacity:0;transform:translateY(24px);transition:all .6s cubic-bezier(.2,.8,.2,1)}.reveal-in{opacity:1;transform:none}.booking .booking__row{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap}.booking .booking__col{display:flex;flex-direction:column;gap:8px}.booking .field{display:flex;flex-direction:column;gap:6px;width:100%;max-width:420px}.booking .field__label{font-weight:600;font-size:14px;color:var(--muted)}.booking .select{position:relative;width:100%;height:44px;border-radius:12px;background:var(--panel);border:1px solid var(--stroke);box-shadow:var(--shadow)}.booking .select select{width:100%;height:44px;padding:0 40px 0 14px;background:transparent;color:var(--txt);border:0;outline:none;font-weight:600;appearance:none;-webkit-appearance:none;-moz-appearance:none;cursor:pointer}.booking .select:after{content:"▾";position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:14px;color:var(--muted);pointer-events:none}.booking .select:focus-within{border-color:#ffffff24}.booking .booking__legend{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:14px}.booking .booking__legend .gap{width:14px}.booking .dot{width:10px;height:10px;border-radius:999px;display:inline-block}.booking .dot--ok{background:#26c281}.booking .dot--bad{background:#c0392b}.booking .fc{--fc-border-color: var(--stroke)}.booking .fc .fc-toolbar-title{font-size:16px}.booking .fc .fc-button{background:var(--panel);border:1px solid var(--stroke);color:var(--txt);height:32px;padding:0 10px;border-radius:10px}.booking .fc .fc-button-primary:not(:disabled).fc-button-active,.booking .fc .fc-button-primary:not(:disabled):active{background:linear-gradient(180deg,var(--gold) 0%,var(--gold-2) 100%);color:#1b1205;border:0}.booking .fc .fc-timegrid-slot{height:42px}
