/* TRACES IN TIME — ERA I — MAP HOME V2
   Adds the approved game-map presentation while retaining original home content. */
.era-map-nav{position:absolute;z-index:8;inset:0;pointer-events:none}
.era-map-intro{position:absolute;left:50%;top:11%;transform:translateX(-50%);width:min(680px,62vw);text-align:center;text-shadow:0 4px 24px rgba(0,0,0,.9);pointer-events:none}
.era-map-intro .map-eyebrow{font:900 10px/1 var(--ui);letter-spacing:.28em;color:#efbd72;text-transform:uppercase}
.era-map-intro h1{margin:8px 0 7px;font:700 clamp(31px,4vw,58px)/.98 var(--display);color:#fff2dd}
.era-map-intro p{max-width:560px;margin:0 auto;color:#eadbc6;font:700 clamp(10px,.95vw,14px)/1.45 var(--ui)}
.era-map-route{position:absolute;inset:0;width:100%;height:100%;filter:drop-shadow(0 3px 4px rgba(0,0,0,.62))}
.era-map-route .route-shadow{fill:none;stroke:rgba(18,11,7,.80);stroke-width:1.4;stroke-linecap:round;stroke-dasharray:1.15 2.2}
.era-map-route .route-main{fill:none;stroke:rgba(255,216,145,.68);stroke-width:.48;stroke-linecap:round;stroke-dasharray:1.15 2.2}
.era-map-node{--x:50%;--y:50%;position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);pointer-events:auto;text-decoration:none;color:#fff;display:flex;flex-direction:column;align-items:center;gap:6px;filter:drop-shadow(0 7px 9px rgba(0,0,0,.60));transition:transform .2s ease,filter .2s ease;z-index:3}
.era-map-node:hover,.era-map-node:focus-visible{transform:translate(-50%,-50%) scale(1.08);filter:drop-shadow(0 10px 12px rgba(0,0,0,.66));outline:none}
.era-map-node .node-orb{position:relative;width:clamp(44px,4.8vw,66px);height:clamp(44px,4.8vw,66px);border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 38% 30%,#f7da9e,#b96e2d 33%,#5a351c 60%,#24170f 100%);border:3px solid #f1c16e;box-shadow:0 0 0 5px rgba(32,20,12,.76),0 0 0 7px rgba(242,183,91,.20),0 0 28px rgba(255,161,65,.22)}
.era-map-node .node-orb::after{content:"";position:absolute;inset:-10px;border:1px solid rgba(255,215,147,.44);border-radius:50%;animation:eraNodePulse 2.6s infinite}
.era-map-node .node-number{font:900 clamp(14px,1.4vw,20px)/1 var(--ui);color:#fff0d4;text-shadow:0 2px 5px #381b0d}
.era-map-node .node-label{white-space:nowrap;padding:5px 9px;border:1px solid rgba(255,220,161,.31);border-radius:9px;background:rgba(26,17,10,.84);backdrop-filter:blur(8px);font:900 clamp(8px,.82vw,11px)/1 var(--ui);letter-spacing:.04em;text-transform:uppercase}
.era-map-node .node-label small{display:block;margin-top:3px;color:#cdbb9e;font-size:.72em;letter-spacing:.09em;text-align:center}
.era-map-node.completed .node-orb{background:radial-gradient(circle at 38% 30%,#e6e6b0,#879b61 38%,#42512f 66%,#1c2418 100%);border-color:#b9d286}
.era-map-node.current .node-orb{box-shadow:0 0 0 5px rgba(32,20,12,.76),0 0 0 8px rgba(242,183,91,.34),0 0 38px rgba(255,150,55,.45)}
.era-map-node.locked{opacity:.58;filter:grayscale(.28) drop-shadow(0 7px 8px rgba(0,0,0,.56))}
.era-map-node.final .node-orb{background:radial-gradient(circle at 48% 42%,#ffcb6b,#b54022 38%,#45170f 68%,#1c0e0b 100%);border-color:#ffbd69;box-shadow:0 0 0 5px rgba(28,13,9,.80),0 0 0 7px rgba(255,103,48,.28),0 0 34px rgba(255,100,40,.40)}
@keyframes eraNodePulse{0%,100%{transform:scale(.9);opacity:.18}50%{transform:scale(1.15);opacity:.72}}

/* Recompose original home controls around the map instead of removing them. */
@media (min-width:901px) and (min-aspect-ratio:4/3){
  .era-home .brand-plaque{top:18px!important;left:22px!important;width:auto!important;min-width:280px!important;max-width:360px!important;min-height:66px!important;padding:9px 22px!important;border-radius:17px!important}
  .era-home .brand-title{font-size:21px!important}.era-home .brand-sub{font-size:8px!important}
  .era-home .brand-glyphs{display:none!important}
  .era-home .leather-panel{left:22px!important;top:auto!important;bottom:22px!important;width:min(370px,29vw)!important;height:auto!important;min-height:0!important;max-height:45vh!important;padding:20px 22px 18px!important;border-radius:22px!important;overflow:auto}
  .era-home .panel-mark{width:34px!important;height:34px!important;margin-bottom:3px!important}.era-home .panel-title{font-size:36px!important}.era-home .panel-subtitle{font-size:13px!important}.era-home .story-copy{font-size:12px!important}.era-home .story-detail{font-size:9px!important}.era-home .panel-actions{gap:7px!important}.era-home .panel-actions .btn{font-size:9px!important;padding:.75em .9em!important}.era-home .panel-footnote{display:none!important}
  .era-home .menu-column{right:22px!important;top:18px!important;width:235px!important;height:auto!important;gap:6px!important}
  .era-home .menu-card{min-height:54px!important;padding:7px 45px 7px 52px!important;border-radius:13px!important}.era-home .menu-icon{left:9px!important;width:38px!important}.era-home .menu-icon svg{width:34px!important;height:34px!important}.era-home .menu-title{font-size:15px!important}.era-home .menu-meta{font-size:7px!important}.era-home .menu-knot{right:11px!important;width:12px!important;height:12px!important}
  .era-home .stats-rock{right:22px!important;left:auto!important;bottom:22px!important;width:310px!important;min-height:86px!important;padding:17px 14px 12px!important;border-radius:20px!important}.era-home .stat strong{font-size:27px!important}.era-home .stat span{font-size:7px!important;margin-top:5px!important}
  .era-home .scene-caption,.era-home .utility-strip{display:none!important}
}

/* Tablet: map remains the hero, original panels become content below it. */
@media (max-width:1100px) and (min-width:561px){
  .era-map-intro{top:13%;width:70vw}.era-map-intro h1{font-size:clamp(32px,6vw,50px)}
  .era-map-node .node-label{font-size:8px}
}

/* Phone / narrow tablet: dedicated vertical map composition. */
@media (max-aspect-ratio:4/3),(max-width:900px){
  .era-map-nav{height:56vh;min-height:390px;inset:0 0 auto 0}
  .era-map-intro{top:16%;width:86vw}.era-map-intro .map-eyebrow{font-size:8px}.era-map-intro h1{font-size:clamp(28px,8vw,44px);margin-top:6px}.era-map-intro p{display:none}
  .era-map-node .node-orb{width:43px;height:43px;border-width:2px}.era-map-node .node-orb::after{inset:-7px}.era-map-node .node-label{font-size:7px;padding:4px 6px}.era-map-node .node-label small{display:none}
  .era-map-node.n1{--x:13%!important;--y:67%!important}.era-map-node.n2{--x:28%!important;--y:48%!important}.era-map-node.n3{--x:43%!important;--y:69%!important}.era-map-node.n4{--x:59%!important;--y:48%!important}.era-map-node.n5{--x:75%!important;--y:68%!important}.era-map-node.n6{--x:88%!important;--y:47%!important}
}
@media (max-width:560px){
  .era-map-nav{height:50vh;min-height:340px}.era-map-intro{top:19%}.era-map-intro h1{font-size:30px}
  .era-map-node .node-orb{width:37px;height:37px}.era-map-node .node-number{font-size:12px}.era-map-node .node-label{max-width:68px;white-space:normal;text-align:center;line-height:1.12}
  .era-map-node.n1{--x:11%!important;--y:69%!important}.era-map-node.n2{--x:27%!important;--y:51%!important}.era-map-node.n3{--x:43%!important;--y:71%!important}.era-map-node.n4{--x:60%!important;--y:51%!important}.era-map-node.n5{--x:76%!important;--y:70%!important}.era-map-node.n6{--x:89%!important;--y:50%!important}
}
@media(prefers-reduced-motion:reduce){.era-map-node .node-orb::after{animation:none!important}}
