/* Xcess Origins / Public site shell v1. No gameplay or identity rules here. */
.site-header .site-nav .world-disclosure {
  position:relative;display:flex;align-items:center;isolation:isolate;
}
.site-header .site-nav .world-disclosure>summary {
  list-style:none;cursor:pointer;user-select:none;
  position:relative;display:flex;align-items:center;gap:7px;
  padding:35px 0;color:rgba(218,233,243,.72);
  font:700 10px/1.5 "Trebuchet MS",Arial,sans-serif;
  letter-spacing:.18em;text-transform:uppercase;
  transition:color .2s;
}
.site-header .site-nav .world-disclosure>summary::-webkit-details-marker {display:none}
.site-header .site-nav .world-disclosure>summary::after {
  content:"";width:6px;height:6px;transform:rotate(45deg) translateY(-2px);
  border-right:1px solid currentColor;border-bottom:1px solid currentColor;
  transition:transform .18s;
}
.site-header .site-nav .world-disclosure[open]>summary::after {
  transform:rotate(225deg) translate(-1px,-1px);
}
.site-header .site-nav .world-disclosure:is([open],.is-section-active)>summary,
.site-header .site-nav .world-disclosure>summary:hover {color:#f4ead9}
.site-header .site-nav .world-disclosure>summary:focus-visible {
  outline:2px solid #93d8f8;outline-offset:6px;border-radius:2px;
}
.site-header .site-nav .world-submenu {
  position:absolute;top:calc(100% - 5px);left:-20px;z-index:150;
  min-width:218px;padding:8px;
  display:grid;gap:1px;
  border:1px solid rgba(128,191,230,.31);
  border-top:2px solid rgba(233,201,138,.85);
  background:linear-gradient(150deg,rgba(9,24,38,.98),rgba(3,10,18,.99));
  box-shadow:0 18px 38px rgba(0,0,0,.58);
}
.site-header .site-nav .world-submenu a {
  position:static;display:flex;align-items:center;justify-content:space-between;
  padding:12px 13px;color:#b6cddd;font-size:11px;font-weight:600;
  text-transform:none;letter-spacing:.04em;white-space:nowrap;
  transition:color .15s,background .15s;
}
.site-header .site-nav .world-submenu a:after {display:none}
.site-header .site-nav .world-submenu a:hover,
.site-header .site-nav .world-submenu a:focus-visible,
.site-header .site-nav .world-submenu a[aria-current="page"] {
  color:#f2dba6;background:rgba(118,167,198,.13);
}
.site-header .site-nav .world-submenu small {
  font:600 8px "Trebuchet MS",Arial,sans-serif;
  letter-spacing:.08em;color:#6d91a7;
}
.mobile-nav .mobile-world {
  border-top:1px solid rgba(118,170,209,.12);
  border-bottom:1px solid rgba(118,170,209,.12);
}
.mobile-nav .mobile-world>summary {
  list-style:none;display:flex;justify-content:space-between;align-items:center;
  padding:12px 8px;color:#bed1df;
  text-transform:uppercase;font-size:11px;letter-spacing:.13em;
  cursor:pointer;
}
.mobile-nav .mobile-world>summary::-webkit-details-marker {display:none}
.mobile-nav .mobile-world>summary::after {
  content:"+";color:#d8bd84;font-size:16px;font-weight:400;
}
.mobile-nav .mobile-world[open]>summary::after {content:"−"}
.mobile-nav .mobile-world>summary:focus-visible {
  outline:2px solid #93d8f8;outline-offset:1px;
}
.mobile-nav .mobile-world-links {
  display:grid;gap:1px;margin:0 0 8px 10px;
  padding-left:12px;border-left:1px solid rgba(214,184,125,.45);
}
.mobile-nav .mobile-world-links a {padding:9px 12px;color:#a6c1d2}
.mobile-nav .mobile-world-links a[aria-current="page"] {color:#f0d59f}
.site-footer {background:linear-gradient(180deg,#070e15,#04080d);border-top:1px solid rgba(133,188,224,.2)}
.site-footer .footer-info {
  width:var(--shell);margin:auto;padding:35px 0 28px;
  display:grid;grid-template-columns:minmax(210px,1.25fr) repeat(2,minmax(135px,.7fr)) minmax(180px,.9fr);
  gap:clamp(18px,3vw,48px);
}
.site-footer .footer-identity {display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.site-footer .footer-identity a {display:flex;align-items:center;gap:10px;color:#e6eff6;text-decoration:none}
.site-footer .footer-identity img {width:37px;height:37px;object-fit:contain}
.site-footer .footer-identity strong {
  font:500 19px Georgia,serif;letter-spacing:.055em;
}
.site-footer .footer-identity strong em {font-style:normal;color:#e8c88c}
.site-footer .footer-identity p {max-width:245px;margin:0;color:#829dad;font-size:11px;line-height:1.65}
.site-footer .footer-group {display:grid;align-content:start;justify-items:start;gap:10px}
.site-footer .footer-group>strong {
  color:#e4c88f;font-size:10px;letter-spacing:.14em;text-transform:uppercase;
}
.site-footer .footer-group a {
  color:#a0b9ca;text-decoration:none;font-size:11px;line-height:1.4;
  transition:color .17s;
}
.site-footer .footer-group a:hover,.site-footer .footer-group a:focus-visible {color:#fff}
.site-footer .footer-group .footer-pending {
  color:#7791a4;font-size:11px;line-height:1.55;max-width:195px;
}
.site-footer .footer-bottom {
  width:var(--shell);margin:auto;min-height:55px;
  padding:13px 0 17px;border-top:1px solid rgba(137,191,228,.13);
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 25px;
  font-size:10px;letter-spacing:.08em;color:#718b9b;
}
.site-footer .footer-bottom span:last-child {font-size:9px;text-transform:uppercase}
@media(max-width:980px) {
  .site-footer .footer-info {grid-template-columns:1.2fr 1fr 1fr;gap:25px}
  .site-footer .footer-group:last-child {grid-column:2/4}
  .site-header .site-nav .world-disclosure>summary {font-size:9px;letter-spacing:.08em}
}
@media(max-width:760px) {
  .site-footer .footer-info {grid-template-columns:repeat(2,minmax(0,1fr));padding:32px 0 20px;gap:25px 20px}
  .site-footer .footer-identity {grid-column:1/-1}
  .site-footer .footer-group:last-child {grid-column:auto}
  .site-header .site-nav .world-disclosure {display:none}
}
@media(max-width:440px) {
  .site-footer .footer-info {gap:21px 12px}
  .site-footer .footer-group>strong {font-size:9px}
  .site-footer .footer-bottom {align-items:flex-start;flex-direction:column}
}
@media(prefers-reduced-motion:reduce) {
  .site-header .site-nav .world-disclosure>summary,
  .site-header .site-nav .world-submenu a,
  .site-footer .footer-group a {transition:none}
}

/* WEB-PRODUCT: consistent keyboard focus for public footer links. */
.site-footer .footer-group a:focus-visible,
.site-footer .footer-identity a:focus-visible {
  outline:2px solid #93d8f8;
  outline-offset:4px;
  border-radius:2px;
}
.site-header .site-nav .world-disclosure.is-section-active>summary {
  color:#f4ead9;
}
