/* Volena tokens — steel teal (not Roma purple/olive, not mariva sage/clay). */
:root {
  --vo-ink: #181818;
  --vo-muted: #6e6e6e;
  --vo-line: #e6e4e0;
  --vo-bg: #ffffff;
  --vo-soft: #f3f1ed;
  --vo-accent: #0f6b6b;
  --vo-accent-2: #c47a3a;
  --vo-sale: #c62828;
  --vo-frame: 1180px;
  --vo-gap: 64px;
  --vo-font: "Noto Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", sans-serif;
  --vo-display: "Outfit", "Noto Sans KR", sans-serif;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--vo-ink);
  background: var(--vo-bg);
  font-family: var(--vo-font);
  font-size: 15px;
  line-height: 1.65;
}
a { color: inherit; text-decoration: none; }
a:hover { color: var(--vo-accent); }
img { max-width: 100%; height: auto; display: block; }
ul { margin: 0; padding: 0; list-style: none; }

.vo-frame { width: min(100% - 32px, var(--vo-frame)); margin-inline: auto; }
.vo-skip { position: absolute; left: -9999px; }
.vo-skip:focus { left: 16px; top: 16px; z-index: 10000; background: #fff; padding: 8px 12px; border: 1px solid var(--vo-line); }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); border: 0; }
.vo-dot { color: var(--vo-muted); margin: 0 .35em; }
.vo-muted { color: var(--vo-muted); }
.vo-empty, .vo-placeholder {
  border: 1px dashed var(--vo-line);
  background: var(--vo-soft);
  padding: 28px;
  color: var(--vo-muted);
  border-radius: 10px;
  text-align: center;
}
.vo-ph {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 80px;
  padding: 12px 16px;
  border: 1px dashed rgba(0,0,0,.2);
  background: rgba(255,255,255,.55);
  color: var(--vo-muted);
  font-size: 12px;
  letter-spacing: .04em;
}
.vo-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 22px;
  background: var(--vo-accent);
  color: #fff !important;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .04em;
}
.vo-btn:hover { filter: brightness(1.08); color: #fff !important; }
