/* BASIC css start */
:root{
  --bg:#ffffff; --text:#252525; --muted:#9aa4b2;
  --line:rgba(255,255,255,.12); --brand:#3ad0ff; --brand2:#9dff8a;
  --card:#121826; --radius:14px;
}
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Noto Sans KR,Helvetica,Arial,sans-serif;color:var(--text);background:
  radial-gradient(900px 400px at 10% -10%, rgba(58,208,255,.12), transparent 60%),
  radial-gradient(600px 300px at 90% 0%, rgba(157,255,138,.08), transparent 60%),
  var(--bg);
  line-height:1.6}
.wrap{max-width:1160px;margin:0 auto;padding:0 20px}
.loc-hero{padding:44px 0 20px;border-bottom:1px solid var(--line)}
.loc-hero h1{font-size:clamp(26px,4vw,42px);letter-spacing:-.02em;margin:.2em 0;text-align: center;}
.loc-hero .lead{color:var(--muted);margin:.3em 0;text-align: center;}
.chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:.4rem}
.chip{border:1px solid var(--line);border-radius:999px;padding:6px 10px;background:rgba(255,255,255,.03);font-size:.9rem}
.loc-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:22px;margin:24px auto}
@media (max-width:980px){.loc-grid{grid-template-columns:1fr}}
.col .card{background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));border:1px solid var(--line);border-radius:var(--radius);padding:16px;margin-bottom:16px}
.card-hd h2{margin:.1em 0 .2em;font-size:clamp(20px,3vw,26px)}
.card-hd .sub{color:var(--muted);margin:0 0 .6em}
.info-grid{display:flex;flex-direction:column;gap:14px}
.info-row{display:grid;grid-template-columns:120px 1fr;gap:14px}
@media (max-width:640px){.info-row{grid-template-columns:1fr}}
.key{color:#252525}
.val .btns{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.btn{appearance:none;border: 1px solid #252525;border-radius:10px;padding:.6rem .9rem;font-weight:700;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;background:none;color:#0a1220}
.btn.ghost{background:rgba(255,255,255,.06);border:1px solid var(--line);color:#252525}
.micro{color:var(--muted);font-size:.9rem;margin:.4rem 0 0}
.kv{display:grid;grid-template-columns:140px 1fr;gap:8px;margin:.4rem 0}
.address{white-space:pre-line}
.hours{border-collapse:collapse}
.hours th,.hours td{border-bottom:1px dashed var(--line);padding:.35rem .2rem;text-align:left}
.tabs{display:flex;gap:8px;margin:.2rem 0 .6rem}
.tab{appearance:none;border:1px solid var(--line);border-radius:10px;padding:.5rem .8rem;background:rgba(255,255,255,.02);color:#252525;cursor:pointer;font-weight:700;transition:transform .15s ease, box-shadow .15s ease}
.tab.active{color:#0a1220;background:linear-gradient(180deg, var(--brand), var(--brand2));border-color:transparent;transform:translateY(-1px);box-shadow:0 4px 10px rgba(0,0,0,.25)}
.panels .panel{display:none}
.panels .panel.active{display:block}
.dot{padding-left:18px}
.dot li{margin:.3rem 0}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:700px){.grid-2{grid-template-columns:1fr}}
.map{padding:0;overflow:hidden}
.map iframe{display:block;width:100%;height:min(60vh,560px);border:0;border-radius:calc(var(--radius) - 2px)}
.map-hint{border-top:1px dashed var(--line);padding:10px 12px;color:var(--muted);font-size:.9rem}
.quick .btns.vert{display:grid;grid-template-columns:1fr;gap:8px}

#map{
  width:100%;
  height:450px;
  border-radius:12px;
  overflow:hidden;
  box-shadow:0 0 12px rgba(0,0,0,.3);
}

/* print */
@media print{
  body{background:#fff;color:#000}
  .loc-hero,.chips,.btn,.map-hint{display:none!important}
  .col .card{border:1px solid #999;box-shadow:none}
}
/* BASIC css end */

