/* Cinematic realm entrance. Loaded after the shared landing components. */
:root { --gold-bright:#e7c790; --gold-primary:#bd9556; --gold-glow:rgba(189,149,86,.16); --text-muted:#b6aea0; --bg-deep:#0b1012; --font-serif:'Cinzel','Heebo',Georgia,serif; }
[dir="rtl"] { --font-serif:'Heebo',Georgia,serif; }
body { background:#0b1012; }
button,input { font-family:inherit; }
section { scroll-margin-top:90px; }
a:focus-visible,button:focus-visible,input:focus-visible,[role="button"]:focus-visible { outline:2px solid #efd09a; outline-offset:5px; }
.ambient-vignette { display:none; }
#embers-canvas { opacity:.35; }
.site-header { height:82px; background:linear-gradient(#0b1012e8,#0b101280); border-bottom:1px solid #d3b07825; backdrop-filter:blur(8px); }
.site-header.scrolled { background:#0b1012f5; }
.header-container { max-width:1520px; gap:24px; padding-inline:40px; }
.brand-crest { filter:none; width:38px; height:38px; }
.brand-title { color:#e9d8b8; text-shadow:none; font-size:19px; }
.brand-sub { letter-spacing:2px; }
.desktop-nav { gap:22px; }
.nav-link { font-size:12px; color:#dbd5c9; }
.desktop-nav .nav-link:last-child { display:none; }
.header-actions { gap:12px; }
.lang-switcher,.lang-btn,.btn-login { border-radius:2px; }
.lang-switcher { background:transparent; border-color:#d3b07830; }
.lang-btn.active { background:#c2a16c25; color:#edd7af; box-shadow:none; }
.btn-cta { border-radius:2px; background:linear-gradient(135deg,#ecd39b,#be9450); border:1px solid #f4dca6; box-shadow:0 4px 18px #0007,inset 0 0 0 3px #5f441c30; color:#251d10; }
.btn-cta svg { fill:none; stroke:currentColor; stroke-width:1.7; }
.btn-login { background:transparent; }
.hero-section { min-height:860px; min-height:max(800px,100svh); padding:145px 0 125px; align-items:center; background:#0b1012; }
.hero-backdrop-img { object-position:35% center; filter:brightness(.85) saturate(.72); animation:heroBreathe 32s infinite alternate ease-in-out; }
.hero-gradient-overlay { background:linear-gradient(0deg,#0b1012 0%,transparent 27%,#0b101220 80%,#0b101270),linear-gradient(90deg,transparent 20%,#0b10122b 43%,#0b1012e0 83%,#0b1012e8); }
.hero-section > .container { width:100%; max-width:1440px; padding-inline:60px; display:flex; justify-content:flex-end; }
.hero-content { width:560px; max-width:49%; text-align:center; }
.hero-eyebrow { background:none; border:0; border-radius:0; padding:0; font-size:10px; letter-spacing:2.5px; margin-bottom:18px; color:#e4d5ba; }
.hero-eyebrow .pulse-dot { background:#d1b079; box-shadow:0 0 8px #d1b07970; width:5px; height:5px; }
.realm-wordmark { font-family:'Cinzel',Georgia,serif; font-size:clamp(42px,5.5vw,82px); line-height:1.1; font-weight:600; letter-spacing:5px; color:#eddbb5; text-shadow:0 2px 1px #503516,0 6px 30px #0008; }
.realm-ornament { display:flex; align-items:center; justify-content:center; gap:15px; color:#c39d61; font-size:10px; margin:22px auto 26px; }
.realm-ornament i { width:92px; height:1px; background:linear-gradient(90deg,transparent,#b49357); }
.realm-ornament i:last-child { transform:rotate(180deg); }
.hero-title { font-size:clamp(28px,3vw,43px); font-weight:600; line-height:1.25; margin-bottom:18px; color:#f0eadf; }
.hero-title span { background:none; -webkit-text-fill-color:initial; color:#e2c38f; filter:none; }
.hero-lede { max-width:460px; margin:0 auto 28px; font-size:15px; line-height:1.9; color:#dbd8d0; }
.hero-actions { justify-content:center; gap:12px; margin-bottom:14px; }
.hero-cta-lg { min-width:250px; justify-content:center; padding:17px 30px; font-size:17px; position:relative; }
.hero-cta-lg:before,.hero-cta-lg:after { content:'◆'; font-size:8px; position:absolute; inset-inline-start:12px; opacity:.55; }
.hero-cta-lg:after { inset-inline-start:auto; inset-inline-end:12px; }
.hero-cta-ghost { border-radius:2px; background:#0b10124d; font-size:13px; padding:15px 22px; }
.hero-actions > a[href="#reel"] { display:none; }
.entry-note { color:#c0b8a8; font-size:11px; letter-spacing:.3px; }
.hero-stats-strip { grid-template-columns:repeat(4,1fr); gap:0; padding-top:24px; margin-top:32px; border-color:#c5a26a30; }
.hero-stat-card { padding-inline:10px; border-inline-end:1px solid #c5a26a26; }
.hero-stat-card:last-child { border:0; }
.stat-number { font-size:23px; color:#dfceb0; text-shadow:none; }
.stat-label { font-size:9px; font-weight:400; letter-spacing:.4px; margin-top:5px; }
.realm-scroll { position:absolute; bottom:27px; left:50%; transform:translateX(-50%); display:flex; flex-direction:column; align-items:center; color:#d0b68a; text-decoration:none; font-size:10px; letter-spacing:2px; z-index:3; }
.realm-scroll span:last-child { font-size:25px; line-height:1.2; }
[dir="rtl"] .hero-section > .container { justify-content:flex-start; }
[dir="rtl"] .hero-eyebrow { letter-spacing:1px; }
[dir="rtl"] .hero-title { font-size:clamp(32px,3.5vw,49px); font-weight:800; }
.section { padding:85px 0; border-top:1px solid #bd955619; }
.section-head { margin-bottom:38px; }
.section-eyebrow { font-size:10px; letter-spacing:3px; color:#bc9a64; }
.section-title { font-size:clamp(26px,3vw,39px); color:#ece3d1; font-weight:600; }
.section-desc { font-size:14px; color:#b6b5af; }
#reel { background:radial-gradient(ellipse at 50% 80%,#23313170,transparent 70%); }
.reel-wrapper { gap:35px; grid-template-columns:1.5fr 1fr; align-items:center; }
.reel-visual-frame { border:1px solid #baa16b75; border-radius:2px; padding:7px; background:#12191a; box-shadow:0 25px 60px #0006; transform:rotate(-1deg); }
.reel-screen-img { border-radius:0; }
.reel-badge-tag { background:#0b1012e8; color:#e4ceaa; border:1px solid #b5985d50; border-radius:0; font-size:10px; }
.reel-tab-item { border-radius:0; border:0; border-bottom:1px solid #baa16b30; background:transparent; }
.reel-tab-item.active { background:linear-gradient(90deg,#b69b6320,transparent); border-color:#baa16b70; box-shadow:none; }
.reel-tab-num { border-radius:0; background:none; color:#b99b64; }
.reel-tab-title { font-size:15px; }
.reel-tab-desc,.reel-tab-bullets { font-size:13px; }
#companies { position:relative; isolation:isolate; background:#101718; }
#companies:before { content:''; position:absolute; inset:0; z-index:-1; background:linear-gradient(#0b1012c9,#0b1012eb),url('../landing/marching_army.jpg') center 38%/cover; }
.companies-grid { gap:18px; }
.company-card { border-radius:0; border:1px solid #b99b643d; border-top:2px solid #b99b64a6; background:linear-gradient(#1e292a70,#0c1115d9); padding:24px 20px 30px; text-align:center; box-shadow:none; }
.company-card:before { display:none; }
.company-card:hover { background:#1a2528d9; border-color:#c9ab77; transform:translateY(-5px); box-shadow:0 12px 30px #0005; }
.company-art { width:104px; height:110px; object-fit:contain; display:block; margin:0 auto 18px; filter:drop-shadow(0 8px 10px #0008); }
.company-card:nth-child(3) .company-art { border:3px double #ac8a53; border-radius:50%; background:radial-gradient(#574733,#10181b 70%); padding:8px; }
.company-name { font-size:19px; color:#e0c697; }
.company-units { font-size:11px; }
.company-desc { font-size:13px; color:#c0bdb5; }
#pillars { background:#0c1215; }
.pillar-card { border:0; border-inline-end:1px solid #ba9d6430; background:transparent; border-radius:0; box-shadow:none; }
.pillar-card:last-child { border:0; }
.pillar-card:hover { background:#ffffff03; transform:none; box-shadow:none; }
.pillar-roman { color:#a98953; opacity:.7; }
.pillar-title { color:#dfcba6; }
#ranking { background:radial-gradient(ellipse at top,#25303455,transparent 70%); }
.ranking-table-frame { border-radius:2px; border-color:#b99b6450; background:#10171a; box-shadow:0 16px 40px #0004; overflow-x:auto; }
.ranking-table th { background:#b99b6410; }
.rank-badge-pill { border-radius:0; }
.founding-section { padding:90px 0; }
.founding-bg { opacity:.32; }
.founding-card { max-width:780px; background:linear-gradient(135deg,#142024f5,#0b1012f5); border:1px solid #b99b6480; border-radius:2px; box-shadow:0 20px 80px #0008; position:relative; }
.founding-card:before { content:'◆'; display:block; color:#b99b64; font-size:22px; text-align:center; margin-bottom:20px; }
.founding-perks { gap:12px; }
.perk-pill { background:none; border:0; border-radius:0; font-size:11px; padding:2px; }
.form-input { background:#080f12; border-color:#a98e5945; border-radius:2px; }
.btn-submit-reg { background:linear-gradient(135deg,#e3c78c,#ba9051); color:#251d10; border-radius:2px; box-shadow:0 4px 15px #0005; }
.site-footer { background:#080d10; }
.footer-links { flex-wrap:wrap; justify-content:center; min-width:0; }
.modal-card { background:#111b20; border-radius:2px; }
@media(min-width:961px) and (max-width:1200px) { .desktop-nav { gap:14px; } .header-container { padding-inline:22px; gap:16px; } .brand-sub { font-size:8px; } .header-actions { gap:7px; } .btn-login { padding:8px 10px; } }
@media(max-width:960px) {
 .hero-section { min-height:900px; padding:360px 0 100px; }
 .hero-backdrop-img { object-position:32% top; }
 .hero-gradient-overlay { background:linear-gradient(0deg,#0b1012 0%,#0b1012eb 32%,#0b101235 75%,#0b101250); }
 .hero-section > .container { justify-content:center!important; padding-inline:28px; }
 .hero-content { max-width:100%; width:580px; }
 .realm-wordmark { font-size:64px; }
 .hero-title { font-size:34px; }
 .reel-wrapper { grid-template-columns:1fr; }
 .companies-grid { grid-template-columns:repeat(2,1fr); }
 .site-header { height:70px; }
 .header-container { padding-inline:20px; }
}
@media(max-width:540px) {
 .hero-section { min-height:920px; padding-top:300px; padding-bottom:100px; }
 .hero-backdrop { bottom:auto; height:650px; }
 .hero-backdrop-img { object-position:30% top; }
 .hero-gradient-overlay { background:linear-gradient(0deg,#0b1012 0%,#0b1012ee 20%,#0b10121a 70%,#0b101250); }
 .hero-section > .container { padding-inline:22px; }
 .realm-wordmark { font-size:clamp(38px,11vw,60px); letter-spacing:4px; }
 .hero-eyebrow { font-size:9px; letter-spacing:1px; }
 .realm-ornament { margin:16px auto 20px; }
 .hero-title,[dir="rtl"] .hero-title { font-size:33px; }
 .hero-lede { font-size:14px; line-height:1.8; margin-bottom:24px; }
 .hero-actions { flex-direction:row; gap:10px; }
 .hero-cta-lg { width:100%; min-width:0; }
 .hero-cta-ghost { padding:8px 20px; border-color:transparent; }
 .hero-stats-strip { grid-template-columns:repeat(4,1fr); gap:0; margin-top:24px; }
 .stat-number { font-size:20px; } .stat-label { font-size:9px; }
 .hero-stat-card { padding-inline:6px; }
 .entry-note { font-size:10px; }
 .section { padding:55px 0; }
 .container { padding-inline:20px; }
 .section-title { font-size:27px; }
 .companies-grid { gap:10px; }
 .company-card { padding:20px 12px; }
 .company-art { width:80px; height:90px; }
 .company-name { font-size:17px; }
 .company-desc { font-size:12px; }
 .pillars-grid { grid-template-columns:1fr; gap:8px; }
 .pillar-card { border:0; border-bottom:1px solid #ba9d6430; padding:22px; }
 .ranking-table { min-width:540px; }
 .founding-section { padding:55px 0; }
 .founding-card { padding:28px 20px; }
 .founding-perks { flex-direction:column; align-items:center; }
 .header-container { gap:10px; padding-inline:12px; }
 .brand-title { font-size:16px; }
 .brand-crest { width:30px; height:30px; }
 .user-banner-logged { flex-direction:column; }
 .footer-top { flex-direction:column; align-items:center; }
 .footer-links { gap:12px 18px; }
}
@media(prefers-reduced-motion:reduce) {
 html { scroll-behavior:auto; }
 *,*:before,*:after { animation:none!important; transition:none!important; }
 #embers-canvas { display:none; }
}
