/* ══ Smoking Pääät — Legal Pages Shared CSS ══ */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
:root {
  --bg:      #0a0808;
  --bg2:     #131010;
  --bg3:     #1a1414;
  --border:  #2a1e1e;
  --accent:  #e11b1e;
  --text:    #f4ede3;
  --muted:   #9a8a7a;
  --font:    'Barlow', system-ui, sans-serif;
  --head:    'Oswald', system-ui, sans-serif;
}
body { background: var(--bg); color: var(--text); font-family: var(--font); font-size: 16px; line-height: 1.7; }
a { color: var(--accent); text-decoration: none; }
a:hover { opacity: .8; }

/* ── Nav ── */
.legal-nav {
  position: sticky; top: 0; z-index: 100;
  display: flex; align-items: center; gap: 32px;
  padding: 0 40px; height: 68px;
  background: rgba(10,8,8,.94); backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--border);
}
.legal-nav__brand { display: flex; align-items: center; gap: 14px; color: var(--text); text-decoration: none; flex-shrink: 0; }
.legal-nav__brand img { height: 32px; }
.legal-nav__brand .brand { display: block; font-family: var(--head); font-size: 18px; font-weight: 700; letter-spacing: .05em; line-height: 1; }
.legal-nav__brand .sub   { display: block; font-size: 10px; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); margin-top: 2px; }
.legal-nav__links { display: flex; gap: 28px; margin: 0 auto; }
.legal-nav__links a { font-size: 14px; font-weight: 500; letter-spacing: .04em; color: var(--muted); text-decoration: none; transition: color .2s; }
.legal-nav__links a:hover { color: var(--text); }
.legal-nav__cta { flex-shrink: 0; display: inline-flex; align-items: center; gap: 8px; padding: 10px 22px; background: var(--accent); color: #fff; border-radius: 6px; font-family: var(--head); font-size: 14px; font-weight: 600; letter-spacing: .06em; text-decoration: none; transition: opacity .15s; }
.legal-nav__cta:hover { opacity: .88; color: #fff; }
.legal-nav__back:hover { border-color: var(--muted) !important; color: var(--text) !important; }
@media (max-width: 768px) {
  .legal-nav__links { display: none; }
  .legal-nav { padding: 0 22px; gap: 0; justify-content: space-between; }
}

/* ── Flame bar ── */
.flame-rule { height: 3px; background: linear-gradient(90deg, transparent, var(--accent) 30%, #ff4d35 50%, var(--accent) 70%, transparent); opacity: .5; }

/* ── Content ── */
.legal-wrap { max-width: 760px; margin: 0 auto; padding: 72px 36px 120px; }
.legal-wrap .eyebrow { display: inline-block; font-size: 11px; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; color: var(--accent); margin-bottom: 16px; }
.legal-wrap h1 { font-family: var(--head); font-size: clamp(42px, 7vw, 72px); font-weight: 700; line-height: .96; margin-bottom: .5em; }
.legal-wrap h2 { font-family: var(--head); font-size: 20px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: var(--text); margin: 2.4em 0 .6em; padding-top: 2em; border-top: 1px solid var(--border); }
.legal-wrap h2:first-of-type { border-top: none; padding-top: 0; margin-top: 1.6em; }
.legal-wrap p { color: rgba(244,237,227,.75); margin-bottom: 1em; }
.legal-wrap ul, .legal-wrap ol { color: rgba(244,237,227,.75); padding-left: 22px; margin-bottom: 1em; }
.legal-wrap li { margin-bottom: .4em; }
.legal-wrap strong { color: var(--text); font-weight: 600; }
.legal-wrap a { color: var(--accent); }
.legal-wrap a:hover { opacity: .8; }
.ph-note { color: var(--muted); border-left: 2px solid var(--accent); padding-left: 16px; font-style: italic; margin-bottom: 1em; }
.notice { background: rgba(225,27,30,.06); border: 1px solid rgba(225,27,30,.2); border-radius: 8px; padding: 18px 22px; margin-bottom: 1.8em; font-size: .9rem; color: var(--muted); line-height: 1.7; }
.notice strong { display: block; margin-bottom: 4px; color: var(--text); }

/* ── Footer ── */
.legal-footer { margin-top: 4em; padding-top: 2em; border-top: 1px solid var(--border); font-size: .85rem; color: var(--muted); display: flex; justify-content: space-between; flex-wrap: wrap; gap: 12px; }
.legal-footer a { color: var(--muted); }
.legal-footer a:hover { color: var(--text); }
.foot-links { display: flex; gap: 20px; flex-wrap: wrap; }

@media (max-width: 600px) {
  .legal-wrap { padding: 48px 22px 80px; }
  .legal-nav { padding: 0 22px; }
}
