.safety-intro { max-width:1240px; }
.editorial-v3 .safety-eyebrow { color:var(--brand); font-size:13px; font-weight:600; letter-spacing:.05em; }
.safety-intro h1 { margin-block:20px 24px; }
.safety-sidebar a { display:block; padding-block:10px; }
.safety-sidebar hr { border:0; border-top:1px solid var(--line); margin-block:25px 12px; }
.safety-signals { margin:28px 0; border-left:3px solid var(--brand); padding:6px 0 6px 25px; }
.safety-signals h3 { margin-top:0; }
.safety-signals dt { font-weight:600; font-size:20px; margin-top:22px; }
.safety-signals dd { margin:6px 0 0; color:var(--muted); }
.safety-help { background:var(--soft); padding:30px; border-radius:6px; }
.safety-help li { padding:0 0 16px 6px; }
.safety-pair { display:grid; grid-template-columns:1fr 1fr; gap:28px; margin:30px 0; border-block:1px solid var(--line); padding-block:20px; }
.safety-script { margin:30px 0; }
.safety-script blockquote { margin:18px 0; padding-left:24px; border-left:2px solid var(--brand); font-size:24px; line-height:1.6; }
.safety-photo { margin:28px 0; }
.safety-photo img { width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; border-radius:6px; }
.safety-photo figcaption { font-size:14px; color:var(--muted); padding-top:12px; }
.safety-reading .meeting-checklist { min-width:0; border:1px solid var(--line); padding:22px; margin:26px 0; }
.meeting-checklist legend { font-size:21px; font-weight:600; padding-inline:8px; }
.meeting-checklist label { display:flex; align-items:flex-start; gap:12px; padding-block:10px; cursor:pointer; }
.meeting-checklist input { flex:0 0 21px; width:21px; height:21px; margin-top:4px; accent-color:var(--brand); }
.safety-questions { border-top:1px solid var(--line); padding-block:55px; }
.safety-question-heading { max-width:760px; }
.safety-question-heading h2 { font-size:clamp(28px,3vw,40px); line-height:1.2; }
.safety-questions .faq-tools { max-width:760px; margin:30px 0 40px; }
.safety-questions .faq-tools label { display:block; font-weight:600; margin-bottom:10px; }
.safety-search-row { display:flex; gap:12px; }
.safety-search-row input { flex:1; min-width:0; padding:15px; border:1px solid #948b87; border-radius:4px; font:inherit; background:white; }
.safety-search-row button { padding:10px 18px; font:inherit; background:var(--soft); color:var(--brand); border:1px solid var(--line); cursor:pointer; border-radius:4px; }
#faq-count { font-size:14px; color:var(--muted); }
.safety-faq-layout { display:grid; grid-template-columns:250px minmax(0,1fr); gap:55px; align-items:start; }
.safety-faq-layout .contents { position:sticky; top:25px; }
.safety-faq-layout .contents h3 { font-size:18px; }
.safety-faq-layout .contents nav { display:flex; flex-direction:column; align-items:stretch; }
.safety-faq-layout .contents a { font-size:16px; padding-block:12px; color:var(--brand); }
.safety-faq-group { margin-bottom:46px; scroll-margin-top:25px; }
.safety-faq-group h3 { font-size:26px; margin:0 0 20px; }
.safety-faq-group details { border-top:1px solid var(--line); border-bottom:0; }
.safety-faq-group details:last-child { border-bottom:1px solid var(--line); }
.safety-faq-group summary { padding:21px 35px 21px 0; font-size:19px; line-height:1.5; cursor:pointer; }
.safety-answer { padding:0 24px 22px 0; }
.safety-answer p { margin:0; font-size:17px; line-height:1.8; }
.safety-next { display:grid; grid-template-columns:1.5fr 1fr; align-items:center; gap:50px; padding-block:40px; border-block:1px solid var(--line); }
.safety-next h2 { font-size:30px; }
.safety-next a { display:block; padding-block:12px; }
.safety-sources { padding-block:40px 65px; }
.safety-sources h2 { font-size:25px; }
.safety-sources p,.safety-sources li { font-size:15px; }
.safety-sources li { padding-block:7px; }
.safety-questions [hidden] { display:none!important; }
@media(max-width:800px){
 .safety-faq-layout { grid-template-columns:1fr; gap:30px; }
 .safety-faq-layout .contents { position:static; }
 .safety-faq-layout .contents nav { display:grid; grid-template-columns:1fr 1fr; gap:0 15px; }
 .safety-next { grid-template-columns:1fr; gap:15px; }
}
@media(max-width:550px){
 .safety-pair { grid-template-columns:1fr; gap:4px; }
 .safety-help { padding:22px 18px; }
 .safety-help ol { padding-left:20px; }
 .safety-script blockquote { font-size:21px; }
 .safety-faq-group summary { font-size:18px; }
 .safety-faq-group h3 { font-size:24px; }
 .safety-faq-layout .contents a { font-size:15px; }
 .safety-answer { padding-right:0; }
}
