:root{--ink-950:#080f1c;--ink-900:#0c1626;--ink-800:#122036;--ink-700:#1b2e4a;--ink-600:#2a4162;--gold-200:#f0dcac;--gold-300:#e6c87e;--gold-400:#d4ac5c;--gold-500:#c2963e;--gold-700:#8a671f;--paper:#faf7f1;--paper-deep:#f2ede2;--surface:#fff;--text:#1c2536;--text-muted:#525e71;--line:#e5decf;--line-dark:#d4ac5c38;--error:#b3261e;--shadow-1:0 1px 2px #0c16260f, 0 4px 12px #0c16260f;--shadow-2:0 2px 6px #0c162614, 0 16px 40px #0c16261f;--glow-gold:0 8px 32px #d4ac5c2e;--ease-out:cubic-bezier(.22, 1, .36, 1);--dur-fast:.15s;--dur-mid:.25s;--dur-slow:.6s;--serif:"Playfair Display", Georgia, "Times New Roman", serif;--sans:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--container:72rem;--gutter:clamp(1.25rem, 5vw, 2.5rem);--section-y:clamp(4rem, 9vw, 7.5rem);--radius-ctl:10px;--radius-card:16px;--radius-media:24px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--sans);color:var(--text);background:var(--paper);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:1rem;line-height:1.6}img,video{max-width:100%;height:auto;display:block}h1,h2,h3,h4{font-family:var(--serif);text-wrap:balance;margin:0;line-height:1.12}p{margin:0}a{color:inherit}button{font:inherit;cursor:pointer}:focus-visible{outline:2px solid var(--gold-500);outline-offset:2px;border-radius:4px}::selection{background:var(--gold-300);color:var(--ink-950)}.skip-link{z-index:200;background:var(--ink-950);color:#fff;border-radius:0 0 var(--radius-ctl) 0;padding:.75rem 1.25rem;position:absolute;top:0;left:-9999px}.skip-link:focus{left:0}.container{max-width:var(--container);padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:var(--section-y)}.section--dark{isolation:isolate;background:radial-gradient(60rem 32rem at 15% 0%, #d4ac5c12, transparent 60%), radial-gradient(48rem 28rem at 90% 100%, #d4ac5c0d, transparent 55%), linear-gradient(175deg, var(--ink-900), var(--ink-950));color:#fff;position:relative}.section--dark:before{content:"";z-index:-1;pointer-events:none;opacity:.55;-webkit-mask-image:radial-gradient(22rem circle at var(--mx,50%) var(--my,50%), #000 0%, #00000014 72%);-webkit-mask-image:radial-gradient(22rem circle at var(--mx,50%) var(--my,50%), #000 0%, #00000014 72%);mask-image:radial-gradient(22rem circle at var(--mx,50%) var(--my,50%), #000 0%, #00000014 72%);background-image:linear-gradient(90deg,#d4ac5c80 1px,#0000 1px),linear-gradient(#d4ac5c80 1px,#0000 1px);background-size:42px 42px,42px 42px;animation:9s linear infinite grid-pan;position:absolute;inset:0}@keyframes grid-pan{0%{background-position:0 0,0 0}to{background-position:42px 42px,42px 42px}}.section--deep{background:var(--paper-deep)}.grain{isolation:isolate;position:relative}.grain:after{content:"";z-index:-1;opacity:.05;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='0.6'/%3E%3C/svg%3E");position:absolute;inset:0}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--gold-700);align-items:center;gap:.75rem;font-size:.75rem;font-weight:600;display:inline-flex}.eyebrow:before{content:"";background:var(--gold-500);width:2rem;height:1px}.section--dark .eyebrow{color:var(--gold-300)}.display-xl{font-size:clamp(2.5rem,6.5vw,4.25rem);font-weight:700}.display-xxl{letter-spacing:-.01em;font-size:clamp(2.75rem,8vw,5.5rem);font-weight:700}.display-lg{font-size:clamp(2rem,4.5vw,3rem);font-weight:700}.display-md{font-size:clamp(1.5rem,3vw,2rem);font-weight:700}.lead{color:var(--text-muted);font-size:clamp(1.0625rem,1.6vw,1.1875rem);line-height:1.7}.section--dark .lead{color:#ffffffb8}.serif-quote{font-family:var(--serif);color:var(--gold-300);font-style:italic;font-weight:500}.tabular{font-variant-numeric:tabular-nums}.btn{border-radius:var(--radius-ctl);min-height:48px;transition:transform var(--dur-fast) var(--ease-out), box-shadow var(--dur-mid) var(--ease-out), background-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);touch-action:manipulation;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.75rem;font-size:.9375rem;font-weight:600;text-decoration:none;display:inline-flex}.btn:active{transform:scale(.98)}.btn--gold{background:linear-gradient(135deg, var(--gold-300), var(--gold-500));color:var(--ink-950);box-shadow:var(--shadow-1)}.btn--gold:hover{box-shadow:var(--glow-gold);transform:translateY(-2px)}.btn--outline-dark{border-color:var(--ink-600);color:var(--text);background:0 0}.btn--outline-dark:hover{border-color:var(--ink-900);background:#0c16260a}.btn--outline-gold{color:var(--gold-300);background:0 0;border-color:#d4ac5c80}.btn--outline-gold:hover{border-color:var(--gold-400);background:#d4ac5c1a}.btn--ghost{color:#ffffffbf;background:0 0;padding-inline:1rem}.btn--ghost:hover{color:#fff;background:#ffffff0f}.btn--lg{min-height:54px;padding:.9rem 2.25rem;font-size:1rem}.btn[disabled]{opacity:.45;cursor:not-allowed;transform:none}.card{isolation:isolate;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-1);transition:transform var(--dur-mid) var(--ease-out), box-shadow var(--dur-mid) var(--ease-out), border-color var(--dur-mid) var(--ease-out);position:relative}.card:before,.card:after{content:"";border-radius:inherit;pointer-events:none;opacity:0;transition:opacity var(--dur-mid) var(--ease-out);position:absolute;inset:0}.card:after{z-index:-1;background:radial-gradient(16rem 16rem at var(--mx,50%) var(--my,50%), #d4ac5c29, transparent 60%)}.card:before{z-index:1;background:radial-gradient(18rem 18rem at var(--mx,50%) var(--my,50%), #e6c87ed9, transparent 55%);-webkit-mask-composite:xor;padding:1.5px;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.card:hover:before,.card:hover:after{opacity:1}.card--hover:hover{box-shadow:var(--shadow-2);border-color:var(--gold-400);transform:translateY(-4px)}.card--dark{background:linear-gradient(180deg, var(--ink-800), var(--ink-900));border:1px solid var(--line-dark);color:#fff}.card--dark:after{background:radial-gradient(16rem 16rem at var(--mx,50%) var(--my,50%), #d4ac5c3d, transparent 62%)}.card--dark.card--hover:hover{box-shadow:var(--glow-gold);border-color:#d4ac5c80}.reveal{opacity:0;transition:opacity var(--dur-slow) var(--ease-out), transform var(--dur-slow) var(--ease-out);transition-delay:var(--reveal-delay,0s);will-change:opacity, transform;transform:translateY(24px)}.reveal.is-in{opacity:1;will-change:auto;transform:none}@keyframes rise-in{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}.enter{animation:rise-in .7s var(--ease-out) both;animation-delay:var(--enter-delay,0s)}@keyframes aura-drift{0%,to{transform:translate(0,0)}50%{transform:translateY(-14px)}}.aura{filter:blur(80px);pointer-events:none;border-radius:50%;animation:9s ease-in-out infinite aura-drift;position:absolute}.accordion-panel{transition:grid-template-rows .3s var(--ease-out);grid-template-rows:0fr;display:grid}.accordion-panel.open{grid-template-rows:1fr}.accordion-panel>div{overflow:hidden}.field label{margin-bottom:.375rem;font-size:.875rem;font-weight:600;display:block}.field input,.field textarea{width:100%;min-height:48px;font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-ctl);transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);padding:.75rem 1rem}.field input:focus,.field textarea:focus{border-color:var(--gold-500);outline:none;box-shadow:0 0 0 3px #d4ac5c40}.booking-label{color:var(--gold-700);align-items:center;gap:.4rem;margin-bottom:.5rem;font-size:.875rem;font-weight:600;display:flex}.booking-chips{flex-wrap:wrap;gap:.5rem;max-height:9.5rem;display:flex;overflow-y:auto}.booking-chip{min-width:4.25rem;font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-ctl);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);flex-direction:column;align-items:center;gap:.1rem;padding:.5rem .7rem;line-height:1.2;display:inline-flex}.booking-chip--time{flex-direction:row;font-size:.875rem;font-weight:600}.booking-chip:hover{border-color:var(--gold-400)}.booking-chip.is-selected{border-color:var(--gold-500);color:var(--gold-800,var(--gold-700));background:#d4ac5c24;box-shadow:0 0 0 2px #d4ac5c47}.cal{border:1px solid var(--line);border-radius:var(--radius-ctl);background:var(--surface);padding:.75rem}.cal-head{justify-content:space-between;align-items:center;margin-bottom:.6rem;display:flex}.cal-title{font-size:.9375rem;font-weight:700}.cal-nav{width:32px;height:32px;color:var(--gold-700);border:1px solid var(--line);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);background:0 0;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.cal-nav:hover:not(:disabled){border-color:var(--gold-400);background:#d4ac5c1a}.cal-nav:disabled{opacity:.35;cursor:not-allowed}.cal-grid{grid-template-columns:repeat(7,1fr);gap:.2rem;display:grid}.cal-dow{margin-bottom:.2rem}.cal-dow-cell{text-align:center;letter-spacing:.04em;color:var(--text-muted);text-transform:uppercase;padding:.2rem 0;font-size:.6875rem;font-weight:700}.cal-day{aspect-ratio:1;font:inherit;color:var(--text);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);background:0 0;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;font-size:.875rem;font-weight:600;display:flex}.cal-day:hover:not(:disabled){border-color:var(--gold-400);background:#d4ac5c1a}.cal-day:disabled{color:var(--text-muted);opacity:.32;cursor:not-allowed}.cal-day.is-today{border-color:var(--line);color:var(--gold-700)}.cal-day.is-selected{background:var(--gold-500);border-color:var(--gold-500);color:#1a130a;box-shadow:0 0 0 2px #d4ac5c4d}.booking-modal{max-width:30rem}@media (width<=640px){.booking-modal{height:100dvh;padding:1.1rem 1rem calc(.9rem + env(safe-area-inset-bottom));justify-content:flex-start;overflow:hidden}.booking-modal>form{-webkit-overflow-scrolling:touch;flex:1;min-height:0;padding-right:.2rem;overflow-y:auto}.booking-modal .auth-logo{border-radius:12px;width:44px;height:44px}.booking-modal .auth-logo img{width:28px;height:28px}.booking-modal h2{margin-top:.6rem!important;font-size:1.15rem!important}.booking-modal .cal{padding:.5rem}.booking-modal .cal-day{border-radius:7px;font-size:.8125rem}.booking-modal .booking-chips{gap:.4rem;max-height:none}.booking-modal .booking-chip--time{padding:.45rem .65rem;font-size:.8125rem}.booking-modal .booking-label{margin-bottom:.35rem}}.field .error-msg{color:var(--error);align-items:center;gap:.375rem;margin-top:.375rem;font-size:.8125rem;display:flex}.data-table{border-collapse:collapse;width:100%;font-size:.9375rem}.data-table th{text-align:left;letter-spacing:.1em;text-transform:uppercase;color:#ffffffe6;background:var(--ink-900);padding:.875rem 1.25rem;font-size:.75rem}.data-table td{border-top:1px solid var(--line);padding:.875rem 1.25rem}.data-table tr.hl td{background:#d4ac5c1a}.section-head.center{text-align:center}.hero-bg{background:var(--ink-950);isolation:isolate;position:relative;overflow:hidden}.hero-bg>video{object-fit:cover;z-index:-2;width:100%;height:100%;position:absolute;inset:0}.hero-bg:before{content:"";z-index:-1;background:linear-gradient(100deg,#080f1ceb 0%,#080f1cb8 45%,#080f1c59 100%),linear-gradient(#0000 65%,#080f1ce6);position:absolute;inset:0}.chip{-webkit-backdrop-filter:blur(10px);border:1px solid var(--line-dark);color:#fff;white-space:nowrap;background:#080f1cb8;border-radius:999px;align-items:center;gap:.5rem;padding:.55rem 1.1rem;font-size:.8125rem;font-weight:600;display:inline-flex}.icon-btn{background:linear-gradient(135deg, var(--gold-300), var(--gold-500));width:56px;height:56px;color:var(--ink-950);box-shadow:var(--glow-gold);transition:transform var(--dur-fast) var(--ease-out), box-shadow var(--dur-mid) var(--ease-out);border:0;border-radius:50%;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.icon-btn:hover{transform:translateY(-3px)rotate(-8deg)}.statement{font-family:var(--sans);letter-spacing:.01em;text-transform:uppercase;color:#fff;text-align:center;text-wrap:balance;font-size:clamp(1.5rem,4.6vw,3.25rem);font-weight:800;line-height:1.18}.statement .inline-video{vertical-align:middle;aspect-ratio:16/10;border:1px solid var(--gold-400);width:clamp(4.5rem,9vw,7rem);box-shadow:var(--glow-gold);border-radius:999px;margin:0 .35em;display:inline-block;overflow:hidden;transform:translateY(-.08em)}.statement .inline-video video{object-fit:cover;width:100%;height:100%}.hero-services{text-align:right;align-content:start;justify-items:end;gap:.45rem;display:grid}.hero-services span{letter-spacing:.16em;text-transform:uppercase;color:#ffffffd9;font-size:.8125rem;font-weight:700}.hero-services small{color:#ffffff80;max-width:13rem;margin-top:.6rem;font-size:.75rem;line-height:1.6}@media (width<=920px){.hero-services{display:none}}.gold-rule{background:linear-gradient(90deg, var(--gold-400), transparent);border:0;width:4rem;height:2px;margin:0}.video-frame{border-radius:var(--radius-media);border:1px solid var(--line-dark);background:var(--ink-950);box-shadow:var(--shadow-2);overflow:hidden}.video-frame video{aspect-ratio:16/9;object-fit:cover;width:100%}.score-ring circle{transition:stroke-dashoffset .9s var(--ease-out)}.site-nav{z-index:40;-webkit-backdrop-filter:blur(16px)saturate(140%);border-bottom:1px solid var(--line-dark);transition:box-shadow var(--dur-mid) var(--ease-out), background var(--dur-mid) var(--ease-out);background:#080f1cd1;position:sticky;top:0}.site-nav.scrolled{background:#080f1cf0;box-shadow:0 10px 40px #0408108c}.topbar{border-bottom:1px solid var(--line-dark);transition:height var(--dur-mid) var(--ease-out), opacity var(--dur-mid) var(--ease-out);opacity:1;height:2.5rem;overflow:hidden}.site-nav.scrolled .topbar{opacity:0;border-bottom-color:#0000;height:0}.topbar-inner{justify-content:space-between;align-items:center;gap:1.5rem;height:2.5rem;display:flex}.topbar-tag{font-family:var(--serif);color:var(--gold-300);letter-spacing:.01em;white-space:nowrap;text-overflow:ellipsis;font-size:.8125rem;font-style:italic;overflow:hidden}.topbar-contact{flex-shrink:0;align-items:center;gap:1.5rem;display:flex}.topbar-contact a{letter-spacing:.04em;color:#ffffffb3;transition:color var(--dur-fast) var(--ease-out);align-items:center;gap:.4rem;font-size:.75rem;font-weight:500;text-decoration:none;display:inline-flex}.topbar-contact a:hover{color:var(--gold-300)}.nav-row{justify-content:space-between;align-items:center;gap:1.5rem;height:4.5rem;display:flex}.brand-lockup{flex-shrink:0;align-items:center;gap:.75rem;text-decoration:none;display:flex}.brand-lockup img{object-fit:contain;transition:transform var(--dur-mid) var(--ease-out)}.brand-lockup:hover img{transform:scale(1.04)}.brand-name{font-family:var(--serif);color:var(--gold-300);letter-spacing:.14em;font-size:1rem;font-weight:700;line-height:1.1}.brand-sub{color:#fff9;letter-spacing:.16em;text-transform:uppercase;margin-top:2px;font-size:.625rem;display:block}.nav-links{align-items:center;gap:1.35rem;display:flex}.nav-link{white-space:nowrap;letter-spacing:.06em;text-transform:uppercase;color:#ffffffb8;transition:color var(--dur-fast) var(--ease-out);padding:.35rem 0;font-size:.72rem;font-weight:600;text-decoration:none;position:relative}.nav-link:after{content:"";background:linear-gradient(90deg, var(--gold-300), var(--gold-500));width:0;height:1.5px;transition:width var(--dur-mid) var(--ease-out);position:absolute;bottom:-2px;left:50%;transform:translate(-50%)}.nav-link:hover{color:#fff}.nav-link:hover:after,.nav-link.active:after{width:100%}.nav-link.active{color:var(--gold-300)}.nav-actions{flex-shrink:0;align-items:center;gap:1rem;display:flex}.nav-divider{background:var(--line-dark);width:1px;height:1.5rem}.mobile-menu{opacity:0;max-height:0;transition:max-height .3s var(--ease-out), opacity .25s var(--ease-out), transform .3s var(--ease-out);overflow:hidden;transform:translateY(-8px)}.mobile-menu.open{opacity:1;max-height:30rem;transform:none}.trust-bar{background:linear-gradient(135deg, var(--gold-300), var(--gold-500));color:var(--ink-950)}.auth-scrim{z-index:100;-webkit-backdrop-filter:blur(6px);background:#080f1c99;padding:1.25rem;display:flex;position:fixed;inset:0;overflow-y:auto}.auth-panel{background:var(--surface);border:1px solid var(--line);width:100%;max-width:26rem;box-shadow:var(--shadow-2), var(--glow-gold);border-radius:20px;margin:auto;padding:clamp(1.5rem,5vw,2.25rem);position:relative;overflow:hidden}@media (width<=640px){.auth-scrim{background:var(--paper);-webkit-backdrop-filter:none;align-items:flex-start;padding:0}.auth-panel{max-width:none;min-height:100dvh;box-shadow:none;padding:1.75rem 1.25rem calc(1.75rem + env(safe-area-inset-bottom));border:0;border-radius:0;flex-direction:column;justify-content:safe center;margin:0;display:flex;overflow:visible}.auth-panel h2{font-size:1.35rem!important}.auth-panel form{gap:.85rem!important}.auth-panel .field input,.auth-panel input:not([maxlength]){min-height:44px}.auth-panel .btn--lg{min-height:48px}.auth-logo{width:60px;height:60px}.auth-logo img{width:40px;height:40px}}.auth-glow{filter:blur(30px);pointer-events:none;background:radial-gradient(60% 100% at 50% 100%,#d4ac5c40,#0000 70%);height:12rem;position:absolute;top:-6rem;left:0;right:0}.auth-logo{background:var(--ink-900);border:1px solid var(--line-dark);width:74px;height:74px;box-shadow:var(--glow-gold);border-radius:18px;place-items:center;margin-inline:auto;display:grid}.auth-logo img{object-fit:contain;width:48px;height:48px;display:block}.auth-close{border:1px solid var(--line);width:40px;height:40px;color:var(--text-muted);z-index:1;background:0 0;border-radius:10px;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:.9rem;right:.9rem}.auth-close:hover{color:var(--text);border-color:var(--gold-400)}.auth-pw-toggle{width:40px;height:40px;color:var(--text-muted);background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:50%;right:.4rem;transform:translateY(-50%)}.auth-pw-toggle:hover{color:var(--gold-700);background:var(--paper-deep)}.auth-switch{font:inherit;color:var(--gold-700);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.support-fab{z-index:90;background:linear-gradient(135deg, var(--gold-300), var(--gold-500));width:60px;height:60px;color:var(--ink-950);box-shadow:var(--glow-gold), var(--shadow-2);transition:transform var(--dur-fast) var(--ease-out);border:0;border-radius:50%;place-items:center;display:grid;position:fixed;bottom:1.25rem;right:1.25rem}.support-fab:hover{transform:translateY(-3px)}.support-badge{background:var(--error);color:#fff;border-radius:999px;place-items:center;min-width:20px;height:20px;font-size:.6875rem;font-weight:700;display:grid;position:absolute;top:-2px;right:-2px}.support-panel{z-index:90;width:min(22rem,100vw - 2.5rem);max-height:min(30rem,100dvh - 8rem);padding:1.25rem;position:fixed;bottom:6.25rem;right:1.25rem;overflow-y:auto}.support-input{width:100%;font:inherit;border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:.55rem .8rem;font-size:.875rem}.support-input:focus{border-color:var(--gold-500);outline:none;box-shadow:0 0 0 3px #d4ac5c40}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal{opacity:1;transform:none}}
