@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;600;700;800&family=Noto+Serif+KR:wght@600;700&family=Oswald:wght@500;600&display=swap");

:root{
  --bg:#090909;
  --panel:#111;
  --line:#3b3431;
  --text:#f3f0eb;
  --muted:#aaa39e;
  --red:#d74b44;
  --sans:"Noto Sans KR",sans-serif;
  --serif:"Noto Serif KR",serif;
  --display:"Oswald",sans-serif;
}

*{box-sizing:border-box}
html,body{width:100%;height:100%;overflow:hidden}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans)}
a{color:inherit;text-decoration:none}
.skip-link{position:fixed;z-index:10;top:12px;left:12px;padding:.7rem 1rem;background:white;color:black;transform:translateY(-160%)}
.skip-link:focus{transform:none}

.landing{min-height:100svh;display:grid;place-items:center;padding:clamp(28px,5vh,64px) 32px}
.landing-content{width:min(1080px,100%)}
.hero-row{display:grid;grid-template-columns:42% 58%;align-items:center;gap:72px}
.landing-logo{display:block;width:min(420px,40vw);height:auto;margin:auto}
.landing-copy{max-width:600px}
.eyebrow{margin:0 0 1.2rem;color:var(--red);font:600 .78rem/1 var(--display);letter-spacing:.18em}
.landing-copy h1{margin:0 0 1.5rem;font:700 clamp(2.85rem,4.1vw,3.75rem)/1.32 var(--serif);letter-spacing:-.055em}
.landing-copy>p:last-child{margin:0;color:#c3bdb8;font-size:1.05rem;line-height:1.85}

.entry-links{display:grid;grid-template-columns:repeat(3,1fr);margin-top:clamp(38px,7vh,76px);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.entry-links a{position:relative;min-height:94px;display:grid;grid-template-columns:38px 1fr auto;grid-template-rows:1fr 1fr;align-items:center;padding:1rem 1.25rem;border-right:1px solid rgba(255,255,255,.22);border-bottom:1px solid rgba(255,255,255,.22);background:var(--panel);transition:background-color .18s,color .18s}
.entry-links span{grid-row:1/3;color:rgba(255,255,255,.66);font:500 .72rem/1 var(--display)}
.entry-links b{align-self:end;font:600 1rem/1.2 var(--display);letter-spacing:.08em}
.entry-links em{align-self:start;margin-top:.35rem;color:rgba(255,255,255,.78);font-size:.78rem;font-style:normal}
.entry-links i{grid-column:3;grid-row:1/3;color:rgba(255,255,255,.84);font-style:normal;font-size:1rem}
.entry-links .discord-entry{background:#5865f2}
.entry-links .discord-entry:hover,.entry-links .discord-entry:focus-visible{background:#4752c4;color:white}
.entry-links .minelist-entry{background:#3f7f31}
.entry-links .minelist-entry:hover,.entry-links .minelist-entry:focus-visible{background:#326929;color:white}
.entry-links .wiki-entry{background:#a92d28}
.entry-links .wiki-entry:hover,.entry-links .wiki-entry:focus-visible{background:#c13a34;color:white}

.server-info{display:grid;grid-template-columns:.7fr 1.3fr;border-left:1px solid var(--line)}
.server-info>div,.server-info>button{min-height:66px;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#0d0d0d;color:var(--text);padding:.85rem 1.25rem;text-align:left}
.server-info>div{display:flex;flex-direction:column;justify-content:center}
.server-info>button{display:flex;align-items:center;justify-content:space-between;cursor:pointer}
.server-info>button span{display:flex;flex-direction:column}
.server-info small{margin-bottom:.35rem;color:#817974;font:500 .67rem/1 var(--display);letter-spacing:.13em}
.server-info b{font:600 .95rem/1.2 var(--display);letter-spacing:.05em}
.server-info em{color:#9e9691;font-size:.76rem;font-style:normal}
.server-info>button:hover{background:#171414}
.server-info>button:hover em{color:white}

.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,10px);padding:.8rem 1rem;background:white;color:black;font-size:.875rem;font-weight:700;opacity:0;pointer-events:none;transition:.18s}
.toast.is-visible{opacity:1;transform:translate(-50%,0)}
[hidden]{display:none!important}
:focus-visible{outline:2px solid var(--red);outline-offset:4px}

@media(max-width:760px){
  .landing{padding:24px 18px}
  .landing-content{width:min(430px,100%)}
  .hero-row{display:block;text-align:center}
  .landing-logo{width:min(270px,72vw);margin:0 auto 12px}
  .eyebrow{font-size:.7rem;margin-bottom:.8rem}
  .landing-copy h1{font-size:clamp(2rem,9vw,2.5rem);margin-bottom:1rem}
  .landing-copy>p:last-child{font-size:.95rem;line-height:1.7}
  .entry-links{grid-template-columns:1fr;margin-top:30px}
  .entry-links a{min-height:64px;grid-template-columns:32px 1fr auto;padding:.65rem 1rem}
  .entry-links b{font-size:.92rem}
  .entry-links em{font-size:.74rem}
  .server-info{grid-template-columns:.8fr 1.2fr}
  .server-info>div,.server-info>button{min-height:64px;padding:.65rem .8rem}
  .server-info small{font-size:.6rem}
  .server-info b{font-size:.82rem}
  .server-info em{font-size:.68rem}
}

@media(max-height:690px) and (min-width:761px){
  .landing{padding:20px 32px}
  .landing-logo{width:min(330px,34vw)}
  .landing-copy h1{font-size:2.8rem}
  .entry-links{margin-top:32px}
  .entry-links a{min-height:76px}
  .server-info>div,.server-info>button{min-height:58px}
}

@media(prefers-reduced-motion:reduce){.entry-links a,.toast{transition:none}}
