@font-face{font-family:lx-serif;src:local("Georgia");size-adjust:87%;ascent-override:106%;descent-override:33%;line-gap-override:0%}
@font-face{font-family:lx-sans;src:local("Arial"),local("Helvetica Neue"),local("Roboto");size-adjust:96%;ascent-override:111%;descent-override:39%;line-gap-override:0%}
:root{
--sky:#35c9ff; --sky-d:#0b86b6; --skyd:#0b86b6; --ink:#222223; --night:#0e1114; --night2:#14181c; --band:#1c1c1d;
--w:#ffffff; --g1:#f6f6f6; --g2:#e9e9e9; --t1:#4b4a50; --t2:#77767c; --mist:#c3ccd3;
--serif:"Cormorant Garamond","Cormorant",lx-serif,Garamond,Georgia,"Times New Roman",serif;
--sans:"Jost",lx-sans,"Avenir Next","Century Gothic","Helvetica Neue",Arial,sans-serif;
--ease:cubic-bezier(.16,1,.3,1); --io:cubic-bezier(.76,0,.24,1);
--gut:clamp(20px,5.8vw,88px); --sec:clamp(60px,6.4vw,96px); --wrap:1200px; --hh:84px; --lr:420px;
--text:var(--t1); --mute:var(--t2); --line:var(--g2); --soft:var(--g1); --bg:#fff; --sky-t:#eaf8fe; --card:#fff; --field:#fff;
--r:0px; --r-s:0px; --shadow:none; --shadow-s:none;
--spark:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-12 -12 24 24'%3E%3Cpath d='M0-12 2.1-4.6C2.5-3.3 3.3-2.5 4.6-2.1L12 0 4.6 2.1C3.3 2.5 2.5 3.3 2.1 4.6L0 12-2.1 4.6C-2.5 3.3-3.3 2.5-4.6 2.1L-12 0-4.6-2.1C-3.3-2.5-2.5-3.3-2.1-4.6Z'/%3E%3C/svg%3E");
--logo-l:url(/assets/logo-light.svg?v=029b7a86);
}
@media (max-width:1099px){:root{--hh:72px}}
@media (max-width:899px){:root{--lr:330px}}
.phero,.sec.dark,.sec.blue,.cta-band,.ftr,[data-lux-dark]{
--ink:#fff; --text:var(--mist); --mute:#9fabb3; --line:rgba(255,255,255,.16); --soft:rgba(255,255,255,.05); --bg:var(--night);
--sky-d:var(--sky); --skyd:var(--sky); --sky-t:rgba(53,201,255,.14); --card:rgba(255,255,255,.03); --field:rgba(255,255,255,.04);
color:var(--text);
}
html{font-synthesis:style;font-synthesis-weight:none}
body{font:300 1.0625rem/1.65 var(--sans);color:var(--text);background:var(--w);text-rendering:optimizeLegibility;position:relative}
b,strong{font-weight:500}
em{font-style:italic}
::selection{background:var(--sky);color:var(--night)}
:focus-visible{outline:2px solid var(--sky-d);outline-offset:3px;border-radius:0}
h1,h2,h3,h4{font-family:var(--serif);font-weight:300;color:var(--ink);letter-spacing:-.012em;line-height:1.04}
h1{font-size:clamp(2.5rem,5.2vw,4.5rem)}
h2{font-size:clamp(2rem,3.5vw,3.2rem)}
h3{font-size:1.5rem;font-weight:400;line-height:1.14;letter-spacing:0}
h4{font-size:1.2rem;font-weight:500;letter-spacing:0}
h2.big,.intro h1,.sec.blue h2{font-family:var(--serif);font-weight:300;letter-spacing:-.015em;font-size:clamp(2.1rem,4vw,3.7rem)}
.hl{color:var(--sky-d);font-style:italic}
main [id]{scroll-margin-top:calc(var(--hh) + 14px)}
.wrap{max-width:calc(var(--wrap) + 2*var(--gut));padding:0 var(--gut)}
.wrap[style*="max-width:860px"]{max-width:calc(860px + 2*var(--gut))!important}
.wrap[style*="max-width:720px"]{max-width:calc(720px + 2*var(--gut))!important}
body:not(.lux-dt) main{padding-top:calc(var(--hh) + env(safe-area-inset-top,0px))}
.skip{z-index:210}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.lab,.kicker{display:flex;align-items:center;gap:12px;font:400 .6875rem/1.5 var(--sans);letter-spacing:.28em;text-transform:uppercase;color:var(--sky-d);margin:0 0 14px}
.lab{margin:0}
.kicker::before,.crumbs::before{content:"";width:14px;height:14px;flex:none;background:currentColor;-webkit-mask:var(--spark) center/contain no-repeat;mask:var(--spark) center/contain no-repeat}
.center .kicker,.kicker.center{justify-content:center}
.dark .kicker{color:var(--sky)}
.sk{width:14px;height:14px;flex:none;fill:currentColor;overflow:visible;display:block}
.lead{font:300 clamp(1.08rem,1.3vw,1.25rem)/1.55 var(--sans);max-width:38em;color:var(--text)}
.note{font-size:.8125rem;color:var(--mute);letter-spacing:.01em}
.hln{display:block;height:1px;background:var(--sky);transform-origin:left}
.gl{display:block;height:1px;background:var(--line);transform-origin:left}
.im{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;background-size:cover;background-position:center;background-repeat:no-repeat}
figure.ph{margin:0}
.ph{position:relative;display:block;overflow:hidden}
.ph-c,.ph-l{position:absolute;inset:0;overflow:hidden}
.ph .par{position:absolute;inset:-9% 0}
.ul{position:relative;display:inline-flex;align-items:center;min-height:44px;font:400 .6875rem/1.5 var(--sans);letter-spacing:.26em;text-transform:uppercase;padding:6px 0;color:inherit;
background:linear-gradient(currentColor,currentColor) 0 calc(100% - 9px)/100% 1px no-repeat}
.ul::after{content:"";position:absolute;left:0;right:0;bottom:9px;height:1px;background:var(--sky);transform:scaleX(0);transform-origin:right;transition:transform .9s var(--ease)}
.ul:hover::after,.ul:focus-visible::after{transform:scaleX(1);transform-origin:left}
.link{font-weight:400;color:var(--ink);border-bottom:1px solid var(--sky);padding-bottom:1px;transition:color .5s,border-color .5s}
.link:hover{color:var(--sky-d);border-color:currentColor}
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:52px;max-width:100%;padding:10px 28px;border:1px solid currentColor;border-radius:0;
background:transparent;color:var(--ink);font:400 .6875rem/1.35 var(--sans);letter-spacing:.22em;text-transform:uppercase;text-align:center;white-space:normal;cursor:pointer;overflow:hidden;isolation:isolate;box-shadow:none;
transition:color .7s var(--ease),border-color .7s var(--ease),background-color .7s var(--ease)}
.btn::before{content:"";position:absolute;inset:0;background:var(--sky);transform:translateY(101%);transition:transform .8s var(--ease);z-index:-1}
.btn:hover{transform:none}
.btn:hover,.btn:focus-visible{color:var(--night);border-color:var(--sky)}
.btn:hover::before,.btn:focus-visible::before{transform:none}
.btn i{display:block;width:22px;height:1px;flex:none;background:currentColor;transition:width .8s var(--ease)}
.btn:hover i{width:34px}
.btn.primary,.btn.wa,.btn.fill{background:var(--sky);border-color:var(--sky);color:var(--night);box-shadow:none}
.btn.primary:hover,.btn.wa:hover{background:var(--sky)}
.btn.primary::before,.btn.wa::before,.btn.fill::before{background:var(--ink)}
.btn.primary:hover,.btn.primary:focus-visible,.btn.wa:hover,.btn.wa:focus-visible,.btn.fill:hover,.btn.fill:focus-visible{color:var(--bg);border-color:var(--ink)}
.btn.dark{background:var(--ink);border-color:var(--ink);color:var(--bg)}
.btn.dark:hover,.btn.dark:focus-visible{color:var(--night);border-color:var(--sky)}
.btn.ghost{background:transparent;border-color:currentColor;color:var(--ink)}
.btn.ghost:hover{border-color:var(--sky)}
.btn.wa+.btn.primary{background:transparent;border-color:currentColor;color:var(--ink)}
.btn.wa+.btn.primary::before{background:var(--sky)}
.btn.wa+.btn.primary:hover,.btn.wa+.btn.primary:focus-visible{color:var(--night);border-color:var(--sky)}
.btn.sm{min-height:44px;padding:8px 20px;font-size:.6875rem;border-radius:0}
.btn.block{width:100%}
select,input,textarea{font:400 1rem/1.3 var(--sans);color:var(--ink);border:1px solid var(--line);border-radius:0;background-color:var(--field);padding:13px 14px;transition:border-color .5s,box-shadow .5s}
select:focus,input:focus,textarea:focus{border-color:var(--sky-d);box-shadow:0 1px 0 0 var(--sky-d);outline:none}
::placeholder{color:var(--mute);opacity:1}
.fld label,.filters label,.search label,.nsearch label{font:400 .6875rem/1.4 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--mute)}
.fld label .note{letter-spacing:.04em;text-transform:none}
.phero select option,.sec.dark select option,.sec.blue select option{background:var(--night2);color:#fff}
.hdr{position:absolute;left:0;right:0;top:0;z-index:80;padding-top:env(safe-area-inset-top,0px);background:var(--w);color:var(--ink);border-bottom:1px solid var(--g2);
-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;transition:transform .9s var(--ease),background-color .6s,color .6s,border-color .6s}
.lux-js .hdr{position:fixed}
.hdr.scrolled{box-shadow:none}
.hdr .wrap{max-width:none;height:var(--hh);gap:0;padding:0 var(--gut)}
.hdr .logo{position:relative;display:block;height:54px;aspect-ratio:239/207;flex:none}
.hdr .logo img{display:block;width:100%;height:100%;object-fit:contain;transition:opacity .6s}
.hdr .logo::before{content:"";position:absolute;inset:0;background:var(--logo-l) center/contain no-repeat;opacity:0;transition:opacity .6s}
.lux-dt .hdr:not(.lx-solid),.hdr.lx-dk,.lx-menu .hdr{color:var(--w)}
.lux-dt .hdr:not(.lx-solid),.lx-menu .hdr{background:transparent;border-bottom-color:transparent}
.hdr.lx-dk{background:rgba(14,17,20,.97);border-bottom-color:rgba(255,255,255,.1)}
.lux-dt .hdr:not(.lx-solid) .logo::before,.hdr.lx-dk .logo::before,.lx-menu .hdr .logo::before{opacity:1}
.lux-dt .hdr:not(.lx-solid) .logo img,.hdr.lx-dk .logo img,.lx-menu .hdr .logo img{opacity:0}
.lux-dn .hdr:not(.lx-solid){background:var(--night);color:var(--w);border-bottom-color:rgba(255,255,255,.1)}
.lux-dn .hdr:not(.lx-solid) .logo::before{opacity:1}
.lux-dn .hdr:not(.lx-solid) .logo img{opacity:0}
.hdr.lx-hide{transform:translateY(-101%)}
.lx-menu .hdr{transform:none;transition:none}
.nav{gap:clamp(16px,2.1vw,34px);align-items:center;margin-left:auto}
.nav a{position:relative;font:400 .6875rem/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:inherit;padding:16px 0;border-radius:0;white-space:nowrap}
.nav a:hover,.nav a[aria-current=page]{background:none}
.nav a::after{content:"";position:absolute;left:0;right:0;bottom:8px;height:1px;background:var(--sky);transform:scaleX(0);transform-origin:right;transition:transform .8s var(--ease)}
.nav a:hover::after,.nav a:focus-visible::after,.nav a[aria-current=page]::after{transform:scaleX(1);transform-origin:left}
.hdr .cta{display:flex;align-items:center;gap:clamp(12px,1.5vw,22px);margin-left:clamp(16px,2.1vw,34px)}
.langsel{width:auto;max-width:150px;margin:0;border:0;border-radius:0;padding:14px 18px 14px 0;color:inherit;font:400 .6875rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;-webkit-appearance:none;appearance:none;
background:linear-gradient(45deg,transparent 50%,currentColor 50%) calc(100% - 6px) 52%/5px 5px no-repeat,linear-gradient(135deg,currentColor 50%,transparent 50%) calc(100% - 1px) 52%/5px 5px no-repeat}
.langsel:focus{box-shadow:none}
.langsel:focus-visible{outline:2px solid var(--sky);outline-offset:2px}
.langsel option{background:var(--night2);color:#fff;letter-spacing:0;text-transform:none}
.hdr .cta .btn,.hdr .cta .btn.primary{min-height:44px;padding:0 22px;background:transparent;border:1px solid currentColor;color:inherit}
.hdr .cta .btn::before{background:var(--sky)}
.hdr .cta .btn:hover,.hdr .cta .btn:focus-visible{color:var(--night);border-color:var(--sky)}
.burger{display:none}
@media (max-width:1099px){
.hdr .logo{height:48px}
.burger{display:block;position:relative;margin-left:auto;width:auto;min-width:44px;height:44px;padding:0 0 0 16px;border:0;border-radius:0;background:none;color:inherit;font-size:0;cursor:pointer}
.burger::after{content:"Menu";font:400 .6875rem/1 var(--sans);letter-spacing:.26em;text-transform:uppercase}
.burger[aria-expanded=true]::after{content:"Close"}
.hdr .nav{position:fixed;left:0;right:0;top:0;bottom:0;z-index:-1;display:flex;flex-direction:column;align-items:stretch;gap:0;margin:0;padding:calc(108px + env(safe-area-inset-top,0px)) var(--gut) 130px;background:var(--night);color:var(--w);
border:0;box-shadow:none;overflow-y:auto;visibility:hidden;opacity:0;transition:opacity .6s var(--ease),visibility 0s .6s}
.hdr .nav.open{visibility:visible;opacity:1;transition:opacity .6s var(--ease)}
.hdr .nav a{display:flex;align-items:center;justify-content:space-between;min-height:52px;padding:9px 0;font:300 2.1rem/1.2 var(--serif);letter-spacing:0;text-transform:none;border-bottom:1px solid rgba(255,255,255,.14)}
.hdr .nav a::after{position:static;width:11px;height:11px;flex:none;background:var(--sky);-webkit-mask:var(--spark) center/contain no-repeat;mask:var(--spark) center/contain no-repeat;transform:none;opacity:.55;transition:opacity .5s}
.hdr .nav a[aria-current=page]::after,.hdr .nav a:hover::after{transform:none;opacity:1}
.hdr .nav a[aria-current=page]{font-style:italic;color:var(--sky)}
.hdr .cta{position:fixed;left:var(--gut);right:var(--gut);bottom:calc(28px + env(safe-area-inset-bottom,0px));z-index:1;justify-content:space-between;gap:16px;margin:0;color:var(--w);visibility:hidden;opacity:0;transition:opacity .6s var(--ease),visibility 0s .6s}
.hdr .nav.open~.cta{visibility:visible;opacity:1;transition:opacity .6s var(--ease)}
.hdr .cta .langsel{max-width:none}
.hdr .cta .btn,.hdr .cta .btn.primary{background:var(--sky);border-color:var(--sky);color:var(--night);min-height:48px;padding:0 26px}
.hdr .cta .btn::before{background:var(--w)}
.hdr .cta .btn:hover{border-color:var(--w)}
html.lx-menu{overflow:hidden}
}
.ftr{position:relative;overflow:hidden;background:#0a0c0f;color:var(--mist);padding:clamp(58px,4.6vw,72px) 0 calc(12px + env(safe-area-inset-bottom,0px));font-size:.8125rem;line-height:1.5}
.ftr>.wrap{position:relative;max-width:none}
.ftr .cols,.ftr .cols.c5{grid-template-columns:1.7fr 1fr 1fr 1fr 1fr;gap:16px 24px;align-items:start}
.ftr .logo{display:block;width:clamp(64px,5.4vw,78px);aspect-ratio:239/207;padding:0;background:var(--logo-l) center/contain no-repeat}
.ftr .logo img{width:100%;height:100%;margin:0;opacity:0}
.ftr .cols>div>p{margin:0}
.ftr .cols>div>p:nth-of-type(1){font:300 clamp(1rem,1.1vw,1.1rem)/1.25 var(--serif);color:var(--w);max-width:19em;margin-top:8px}
.ftr .cols>div>p:nth-of-type(2){margin-top:6px;-webkit-user-select:text;user-select:text}
.ftr .cols>div>p:nth-of-type(2) a{display:inline-block;padding:0;margin-right:.9em;color:var(--w);font-size:.8rem}
.ftr .cols>div>p:nth-of-type(3){font-size:.8rem;line-height:1.55;max-width:26em}
.ftr h4{font:400 .6875rem/1.5 var(--sans);letter-spacing:.28em;text-transform:uppercase;color:var(--sky);margin:0 0 2px}
.ftr nav a{display:flex;align-items:center;min-height:24px;padding:0;font-size:.8125rem;color:var(--mist);transition:color .5s}
.ftr a:hover,.ftr a:focus-visible{color:var(--sky)}
.lx-ftw{font:300 clamp(1.9rem,4.4vw,4.2rem)/.9 var(--serif);letter-spacing:-.03em;white-space:nowrap;margin:clamp(8px,1vw,14px) 0 0;padding-bottom:.1em;text-align:center;color:var(--w)}
.lx-ftw em{color:var(--sky)}
.ftr .legal{border-top:1px solid rgba(255,255,255,.16);margin-top:14px;padding-top:9px;padding-right:76px;gap:8px 30px;font-size:.75rem;letter-spacing:.05em;color:var(--mist)}
.lx-ftw+.legal{margin-top:0}
.caus{position:absolute;inset:0;pointer-events:none;overflow:hidden;background:radial-gradient(70% 40% at 78% 12%,rgba(53,201,255,.09),rgba(53,201,255,0) 70%),radial-gradient(60% 34% at 12% 78%,rgba(53,201,255,.06),rgba(53,201,255,0) 70%)}
.caus canvas{display:none}
@media (min-width:900px){
.lux-lan .caus{background:none}
.lux-lan .caus canvas{display:block;position:absolute;left:0;top:0;width:100%;height:100%;opacity:.3;filter:blur(20px);mix-blend-mode:screen}
}
@media (max-width:1099px){.ftr .cols,.ftr .cols.c5{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 14px}.ftr .cols>div{grid-column:1/-1}}
@media (max-width:899px){.ftr{padding-top:54px}.ftr .cols,.ftr .cols.c5{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px}.ftr nav a{min-height:32px}.lx-ftw{font-size:1.9rem}.ftr .legal{padding-right:60px}}
.tide{position:absolute;left:0;right:0;top:-1px;height:clamp(40px,5vw,72px);z-index:3;pointer-events:none;overflow:hidden;transform:scaleY(-1)}
.tide svg{position:absolute;left:0;top:0;width:100%;height:100%;display:block}
.tide .w3{fill:var(--mid);opacity:.26}
.tide .w2{fill:var(--mid);opacity:.5}
.tide .w1{fill:var(--up)}
.tide .wl{fill:none;stroke:var(--sky);stroke-width:1.25;vector-effect:non-scaling-stroke}
.wafab{right:max(20px,env(safe-area-inset-right,0px));bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:75;width:56px;height:56px;border-radius:0;background-color:var(--sky);border:1px solid rgba(14,17,20,.22);box-shadow:none;
background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230e1114' stroke-width='1.5'%3E%3Cpath d='M4 19.5 5.2 15.6A8 8 0 1 1 8.600 19L4 19.5Z' stroke-linejoin='round'/%3E%3Cpath d='M9 9.2c0 3 2.800 5.800 5.800 5.800' stroke-linecap='round'/%3E%3C/svg%3E");
background-size:24px 24px;transition:background-color .6s,transform .8s var(--ease)}
.wafab:hover,.wafab:focus-visible{background-color:var(--w);transform:translateY(-4px)}
.chatfab{right:max(20px,env(safe-area-inset-right,0px));bottom:calc(86px + env(safe-area-inset-bottom,0px));z-index:75;height:56px;min-width:56px;padding:0;gap:0;justify-content:center;border:1px solid var(--sky);border-radius:0;background:var(--night);color:var(--w);
font:400 .6875rem/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;box-shadow:none;overflow:hidden;transition:background-color .6s,color .6s}
.chatfab svg{width:22px;height:22px;margin:0 16px;fill:none;stroke:var(--sky);stroke-width:1.5;stroke-linejoin:round;transition:stroke .6s}
.chatfab span{max-width:0;overflow:hidden;white-space:nowrap;transition:max-width .9s var(--ease),padding .9s var(--ease)}
.chatfab:hover{background:var(--night)}
@media (hover:hover){.chatfab:hover span,.chatfab:focus-visible span{max-width:240px;padding-right:20px}}
.chatfab[aria-expanded=true]{background:var(--sky);color:var(--night)}
.chatfab[aria-expanded=true] svg{stroke:var(--night)}
.chatfab:focus-visible,.chat button:focus-visible,.chat a:focus-visible{outline:2px solid var(--sky);outline-offset:2px}
.chat{right:max(20px,env(safe-area-inset-right,0px));bottom:calc(152px + env(safe-area-inset-bottom,0px));z-index:90;height:min(560px,calc(100vh - 170px));border-radius:0;border:1px solid var(--g2);border-top:2px solid var(--sky);box-shadow:0 24px 60px rgba(8,12,16,.3);font:400 .9375rem/1.45 var(--sans)}
.chat header{background:var(--night);padding:14px 16px}
.chat header b{font:400 1.25rem/1.1 var(--serif)}
.chat header small{font-size:.625rem;letter-spacing:.2em;text-transform:uppercase;color:var(--sky);opacity:1}
.chat-x{font-size:24px;font-weight:300;min-width:44px;min-height:44px;margin:-8px -10px -8px 0}
.chat-log{background:var(--g1)}
.chat-b,.chat-m{border-radius:0}
.chat-b{border-color:var(--g2);border-left:2px solid var(--sky);border-bottom-left-radius:0}
.chat-m{background:var(--ink);border-bottom-right-radius:0}
.chat-o{border:1px solid var(--ink);border-radius:0;background:var(--w);color:var(--ink);font:400 .875rem/1.3 var(--sans);min-height:44px;transition:background-color .5s,color .5s,border-color .5s}
.chat-o:hover,.chat-o.on{background:var(--ink);border-color:var(--ink);color:var(--w)}
.chat-f,.chat-v{border-radius:0;border-color:var(--g2)}
.chat-f label{font:400 .625rem/1.4 var(--sans);letter-spacing:.18em;text-transform:uppercase}
.chat-f input,.chat-f select,.chat-form input{border:1px solid var(--g2);border-radius:0;height:44px}
.chat-v img{border-radius:0}
.chat-v div>b{font:400 1.2rem/1.1 var(--serif)}
.chat-a a{color:var(--sky-d);font-weight:400}
.chat-a button,.chat-form button{border-radius:0;background:var(--sky);color:var(--night);font:400 .6875rem/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;min-height:40px;padding:0 14px}
.chat-form button{min-height:44px;padding:0 18px}
.chat-tease{right:calc(max(20px,env(safe-area-inset-right,0px)) + 68px);bottom:calc(86px + env(safe-area-inset-bottom,0px));z-index:75;min-height:56px;align-items:center;max-width:min(300px,calc(100vw - 110px));border-radius:0;border:1px solid var(--g2);border-left:2px solid var(--sky);box-shadow:0 14px 40px rgba(8,12,16,.22)}
.chat-tt{font:400 .875rem/1.35 var(--sans)}
.chat-tx{min-width:40px;min-height:40px}
@media (max-width:899px){
.wafab{width:46px;height:46px;right:12px;bottom:calc(14px + env(safe-area-inset-bottom,0px));background-size:21px 21px}
.chatfab{height:46px;min-width:46px;right:12px;bottom:calc(68px + env(safe-area-inset-bottom,0px))}
.chatfab svg{margin:0 12px;width:20px;height:20px}
.chat-tease{right:68px;bottom:calc(68px + env(safe-area-inset-bottom,0px));min-height:46px}
.chat{bottom:calc(126px + env(safe-area-inset-bottom,0px));right:12px;height:min(560px,calc(100vh - 140px))}
}
@media (max-width:560px){.chat{right:0;left:0;bottom:0;width:100%;height:min(86vh,640px);border-radius:0;border-left:0;border-right:0}}
.sec{position:relative;padding:var(--sec) 0}
.sec.soft{background:var(--g1)}
.sec.tint{background:var(--g1);box-shadow:inset 0 1px 0 rgba(53,201,255,.55)}
.sec.dark{background:var(--night2);color:var(--mist)}
.sec.dark h2,.sec.dark h3{color:var(--w)}
.sec.blue{background:#0a0d11;color:var(--mist);overflow:hidden}
.sec.blue::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(52% 70% at 78% 40%,rgba(53,201,255,.11),rgba(53,201,255,0) 70%),radial-gradient(40% 50% at 6% 96%,rgba(53,201,255,.06),rgba(53,201,255,0) 70%)}
.sec.blue>.wrap{position:relative}
.sec.blue h2{color:var(--w)}
.sec.blue p{color:var(--mist);font-size:1rem}
.sec.blue img{box-shadow:none;border-radius:0}
.sec .wrap>h2{margin-bottom:.45em}
.phero{position:relative;overflow:hidden;isolation:isolate;background:var(--night);padding:calc(var(--hh) + env(safe-area-inset-top,0px) + clamp(34px,5.2vw,76px)) 0 clamp(38px,4.6vw,66px);border-bottom:1px solid rgba(53,201,255,.28)}
.phero::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(52% 80% at 82% 22%,rgba(53,201,255,.12),rgba(53,201,255,0) 70%),radial-gradient(40% 60% at 4% 100%,rgba(53,201,255,.07),rgba(53,201,255,0) 70%)}
.lux-lan .phero::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle var(--lr) at var(--x,-999px) var(--y,-999px),rgba(53,201,255,.13),rgba(53,201,255,0) 72%)}
.phero>.wrap{position:relative}
.phero>.wrap::after{content:"";position:absolute;right:var(--gut);top:-6px;width:clamp(26px,3.2vw,46px);height:clamp(26px,3.2vw,46px);background:var(--w);-webkit-mask:var(--spark) center/contain no-repeat;mask:var(--spark) center/contain no-repeat;opacity:.9;pointer-events:none}
.phero h1{font-size:clamp(2.6rem,5.6vw,5rem);line-height:.98;letter-spacing:-.018em;max-width:15em;margin:0 0 .28em;padding-right:1em}
.phero .lead{color:var(--mist);margin-bottom:0}
.phero .lead b{color:var(--w);font-weight:400}
.phero .lead+*{margin-top:22px}
.crumbs{align-items:center;gap:10px;margin:0 0 16px;font:400 .6875rem/1.6 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--mute)}
.crumbs::before{width:12px;height:12px;color:var(--sky-d)}
.crumbs a{color:inherit;font-weight:400;transition:color .5s}
.crumbs a:hover{color:var(--sky-d)}
.crumbs span{display:inline-flex;align-items:center;gap:10px;color:var(--ink)}
.crumbs span::before{content:"";width:18px;height:1px;margin:0;background:currentColor;opacity:.4}
.crumbs span a{color:var(--mute)}
.badge,.abadge,.chip,.achip,.aph,.cta-band,.msg,.lb img,.lb button,.asum-top img,.ab .gal,.ab-map,.vmap,.vpin span,.vpop img,.nrow input,.cal div,.aiband,.feats .feat .ic,.feat .ic,.steps li b,.acal-nav button,.search,.search select{border-radius:0}
img[style*="border-radius"]{border-radius:0!important}
.card{background:var(--card);border-color:var(--line);transition:border-color .6s,transform .9s var(--ease)}
.card:hover{transform:translateY(-3px);border-color:var(--sky);box-shadow:none}
.card h3{font-size:1.45rem;line-height:1.1}
.card .loc,.loc{font-size:.6875rem;letter-spacing:.2em;text-transform:uppercase;color:var(--mute)}
.card p{font-size:.9375rem;line-height:1.55}
.price b,.bookcard .amt,.sumrow.total b,.kf b,.stat b{font-family:var(--serif);font-weight:400}
.price b{font-size:1.4rem}
.price small,.bookcard .from{font-size:.625rem;letter-spacing:.2em;text-transform:uppercase}
.badge,.abadge{background:var(--sky);color:var(--night);font:400 .625rem/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;padding:6px 8px 5px;box-shadow:none}
.badge.r{background:var(--night);color:var(--w)}
.chip,.achip{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border:1px solid rgba(34,34,35,.22);background:transparent;color:var(--ink);font:400 .6875rem/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;transition:background-color .5s,color .5s,border-color .5s}
.phero .chip,.sec.dark .chip,.sec.blue .chip,.cta-band .chip{border-color:rgba(255,255,255,.3)}
.chip:hover,.achip:hover{border-color:var(--ink);background:transparent;color:var(--ink)}
.chip[aria-pressed=true],.chip.on,.achip.on{background:var(--ink);border-color:var(--ink);color:var(--bg)}
.feat{background:var(--card);border-color:var(--line)}
.feat p{font-size:.9375rem;line-height:1.6}
.feat .ic{background:none;width:auto;height:auto;display:block;font:italic 300 2.6rem/.9 var(--serif);color:var(--sky-d);margin-bottom:12px}
.kf{background:none;border-top:1px solid var(--line);text-align:left;padding:14px 10px 4px 0}
.kf b{font-size:clamp(1.9rem,2.6vw,2.6rem);font-weight:300;font-style:italic;line-height:1;color:var(--sky-d)}
.kf span{font-size:.6875rem;letter-spacing:.16em;text-transform:uppercase;color:var(--mute);display:block;margin-top:8px;line-height:1.4}
.stat{border-radius:0;box-shadow:none}
details{border:0;border-bottom:1px solid var(--line);border-radius:0;background:none;padding:0;margin:0}
details:first-of-type{border-top:1px solid var(--ink)}
summary{font:300 clamp(1.25rem,1.7vw,1.5rem)/1.2 var(--serif);padding:15px 0 13px;align-items:baseline;transition:color .5s}
summary::-webkit-details-marker{display:none}
summary:hover{color:var(--sky-d)}
summary::after{font:300 1.5rem/1 var(--sans);color:var(--ink);flex:none}
details p{color:var(--text);max-width:40em;font-size:.9875rem}
.cta-band{background:var(--night);border-top:1px solid var(--sky);color:var(--mist);position:relative;overflow:hidden}
.cta-band::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(60% 120% at 88% 10%,rgba(53,201,255,.14),rgba(53,201,255,0) 70%)}
.cta-band>*{position:relative}
.cta-band h2{font-size:clamp(1.7rem,2.9vw,2.7rem);max-width:18em}
.split img{box-shadow:none}
.prose h2{font-size:clamp(1.6rem,2.4vw,2.1rem);font-weight:400}
.prose a{font-weight:400;text-decoration:none;border-bottom:1px solid var(--sky)}
.prose a.btn{border:1px solid var(--sky)}
.panel,.bookcard,.filters,.quote{border-color:var(--line)}
.msg.info{background:var(--sky-t);color:var(--ink);border-left:2px solid var(--sky)}
.steps li b{background:none;color:var(--sky-d);font:italic 400 1.3rem/1 var(--serif);width:auto;height:auto}
.empty{background:var(--g1)}
.lb{background:rgba(10,13,16,.96);z-index:200}
.lb button{background:transparent;border:1px solid rgba(255,255,255,.5);color:var(--w);font:400 .6875rem/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;min-height:44px}
.lb button:hover{background:var(--sky);border-color:var(--sky);color:var(--night)}
.lb .bar{font-weight:400;letter-spacing:.1em}
.lamp{display:none}
.lux-lan .lamp{display:block;position:fixed;left:0;top:0;width:calc(var(--lr)*2.4);height:calc(var(--lr)*2.4);margin:calc(var(--lr)*-1.2) 0 0 calc(var(--lr)*-1.2);border-radius:50%;pointer-events:none;z-index:70;opacity:0;transition:opacity 1.4s var(--ease);will-change:transform;mix-blend-mode:screen;
background:radial-gradient(circle closest-side,rgba(250,253,255,.21) 0%,rgba(170,228,255,.125) 36%,rgba(53,201,255,.055) 66%,rgba(53,201,255,0) 100%)}
.lux-lan .lamp.on{opacity:1}
.lux-lan .ph[data-lit] .ph-dim{filter:brightness(.36) saturate(.5)}
.lux-lan .ph[data-lit] .ph-lit{-webkit-mask-image:radial-gradient(circle var(--lr) at var(--x,-999px) var(--y,-999px),#000 0%,#000 34%,transparent 100%);mask-image:radial-gradient(circle var(--lr) at var(--x,-999px) var(--y,-999px),#000 0%,#000 34%,transparent 100%)}
.lux-lan [data-lt]{position:relative}
.lux-lan [data-lt] .lw{display:inline-block;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.6);padding:.1em .16em .22em .06em;margin:-.1em -.16em -.22em -.06em;
background-image:radial-gradient(circle var(--lr) at calc(var(--x,-999px) - var(--ox,0px)) calc(var(--y,-999px) - var(--oy,0px)),var(--c1,#fff) 0%,var(--c1,#fff) 34%,var(--c0,rgba(255,255,255,0)) 100%);
-webkit-background-clip:text;background-clip:text}
.lux-lan [data-lt] em .lw{--c1:var(--sky);--c0:rgba(53,201,255,0);-webkit-text-stroke-color:rgba(53,201,255,.85)}
.lux-lan [data-lt="dim"] .lw{-webkit-text-stroke:0;--c0:rgba(255,255,255,.54)}
.lux-lan [data-lt="dim"] em .lw{--c0:rgba(53,201,255,.56)}
.lux-lan .ltb[data-lit]{color:transparent;background-image:radial-gradient(circle var(--lr) at var(--x,-999px) var(--y,-999px),#fff 0%,#fff 34%,rgba(255,255,255,.56) 100%);-webkit-background-clip:text;background-clip:text}
.lux-lan .ltb[data-lit] em{color:transparent}
.lux-lan .gl[data-lit]{background-color:transparent;background-image:radial-gradient(circle var(--lr) at var(--x,-999px) var(--y,-999px),rgba(53,201,255,1) 0%,rgba(53,201,255,.9) 30%,rgba(255,255,255,.15) 100%)}
@supports not ((-webkit-background-clip:text) or (background-clip:text)){
.lux-lan [data-lt] .lw,.lux-lan .ltb[data-lit],.lux-lan .ltb[data-lit] em{color:inherit;background-image:none;-webkit-text-stroke:0}
}
.lrail{display:none}
.lux-js .lrail{display:block;position:absolute;left:calc(var(--gut)*.42);top:0;bottom:0;width:0;z-index:60;pointer-events:none}
.lr-bg{position:absolute;left:0;top:104px;bottom:56px;width:1px;background:rgba(128,146,158,.36)}
.lr-fg{position:absolute;left:-1px;top:0;width:2px;height:1000px;background:var(--sky);transform-origin:top;transform:scaleY(0)}
.lr-tip{position:absolute;left:0;top:0;width:9px;height:9px;margin:-4.5px 0 0 -4.5px;border-radius:50%;background:var(--w);box-shadow:0 0 0 2px var(--sky),0 0 16px 5px rgba(53,201,255,.8)}
.lnode{position:absolute;left:0;width:11px;height:11px;margin:-5.5px 0 0 -5.5px;color:var(--w)}
.lnode i{position:absolute;inset:0;transform:rotate(45deg);border:1px solid var(--sky);background:var(--nb,#0e1114);transition:background-color .7s var(--ease),box-shadow .9s var(--ease),transform .9s var(--ease)}
.lnode.t-light{--nb:#fff;color:var(--sky)}
.lnode.on i{background:var(--sky);box-shadow:0 0 0 4px rgba(53,201,255,.18),0 0 20px 5px rgba(53,201,255,.6);transform:rotate(45deg) scale(1.18)}
.lnode svg{position:absolute;left:50%;top:50%;width:26px;height:26px;margin:-13px 0 0 -13px;fill:currentColor;opacity:0}
.lnode span{display:none}
@media (min-width:1100px){
.lnode span{display:block;position:absolute;left:13px;top:-4px;max-height:15em;overflow:hidden;writing-mode:vertical-rl;font:400 .5625rem/1 var(--sans);letter-spacing:.32em;text-transform:uppercase;color:var(--mist);opacity:0;transition:opacity .9s var(--ease);white-space:nowrap}
.lnode.t-light span{color:var(--t2)}
.lnode.cur span{opacity:1}
}
@media (max-width:899px){.lux-js .lrail{left:9px}.lr-bg{top:84px}}
.cur{position:fixed;left:0;top:0;width:88px;height:88px;margin:-44px 0 0 -44px;pointer-events:none;z-index:95;display:none}
.lux-cur .cur{display:block}
.cur-s{position:absolute;left:50%;top:50%;width:16px;height:16px;margin:10px 0 0 10px;fill:var(--sky);transition:transform .6s var(--ease),opacity .4s;filter:drop-shadow(0 0 4px rgba(53,201,255,.9))}
.cur-d{width:100%;height:100%;border-radius:50%;background:var(--w);transform:scale(0);transition:transform .7s var(--ease);display:grid;place-items:center}
.cur-d span{font:400 .6875rem/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--night);padding-left:.24em}
.cur.on .cur-d{transform:scale(1)}
.cur.on .cur-s{transform:scale(0) rotate(90deg);opacity:0}
.cur.off{opacity:0}
.lux-cur [data-cursor]{cursor:none}
.burst{position:absolute;right:-6px;top:6px;width:0;height:0;pointer-events:none}
.burst svg{position:absolute;left:-8px;top:-8px;width:16px;height:16px;fill:var(--sky);opacity:0}
@media (prefers-reduced-motion:no-preference){
.anim .rv{transform:translateY(22px);transition:opacity 1.1s var(--ease),transform 1.2s var(--ease);transition-delay:var(--d,0ms)}
.anim .rv.rv-l,.anim .rv.rv-r{transform:translateY(22px)}
.anim .rv.rv-z{transform:translateY(22px) scale(.98)}
.anim .rv.in{transform:none}
.lux-js [data-split] .w{display:inline-block;overflow:hidden;vertical-align:top;padding:.12em .12em .2em .04em;margin:-.12em -.12em -.2em -.04em}
.lux-js [data-split] .wi{display:inline-block;transform:translateY(142%);transition:transform 1.2s var(--ease)}
.lux-js [data-split].in .wi{transform:none}
.lux-lan [data-lt][data-r] .lw{opacity:0;transform:translateY(.42em);transition:opacity 1.2s var(--ease) calc(var(--wi,0)*.055s),transform 1.4s var(--ease) calc(var(--wi,0)*.055s)}
.lux-lan [data-lt][data-r].in .lw{opacity:1;transform:none}
.lux-js [data-r] .fu,.lux-js .fu[data-r]{opacity:0;transform:translateY(20px);transition:opacity 1.1s var(--ease) var(--d,0s),transform 1.2s var(--ease) var(--d,0s)}
.lux-js [data-r].in .fu,.lux-js .fu[data-r].in{opacity:1;transform:none}
.lux-js li[data-r],.lux-js .up[data-r]{opacity:0;transform:translateY(18px);transition:opacity 1.1s var(--ease) var(--d,0s),transform 1.2s var(--ease) var(--d,0s)}
.lux-js li[data-r].in,.lux-js .up[data-r].in{opacity:1;transform:none}
.lux-js .hln[data-r],.lux-js .gl[data-r]{transform:scaleX(0);transition:transform 1.7s var(--io) var(--d,0s)}
.lux-js .hln[data-r].in,.lux-js .gl[data-r].in{transform:scaleX(1)}
.lux-js .fade[data-r]{opacity:0;transition:opacity 2s var(--ease) var(--d,0s)}
.lux-js .fade[data-r].in{opacity:1}
.lux-js .ph[data-r] .ph-c{clip-path:circle(0% at var(--ix,50%) var(--iy,50%));transition:clip-path 1.9s var(--io) var(--d,0s)}
.lux-js .ph[data-r].in .ph-c{clip-path:circle(150% at var(--ix,50%) var(--iy,50%))}
.lux-js .ph[data-r] .im{transform:scale(1.22);transition:transform 2.8s var(--ease) var(--d,0s)}
.lux-js .ph[data-r].in .im{transform:scale(1)}
.lux-js [data-r] .sk,.lux-js .sk[data-r]{transform:scale(0) rotate(-90deg)}
.lux-js [data-r].in .sk,.lux-js .sk[data-r].in{animation:lxTwinkle 1.6s var(--ease) .1s forwards}
@keyframes lxTwinkle{0%{transform:scale(0) rotate(-90deg)}40%{transform:scale(1.9) rotate(15deg)}100%{transform:scale(1) rotate(0)}}
.lnode.on svg{animation:lxNode 1.5s var(--ease) both}
@keyframes lxNode{0%{opacity:0;transform:scale(0) rotate(-90deg)}40%{opacity:1;transform:scale(1.4) rotate(0)}100%{opacity:0;transform:scale(.5) rotate(45deg)}}
.burst.go svg{animation:lxBurst 1.5s var(--ease) calc(var(--bi)*.06s) forwards}
@keyframes lxBurst{0%{opacity:0;transform:translate(0,0) scale(0) rotate(-45deg)}30%{opacity:1}100%{opacity:0;transform:translate(var(--bx),var(--by)) scale(var(--bs)) rotate(45deg)}}
.burst.go svg:first-child{animation-name:lxBurstStay}
@keyframes lxBurstStay{0%{opacity:0;transform:scale(0) rotate(-90deg)}40%{opacity:1;transform:scale(1.7) rotate(0)}100%{opacity:1;transform:scale(1) rotate(0)}}
@keyframes lxFadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
@keyframes lxFadeIn{from{opacity:0}to{opacity:1}}
@media (max-width:1099px){.hdr .nav.open a{animation:lxFadeUp .9s var(--ease) backwards}
.hdr .nav.open a:nth-child(2){animation-delay:.05s}.hdr .nav.open a:nth-child(3){animation-delay:.1s}.hdr .nav.open a:nth-child(4){animation-delay:.15s}.hdr .nav.open a:nth-child(5){animation-delay:.2s}.hdr .nav.open a:nth-child(6){animation-delay:.25s}.hdr .nav.open a:nth-child(7){animation-delay:.3s}}
details[open]>:not(summary){animation:lxFadeUp .8s var(--ease)}
.lux-js .phero>.wrap::after{animation:lxTwinkle 1.8s var(--ease) .3s backwards}
}
@media (prefers-reduced-motion:reduce){
.lamp,.cur{display:none!important}
}
@media print{.hdr,.lrail,.lamp,.cur,.wafab,.chatfab,.chat,.tide{display:none!important}.lux-js [data-r],.lux-js [data-r] *{opacity:1!important;transform:none!important;clip-path:none!important}}
:root{--hh:100px}
.hdr .logo{height:76px}
@media (max-width:1099px){:root{--hh:84px}.hdr .logo{height:62px}}
.ftr .logo{width:clamp(84px,7vw,104px)}
.chatfab{bottom:calc(20px + env(safe-area-inset-bottom,0px))}
.chat{bottom:calc(86px + env(safe-area-inset-bottom,0px));height:min(560px,calc(100vh - 110px))}
.chat-tease{bottom:calc(20px + env(safe-area-inset-bottom,0px))}
.chat-f select{width:100%}
@media (max-width:899px){
.chatfab{bottom:calc(14px + env(safe-area-inset-bottom,0px))}
.chat-tease{bottom:calc(14px + env(safe-area-inset-bottom,0px))}
.chat{bottom:calc(70px + env(safe-area-inset-bottom,0px));height:min(560px,calc(100vh - 90px))}
}
@media (max-width:560px){.chat{bottom:0;height:min(86vh,640px)}}
@media (min-width:1100px){.hdr .langsel{width:92px}}
.lux-book main{min-height:100vh}
