.communication-now{
    min-width:0;
}

.communication-now > h1{
    margin:0 0 18px;
    color:var(--navy);
    font-size:32px;
    font-weight:950;
    line-height:1.05;
    letter-spacing:-.6px;
}

.communication-line{
    overflow:hidden;
    border:1px solid var(--line);
    border-top:4px solid var(--orange);
    border-radius:var(--card-radius);
    background:#fff;
    box-shadow:var(--shadow);
}

.communication-line > header{
    display:flex;
    align-items:center;
    gap:14px;
    padding:15px 18px;
    background:var(--navy);
    color:#fff;
}

.communication-line > header strong{
    display:flex;
    align-items:center;
    justify-content:center;
    min-width:64px;
    height:42px;
    border-radius:7px;
    background:#fff;
    color:var(--navy);
    font-size:25px;
    font-weight:950;
    line-height:1;
}

.communication-line > header span{
    font-size:15px;
    font-weight:800;
}

.communication-line > div{
    padding:18px;
    border-top:1px solid var(--line);
}

.communication-line > div h2{
    margin:0 0 13px;
    color:var(--navy);
    font-size:17px;
    font-weight:900;
}

.communication-line > div p{
    margin:8px 0;
    color:#465164;
    font-size:14px;
    line-height:1.4;
}

.communication-line ul{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin:13px 0 0;
    padding:0;
    list-style:none;
}

.communication-line li{
    min-width:58px;
    padding:8px 10px;
    border:1px solid var(--line);
    border-radius:6px;
    background:#f7f8fa;
    color:var(--navy);
    font-size:14px;
    font-weight:900;
    text-align:center;
}

@media(max-width:620px){
    .communication-now > h1{
        font-size:26px;
    }

    .communication-line > header{
        align-items:flex-start;
        flex-direction:column;
        gap:9px;
        padding:14px;
    }

    .communication-line > header strong{
        min-width:58px;
        height:38px;
        font-size:22px;
    }

    .communication-line > header span{
        font-size:13px;
    }

    .communication-line > div{
        padding:14px;
    }
}

.communication-map-wrap{
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
    background:#eef1f4;
}

.communication-map{
    width:100%;
    height:430px;
    background:#e8ebef;
}

@media(max-width:620px){
    .communication-map{
        height:330px;
    }
}

.communication-bus-icon-wrap{
    background:transparent;
    border:0;
}

.communication-bus-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    width:42px;
    height:28px;
    border:2px solid #fff;
    border-radius:6px;
    background:var(--navy);
    color:#fff;
    font-size:13px;
    font-weight:950;
    line-height:1;
    box-shadow:0 2px 8px rgba(0,0,0,.28);
}
