
:root{--bg:#05070c;--panel:#0c121c;--panel2:#111927;--text:#f6f8fb;--muted:#9ba8b8;--line:#283449;--cyan:#38dff0;--violet:#9668ff;--gold:#d7b45b;--max:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 15% 0%,rgba(56,223,240,.1),transparent 34%),radial-gradient(circle at 85% 5%,rgba(150,104,255,.12),transparent 34%),#05070c;color:var(--text);font-family:Inter,Segoe UI,Arial,sans-serif;line-height:1.55}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}button,input{font:inherit}.site-header{height:82px;position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:28px;padding:0 max(24px,calc((100vw - var(--max))/2));background:rgba(5,7,12,.9);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.08)}.brand img{width:145px;max-height:64px;object-fit:contain}.main-nav{display:flex;gap:23px;margin-left:auto}.main-nav a{font-size:13px;font-weight:800;letter-spacing:.12em;color:#b7c2d0}.cart-link{padding:10px 14px;border:1px solid var(--line);border-radius:99px;font-size:12px;font-weight:800}.cart-link span{color:var(--gold);margin-left:7px}.menu-toggle{display:none;background:none;border:0;color:white;font-size:24px}.hero{min-height:650px;display:grid;place-items:center;text-align:center;padding:110px 24px 90px;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(56,223,240,.13),transparent 45%,transparent 55%,rgba(150,104,255,.14)),url('assets/eclipse-cover.png') center/cover;opacity:.26}.hero-inner{position:relative;z-index:1;max-width:900px}.hero-logo{width:min(420px,70vw);margin:0 auto 22px;filter:drop-shadow(0 8px 30px #000)}.eyebrow{font-size:12px;letter-spacing:.22em;font-weight:900;text-transform:uppercase;color:var(--gold);margin:0 0 12px}h1,h2,h3{margin:0;line-height:1.06}.hero h1{font-size:clamp(44px,7vw,88px);letter-spacing:-.045em}.hero h1 span{background:linear-gradient(90deg,var(--cyan),#fff,var(--violet));-webkit-background-clip:text;background-clip:text;color:transparent}.hero .copy{font-size:19px;color:#c0cad7;max-width:700px;margin:25px auto 0}.actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:32px}.btn,.buy-button{display:inline-block;border:1px solid #33425c;border-radius:11px;padding:13px 18px;background:#111927;color:white;font-weight:850;letter-spacing:.04em;cursor:pointer}.btn.primary,.buy-button{background:linear-gradient(90deg,#153541,#282052);border-color:#436d87}.section,.store-main{max-width:var(--max);margin:0 auto;padding:76px 24px}.section-title{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:30px}.section-title h2{font-size:clamp(32px,5vw,55px)}.section-title p{max-width:560px;color:var(--muted);margin:0}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.product-card,.store-card{background:linear-gradient(180deg,#111827,#090e16);border:1px solid var(--line);border-radius:20px;overflow:hidden}.product-art{aspect-ratio:1/1;overflow:hidden;background:#070b11;display:flex;align-items:center;justify-content:center;padding:10px;box-sizing:border-box}.product-art img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center;display:block}.product-body{padding:20px}.product-body h3{font-size:20px;min-height:44px}.product-body p{color:var(--muted);font-size:14px;min-height:66px}.product-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px 0}.product-meta strong{font-size:20px}.product-meta span{font-size:12px;color:#8e9bad}.banner{border:1px solid var(--line);border-radius:24px;padding:34px;background:linear-gradient(90deg,rgba(56,223,240,.1),rgba(150,104,255,.12))}.banner h2{font-size:38px}.banner p{color:#b7c2cf;max-width:820px}.product-detail{display:grid;grid-template-columns:minmax(0,1.07fr) minmax(340px,.93fr);gap:48px;align-items:start}.product-main-image{width:100%;aspect-ratio:1/1;object-fit:contain;object-position:center;border-radius:24px;border:1px solid var(--line);background:#070b11;padding:14px;box-sizing:border-box}.product-info h1{font-size:clamp(36px,5vw,61px);margin:8px 0 18px}.price{font-size:36px;font-weight:900;margin-bottom:16px}.product-lead{font-size:17px;color:#b8c4d3}.format-row{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}.format-row span{font-size:11px;font-weight:800;letter-spacing:.09em;padding:7px 10px;border:1px solid var(--line);border-radius:8px}.product-bullets{padding:0;list-style:none;margin:24px 0}.product-bullets li{padding:9px 0;border-bottom:1px solid rgba(255,255,255,.08);color:#c2ccd8}.product-bullets li:before{content:"✓";color:var(--gold);font-weight:900;margin-right:10px}.buy-button{width:100%;padding:16px 18px}.secondary-link{display:inline-block;margin-top:14px;color:#b4c2d2;font-size:13px}.delivery-note,.notice{margin-top:24px;padding:17px;border:1px solid var(--line);border-radius:12px;background:#0b111a;color:#a8b4c4;font-size:13px}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.related-card{border:1px solid var(--line);background:#0c121c;border-radius:16px;overflow:hidden}.related-card img{width:100%;height:220px;object-fit:contain;object-position:center;background:#070b11;padding:8px;box-sizing:border-box;display:block}.related-card span{display:block;padding:15px;font-weight:800}.cart-page{max-width:920px;margin:0 auto}.cart-items{display:grid;gap:14px;margin:30px 0}.cart-item{display:grid;grid-template-columns:100px 1fr auto;gap:18px;align-items:center;background:#0d131d;border:1px solid var(--line);border-radius:15px;padding:12px}.cart-item img{width:100px;height:100px;object-fit:contain;object-position:center;border-radius:10px;background:#070b11;padding:5px;box-sizing:border-box}.cart-item h3{font-size:18px;margin-bottom:7px}.cart-item p{margin:0;color:var(--muted);font-size:13px}.cart-item button{background:none;border:0;color:#9aa7b9;cursor:pointer}.cart-summary{margin-left:auto;max-width:430px;background:#0e151f;border:1px solid var(--line);border-radius:18px;padding:24px}.cart-summary .row{display:flex;justify-content:space-between;margin:10px 0}.cart-summary .total{font-size:22px;font-weight:900;border-top:1px solid var(--line);padding-top:15px;margin-top:15px}.checkout-grid{display:grid;grid-template-columns:1fr 420px;gap:35px}.checkout-form,.order-summary,.download-card{background:#0d141e;border:1px solid var(--line);border-radius:18px;padding:25px}.field{display:grid;gap:7px;margin:16px 0}.field label{font-size:12px;letter-spacing:.08em;font-weight:800;color:#aeb9c7}.field input{background:#070b11;border:1px solid #2a3548;color:white;border-radius:10px;padding:13px 14px}.order-line{display:flex;gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.07)}.order-line img{width:58px;height:58px;object-fit:contain;object-position:center;border-radius:8px;background:#070b11;padding:3px;box-sizing:border-box}.order-line div{flex:1}.order-line small{display:block;color:#8e9bab}.downloads-list{display:grid;gap:16px;margin-top:28px}.download-card{display:grid;grid-template-columns:120px 1fr auto;gap:18px;align-items:center}.download-card img{width:120px;height:120px;object-fit:contain;object-position:center;border-radius:12px;background:#070b11;padding:6px;box-sizing:border-box}.download-card p{color:var(--muted);font-size:13px}.empty{text-align:center;padding:70px 20px;border:1px dashed #334055;border-radius:18px;color:#91a0b3}.footer{max-width:var(--max);margin:50px auto 0;padding:40px 24px;border-top:1px solid var(--line);display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:30px;color:#9da9b8}.footer img{width:150px}.footer h4{color:white;margin:0 0 12px}.footer a{display:block;margin:6px 0;font-size:13px}.copyright{border-top:1px solid #1c2634;padding:18px 24px;text-align:center;color:#728095;font-size:12px}@media(max-width:980px){.product-grid{grid-template-columns:repeat(2,1fr)}.product-detail,.checkout-grid{grid-template-columns:1fr}.main-nav{display:none}.menu-toggle{display:block;margin-left:auto}.site-header.open .main-nav{display:flex;position:absolute;top:82px;left:0;right:0;background:#070b12;padding:18px 24px;flex-direction:column;align-items:flex-start}}@media(max-width:620px){.product-grid,.related-grid{grid-template-columns:1fr}.hero{min-height:560px;padding-top:80px}.hero h1{font-size:48px}.section,.store-main{padding:52px 18px}.cart-item{grid-template-columns:72px 1fr auto}.cart-item img{width:72px;height:72px}.download-card{grid-template-columns:90px 1fr}.download-card img{width:90px;height:90px}.download-card .btn{grid-column:1/-1;text-align:center}.footer{grid-template-columns:1fr 1fr}}

/* V7.6 — Full-bleed Founder artwork with tuned focal positioning
   Images fill the entire box. Each pack gets its own focal point so important
   subject matter remains visible instead of being cropped arbitrarily. */

.product-art,
.product-main-image,
.related-card img,
.cart-item img,
.order-line img,
.download-card img{
  overflow:hidden;
  background:#070b11;
}

.product-art{
  padding:0 !important;
  display:block !important;
}

.product-art img,
.product-main-image,
.related-card img,
.cart-item img,
.order-line img,
.download-card img{
  width:100%;
  height:100%;
  max-width:none !important;
  max-height:none !important;
  object-fit:cover !important;
  display:block;
  padding:0 !important;
  box-sizing:border-box;
}

/* Default fallback */
img[src*="dawn-cover"]{
  object-position:50% 46% !important;
}
img[src*="dusk-cover"]{
  object-position:54% 48% !important;
}
img[src*="eclipse-cover"]{
  object-position:50% 58% !important;
}
img[src*="ultimate-cover"]{
  object-position:50% 54% !important;
}

/* Larger product-detail art can use a slightly more centered crop. */
.product-main-image[src*="dawn-cover"]{
  object-position:50% 48% !important;
}
.product-main-image[src*="dusk-cover"]{
  object-position:54% 50% !important;
}
.product-main-image[src*="eclipse-cover"]{
  object-position:50% 60% !important;
}
.product-main-image[src*="ultimate-cover"]{
  object-position:50% 55% !important;
}

/* Small thumbnails prioritize faces/center subjects. */
.cart-item img[src*="dawn-cover"],
.order-line img[src*="dawn-cover"],
.download-card img[src*="dawn-cover"]{
  object-position:50% 42% !important;
}
.cart-item img[src*="dusk-cover"],
.order-line img[src*="dusk-cover"],
.download-card img[src*="dusk-cover"]{
  object-position:55% 43% !important;
}
.cart-item img[src*="eclipse-cover"],
.order-line img[src*="eclipse-cover"],
.download-card img[src*="eclipse-cover"]{
  object-position:50% 55% !important;
}
.cart-item img[src*="ultimate-cover"],
.order-line img[src*="ultimate-cover"],
.download-card img[src*="ultimate-cover"]{
  object-position:50% 49% !important;
}

/* V7.9 — Approved square Founder covers */
img[src*="dawn-cover"],
img[src*="dusk-cover"],
img[src*="eclipse-cover"],
img[src*="ultimate-cover"]{
  object-position:50% 50% !important;
}
.product-art img,
.product-main-image{
  object-fit:cover !important;
  object-position:50% 50% !important;
}

/* V8.0 — Enter Eclipse */
.allegiance-pill{display:flex;flex-direction:column;justify-content:center;gap:1px;min-width:108px;padding:7px 12px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:rgba(255,255,255,.025);line-height:1.1}.allegiance-pill span{font-size:8px;letter-spacing:.18em;color:#77869a;font-weight:900}.allegiance-pill b{font-size:10px;letter-spacing:.1em;color:#d9e3ef}body.faction-dawn .allegiance-pill{border-color:rgba(56,223,240,.38);box-shadow:0 0 20px rgba(56,223,240,.09)}body.faction-dawn .allegiance-pill b{color:var(--cyan)}body.faction-dusk .allegiance-pill{border-color:rgba(150,104,255,.45);box-shadow:0 0 20px rgba(150,104,255,.1)}body.faction-dusk .allegiance-pill b{color:#b79aff}
.world-hero{min-height:calc(100vh - 82px);position:relative;display:flex;align-items:center;overflow:hidden;border-bottom:1px solid rgba(255,255,255,.08);background:#05070c url('assets/ultimate-cover.png') center 42%/cover no-repeat}.world-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,10,13,.48) 0%,rgba(5,7,12,.64) 48%,rgba(12,5,19,.48) 100%),linear-gradient(180deg,rgba(5,7,12,.2),rgba(5,7,12,.12) 45%,#05070c 100%)}.world-hero-content{position:relative;z-index:2;width:min(920px,calc(100% - 48px));margin:0 auto;text-align:center;padding:90px 0 120px}.world-hero-content h1{font-size:clamp(48px,7vw,92px);letter-spacing:-.055em;line-height:.98;text-shadow:0 15px 45px rgba(0,0,0,.65)}.world-hero-content h1 span{background:linear-gradient(90deg,#7beaf5 2%,#fff 50%,#b392ff 98%);-webkit-background-clip:text;background-clip:text;color:transparent}.world-hero-content>p:not(.eyebrow){max-width:760px;margin:25px auto 0;color:#d2dae4;font-size:19px;text-shadow:0 4px 18px #000}.world-hero-bottom{position:absolute;z-index:2;bottom:24px;left:50%;transform:translateX(-50%);width:min(1100px,calc(100% - 48px));display:grid;grid-template-columns:1fr 1fr 1fr;text-align:center;font-size:10px;font-weight:900;letter-spacing:.18em;color:#9ca9ba}.world-hero-bottom span:first-child{color:#7de9f4;text-align:left}.world-hero-bottom span:last-child{color:#b69cff;text-align:right}
.universe-intro{padding-top:96px}.world-triptych{display:grid;grid-template-columns:1fr 1.12fr 1fr;gap:14px}.world-panel{min-height:530px;position:relative;overflow:hidden;border:1px solid var(--line);border-radius:22px;background:#080d14}.world-panel img{position:absolute;width:100%;height:100%;object-fit:cover;transition:transform .65s ease}.world-panel:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 28%,rgba(5,7,12,.9) 82%,#05070c)}.world-panel>div{position:absolute;z-index:2;left:24px;right:24px;bottom:24px}.world-panel small{font-size:10px;letter-spacing:.2em;font-weight:900;color:#93a0b0}.world-panel h3{font-size:38px;margin:4px 0 8px}.world-panel p{margin:0;color:#bdc8d5;font-size:14px}.world-panel:hover img{transform:scale(1.035)}.eclipse-world{transform:translateY(-18px)}
.choose-section{max-width:var(--max);margin:0 auto;padding:110px 24px}.choose-copy{max-width:760px;margin:0 auto 38px;text-align:center}.choose-copy h2{font-size:clamp(40px,6vw,70px);letter-spacing:-.04em}.choose-copy>p:not(.eyebrow){color:#afbbca;font-size:17px}.faction-message{font-weight:800;color:#dfe8f1!important}.faction-grid{display:grid;grid-template-columns:minmax(0,1fr) 82px minmax(0,1fr);align-items:center;gap:18px;max-width:1060px;margin:0 auto}.faction-card{border:1px solid var(--line);border-radius:24px;overflow:hidden;background:#0a1018;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}.faction-card:hover{transform:translateY(-5px)}.faction-card>img{width:100%;aspect-ratio:1.25/1;object-fit:cover}.faction-card-body{padding:26px}.faction-card-body h3{font-size:36px;margin-bottom:12px}.faction-card-body>p:not(.eyebrow){color:#adb9c8;min-height:66px}.faction-card.dawn-card:hover,body.faction-dawn .dawn-card{border-color:rgba(56,223,240,.48);box-shadow:0 0 40px rgba(56,223,240,.09)}.faction-card.dusk-card:hover,body.faction-dusk .dusk-card{border-color:rgba(150,104,255,.52);box-shadow:0 0 40px rgba(150,104,255,.1)}.faction-choice{width:100%;margin-top:12px}.faction-choice.selected{border-color:#fff;box-shadow:0 0 0 2px rgba(255,255,255,.08) inset}.dawn-choice.selected{background:linear-gradient(90deg,#103840,#175769)}.dusk-choice.selected{background:linear-gradient(90deg,#24183f,#44306d)}.versus-mark{width:68px;height:68px;margin:auto;border-radius:50%;display:grid;place-items:center;border:1px solid #3a465a;background:#070b12;font-weight:950;letter-spacing:.08em;color:#c7d1dd}
.story-bridge{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center;padding-top:40px;padding-bottom:100px}.story-bridge-image{border-radius:26px;overflow:hidden;border:1px solid var(--line);position:relative}.story-bridge-image img{width:100%;aspect-ratio:1.18/1;object-fit:cover}.story-bridge-copy h2{font-size:clamp(38px,5vw,64px);letter-spacing:-.04em;margin-bottom:22px}.story-bridge-copy p{color:#abb7c6;font-size:17px}.compact-products .product-body p:not(.eyebrow){display:none}.compact-products .product-body h3{min-height:46px}
.story-hero{min-height:760px;position:relative;display:grid;place-items:center;overflow:hidden;text-align:center;background:#05070c}.story-hero-bg{position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,7,12,.28),rgba(5,7,12,.2) 46%,#05070c 100%),linear-gradient(90deg,rgba(56,223,240,.11),transparent 43%,transparent 57%,rgba(150,104,255,.13)),url('assets/ultimate-cover.png') center 43%/cover;filter:saturate(.88)}.story-hero-content{position:relative;z-index:2;max-width:980px;padding:100px 24px}.story-hero h1{font-size:clamp(52px,7.5vw,98px);letter-spacing:-.055em;text-shadow:0 12px 50px #000}.story-hero h1 span{background:linear-gradient(90deg,var(--cyan),#fff,var(--violet));-webkit-background-clip:text;background-clip:text;color:transparent}.story-hero-content>p:not(.eyebrow){max-width:760px;margin:26px auto;color:#d0dae6;font-size:19px}.scroll-cue{display:inline-block;margin-top:46px;font-size:10px;font-weight:900;letter-spacing:.22em;color:#aeb9c7}
.story-chapter{max-width:1120px;margin:0 auto;padding:120px 24px}.centered-chapter{text-align:center;max-width:880px}.chapter-number{font-size:10px;font-weight:950;letter-spacing:.24em;color:#65748a;margin:0 0 8px}.story-chapter h2,.champion-copy h2,.eclipse-reveal h2{font-size:clamp(44px,6vw,78px);letter-spacing:-.05em;margin-bottom:24px}.chapter-lead{font-size:22px!important;color:#d2dbe5!important}.story-chapter p{color:#aab7c6;font-size:17px}.fracture-line{height:1px;max-width:440px;margin:42px auto;background:linear-gradient(90deg,transparent,var(--cyan),#fff,var(--violet),transparent)}
.dual-world-section{max-width:1360px;margin:0 auto;padding:30px 24px 90px;display:grid;gap:28px}.champion-panel{display:grid;grid-template-columns:1fr 1fr;min-height:620px;border:1px solid var(--line);border-radius:28px;overflow:hidden;background:#0a1018}.champion-panel:nth-child(even) .champion-image{order:2}.champion-image img{width:100%;height:100%;object-fit:cover}.champion-copy{padding:70px 58px;align-self:center}.champion-copy p{color:#aab7c6;font-size:16px}.champion-copy strong{color:white}.story-quote{margin:28px 0!important;padding-left:18px;border-left:2px solid var(--gold);font-size:18px!important;font-style:italic;color:#d9e2eb!important}
.eclipse-reveal{min-height:760px;position:relative;overflow:hidden;display:flex;align-items:flex-end;max-width:1440px;margin:40px auto 0;border-block:1px solid var(--line)}.eclipse-reveal>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.eclipse-reveal-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,7,12,.05),rgba(5,7,12,.28) 36%,rgba(5,7,12,.94) 90%)}.eclipse-reveal-copy{position:relative;z-index:2;max-width:780px;padding:70px}.eclipse-reveal-copy p{color:#c2ccd8;font-size:17px}.eclipse-reveal h2{font-size:86px}
.encounter-chapter{display:grid;grid-template-columns:1.08fr .92fr;gap:60px;align-items:center;max-width:1240px}.encounter-media{border-radius:26px;overflow:hidden;border:1px solid var(--line)}.encounter-media img{width:100%;aspect-ratio:1/1;object-fit:cover}.encounter-copy p{color:#aab7c6;font-size:17px}.encounter-copy h2{font-size:clamp(44px,6vw,72px);letter-spacing:-.05em;margin:0 0 24px}.mystery-chapter{padding-top:80px;padding-bottom:130px}.mystery-lock{display:inline-block;margin-top:38px;border:1px solid #39465a;border-radius:99px;padding:11px 18px;font-size:10px;font-weight:900;letter-spacing:.18em;color:#8392a6}.story-choice{padding-top:70px;border-top:1px solid rgba(255,255,255,.08)}.next-path{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:40px}
body.faction-dawn{background:radial-gradient(circle at 0% 10%,rgba(56,223,240,.13),transparent 35%),radial-gradient(circle at 90% 8%,rgba(150,104,255,.05),transparent 32%),#05070c}body.faction-dusk{background:radial-gradient(circle at 10% 8%,rgba(56,223,240,.04),transparent 30%),radial-gradient(circle at 100% 12%,rgba(150,104,255,.15),transparent 36%),#05070c}
@media(max-width:1100px){.allegiance-pill{display:none}.world-triptych{grid-template-columns:1fr 1fr}.eclipse-world{transform:none}.world-panel:last-child{grid-column:1/-1}}@media(max-width:850px){.world-hero{min-height:720px}.world-hero-bottom{grid-template-columns:1fr;font-size:9px;gap:5px}.world-hero-bottom span,.world-hero-bottom span:first-child,.world-hero-bottom span:last-child{text-align:center}.world-triptych,.champion-panel,.encounter-chapter,.story-bridge{grid-template-columns:1fr}.champion-panel:nth-child(even) .champion-image{order:0}.champion-image{max-height:560px}.faction-grid{grid-template-columns:1fr}.versus-mark{width:50px;height:50px}.eclipse-reveal-copy{padding:38px 24px}.eclipse-reveal h2{font-size:64px}}@media(max-width:620px){.world-hero-content{width:calc(100% - 32px);padding-top:65px}.world-hero-content h1{font-size:48px}.world-hero-content>p:not(.eyebrow){font-size:16px}.world-triptych{grid-template-columns:1fr}.world-panel:last-child{grid-column:auto}.world-panel{min-height:480px}.choose-section{padding:75px 18px}.faction-card-body{padding:21px}.story-hero{min-height:680px}.story-hero h1{font-size:50px}.story-chapter{padding:85px 18px}.champion-copy{padding:40px 24px}.eclipse-reveal{min-height:680px}.eclipse-reveal h2{font-size:54px}}


/* =========================================================
   V8.1 — ECLIPSE-FIRST HOME / REFERENCE-CORRECT ENVIRONMENT
   ========================================================= */

.eclipse-home{
  background:#05070c;
}

.eclipse-home-hero{
  min-height:calc(100vh - 82px);
  position:relative;
  display:grid;
  place-items:center;
  overflow:hidden;
  background:#05070c url('assets/eclipse-world-ruins.png') center 46%/cover no-repeat;
  border-bottom:1px solid rgba(255,255,255,.08);
}

.eclipse-home-overlay{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 50% 28%, rgba(5,7,12,.10), rgba(5,7,12,.16) 36%, rgba(5,7,12,.55) 78%),
    linear-gradient(180deg, rgba(5,7,12,.08) 0%, rgba(5,7,12,.14) 50%, rgba(5,7,12,.88) 100%);
}

.eclipse-home-content{
  position:relative;
  z-index:2;
  width:min(1080px,calc(100% - 40px));
  margin:0 auto;
  text-align:center;
  padding:110px 20px 100px;
}

.eclipse-home-content h1{
  margin:0 auto;
  font-size:clamp(48px,6.7vw,92px);
  line-height:.98;
  letter-spacing:-.055em;
  text-align:center;
  text-shadow:0 12px 42px rgba(0,0,0,.74);
}

.eclipse-home-content h1 span{
  background:linear-gradient(90deg,#dce8ef 5%,#fff7dc 48%,#d8ccff 95%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

.eclipse-home-content .hero-copy{
  max-width:780px;
  margin:26px auto 0;
  color:#d9e1e9;
  font-size:19px;
  text-align:center;
  text-shadow:0 4px 18px #000;
}

.centered-actions{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
  margin-top:34px;
}

.centered-title{
  display:block;
  max-width:900px;
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}

.centered-title>p{
  max-width:760px;
  margin:18px auto 0;
}

.eclipse-world-section{
  padding-top:100px;
  padding-bottom:110px;
}

.eclipse-feature-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:48px;
}

.eclipse-feature{
  padding:34px 28px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:20px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.012)),
    #080d14;
  text-align:center;
}

.eclipse-symbol{
  display:grid;
  place-items:center;
  width:58px;
  height:58px;
  margin:0 auto 18px;
  border-radius:50%;
  border:1px solid rgba(213,192,136,.30);
  color:#dac27e;
  font-size:24px;
  box-shadow:0 0 30px rgba(97,83,181,.10);
}

.eclipse-feature h3{
  margin:0 0 12px;
  font-size:18px;
  letter-spacing:.06em;
}

.eclipse-feature p{
  color:#aebac8;
  font-size:14px;
  margin:0;
}

.eclipse-choice-section{
  max-width:1100px;
  margin:0 auto;
  padding-top:60px;
  padding-bottom:120px;
}

.simple-choice-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 88px minmax(0,1fr);
  align-items:center;
  gap:20px;
  max-width:940px;
  margin:38px auto 0;
}

.side-choice{
  min-height:190px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.13);
  background:#0a1018;
  color:#f6f8fa;
  cursor:pointer;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:12px;
  transition:.28s ease;
}

.side-choice-name{
  font-size:44px;
  line-height:1;
  font-weight:950;
  letter-spacing:-.04em;
}

.side-choice-action{
  font-size:11px;
  letter-spacing:.18em;
  font-weight:900;
  color:#9aa9b9;
}

.side-choice-dawn:hover,
.side-choice-dawn.selected{
  border-color:rgba(73,224,241,.55);
  box-shadow:0 0 46px rgba(73,224,241,.10);
  background:linear-gradient(180deg,#0b1920,#091117);
}

.side-choice-dusk:hover,
.side-choice-dusk.selected{
  border-color:rgba(159,112,255,.55);
  box-shadow:0 0 46px rgba(159,112,255,.11);
  background:linear-gradient(180deg,#171023,#0c0b12);
}

.allegiance-reveal{
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:38px;
  align-items:center;
  margin:56px auto 0;
  max-width:980px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:26px;
  overflow:hidden;
  background:#090f17;
}

.allegiance-reveal[hidden]{
  display:none !important;
}

.allegiance-reveal-media img{
  width:100%;
  aspect-ratio:1/1;
  object-fit:cover;
  display:block;
}

.allegiance-reveal-copy{
  padding:44px 46px 44px 4px;
}

.allegiance-reveal-copy h3{
  font-size:40px;
  margin:4px 0 18px;
}

.allegiance-reveal-copy>p:not(.eyebrow){
  color:#b5c0ce;
  font-size:16px;
}

.eclipse-story-tease{
  padding-top:40px;
  padding-bottom:110px;
}

.story-tease-panel{
  max-width:880px;
  margin:0 auto;
  text-align:center;
  padding:60px 34px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:24px;
  background:
    radial-gradient(circle at 50% 0%,rgba(215,194,126,.07),transparent 45%),
    #080d14;
}

.story-tease-panel h2{
  font-size:clamp(38px,5vw,62px);
  letter-spacing:-.045em;
  margin-bottom:18px;
}

.story-tease-panel p{
  max-width:690px;
  margin-left:auto;
  margin-right:auto;
  color:#aebac8;
}

.eclipse-reference-bg{
  background:
    linear-gradient(180deg,rgba(5,7,12,.30),rgba(5,7,12,.18) 48%,#05070c 100%),
    url('assets/eclipse-world-ruins.png') center 45%/cover !important;
}

@media(max-width:850px){
  .eclipse-feature-grid{
    grid-template-columns:1fr;
  }
  .simple-choice-grid{
    grid-template-columns:1fr;
  }
  .allegiance-reveal{
    grid-template-columns:1fr;
  }
  .allegiance-reveal-copy{
    padding:30px;
  }
}

@media(max-width:620px){
  .eclipse-home-hero{
    min-height:720px;
    background-position:center 45%;
  }
  .eclipse-home-content{
    padding-top:90px;
  }
  .eclipse-home-content h1{
    font-size:45px;
  }
  .eclipse-home-content .hero-copy{
    font-size:16px;
  }
  .centered-actions{
    flex-direction:column;
  }
  .centered-actions .btn{
    width:min(330px,100%);
  }
}

/* V8.2 — Allegiance transformation */
.transform-hero{transition:filter .55s ease}
body.faction-dawn .transform-hero{background-image:url('assets/aurelion-world.jpg');background-position:center 45%}
body.faction-dusk .transform-hero{background-image:url('assets/noctyra-world.jpg');background-position:center 42%}
body.faction-dawn .transform-hero .eclipse-home-overlay{background:linear-gradient(180deg,rgba(7,18,22,.14),rgba(6,12,16,.34) 54%,rgba(5,7,12,.87)),radial-gradient(circle at 48% 30%,rgba(74,227,242,.09),transparent 44%)}
body.faction-dusk .transform-hero .eclipse-home-overlay{background:linear-gradient(180deg,rgba(8,4,14,.17),rgba(8,5,14,.38) 54%,rgba(5,7,12,.89)),radial-gradient(circle at 60% 30%,rgba(135,77,255,.15),transparent 48%)}
.side-nav-link[hidden]{display:none!important}.ghost-button{background:transparent!important}
.world-page{background:#05070c}.world-experience-hero{min-height:calc(100vh - 82px);position:relative;display:flex;align-items:flex-end;background-size:cover;background-position:center;overflow:hidden;border-bottom:1px solid rgba(255,255,255,.08)}
.aurelion-hero{background-image:url('assets/aurelion-world.jpg')}.noctyra-hero{background-image:url('assets/noctyra-world.jpg')}
.world-experience-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,7,12,.84) 0%,rgba(5,7,12,.52) 42%,rgba(5,7,12,.10) 72%),linear-gradient(180deg,rgba(5,7,12,.10),rgba(5,7,12,.22) 52%,#05070c 100%)}
.aurelion-page .world-experience-shade{background:linear-gradient(90deg,rgba(7,13,15,.82),rgba(7,12,15,.50) 42%,rgba(8,13,16,.08) 75%),linear-gradient(180deg,rgba(7,15,18,.04),rgba(7,12,15,.16) 54%,#05070c 100%)}
.noctyra-page .world-experience-shade{background:linear-gradient(90deg,rgba(8,4,13,.88),rgba(7,5,13,.56) 42%,rgba(5,4,10,.10) 76%),linear-gradient(180deg,rgba(8,4,14,.06),rgba(8,4,14,.18) 52%,#05070c 100%)}
.world-experience-copy{position:relative;z-index:2;width:min(1280px,calc(100% - 48px));margin:0 auto;padding:160px 0 110px}
.world-experience-copy h1{font-size:clamp(68px,10vw,142px);letter-spacing:-.07em;line-height:.84;margin:8px 0 24px}.world-tagline{font-size:clamp(24px,3vw,40px);line-height:1.08;max-width:700px;color:#e4ebf2;margin:0 0 32px}
.aurelion-page .eyebrow{color:#aeeaf2}.noctyra-page .eyebrow{color:#b79cff}.aurelion-page .btn.primary{background:linear-gradient(90deg,#103942,#23687a)}.noctyra-page .btn.primary{background:linear-gradient(90deg,#251342,#5a2b87)}
.world-lore{padding-top:105px;padding-bottom:95px}.world-lore-heading{max-width:900px;margin-bottom:44px}.world-lore-heading h2{font-size:clamp(42px,5.5vw,70px);letter-spacing:-.05em}.world-lore-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.world-lore-grid>div{padding:30px;border:1px solid rgba(255,255,255,.10);border-radius:20px;background:#090f17}.world-lore-grid h3{font-size:17px;letter-spacing:.04em;margin-bottom:13px}.world-lore-grid p{font-size:15px;color:#aebac8;margin:0}
.champion-experience{display:grid;grid-template-columns:.75fr 1.25fr;gap:64px;align-items:center;padding-top:40px;padding-bottom:110px}.champion-profile-media{max-height:780px;overflow:hidden;border-radius:28px;border:1px solid rgba(255,255,255,.10);background:#080d14}.champion-profile-media img{width:100%;height:100%;object-fit:cover;display:block}.champion-profile-copy h2{font-size:clamp(64px,8vw,110px);line-height:.9;letter-spacing:-.065em;margin:8px 0 24px}.champion-profile-copy>p:not(.eyebrow){font-size:18px;color:#b2becb;max-width:700px}
.profile-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:30px 0 34px}.profile-stat-grid>div{padding:17px 18px;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:#090f17;display:flex;flex-direction:column;gap:4px}.profile-stat-grid span{font-size:9px;letter-spacing:.18em;color:#78889b;font-weight:900}.profile-stat-grid b{font-size:13px;letter-spacing:.04em}
.portfolio-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.portfolio-tile{border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:0;overflow:hidden;background:#080d14;cursor:pointer;min-height:0}.portfolio-tile img{width:100%;aspect-ratio:.8/1;object-fit:cover;display:block;transition:transform .35s ease}.portfolio-tile:hover img{transform:scale(1.025)}.portfolio-tile:nth-child(1){grid-row:span 2}.portfolio-tile:nth-child(1) img{height:100%;aspect-ratio:auto}
.portfolio-lightbox{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;background:rgba(2,4,7,.92);padding:50px}.portfolio-lightbox.open{display:flex}.portfolio-lightbox img{max-width:min(920px,90vw);max-height:88vh;border-radius:18px}.portfolio-lightbox button{position:absolute;right:28px;top:22px;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.20);background:#080d14;color:white;font-size:28px;cursor:pointer}
.pack-showcase{padding-top:90px;padding-bottom:120px}.founder-scene-grid,.product-scene-gallery{display:grid;grid-template-columns:1fr 1fr;gap:16px}.founder-scene-grid img,.product-scene-gallery img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:18px;border:1px solid rgba(255,255,255,.09)}.pack-cta{text-align:center;margin-top:34px}.product-gallery-section{margin-top:80px}.product-gallery-section h2{font-size:38px;margin-bottom:24px}
@media(max-width:1000px){.world-lore-grid{grid-template-columns:1fr}.champion-experience{grid-template-columns:1fr}.champion-profile-media{max-width:580px}.portfolio-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:720px){.world-experience-copy{width:calc(100% - 34px);padding-bottom:80px}.world-experience-copy h1{font-size:70px}.portfolio-grid{grid-template-columns:1fr 1fr}.portfolio-tile:nth-child(1){grid-row:auto}.portfolio-tile:nth-child(1) img{height:auto;aspect-ratio:.8/1}.founder-scene-grid,.product-scene-gallery{grid-template-columns:1fr}.profile-stat-grid{grid-template-columns:1fr}}

/* =========================================================
   V8.3 — FULL-SITE ALLEGIANCE THEMES
   ========================================================= */
body,.site-header,.footer,.product-card,.cart-panel,.checkout-panel,.summary-card,
.world-lore-grid>div,.eclipse-feature,.allegiance-reveal,.story-tease-panel,
.profile-stat-grid>div,.product-detail,.license-card,.portfolio-tile,.btn,
.main-nav a,.cart-link,.allegiance-pill{
  transition:background .45s ease,color .45s ease,border-color .45s ease,box-shadow .45s ease;
}

/* ---------- AURELION / DAWN ---------- */
body.faction-dawn{
  background:
    radial-gradient(circle at 8% 0%,rgba(55,215,232,.20),transparent 28%),
    radial-gradient(circle at 92% 5%,rgba(208,174,92,.18),transparent 24%),
    linear-gradient(180deg,#edf8fa,#fbfdfe 48%,#e8f4f6);
  color:#14242e;
}
body.faction-dawn .site-header{
  background:rgba(244,251,252,.94);
  border-bottom-color:rgba(27,111,123,.18);
  box-shadow:0 10px 34px rgba(54,126,136,.10);
}
body.faction-dawn .main-nav a,body.faction-dawn .cart-link{color:#344f5a}
body.faction-dawn .main-nav a:hover,body.faction-dawn .cart-link:hover{color:#07889a}
body.faction-dawn .allegiance-pill{
  background:linear-gradient(180deg,#fff,#e2f7f9);
  border-color:rgba(36,201,220,.42);
  box-shadow:0 0 26px rgba(36,201,220,.16);
}
body.faction-dawn .allegiance-pill span{color:#6b7c84}
body.faction-dawn .allegiance-pill b{color:#0b899a}
body.faction-dawn h1,body.faction-dawn h2,body.faction-dawn h3,body.faction-dawn h4,
body.faction-dawn strong,body.faction-dawn .product-meta strong{color:#14242e}
body.faction-dawn p,body.faction-dawn .section-title>p,body.faction-dawn .product-lead,
body.faction-dawn .product-body p,body.faction-dawn .world-lore-grid p,
body.faction-dawn .champion-profile-copy>p:not(.eyebrow){color:#5d707a}
body.faction-dawn .eyebrow{color:#a17b2f!important}
body.faction-dawn .btn{
  color:#18313b;background:rgba(255,255,255,.82);
  border-color:rgba(32,111,123,.22);
}
body.faction-dawn .btn:hover{background:#fff;border-color:rgba(36,201,220,.48)}
body.faction-dawn .btn.primary{
  color:#0b2d35!important;
  background:linear-gradient(90deg,#91edf4,#f7ffff 52%,#e7d08b)!important;
  border-color:rgba(32,124,137,.28);
  box-shadow:0 10px 30px rgba(45,198,216,.16);
}
body.faction-dawn .product-card,body.faction-dawn .cart-panel,
body.faction-dawn .checkout-panel,body.faction-dawn .summary-card,
body.faction-dawn .world-lore-grid>div,body.faction-dawn .eclipse-feature,
body.faction-dawn .allegiance-reveal,body.faction-dawn .story-tease-panel,
body.faction-dawn .profile-stat-grid>div,body.faction-dawn .product-detail,
body.faction-dawn .license-card,body.faction-dawn .portfolio-tile{
  background:linear-gradient(180deg,#fff,#eff9fa);
  border-color:rgba(27,94,105,.18);
  box-shadow:0 14px 44px rgba(67,122,129,.08);
}
body.faction-dawn .format-row span,body.faction-dawn .product-meta span{
  color:#58727b;background:#eaf7f9;border-color:rgba(32,109,119,.18);
}
body.faction-dawn .footer{
  background:linear-gradient(180deg,#edf8fa,#dceef1);
  border-top-color:rgba(31,111,122,.18);color:#425b66;
}
body.faction-dawn .footer h4,body.faction-dawn .footer a{color:#405963}
body.faction-dawn .footer a:hover{color:#07889a}
body.faction-dawn .copyright{background:#d7eaed;color:#667b85}
body.faction-dawn .side-choice{background:#fff;color:#20343e}
body.faction-dawn .side-choice-dawn.selected{
  background:linear-gradient(180deg,#fff,#dcf6f9);
  border-color:rgba(36,201,220,.60);
  box-shadow:0 0 44px rgba(36,201,220,.16);
}

/* Keep hero text readable over Aurelion imagery */
body.faction-dawn .eclipse-home-content h1,
body.faction-dawn .eclipse-home-content .hero-copy,
body.faction-dawn .eclipse-home-content .eyebrow,
body.faction-dawn .world-experience-copy h1,
body.faction-dawn .world-experience-copy .world-tagline,
body.faction-dawn .world-experience-copy .eyebrow{
  color:#fff!important;text-shadow:0 8px 30px rgba(0,0,0,.52);
}

/* ---------- NOCTYRA / DUSK ---------- */
body.faction-dusk{
  background:
    radial-gradient(circle at 100% 0%,rgba(133,62,229,.24),transparent 30%),
    radial-gradient(circle at 0% 15%,rgba(72,38,115,.14),transparent 28%),
    linear-gradient(180deg,#07050b,#0c0711 48%,#07050b);
  color:#f1edf6;
}
body.faction-dusk .site-header{
  background:rgba(8,5,12,.95);
  border-bottom-color:rgba(151,95,238,.20);
  box-shadow:0 10px 36px rgba(63,24,104,.20);
}
body.faction-dusk .main-nav a,body.faction-dusk .cart-link{color:#c3b7cf}
body.faction-dusk .main-nav a:hover,body.faction-dusk .cart-link:hover{color:#bd8dff}
body.faction-dusk .allegiance-pill{
  background:linear-gradient(180deg,#1d1329,#100a18);
  border-color:rgba(158,105,255,.48);
  box-shadow:0 0 28px rgba(151,95,238,.15);
}
body.faction-dusk .allegiance-pill span{color:#8b7c99}
body.faction-dusk .allegiance-pill b{color:#bd8dff}
body.faction-dusk h1,body.faction-dusk h2,body.faction-dusk h3,body.faction-dusk h4,
body.faction-dusk strong,body.faction-dusk .product-meta strong{color:#f4f0f8}
body.faction-dusk p,body.faction-dusk .section-title>p,body.faction-dusk .product-lead,
body.faction-dusk .product-body p,body.faction-dusk .world-lore-grid p,
body.faction-dusk .champion-profile-copy>p:not(.eyebrow){color:#aaa0b7}
body.faction-dusk .eyebrow{color:#b78cff!important}
body.faction-dusk .btn{
  color:#eee8f6;background:#1c1228;border-color:rgba(151,95,238,.28);
}
body.faction-dusk .btn:hover{background:#251633;border-color:rgba(173,110,255,.55)}
body.faction-dusk .btn.primary{
  color:#fff!important;background:linear-gradient(90deg,#351a55,#6b31a1 56%,#8e4de3)!important;
  border-color:rgba(190,130,255,.38);box-shadow:0 10px 30px rgba(133,65,214,.20);
}
body.faction-dusk .product-card,body.faction-dusk .cart-panel,
body.faction-dusk .checkout-panel,body.faction-dusk .summary-card,
body.faction-dusk .world-lore-grid>div,body.faction-dusk .eclipse-feature,
body.faction-dusk .allegiance-reveal,body.faction-dusk .story-tease-panel,
body.faction-dusk .profile-stat-grid>div,body.faction-dusk .product-detail,
body.faction-dusk .license-card,body.faction-dusk .portfolio-tile{
  background:linear-gradient(180deg,#171020,#0d0913);
  border-color:rgba(151,95,238,.24);
  box-shadow:0 14px 46px rgba(50,18,84,.16);
}
body.faction-dusk .format-row span,body.faction-dusk .product-meta span{
  color:#b6a9c3;background:#171020;border-color:rgba(151,95,238,.20);
}
body.faction-dusk .footer{
  background:linear-gradient(180deg,#0d0912,#08060b);
  border-top-color:rgba(151,95,238,.18);color:#a99db5;
}
body.faction-dusk .footer h4,body.faction-dusk .footer a{color:#bcaec9}
body.faction-dusk .footer a:hover{color:#bd8dff}
body.faction-dusk .copyright{background:#07050a;color:#706578}
body.faction-dusk .side-choice{background:#130c1c;color:#f1edf6}
body.faction-dusk .side-choice-dusk.selected{
  background:linear-gradient(180deg,#21132f,#100a18);
  border-color:rgba(159,103,255,.60);
  box-shadow:0 0 44px rgba(159,103,255,.16);
}


/* =========================================================
   V8.4 — FACE-IN-FRAME HERO / WORLD IMAGE POSITIONING
   Ensures Dawn and Dusk faces stay in frame more reliably
   on the transformed homepage and their world pages.
   ========================================================= */

body.faction-dawn .transform-hero{
  background-position:50% 16% !important;
}
body.faction-dusk .transform-hero{
  background-position:48% 15% !important;
}

.aurelion-hero{
  background-position:50% 17%;
}
.noctyra-hero{
  background-position:48% 15%;
}

/* Champion profile feature panels */
.aurelion-page .champion-profile-media img{
  object-position:50% 14%;
}
.noctyra-page .champion-profile-media img{
  object-position:50% 12%;
}

/* Portfolio tiles keep more of the upper body / face visible */
.aurelion-page .portfolio-tile img,
.noctyra-page .portfolio-tile img{
  object-position:50% 18%;
}
.aurelion-page .portfolio-tile:nth-child(1) img,
.noctyra-page .portfolio-tile:nth-child(1) img{
  object-position:50% 10%;
}

@media(max-width:1100px){
  body.faction-dawn .transform-hero{
    background-position:52% 13% !important;
  }
  body.faction-dusk .transform-hero{
    background-position:45% 12% !important;
  }
  .aurelion-hero{
    background-position:52% 14%;
  }
  .noctyra-hero{
    background-position:45% 12%;
  }
  .aurelion-page .champion-profile-media img{
    object-position:50% 10%;
  }
  .noctyra-page .champion-profile-media img{
    object-position:50% 10%;
  }
}

@media(max-width:720px){
  body.faction-dawn .transform-hero{
    background-position:55% 10% !important;
  }
  body.faction-dusk .transform-hero{
    background-position:42% 10% !important;
  }
  .aurelion-hero{
    background-position:55% 10%;
  }
  .noctyra-hero{
    background-position:42% 10%;
  }
  .aurelion-page .portfolio-tile img,
  .noctyra-page .portfolio-tile img{
    object-position:50% 12%;
  }
}


/* =========================================================
   V8.7 — SAGA LIBRARY / SAGA I
   ========================================================= */
.saga-library-hero .story-hero-content h1{
  font-size:clamp(64px,10vw,126px);
}
.saga-library{
  padding-top:100px;
  padding-bottom:130px;
}
.saga-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
  max-width:1120px;
  margin:48px auto 0;
}
.saga-card{
  min-height:290px;
  position:relative;
  display:flex;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.10);
  border-radius:24px;
  background:#0a1018;
  color:inherit;
}
.saga-card-live{
  grid-column:1/-1;
  min-height:430px;
  text-decoration:none;
  border-color:rgba(214,186,104,.28);
  box-shadow:0 18px 55px rgba(0,0,0,.20);
}
.saga-card-art{
  width:58%;
  min-height:430px;
}
.saga-card-art img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 46%;
  display:block;
}
.saga-card-live .saga-card-body{
  width:42%;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:46px;
}
.saga-card-body{
  padding:38px;
}
.saga-number{
  margin:0 0 10px;
  color:#d8b968!important;
  font-size:11px!important;
  font-weight:950;
  letter-spacing:.22em;
}
.saga-card h3{
  margin:0;
  font-size:clamp(30px,4vw,48px);
  letter-spacing:-.04em;
}
.saga-status{
  margin:22px 0 0!important;
  font-size:12px!important;
  font-weight:900;
  letter-spacing:.18em;
  color:#7f8da0!important;
}
.saga-status.live{
  color:#d8b968!important;
}
.saga-action{
  margin-top:28px;
  font-size:12px;
  font-weight:900;
  letter-spacing:.15em;
  color:#e7edf3;
}
.saga-card-live:hover{
  transform:translateY(-4px);
  border-color:rgba(214,186,104,.48);
  box-shadow:0 22px 66px rgba(0,0,0,.26);
}
.saga-card-locked{
  min-height:220px;
  opacity:.74;
  background:
    linear-gradient(180deg,rgba(255,255,255,.018),rgba(255,255,255,.008)),
    #080d14;
}
.saga-card-locked .saga-card-body{
  display:flex;
  min-height:220px;
  width:100%;
  flex-direction:column;
  justify-content:center;
}
.saga-card-locked h3{
  font-size:32px;
}
.saga-detail-hero{
  min-height:720px;
  position:relative;
  display:grid;
  place-items:center;
  overflow:hidden;
  text-align:center;
}
.saga-detail-bg{
  position:absolute;
  inset:0;
  background:url('assets/eclipse-world-ruins.png') center 44%/cover no-repeat;
}
.saga-detail-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(5,7,12,.18),rgba(5,7,12,.30) 46%,#05070c 100%);
}
.saga-detail-copy{
  position:relative;
  z-index:2;
  padding:120px 24px;
}
.saga-detail-copy h1{
  margin:0;
  font-size:clamp(80px,13vw,170px);
  line-height:.86;
  letter-spacing:-.07em;
  color:#fff;
  text-shadow:0 18px 58px rgba(0,0,0,.52);
}
.saga-detail-copy>p:not(.eyebrow){
  margin:26px auto 0;
  font-size:20px;
  color:#d2dbe5;
}
.saga-i-story{
  padding-top:100px;
}
.saga-end-marker{
  margin-top:90px;
  padding-top:60px;
  border-top:1px solid rgba(255,255,255,.10);
  text-align:center;
}
.saga-end-marker h3{
  font-size:34px;
  margin:8px 0 24px;
}

body.faction-dawn .saga-card,
body.faction-dawn .saga-card-locked{
  background:linear-gradient(180deg,#fff,#eef8fa);
  border-color:rgba(27,94,105,.18);
}
body.faction-dawn .saga-card h3,
body.faction-dawn .saga-action{
  color:#162731;
}
body.faction-dawn .saga-card-live{
  border-color:rgba(36,201,220,.32);
}
body.faction-dusk .saga-card,
body.faction-dusk .saga-card-locked{
  background:linear-gradient(180deg,#171020,#0d0913);
  border-color:rgba(151,95,238,.22);
}
body.faction-dusk .saga-card-live{
  border-color:rgba(159,103,255,.34);
}
body.faction-dusk .saga-number,
body.faction-dusk .saga-status.live{
  color:#b98cff!important;
}

@media(max-width:850px){
  .saga-grid{grid-template-columns:1fr}
  .saga-card-live{grid-column:auto;display:block}
  .saga-card-art{width:100%;min-height:300px}
  .saga-card-live .saga-card-body{width:auto;padding:32px}
}


/* =========================================================
   V8.8 — STORY / SAGA COLUMN LIBRARY
   Keeps Sagas under the existing Story navigation.
   ========================================================= */
.saga-column-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:14px;
  max-width:1480px;
  margin:48px auto 0;
  align-items:stretch;
}
.saga-column{
  min-height:470px;
  position:relative;
  overflow:hidden;
  border-radius:20px;
  border:1px solid rgba(216,186,104,.28);
  background:#05070c;
  color:inherit;
}
.saga-column-live{
  display:block;
  text-decoration:none;
  cursor:pointer;
  background:#05070c;
  box-shadow:0 16px 42px rgba(0,0,0,.20);
}
.saga-column-live>img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:50% 50%;
  display:block;
}
.saga-cover-shade{
  position:absolute;
  inset:0;
  background:linear-gradient(
    180deg,
    rgba(5,7,12,.04) 0%,
    rgba(5,7,12,.06) 36%,
    rgba(5,7,12,.24) 100%
  );
}
.saga-read-overlay{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  pointer-events:none;
}
.saga-read-overlay span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:142px;
  padding:14px 22px;
  border-radius:11px;
  border:1px solid rgba(222,190,105,.66);
  background:rgba(5,7,12,.78);
  color:#f4ead0;
  font-size:12px;
  font-weight:950;
  letter-spacing:.15em;
  box-shadow:0 8px 28px rgba(0,0,0,.34);
  backdrop-filter:blur(6px);
  transition:transform .25s ease,background .25s ease,border-color .25s ease;
}
.saga-column-live:hover{
  transform:translateY(-4px);
  border-color:rgba(222,190,105,.52);
  box-shadow:0 20px 54px rgba(0,0,0,.26);
}
.saga-column-live:hover .saga-read-overlay span{
  transform:scale(1.04);
  background:rgba(17,14,18,.90);
  border-color:rgba(236,206,123,.84);
}
.saga-column-locked{
  display:flex;
  align-items:center;
  justify-content:center;
  background:
    radial-gradient(circle at 50% 35%,rgba(255,255,255,.025),transparent 40%),
    linear-gradient(180deg,#070a10,#030507);
  border-color:rgba(255,255,255,.09);
}
.saga-column-copy{
  padding:28px 18px;
  text-align:center;
  width:100%;
}
.saga-column-copy .saga-number{
  color:#a98c4d!important;
  font-size:10px!important;
  font-weight:950;
  letter-spacing:.20em;
  margin:0 0 22px!important;
}
.saga-column-copy h3{
  color:#eef1f5;
  font-size:clamp(19px,1.7vw,27px);
  line-height:1.12;
  letter-spacing:-.025em;
  margin:0 auto;
  max-width:200px;
}
.saga-column-copy .saga-status{
  margin:34px 0 0!important;
  color:#7d8999!important;
  font-size:10px!important;
  font-weight:950;
  letter-spacing:.18em;
}
body.faction-dawn .saga-column-locked{
  background:linear-gradient(180deg,#0b1014,#05080a);
  border-color:rgba(216,186,104,.16);
}
body.faction-dusk .saga-column-locked{
  background:linear-gradient(180deg,#0d0913,#060409);
  border-color:rgba(151,95,238,.15);
}
body.faction-dusk .saga-column-copy .saga-number{
  color:#a986df!important;
}
body.faction-dusk .saga-column-live{
  border-color:rgba(151,95,238,.28);
}

@media(max-width:1250px){
  .saga-column-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media(max-width:760px){
  .saga-column-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .saga-column{
    min-height:420px;
  }
}
@media(max-width:500px){
  .saga-column-grid{
    grid-template-columns:1fr;
  }
  .saga-column{
    min-height:430px;
  }
}


/* =========================================================
   V8.9 — CHARACTER IMAGE REFINEMENT
   Serious portrait in allegiance reveal; 3/4 portrait in Meet sections.
   ========================================================= */

.allegiance-reveal-media img{
  object-position:50% 16% !important;
}

.aurelion-page .champion-profile-media img,
.noctyra-page .champion-profile-media img{
  object-position:50% 12% !important;
}

/* With the standalone Character Portfolio gallery removed,
   the Meet section becomes the primary character presentation. */
.champion-experience{
  padding-bottom:125px;
}


/* =========================================================
   V8.10 — INLINE CHARACTER BIOGRAPHIES
   ========================================================= */
.character-bio-section{
  padding-top:22px;
  padding-bottom:115px;
  scroll-margin-top:110px;
}
.character-bio-shell{
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:68px;
  align-items:start;
  padding:48px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:24px;
  background:#090f17;
}
.character-bio-heading h2{
  margin:8px 0 0;
  font-size:clamp(38px,5vw,64px);
  line-height:1.02;
  letter-spacing:-.045em;
}
.character-bio-copy{
  display:grid;
  gap:16px;
}
.character-bio-copy p{
  margin:0;
  font-size:17px;
  line-height:1.75;
  color:#aebac8;
}
.aurelion-page .character-bio-shell{
  background:linear-gradient(180deg,#fff,#eff9fa);
  border-color:rgba(27,94,105,.18);
  box-shadow:0 14px 44px rgba(67,122,129,.08);
}
.aurelion-page .character-bio-copy p{color:#5d707a}
.noctyra-page .character-bio-shell{
  background:linear-gradient(180deg,#171020,#0d0913);
  border-color:rgba(151,95,238,.24);
  box-shadow:0 14px 46px rgba(50,18,84,.16);
}
.noctyra-page .character-bio-copy p{color:#aaa0b7}

@media(max-width:850px){
  .character-bio-shell{
    grid-template-columns:1fr;
    gap:28px;
    padding:34px 28px;
  }
}

/* V8.11 — Saga I hover expansion */
@media (hover:hover) and (pointer:fine) and (min-width:1251px){
  .saga-column-grid{transition:grid-template-columns .42s cubic-bezier(.22,.61,.36,1)}
  .saga-column-grid:has(.saga-column-live:hover){
    grid-template-columns:2fr repeat(5,minmax(0,.8fr));
  }
  .saga-column{transition:transform .34s ease,border-color .34s ease,box-shadow .34s ease,opacity .34s ease}
  .saga-column-live{z-index:2;background:#030507}
  .saga-column-live:hover{
    transform:translateY(-8px);
    z-index:10;
    border-color:rgba(230,198,111,.72);
    box-shadow:0 28px 78px rgba(0,0,0,.38);
  }
  .saga-column-live:hover>img{
    object-fit:cover;
    object-position:center center;
    transform:scale(1);
    background:#030507;
  }
  .saga-column-live:hover .saga-cover-shade{
    background:linear-gradient(180deg,rgba(5,7,12,.01),rgba(5,7,12,.02) 62%,rgba(5,7,12,.10));
  }
  .saga-column-grid:has(.saga-column-live:hover) .saga-column-locked{opacity:.68}
  .saga-column-live:hover .saga-read-overlay span{
    transform:scale(1.07);
    background:rgba(5,7,12,.88);
    border-color:rgba(239,207,120,.92);
  }
}
@media (hover:hover) and (pointer:fine) and (min-width:761px) and (max-width:1250px){
  .saga-column-live:hover{transform:scale(1.055);z-index:10}
  .saga-column-live:hover>img{object-fit:cover;object-position:center center;background:#030507}
}


/* =========================================================
   V8.13 — SQUARE SAGA I COVER / FULL-FRAME HOVER
   Latest Saga I artwork is 1:1 and fills the expanded card edge-to-edge.
   ========================================================= */
@media (hover:hover) and (pointer:fine) and (min-width:1251px){
  .saga-column-grid:has(.saga-column-live:hover){
    grid-template-columns:2fr repeat(5,minmax(0,.8fr));
  }

  .saga-column-live:hover{
    aspect-ratio:1 / 1;
    min-height:0;
  }

  .saga-column-live:hover>img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center center;
  }
}

.character-bio-section[hidden]{display:none!important}
.character-bio-section.bio-is-open{animation:bioReveal .42s ease both}
@keyframes bioReveal{
  from{opacity:0;transform:translateY(16px)}
  to{opacity:1;transform:translateY(0)}
}


/* =========================================================
   V8.15 — AURELION INTERACTIVE MAP
   Supplied map package is isolated inside /aurelion-map/.
   ========================================================= */
.aurelion-map-section{
  padding-top:34px;
  padding-bottom:110px;
  scroll-margin-top:100px;
}

.aurelion-map-title{
  align-items:end;
}

.aurelion-map-title>p{
  max-width:620px;
}

.aurelion-map-embed-shell{
  width:100%;
  margin-top:38px;
  padding:10px;
  border:1px solid rgba(39,151,170,.20);
  border-radius:26px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.86),rgba(231,247,250,.94));
  box-shadow:
    0 28px 70px rgba(38,98,110,.10),
    0 0 0 1px rgba(255,255,255,.78) inset;
  overflow:hidden;
}

.aurelion-map-embed{
  display:block;
  width:100%;
  aspect-ratio:1 / 1;
  min-height:720px;
  border:0;
  border-radius:18px;
  background:#030a11;
}



@media(max-width:900px){
  .aurelion-map-embed{
    aspect-ratio:auto;
    height:820px;
    min-height:0;
  }
}

@media(max-width:600px){
  .aurelion-map-section{
    padding-top:18px;
    padding-bottom:86px;
  }
  .aurelion-map-embed-shell{
    margin-top:26px;
    padding:6px;
    border-radius:18px;
  }
  .aurelion-map-embed{
    height:720px;
    border-radius:13px;
  }
}


/* =========================================================
   V8.16 — DUAL WORLD MAPS + FOUR WORLD ACTIONS
   ========================================================= */
.world-hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
}
.world-hero-actions .btn{
  min-width:138px;
}
.world-hero-actions button.btn{
  font:inherit;
}

#founder-pack{
  scroll-margin-top:100px;
}

/* Noctyra interactive map section */
.noctyra-map-section{
  padding-top:34px;
  padding-bottom:110px;
  scroll-margin-top:100px;
}
.noctyra-map-title{align-items:end}
.noctyra-map-title>p{max-width:620px}
.noctyra-map-embed-shell{
  width:100%;margin-top:38px;padding:10px;
  border:1px solid rgba(151,95,238,.24);border-radius:26px;
  background:linear-gradient(180deg,rgba(20,12,29,.94),rgba(9,5,14,.98));
  box-shadow:0 28px 72px rgba(26,8,46,.28),0 0 0 1px rgba(183,128,255,.05) inset;
  overflow:hidden;
}
.noctyra-map-embed{
  display:block;width:100%;aspect-ratio:16/9;min-height:620px;
  border:0;border-radius:18px;background:#050208;
}

/* Existing Aurelion map gets the same anchor behavior */
#aurelion-map,#noctyra-map,#champion{
  scroll-margin-top:100px;
}

/* brief visual fade before allegiance swaps */
html.allegiance-switching body{
  opacity:.22;
  transition:opacity .18s ease;
}

@media(max-width:900px){
  .world-hero-actions{max-width:620px}
  .noctyra-map-embed{aspect-ratio:auto;height:760px;min-height:0}
}
@media(max-width:600px){
  .world-hero-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .world-hero-actions .btn{min-width:0;width:100%;text-align:center}
  .noctyra-map-section{padding-top:18px;padding-bottom:86px}
  .noctyra-map-embed-shell{margin-top:26px;padding:6px;border-radius:18px}
  .noctyra-map-embed{height:680px;border-radius:13px}
}


/* =========================================================
   V8.17 — ECLIPSE INTERACTIVE CANON MAP
   User-supplied package lives untouched inside /eclipse-map/.
   ========================================================= */
.eclipse-map-section{
  padding-top:38px;
  padding-bottom:110px;
  scroll-margin-top:100px;
}

.eclipse-map-title{
  margin-bottom:38px;
}

.eclipse-map-title>p{
  max-width:690px;
}

.eclipse-map-embed-shell{
  width:100%;
  padding:10px;
  border:1px solid rgba(232,196,126,.24);
  border-radius:26px;
  background:
    radial-gradient(circle at 50% 0%,rgba(179,140,255,.08),transparent 44rem),
    linear-gradient(180deg,rgba(10,13,18,.98),rgba(3,4,6,.99));
  box-shadow:
    0 30px 88px rgba(0,0,0,.36),
    0 0 0 1px rgba(255,255,255,.025) inset;
  overflow:hidden;
}

.eclipse-map-embed{
  display:block;
  width:100%;
  height:1120px;
  border:0;
  border-radius:18px;
  background:#020304;
}


#eclipse-map{
  scroll-margin-top:100px;
}

@media(max-width:1000px){
  .eclipse-map-embed{
    height:980px;
  }
}

@media(max-width:700px){
  .eclipse-map-section{
    padding-top:22px;
    padding-bottom:86px;
  }
  .eclipse-map-embed-shell{
    padding:5px;
    border-radius:17px;
  }
  .eclipse-map-embed{
    height:820px;
    border-radius:12px;
  }
}


/* =========================================================
   V8.20 — WORLD ACTION BUTTON VISIBILITY / ALIGNMENT
   ========================================================= */
.world-experience-copy .world-hero-actions{
  justify-content:flex-start !important;
  align-items:center;
  margin-left:0;
  margin-right:auto;
  width:100%;
}

.world-experience-copy .world-hero-actions .btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:13px 20px;
  border-width:1px;
  border-style:solid;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  box-shadow:0 10px 28px rgba(0,0,0,.12);
  backdrop-filter:blur(8px);
}

/* Aurelion — luminous white/cyan/gold, high contrast */
.aurelion-page .world-hero-actions .btn{
  background:rgba(255,255,255,.94);
  color:#15323b;
  border-color:rgba(37,164,184,.45);
}

.aurelion-page .world-hero-actions .btn.primary{
  background:linear-gradient(180deg,#dffcff,#c8f4f8);
  color:#10343d;
  border-color:#51c7d5;
  box-shadow:
    0 10px 28px rgba(59,178,194,.16),
    0 0 0 1px rgba(255,255,255,.55) inset;
}

.aurelion-page .world-hero-actions .btn:hover,
.aurelion-page .world-hero-actions .btn:focus-visible{
  background:#ffffff;
  color:#0d2d35;
  border-color:#2fb8c9;
  box-shadow:
    0 12px 34px rgba(40,171,190,.22),
    0 0 0 2px rgba(69,197,213,.14);
}

.aurelion-page .world-hero-actions .ghost-button{
  background:rgba(255,249,233,.96);
  color:#5a4313;
  border-color:rgba(194,151,58,.52);
}

/* Noctyra — titanium/violet, high contrast */
.noctyra-page .world-hero-actions .btn{
  background:rgba(25,15,35,.94);
  color:#f5effb;
  border-color:rgba(168,103,255,.54);
  box-shadow:
    0 10px 30px rgba(0,0,0,.30),
    0 0 0 1px rgba(186,130,255,.05) inset;
}

.noctyra-page .world-hero-actions .btn.primary{
  background:linear-gradient(180deg,#6f35a8,#4f247f);
  color:#ffffff;
  border-color:#b173ff;
  box-shadow:
    0 12px 34px rgba(110,47,176,.34),
    0 0 24px rgba(149,83,233,.12);
}

.noctyra-page .world-hero-actions .btn:hover,
.noctyra-page .world-hero-actions .btn:focus-visible{
  background:#251334;
  color:#ffffff;
  border-color:#c08aff;
  box-shadow:
    0 14px 36px rgba(0,0,0,.34),
    0 0 26px rgba(151,95,238,.22);
}

.noctyra-page .world-hero-actions .ghost-button{
  background:rgba(39,20,53,.96);
  color:#f4eafd;
  border-color:rgba(210,163,255,.50);
}

/* Preserve left alignment on responsive layouts too. */
@media(max-width:900px){
  .world-experience-copy .world-hero-actions{
    justify-content:flex-start !important;
  }
}

@media(max-width:600px){
  .world-experience-copy .world-hero-actions{
    grid-template-columns:1fr 1fr;
    justify-content:start !important;
  }
}

/* V8.22 — click-to-open interactive world maps */
.interactive-map-section{scroll-margin-top:100px}
.interactive-map-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:34px;padding:34px 36px;border:1px solid rgba(255,255,255,.10);border-radius:24px;background:rgba(8,12,18,.92);color:inherit;text-align:left;cursor:pointer;box-shadow:0 18px 52px rgba(0,0,0,.14);transition:transform .25s ease,border-color .25s ease,background .25s ease,box-shadow .25s ease}
.interactive-map-toggle:hover,.interactive-map-toggle:focus-visible{transform:translateY(-2px);outline:none}
.interactive-map-toggle-copy{display:grid;gap:9px;max-width:920px}.interactive-map-toggle-copy .eyebrow{margin:0}
.interactive-map-toggle-title{display:block;font-size:clamp(30px,4vw,54px);line-height:1;font-weight:950;letter-spacing:-.045em}
.interactive-map-toggle-description{display:block;max-width:760px;color:#aeb8c5;font-size:16px;line-height:1.6}
.interactive-map-toggle-action{flex:0 0 auto;display:flex;align-items:center;gap:16px;padding:13px 16px 13px 20px;border:1px solid rgba(255,255,255,.14);border-radius:999px;font-size:11px;font-weight:950;letter-spacing:.12em;white-space:nowrap}
.interactive-map-toggle-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:999px;border:1px solid currentColor;font-size:22px;line-height:1}
.interactive-map-panel[hidden]{display:none!important}.interactive-map-panel{scroll-margin-top:100px}.interactive-map-panel.map-panel-is-open{animation:mapPanelReveal .42s ease both}
@keyframes mapPanelReveal{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
.aurelion-page .interactive-map-toggle{background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(235,248,250,.98));border-color:rgba(37,164,184,.24);color:#17343d;box-shadow:0 18px 54px rgba(56,130,140,.10)}
.aurelion-page .interactive-map-toggle:hover,.aurelion-page .interactive-map-toggle:focus-visible{border-color:rgba(47,184,201,.56);box-shadow:0 20px 60px rgba(56,154,168,.16)}
.aurelion-page .interactive-map-toggle-description{color:#60727a}.aurelion-page .interactive-map-toggle-action{color:#165e6b;background:rgba(217,248,251,.86);border-color:rgba(47,184,201,.36)}
.noctyra-page .interactive-map-toggle{background:linear-gradient(180deg,rgba(25,15,35,.98),rgba(11,7,17,.99));border-color:rgba(164,98,247,.24);color:#f4eef9;box-shadow:0 20px 62px rgba(24,8,42,.28)}
.noctyra-page .interactive-map-toggle:hover,.noctyra-page .interactive-map-toggle:focus-visible{border-color:rgba(190,133,255,.56);box-shadow:0 22px 68px rgba(80,32,125,.26)}
.noctyra-page .interactive-map-toggle-description{color:#b0a4ba}.noctyra-page .interactive-map-toggle-action{color:#eadcff;background:rgba(64,31,91,.82);border-color:rgba(185,124,255,.40)}
body:not(.aurelion-page):not(.noctyra-page) .eclipse-map-section .interactive-map-toggle{background:radial-gradient(circle at 75% 10%,rgba(117,72,176,.11),transparent 28rem),linear-gradient(180deg,rgba(11,14,20,.98),rgba(4,5,8,.99));border-color:rgba(216,186,104,.22);color:#f4f2ed}
body:not(.aurelion-page):not(.noctyra-page) .eclipse-map-section .interactive-map-toggle:hover,body:not(.aurelion-page):not(.noctyra-page) .eclipse-map-section .interactive-map-toggle:focus-visible{border-color:rgba(232,196,126,.52);box-shadow:0 22px 66px rgba(0,0,0,.30)}
body:not(.aurelion-page):not(.noctyra-page) .eclipse-map-section .interactive-map-toggle-action{color:#f1dfb7;background:rgba(32,28,22,.82);border-color:rgba(216,186,104,.34)}
.interactive-map-panel .aurelion-map-embed-shell,.interactive-map-panel .noctyra-map-embed-shell,.interactive-map-panel .eclipse-map-embed-shell{margin-top:22px}
@media(max-width:800px){.interactive-map-toggle{align-items:flex-start;flex-direction:column;padding:28px 24px}.interactive-map-toggle-action{width:100%;justify-content:space-between}}


/* =========================================================
   V8.23 — NATIVE IMMERSIVE INTERACTIVE WORLD MAPS
   ========================================================= */
.immersive-world-map-section{
  position:relative;padding-top:78px;padding-bottom:110px;overflow:visible;scroll-margin-top:100px
}
.immersive-world-map-heading{
  max-width:1180px;margin:0 auto 34px;padding:0 28px;text-align:center
}
.immersive-world-map-heading h2{
  margin:8px 0 16px;font-size:clamp(42px,6vw,82px);line-height:.94;letter-spacing:-.055em
}
.immersive-world-map-heading>p:last-child{
  max-width:820px;margin:0 auto;font-size:17px;line-height:1.7
}
.immersive-world-map-stage{
  position:relative;width:min(1920px,calc(100vw - 24px));margin-left:50%;
  transform:translateX(-50%);overflow:visible;isolation:isolate
}
.immersive-world-map-image{
  display:block;width:100%;height:auto;object-fit:contain;border-radius:22px;
  user-select:none;box-shadow:0 34px 100px rgba(0,0,0,.25)
}
.immersive-world-map-hotspots{position:absolute;inset:0;pointer-events:none}
.world-map-hotspot{
  --x:50%;--y:50%;position:absolute;left:var(--x);top:var(--y);
  transform:translate(-50%,-50%);display:grid;place-items:center;width:44px;height:44px;
  padding:0;border-radius:999px;cursor:pointer;pointer-events:auto;z-index:4;
  transition:transform .22s ease,box-shadow .22s ease,filter .22s ease,border-color .22s ease
}
.world-map-hotspot-number{
  display:grid;place-items:center;width:100%;height:100%;border-radius:inherit;
  font-size:15px;font-weight:950;line-height:1;transition:transform .22s ease
}
.world-map-hotspot::before,.world-map-hotspot::after{
  content:"";position:absolute;inset:-8px;border-radius:999px;border:1px solid currentColor;
  opacity:.38;animation:worldMapPulse 2.5s ease-out infinite;pointer-events:none
}
.world-map-hotspot::after{inset:-15px;opacity:.18;animation-delay:.85s}
.world-map-hotspot-label{
  position:absolute;left:50%;bottom:calc(100% + 16px);transform:translateX(-50%) translateY(7px);
  width:max-content;max-width:min(320px,70vw);padding:9px 12px;border-radius:9px;
  opacity:0;visibility:hidden;white-space:nowrap;font-size:12px;font-weight:900;letter-spacing:.045em;
  pointer-events:none;transition:opacity .18s ease,transform .18s ease,visibility .18s ease
}
.world-map-hotspot:hover,.world-map-hotspot:focus-visible,.world-map-hotspot.is-active{
  transform:translate(-50%,-50%) scale(1.38);z-index:12;outline:none;filter:brightness(1.18)
}
.world-map-hotspot:hover .world-map-hotspot-number,
.world-map-hotspot:focus-visible .world-map-hotspot-number,
.world-map-hotspot.is-active .world-map-hotspot-number{transform:scale(1.08)}
.world-map-hotspot:hover .world-map-hotspot-label,
.world-map-hotspot:focus-visible .world-map-hotspot-label,
.world-map-hotspot.is-active .world-map-hotspot-label{
  opacity:1;visibility:visible;transform:translateX(-50%) translateY(0) scale(.76)
}
.world-map-key{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;
  width:min(1500px,calc(100% - 48px));margin:24px auto 0
}
.world-map-key-button{
  display:flex;align-items:center;gap:12px;min-height:48px;padding:10px 14px;border-radius:12px;
  cursor:pointer;text-align:left;font:inherit;font-size:12px;font-weight:850;
  transition:transform .2s ease,border-color .2s ease,background .2s ease
}
.world-map-key-button:hover,.world-map-key-button:focus-visible{transform:translateY(-2px);outline:none}
.world-map-key-button>span{
  flex:0 0 auto;display:grid;place-items:center;width:28px;height:28px;border-radius:999px;font-weight:950
}
.world-map-location-dialog{
  width:min(96vw,1800px);max-width:none;height:min(94vh,1100px);max-height:none;margin:auto;padding:0;
  border-radius:18px;overflow:hidden;background:#030406;box-shadow:0 36px 140px rgba(0,0,0,.92)
}
.world-map-location-dialog::backdrop{background:rgba(0,0,0,.90);backdrop-filter:blur(12px)}
.world-map-dialog-figure{position:relative;display:grid;place-items:center;width:100%;height:100%;margin:0;background:#020304}
.world-map-dialog-figure>img{display:block;width:100%;height:100%;object-fit:contain}
.world-map-dialog-caption{
  position:absolute;left:50%;bottom:20px;transform:translateX(-50%);display:flex;align-items:center;gap:18px;
  width:min(720px,calc(100% - 160px));padding:14px 18px;border-radius:14px;background:rgba(4,6,9,.82);
  color:#fff;backdrop-filter:blur(14px);box-shadow:0 12px 38px rgba(0,0,0,.48)
}
.world-map-dialog-caption .eyebrow{margin:0 0 2px}
.world-map-dialog-caption h3{margin:0;font-size:clamp(18px,2vw,28px)}
.world-map-dialog-number{
  flex:0 0 auto;display:grid;place-items:center;width:54px;height:54px;border-radius:999px;font-size:22px;font-weight:950
}
.world-map-dialog-close,.world-map-dialog-nav{
  position:absolute;z-index:20;cursor:pointer;color:#fff;background:rgba(4,6,9,.80);backdrop-filter:blur(12px)
}
.world-map-dialog-close{top:14px;right:14px;width:46px;height:46px;border-radius:999px;font-size:28px;line-height:1}
.world-map-dialog-nav{top:50%;transform:translateY(-50%);width:50px;height:74px;border-radius:12px;font-size:40px;line-height:1}
.world-map-dialog-prev{left:14px}.world-map-dialog-next{right:14px}
@keyframes worldMapPulse{0%{transform:scale(.72);opacity:.55}75%,100%{transform:scale(1.45);opacity:0}}

/* Aurelion theme */
.aurelion-immersive-map .immersive-world-map-heading{color:#17343d}
.aurelion-immersive-map .immersive-world-map-heading>p:last-child{color:#60727a}
.aurelion-immersive-map .immersive-world-map-image{border:1px solid rgba(62,189,205,.32);box-shadow:0 34px 100px rgba(47,151,164,.18)}
.aurelion-immersive-map .world-map-hotspot{
  color:#65e9f5;border:1px solid #d9fbff;
  background:radial-gradient(circle,#fff 0 12%,#78e9f2 14% 34%,#19879a 38% 70%,#0c4855 72%);
  box-shadow:0 0 0 4px rgba(85,220,234,.17),0 0 24px rgba(59,213,230,.92)
}
.aurelion-immersive-map .world-map-hotspot:hover,
.aurelion-immersive-map .world-map-hotspot:focus-visible,
.aurelion-immersive-map .world-map-hotspot.is-active{
  border-color:#fff4b9;box-shadow:0 0 0 6px rgba(255,229,138,.22),0 0 34px rgba(77,224,239,1),0 0 72px rgba(210,178,82,.30)
}
.aurelion-immersive-map .world-map-hotspot-label{background:rgba(241,252,253,.96);color:#17343d;border:1px solid rgba(50,183,200,.55)}
.aurelion-immersive-map .world-map-key-button{color:#17343d;background:rgba(255,255,255,.86);border:1px solid rgba(43,174,192,.26)}
.aurelion-immersive-map .world-map-key-button>span{color:#165e6b;background:#d8f8fb;border:1px solid #55c9d6}
.aurelion-immersive-map .world-map-location-dialog{border:1px solid rgba(71,211,226,.52)}
.aurelion-immersive-map .world-map-dialog-number{color:#113f49;background:#d9f9fb;border:1px solid #62ced9}
.aurelion-immersive-map .world-map-dialog-close,.aurelion-immersive-map .world-map-dialog-nav{border:1px solid rgba(93,219,232,.58)}

/* Noctyra theme */
.noctyra-immersive-map .immersive-world-map-heading{color:#f3edf8}
.noctyra-immersive-map .immersive-world-map-heading>p:last-child{color:#ada2b7}
.noctyra-immersive-map .immersive-world-map-image{border:1px solid rgba(177,109,255,.34);box-shadow:0 34px 110px rgba(56,18,93,.42)}
.noctyra-immersive-map .world-map-hotspot{
  color:#bd7aff;border:1px solid #eddcff;
  background:radial-gradient(circle,#fff 0 10%,#d9b7ff 12% 26%,#9b54e8 28% 52%,#57218a 56% 78%,#261134 80%);
  box-shadow:0 0 0 4px rgba(163,89,243,.18),0 0 25px rgba(155,82,232,.95)
}
.noctyra-immersive-map .world-map-hotspot:hover,
.noctyra-immersive-map .world-map-hotspot:focus-visible,
.noctyra-immersive-map .world-map-hotspot.is-active{
  border-color:#fff;box-shadow:0 0 0 6px rgba(202,152,255,.22),0 0 36px rgba(184,111,255,1),0 0 80px rgba(109,42,182,.55)
}
.noctyra-immersive-map .world-map-hotspot-label{background:rgba(14,7,21,.96);color:#f1e7fa;border:1px solid rgba(180,112,255,.60)}
.noctyra-immersive-map .world-map-key-button{color:#efe8f5;background:rgba(25,15,35,.88);border:1px solid rgba(171,106,246,.28)}
.noctyra-immersive-map .world-map-key-button>span{color:#f5ecff;background:#5b2a82;border:1px solid #ae6ef4}
.noctyra-immersive-map .world-map-location-dialog{border:1px solid rgba(177,109,255,.58)}
.noctyra-immersive-map .world-map-dialog-number{color:#fff;background:#6b3497;border:1px solid #c18bff}
.noctyra-immersive-map .world-map-dialog-close,.noctyra-immersive-map .world-map-dialog-nav{border:1px solid rgba(183,116,255,.60)}

/* Eclipse theme */
.eclipse-immersive-map .immersive-world-map-heading{color:#f4f1eb}
.eclipse-immersive-map .immersive-world-map-heading>p:last-child{color:#afb6c1}
.eclipse-immersive-map .immersive-world-map-image{border:1px solid rgba(220,190,116,.30);box-shadow:0 36px 118px rgba(0,0,0,.52)}
.eclipse-immersive-map .world-map-hotspot{
  color:#e4c574;border:1px solid #f7e5ae;
  background:radial-gradient(circle,#fff 0 10%,#f1d58b 12% 28%,#b99243 30% 52%,#65471b 56% 78%,#25180a 80%);
  box-shadow:0 0 0 4px rgba(218,184,102,.18),0 0 24px rgba(222,186,98,.90)
}
.eclipse-immersive-map .world-map-hotspot:hover,
.eclipse-immersive-map .world-map-hotspot:focus-visible,
.eclipse-immersive-map .world-map-hotspot.is-active{
  border-color:#fff;box-shadow:0 0 0 6px rgba(236,203,121,.22),0 0 36px rgba(232,195,107,1),0 0 82px rgba(121,77,180,.34)
}
.eclipse-immersive-map .world-map-hotspot-label{background:rgba(5,7,11,.96);color:#f3e4b8;border:1px solid rgba(218,184,102,.54)}
.eclipse-immersive-map .world-map-key-button{color:#eee9df;background:rgba(9,12,17,.90);border:1px solid rgba(218,184,102,.22)}
.eclipse-immersive-map .world-map-key-button>span{color:#251b0c;background:#dfc277;border:1px solid #f1d898}
.eclipse-immersive-map .world-map-location-dialog{border:1px solid rgba(218,184,102,.52)}
.eclipse-immersive-map .world-map-dialog-number{color:#21180a;background:#e3c77c;border:1px solid #f0d99b}
.eclipse-immersive-map .world-map-dialog-close,.eclipse-immersive-map .world-map-dialog-nav{border:1px solid rgba(218,184,102,.56)}

@media(max-width:760px){
  .immersive-world-map-section{padding-top:54px;padding-bottom:82px}
  .immersive-world-map-stage{width:calc(100vw - 10px)}
  .immersive-world-map-image{border-radius:12px}
  .world-map-hotspot{width:30px;height:30px}
  .world-map-hotspot-number{font-size:11px}
  .world-map-hotspot-label{display:none}
  .world-map-key{grid-template-columns:1fr;width:calc(100% - 28px)}
  .world-map-location-dialog{width:100vw;height:100vh;border:0;border-radius:0}
  .world-map-dialog-caption{width:calc(100% - 100px);bottom:12px}
  .world-map-dialog-nav{width:42px;height:58px;font-size:34px}
}
@media(prefers-reduced-motion:reduce){
  .world-map-hotspot::before,.world-map-hotspot::after{animation:none}
  .world-map-hotspot,.world-map-hotspot-number,.world-map-hotspot-label{transition:none}
}


/* =========================================================
   V8.25 — AURELION / NOCTYRA FOUNDER PACK REBRAND
   Clean 4K founder wallpaper art now drives the world hero banners.
   ========================================================= */
.aurelion-hero{
  background-image:url('assets/aurelion-founder-hero.jpg') !important;
  background-position:center 37% !important;
  background-size:cover !important;
}

.noctyra-hero{
  background-image:url('assets/noctyra-founder-hero.jpg') !important;
  background-position:center 38% !important;
  background-size:cover !important;
}

/* Keep the transformed homepage visually consistent after allegiance selection. */
body.faction-dawn .transform-hero{
  background-image:url('assets/aurelion-founder-hero.jpg') !important;
  background-position:center 37% !important;
}

body.faction-dusk .transform-hero{
  background-image:url('assets/noctyra-founder-hero.jpg') !important;
  background-position:center 38% !important;
}

/* Maintain readable typography over the new cinematic artwork. */
.aurelion-hero .world-experience-shade{
  background:
    linear-gradient(90deg,rgba(4,12,15,.66) 0%,rgba(5,8,12,.30) 48%,rgba(4,9,12,.18) 100%),
    linear-gradient(180deg,rgba(4,9,12,.10),rgba(4,9,12,.18) 52%,rgba(4,8,11,.78) 100%);
}

.noctyra-hero .world-experience-shade{
  background:
    linear-gradient(90deg,rgba(7,3,12,.74) 0%,rgba(8,4,14,.34) 48%,rgba(7,3,12,.20) 100%),
    linear-gradient(180deg,rgba(7,3,12,.08),rgba(7,3,12,.18) 52%,rgba(5,3,9,.82) 100%);
}
