/* O.N.E Defense — refined site layer (loaded last). Remove the worker injection to roll back. */
:root{--bg:#06080b;--ink:#f2f4f7;--soft:#a3acb8;--faint:#6c7683;--hair:rgba(255,255,255,.12);--steel:#b9c7dc}
html{background:var(--bg)}
body{background:var(--bg);color:var(--ink);font-family:"Inter","Helvetica Neue","Segoe UI",Arial,sans-serif;font-feature-settings:"ss01","cv11";-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
::selection{background:#dfe8f5;color:#06080b}
/* ---- Navigation ---- */
header.site-nav{background:linear-gradient(180deg,rgba(6,8,11,.88),rgba(6,8,11,.0))!important;border-bottom:1px solid transparent!important;backdrop-filter:none!important;transition:background .35s,border-color .35s,backdrop-filter .35s}
header.site-nav.fx-scrolled{background:rgba(6,8,11,.82)!important;border-bottom-color:var(--hair)!important;backdrop-filter:blur(16px) saturate(1.3)!important;-webkit-backdrop-filter:blur(16px) saturate(1.3)!important}
.nav-inner{max-width:1480px!important;padding:18px 40px!important}
.brand .name{font-weight:600!important;letter-spacing:.18em!important;font-size:13px!important}
.brand .sub{display:none!important}
.brand img{height:30px!important}
nav.links{gap:38px!important}
nav.links a{font-size:12px!important;font-weight:500!important;letter-spacing:.1em!important;text-transform:uppercase;opacity:.7!important}
nav.links a:hover,nav.links a.active{opacity:1!important}
nav.links a.active::after{height:1px!important;background:var(--ink)!important;bottom:-6px!important}
.nav-access{font-size:11px!important;letter-spacing:.14em!important;text-transform:uppercase;border:1px solid var(--hair);padding:9px 16px!important;color:var(--ink)!important;opacity:1!important;transition:background .25s,color .25s,border-color .25s}
.nav-access:hover{background:var(--ink);color:#06080b!important;border-color:var(--ink)}
/* ---- Hero ---- */
.hero{min-height:760px!important}
.hero-bg{inset:0!important;height:auto!important}
.hero-bg img{filter:saturate(.7) contrast(1.08) brightness(.9)!important}
.hero-bg::after{background:linear-gradient(180deg,rgba(6,8,11,.55) 0%,rgba(6,8,11,0) 28%,rgba(6,8,11,.15) 55%,var(--bg) 100%),linear-gradient(90deg,rgba(6,8,11,.78) 0%,rgba(6,8,11,0) 62%)!important}
.hero-content{left:max(40px,calc((100vw - 1400px)/2))!important;right:40px!important;bottom:96px!important}
.hero h1{text-transform:none!important;font-size:clamp(44px,6.6vw,104px)!important;line-height:.98!important;letter-spacing:-.045em!important;font-weight:500!important;max-width:13ch!important;margin-bottom:26px!important}
.hero .lede{text-transform:none!important;font-size:clamp(16px,1.35vw,20px)!important;font-weight:400!important;line-height:1.55!important;max-width:520px!important;color:#cfd6e0!important;letter-spacing:0!important;margin-bottom:34px!important}
.hero::after{content:"";position:absolute;left:max(40px,calc((100vw - 1400px)/2));bottom:48px;width:48px;height:1px;background:var(--steel);opacity:.6}
/* ---- Buttons ---- */
.btn{font-family:inherit!important;font-size:12px!important;font-weight:600!important;letter-spacing:.12em!important;padding:15px 26px!important;border-radius:0!important;transition:background .25s,color .25s,border-color .25s,gap .25s}
.btn.primary{background:var(--ink)!important;color:#06080b!important;border:1px solid var(--ink)!important}
.btn.primary:hover{background:transparent!important;color:var(--ink)!important}
.btn.ghost{background:transparent!important;color:var(--ink)!important;border:1px solid rgba(255,255,255,.28)!important}
.btn.ghost:hover{border-color:var(--ink)!important;background:rgba(255,255,255,.06)!important}
.btn.primary::after,.btn.ghost::after{content:"\2192";font-size:14px;letter-spacing:0;transition:transform .25s}
.btn:hover::after{transform:translateX(4px)}
/* ---- Section rhythm ---- */
.intro,.news,.cta,.facilities .wrap,.statsbar{max-width:1480px;margin-left:auto;margin-right:auto}
.intro{padding:150px 40px 110px!important}
.intro h2{font-size:clamp(32px,4.2vw,64px)!important;font-weight:500!important;letter-spacing:-.04em!important;line-height:1.04!important;max-width:20ch!important;text-transform:none!important}
.intro p{font-size:18px!important;line-height:1.6!important;font-weight:400!important;text-transform:none!important;color:var(--soft)!important;max-width:560px!important}
.bento{max-width:1480px;margin:0 auto;padding:0 40px 140px!important;gap:12px!important}
.tile{border:1px solid var(--hair)!important;background:#0b0e13!important;min-height:380px}
.tile img{filter:saturate(.85) contrast(1.05);transition:transform 1.2s cubic-bezier(.2,.7,.2,1),filter .6s!important}
.tile:hover img{transform:scale(1.035)!important;filter:saturate(1) contrast(1.05)}
.tile::after{background:linear-gradient(180deg,rgba(6,8,11,0) 55%,rgba(6,8,11,.88))!important}
.bento .tile span{left:24px!important;bottom:22px!important;font-size:15px!important;font-weight:500!important;letter-spacing:.02em!important}
.bento .tile span::before{content:"";display:block;width:24px;height:1px;background:var(--steel);margin-bottom:12px;transition:width .4s}
.bento .tile:hover span::before{width:56px}
.news{padding:110px 40px!important}
.news h2,.facilities h2{font-size:clamp(28px,3.2vw,48px)!important;font-weight:500!important;letter-spacing:-.035em!important;text-transform:none!important}
.lineup-home .grid{border-top:1px solid var(--hair)!important}
.lineup-home .tile{border:0!important;border-bottom:1px solid var(--hair)!important;background:none!important;padding:26px 0!important;transition:padding .35s,background .35s}
.lineup-home .tile:hover{padding-left:18px!important;background:rgba(255,255,255,.025)!important}
.lineup-home .tile small{letter-spacing:.14em!important;font-size:11px!important;text-transform:uppercase;color:var(--faint)!important}
.lineup-home .tile span{font-weight:500!important}
.lineup-home .tile:hover span{text-decoration:none!important}
.facilities{background:transparent!important;border-top:1px solid var(--hair)}
.fac-card{border:1px solid var(--hair)!important;background:#0b0e13!important}
.fac-card:hover{border-color:rgba(255,255,255,.4)!important;transform:none!important}
.fac-txt small{letter-spacing:.14em!important;color:var(--faint)!important}
.fac-txt h3{font-weight:500!important}
.rows{background:transparent!important}
.prow{border-top:1px solid var(--hair)!important;transition:background .3s}
.prow:hover{background:rgba(255,255,255,.02)}
.prow h3{font-weight:500!important;letter-spacing:-.04em!important}
.prow .cap2{text-transform:none!important;font-size:14px!important;font-weight:400!important;color:var(--soft)!important}
.strip2{max-width:1480px;margin:0 auto;padding:0 40px 140px!important;gap:12px!important}
.strip2 figure{border:1px solid var(--hair)}
.strip2 figcaption{background:linear-gradient(180deg,rgba(6,8,11,0),rgba(6,8,11,.9))!important;padding:90px 28px 26px!important;color:var(--soft)!important}
.strip2 figcaption b{font-family:inherit!important;font-weight:500!important;font-size:20px!important}
.cta{padding:160px 40px!important;border-top:1px solid var(--hair)!important}
.cta h2{font-weight:500!important;letter-spacing:-.045em!important;text-transform:none!important;line-height:1!important;font-size:clamp(38px,5.4vw,84px)!important;max-width:14ch!important}
.cta p{color:var(--soft);font-size:18px;margin-bottom:32px}
/* ---- Footer ---- */
footer{border-top:1px solid var(--hair)!important;background:var(--bg)!important}
footer h5{font-size:11px!important;letter-spacing:.16em!important;text-transform:uppercase;color:var(--faint)!important;font-weight:500!important}
footer a{color:var(--soft)!important;transition:color .2s}footer a:hover{color:var(--ink)!important}
.foot-bottom{color:var(--faint)!important;font-size:12px}
/* ---- Inner pages ---- */
.pcard,.pbody{border-color:var(--hair)!important}
.pbody h3,h1,h2{font-weight:500!important}
.pagehead h1,.page-hero h1{letter-spacing:-.04em!important}
/* ---- Falcon AI removed ---- */
#falcon-ai,.falcon-ai,.fai-launcher,.fai-panel,[id^="falconAi"],[class*="falcon-ai"],[class*="fai-"],[id*="falcon-ai"]{display:none!important}
/* ---- Reveal-on-scroll ---- */
.fx-rv{opacity:0;transform:translateY(22px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}
.fx-rv.fx-in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.fx-rv{opacity:1;transform:none;transition:none}}
@media(max-width:800px){.nav-inner{padding:14px 20px!important}.hero-content{left:20px!important;right:20px!important;bottom:70px!important}.intro,.news,.cta{padding-left:20px!important;padding-right:20px!important}.bento,.strip2{padding-left:20px!important;padding-right:20px!important}}
