:root{
  --bg:#08100c;
  --bg-deep:#070b08;
  --bg-elev:rgba(13, 20, 16, 0.92);
  --panel:#101a16;
  --panel-soft:#14211b;
  --panel-strong:#0f1a14;
  --line:#27372f;
  --line-soft:rgba(255,255,255,.12);
  --text:#f5f7ee;
  --muted:#aebaae;
  --dim:#748173;
  --green:#79d36f;
  --green-2:#4f9148;
  --gold:#f1bf52;
  --cyan:#6bb9eb;
  --red:#e4685d;
  --surface-veil:#0a1510;
  --ink:#0a120e;
  --shadow-soft:rgba(0,0,0,.42);
  --radius:8px;
  --max:1180px;
  --nav-height:82px;
  --scroll-offset:106px;
  --header-gradient:linear-gradient(180deg,rgba(7,13,10,.94),rgba(7,13,10,.82));
  --focus-ring:0 0 0 2px rgba(121,211,111,.32),0 0 0 4px rgba(7,13,10,.74);
  --ink-soft:#121915;
  --shell-pad:44px;
  --section-gap:32px;
  color-scheme:dark;
  font-synthesis:none;
}

*,
*::before,
*::after{
  box-sizing:border-box;
}

html{
  scroll-behavior:smooth;
  scroll-padding-top:calc(var(--scroll-offset) + 12px);
  scrollbar-gutter:stable;
  overscroll-behavior-y:auto;
  overflow-x:hidden;
}

:focus-visible{
  outline:2px solid var(--green);
  outline-offset:2px;
}

body{
  margin:0;
  min-height:100vh;
  color:var(--text);
  background:
    linear-gradient(180deg,rgba(18,31,24,.76),rgba(8,16,12,.98) 460px,#070c09),
    repeating-linear-gradient(90deg,rgba(255,255,255,.024) 0 1px,transparent 1px 96px),
    #08100c;
  font-family:Inter,ui-sans-serif,system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
  position:relative;
}

body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(8,16,12,.78),rgba(8,16,12,.98) 58%,#060907),
    url("assets/aow-hero-world-v3.png") center top / min(1800px, 130vw) auto no-repeat;
  opacity:.26;
}

a{
  color:inherit;
  text-decoration:none;
}

button,input{
  font:inherit;
}

img{
  display:block;
  max-width:100%;
}

code{
  color:#f3ffe9;
  font-family:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;
  font-weight:800;
}

::selection{
  background:rgba(121,211,111,.26);
}

.sr-only{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}

.skip-link{
  position:fixed;
  left:50%;
  top:-100px;
  transform:translateX(-50%);
  z-index:60;
  border:1px solid var(--line-soft);
  border-radius:999px;
  padding:10px 14px;
  background:rgba(7,13,10,.96);
  color:#fff;
  font-weight:900;
  box-shadow:0 16px 34px rgba(0,0,0,.35);
  transition:top .2s ease;
}

.skip-link:focus{
  top:12px;
  outline:0;
  box-shadow:var(--focus-ring),0 16px 34px rgba(0,0,0,.35);
}

.portal-nav{
  position:sticky;
  top:0;
  z-index:40;
  border-bottom:1px solid rgba(137,228,119,.16);
  background:
    linear-gradient(180deg,rgba(7,13,10,.94),rgba(7,13,10,.82)),
    linear-gradient(90deg,rgba(121,211,111,.08),transparent 38%,rgba(241,191,82,.05));
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  transition:
    border-color .2s ease,
    box-shadow .2s ease,
    background .2s ease,
    transform .2s ease;
  box-shadow:0 12px 28px rgba(0,0,0,.34);
  isolation:isolate;
  will-change:transform;
  contain:layout paint style;
}

.portal-nav.is-scrolled{
  border-bottom-color:rgba(137,228,119,.26);
  backdrop-filter:blur(24px);
  box-shadow:
    0 20px 45px rgba(0,0,0,.34),
    0 0 0 1px rgba(255,255,255,.03) inset;
}

.portal-nav::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(121,211,111,.02),rgba(121,211,111,.72),rgba(241,191,82,.5),rgba(121,211,111,.15),rgba(121,211,111,.02));
  opacity:.17;
  height:3px;
}

.portal-nav::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:2px;
  background:linear-gradient(90deg,transparent,rgba(121,211,111,.58),rgba(241,191,82,.28),transparent);
  opacity:.8;
}

.nav-inner{
  width:min(var(--max),calc(100% - 28px));
  min-height:var(--nav-height);
  margin:0 auto;
  padding:12px 0;
  display:flex;
  align-items:center;
  gap:14px;
  position:relative;
  z-index:1;
  isolation:isolate;
}

.portal-nav.is-scrolled .nav-inner{
  min-height:74px;
}

.nav-gauges{
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:8px;
  color:var(--dim);
  font-size:.74rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.edition-gauge{
  width:14px;
  height:14px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.2);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  position:relative;
  color:#fff;
}

.edition-gauge::after{
  content:"";
  width:6px;
  height:6px;
  border-radius:50%;
  background:currentColor;
}

.edition-gauge.java{
  color:var(--green);
}

.edition-gauge.bedrock{
  color:var(--cyan);
}

.nav-status{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-left:8px;
  padding:0 8px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:999px;
  background:rgba(255,255,255,.03);
}

.brand{
  display:inline-flex;
  align-items:center;
  gap:12px;
  min-width:max-content;
  white-space:nowrap;
  position:relative;
}

.brand img{
  width:44px;
  height:44px;
  object-fit:contain;
  filter:drop-shadow(0 10px 16px rgba(0,0,0,.35));
  border:1px solid rgba(255,255,255,.12);
  border-radius:10px;
  background:rgba(255,255,255,.02);
  padding:3px;
}

.brand strong{
  display:block;
  color:#fff;
  font-family:Impact,"Arial Black",system-ui,sans-serif;
  font-size:1.22rem;
  line-height:.95;
  letter-spacing:.02em;
  text-transform:uppercase;
}

.brand span span{
  display:block;
  color:var(--green);
  font-size:.74rem;
  font-weight:950;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.brand::after{
  content:"";
  position:absolute;
  left:54px;
  top:50%;
  width:94px;
  transform:translateY(-50%);
  height:1px;
  opacity:.28;
  background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.42),rgba(255,255,255,0));
}

.nav-links{
  display:flex;
  align-items:center;
  gap:7px;
  margin-left:auto;
  overflow-x:auto;
  overflow-y:hidden;
  scrollbar-width:none;
  -ms-overflow-style:none;
  position:relative;
  padding:5px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:14px;
  background:rgba(255,255,255,.035);
  color:var(--muted);
  font-size:.88rem;
  font-weight:900;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.045),
    inset 0 0 0 1px rgba(255,255,255,.02),
    0 12px 24px rgba(0,0,0,.16);
  -webkit-mask-image:linear-gradient(90deg,transparent 0, #fff 18px, #fff calc(100% - 18px),transparent);
  mask-image:linear-gradient(90deg,transparent 0, #fff 18px, #fff calc(100% - 18px),transparent);
  box-sizing:border-box;
  transition:border-color .18s ease, box-shadow .18s ease;
}

.nav-links::-webkit-scrollbar{
  display:none;
}

.nav-links::before,
.nav-links::after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  width:22px;
  pointer-events:none;
  opacity:1;
  transition:opacity .2s ease;
}

.nav-links::before{
  left:0;
  background:linear-gradient(90deg,rgba(7,13,10,.9),rgba(7,13,10,0));
}

.nav-links::after{
  right:0;
  background:linear-gradient(90deg,rgba(7,13,10,0),rgba(7,13,10,.9));
}

.nav-links[data-at-start="true"]::before,
.nav-links[data-at-end="true"]::after{
  opacity:0;
}

.nav-links a{
  text-transform:none;
}

.nav-links a:hover,
.nav-links a:focus-visible,
.nav-links a[aria-current="page"]{
  letter-spacing:.015em;
}

.nav-links a{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:35px;
  padding:0 12px;
  border:1px solid rgba(255,255,255,.05);
  border-radius:999px;
  white-space:nowrap;
  text-transform:uppercase;
  transition:border-color .16s ease, background .16s ease, color .16s ease, transform .16s ease;
  backdrop-filter:blur(4px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}

.nav-links a::after{
  content:"";
  position:absolute;
  left:12px;
  right:12px;
  bottom:4px;
  height:2px;
  border-radius:999px;
  transform:scaleX(0);
  transform-origin:left;
  background:linear-gradient(90deg,rgba(121,211,111,0),var(--green),rgba(241,191,82,.5));
  opacity:0;
  transition:opacity .16s ease, transform .16s ease;
}

.nav-links a:hover,
.nav-links a:focus-visible,
.nav-links a[aria-current="page"]{
  color:#fff;
  background:rgba(121,211,111,.1);
  border-color:rgba(121,211,111,.34);
  outline:0;
  transform:translateY(-1px);
}

.nav-links a[aria-current="page"]{
  border-color:rgba(121,211,111,.58);
  background:linear-gradient(180deg,rgba(121,211,111,.24),rgba(121,211,111,.08));
}

.nav-links a:hover::after,
.nav-links a:focus-visible::after,
.nav-links a[aria-current="page"]::after{
  opacity:1;
  transform:scaleX(1);
  background:linear-gradient(90deg,rgba(121,211,111,0),rgba(121,211,111,.72),rgba(241,191,82,.55));
}

.btn,
.copy-small,
.tab-btn,
.filter-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:44px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:var(--radius);
  background:rgba(255,255,255,.045);
  color:#fff;
  font-weight:950;
  cursor:pointer;
  transition:transform .16s ease, border-color .16s ease, background .16s ease;
}

.btn{
  padding:0 16px;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 16px 36px rgba(0,0,0,.16);
}

.btn.ghost{
  border-color:rgba(255,255,255,.22);
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(0,0,0,.18));
}

.btn.map{
  border-color:rgba(107,185,235,.48);
  background:
    linear-gradient(180deg,rgba(107,185,235,.15),rgba(107,185,235,.04)),
    rgba(8,18,20,.74);
}

.btn.primary{
  border-color:rgba(137,228,119,.72);
  background:
    linear-gradient(180deg,rgba(255,255,255,.12),transparent 42%),
    linear-gradient(180deg,#4f9148,#2f6c3a);
  text-shadow:0 1px 0 rgba(0,0,0,.32);
}

.btn.disabled,
.btn[aria-disabled="true"],
.btn[disabled]{
  cursor:not-allowed;
  border-color:rgba(255,255,255,.16);
  background:
    linear-gradient(180deg,rgba(255,255,255,.06),rgba(0,0,0,.06));
  color:var(--muted);
  opacity:.62;
  transform:none;
  box-shadow:none;
}

.btn.disabled:hover,
.btn[aria-disabled="true"]:hover,
.btn[disabled]:hover,
.btn.disabled:focus-visible,
.btn[aria-disabled="true"]:focus-visible,
.btn[disabled]:focus-visible{
  border-color:rgba(255,255,255,.16);
  transform:none;
  outline:0;
}

.copy-small{
  min-height:36px;
  padding:0 12px;
  color:#dff7d8;
}

.btn:hover,
.btn:focus-visible,
.copy-small:hover,
.copy-small:focus-visible,
.tab-btn:hover,
.tab-btn:focus-visible,
.filter-chip:hover,
.filter-chip:focus-visible{
  border-color:var(--green);
  transform:translateY(-1px);
  outline:0;
}

.btn:focus-visible,
.copy-small:focus-visible,
.tab-btn:focus-visible,
.filter-chip:focus-visible{
  box-shadow:var(--focus-ring);
}

.inline-link-chip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:8px;
  padding:2px 8px 2px 2px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:999px;
  color:#dff7d8;
  background:rgba(255,255,255,.03);
}

.inline-link-chip[data-coming-soon="true"]{
  color:var(--gold);
  border-color:rgba(241,191,82,.42);
  cursor:default;
}

.page-shell{
  width:min(var(--max),calc(100% - 28px));
  margin:0 auto;
  padding:44px 0 68px;
  position:relative;
}

.page-shell::before{
  content:"";
  position:absolute;
  left:50%;
  top:0;
  width:118%;
  height:2px;
  transform:translateX(-50%);
  background:linear-gradient(90deg,transparent,rgba(241,191,82,.22),rgba(107,185,235,.2),transparent);
}

.hero-grid{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) 420px;
  gap:28px;
  align-items:start;
}

.hero-grid.hero-world{
  min-height:min(76vh, 680px);
  align-items:end;
  padding:46px 30px 30px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:var(--radius);
  overflow:hidden;
  background:
    linear-gradient(90deg,rgba(4,8,7,.96) 0%,rgba(4,8,7,.82) 34%,rgba(4,8,7,.38) 62%,rgba(4,8,7,.72) 100%),
    linear-gradient(180deg,rgba(4,8,7,.12),rgba(4,8,7,.92)),
    url("assets/aow-hero-world-v3.png") center / cover no-repeat;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.13),
    inset 0 -110px 120px rgba(0,0,0,.32),
    0 28px 75px rgba(0,0,0,.34);
}

.hero-grid.hero-event{
  min-height:520px;
  align-items:end;
  padding:34px 30px 28px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:var(--radius);
  overflow:hidden;
  background:
    linear-gradient(90deg,rgba(5,8,8,.94),rgba(5,8,8,.78) 38%,rgba(5,8,8,.36) 70%,rgba(5,8,8,.7)),
    linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.58)),
    url("assets/aow-events-champions-v1.png") center / cover no-repeat;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.13),
    0 28px 75px rgba(0,0,0,.32);
}

.hero-grid.hero-event::after{
  display:none;
}

.hero-event .hero-copy,
.hero-event .panel{
  position:relative;
  z-index:1;
}

.hero-event .hero-copy{
  padding:0;
}

.hero-event .panel{
  background:linear-gradient(180deg,rgba(13,20,16,.9),rgba(6,10,9,.94));
  border-color:rgba(241,191,82,.22);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}

.hero-grid.hero-world::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(121,211,111,.14),transparent 26%,transparent 74%,rgba(107,185,235,.12)),
    linear-gradient(180deg,rgba(255,255,255,.08),transparent 20%,transparent 72%,rgba(0,0,0,.28));
  mix-blend-mode:screen;
  opacity:.35;
}

.hero-grid.hero-world::after{
  display:none;
}

.hero-world .hero-copy,
.hero-world .panel{
  position:relative;
  z-index:1;
}

.hero-world .hero-copy{
  padding:0;
}

.hero-world .lead{
  max-width:660px;
  color:#ecf6e9;
  text-shadow:0 2px 8px rgba(0,0,0,.55);
}

.hero-world .hero-stat{
  border-color:rgba(255,255,255,.17);
  background:rgba(5,9,8,.72);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

.hero-world .panel{
  background:
    linear-gradient(180deg,rgba(13,20,16,.92),rgba(6,10,9,.94));
  border-color:rgba(137,228,119,.24);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}

.hero-grid::after{
  content:"";
  position:absolute;
  right:-64px;
  top:34px;
  width:176px;
  aspect-ratio:1/1;
  border-radius:50%;
  pointer-events:none;
  z-index:-1;
  opacity:.18;
  background:
    radial-gradient(circle at 26% 24%,rgba(255,255,255,.18),rgba(255,255,255,0) 40%),
    radial-gradient(circle at 82% 82%,rgba(121,211,111,.25),rgba(121,211,111,0) 45%),
    radial-gradient(circle at 24% 82%,rgba(241,191,82,.2),rgba(241,191,82,0) 46%),
    url("assets/aow-smp-crest-v2.webp") center/contain no-repeat;
}

.hero-copy{
  position:relative;
  padding:26px 0 0;
}

.hero-copy::before,
.section-head::before{
  content:"";
  display:block;
  width:54px;
  height:4px;
  margin-bottom:18px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--green),var(--gold));
}

h1,h2{
  margin:0;
  color:#fff;
  font-family:Impact,"Arial Black",system-ui,sans-serif;
  letter-spacing:.02em;
  text-transform:uppercase;
  filter:drop-shadow(0 7px 0 rgba(0,0,0,.2));
}

h1{
  max-width:740px;
  font-size:clamp(3.05rem,6.8vw,5.9rem);
  line-height:.88;
}

h2{
  font-size:clamp(2.1rem,4.4vw,4rem);
  line-height:.92;
}

h3{
  margin:0;
  color:#fff;
  font-size:1.22rem;
  line-height:1.08;
}

.lead{
  margin-top:18px;
  max-width:740px;
  color:#d5ded2;
  font-size:1.08rem;
  line-height:1.46;
  font-weight:760;
}

.hero-meta{
  margin-top:18px;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}

.hero-stat{
  border:1px solid rgba(255,255,255,.12);
  border-radius:var(--radius);
  background:
    linear-gradient(180deg,rgba(8,14,12,.95),rgba(6,10,9,.72));
  padding:10px 12px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:78px;
  gap:6px;
  transition:border-color .16s ease, transform .16s ease, background .16s ease;
}

.section-icon{
  width:18px;
  height:18px;
  object-fit:contain;
  vertical-align:middle;
  border-radius:4px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.02);
  padding:2px;
}

.hero-stat:hover{
  border-color:rgba(137,228,119,.4);
  background:
    linear-gradient(180deg,rgba(8,14,12,.9),rgba(7,16,12,.72));
  transform:translateY(-1px);
}

.hero-stat span{
  color:var(--gold);
  text-transform:uppercase;
  letter-spacing:.09em;
  font-size:.7rem;
  font-weight:950;
}

.hero-stat code{
  font-size:.96rem;
  line-height:1.24;
  display:block;
  word-break:break-word;
}

p{
  margin:0;
}

.panel,
.mini-card,
.route-card,
.command-row,
.status-card,
.doc-card,
.map-frame{
  position:relative;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:
    linear-gradient(145deg,rgba(121,211,111,.08),transparent 42%),
    linear-gradient(180deg,rgba(19,31,25,.96),rgba(8,14,12,.98));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.045),
    0 18px 52px rgba(0,0,0,.22);
  transition:border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.panel:hover,
.mini-card:hover,
.route-card:hover,
.status-card:hover,
.command-row:hover,
.doc-card:hover{
  border-color:rgba(121,211,111,.3);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.11),
    0 22px 56px rgba(0,0,0,.25);
  transform:translateY(-1px);
}

.panel::before,
.mini-card::before,
.route-card::before,
.command-row::before,
.status-card::before,
.doc-card::before,
.map-frame::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:10px;
  pointer-events:none;
  opacity:.14;
  background:url("assets/terrain-border.webp") left bottom / auto 30px repeat-x;
  image-rendering:pixelated;
}

.panel{
  padding:22px;
}

.panel h3{
  margin-bottom:12px;
}

.panel p,
.mini-card p,
.route-card p,
.doc-card p,
.status-card p{
  color:var(--muted);
  font-size:.94rem;
}

.panel-list{
  display:grid;
  gap:10px;
  margin:16px 0 0;
  padding:0;
  list-style:none;
}

.panel-list li{
  position:relative;
  display:block;
  padding-left:18px;
  color:var(--muted);
  font-size:.92rem;
}

.panel-list li::before{
  content:"";
  position:absolute;
  left:0;
  top:.68em;
  width:7px;
  height:7px;
  border-radius:2px;
  background:linear-gradient(180deg,var(--green),var(--gold));
}

.address-box{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  margin:18px 0;
  padding:8px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:var(--radius);
  background:#070b0a;
}

.address-box code{
  min-width:0;
  overflow:auto;
  white-space:nowrap;
  padding:0 8px;
  font-size:1.05rem;
}

.actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}

.meta-grid,
.card-grid,
.route-grid,
.status-grid,
.doc-grid{
  display:grid;
  gap:14px;
}

.meta-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.card-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
}

.route-grid,
.status-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.doc-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.playbook-grid{
  display:grid;
  gap:14px;
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.platform-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:12px;
  margin-top:18px;
}

.platform-card{
  display:flex;
  flex-direction:column;
  gap:8px;
  min-height:124px;
  padding:16px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:linear-gradient(180deg,rgba(16,24,20,.9),rgba(13,20,16,.94));
}

.platform-card strong{
  display:flex;
  align-items:center;
  gap:10px;
  color:#fff;
}

.platform-card strong img{
  width:24px;
  height:24px;
  border-radius:5px;
  border:1px solid rgba(255,255,255,.16);
  background:#090f0c;
}

.platform-card p{
  margin:0;
  color:var(--muted);
  font-size:.92rem;
}

.mini-card,
.route-card,
.status-card,
.doc-card{
  min-height:132px;
  padding:18px;
}

.mini-card strong,
.status-card strong{
  display:block;
  color:#fff;
  font-size:1.2rem;
}

.feature-spot{
  display:flex;
  gap:12px;
  min-height:120px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:14px;
  background:
    linear-gradient(180deg,rgba(19,31,25,.96),rgba(8,14,12,.98));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.045),
    0 18px 52px rgba(0,0,0,.22);
}

.feature-spot strong{
  display:block;
  color:#fff;
  margin-bottom:8px;
}

.feature-spot p{
  margin:0;
  color:var(--muted);
  font-size:.88rem;
}

.feature-column{
  display:grid;
  gap:10px;
}

.mini-card span,
.status-card span{
  display:block;
  margin-top:5px;
  color:var(--muted);
  font-size:.84rem;
}

.section{
  padding:58px 0 0;
  scroll-margin-top:calc(var(--scroll-offset) + 16px);
}

.section-head{
  margin-bottom:22px;
}

.section-head p{
  max-width:760px;
  margin-top:12px;
  color:var(--muted);
}

.tabs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:16px;
}

.tab-btn,
.filter-chip{
  min-height:38px;
  padding:0 12px;
  color:var(--muted);
}

.tab-btn.active,
.filter-chip.active{
  border-color:rgba(121,211,111,.42);
  background:rgba(121,211,111,.13);
  color:#fff;
}

.tab-panel{
  display:none;
}

.tab-panel.active{
  display:block;
}

.steps{
  display:grid;
  gap:12px;
  counter-reset:steps;
}

.step{
  display:grid;
  grid-template-columns:42px 1fr;
  gap:12px;
  align-items:start;
  padding:14px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:var(--radius);
  background:rgba(0,0,0,.22);
}

.step::before{
  counter-increment:steps;
  content:counter(steps,decimal-leading-zero);
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border:1px solid rgba(241,191,82,.25);
  border-radius:var(--radius);
  background:rgba(241,191,82,.09);
  color:var(--gold);
  font-family:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;
  font-weight:950;
}

.step strong{
  color:#fff;
}

.step span{
  color:var(--muted);
  font-size:.9rem;
}

.map-frame{
  position:relative;
  min-height:clamp(420px, 72vh, 620px);
  padding:0;
  isolation:isolate;
  overscroll-behavior:contain;
  border-radius:var(--radius);
  overflow:hidden;
  background:
    linear-gradient(180deg,rgba(5,9,8,.7),rgba(3,5,4,.92)),
    url("assets/terrain-border.webp") center repeat;
  isolation:isolate;
}

.map-frame iframe{
  display:block;
  width:100%;
  height:clamp(420px, 72vh, 620px);
  min-height:420px;
  border:0;
  background:#070b0a;
  pointer-events:none;
  touch-action:none;
  will-change:transform;
}

.map-frame.map-enabled iframe{
  pointer-events:auto;
  touch-action:pan-x pan-y;
}

.map-frame.map-enabled .map-interact{
  border-color:rgba(241,191,82,.58);
  color:var(--gold);
}

.map-frame.map-failed{
  box-shadow:
    inset 0 0 0 2px rgba(228,104,93,.28),
    inset 0 1px 0 rgba(255,255,255,.06);
}

.map-toolbar{
  position:absolute;
  z-index:7;
  left:12px;
  right:12px;
  top:12px;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:0;
  pointer-events:none;
  opacity:.96;
  align-items:center;
}

.map-toolbar-title{
  font-size:.74rem;
  color:var(--dim);
  text-transform:uppercase;
  letter-spacing:.08em;
  display:inline-flex;
  align-items:center;
  min-height:29px;
  padding:0 6px 0 2px;
  pointer-events:none;
  line-height:1;
}

.map-toolbar .inline-link-chip{
  pointer-events:auto;
  color:#dff7d8;
  background:rgba(6,10,9,.91);
  border-color:rgba(255,255,255,.16);
  padding:4px 10px;
}

.map-toolbar .inline-link-chip.map-source-open{
  margin-left:auto;
  color:#fff;
}

.map-toolbar .inline-link-chip[data-active-source="true"]{
  border-color:rgba(121,211,111,.7);
  color:var(--green);
  box-shadow:0 0 0 1px rgba(121,211,111,.22);
}

.map-source-switch{
  appearance:none;
  -webkit-appearance:none;
  border:1px solid rgba(255,255,255,.16);
  color:#dff7d8;
  background:rgba(6,10,9,.91);
  border-radius:999px;
  min-height:30px;
  padding:0 10px;
  font-size:.78rem;
  line-height:1;
  font-family:inherit;
  cursor:pointer;
  transition:border-color .16s ease, background .16s ease;
}

.map-source-switch[data-active-source="true"]{
  border-color:rgba(121,211,111,.7);
  color:var(--green);
  background:rgba(121,211,111,.14);
}

.map-source-switch:focus-visible{
  outline:0;
  box-shadow:var(--focus-ring);
}

.map-toolbar .copy-small{
  margin-left:auto;
  min-height:30px;
  font-size:.77rem;
  padding:0 10px;
}

.map-loading{
  position:absolute;
  inset:0;
  z-index:6;
  display:grid;
  align-content:center;
  justify-content:center;
  gap:10px;
  text-align:center;
  padding:22px;
  color:#dff7d8;
  background:
    linear-gradient(180deg,rgba(7,13,10,.3),rgba(7,13,10,.6)),
    radial-gradient(600px 240px at 20% 22%,rgba(121,211,111,.12),rgba(7,13,10,0) 62%),
    radial-gradient(600px 240px at 86% 22%,rgba(241,191,82,.12),rgba(7,13,10,0) 58%);
  transition:opacity .22s ease, visibility .22s ease;
  border-radius:var(--radius);
}

.map-loading .loading-title{
  display:block;
  font-size:1.02rem;
  color:#fff;
}

.map-loading p{
  margin:0;
  max-width:46ch;
  color:var(--muted);
  font-size:.91rem;
}

.map-host-links{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:8px;
  max-width:68ch;
  margin:0 auto;
}

.map-host-links .inline-link-chip{
  color:var(--green);
  border-color:rgba(121,211,111,.35);
  background:rgba(7,12,10,.76);
  padding:4px 10px;
}

.map-loading.hidden{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}

.map-loading::after{
  content:"";
  width:22px;
  height:22px;
  margin:4px auto 0;
  border:2px solid rgba(255,255,255,.36);
  border-top-color:var(--green);
  border-radius:50%;
  animation:map-spin .8s linear infinite;
}

.map-retry{
  position:absolute;
  left:50%;
  bottom:58px;
  transform:translateX(-50%);
  min-height:34px;
  padding:0 12px;
  border-color:rgba(121,211,111,.46);
  background:rgba(10,22,17,.93);
  color:#e8ffe0;
}

.map-retry[hidden]{
  display:none;
}

.map-interact{
  position:absolute;
  z-index:5;
  right:12px;
  bottom:12px;
  min-height:38px;
  padding:0 12px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:var(--radius);
  background:rgba(6,10,9,.9);
  color:#fff;
  font-size:.82rem;
  font-weight:950;
  cursor:pointer;
  box-shadow:0 14px 34px rgba(0,0,0,.28);
  backdrop-filter:blur(10px);
}

.map-controls-note{
  position:absolute;
  z-index:5;
  left:12px;
  bottom:58px;
  max-width:min(64ch, calc(100% - 24px));
  margin:0;
  padding:8px 10px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:var(--radius);
  background:rgba(6,10,9,.88);
  color:var(--muted);
  font-size:.78rem;
  line-height:1.3;
  transition:opacity .25s ease;
}

.map-frame.map-enabled .map-controls-note{
  opacity:1;
  border-color:rgba(241,191,82,.28);
  color:#f5dfac;
}

.map-frame:focus-within{
  outline:2px solid rgba(121,211,111,.4);
  outline-offset:3px;
}

.map-frame.map-failed .map-controls-note{
  opacity:1;
}

.brand-art{
  display:block;
  width:100%;
  border-radius:var(--radius);
  border:1px solid var(--line);
}

.status-dot{
  display:inline-block;
  width:10px;
  height:10px;
  border-radius:999px;
  background:var(--gold);
  box-shadow:0 0 0 7px rgba(241,191,82,.1);
}

.status-dot.online{
  background:var(--green);
  box-shadow:0 0 0 7px rgba(121,211,111,.12);
}

.status-dot.offline{
  background:var(--red);
  box-shadow:0 0 0 7px rgba(228,104,93,.12);
}

.status-dot.unavailable{
  background:#7f8c88;
  box-shadow:0 0 0 7px rgba(127,140,136,.1);
}

.metric-line{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 0;
  border-bottom:1px solid rgba(255,255,255,.08);
  color:var(--muted);
}

.metric-line strong{
  color:#fff;
}

.edition-grid{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:12px;
}

.edition-chip{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:40px;
  padding:0 12px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:var(--radius);
  background:rgba(255,255,255,.03);
  color:#dff7d8;
  font-size:.84rem;
  font-weight:880;
}

.edition-chip img{
  width:18px;
  height:18px;
  border-radius:3px;
}

.search-row{
  display:grid;
  grid-template-columns:1fr auto;
  gap:10px;
  margin-bottom:12px;
}

.search-row input{
  min-height:44px;
  width:100%;
  border:1px solid rgba(255,255,255,.12);
  border-radius:var(--radius);
  background:#070b0a;
  color:#fff;
  padding:0 14px;
  outline:0;
}

.search-row input:focus{
  border-color:var(--green);
}

.command-list{
  display:grid;
  gap:10px;
}

.command-row{
  display:grid;
  grid-template-columns:1fr auto;
  gap:14px;
  align-items:center;
  min-height:70px;
  padding:14px;
}

.command-row strong{
  display:block;
  color:#fff;
}

.command-row span{
  display:block;
  color:var(--muted);
  font-size:.9rem;
}

.footer{
  margin-top:62px;
  border-top:1px solid rgba(255,255,255,.06);
  background:
    linear-gradient(180deg,rgba(8,16,12,.2),rgba(3,6,5,.98)),
    radial-gradient(130% 85% at 30% -5%,rgba(121,211,111,.09),rgba(3,6,5,.12));
  position:relative;
  isolation:isolate;
  box-shadow:0 -20px 45px rgba(0,0,0,.18) inset;
}

.footer::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(241,191,82,.38),rgba(107,185,235,.4),transparent);
}

.footer::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:1px;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(241,191,82,.12),rgba(121,211,111,.26),rgba(107,185,235,.14));
  opacity:.65;
}

.footer-inner{
  width:min(var(--max),calc(100% - 28px));
  margin:0 auto;
  padding:30px 0 36px;
  display:grid;
  gap:16px;
  align-items:start;
  grid-template-columns:1fr;
  color:var(--muted);
  font-size:.9rem;
  position:relative;
  z-index:1;
}

.footer-meta{
  margin:0;
  padding:12px;
  color:var(--muted);
  line-height:1.35;
  font-size:.88rem;
  opacity:.92;
  border:1px solid rgba(255,255,255,.08);
  border-radius:var(--radius);
  background:rgba(5,9,8,.55);
  display:flex;
  flex-wrap:wrap;
  gap:10px 16px;
  align-items:baseline;
}

.footer-meta span{
  display:inline-flex;
  align-items:baseline;
  gap:6px;
  white-space:nowrap;
  line-height:1.2;
}

.footer-meta code{
  position:relative;
  color:#fff;
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:2px 6px;
  border-radius:8px;
  background:rgba(8,14,12,.85);
  border:1px solid rgba(255,255,255,.12);
}

.footer-inner > span{
  max-width:520px;
  color:var(--muted);
  line-height:1.4;
}

.footer-brand{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.footer-brand img{
  width:36px;
  height:36px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.15);
  object-fit:contain;
}

.footer-brand a{
  color:#fff;
  text-decoration:underline;
  text-decoration-color:rgba(121,211,111,.36);
  text-underline-offset:3px;
}

.footer-brand strong{
  color:#fff;
}

.footer-links{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-content:start;
  justify-content:flex-start;
  justify-self:stretch;
  max-width:100%;
}

.footer-links a{
  color:#dff7d8;
  border-radius:10px;
  font-weight:780;
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:6px 11px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(9,16,13,.65);
  transition:border-color .16s ease, background .16s ease, transform .16s ease;
}

.footer-links a:hover,
.footer-links a:focus-visible{
  border-color:rgba(137,228,119,.52);
  color:#fff;
  background:rgba(137,228,119,.12);
  transform:translateY(-1px);
}

.footer-links a:active{
  transform:translateY(0);
}

.footer-links a[aria-current="page"]{
  border-color:rgba(255,255,255,.28);
  color:#fff;
  background:rgba(255,255,255,.08);
}

.footer-links a::after{
  content:"";
  display:inline-block;
  width:0;
  height:1px;
  margin-left:0;
  transition:width .16s ease;
  background:linear-gradient(90deg,var(--green),var(--gold));
}

.footer-links a:hover::after,
.footer-links a:focus-visible::after{
  width:100%;
}

.footer-stamp{
  font-size:.76rem;
  letter-spacing:.02em;
  text-transform:uppercase;
  color:rgba(223,247,216,.84);
  font-weight:950;
  display:block;
  border:1px solid rgba(121,211,111,.32);
  border-radius:999px;
  width:fit-content;
  padding:5px 10px;
  margin-top:4px;
  background:rgba(8,12,10,.86);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.1);
}

.back-to-top{
  position:fixed;
  z-index:45;
  right:16px;
  bottom:18px;
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.16);
  border-radius:999px;
  color:#fff;
  text-decoration:none;
  background:linear-gradient(180deg,rgba(17,28,22,.98),rgba(6,11,9,.96));
  box-shadow:0 16px 35px rgba(0,0,0,.35);
  opacity:0;
  visibility:hidden;
  transform:translateY(12px);
  transition:opacity .2s ease, visibility .2s ease, transform .2s ease;
}

.back-to-top:hover,
.back-to-top:focus-visible{
  border-color:rgba(121,211,111,.42);
  transform:translateY(0);
  outline:0;
}

.back-to-top.is-visible{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}

.gallery-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:14px;
}

.gallery-grid .panel{
  padding:0;
  margin:0;
}

.gallery-figure-media{
  overflow:hidden;
  border-radius:var(--radius) var(--radius) 0 0;
}

.gallery-figure-media img{
  width:100%;
  height:auto;
  transition:transform .36s ease;
}

.gallery-grid .panel:hover .gallery-figure-media img{
  transform:scale(1.06);
}

.gallery-grid .panel figcaption{
  display:block;
  padding:14px 18px;
  color:var(--muted);
  font-size:.92rem;
}

.gallery-card{
  padding:0;
  margin:0;
}

.gallery-caption{
  display:block;
  padding:14px 18px;
  color:var(--muted);
  font-size:.92rem;
}

.hero-no-pad{
  padding-top:0;
}

.panel-spaced{
  margin-top:18px;
}

.content-spacer{
  margin-top:14px;
}

.status-chip{
  display:inline-flex;
  align-items:center;
  margin-left:8px;
  color:var(--gold);
}

.status-chip::before{
  content:"";
  width:7px;
  height:7px;
  margin-right:8px;
  border-radius:999px;
  background:var(--green);
}

.brand-assets-note{
  display:flex;
  gap:12px;
  align-items:flex-start;
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:14px;
  margin:18px 0 0;
  background:rgba(8,14,12,.9);
}

.brand-assets-note code{
  font-size:.86rem;
}

.brand-showcase-note{
  margin-top:12px;
  padding:12px;
  border-radius:var(--radius);
  border:1px dashed rgba(255,255,255,.14);
  background:rgba(9,15,12,.62);
}

.brand-showcase{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
  gap:12px;
  margin-top:14px;
}

.edition-symbol{
  display:flex;
  align-items:center;
  gap:12px;
}

.edition-symbol img{
  width:36px;
  height:36px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(8,14,12,.85);
  object-fit:contain;
  padding:2px;
}

.platform-callout{
  margin-top:16px;
  display:grid;
  gap:12px;
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.platform-callout .route-card{
  min-height:auto;
  background:linear-gradient(180deg,rgba(14,24,18,.98),rgba(10,16,13,.98));
}

.doc-hub-grid{
  display:grid;
  gap:14px;
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.doc-hub-card{
  border:1px solid rgba(255,255,255,.09);
  border-radius:var(--radius);
  padding:18px;
  background:
    linear-gradient(180deg,rgba(19,31,25,.96),rgba(8,14,12,.98));
  min-height:132px;
  display:flex;
  flex-direction:column;
  gap:8px;
  transition:border-color .16s ease, transform .16s ease;
}

.doc-hub-card strong{
  color:#fff;
  display:block;
}

.doc-hub-card span{
  color:var(--muted);
  font-size:.89rem;
  display:block;
}

.doc-hub-card:hover{
  border-color:rgba(121,211,111,.3);
  transform:translateY(-2px);
}

.scroll-hint{
  display:block;
  margin-top:12px;
  color:var(--muted);
  font-size:.82rem;
}

.stack-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

.stack-card{
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:14px;
  background:linear-gradient(180deg,rgba(19,31,25,.96),rgba(8,14,12,.98));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.05),
    0 18px 52px rgba(0,0,0,.22);
  min-height:150px;
}

.stack-card h3{
  margin:0 0 8px;
  color:#fff;
  font-size:1.02rem;
  line-height:1.18;
}

.stack-card p{
  color:var(--muted);
  margin:0;
  font-size:.9rem;
}

.stack-card strong{
  display:block;
  color:#dff7d8;
  font-size:.84rem;
  margin-top:8px;
  font-weight:860;
}

.section-kicker{
  color:var(--gold);
  letter-spacing:.08em;
  text-transform:uppercase;
  font-weight:880;
  margin:0 0 6px;
  font-size:.73rem;
  display:inline-flex;
  align-items:center;
  gap:8px;
}

.section-kicker::before{
  content:"";
  width:12px;
  height:12px;
  border-radius:999px;
  background:linear-gradient(180deg,var(--gold),var(--cyan));
}

.brand-showcase-card{
  padding:16px;
  min-height:148px;
  display:flex;
  flex-direction:column;
  gap:12px;
  justify-content:flex-start;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:linear-gradient(180deg,rgba(19,31,25,.96),rgba(8,14,12,.98));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.045),
    0 18px 52px rgba(0,0,0,.22);
}

.brand-showcase-card:hover{
  border-color:rgba(121,211,111,.3);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.11),
    0 22px 56px rgba(0,0,0,.25);
}

.brand-showcase-card img{
  width:100%;
  height:56px;
  object-fit:contain;
  object-position:left center;
}

.brand-showcase-card small{
  display:block;
  color:var(--muted);
  margin-top:auto;
}

.server-ribbon{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.11);
  border-radius:var(--radius);
  background:rgba(255,255,255,.08);
  box-shadow:0 20px 50px rgba(0,0,0,.22);
}

.server-ribbon span{
  min-height:74px;
  padding:13px 14px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:5px;
  background:linear-gradient(180deg,rgba(12,20,16,.96),rgba(7,12,10,.98));
  color:var(--muted);
  font-size:.78rem;
  font-weight:850;
}

.server-ribbon strong{
  color:#fff;
  font-size:.95rem;
}

.ops-console{
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:14px;
  align-items:stretch;
}

.console-card{
  position:relative;
  min-height:168px;
  padding:18px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:
    linear-gradient(180deg,rgba(19,31,25,.96),rgba(8,14,12,.98));
  overflow:hidden;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.05),
    0 18px 52px rgba(0,0,0,.22);
}

.console-card.featured{
  min-height:278px;
  background:
    linear-gradient(90deg,rgba(6,10,9,.94),rgba(6,10,9,.64)),
    url("assets/aow-hero-world-v3.png") center / cover no-repeat;
}

.console-card h3{
  max-width:24ch;
}

.console-card p{
  max-width:58ch;
  margin-top:9px;
  color:var(--muted);
  font-size:.94rem;
}

.console-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.signal-list{
  display:grid;
  gap:8px;
  margin-top:14px;
}

.signal-list span{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:38px;
  padding:7px 10px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:var(--radius);
  background:rgba(4,8,7,.68);
  color:var(--muted);
  font-size:.84rem;
}

.signal-list strong{
  color:#fff;
}

.feature-ledger{
  display:grid;
  gap:10px;
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.ledger-row{
  display:grid;
  grid-template-columns:44px 1fr;
  gap:12px;
  align-items:start;
  min-height:116px;
  padding:14px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:var(--radius);
  background:linear-gradient(180deg,rgba(12,20,16,.95),rgba(7,12,10,.98));
}

.ledger-row img{
  width:42px;
  height:42px;
  object-fit:contain;
  border-radius:var(--radius);
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.03);
  padding:4px;
}

.ledger-row strong{
  display:block;
  color:#fff;
  margin-bottom:3px;
}

.ledger-row span{
  color:var(--muted);
  font-size:.86rem;
}

.asset-band{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(240px,.44fr);
  gap:14px;
  align-items:center;
  padding:16px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:linear-gradient(180deg,rgba(19,31,25,.96),rgba(8,14,12,.98));
}

.asset-band img{
  width:100%;
  min-height:120px;
  object-fit:contain;
  border:1px solid rgba(255,255,255,.1);
  border-radius:var(--radius);
  background:rgba(0,0,0,.18);
}

.join-matrix{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.connect-card{
  min-height:210px;
  padding:18px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:linear-gradient(180deg,rgba(19,31,25,.96),rgba(8,14,12,.98));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.045),
    0 18px 52px rgba(0,0,0,.22);
}

.connect-card header{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:12px;
}

.connect-card header img{
  width:44px;
  height:44px;
  object-fit:contain;
  border:1px solid rgba(255,255,255,.14);
  border-radius:var(--radius);
  background:rgba(0,0,0,.2);
  padding:4px;
}

.connect-card h3{
  margin:0;
}

.connect-card p{
  color:var(--muted);
  font-size:.92rem;
}

.copy-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
  align-items:center;
  margin-top:12px;
  padding:8px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:var(--radius);
  background:#070b0a;
}

.copy-row code{
  min-width:0;
  overflow:auto;
  white-space:nowrap;
  padding:0 4px;
}

.route-board{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
}

.route-node{
  min-height:118px;
  padding:14px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:var(--radius);
  background:
    linear-gradient(180deg,rgba(19,31,25,.94),rgba(8,14,12,.98));
  position:relative;
}

.route-node::before{
  content:"";
  display:block;
  width:26px;
  height:4px;
  border-radius:999px;
  margin-bottom:10px;
  background:linear-gradient(90deg,var(--green),var(--gold));
}

.route-node strong{
  display:block;
  color:#fff;
}

.route-node span{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:.84rem;
}

.event-strip{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(280px,.92fr);
  gap:14px;
  align-items:stretch;
}

.event-art{
  min-height:320px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:
    linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.44)),
    url("assets/aow-events-champions-v1.png") center / cover no-repeat;
  box-shadow:0 22px 58px rgba(0,0,0,.26);
}

.event-copy{
  display:grid;
  gap:12px;
}

.routine-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

.routine-card{
  min-height:160px;
  padding:16px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:linear-gradient(180deg,rgba(19,31,25,.96),rgba(8,14,12,.98));
}

.routine-card h3{
  margin-bottom:8px;
}

.routine-card code{
  display:inline-flex;
  margin:3px 2px 0 0;
}

@keyframes map-spin{
  to{transform:rotate(360deg);}
}

@media (max-width:1040px){
  .hero-grid::after{
    right:-40px;
    width:130px;
    opacity:.16;
    top:56px;
  }

  .hero-grid,
  .route-grid,
  .doc-grid,
  .stack-grid,
  .ops-console,
  .asset-band,
  .event-strip{
    grid-template-columns:1fr;
  }

  .playbook-grid{
    grid-template-columns:1fr;
  }

  .route-board,
  .routine-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .card-grid,
  .status-grid,
  .doc-hub-grid,
  .server-ribbon,
  .feature-ledger,
  .join-matrix{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .platform-callout{
    grid-template-columns:1fr;
  }

  .feature-column{
    grid-template-columns:1fr;
  }

  .meta-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width:720px){
  .hero-grid::after{
    display:none;
  }

  .nav-inner{
    width:min(var(--max),calc(100% - 18px));
    min-height:auto;
    padding:10px 0;
    align-items:flex-start;
    flex-wrap:wrap;
  }

  .brand img{
    width:38px;
    height:38px;
  }

  .nav-links{
    order:3;
    width:100%;
    margin-left:0;
  }

  .nav-gauges{
    display:none;
  }

  .nav-links a{
    max-width:100%;
  }

  .page-shell{
    width:min(var(--max),calc(100% - 18px));
    padding-top:34px;
  }

  .hero-grid.hero-world{
    min-height:auto;
    padding:28px 16px 18px;
    background:
      linear-gradient(180deg,rgba(4,8,7,.9),rgba(4,8,7,.62) 42%,rgba(4,8,7,.98)),
      url("assets/aow-hero-world-v3.png") 58% center / cover no-repeat;
  }

  .hero-grid.hero-event{
    min-height:auto;
    padding:28px 16px 18px;
    background:
      linear-gradient(180deg,rgba(4,8,7,.9),rgba(4,8,7,.62) 42%,rgba(4,8,7,.98)),
      url("assets/aow-events-champions-v1.png") 55% center / cover no-repeat;
  }

  .card-grid,
  .status-grid,
  .doc-grid,
  .doc-hub-grid,
  .console-grid,
  .feature-ledger,
  .join-matrix,
  .route-board,
  .routine-grid{
    grid-template-columns:1fr;
  }

  .panel{
    padding:18px;
  }

  .search-row{
    grid-template-columns:1fr;
  }

  .command-row,
  .step{
    grid-template-columns:1fr;
  }

  .actions .btn,
  .actions .copy-small{
    width:100%;
  }

  .hero-world .actions .btn,
  .hero-world .actions .copy-small{
    flex:1 1 150px;
    width:auto;
  }

  .hero-meta{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .map-frame,
  .map-frame iframe{
    min-height:420px;
    height:420px;
  }

  .footer-inner{
    width:min(var(--max),calc(100% - 18px));
    display:grid;
    gap:12px;
  }

  .footer-links{
    justify-self:stretch;
  }

  .footer-brand{
    max-width:100%;
  }

  .footer-meta{
    margin-top:2px;
  }
}

@media (max-width:430px){
  h1{
    font-size:2.95rem;
  }

  h2{
    font-size:2.1rem;
  }

  .address-box{
    grid-template-columns:1fr;
  }

  .copy-small{
    width:100%;
  }

  .stack-grid,
  .footer-links,
  .server-ribbon{
    grid-template-columns:1fr 1fr;
  }

  .footer-meta{
    flex-direction:column;
    align-items:flex-start;
    gap:6px 0;
  }

  .footer-brand{
    gap:8px;
  }

  .footer{
    margin-top:42px;
  }
}

@media (prefers-reduced-motion: reduce){
  *,
  *::before,
  *::after{
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
    scroll-behavior:auto !important;
  }
}

/* Homepage refresh */
body.home-refresh{
  --max:1280px;
  --radius:8px;
  --home-stone:#e8ddc5;
  --home-ink:#050806;
  --home-panel:#101611;
  --home-panel-2:#151b1c;
  --home-line:rgba(232,221,197,.16);
  --home-muted:#bdc6b7;
  background:
    linear-gradient(180deg,rgba(6,10,8,.72) 0,rgba(6,10,8,.96) 46rem,#050806 100%),
    url("assets/aow-hero-world-v3.png") center top / min(1900px, 138vw) auto no-repeat,
    #050806;
}

body.home-refresh::before{
  background:
    linear-gradient(180deg,rgba(5,8,6,.18),rgba(5,8,6,.82) 38rem,#050806 100%),
    repeating-linear-gradient(90deg,rgba(255,255,255,.018) 0 1px,transparent 1px 128px);
  opacity:1;
}

.home-refresh .portal-nav{
  background:rgba(5,8,6,.82);
  border-bottom-color:rgba(232,221,197,.14);
}

.home-refresh .nav-inner{
  width:min(var(--max),calc(100% - 40px));
}

.home-refresh .nav-links{
  border-radius:8px;
  background:rgba(255,255,255,.035);
}

.home-refresh .page-shell.home-shell{
  width:min(var(--max),calc(100% - 40px));
  padding:30px 0 72px;
}

.home-refresh .page-shell::before{
  display:none;
}

.home-refresh h1,
.home-refresh h2{
  font-family:Inter,ui-sans-serif,system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  letter-spacing:0;
  text-transform:none;
  filter:none;
}

.home-refresh h1{
  max-width:9ch;
  font-size:5.35rem;
  line-height:.92;
  font-weight:950;
}

.home-refresh h2{
  max-width:13ch;
  font-size:3.05rem;
  line-height:.98;
  font-weight:940;
}

.home-refresh h3{
  letter-spacing:0;
  font-size:1.1rem;
  line-height:1.18;
}

.home-refresh .eyebrow,
.home-refresh .section-kicker{
  margin:0 0 10px;
  color:var(--gold);
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.home-refresh .section-kicker::before,
.home-refresh .hero-copy::before,
.home-refresh .section-head::before{
  display:none;
}

.home-refresh .lead{
  max-width:720px;
  margin:18px 0 0;
  color:#eef4e9;
  font-size:1.16rem;
  line-height:1.55;
  font-weight:720;
}

.home-refresh p{
  color:var(--home-muted);
}

.home-refresh code{
  color:#fff8de;
  font-weight:850;
}

.home-refresh .btn{
  min-height:46px;
  border-radius:7px;
  padding:0 17px;
  letter-spacing:0;
  white-space:nowrap;
}

.home-refresh .home-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:24px;
}

.home-hero{
  position:relative;
  min-height:680px;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,430px);
  gap:28px;
  align-items:end;
  padding:48px;
  overflow:hidden;
  border:1px solid rgba(232,221,197,.18);
  border-radius:8px;
  background:
    linear-gradient(90deg,rgba(4,7,6,.96) 0%,rgba(4,7,6,.82) 43%,rgba(4,7,6,.3) 72%,rgba(4,7,6,.78) 100%),
    linear-gradient(180deg,rgba(4,7,6,.05),rgba(4,7,6,.88)),
    url("assets/aow-hero-world-v3.png") center / cover no-repeat;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.12),
    inset 0 -120px 150px rgba(0,0,0,.34),
    0 30px 90px rgba(0,0,0,.36);
}

.home-hero::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:12px;
  background:url("assets/terrain-border.webp") left bottom / auto 34px repeat-x;
  image-rendering:pixelated;
  opacity:.52;
}

.home-hero-copy,
.connect-panel{
  position:relative;
  z-index:1;
}

.connect-panel{
  display:grid;
  gap:16px;
  padding:22px;
  border:1px solid rgba(232,221,197,.18);
  border-radius:8px;
  background:
    linear-gradient(180deg,rgba(18,25,21,.9),rgba(7,11,9,.94)),
    rgba(7,11,9,.88);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 24px 70px rgba(0,0,0,.32);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}

.panel-topline{
  display:flex;
  align-items:center;
  gap:10px;
  color:#fff;
}

.connect-address{
  display:grid;
  gap:7px;
  padding:16px;
  border:1px solid rgba(121,211,111,.24);
  border-radius:8px;
  background:linear-gradient(180deg,rgba(121,211,111,.12),rgba(121,211,111,.035));
}

.connect-address span,
.connect-metrics small{
  color:var(--home-muted);
  font-size:.76rem;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.connect-address code{
  font-size:1.55rem;
  line-height:1;
}

.connect-metrics{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}

.connect-metrics span{
  min-height:76px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:5px;
  padding:13px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:8px;
  background:rgba(255,255,255,.04);
}

.connect-metrics strong{
  color:#fff;
  font-size:1rem;
}

.edition-pair{
  display:grid;
  gap:9px;
}

.edition-pair span{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:44px;
  padding:9px 11px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:8px;
  background:rgba(0,0,0,.18);
  color:#f6f9ef;
  font-weight:850;
}

.edition-pair img{
  width:24px;
  height:24px;
  object-fit:contain;
}

.home-ribbon{
  margin-top:14px;
  border-color:rgba(232,221,197,.16);
}

.home-ribbon span{
  background:linear-gradient(180deg,rgba(21,27,28,.94),rgba(8,12,10,.98));
}

.home-section,
.showcase-split,
.operations-deck,
.systems-band,
.first-hour,
.home-docs,
.asset-row{
  margin-top:74px;
}

.compact-head{
  display:grid;
  grid-template-columns:minmax(240px,460px) minmax(0,1fr);
  gap:24px;
  align-items:end;
  margin-bottom:22px;
}

.compact-head .section-kicker{
  grid-column:1 / -1;
  margin-bottom:-14px;
}

.compact-head p:last-child{
  max-width:620px;
  justify-self:end;
  margin:0;
  font-size:1rem;
}

.launch-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.launch-card,
.feature-grid article,
.home-doc-grid a{
  position:relative;
  overflow:hidden;
  border:1px solid var(--home-line);
  border-radius:8px;
  background:
    linear-gradient(180deg,rgba(20,28,25,.96),rgba(9,14,12,.98));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.055),
    0 20px 56px rgba(0,0,0,.2);
}

.launch-card{
  min-height:190px;
  padding:20px;
}

.launch-card::before,
.feature-grid article::before,
.home-doc-grid a::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:8px;
  background:url("assets/terrain-border.webp") left bottom / auto 28px repeat-x;
  image-rendering:pixelated;
  opacity:.25;
}

.launch-card > span{
  display:inline-grid;
  place-items:center;
  width:38px;
  height:38px;
  margin-bottom:18px;
  border:1px solid rgba(241,191,82,.34);
  border-radius:8px;
  color:var(--gold);
  background:rgba(241,191,82,.09);
  font-family:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;
  font-size:.82rem;
  font-weight:950;
}

.launch-card h3,
.feature-grid h3{
  margin-bottom:9px;
}

.launch-card p,
.feature-grid p,
.home-doc-grid span{
  color:var(--home-muted);
  font-size:.93rem;
}

.showcase-split{
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(360px,1.05fr);
  gap:28px;
  align-items:center;
}

.showcase-media{
  position:relative;
  overflow:hidden;
  min-height:520px;
  border:1px solid rgba(232,221,197,.18);
  border-radius:8px;
  background:#090e0b;
  box-shadow:0 24px 70px rgba(0,0,0,.28);
}

.showcase-media img{
  width:100%;
  height:100%;
  min-height:520px;
  object-fit:cover;
}

.showcase-media::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.32));
}

.showcase-copy p:not(.section-kicker){
  max-width:700px;
  margin-top:14px;
  font-size:1.03rem;
}

.system-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:22px;
}

.system-list span{
  min-height:102px;
  padding:15px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:8px;
  background:rgba(255,255,255,.035);
  color:var(--home-muted);
  font-size:.91rem;
}

.system-list strong{
  display:block;
  margin-bottom:5px;
  color:#fff;
}

.operations-deck{
  display:grid;
  grid-template-columns:minmax(0,.78fr) minmax(420px,1.22fr);
  gap:22px;
  align-items:stretch;
}

.deck-copy{
  align-self:center;
}

.deck-copy p:not(.section-kicker){
  max-width:520px;
  margin-top:14px;
  font-size:1.03rem;
}

.command-strip{
  display:grid;
  gap:9px;
  margin-top:22px;
}

.command-strip span{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  min-height:44px;
  padding:9px 12px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:8px;
  background:rgba(255,255,255,.035);
  color:var(--home-muted);
  font-size:.9rem;
}

.map-card{
  position:relative;
  overflow:hidden;
  min-height:500px;
  border:1px solid rgba(232,221,197,.16);
  border-radius:8px;
  background:#07100d;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 26px 80px rgba(0,0,0,.28);
}

.map-card img{
  width:100%;
  height:100%;
  min-height:500px;
  object-fit:cover;
  filter:saturate(.98) contrast(1.04);
}

.map-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(5,8,6,.88),rgba(5,8,6,.18) 58%,rgba(5,8,6,.58)),
    linear-gradient(180deg,rgba(5,8,6,.05),rgba(5,8,6,.82));
}

.map-card-copy{
  position:absolute;
  z-index:1;
  left:24px;
  bottom:24px;
  max-width:420px;
}

.map-card-copy strong{
  display:block;
  color:#fff;
  font-size:1.45rem;
}

.map-card-copy span{
  display:block;
  margin-top:6px;
  color:#e4eadc;
}

.feature-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.feature-grid article{
  min-height:220px;
  padding:20px;
}

.feature-grid img{
  width:54px;
  height:54px;
  object-fit:contain;
  margin-bottom:22px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:8px;
  background:rgba(255,255,255,.035);
  padding:6px;
}

.first-hour{
  display:grid;
  grid-template-columns:minmax(260px,400px) minmax(0,1fr);
  gap:26px;
  align-items:start;
  padding:30px;
  border:1px solid rgba(232,221,197,.16);
  border-radius:8px;
  background:
    linear-gradient(90deg,rgba(11,16,15,.98),rgba(11,16,15,.82)),
    url("assets/systems-market.webp") center / cover no-repeat;
}

.first-hour-copy p:not(.section-kicker){
  margin-top:14px;
}

.timeline{
  display:grid;
  gap:10px;
  margin:0;
  padding:0;
  list-style:none;
  counter-reset:firstHour;
}

.timeline li{
  counter-increment:firstHour;
  display:grid;
  grid-template-columns:48px minmax(130px,190px) minmax(0,1fr);
  gap:14px;
  align-items:center;
  min-height:68px;
  padding:10px 12px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:8px;
  background:rgba(4,8,7,.62);
}

.timeline li::before{
  content:counter(firstHour,decimal-leading-zero);
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border:1px solid rgba(107,185,235,.3);
  border-radius:8px;
  color:#bde7ff;
  background:rgba(107,185,235,.08);
  font-family:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;
  font-size:.8rem;
  font-weight:950;
}

.timeline strong{
  color:#fff;
}

.timeline span{
  color:var(--home-muted);
  font-size:.93rem;
}

.home-doc-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

.home-doc-grid a{
  min-height:138px;
  padding:17px;
}

.home-doc-grid strong{
  display:block;
  margin-bottom:8px;
  color:#fff;
}

.home-doc-grid a:hover,
.home-doc-grid a:focus-visible,
.launch-card:hover,
.feature-grid article:hover{
  border-color:rgba(121,211,111,.34);
  transform:translateY(-2px);
}

.asset-row{
  display:grid;
  grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);
  gap:24px;
  align-items:center;
  padding:28px;
  overflow:hidden;
  border:1px solid rgba(232,221,197,.16);
  border-radius:8px;
  background:
    linear-gradient(90deg,rgba(17,23,20,.98),rgba(17,23,20,.78)),
    url("assets/aow-hero-world-v3.png") center / cover no-repeat;
}

.asset-row p:not(.section-kicker){
  max-width:520px;
  margin-top:13px;
}

.asset-stack{
  display:grid;
  grid-template-columns:1.1fr .9fr .55fr;
  gap:12px;
  align-items:center;
}

.asset-stack img{
  width:100%;
  height:154px;
  object-fit:contain;
  border:1px solid rgba(255,255,255,.12);
  border-radius:8px;
  background:rgba(4,8,7,.7);
  padding:14px;
  box-shadow:0 16px 44px rgba(0,0,0,.24);
}

.asset-stack img:last-child{
  padding:6px;
}

.home-refresh .footer{
  margin-top:0;
}

@media (max-width:1100px){
  .home-hero,
  .showcase-split,
  .operations-deck,
  .first-hour,
  .asset-row{
    grid-template-columns:1fr;
  }

  .home-hero{
    min-height:620px;
  }

  .connect-panel{
    max-width:620px;
  }

  .compact-head,
  .compact-head p:last-child{
    display:block;
    justify-self:auto;
  }

  .compact-head .section-kicker{
    margin-bottom:10px;
  }

  .home-doc-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:780px){
  body.home-refresh{
    background:
      linear-gradient(180deg,rgba(6,10,8,.72) 0,rgba(6,10,8,.98) 30rem,#050806 100%),
      url("assets/aow-hero-world-v3.png") 55% top / 1180px auto no-repeat,
      #050806;
  }

  .home-refresh .nav-inner,
  .home-refresh .page-shell.home-shell{
    width:min(var(--max),calc(100% - 22px));
  }

  .home-refresh h1{
    font-size:3.6rem;
  }

  .home-refresh h2{
    max-width:14ch;
    font-size:2.35rem;
  }

  .home-refresh .lead{
    font-size:1rem;
  }

  .home-refresh .home-actions{
    margin-top:18px;
    gap:8px;
  }

  .home-section,
  .showcase-split,
  .operations-deck,
  .systems-band,
  .first-hour,
  .home-docs,
  .asset-row{
    margin-top:54px;
  }

  .home-hero{
    min-height:auto;
    gap:14px;
    padding:24px 16px 16px;
    background:
      linear-gradient(180deg,rgba(4,7,6,.85),rgba(4,7,6,.58) 38%,rgba(4,7,6,.96)),
      url("assets/aow-hero-world-v3.png") 58% center / cover no-repeat;
  }

  .connect-panel{
    gap:11px;
    padding:14px;
  }

  .connect-address code{
    font-size:1.24rem;
  }

  .home-ribbon,
  .launch-grid,
  .feature-grid,
  .system-list{
    grid-template-columns:1fr;
  }

  .showcase-media,
  .showcase-media img,
  .map-card,
  .map-card img{
    min-height:360px;
  }

  .first-hour,
  .asset-row{
    padding:20px;
  }

  .timeline li{
    grid-template-columns:42px 1fr;
  }

  .timeline span{
    grid-column:2;
  }

  .asset-stack{
    grid-template-columns:1fr;
  }

  .asset-stack img{
    height:118px;
  }
}

@media (max-width:520px){
  .home-refresh h1{
    font-size:2.85rem;
  }

  .home-refresh h2{
    font-size:2rem;
  }

  .home-refresh .home-actions .btn,
  .home-refresh .home-actions .copy-small{
    width:100%;
  }

  .home-hero .home-actions .btn,
  .home-hero .home-actions .copy-small{
    flex:1 1 calc(50% - 8px);
    width:auto;
  }

  .home-hero .home-actions .btn.primary{
    flex-basis:100%;
  }

  .connect-metrics,
  .home-doc-grid{
    grid-template-columns:1fr;
  }

  .home-hero .connect-metrics,
  .home-hero .edition-pair{
    display:none;
  }

  .home-hero .connect-address{
    padding:11px 12px;
  }

  .home-hero .connect-address code{
    font-size:1.08rem;
  }

  .edition-pair span,
  .command-strip span{
    align-items:flex-start;
    flex-direction:column;
  }

  .map-card-copy{
    left:16px;
    right:16px;
    bottom:16px;
  }
}

/* AOWMC brand system pass: shared chrome, frames, and setup modules */
.portal-nav{
  border-bottom:1px solid rgba(207,228,198,.12);
  background:
    linear-gradient(180deg,rgba(3,7,5,.96),rgba(5,10,8,.9)),
    linear-gradient(90deg,rgba(121,211,111,.07),transparent 45%,rgba(107,185,235,.055));
  box-shadow:0 16px 34px rgba(0,0,0,.34);
  overflow:hidden;
}

.portal-nav::before{
  height:7px;
  opacity:.9;
  background:
    linear-gradient(90deg,rgba(121,211,111,.8),rgba(241,191,82,.9),rgba(107,185,235,.65)),
    url("assets/terrain-border.webp") left bottom / auto 30px repeat-x;
}

.portal-nav::after{
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(121,211,111,.48),rgba(241,191,82,.42),transparent);
}

.nav-inner{
  width:min(1240px,calc(100% - 32px));
  min-height:76px;
  padding:12px 0 10px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:16px;
}

.portal-nav.is-scrolled .nav-inner{
  min-height:70px;
}

.brand{
  gap:11px;
  min-width:0;
  padding:5px 10px 5px 5px;
  border:1px solid rgba(207,228,198,.14);
  border-radius:8px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.04),rgba(0,0,0,.16)),
    rgba(10,17,14,.78);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 12px 26px rgba(0,0,0,.22);
}

.brand::after{
  display:none;
}

.brand img{
  width:48px;
  height:48px;
  border-radius:6px;
  border-color:rgba(121,211,111,.28);
  background:radial-gradient(circle at 50% 44%,rgba(121,211,111,.16),rgba(0,0,0,.22));
}

.brand strong{
  font-size:1.18rem;
  letter-spacing:.04em;
  text-shadow:0 2px 0 #000;
}

.brand span span{
  color:#86f08b;
  letter-spacing:.13em;
}

.nav-links{
  justify-self:center;
  width:auto;
  max-width:100%;
  margin-left:0;
  padding:0;
  gap:4px;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  -webkit-mask-image:none;
  mask-image:none;
}

.nav-links::before,
.nav-links::after{
  display:none;
}

.nav-links a{
  min-height:40px;
  padding:0 12px;
  border-radius:6px;
  border:1px solid rgba(207,228,198,.12);
  background:
    linear-gradient(180deg,rgba(255,255,255,.045),rgba(0,0,0,.16)),
    rgba(21,29,25,.78);
  color:#c9d5c4;
  font-size:.78rem;
  font-weight:950;
  letter-spacing:.03em;
  text-transform:uppercase;
  clip-path:polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}

.nav-links a::after{
  left:10px;
  right:10px;
  bottom:5px;
  height:2px;
}

.nav-links a:hover,
.nav-links a:focus-visible,
.nav-links a[aria-current="page"]{
  border-color:rgba(121,211,111,.44);
  background:
    linear-gradient(180deg,rgba(121,211,111,.18),rgba(121,211,111,.06)),
    rgba(18,30,23,.86);
  transform:translateY(-1px);
}

.nav-links a[aria-current="page"]{
  color:#fff;
  box-shadow:inset 0 0 0 1px rgba(121,211,111,.2),0 0 22px rgba(121,211,111,.09);
}

.nav-gauges{
  justify-self:end;
  margin-left:0;
  gap:7px;
}

.nav-status{
  min-height:40px;
  margin-left:5px;
  padding:0 12px;
  border-radius:6px;
  border-color:rgba(241,191,82,.24);
  background:rgba(16,19,14,.78);
  clip-path:polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px);
}

.edition-gauge{
  width:18px;
  height:18px;
  border-radius:5px;
  background:rgba(0,0,0,.26);
}

.page-shell{
  width:min(1240px,calc(100% - 36px));
}

.page-shell::before{
  display:none;
}

.hero-grid:not(.hero-world):not(.hero-event){
  min-height:510px;
  align-items:end;
  padding:36px;
  border:1px solid rgba(207,228,198,.14);
  border-radius:8px;
  overflow:hidden;
  background:
    linear-gradient(90deg,rgba(4,8,6,.96),rgba(4,8,6,.72) 48%,rgba(4,8,6,.34)),
    linear-gradient(180deg,rgba(4,8,6,.18),rgba(4,8,6,.92)),
    url("assets/aow-hero-world-v3.png") center / cover no-repeat;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 26px 76px rgba(0,0,0,.3);
}

.hero-grid:not(.hero-world):not(.hero-event)::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:12px;
  background:url("assets/terrain-border.webp") left bottom / auto 34px repeat-x;
  image-rendering:pixelated;
  opacity:.48;
  pointer-events:none;
}

.hero-grid::after{
  display:none;
}

.hero-grid:not(.hero-world):not(.hero-event) .hero-copy,
.hero-grid:not(.hero-world):not(.hero-event) .panel{
  position:relative;
  z-index:1;
}

.hero-grid:not(.hero-world):not(.hero-event) .lead{
  max-width:700px;
  color:#edf5e9;
  text-shadow:0 2px 8px rgba(0,0,0,.48);
}

.section-head{
  display:grid;
  gap:10px;
}

.section-head::before{
  width:76px;
  height:5px;
  margin-bottom:6px;
  background:
    linear-gradient(90deg,var(--green),var(--gold)),
    url("assets/terrain-border.webp") left center / auto 22px repeat-x;
}

.panel,
.mini-card,
.route-card,
.command-row,
.status-card,
.doc-card,
.map-frame,
.platform-card,
.connect-card,
.route-node,
.asset-band,
.stack-card,
.brand-showcase-card,
.console-card,
.doc-hub-card,
.launch-card,
.feature-grid article,
.home-doc-grid a{
  border-color:rgba(207,228,198,.13);
  border-radius:8px;
  background:
    linear-gradient(180deg,rgba(31,42,35,.86),rgba(8,13,11,.98)),
    radial-gradient(420px 140px at 18% 0%,rgba(121,211,111,.08),transparent 70%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.055),
    inset 0 0 0 1px rgba(0,0,0,.28),
    0 20px 54px rgba(0,0,0,.23);
}

.panel::before,
.mini-card::before,
.route-card::before,
.command-row::before,
.status-card::before,
.doc-card::before,
.map-frame::before,
.connect-card::before,
.route-node::before,
.platform-card::before,
.stack-card::before,
.brand-showcase-card::before,
.doc-hub-card::before{
  height:9px;
  opacity:.34;
  background:url("assets/terrain-border.webp") left bottom / auto 28px repeat-x;
}

.panel::after,
.mini-card::after,
.route-card::after,
.status-card::after,
.doc-card::after,
.connect-card::after,
.platform-card::after,
.stack-card::after,
.brand-showcase-card::after,
.doc-hub-card::after{
  content:"";
  position:absolute;
  right:10px;
  bottom:10px;
  width:18px;
  height:18px;
  border-right:2px solid rgba(241,191,82,.22);
  border-bottom:2px solid rgba(241,191,82,.22);
  pointer-events:none;
}

.tabs{
  gap:10px;
  padding-bottom:8px;
}

.tab-btn,
.filter-chip{
  border-radius:6px;
  border-color:rgba(207,228,198,.14);
  background:rgba(20,29,24,.74);
  color:#cbd8c8;
  clip-path:polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px);
}

.tab-btn.active,
.filter-chip.active{
  border-color:rgba(121,211,111,.55);
  background:
    linear-gradient(180deg,rgba(121,211,111,.2),rgba(121,211,111,.08)),
    rgba(17,29,21,.9);
}

.steps{
  gap:13px;
}

.step{
  grid-template-columns:46px minmax(0,1fr);
  gap:14px;
  padding:15px 16px;
  border-color:rgba(207,228,198,.12);
  background:rgba(3,8,6,.68);
  border-radius:8px;
  align-items:start;
}

.step > span{
  display:grid;
  gap:4px;
  min-width:0;
}

.step strong{
  display:block;
  margin:0;
  color:#fff;
  line-height:1.2;
}

.step span,
.step > span > span{
  color:#c8d3c2;
  font-size:.93rem;
  line-height:1.42;
}

.step::before{
  width:40px;
  height:40px;
  border-radius:7px;
  border-color:rgba(241,191,82,.35);
  background:
    linear-gradient(180deg,rgba(241,191,82,.18),rgba(241,191,82,.06)),
    rgba(0,0,0,.18);
}

.address-box,
.copy-row{
  border-color:rgba(121,211,111,.28);
  border-radius:8px;
  background:rgba(3,8,6,.78);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}

.copy-row{
  padding:10px;
}

.copy-row code,
.address-box code{
  font-size:1.06rem;
  scrollbar-width:thin;
}

.connect-card{
  min-height:250px;
  padding:22px;
}

.connect-card header{
  align-items:flex-start;
}

.connect-card header img{
  width:54px;
  height:54px;
  border-radius:7px;
  border-color:rgba(121,211,111,.24);
}

.connect-card h3{
  font-size:1.45rem;
}

.asset-band{
  background:
    linear-gradient(90deg,rgba(9,15,12,.98),rgba(9,15,12,.78)),
    url("assets/aow-hero-world-v3.png") center / cover no-repeat;
}

.footer{
  margin-top:78px;
  border-top:1px solid rgba(207,228,198,.12);
  background:
    linear-gradient(180deg,rgba(5,9,7,.86),rgba(2,4,3,.98)),
    url("assets/aow-hero-world-v3.png") center bottom / min(1800px,140vw) auto no-repeat,
    #030504;
}

.footer::before{
  height:10px;
  background:
    linear-gradient(90deg,rgba(121,211,111,.65),rgba(241,191,82,.76),rgba(107,185,235,.55)),
    url("assets/terrain-border.webp") left bottom / auto 30px repeat-x;
}

.footer-inner{
  width:min(1240px,calc(100% - 36px));
  padding:42px 0 38px;
  grid-template-columns:minmax(280px,1fr) minmax(260px,.85fr);
  gap:18px 28px;
}

.footer-brand{
  align-items:flex-start;
}

.footer-brand img{
  width:52px;
  height:52px;
  border-radius:7px;
  border-color:rgba(121,211,111,.26);
  background:rgba(0,0,0,.2);
  padding:4px;
}

.footer-brand strong{
  display:inline-block;
  margin-bottom:4px;
  font-family:Impact,"Arial Black",system-ui,sans-serif;
  font-size:1.35rem;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.footer-meta{
  margin:0;
  padding:16px;
  border-color:rgba(207,228,198,.12);
  background:rgba(3,8,6,.68);
  border-radius:8px;
}

.footer-links{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(112px,1fr));
  gap:8px;
}

.footer-links a{
  min-height:38px;
  justify-content:center;
  border-radius:6px;
  background:rgba(13,20,17,.76);
  clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);
}

.footer-links a::after{
  display:none;
}

@media (max-width:1100px){
  .nav-inner{
    grid-template-columns:auto 1fr;
  }

  .nav-gauges{
    display:none;
  }

  .nav-links{
    justify-self:end;
  }
}

@media (max-width:720px){
  .nav-inner{
    width:min(1240px,calc(100% - 20px));
    grid-template-columns:1fr;
    gap:10px;
  }

  .brand{
    width:fit-content;
  }

  .nav-links{
    justify-self:stretch;
    width:100%;
    order:2;
    padding-bottom:2px;
  }

  .nav-links a{
    min-height:38px;
    padding:0 11px;
  }

  .hero-grid:not(.hero-world):not(.hero-event){
    min-height:auto;
    padding:26px 18px 18px;
    background:
      linear-gradient(180deg,rgba(4,8,6,.9),rgba(4,8,6,.66),rgba(4,8,6,.98)),
      url("assets/aow-hero-world-v3.png") 55% center / cover no-repeat;
  }

  .step{
    grid-template-columns:42px minmax(0,1fr);
  }

  .footer-inner{
    width:min(1240px,calc(100% - 20px));
    grid-template-columns:1fr;
  }
}

/* Home render polish: authored media cards, quest cards, and docs shelf */
.nav-gauges{
  gap:10px;
}

.edition-gauge{
  width:25px;
  height:25px;
  border-radius:7px;
  border-color:rgba(207,228,198,.18);
  background:
    linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.025)),
    rgba(5,10,8,.82);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.1),
    0 10px 22px rgba(0,0,0,.18);
  font-family:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;
  font-size:.68rem;
  font-weight:950;
  letter-spacing:0;
}

.edition-gauge::before{
  content:"";
}

.edition-gauge.java::before{
  content:"J";
}

.edition-gauge.bedrock::before{
  content:"B";
}

.edition-gauge::after{
  position:absolute;
  right:3px;
  bottom:3px;
  width:5px;
  height:5px;
  box-shadow:0 0 10px currentColor;
}

.nav-status{
  min-height:36px;
  padding:0 15px 0 12px;
  border-color:rgba(241,191,82,.24);
  background:
    linear-gradient(180deg,rgba(241,191,82,.1),rgba(255,255,255,.025)),
    rgba(7,12,10,.88);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 10px 22px rgba(0,0,0,.18);
}

.nav-status .status-dot{
  width:12px;
  height:12px;
  background:var(--gold);
  box-shadow:0 0 0 4px rgba(241,191,82,.12),0 0 16px rgba(241,191,82,.5);
}

.quest-grid{
  grid-template-columns:1fr 1.03fr 1fr;
  gap:18px;
  align-items:stretch;
}

.quest-card{
  isolation:isolate;
  min-height:208px;
  padding:24px;
  clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,18px 100%,0 calc(100% - 18px));
  background:
    linear-gradient(135deg,rgba(10,16,13,.96),rgba(28,38,32,.78) 56%,rgba(5,8,7,.98)),
    radial-gradient(280px 170px at 12% 12%,rgba(121,211,111,.16),transparent 72%);
}

.quest-card::before{
  left:24px;
  right:24px;
  top:58px;
  height:2px;
  background:linear-gradient(90deg,var(--green),var(--gold),rgba(107,185,235,.45),transparent);
  opacity:.7;
}

.quest-card::after{
  content:"";
  position:absolute;
  inset:12px;
  z-index:-1;
  border:1px solid rgba(255,255,255,.055);
  clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px));
  pointer-events:none;
}

.quest-card > span{
  position:relative;
  z-index:1;
  width:46px;
  height:46px;
  margin-bottom:28px;
  border-radius:7px;
  border-color:rgba(241,191,82,.46);
  background:
    linear-gradient(180deg,rgba(241,191,82,.18),rgba(241,191,82,.07)),
    rgba(0,0,0,.18);
}

.quest-card h3,
.quest-card p{
  position:relative;
  z-index:1;
}

.quest-card h3{
  margin-bottom:10px;
  font-size:1.35rem;
}

.quest-card p{
  max-width:31rem;
}

.quest-connect{
  background:
    linear-gradient(135deg,rgba(8,14,11,.98),rgba(27,40,32,.82) 58%,rgba(4,8,7,.98)),
    url("assets/aow-server-card.svg") right -44px bottom -28px / 230px auto no-repeat;
}

.quest-secure{
  background:
    linear-gradient(135deg,rgba(9,14,12,.98),rgba(33,27,18,.84) 58%,rgba(5,8,7,.98)),
    radial-gradient(230px 180px at 84% 18%,rgba(241,191,82,.18),transparent 72%);
}

.quest-route{
  background:
    linear-gradient(135deg,rgba(8,14,13,.98),rgba(18,36,39,.78) 58%,rgba(4,8,7,.98)),
    url("assets/aow-crossplay-command-card.svg") right -36px bottom -24px / 235px auto no-repeat;
}

.feature-showcase{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.feature-showcase .feature-card{
  display:flex;
  flex-direction:column;
  min-height:360px;
  padding:0;
  overflow:hidden;
  background:
    linear-gradient(180deg,rgba(13,20,17,.98),rgba(6,10,8,.99)),
    radial-gradient(380px 180px at 20% 0%,rgba(121,211,111,.11),transparent 72%);
}

.feature-showcase .feature-card::before{
  display:none;
}

.feature-showcase .feature-card::after{
  content:"";
  position:absolute;
  left:22px;
  right:22px;
  bottom:18px;
  height:2px;
  background:linear-gradient(90deg,var(--green),var(--gold),transparent);
  opacity:.58;
  pointer-events:none;
}

.feature-showcase .feature-card > img{
  width:100%;
  height:192px;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  object-fit:cover;
  background:#07100d;
}

.feature-showcase .feature-editions > img{
  object-fit:contain;
  padding:30px;
  background:
    linear-gradient(135deg,rgba(9,15,12,.96),rgba(22,34,28,.9)),
    radial-gradient(240px 150px at 48% 42%,rgba(107,185,235,.16),transparent 70%);
}

.feature-showcase .feature-events > img{
  object-position:center 45%;
}

.feature-showcase .feature-commands > img{
  object-position:center;
}

.feature-showcase .feature-card h3{
  margin:0;
  padding:24px 24px 0;
  font-size:1.25rem;
}

.feature-showcase .feature-card p{
  margin:0;
  padding:10px 24px 28px;
  font-size:.98rem;
}

.home-docs{
  position:relative;
  overflow:hidden;
  padding:34px;
  border:1px solid rgba(232,221,197,.17);
  border-radius:8px;
  background:
    linear-gradient(180deg,rgba(3,6,5,.54),rgba(3,6,5,.7) 36%,rgba(3,6,5,.44)),
    url("assets/aow-library-shelf-v1.png") center / cover no-repeat,
    #050806;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 28px 80px rgba(0,0,0,.3);
}

.home-docs::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(0,0,0,.38),transparent 18%,transparent 82%,rgba(0,0,0,.38)),
    radial-gradient(620px 260px at 50% 42%,rgba(42,208,132,.12),transparent 70%);
  pointer-events:none;
}

.home-docs .compact-head,
.book-grid{
  position:relative;
  z-index:1;
}

.home-docs .compact-head{
  margin-bottom:18px;
  text-shadow:0 4px 18px rgba(0,0,0,.72);
}

.home-docs .compact-head h2{
  max-width:12ch;
}

.home-docs .compact-head p:last-child{
  color:#edf4e8;
}

.book-grid{
  grid-template-columns:repeat(8,minmax(86px,1fr));
  gap:12px;
  align-items:end;
  min-height:320px;
  padding:38px 20px 18px;
}

.book-grid::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:18px;
  border-radius:3px;
  background:
    linear-gradient(180deg,rgba(122,72,35,.72),rgba(38,21,12,.92)),
    linear-gradient(90deg,rgba(255,255,255,.12),transparent 22%,transparent 78%,rgba(255,255,255,.08));
  box-shadow:0 -9px 22px rgba(0,0,0,.34),0 8px 22px rgba(0,0,0,.48);
  pointer-events:none;
}

.home-doc-grid .book-card{
  --book-a:#253b31;
  --book-b:#0b1411;
  --book-accent:var(--green);
  --book-angle:-1deg;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  min-height:238px;
  padding:18px 12px 20px 18px;
  border-color:rgba(232,221,197,.22);
  border-radius:5px 10px 8px 5px;
  background:
    linear-gradient(90deg,rgba(0,0,0,.34) 0 12px,transparent 12px),
    linear-gradient(135deg,var(--book-a),var(--book-b) 70%),
    radial-gradient(180px 120px at 50% 0%,color-mix(in srgb,var(--book-accent) 22%,transparent),transparent 70%);
  box-shadow:
    inset -9px 0 12px rgba(255,255,255,.035),
    inset 5px 0 10px rgba(0,0,0,.32),
    0 16px 26px rgba(0,0,0,.44);
  transform:rotate(var(--book-angle));
  transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}

.home-doc-grid .book-card::before{
  left:10px;
  top:14px;
  bottom:14px;
  width:4px;
  height:auto;
  right:auto;
  background:linear-gradient(180deg,transparent,var(--book-accent),transparent);
  opacity:.65;
}

.home-doc-grid .book-card::after{
  content:"";
  position:absolute;
  inset:10px 9px 10px 22px;
  border:1px solid color-mix(in srgb,var(--book-accent) 34%,transparent);
  border-radius:3px 8px 6px 3px;
  pointer-events:none;
}

.home-doc-grid .book-card:nth-child(2){
  --book-a:#172f38;
  --book-b:#071217;
  --book-accent:var(--cyan);
  --book-angle:1.2deg;
  min-height:250px;
}

.home-doc-grid .book-card:nth-child(3){
  --book-a:#3a2b1f;
  --book-b:#130b07;
  --book-accent:var(--gold);
  --book-angle:-.6deg;
  min-height:232px;
}

.home-doc-grid .book-card:nth-child(4){
  --book-a:#263026;
  --book-b:#090d0a;
  --book-accent:#e7dfcb;
  --book-angle:.9deg;
  min-height:262px;
}

.home-doc-grid .book-card:nth-child(5){
  --book-a:#12362c;
  --book-b:#06110e;
  --book-accent:#20d384;
  --book-angle:-1.1deg;
  min-height:244px;
}

.home-doc-grid .book-card:nth-child(6){
  --book-a:#34233b;
  --book-b:#100912;
  --book-accent:#d58cff;
  --book-angle:.7deg;
  min-height:254px;
}

.home-doc-grid .book-card:nth-child(7){
  --book-a:#2f3a22;
  --book-b:#0c1108;
  --book-accent:#a8dc6d;
  --book-angle:-.8deg;
  min-height:236px;
}

.home-doc-grid .book-card:nth-child(8){
  --book-a:#3b3028;
  --book-b:#100d09;
  --book-accent:#f1bf52;
  --book-angle:1deg;
  min-height:268px;
}

.home-doc-grid .book-card:hover,
.home-doc-grid .book-card:focus-visible{
  border-color:color-mix(in srgb,var(--book-accent) 62%,white 8%);
  box-shadow:
    inset -9px 0 12px rgba(255,255,255,.05),
    inset 5px 0 10px rgba(0,0,0,.32),
    0 20px 34px rgba(0,0,0,.5),
    0 0 0 1px color-mix(in srgb,var(--book-accent) 34%,transparent);
  transform:translateY(-10px) rotate(0deg);
}

.home-doc-grid .book-number{
  position:absolute;
  top:16px;
  right:14px;
  color:var(--book-accent);
  font-family:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;
  font-size:.72rem;
  font-weight:950;
  letter-spacing:.04em;
}

.home-doc-grid .book-card strong{
  position:relative;
  z-index:1;
  margin-bottom:8px;
  font-size:1.02rem;
  line-height:1.12;
  text-shadow:0 2px 8px rgba(0,0,0,.72);
}

.home-doc-grid .book-card > span:not(.book-number){
  position:relative;
  z-index:1;
  color:#d9e2d3;
  font-size:.82rem;
  line-height:1.35;
  text-shadow:0 2px 8px rgba(0,0,0,.72);
}

@media (max-width:1100px){
  .book-grid{
    grid-template-columns:repeat(4,minmax(110px,1fr));
    min-height:auto;
    padding-top:26px;
    row-gap:28px;
  }
}

@media (max-width:900px){
  .home-refresh .compact-head{
    display:block;
    margin-bottom:18px;
  }

  .home-refresh .compact-head .section-kicker{
    margin-bottom:10px;
  }

  .home-refresh .compact-head p:last-child{
    display:block;
    max-width:36rem;
    margin:10px 0 0;
    justify-self:auto;
  }

  .quest-grid,
  .feature-showcase{
    grid-template-columns:1fr;
  }

  .feature-showcase .feature-card{
    min-height:auto;
  }

  .feature-showcase .feature-card img{
    height:220px;
  }

  .home-docs{
    padding:24px;
    background-position:center;
  }
}

@media (max-width:620px){
  .nav-gauges{
    justify-self:stretch;
    width:100%;
    justify-content:flex-start;
    margin-left:0;
  }

  .edition-gauge{
    width:29px;
    height:29px;
  }

  .nav-status{
    min-height:38px;
    margin-left:auto;
  }

  .quest-card{
    min-height:190px;
    padding:20px;
  }

  .quest-card::before{
    top:52px;
    left:20px;
    right:20px;
  }

  .book-grid{
    grid-template-columns:1fr;
    gap:12px;
    padding:18px 0 20px;
  }

  .book-grid::after{
    display:none;
  }

  .home-doc-grid .book-card,
  .home-doc-grid .book-card:nth-child(n){
    min-height:122px;
    transform:none;
  }

  .home-doc-grid .book-card:hover,
  .home-doc-grid .book-card:focus-visible{
    transform:translateY(-3px);
  }
}

/* Page polish pass: live map, content hubs, stronger navigation status */
.portal-nav .nav-gauges{
  gap:6px;
  padding:5px;
  border:1px solid rgba(207,228,198,.12);
  border-radius:999px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.015)),
    rgba(3,7,6,.66);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}

.portal-nav .edition-gauge{
  width:auto;
  min-width:54px;
  height:30px;
  padding:0 11px 0 9px;
  gap:7px;
  border-radius:999px;
  font-family:inherit;
  font-size:.72rem;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.portal-nav .edition-gauge.java::before{
  content:"Java";
}

.portal-nav .edition-gauge.bedrock::before{
  content:"Bedrock";
}

.portal-nav .edition-gauge::after{
  position:static;
  order:-1;
  width:7px;
  height:7px;
}

.portal-nav .nav-status{
  min-height:30px;
  margin-left:2px;
  padding:0 13px;
}

.portal-nav .nav-status .status-dot{
  width:10px;
  height:10px;
}

.home-refresh .quest-grid{
  gap:16px;
}

.home-refresh .quest-card{
  min-height:184px;
  padding:22px 22px 20px;
  background:
    linear-gradient(135deg,rgba(12,19,16,.98),rgba(19,29,24,.92) 54%,rgba(6,10,8,.98)),
    radial-gradient(260px 140px at 88% 22%,rgba(121,211,111,.1),transparent 74%);
}

.home-refresh .quest-secure{
  background:
    linear-gradient(135deg,rgba(15,14,11,.98),rgba(34,28,17,.9) 54%,rgba(7,9,7,.98)),
    radial-gradient(260px 140px at 88% 22%,rgba(241,191,82,.12),transparent 74%);
}

.home-refresh .quest-route{
  background:
    linear-gradient(135deg,rgba(9,18,18,.98),rgba(13,32,35,.9) 54%,rgba(5,9,8,.98)),
    radial-gradient(260px 140px at 88% 22%,rgba(107,185,235,.12),transparent 74%);
}

.home-refresh .quest-card::before{
  top:62px;
  opacity:.85;
}

.home-refresh .quest-card > span{
  margin-bottom:32px;
}

.home-refresh .quest-card h3{
  font-size:1.28rem;
}

.home-refresh .quest-card p{
  max-width:100%;
  color:#d4ded0;
}

.edition-tile-pair{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  min-height:162px;
  padding:24px;
  background:
    linear-gradient(135deg,rgba(9,15,12,.96),rgba(22,34,28,.9)),
    radial-gradient(280px 150px at 50% 38%,rgba(107,185,235,.12),transparent 72%);
  border-bottom:1px solid rgba(207,228,198,.12);
}

.edition-tile-pair span{
  display:grid;
  grid-template-columns:58px 1fr;
  gap:8px 12px;
  align-items:center;
  min-height:96px;
  padding:16px;
  border:1px solid rgba(207,228,198,.2);
  border-radius:8px;
  background:
    linear-gradient(180deg,rgba(13,25,20,.88),rgba(6,11,9,.94));
  color:#fff;
  font-weight:950;
}

.edition-tile-pair img{
  width:58px;
  height:58px;
  align-self:center;
  border:1px solid rgba(255,255,255,.14);
  border-radius:8px;
  background:rgba(0,0,0,.18);
  padding:7px;
}

.edition-tile-pair code{
  color:var(--gold);
  font-size:.9rem;
}

.live-map-card{
  min-height:560px;
  background:#030605;
}

.live-map-card::after{
  display:none;
}

.live-map-card .home-map-frame{
  position:absolute;
  inset:0;
  min-height:0;
  height:100%;
  border:0;
  border-radius:0;
}

.live-map-card .home-map-frame iframe{
  height:100%;
  min-height:560px;
  filter:saturate(.95) contrast(1.05) brightness(.78);
}

.home-map-frame .map-toolbar,
.home-map-frame .map-controls-note{
  display:none;
}

.live-map-card .map-interact{
  right:16px;
  bottom:16px;
}

.live-map-card .map-card-copy{
  left:20px;
  bottom:18px;
  max-width:430px;
  padding:18px;
  border:1px solid rgba(207,228,198,.14);
  border-radius:8px;
  background:
    linear-gradient(180deg,rgba(4,8,7,.78),rgba(4,8,7,.95));
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}

.content-refresh .hero-grid{
  margin-bottom:10px;
}

.content-refresh .section-head p{
  max-width:840px;
  color:#cbd8c8;
}

.map-live-hero{
  display:grid;
  gap:18px;
  padding:22px;
  border:1px solid rgba(207,228,198,.14);
  border-radius:8px;
  background:
    linear-gradient(180deg,rgba(9,15,12,.84),rgba(4,7,6,.96)),
    url("assets/aow-hero-world-v3.png") center / cover no-repeat;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.07),
    0 28px 75px rgba(0,0,0,.28);
}

.map-live-copy{
  display:grid;
  grid-template-columns:minmax(260px,.82fr) minmax(280px,1fr);
  gap:18px 28px;
  align-items:end;
  padding:10px 4px 0;
}

.map-live-copy .lead{
  max-width:720px;
  margin-top:0;
}

.map-live-copy .actions{
  grid-column:1 / -1;
  margin-top:0;
}

.map-page-frame,
.map-page-frame iframe{
  height:clamp(620px,78vh,820px);
  min-height:620px;
}

.map-page .route-board{
  grid-template-columns:repeat(5,minmax(0,1fr));
}

.join-page .hero-grid{
  align-items:stretch;
}

.join-page .join-matrix{
  gap:18px;
}

.join-page .connect-card{
  min-height:320px;
  padding:24px;
  background:
    linear-gradient(180deg,rgba(22,33,27,.92),rgba(6,11,9,.98)),
    radial-gradient(300px 160px at 18% 0%,rgba(121,211,111,.12),transparent 72%);
}

.join-page .connect-card header img{
  width:62px;
  height:62px;
}

.join-page .connect-card .copy-row{
  min-height:58px;
}

.join-page .panel:has([data-tab-group]){
  padding:28px;
  background:
    linear-gradient(180deg,rgba(17,27,22,.94),rgba(6,10,8,.98)),
    url("assets/terrain-border.webp") top left / auto 34px repeat-x;
}

.champions-page .champion-hero{
  min-height:650px;
}

.champions-page .champion-hero h1{
  max-width:820px;
}

.tier-grid{
  grid-template-columns:repeat(8,minmax(92px,1fr));
  gap:10px;
  align-items:stretch;
}

.tier-grid .tier-card{
  min-height:300px;
  padding:18px 14px 18px;
  border-color:rgba(241,191,82,.16);
  background:
    linear-gradient(180deg,rgba(20,26,23,.94),rgba(7,10,9,.98)),
    radial-gradient(160px 160px at 50% 0%,rgba(241,191,82,.1),transparent 70%);
}

.tier-grid .tier-card::after{
  content:attr(data-tier);
  position:absolute;
  top:18px;
  right:14px;
  color:var(--gold);
  font-family:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;
  font-size:.72rem;
  font-weight:950;
}

.tier-grid .tier-card strong{
  margin-top:58px;
  min-height:48px;
  font-family:Impact,"Arial Black",system-ui,sans-serif;
  font-size:1.55rem;
  line-height:.9;
  letter-spacing:.02em;
  text-transform:uppercase;
}

.tier-grid .tier-card span{
  margin-top:12px;
  color:#d2dccd;
  font-size:.88rem;
  line-height:1.42;
}

.tier-grid .tier-card:nth-child(n+5){
  border-color:rgba(228,104,93,.22);
  background:
    linear-gradient(180deg,rgba(30,20,20,.94),rgba(7,10,9,.98)),
    radial-gradient(170px 170px at 50% 0%,rgba(228,104,93,.18),transparent 70%);
}

.guides-page .guide-path-grid .route-card{
  min-height:230px;
}

.guides-library{
  margin-top:70px;
}

.guides-library .compact-head{
  display:grid;
  grid-template-columns:minmax(240px,460px) minmax(0,1fr);
  gap:24px;
  align-items:end;
}

.guides-library .compact-head p{
  justify-self:end;
  margin:0;
}

.guides-library .book-grid{
  grid-template-columns:repeat(6,minmax(110px,1fr));
}

.guides-library .book-grid::after{
  bottom:2px;
}

@media (max-width:1200px){
  .tier-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }

  .map-page .route-board{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:900px){
  .map-live-copy,
  .guides-library .compact-head{
    display:block;
  }

  .map-live-copy .lead,
  .guides-library .compact-head p{
    margin-top:12px;
  }

  .live-map-card,
  .live-map-card .home-map-frame iframe{
    min-height:460px;
  }

  .map-page-frame,
  .map-page-frame iframe{
    height:560px;
    min-height:560px;
  }

  .guides-library .book-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:720px){
  .portal-nav .nav-gauges{
    display:none;
  }

  .map-live-hero{
    padding:16px;
  }

  .map-page-frame,
  .map-page-frame iframe{
    height:520px;
    min-height:520px;
  }

  .map-page .route-board,
  .tier-grid{
    grid-template-columns:1fr;
  }

  .tier-grid .tier-card{
    min-height:170px;
  }

  .tier-grid .tier-card strong{
    margin-top:36px;
    min-height:auto;
  }

  .edition-tile-pair{
    grid-template-columns:1fr;
    gap:10px;
    min-height:auto;
    padding:14px;
  }

  .edition-tile-pair span{
    grid-template-columns:50px 1fr auto;
    min-height:68px;
    padding:10px 12px;
  }

  .edition-tile-pair img{
    width:50px;
    height:50px;
  }

  .guides-library .book-grid{
    grid-template-columns:1fr;
  }
}

/* Site-wide asset polish pass: generated edition art, command hall heroes, sharper panels */
.hero-grid:not(.hero-world):not(.hero-event):not(.map-live-hero){
  background:
    linear-gradient(90deg,rgba(3,7,6,.98) 0%,rgba(3,7,6,.82) 38%,rgba(3,7,6,.38) 76%,rgba(3,7,6,.74) 100%),
    linear-gradient(180deg,rgba(3,7,6,.1),rgba(3,7,6,.94)),
    url("assets/aow-command-hall-v1.webp") center / cover no-repeat;
}

.hero-grid:not(.hero-world):not(.hero-event):not(.map-live-hero)::before{
  height:15px;
  background:
    linear-gradient(90deg,rgba(121,211,111,.45),rgba(241,191,82,.42),rgba(107,185,235,.34)),
    url("assets/terrain-border.webp") left bottom / auto 34px repeat-x;
  opacity:.72;
}

.hero-grid:not(.hero-world):not(.hero-event):not(.map-live-hero) .panel{
  border-color:rgba(241,191,82,.2);
  background:
    linear-gradient(180deg,rgba(18,29,23,.9),rgba(6,10,9,.96)),
    radial-gradient(320px 160px at 82% 8%,rgba(241,191,82,.1),transparent 72%);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}

.panel,
.mini-card,
.route-card,
.command-row,
.status-card,
.doc-card,
.platform-card,
.connect-card,
.route-node,
.asset-band,
.stack-card,
.brand-showcase-card,
.console-card,
.doc-hub-card,
.launch-card{
  clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,14px 100%,0 calc(100% - 14px));
}

.panel::after,
.mini-card::after,
.route-card::after,
.status-card::after,
.doc-card::after,
.connect-card::after,
.route-node::after{
  content:"";
  position:absolute;
  right:10px;
  bottom:10px;
  width:18px;
  height:18px;
  border-right:2px solid rgba(241,191,82,.34);
  border-bottom:2px solid rgba(241,191,82,.34);
  pointer-events:none;
}

.edition-chip img,
.connect-card header img[src*="aow-edition"],
.edition-tile-pair img[src*="aow-edition"],
.edition-symbol-art img{
  border:0;
  background:transparent;
  padding:0;
  filter:drop-shadow(0 14px 20px rgba(0,0,0,.42));
}

.edition-chip img{
  width:30px;
  height:30px;
  margin:-7px 2px -7px -3px;
}

.connect-card header img[src*="aow-edition"]{
  width:74px;
  height:74px;
  margin:-15px 0 -12px -10px;
}

.edition-tile-pair{
  min-height:198px;
  padding:20px;
  background:
    radial-gradient(420px 220px at 50% 0%,rgba(121,211,111,.12),transparent 72%),
    linear-gradient(135deg,rgba(7,13,10,.98),rgba(18,28,23,.94));
}

.edition-tile-pair span{
  grid-template-columns:minmax(92px,.95fr) 1fr;
  overflow:hidden;
  background:
    linear-gradient(180deg,rgba(13,25,20,.92),rgba(5,10,8,.98)),
    radial-gradient(200px 120px at 30% 10%,rgba(255,255,255,.08),transparent 70%);
}

.edition-tile-pair img[src*="aow-edition"]{
  width:112px;
  height:112px;
  margin:-10px 0 -12px -18px;
}

.edition-symbol-art{
  display:grid;
  grid-template-columns:86px minmax(0,1fr);
  gap:12px;
  align-items:center;
}

.edition-symbol-art img{
  width:86px;
  height:86px;
  margin:-18px 0 -16px -16px;
}

.asset-band img[src*="aow-command-hall"],
.edition-symbol-art img[src*="aow-command-hall"]{
  object-fit:cover;
}

.brand-assets-note{
  border-radius:6px;
  clip-path:polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px);
}

.section{
  position:relative;
}

.section::after{
  content:"";
  display:block;
  width:min(360px,70%);
  height:1px;
  margin:34px 0 0;
  background:linear-gradient(90deg,rgba(121,211,111,.42),rgba(241,191,82,.26),transparent);
  opacity:.45;
}

.section:last-child::after{
  display:none;
}

@media (max-width:720px){
  .hero-grid:not(.hero-world):not(.hero-event):not(.map-live-hero){
    min-height:auto;
    padding:24px 18px;
    background-position:center;
  }

  .connect-card header img[src*="aow-edition"]{
    width:62px;
    height:62px;
  }

  .edition-tile-pair span{
    grid-template-columns:66px 1fr auto;
  }

  .edition-tile-pair img[src*="aow-edition"]{
    width:76px;
    height:76px;
    margin:-10px 0 -12px -16px;
  }

  .edition-symbol-art{
    grid-template-columns:66px minmax(0,1fr);
  }

  .edition-symbol-art img{
    width:68px;
    height:68px;
  }
}

/* Final layout repair pass: prevent generated art/text clipping and make dense systems readable */
.feature-showcase .feature-editions{
  background:
    linear-gradient(180deg,rgba(13,20,17,.98),rgba(5,9,7,.99)),
    radial-gradient(420px 220px at 36% 0%,rgba(241,191,82,.11),transparent 72%);
}

.edition-tile-pair{
  min-height:0;
  padding:18px;
  gap:14px;
  overflow:visible;
}

.edition-tile-pair span{
  grid-template-columns:74px minmax(0,1fr);
  grid-template-rows:1fr auto;
  gap:6px 10px;
  align-items:center;
  min-width:0;
  min-height:112px;
  padding:14px 14px 12px 8px;
  overflow:hidden;
  font-size:1rem;
  line-height:1.04;
  background:
    linear-gradient(90deg,rgba(0,0,0,.16) 0 54px,transparent 54px),
    linear-gradient(180deg,rgba(16,28,22,.94),rgba(5,10,8,.99)),
    radial-gradient(190px 110px at 28% 20%,rgba(241,191,82,.13),transparent 70%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07);
}

.edition-tile-pair code{
  grid-column:2;
  align-self:start;
  justify-self:start;
  min-width:0;
  font-size:.9rem;
}

.edition-tile-pair img[src*="aow-edition"]{
  grid-row:1 / span 2;
  width:78px;
  height:78px;
  margin:-2px 0 -5px -10px;
  object-fit:contain;
}

.tier-grid{
  grid-template-columns:repeat(4,minmax(220px,1fr));
  gap:16px;
  align-items:stretch;
}

.tier-grid .tier-card{
  isolation:isolate;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  min-height:244px;
  padding:24px 22px 22px;
  clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,18px 100%,0 calc(100% - 18px));
  background:
    linear-gradient(135deg,rgba(16,23,20,.96),rgba(8,12,10,.99)),
    radial-gradient(260px 150px at 16% 0%,rgba(241,191,82,.14),transparent 72%);
}

.tier-grid .tier-card::before{
  content:"";
  position:absolute;
  left:20px;
  right:20px;
  top:64px;
  height:2px;
  background:linear-gradient(90deg,rgba(121,211,111,.72),rgba(241,191,82,.68),transparent);
  opacity:.72;
  pointer-events:none;
}

.tier-grid .tier-card::after{
  top:20px;
  right:20px;
  display:inline-grid;
  place-items:center;
  min-width:42px;
  height:34px;
  padding:0 8px;
  border:1px solid rgba(241,191,82,.34);
  border-radius:6px;
  background:rgba(241,191,82,.08);
}

.tier-grid .tier-card strong{
  margin-top:78px;
  min-height:auto;
  max-width:9ch;
  font-size:clamp(1.7rem,2.8vw,2.45rem);
  line-height:.9;
}

.tier-grid .tier-card span{
  max-width:34ch;
  margin-top:14px;
  font-size:.96rem;
  line-height:1.48;
}

.tier-grid .tier-card:nth-child(n+5){
  background:
    linear-gradient(135deg,rgba(31,18,18,.96),rgba(7,10,9,.99)),
    radial-gradient(260px 150px at 16% 0%,rgba(228,104,93,.2),transparent 72%);
}

.tier-grid .tier-card:nth-child(n+5)::before{
  background:linear-gradient(90deg,rgba(228,104,93,.72),rgba(241,191,82,.62),transparent);
}

@media (max-width:1280px) and (min-width:901px){
  .edition-tile-pair{
    grid-template-columns:1fr;
  }

  .edition-tile-pair span{
    min-height:92px;
    grid-template-columns:78px minmax(0,1fr);
  }

  .edition-tile-pair img[src*="aow-edition"]{
    width:78px;
    height:78px;
  }
}

@media (max-width:980px){
  .tier-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:720px){
  .edition-tile-pair span{
    grid-template-columns:74px minmax(0,1fr);
    grid-template-rows:auto auto;
    min-height:84px;
    padding:12px 14px 12px 8px;
  }

  .edition-tile-pair img[src*="aow-edition"]{
    width:74px;
    height:74px;
    margin:-4px 0 -5px -8px;
  }

  .tier-grid{
    grid-template-columns:1fr;
  }

  .tier-grid .tier-card{
    min-height:190px;
  }

  .tier-grid .tier-card strong{
    margin-top:58px;
    max-width:none;
    font-size:2rem;
  }
}

/* Full-site QA repair pass: page-agent fixes for mobile chrome, map overlays, and repeated facts */
h1,
h2,
.page-title,
.section-head h2{
  overflow:visible;
  padding-bottom:.08em;
  margin-bottom:-.08em;
}

.home-hero{
  min-height:min(620px, calc(100vh - 116px));
  background:
    linear-gradient(90deg,rgba(4,7,6,.9) 0%,rgba(4,7,6,.72) 40%,rgba(4,7,6,.18) 72%,rgba(4,7,6,.72) 100%),
    linear-gradient(180deg,rgba(4,7,6,.02),rgba(4,7,6,.78)),
    url("assets/aow-hero-world-v3.png") center / cover no-repeat;
}

.home-ribbon.server-ribbon{
  margin-top:12px;
}

.map-card-copy{
  padding:16px;
  border:1px solid rgba(207,228,198,.14);
  border-radius:8px;
  background:linear-gradient(180deg,rgba(4,8,7,.74),rgba(4,8,7,.94));
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

@media (max-width:720px){
  .portal-nav{
    overflow:visible;
  }

  .nav-inner,
  .home-refresh .nav-inner{
    width:min(100% - 16px, var(--max));
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:8px;
    padding:8px 0;
  }

  .brand{
    min-width:0;
    padding:4px 7px 4px 4px;
  }

  .brand img{
    width:34px;
    height:34px;
  }

  .brand strong{
    font-size:.98rem;
    line-height:1;
  }

  .brand span span{
    font-size:.68rem;
    letter-spacing:.08em;
  }

  .nav-links{
    grid-column:1 / -1;
    order:3;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:6px;
    width:100%;
    overflow:visible;
  }

  .nav-links a{
    min-height:34px;
    justify-content:center;
    padding:0 5px;
    font-size:.67rem;
    letter-spacing:.01em;
    white-space:nowrap;
  }

  .server-ribbon{
    display:none;
  }

  .home-hero{
    min-height:auto;
    padding:20px 14px 14px;
  }

  .home-refresh h1{
    font-size:3rem;
  }

  .operations-deck{
    display:flex;
    flex-direction:column;
  }

  .operations-deck .map-card{
    order:-1;
  }

  .command-strip{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
  }

  .command-strip span{
    min-height:38px;
    gap:3px;
    padding:8px 9px;
    font-size:.78rem;
  }

  .map-card,
  .live-map-card,
  .live-map-card .home-map-frame iframe{
    min-height:390px;
  }

  .live-map-card{
    display:grid;
    overflow:visible;
    background:transparent;
  }

  .live-map-card .home-map-frame{
    position:relative;
    height:390px;
    min-height:390px;
    border:1px solid rgba(207,228,198,.14);
    border-radius:8px;
    overflow:hidden;
  }

  .map-card-copy,
  .live-map-card .map-card-copy{
    position:relative;
    left:auto;
    right:auto;
    bottom:auto;
    max-width:none;
    margin-top:10px;
    padding:14px;
  }

  .tabs[data-tab-group]{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:7px;
  }

  .tabs[data-tab-group] .tab-btn{
    width:100%;
    min-height:38px;
    justify-content:center;
    padding:0 8px;
    white-space:normal;
    text-align:center;
  }

  .back-to-top{
    display:none;
  }
}

.champions-page .section:has(.status-grid) .status-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
}

.champions-page .section:last-of-type .panel{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px 24px;
  align-items:end;
  padding:28px;
  background:
    linear-gradient(90deg,rgba(31,18,18,.9),rgba(7,10,9,.98)),
    radial-gradient(360px 180px at 12% 0%,rgba(228,104,93,.17),transparent 72%),
    url("assets/terrain-border.webp") left top / auto 34px repeat-x;
}

.champions-page .section:last-of-type .panel .actions{
  grid-row:1 / span 2;
  grid-column:2;
  margin-top:0;
  justify-content:flex-end;
}

.map-page-frame,
.map-page-frame iframe{
  height:clamp(480px,60vh,650px);
  min-height:480px;
}

.map-page .route-board{
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
}

.map-page .map-live-copy .actions{
  gap:8px;
}

.map-page .map-live-copy .actions .copy-action{
  display:none;
}

.map-page .map-toolbar{
  left:14px;
  right:14px;
  top:14px;
  display:grid;
  grid-template-columns:1fr auto;
  align-items:start;
  gap:8px;
}

.map-page .map-toolbar-title,
.map-page .map-host-links,
.map-page .map-toolbar .copy-small{
  display:none;
}

.map-page .map-toolbar .inline-link-chip.map-source-open{
  grid-column:2;
  margin-left:0;
  min-height:34px;
  border-color:rgba(255,255,255,.18);
  border-radius:999px;
  background:rgba(4,8,7,.82);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}

.hero-grid .panel .status-grid{
  grid-template-columns:repeat(2,minmax(150px,1fr));
}

.asset-band img,
.asset-band picture{
  align-self:center;
}

@media (max-width:980px){
  .champions-page .section:has(.status-grid) .status-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:720px){
  .champions-page .champion-hero{
    min-height:auto;
    padding:24px 16px 18px;
  }

  .champions-page .champion-hero h1{
    font-size:clamp(2.55rem,14vw,3.6rem);
  }

  .champions-page .section:has(.status-grid) .status-grid,
  .champions-page .section:last-of-type .panel{
    grid-template-columns:1fr;
  }

  .champions-page .section:last-of-type .panel .actions{
    grid-row:auto;
    grid-column:auto;
    justify-content:flex-start;
  }

  .map-page-frame,
  .map-page-frame iframe{
    height:clamp(360px,54vh,440px);
    min-height:360px;
  }

  .map-page .map-toolbar{
    left:10px;
    right:10px;
    top:10px;
  }

  .map-page .map-toolbar .inline-link-chip.map-source-open{
    max-width:190px;
    justify-self:end;
    min-height:32px;
    padding:4px 9px;
    font-size:.76rem;
  }

  .hero-grid .panel .status-grid{
    grid-template-columns:1fr;
  }

  .doc-card .actions .btn,
  .route-card .actions .btn,
  .status-card .actions .btn,
  .asset-band .actions .btn,
  .asset-band .btn{
    width:auto;
    flex:0 1 auto;
  }

  .asset-band{
    display:flex;
    flex-direction:column;
  }

  .asset-band img,
  .asset-band picture{
    order:-1;
    width:100%;
    max-height:260px;
    object-fit:contain;
  }
}
