/* Página de Contatos de Emergência (SOS) — layout clean */
.sos {
    max-width: 640px;
    margin: 0 auto;
    padding: 30px 16px 56px;
}

.sos-head {
    text-align: center;
    margin-bottom: 26px;
}

.sos-head h1 {
    font-size: 1.8rem;
    font-weight: 800;
    color: #0b2a5b;
    margin: 0 0 6px;
}

.sos-head p {
    color: #7b8494;
    font-size: 0.95rem;
    margin: 0;
}

.sos-group {
    margin-top: 28px;
    --accent: #0b2a5b;
}

.sos-group--emergencia { --accent: #e23b3b; }
.sos-group--denuncia   { --accent: #3b5bdb; }
.sos-group--utilidade  { --accent: #0ca678; }

.sos-group-title {
    font-size: 0.78rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #8893a5;
    font-weight: 700;
    margin: 0 0 8px;
    padding-left: 4px;
}

.sos-list {
    background: #fff;
    border: 1px solid #eef1f5;
    border-radius: 14px;
    overflow: hidden;
}

.sos-item {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 16px;
    text-decoration: none;
    color: inherit;
    border-top: 1px solid #f1f3f7;
    transition: background 0.15s ease;
}

.sos-item:first-child {
    border-top: none;
}

.sos-item:hover {
    background: #f8fafc;
}

.sos-num {
    flex-shrink: 0;
    min-width: 58px;
    text-align: center;
    font-size: 1.55rem;
    font-weight: 800;
    color: var(--accent);
    line-height: 1;
}

.sos-num--long {
    font-size: 0.9rem;
    font-weight: 700;
    line-height: 1.25;
}

.sos-text {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-width: 0;
}

.sos-name {
    font-weight: 600;
    color: #20293a;
    font-size: 0.97rem;
}

.sos-desc {
    color: #7b8494;
    font-size: 0.84rem;
    margin-top: 2px;
    line-height: 1.4;
}

.sos-act {
    flex-shrink: 0;
    color: #cbd2de;
    font-size: 1.2rem;
    transition: color 0.15s ease;
}

.sos-item:hover .sos-act {
    color: var(--accent);
}

.sos-item--wa .sos-act {
    color: #25d366;
}

.sos-note {
    margin: 28px auto 0;
    max-width: 520px;
    text-align: center;
    color: #9aa3af;
    font-size: 0.82rem;
    line-height: 1.5;
}

@media (max-width: 480px) {
    .sos-head h1 { font-size: 1.5rem; }
    .sos-num { min-width: 48px; font-size: 1.3rem; }
    .sos-item { padding: 13px 12px; gap: 10px; }
}
