/* RETCON PUBLISH — styles.css (v2.2) */
:root{
  --gold: #FFD700;
  --softGold: #FFECB3;
  --silver: #F8F8FF;
  --bgStart: #72D8FF;
  --bgEnd: #E6FAFF;
  --blue: #5FC9E8;
  --logoStart: #B22222;
  --logoEnd: #FF4500;
  --woodStart: #E5C07B;
  --woodEnd: #FFD39B;
  --fir: #014421;
}

*{box-sizing:border-box}
body.site{
  margin:0;
  min-height:100vh;
  color:#0e1b2a;
  background: radial-gradient(1400px 1200px at 50% 25%, var(--bgEnd), var(--bgStart));
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, 'Noto Sans', 'Helvetica Neue', Arial, 'Apple Color Emoji','Segoe UI Emoji';
  line-height:1.6;
}

.site-header{
  display:flex; align-items:center; justify-content:space-between;
  padding:16px 24px;
  background: linear-gradient(90deg, rgba(255,236,179,0.12), rgba(255,215,0,0.06));
  border-bottom: 1px solid rgba(255,215,0,0.25);
  backdrop-filter: blur(6px);
}

.brand .logo-text{ font-weight:800; letter-spacing:0.6px; font-size:24px; }
.logo-gradient{
  background: linear-gradient(90deg, var(--logoStart), var(--logoEnd));
  -webkit-background-clip: text; background-clip:text; color: transparent;
  text-shadow: 0 0 8px rgba(255, 236, 179, 0.5);
}
.logo-gradient.alt{ filter: drop-shadow(0 0 10px rgba(255,215,0,0.35)); }
.brand .tagline{ display:block; font-size:13px; opacity:0.9 }

.lang-switch a{
  color:#0e1b2a; text-decoration:none; margin-left:12px; padding:6px 10px;
  border:1px solid rgba(1,68,33,0.2); border-radius:999px; font-size:12px; background: rgba(255,255,255,0.5);
}
.lang-switch a.active{ background: rgba(255,255,255,0.8) }

#content{ padding: 24px }

.site-footer{
  padding: 24px; border-top:1px solid rgba(1,68,33,0.15);
  background: linear-gradient(180deg, rgba(255,236,179,0.12), rgba(255,215,0,0.06));
}
.site-footer .footer-inner{ display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px }
.site-footer .legal a{ color:#0e1b2a; margin-right:12px; text-decoration:none; opacity:0.9 }
.site-footer .legal a:hover{ text-decoration:underline }

/* Home orbit */
.home-hero{ position:relative; display:flex; align-items:center; justify-content:center; min-height: calc(100vh - 160px); }
.bg-aurora{
  position:absolute; inset:0;
  background:
    radial-gradient(400px 400px at 20% 30%, rgba(255,215,0,0.15), transparent 60%),
    radial-gradient(500px 500px at 70% 60%, rgba(95,201,232,0.25), transparent 60%);
  pointer-events:none;
}
.orbit-wrap{ position:relative; width:min(92vw, 920px); height:min(92vw, 920px) }
svg.orbit{ width:100%; height:100%; transition: transform 600ms ease-out; }
svg .logo-core{ font-weight:800; letter-spacing:1px; fill:#0e1b2a }
svg .subtitle{ fill: rgba(14,27,42,0.85) }
svg .symbol-bg{ fill: rgba(255,215,0,0.18); stroke: rgba(255,215,0,0.55); stroke-width:2; }
svg a:hover .symbol-bg{ filter: drop-shadow(0 0 10px rgba(255,215,0,0.75)); }
@media (prefers-reduced-motion: reduce){ svg.orbit{ transition: none !important; } }

/* World pages */
.world-hero{ text-align:center; margin: 0 auto 24px auto; max-width: 900px }
.world-hero .hero{ width:100%; height:auto; border-radius:12px; box-shadow: 0 6px 30px rgba(1,68,33,0.25) }
.world h1{ font-size:40px; margin:16px 0 8px 0; color:#0e1b2a }
.world .summary{ font-size:18px; opacity:0.95 }
.world-body{ max-width: 900px; margin: 0 auto; font-size:18px; color:#0e1b2a }
.legal-page{ max-width: 900px; margin: 0 auto; color:#0e1b2a }
.legal-page h1{ font-size:32px }