:root{--abyss:#02060d;--deep:#0B2545;--mid:#13315C;--light:#8DA9C4;--paper:#EEF4ED;--ink:#0D0D0D;--lure:#7ecbff;--rule:rgba(220,235,255,.12);--txt:#dbe7f5;--muted:#6b8aab}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--abyss);color:var(--txt);font-family:Manrope,Helvetica Neue,sans-serif;font-weight:400;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}body:before{content:"";position:fixed;top:0;left:0;right:0;height:108px;z-index:45;pointer-events:none;background:linear-gradient(to bottom,var(--abyss) 0,var(--abyss) 58px,transparent 100%)}@media (max-width:720px){body:before{height:88px;background:linear-gradient(to bottom,var(--abyss) 0,var(--abyss) 44px,transparent 100%)}}.site-nav{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:24px 36px;font-family:Archivo,Helvetica,Arial,sans-serif;font-size:15px;font-weight:400;letter-spacing:0;text-transform:lowercase;color:#fff;pointer-events:none}.site-nav .brand{pointer-events:auto;display:flex;align-items:center;gap:14px}.site-nav .brand-mark{height:64px;width:auto;display:block}.site-nav .links{pointer-events:auto;display:flex;align-items:center;gap:40px}.site-nav .links a{position:relative;padding:6px 0;color:#fff;transition:opacity .3s ease;opacity:.92}.site-nav .links a:after{content:"";position:absolute;left:50%;right:50%;bottom:0;height:1px;background:var(--lure);transition:left .35s ease,right .35s ease,opacity .35s ease;opacity:0}.site-nav .links a:hover,.site-nav .links a.active{opacity:1}.site-nav .links a:hover:after,.site-nav .links a.active:after{left:0;right:0;opacity:1}.site-nav .nav-drop{position:relative}.site-nav .drop-panel{position:absolute;top:100%;right:-60px;left:auto;display:flex;flex-direction:column;gap:2px;min-width:230px;max-height:min(72vh,640px);overflow-y:auto;padding:20px 24px;margin-top:10px;background:#030810f5;border:1px solid rgba(220,235,255,.12);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .25s ease,transform .25s ease,visibility .25s}.site-nav .nav-drop:hover .drop-panel,.site-nav .nav-drop:focus-within .drop-panel{opacity:1;visibility:visible;transform:translateY(0)}.site-nav .drop-panel a{font-size:13px;color:#c9d7e6;white-space:nowrap;padding:5px 0;opacity:1}.site-nav .drop-panel a:hover{color:#fff}.site-nav .drop-panel a:after{display:none}.site-nav .drop-panel a.drop-sub{font-size:11px;color:#8ba3bd;padding:3px 0 3px 12px}.site-nav .drop-panel a.drop-sub:hover{color:#fff}.site-nav .drop-fold{margin-top:8px;border-top:1px solid rgba(220,235,255,.1);padding-top:6px}.site-nav .drop-fold summary{list-style:none;cursor:pointer;padding:4px 0;font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center}.site-nav .drop-fold summary::-webkit-details-marker{display:none}.site-nav .drop-fold summary:after{content:"+";margin-left:auto;color:var(--lure);font-size:13px;line-height:1}.site-nav .drop-fold[open] summary:after{content:"–"}.site-nav .drop-fold a{display:block}.site-footer{position:relative;z-index:5;display:flex;justify-content:space-between;align-items:center;padding:40px 36px 32px;margin-top:80px;border-top:1px solid var(--rule);font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--muted);pointer-events:none}.site-footer .copy{pointer-events:auto}.site-footer .social{pointer-events:auto;display:flex;gap:28px}.site-footer .social a{transition:color .3s ease}.site-footer .social a:hover{color:#fff}@media (max-width:900px){.site-nav .drop-panel{display:none}}@media (max-width:720px){.site-nav{padding:18px 20px;font-size:12.5px}.site-nav .brand-mark{height:46px}.site-nav .links{gap:16px}.site-footer{padding:16px 20px;font-size:8.5px;letter-spacing:.2em}.site-footer .social{gap:16px}}.page{min-height:100vh;padding:140px 8vw 120px;background:radial-gradient(1100px 700px at 80% -10%,rgba(20,60,110,.45),transparent 60%),radial-gradient(900px 600px at -10% 110%,rgba(11,37,69,.55),transparent 60%),var(--abyss)}.page-eyebrow{font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.4em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:14px;margin-bottom:28px}.page-eyebrow:before{content:"";width:36px;height:1px;background:var(--lure)}.page-title{font-family:Geist,sans-serif;font-weight:900;font-size:clamp(38px,5.4vw,77px);line-height:1;letter-spacing:-.02em;text-transform:uppercase;color:#f1f6fb;margin-bottom:20px}.page-title em{font-family:inherit;font-style:normal;font-weight:inherit;color:var(--lure)}.page-lead{font-size:clamp(20px,1.8vw,26px);line-height:1.5;max-width:48ch;color:#cdd9e8;margin-bottom:80px}.rule{height:1px;background:var(--rule);width:100%}.mono{font-family:JetBrains Mono,monospace;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.silk{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden;background:#02060d}.silk:before,.silk:after{content:"";position:absolute;top:-55%;right:-55%;bottom:-55%;left:-55%;will-change:transform;background-repeat:no-repeat}.silk:before{background:radial-gradient(40% 62% at 26% 28%,rgba(126,203,255,.3),transparent 62%),radial-gradient(54% 54% at 74% 56%,rgba(40,98,158,.46),transparent 66%),radial-gradient(48% 58% at 52% 88%,rgba(141,169,196,.18),transparent 62%);filter:blur(54px);opacity:.9;animation:silk-a 26s ease-in-out infinite alternate}.silk:after{background:repeating-linear-gradient(125deg,transparent 0 5%,rgba(126,203,255,.09) 6.5% 8.5%,transparent 10% 18%),repeating-linear-gradient(58deg,transparent 0 7%,rgba(13,32,58,.6) 8.5% 11.5%,transparent 13% 22%);filter:blur(42px);mix-blend-mode:screen;opacity:.6;animation:silk-b 40s ease-in-out infinite alternate-reverse}@keyframes silk-a{0%{transform:translate(-8%,-6%) rotate(-4deg) scale(1.15)}to{transform:translate(8%,6%) rotate(5deg) scale(1.35)}}@keyframes silk-b{0%{transform:translate(6%,4%) rotate(3deg) scale(1.2)}to{transform:translate(-7%,-5%) rotate(-5deg) scale(1.42)}}@media (prefers-reduced-motion:reduce){.silk:before,.silk:after{animation:none}}:root.spa-on html,:root.spa-on body{background:transparent}:root.spa-on .silk,:root.spa-on .cs-amb,:root.spa-on .wipe-in{display:none}:root.spa-on .page{background:transparent}#spa-bg{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0;z-index:0;pointer-events:none;background:var(--abyss);opacity:0;transition:opacity 1.2s ease}#spa-bg.on{opacity:1}:root.spa-on body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;background:#02060d5c;transition:background .8s ease}:root.spa-on main{position:relative;z-index:2}:root.spa-contact body:after{background:#02060d00}:root.spa-contact body:before{display:none}#spa-veil{position:fixed;top:0;right:0;bottom:0;left:0;z-index:44;pointer-events:none;background:var(--abyss);opacity:1;transition:opacity .55s cubic-bezier(.4,0,.2,1)}#spa-veil:before{content:"";position:absolute;top:-15%;right:-15%;bottom:-15%;left:-15%;background:radial-gradient(46% 54% at 42% 40%,rgba(126,203,255,.16),transparent 62%),radial-gradient(54% 50% at 68% 64%,rgba(40,98,158,.24),transparent 66%);filter:blur(38px);transform:scale(1.04);transition:transform .6s ease,opacity .55s ease}#spa-veil.gone{opacity:0}#spa-veil.gone:before{transform:scale(1.16);opacity:0}@media (prefers-reduced-motion:reduce){#spa-veil,#spa-veil:before{transition-duration:.2s}}#labels-container{position:fixed;top:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:5}.location-label{position:absolute;top:0;left:0;color:#fff;font-size:.85rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;opacity:0;text-shadow:0 2px 10px rgba(0,0,0,.8);display:flex;align-items:center;white-space:nowrap;will-change:transform,opacity}.location-label:before{content:"";display:inline-block;width:6px;height:6px;background:#4da8da;border-radius:50%;margin-right:8px;box-shadow:0 0 10px #4da8da,0 0 20px #4da8da}.location-label.small-label{font-size:.5rem;letter-spacing:1px;font-weight:600}.location-label.small-label:before{width:4px;height:4px;margin-right:5px;box-shadow:0 0 8px #4da8da}
