.safety-container { max-width: 960px; }

.safety-hero { padding: 5.5rem 0 2rem; text-align: center; }
.safety-hero h1 { font-size: clamp(2.8rem, 7vw, 5rem); margin-bottom: 1rem; }
.safety-lead { max-width: 680px; margin: 0 auto; color: var(--text-muted); font-size: 1.12rem; }

.warning-mark {
  display: grid; place-items: center; width: 76px; height: 68px; margin: 0 auto 1.5rem;
  color: #1a1600; font-size: 2.1rem; font-weight: 800;
  background: linear-gradient(145deg, #ffe36d, var(--accent));
  clip-path: polygon(50% 0, 100% 100%, 0 100%);
  padding-top: 17px; filter: drop-shadow(0 10px 24px rgba(241, 197, 14, 0.22));
}

.critical-warning {
  margin-top: 2.5rem; padding: 1.7rem 2rem; text-align: left;
  border: 1px solid rgba(239, 68, 68, 0.55); border-left: 5px solid #ef4444;
  border-radius: var(--radius); background: linear-gradient(110deg, rgba(239, 68, 68, 0.14), rgba(255,255,255,0.025));
  box-shadow: var(--shadow-soft);
}
.critical-warning > strong { color: #ff8f8f; font-size: 1.2rem; }
.critical-warning p { margin-top: 0.6rem; color: var(--text-main); }

.notice-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.notice-card { padding: 1.8rem; }
.notice-card:hover { transform: none; }
.notice-card .number { color: var(--accent); font-size: 0.75rem; font-weight: 800; letter-spacing: 0.16em; }
.notice-card h2 { margin: 0.45rem 0 0.9rem; font-size: 1.3rem; }
.notice-card p, .responsibility-panel p, .stop-panel p, .legal-note { color: var(--text-muted); }

.responsibility-panel { margin-top: 1rem; padding: 2.3rem; border: 1px solid var(--border); border-radius: var(--radius-lg); background: var(--panel); }
.responsibility-panel h2 { margin-bottom: 1rem; font-size: clamp(1.55rem, 4vw, 2.2rem); }
.responsibility-panel p + p { margin-top: 1rem; }
.responsibility-panel strong { color: var(--text-main); }

.stop-panel { margin-top: 1rem; padding: 2rem; border: 1px solid rgba(241, 197, 14, 0.35); border-radius: var(--radius); background: var(--accent-soft); }
.stop-panel h2 { color: #ffe274; font-size: 1.35rem; margin-bottom: 0.65rem; }
.legal-note { margin: 1.5rem auto 0; max-width: 800px; text-align: center; font-size: 0.86rem; }
.footer-simple { display: flex; align-items: center; justify-content: center; gap: 1.25rem; text-align: left; color: var(--text-muted); }
.footer-simple .footer-logo img { width: 110px; }
.footer-simple a { color: var(--accent); }

@media (max-width: 720px) {
  .safety-hero { padding-top: 3.5rem; }
  .notice-grid { grid-template-columns: 1fr; }
  .critical-warning, .notice-card, .responsibility-panel, .stop-panel { padding: 1.35rem; }
  .footer-simple { flex-direction: column; text-align: center; }
}
