/* Recruit page: harassment prevention / work environment section */
:root{
  --recruit-policy-navy:var(--navy,#192d5d);
  --recruit-policy-accent:var(--accent,#f25b35);
  --recruit-policy-paper:var(--paper,#f6f6f3);
  --recruit-policy-ink:var(--ink,#1d1d1f);
  --recruit-policy-muted:var(--muted,#707075);
}
.work-environment{background:#fff;color:var(--recruit-policy-ink)}
.work-environment-head{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:start;margin-bottom:52px}
.work-environment h2{margin:0;color:var(--recruit-policy-navy);font-size:clamp(38px,4.8vw,64px);line-height:1.16;letter-spacing:-.045em}
.work-environment-copy{max-width:650px;color:var(--recruit-policy-muted)}
.work-environment-copy p{margin:0 0 18px}
.work-environment-note{padding:16px 18px;border-left:3px solid var(--recruit-policy-accent);background:var(--recruit-policy-paper);font-size:12px;line-height:1.8;color:#666}
.policy-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#d9dde5;border:1px solid #d9dde5}
.policy-card{position:relative;min-height:310px;display:flex;flex-direction:column;justify-content:space-between;padding:30px;background:#fff;transition:transform .2s ease,background .2s ease,box-shadow .2s ease}
.policy-card:hover{z-index:2;transform:translateY(-4px);background:#fafbfc;box-shadow:0 18px 45px rgba(25,45,93,.10)}
.policy-number{font:800 12px/1 Inter,sans-serif;letter-spacing:.12em;color:var(--recruit-policy-accent)}
.policy-card p{margin:0 0 10px;color:#8a8f99;font:700 10px/1.35 Inter,sans-serif;letter-spacing:.14em}
.policy-card h3{margin:0;color:var(--recruit-policy-navy);font-size:clamp(19px,2vw,25px);line-height:1.55;letter-spacing:-.025em}
.policy-open{padding-top:20px;border-top:1px solid #e4e6ea;color:var(--recruit-policy-navy);font-size:13px;font-weight:700}
.recruit-footer-meta{display:flex;align-items:center;gap:22px}
.recruit-footer-meta>a{font-size:11px;font-weight:700;color:var(--recruit-policy-navy);border-bottom:1px solid rgba(25,45,93,.25)}
.recruit-footer-meta>a:hover{color:var(--recruit-policy-accent);border-bottom-color:var(--recruit-policy-accent)}
.recruit-footer-meta p{margin:0}
@media(max-width:900px){
  .work-environment-head{grid-template-columns:1fr;gap:30px}
  .policy-grid{grid-template-columns:1fr}
  .policy-card{min-height:230px}
}
@media(max-width:620px){
  .policy-card{padding:24px;min-height:215px}
  .recruit-footer-meta{align-items:flex-start;flex-direction:column;gap:10px}
}
