.sj-hero { padding: 64px 0 36px; }
.sj-hero__kicker { color: var(--C-gold); font-family: var(--font-mono); font-size: 11px; letter-spacing: .18em; }
.sj-hero h1 { max-width: 820px; margin: 16px 0; font-family: var(--font-serif-kr); font-size: clamp(42px, 7vw, 74px); font-weight: 300; line-height: 1.1; letter-spacing: -.04em; }
.sj-hero h1 em { color: var(--C-seal); font-style: normal; }
.sj-hero__lead { max-width: 720px; color: var(--C-ink-2); font-size: 17px; line-height: 1.9; word-break: keep-all; }
.sj-panel { margin-top: 24px; padding: 30px; border: 1px solid var(--C-line); border-radius: 18px; background: rgba(255,255,255,.45); }
.sj-panel h2, .sj-section h2, .sj-result h2 { margin: 0 0 12px; font-family: var(--font-serif-kr); font-weight: 500; letter-spacing: -.03em; }
.sj-field { display: flex; align-items: end; gap: 12px; margin-top: 24px; }
.sj-field label { flex: 1; color: var(--C-ink-2); font-size: 13px; font-weight: 700; }
.sj-field input { width: 100%; margin-top: 8px; padding: 14px 16px; border: 1px solid var(--C-line); border-radius: 10px; background: var(--C-paper); color: var(--C-ink); font-size: 18px; }
.sj-result { display: none; margin-top: 20px; padding: 28px; border-radius: 16px; background: #201d18; color: #fffaf0; }
.sj-result.is-on { display: block; }
.sj-result__badge { display: inline-flex; margin-bottom: 14px; padding: 6px 10px; border-radius: 999px; background: #bd8700; color: #fff; font-size: 12px; font-weight: 800; }
.sj-result p { color: rgba(255,250,240,.76); line-height: 1.8; }
.sj-cycle { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 18px; }
.sj-cycle div { padding: 14px 10px; border: 1px solid rgba(255,255,255,.16); border-radius: 10px; text-align: center; }
.sj-cycle strong, .sj-cycle span { display: block; }
.sj-cycle span { margin-top: 4px; color: rgba(255,255,255,.6); font-size: 12px; }
.sj-section { margin-top: 64px; }
.sj-section__lead { max-width: 760px; color: var(--C-ink-2); line-height: 1.9; word-break: keep-all; }
.sj-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 14px; margin-top: 24px; }
.sj-card { padding: 24px; border: 1px solid var(--C-line); border-radius: 14px; background: rgba(255,255,255,.4); }
.sj-card small { color: var(--C-gold); font-weight: 800; }
.sj-card h3 { margin: 10px 0; font-family: var(--font-serif-kr); font-size: 22px; }
.sj-card p { margin: 0; color: var(--C-ink-2); font-size: 14px; line-height: 1.8; }
.sj-table-wrap { overflow-x: auto; margin-top: 22px; border: 1px solid var(--C-line); border-radius: 14px; }
.sj-table { width: 100%; min-width: 680px; border-collapse: collapse; background: rgba(255,255,255,.4); }
.sj-table th, .sj-table td { padding: 16px; border-bottom: 1px solid var(--C-line); text-align: left; }
.sj-table th { background: rgba(155,107,18,.08); color: var(--C-ink-2); font-size: 13px; }
.sj-table tr:last-child td { border-bottom: 0; }
.sj-note { margin-top: 22px; padding: 18px 20px; border-left: 3px solid var(--C-gold); background: rgba(155,107,18,.07); color: var(--C-ink-2); line-height: 1.8; }
.sj-links { display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; margin-top: 20px; }
.sj-link { padding: 20px; border: 1px solid var(--C-line); border-radius: 12px; color: inherit; text-decoration: none; }
.sj-link small { display: block; margin-bottom: 6px; color: var(--C-gold); font-weight: 800; }
.sj-cta { margin: 64px 0 72px; padding: 30px; border-radius: 18px; background: #201d18; color: #fffaf0; }
.sj-cta p { color: rgba(255,250,240,.72); line-height: 1.8; }
.sj-old-price { margin-right: 8px; color: rgba(255,255,255,.48); text-decoration: line-through; }
@media(max-width:720px){.sj-hero{padding:40px 0 24px}.sj-hero__lead{font-size:15px}.sj-panel{padding:22px 18px}.sj-field{align-items:stretch;flex-direction:column}.sj-grid,.sj-links{grid-template-columns:1fr}.sj-cycle div{padding:12px 6px}.sj-section{margin-top:48px}.sj-cta{padding:24px 20px;margin-bottom:52px}}
