/* VoIP / business phone system article. Layered on top of the shared
   cyber-risks-article.css; only the components unique to this page live here. */

.rd-voip-page {
    --voip-navy: #07111f;
    --voip-ink: #16233a;
    --voip-blue: #2c66cc;
    --voip-cyan: #39bed2;
    --voip-muted: #5a6981;
    --voip-line: #dbe7f8;
    --voip-soft: #f3f8fc;
}

/* Hero price snapshot (replaces the video used on other articles) */
.rd-voip-snapshot {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 26px;
    border: 1px solid rgba(141, 222, 234, .3);
    background: linear-gradient(180deg, #ffffff, #eaf3ff);
    box-shadow: 0 24px 46px rgba(4, 14, 25, .32);
}

.rd-voip-snapshot__label {
    margin: 0;
    color: var(--voip-blue);
    font: 700 12px/1.3 "Open Sans", sans-serif;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.rd-voip-snapshot__row {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 16px;
    padding: 12px 16px;
    border: 1px solid var(--voip-line);
    border-radius: 12px;
    background: var(--voip-soft);
}

.rd-voip-snapshot__row span {
    font: 700 16px/1.2 "Ubuntu", sans-serif;
    color: var(--voip-ink);
}

.rd-voip-snapshot__row strong {
    font: 700 20px/1.2 "Ubuntu", sans-serif;
    color: var(--voip-blue);
    white-space: nowrap;
}

.rd-voip-snapshot__row--accent {
    border-color: #bfe9f2;
    background: #eafaff;
}

.rd-voip-snapshot__row--accent strong { color: #1290ad; }

.rd-voip-snapshot__foot {
    margin: 2px 2px 0;
    color: var(--voip-muted);
    font: 400 13px/1.4 "Open Sans", sans-serif;
}

/* Pricing and comparison tables */
.rd-voip-table-wrap {
    margin: 26px 0;
    overflow-x: auto;
    border: 1px solid var(--voip-line);
    border-radius: 14px;
    -webkit-overflow-scrolling: touch;
}

.rd-voip-table {
    width: 100%;
    min-width: 560px;
    border-collapse: collapse;
    font-family: "Open Sans", sans-serif;
}

.rd-voip-table caption {
    padding: 14px 18px;
    text-align: left;
    color: var(--voip-muted);
    font-size: 13px;
    border-bottom: 1px solid var(--voip-line);
    background: var(--voip-soft);
}

.rd-voip-table th,
.rd-voip-table td {
    padding: 14px 18px;
    text-align: left;
    vertical-align: top;
    border-bottom: 1px solid var(--voip-line);
    font-size: 15px;
    line-height: 1.55;
    color: var(--voip-ink);
}

.rd-voip-table thead th {
    background: var(--voip-navy);
    color: #eaf6ff;
    font: 700 14px/1.4 "Ubuntu", sans-serif;
    border-bottom: 0;
}

.rd-voip-table tbody tr:nth-child(even) td { background: #f7fbff; }
.rd-voip-table tbody tr:last-child td { border-bottom: 0; }

.rd-voip-table td:first-child,
.rd-voip-table th:first-child { font-weight: 700; }

.rd-voip-table .rd-voip-price {
    white-space: nowrap;
    color: var(--voip-blue);
    font-weight: 700;
}

.rd-voip-yes { color: #13a877; font-weight: 700; }
.rd-voip-no { color: #b23b4d; font-weight: 700; }

/* 10-person cost breakdown (label + verbatim detail) */
.rd-voip-breakdown {
    margin: 24px 0;
    padding: 0;
    border: 1px solid var(--voip-line);
    border-radius: 14px;
    overflow: hidden;
    list-style: none;
}

.rd-voip-breakdown li {
    padding: 15px 20px;
    border-bottom: 1px solid var(--voip-line);
    font-family: "Open Sans", sans-serif;
    font-size: 15px;
    line-height: 1.55;
    color: var(--voip-ink);
}

.rd-voip-breakdown li:last-child { border-bottom: 0; }
.rd-voip-breakdown li:nth-child(even) { background: #f7fbff; }

.rd-voip-breakdown li b {
    color: var(--voip-blue);
    font: 700 15px/1.4 "Ubuntu", sans-serif;
}

/* Affected-systems list (copper switch-off) */
.rd-voip-affected {
    display: grid;
    gap: 10px;
    margin: 18px 0;
    padding: 0;
    list-style: none;
}

.rd-voip-affected li {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 13px 18px;
    border: 1px solid var(--voip-line);
    border-radius: 12px;
    background: #fff;
    font: 600 15px/1.3 "Open Sans", sans-serif;
    color: var(--voip-ink);
}

.rd-voip-affected i {
    flex: 0 0 auto;
    display: inline-flex;
    width: 34px;
    height: 34px;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    background: linear-gradient(135deg, var(--voip-blue), var(--voip-cyan));
    color: #fff;
    font-size: 14px;
}

/* Provider-selection cards (replaces a plain checklist) */
.rd-voip-checks {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin: 26px 0;
}

.rd-voip-checks article {
    display: flex;
    gap: 16px;
    padding: 20px 22px;
    border: 1px solid var(--voip-line);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(20, 60, 120, .05);
}

.rd-voip-checks i {
    flex: 0 0 auto;
    display: inline-flex;
    width: 42px;
    height: 42px;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    background: linear-gradient(135deg, var(--voip-blue), var(--voip-cyan));
    color: #fff;
    font-size: 17px;
}

.rd-voip-checks h3 {
    margin: 0 0 5px;
    font: 700 16px/1.3 "Ubuntu", sans-serif;
    color: var(--voip-ink);
}

.rd-voip-checks p {
    margin: 0;
    color: var(--voip-muted);
    font-size: 15px;
    line-height: 1.55;
}

/* Copper switch-off panel */
.rd-voip-switchoff {
    margin: 24px 0;
    padding: 24px 26px;
    border: 1px solid var(--voip-line);
    border-left: 4px solid var(--voip-cyan);
    border-radius: 14px;
    background: linear-gradient(180deg, #f5fbfd, #eef6ff);
}

.rd-voip-switchoff__head {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
}

.rd-voip-switchoff__head i {
    display: inline-flex;
    width: 40px;
    height: 40px;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: var(--voip-navy);
    color: #6fe3f6;
    font-size: 17px;
}

.rd-voip-switchoff__head strong {
    font: 700 17px/1.2 "Ubuntu", sans-serif;
    color: var(--voip-ink);
}

.rd-voip-switchoff__points {
    display: grid;
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.rd-voip-switchoff__points li {
    position: relative;
    padding-left: 26px;
    color: var(--voip-ink);
    font-size: 15px;
    line-height: 1.55;
}

.rd-voip-switchoff__points li::before {
    position: absolute;
    left: 4px;
    top: 7px;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--voip-cyan);
    content: "";
}

@media (max-width: 720px) {
    .rd-voip-checks { grid-template-columns: 1fr; }
}
