/* ForeverCMS — Luxe layer. Loaded last: deep midnight, burnished gold, glass and quiet motion.
   Every page keeps its own markup; this file only refines the shared surfaces. */
:root{
  --lx-bg:#06080d;--lx-bg-2:#0b1018;--lx-surface:#0f141d;--lx-glass:rgba(14,19,28,.78);
  --lx-line:rgba(214,183,122,.18);--lx-line-strong:rgba(226,196,138,.42);
  --lx-gold:#d6b77a;--lx-gold-hi:#f6e3b0;--lx-gold-lo:#9c7a3e;
  --lx-gold-grad:linear-gradient(135deg,#f7e7bd 0%,#d9b46c 38%,#a97f3c 62%,#e9cf93 100%);
  --lx-gold-text:linear-gradient(180deg,#fbeec9 0%,#e2c07c 55%,#b48a45 100%);
  --lx-text:#ece6d8;--lx-muted:#98a2b2;
  --lx-display:Cinzel,'Trajan Pro',Georgia,serif;--lx-sans:'Inter','Segoe UI',system-ui,sans-serif;
  --lx-radius:14px;--lx-shadow:0 24px 60px -24px rgba(0,0,0,.85),0 2px 6px rgba(0,0,0,.35);
  --lx-ease:cubic-bezier(.2,.7,.2,1);
}

/* ---------- canvas ---------- */
html{scrollbar-color:#5b4a2c var(--lx-bg)}
body:not([class*="admin"]){background-color:var(--lx-bg)!important;color:var(--lx-text);font-family:var(--lx-sans)!important;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body:not([class*="admin"])::before{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(1200px 600px at 50% -200px,rgba(214,183,122,.10),transparent 70%),
             radial-gradient(900px 700px at 100% 100%,rgba(61,123,255,.05),transparent 60%)}
body:not([class*="admin"])::after{content:'';position:fixed;inset:0;z-index:9990;pointer-events:none;opacity:.035;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
::selection{background:rgba(214,183,122,.35);color:#fff}
::-webkit-scrollbar{width:11px;height:11px}::-webkit-scrollbar-track{background:var(--lx-bg)}
::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#6b5530,#3d301b);border:3px solid var(--lx-bg);border-radius:10px}
::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#8f7140,#55432a)}
:focus-visible{outline:2px solid var(--lx-gold-hi);outline-offset:3px}

.lx-kicker{display:inline-flex;align-items:center;gap:12px;font:600 10.5px/1.6 var(--lx-sans);letter-spacing:.24em;text-transform:uppercase;color:var(--lx-gold)}
.lx-kicker::before{content:'';width:28px;height:1px;background:linear-gradient(90deg,transparent,var(--lx-gold))}

/* ---------- header: glass bar, hairline glow, editorial navigation ---------- */
header.main-header{background:rgba(7,10,15,.72)!important;backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);
  border-bottom:0!important;box-shadow:0 10px 30px -12px rgba(0,0,0,.7)!important;transition:background .35s var(--lx-ease),box-shadow .35s}
header.main-header::after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;
  background:linear-gradient(90deg,transparent 0%,rgba(214,183,122,.15) 15%,rgba(246,227,176,.75) 50%,rgba(214,183,122,.15) 85%,transparent 100%)}
body.lx-scrolled header.main-header{background:rgba(5,7,11,.92)!important}
header.main-header .parallelogram{display:none}
.main-header .header-inner{padding-top:10px;padding-bottom:10px;transition:padding .3s var(--lx-ease)}
body.lx-scrolled .main-header .header-inner{padding-top:4px;padding-bottom:4px}

.main-header .nav-link{clip-path:none!important;background:none!important;border:0!important;border-radius:8px;padding:.55rem .78rem!important;
  font-family:var(--lx-sans)!important;font-weight:600!important;font-size:.74rem!important;letter-spacing:.12em!important;color:#c3c7cf!important;
  text-shadow:none!important;box-shadow:none!important;transform:none!important;transition:color .25s,background .25s}
.main-header .nav-link::after{content:'';position:absolute;left:.78rem;right:.78rem;bottom:.22rem;height:1px;background:var(--lx-gold-grad);
  transform:scaleX(0);transform-origin:center;transition:transform .35s var(--lx-ease)}
.main-header .nav-link:hover{color:#fff4d8!important;background:rgba(214,183,122,.06)!important}
.main-header .nav-link:hover::after,.main-header .nav-link.active::after{transform:scaleX(1)}
.main-header .nav-link.active{color:var(--lx-gold-hi)!important}
@media(max-width:1399px){
  .main-header nav.nav-menu.nav-open{background:rgba(7,10,15,.97)!important;backdrop-filter:blur(18px);border-radius:0 0 18px 18px}
  .main-header nav.nav-menu.nav-open .nav-link{border:1px solid var(--lx-line)!important;border-radius:12px;letter-spacing:.14em!important}
  .main-header nav.nav-menu.nav-open .nav-link::after{display:none}
  .main-header nav.nav-menu.nav-open .nav-link.active{border-color:var(--lx-line-strong)!important;background:rgba(214,183,122,.08)!important}
}
.lang-btn{clip-path:none!important;border-radius:999px!important;background:rgba(255,255,255,.03)!important;border-color:var(--lx-line)!important;padding:.42rem .8rem!important}
.lang-btn:hover{border-color:var(--lx-line-strong)!important;background:rgba(214,183,122,.08)!important}
.wow-dropdown{clip-path:none!important;border-radius:16px;background:rgba(10,14,21,.96)!important;backdrop-filter:blur(16px);border-color:var(--lx-line)!important;
  box-shadow:var(--lx-shadow)!important;filter:none!important;overflow:hidden;animation:lx-drop .22s var(--lx-ease)}
.wow-dropdown::before{display:none}
.dropdown-item{border-radius:10px;margin:2px 6px}
@keyframes lx-drop{from{opacity:0;transform:translateY(-6px) scale(.98)}}
.avatar-frame{clip-path:none!important;border-radius:50%;border:1.5px solid transparent!important;
  background:linear-gradient(#0b1018,#0b1018) padding-box,var(--lx-gold-grad) border-box;box-shadow:0 0 0 3px rgba(214,183,122,.08),0 4px 14px rgba(0,0,0,.5)!important}
.badge-gold,.badge-iron{clip-path:none!important;border-radius:999px;padding:.3rem .7rem!important}
.badge-gold{background:var(--lx-gold-grad)!important;box-shadow:inset 0 1px rgba(255,255,255,.45),0 4px 12px -4px rgba(214,183,122,.5)!important}

/* ---------- buttons: burnished gold with a passing sheen ---------- */
.btn-gold,.cm-button:not(.cm-secondary),.lx-button{position:relative;overflow:hidden;isolation:isolate;
  background:var(--lx-gold-grad)!important;background-size:160% 160%!important;color:#1c150a!important;border:1px solid rgba(255,236,190,.55)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.55),inset 0 -2px rgba(0,0,0,.18),0 10px 26px -10px rgba(214,183,122,.6)!important;
  transition:transform .25s var(--lx-ease),box-shadow .25s,background-position .6s!important}
.btn-gold::after,.cm-button:not(.cm-secondary)::after,.lx-button::after{content:'';position:absolute;inset:0;z-index:-1;
  background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.55) 50%,transparent 65%);transform:translateX(-120%);transition:transform .8s var(--lx-ease)}
.btn-gold:hover,.cm-button:not(.cm-secondary):not(:disabled):hover,.lx-button:hover{transform:translateY(-1px);background-position:100% 0!important;
  box-shadow:inset 0 1px rgba(255,255,255,.6),inset 0 -2px rgba(0,0,0,.18),0 16px 34px -12px rgba(214,183,122,.75)!important}
.btn-gold:hover::after,.cm-button:not(.cm-secondary):hover::after,.lx-button:hover::after{transform:translateX(120%)}
.btn-iron,.cm-secondary{backdrop-filter:blur(8px);border-color:var(--lx-line-strong)!important;transition:border-color .25s,background .25s,transform .25s var(--lx-ease)!important}
.btn-iron:hover,.cm-secondary:hover{border-color:var(--lx-gold-hi)!important;transform:translateY(-1px)}

/* ---------- surfaces ---------- */
.wow-panel,.forever-pillars,.realm-card,.online-stat,.news-card{border-radius:var(--lx-radius)!important}
.wow-panel{background:linear-gradient(180deg,rgba(17,23,33,.86),rgba(10,14,21,.9))!important;border:1px solid var(--lx-line)!important;
  box-shadow:var(--lx-shadow),inset 0 1px rgba(255,255,255,.035)!important;backdrop-filter:blur(10px)}
.news-card{overflow:hidden;transition:transform .45s var(--lx-ease),box-shadow .45s,border-color .45s!important}
.news-card:hover{transform:translateY(-4px);box-shadow:0 30px 60px -25px rgba(0,0,0,.9),0 0 0 1px var(--lx-line-strong)!important}
.news-card img{transition:transform 1.2s var(--lx-ease)!important}.news-card:hover img{transform:scale(1.045)}
.forever-home>.forever-hero{border-radius:22px!important;border:1px solid var(--lx-line)!important;box-shadow:0 40px 90px -35px #000,inset 0 1px rgba(255,255,255,.05)!important;overflow:hidden}
.wow-title,.forever-home>.forever-hero .wow-title{background:var(--lx-gold-text)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;
  text-shadow:none!important;filter:drop-shadow(0 6px 18px rgba(0,0,0,.6))}
.forever-eyebrow{border-radius:999px!important;border-color:var(--lx-line-strong)!important;background:rgba(214,183,122,.06)!important;backdrop-filter:blur(6px)}

/* ---------- footer ---------- */
.wow-footer{position:relative;background:linear-gradient(180deg,rgba(6,8,13,0),#05070b 30%)!important;border-top:0!important}
.wow-footer::before{content:'';position:absolute;left:8%;right:8%;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(246,227,176,.55),transparent)}
.footer-nav-link{position:relative;letter-spacing:.08em;transition:color .25s}
.footer-nav-link:hover{color:var(--lx-gold-hi)!important}

/* ---------- motion ---------- */
@media(prefers-reduced-motion:no-preference){
  /* Light entrance on page headers only: pages with the WebGL viewer keep their main thread for the model. */
  .forever-home>.forever-hero,.lm-head,.cm-hero,.cm-detail-head{animation:lx-rise .7s var(--lx-ease) backwards}
}
@keyframes lx-rise{from{opacity:0;transform:translateY(14px)}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.btn-gold::after,.cm-button::after,.lx-button::after{display:none}}
