.term{display:inline;border:0;padding:0;background:transparent;color:inherit;font-weight:800;text-decoration:underline;text-decoration-style:dotted;text-decoration-thickness:1.5px;text-underline-offset:4px;cursor:help}
.tip-box{position:fixed;z-index:140;max-width:min(310px,84vw);padding:11px 13px;border-radius:12px;background:var(--deep);color:#fff;font-size:12.5px;font-weight:500;line-height:1.55;white-space:pre-line;box-shadow:0 14px 32px rgba(0,0,0,.28);opacity:0;pointer-events:none;transform:translateY(6px);transition:opacity .16s,transform .16s}
.tip-box.show{opacity:1;transform:translateY(0)}
.highlights{background:#fff}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px}
.story-card{background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;transition:transform .22s,box-shadow .22s}
.story-card:hover{transform:translateY(-6px);box-shadow:0 38px 70px -40px rgba(8,28,17,.8)}
.story-media{padding:0}
.story-frame{display:block;aspect-ratio:4/3;background:none;border:0;border-radius:24px 24px 0 0;min-height:0;overflow:hidden}
.story-frame img{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover}
.story-body{padding:18px 18px 20px}
.story-tag{font-size:11px;font-weight:800;letter-spacing:.15em;color:#85641f}
.story-card h3{font-family:"Bai Jamjuree",system-ui;font-size:27px;line-height:1.2;margin:6px 0 8px}
.story-card p{margin:0;color:var(--muted);font-size:14px}
.story-go{display:inline-flex;margin-top:15px;padding:10px 14px;border-radius:999px;background:var(--deep);color:#fff;font-size:13px;font-weight:800}
.core7 .story-go{background:var(--gold);color:var(--deep)}
.energy{background:var(--deep);color:#fff}
.energy .eyebrow{color:var(--gold2)}
.energy .sub{color:rgba(255,255,255,.66)}
.path-pick{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:30px}
.path-choice{--path-img:none;position:relative;display:block;aspect-ratio:1/1;padding:0;border:1px solid rgba(255,255,255,.15);border-radius:26px;overflow:hidden;background:#0d2116;color:#fff;text-align:left;cursor:pointer;box-shadow:0 26px 58px -38px rgba(0,0,0,.95);transition:transform .24s,border-color .24s,box-shadow .24s}
.path-choice:hover{transform:translateY(-6px);border-color:rgba(234,208,140,.5);box-shadow:0 38px 78px -42px rgba(0,0,0,1)}
.path-choice[aria-pressed="true"]{border-color:var(--gold2);box-shadow:0 0 0 3px rgba(234,208,140,.13),0 38px 78px -42px rgba(0,0,0,1)}
.path-art{position:absolute;inset:0;display:block;background-image:var(--path-img);background-repeat:no-repeat;background-size:200% 100%;background-position:left center;transition:transform .65s cubic-bezier(.22,1,.36,1),filter .3s}
.path-choice:hover .path-art,.path-choice[aria-pressed="true"] .path-art{transform:scale(1.035);filter:saturate(1.05)}
.path-art::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(2,12,7,.02) 35%,rgba(2,12,7,.9) 88%,rgba(2,12,7,.98))}
.path-selected{position:absolute;z-index:4;top:14px;right:14px;padding:6px 11px;border-radius:999px;background:var(--gold2);color:var(--deep);font-family:"Bai Jamjuree",system-ui;font-size:11px;font-weight:800;opacity:0;transform:translateY(-5px);transition:.2s}
.path-choice[aria-pressed="true"] .path-selected{opacity:1;transform:none}
.path-copy{position:absolute;z-index:3;left:0;right:0;bottom:0;padding:22px}
.path-code{display:block;font-family:"Bai Jamjuree",system-ui;font-size:11px;font-weight:800;letter-spacing:.14em;color:var(--gold2)}
.path-choice h3{font-family:"Bai Jamjuree",system-ui;font-size:clamp(27px,3vw,37px);line-height:1.05;margin:7px 0 8px}
.path-choice p{max-width:29ch;margin:0;color:rgba(255,255,255,.78);font-size:14px;line-height:1.55}
.path-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:14px}
.stat-term{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.16);color:#fff;font-size:12px;font-weight:800;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:4px;cursor:help}
.path-meta>span:not(.stat-term){padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.09);font-size:12px;color:rgba(255,255,255,.78)}
.path-result{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:21px;padding:18px 0 0;border-top:1px solid rgba(255,255,255,.15)}
.path-result-label{display:block;color:rgba(255,255,255,.5);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.path-result b{display:block;font-family:"Bai Jamjuree",system-ui;font-size:20px;margin-top:2px}
.path-enter{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 18px;border-radius:13px;background:var(--gold2);color:var(--deep);font-family:"Bai Jamjuree",system-ui;font-weight:800;white-space:nowrap;transition:transform .18s}
.path-enter:hover{transform:translateY(-2px)}
.path-enter[aria-disabled="true"]{pointer-events:none;opacity:.42;filter:grayscale(.3)}
.paths-quiet{margin-top:18px;text-align:center;color:rgba(255,255,255,.6);font-size:13px}
.paths-quiet a{color:var(--gold2);font-weight:800;text-decoration:underline;text-underline-offset:4px}
.rooms{background:linear-gradient(180deg,#fff,var(--paper))}
.open-world-copy{font-size:clamp(15px,1.6vw,18px);line-height:1.75}
.game-term{color:var(--green);text-decoration-color:rgba(27,106,66,.55)}.context-term{text-decoration-thickness:1.5px;text-underline-offset:5px}.context-term-light{color:inherit;text-decoration-color:rgba(234,208,140,.76)}.room-term{color:inherit;text-decoration-color:rgba(27,106,66,.42)}.room small{font-size:11px;color:var(--muted);font-weight:700}
.room-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:25px}
.room{position:relative;padding:19px 48px 19px 20px;border-radius:18px;background:#fff;border:1px solid var(--line);transition:transform .18s,border-color .18s,box-shadow .18s;box-shadow:0 14px 34px -29px rgba(8,28,17,.45)}
.room::after{content:"→";position:absolute;right:20px;top:50%;transform:translateY(-50%);color:rgba(27,106,66,.42);font-weight:900;transition:transform .18s,color .18s}.room:hover::after{transform:translate(4px,-50%);color:var(--green)}.room:hover{transform:translateY(-4px);border-color:rgba(27,106,66,.36);box-shadow:0 23px 42px -31px rgba(8,28,17,.58)}
.room b{display:block;font-family:"Bai Jamjuree",system-ui;font-size:18px;margin-bottom:4px}
.room span{font-size:13px;color:var(--muted)}
.first{padding:18px 0 clamp(58px,8vw,92px);background:var(--paper)}
.first-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:end;padding-top:38px;border-top:1px solid var(--line)}
.first h2{margin-bottom:10px}
.first p{max-width:66ch;margin:0;color:var(--muted)}
.first-go{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:13px 19px;border-radius:14px;background:var(--deep);color:#fff;font-family:"Bai Jamjuree",system-ui;font-weight:800;white-space:nowrap;transition:transform .18s}
.first-go:hover{transform:translateY(-3px)}
.footer{position:relative;text-align:center;background:var(--paper);padding:54px 0 66px}
.secret{background:transparent;font-size:42px;cursor:pointer;padding:10px;transition:transform .2s,filter .2s}
.secret:hover{transform:rotate(10deg) scale(1.08)}
.secret:disabled{cursor:default;transform:none;filter:drop-shadow(0 0 13px rgba(190,148,66,.8))}
.seeker-title{font-family:"Bai Jamjuree",system-ui;font-size:20px;font-weight:800;margin-top:2px}
.seeker-copy{color:var(--muted);font-size:13px;margin-top:3px}
.seeker-count{min-height:20px;color:#85641f;font-size:13px;margin-top:7px}
.footlinks{display:flex;justify-content:center;gap:12px 20px;flex-wrap:wrap;margin-top:24px;font-size:13px}
.footlinks a{color:var(--green);font-weight:800}
@media(max-width:900px){
  .hero-grid,.portal-card{grid-template-columns:1fr;text-align:center}
  .hero h1{margin-left:auto;margin-right:auto}.hero .lead,.portal-copy p{margin:auto}
  .compass{width:min(270px,70vw)}
  .energy-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:720px){
  .path-pick{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 4px 10px;gap:12px;margin-left:-4px;margin-right:-4px}
  .path-choice{min-width:86%;scroll-snap-align:center}
  .path-result{align-items:flex-start}
  .room-grid{grid-template-columns:1fr 1fr}
  .first-row{grid-template-columns:1fr;align-items:start;gap:18px}

  .glhf-grid{grid-template-columns:1fr;text-align:center}.glhf p{margin:auto}.bump{min-width:0}
  .quest-head{display:block}.overall{text-align:left;margin-top:15px}
  .qgrid{grid-template-columns:1fr}
  .cards{grid-template-columns:1fr}
  .room-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:520px){
  .path-choice{min-width:91%}
  .path-copy{padding:18px}
  .path-result{display:grid;grid-template-columns:1fr}
  .path-enter{width:100%}
  .room-grid{grid-template-columns:1fr}

  .wrap{width:min(100% - 24px,1120px)}
  .hero{padding-top:44px}.hero h1{font-size:39px}.compass{width:220px}
  .energy-grid{grid-template-columns:1fr}
  .room-grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.needle{animation:none}.energy-card,.story-card,.room,.qstep{transition:none}}
