/* Vacancy detail pages — shared styles */
body { background: var(--warm); }
.ph-title { font-size: clamp(36px, 5vw, 76px); font-weight: 300; letter-spacing: -0.04em; line-height: 1; }
.vac-meta { display: flex; gap: 40px; margin-top: 28px; flex-wrap: wrap; }
.vac-meta-item { display: flex; flex-direction: column; gap: 4px; }
.vac-meta-l { font-family: var(--mono); font-size: 9px; letter-spacing: .14em; text-transform: uppercase; color: var(--gray-400); }
.vac-meta-v { font-size: 13px; font-weight: 500; }

.vac-body { max-width: 1100px; margin: 0 auto; padding: 24px 32px 90px; display: grid; grid-template-columns: 200px 1fr; gap: 48px; }
.vac-side { position: sticky; top: 110px; align-self: start; display: flex; flex-direction: column; gap: 16px; }
.vac-side .sec-label { display: block; }
.vac-apply-btn { display: inline-block; background: var(--tangerine); color: white; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; padding: 13px 26px; text-decoration: none; text-align: center; transition: opacity .2s; }
.vac-apply-btn:hover { opacity: .85; }
.vac-back { font-family: var(--mono); font-size: 10px; letter-spacing: .12em; text-transform: uppercase; color: var(--gray-400); text-decoration: none; }
.vac-back:hover { color: var(--black); }

.vac-content h2 { font-size: clamp(18px, 2vw, 24px); font-weight: 500; letter-spacing: -0.01em; margin: 40px 0 14px; }
.vac-content h2:first-child { margin-top: 0; }
.vac-content p { font-size: 15px; line-height: 1.8; color: var(--gray-600); max-width: 620px; margin-bottom: 12px; }
.vac-content ul { list-style: none; max-width: 620px; }
.vac-content li { display: flex; gap: 12px; padding: 10px 0; border-top: 1px solid var(--gray-200); font-size: 14px; color: var(--black); line-height: 1.6; }
.vac-content li::before { content: '→'; color: var(--tangerine); flex-shrink: 0; }

.vac-how { background: var(--black); color: white; padding: 36px 40px; margin-top: 48px; max-width: 620px; }
.vac-how-title { font-family: var(--mono); font-size: 10px; letter-spacing: .16em; text-transform: uppercase; color: var(--tangerine); margin-bottom: 14px; }
.vac-how p { color: rgba(255,255,255,.65); font-size: 14px; line-height: 1.7; margin-bottom: 20px; }
.vac-how a { color: white; }

@media (max-width: 800px) { .vac-body { grid-template-columns: 1fr; } .vac-side { position: static; flex-direction: row; align-items: center; } }
