/* NEWS V1 — EDITORIAL HORIZONTAL LAYOUT */

.nv1,.nv1 *,.nv1 *::before,.nv1 *::after{
    box-sizing:border-box
}
.nv1{
    --n-ink:#0f3853;
    --n-navy:#082840;
    --n-blue:#1e7eae;
    --n-muted:#607f95;
    --n-line:#d6e5ee;
    --n-orange:#ff7048;
    background:#f4f8fb;
    color:var(--n-ink);
    width:100%;
    overflow:clip;
    font-family:inherit
}
.nv1 a{
    text-decoration:none;
    color:inherit
}
.nv1__wrap{
    max-width:1450px;
    margin:0 auto;
    padding-left:clamp(20px,4vw,64px);
    padding-right:clamp(20px,4vw,64px)
}
.nv1__masthead{
    background:var(--n-navy);
    color:#fff;
    position:relative;
    overflow:hidden
}
.nv1__masthead-inner{
    min-height:340px;
    display:grid;
    grid-template-columns:1fr 240px;
    gap:30px;
    align-items:center;
    padding-top:65px;
    padding-bottom:65px
}
.nv1__kicker{
    display:flex;
    align-items:center;
    gap:13px;
    font-size:11px;
    font-weight:800;
    letter-spacing:.17em;
    color:#91c9eb
}
.nv1__kicker i{
    width:30px;
    height:3px;
    background:var(--n-orange)
}
.nv1__masthead h1{
    font-size:clamp(38px,4.2vw,67px);
    line-height:1.07;
    letter-spacing:-.055em;
    font-weight:900;
    margin:25px 0 16px;
    color:#fff
}
.nv1__masthead p{
    max-width:780px;
    font-size:clamp(15px,1.35vw,18px);
    line-height:1.7;
    color:#b9d8e8;
    margin:0
}
.nv1__masthead-mark{
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:15px;
    color:#86bad5;
    border-right:3px solid var(--n-orange);
    padding-right:20px
}
.nv1__masthead-mark span{
    font-size:43px;
    line-height:1;
    font-weight:900;
    letter-spacing:-.075em;
    color:#84b6d4
}
.nv1__masthead-mark small{
    letter-spacing:.18em;
    font-size:10px;
    font-weight:800
}
.nv1__listing{
    padding-top:54px;
    padding-bottom:120px;
    min-height:400px
}
.nv1__bar{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    flex-wrap:wrap;
    margin-bottom:23px
}
.nv1__section-label{
    font-size:11px;
    color:#6b8ca2;
    font-weight:900;
    letter-spacing:.15em
}
.nv1__filters{
    display:flex;
    flex-wrap:wrap;
    gap:5px
}
.nv1__filter{
    padding:13px 17px;
    color:#416782!important;
    border:1px solid transparent;
    font-size:11px;
    letter-spacing:.06em;
    font-weight:850;
    line-height:1.4;
    transition:background .2s,border-color .2s
}
.nv1__filter.is-active,
.nv1__filter:hover{
    color:#fff!important;
    background:#0c3856;
    border-color:#0c3856
}
.nv1__filter sup{
    font-size:10px;
    margin-left:7px;
    opacity:.65
}
.nv1__feed{
    border-top:1px solid var(--n-line)
}
.nv1__story{
    display:grid;
    grid-template-columns:125px minmax(0,1fr) minmax(180px,35%);
    align-items:center;
    gap:clamp(22px,3.1vw,52px);
    border-bottom:1px solid var(--n-line);
    padding:31px 13px;
    transition:background .2s
}
.nv1__story:hover{
    background:#eaf3f8
}
.nv1__story-meta{
    display:flex;
    flex-direction:column;
    gap:12px;
    align-self:start;
    padding-top:6px
}
.nv1__story-category{
    font-size:11px;
    color:var(--n-blue);
    font-weight:900;
    letter-spacing:.09em;
    line-height:1.55
}
.nv1__story-meta time{
    font-size:12px;
    color:#7692a6;
    line-height:1.5;
    white-space:nowrap
}
.nv1__story h2{
    font-size:clamp(23px,2.35vw,35px);
    line-height:1.22;
    letter-spacing:-.034em;
    font-weight:850;
    margin:0 0 17px;
    color:#103c59
}
.nv1__story h2 a:hover{
    color:#167fb3
}
.nv1__story-content p{
    font-size:15px;
    color:#5c7c91;
    line-height:1.8;
    margin:0 0 23px;
    max-width:680px
}
.nv1__read{
    display:inline-flex;
    gap:17px;
    align-items:center;
    font-size:10px;
    font-weight:900;
    letter-spacing:.08em;
    color:#187cae!important
}
.nv1__read:hover{
    color:#f16b42!important
}
.nv1__story-photo{
    display:block;
    position:relative;
    aspect-ratio:16/10;
    overflow:hidden;
    background:#d9e8f0;
    border-radius:1px
}
.nv1__story-photo img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .4s
}
.nv1__story:hover .nv1__story-photo img{
    transform:scale(1.035)
}
.nv1__empty{
    padding:65px 25px;
    font-size:16px;
    color:#627f93;
    text-align:center
}
.nv1__detail-hero{
    background:#092c45;
    color:#fff;
    padding:76px 0 84px
}
.nv1__back{
    display:inline-flex;
    align-items:center;
    gap:13px;
    font-size:11px;
    font-weight:850;
    letter-spacing:.09em;
    color:#9ed5f1!important;
    margin-bottom:53px
}
.nv1__back:hover{
    color:#fff!important
}
.nv1__detail-meta{
    display:flex;
    align-items:center;
    gap:25px;
    font-size:11px;
    color:#a6d2e9;
    letter-spacing:.08em;
    font-weight:850
}
.nv1__detail-meta time{
    font-weight:500;
    color:#85aec5
}
.nv1__detail-hero h1{
    font-size:clamp(38px,5vw,72px);
    line-height:1.13;
    letter-spacing:-.052em;
    font-weight:900;
    color:#fff;
    max-width:1120px;
    margin:25px 0 21px
}
.nv1__detail-hero p{
    font-size:clamp(16px,1.6vw,21px);
    line-height:1.7;
    max-width:860px;
    color:#bbd8e8;
    margin:0
}
.nv1__detail-layout{
    padding-top:45px;
    padding-bottom:90px
}
.nv1__detail-photo{
    margin:0 auto 48px;
    max-width:1070px;
    background:#e4f1f7
}
.nv1__detail-photo img{
    display:block;
    width:100%;
    max-height:570px;
    object-fit:cover
}
.nv1__detail-body{
    max-width:850px;
    margin:auto
}
.nv1__detail-body p{
    margin:0;
    font-size:clamp(17px,1.7vw,21px);
    line-height:1.9;
    color:#294e67;
    white-space:normal
}
.nv1__detail-links{
    max-width:850px;
    margin:44px auto 0;
    padding-top:24px;
    border-top:1px solid #cddfea;
    display:flex;
    gap:15px 35px;
    flex-wrap:wrap
}
.nv1__detail-links a{
    display:inline-flex;
    align-items:center;
    gap:12px;
    color:#1978a7!important;
    font-size:11px;
    font-weight:900;
    letter-spacing:.09em
}
.nv1__related{
    background:#e9f3f8;
    padding:70px 0 85px
}
.nv1__related h2{
    margin:0 0 24px;
    font-size:clamp(29px,3vw,43px);
    letter-spacing:-.04em;
    color:#113c57
}
.nv1__related a{
    display:grid;
    grid-template-columns:110px 1fr 18px;
    gap:20px;
    align-items:center;
    border-top:1px solid #cadfeb;
    padding:24px 4px
}
.nv1__related a:last-child{
    border-bottom:1px solid #cadfeb
}
.nv1__related a>span{
    font-size:11px;
    font-weight:900;
    color:#2483b5
}
.nv1__related a>strong{
    font-size:18px;
    line-height:1.4
}
.nv1__related a>i{
    color:#258ab7
}
@media(max-width:1000px){
    .nv1__story{
        grid-template-columns:94px minmax(0,1fr) minmax(180px,32%);
        gap:22px
    }
    .nv1__story h2{
        font-size:25px
    }
}
@media(max-width:740px){
    .nv1__masthead-inner{
        grid-template-columns:1fr;
        min-height:0;
        padding-top:62px;
        padding-bottom:66px
    }
    .nv1__masthead-mark{
        display:none
    }
    .nv1__story{
        grid-template-columns:1fr minmax(125px,35%);
        gap:17px;
        padding:27px 0
    }
    .nv1__story-meta{
        grid-column:1/-1;
        flex-direction:row;
        align-items:center;
        gap:20px;
        padding:0
    }
    .nv1__listing{
        padding-top:40px;
        padding-bottom:80px
    }
    .nv1__story h2{
        font-size:23px
    }
    .nv1__story-content p{
        font-size:13px
    }
    .nv1__detail-hero{
        padding:50px 0 62px
    }
    .nv1__back{
        margin-bottom:35px
    }
}
@media(max-width:480px){
    .nv1__masthead h1{
        font-size:37px
    }
    .nv1__filters{
        width:100%
    }
    .nv1__filter{
        flex:1;
        text-align:center;
        padding:12px 8px
    }
    .nv1__bar{
        gap:18px
    }
    .nv1__story{
        grid-template-columns:1fr;
        gap:16px
    }
    .nv1__story-meta{
        grid-column:1
    }
    .nv1__story-photo{
        grid-row:2;
        aspect-ratio:16/9
    }
    .nv1__story-content{
        grid-row:3
    }
    .nv1__story h2{
        font-size:26px;
        margin-bottom:11px
    }
    .nv1__story-content p{
        margin-bottom:18px
    }
    .nv1__related a{
        grid-template-columns:1fr 15px;
        gap:9px
    }
    .nv1__related a>span{
        grid-column:1/-1
    }
    .nv1__related a>strong{
        font-size:16px
    }
}
@media(prefers-reduced-motion:reduce){
    .nv1__story,.nv1__filter,.nv1__story-photo img{
        transition:none
    }
}


/* NEWS_CTA_V1_1 — scoped editorial button */
.nv1 .nv1__story .nv1__read,
.nv1 .nv1__story .nv1__read:visited {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    min-height: 45px;
    padding: 12px 20px;
    background: #ff7048;
    border: 1px solid #ff7048;
    border-radius: 0;
    color: #fff !important;
    font-size: 11px;
    font-weight: 850;
    line-height: 1.5;
    letter-spacing: .055em;
    text-decoration: none !important;
    box-shadow: none;
    white-space: nowrap;
    transition:
        background .2s ease,
        border-color .2s ease,
        transform .2s ease;
}

.nv1 .nv1__story .nv1__read:hover {
    background: #e85a32;
    border-color: #e85a32;
    color: #fff !important;
    text-decoration: none !important;
    transform: translateY(-2px);
}

.nv1 .nv1__story .nv1__read:focus-visible {
    outline: 3px solid #167eb2;
    outline-offset: 3px;
}

.nv1 .nv1__story .nv1__read i {
    display: inline-block;
    font-size: 12px;
    color: inherit;
    line-height: 1;
}

@media (prefers-reduced-motion: reduce) {
    .nv1 .nv1__story .nv1__read {
        transition: none;
    }
}


/* NEWS_HEADING_SPACING_V1_2 */

.nv1 .nv1__masthead h1 {
    letter-spacing: .025em;
    word-spacing: .14em;
    line-height: 1.15;
    text-wrap: balance;
}

/* Keep the long AZ heading clear of the right-side KAMAZ label */
@media (min-width: 741px) and (max-width: 1250px) {
    .nv1 .nv1__masthead h1 {
        font-size: clamp(35px, 3.85vw, 62px);
    }
}

/* Mobile typography */
@media (max-width: 740px) {
    .nv1 .nv1__masthead h1 {
        letter-spacing: .015em;
        word-spacing: .12em;
        overflow-wrap: normal;
    }
}

@media (max-width: 480px) {
    .nv1 .nv1__masthead h1 {
        font-size: clamp(30px, 8.5vw, 37px);
    }
}
