:root{
    --pcms-black:#111111;
    --pcms-dark:#1b1b1b;
    --pcms-cream:#f7f3eb;
    --pcms-paper:#fffdf9;
    --pcms-line:#ddd6ca;
    --pcms-red:#a73c3c;
    --pcms-muted:#66615a;
}

.pcms-page{
    background:var(--pcms-paper);
    color:var(--pcms-black);
    min-height:70vh;
}

.pcms-wrap{
    width:min(1180px,calc(100% - 40px));
    margin:0 auto;
}

.pcms-masthead{
    background:var(--pcms-black);
    color:#fff;
    padding:56px 0 50px;
    border-bottom:5px solid var(--pcms-red);
}

.pcms-masthead-inner{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:40px;
}

.pcms-eyebrow{
    display:block;
    font-size:12px;
    line-height:1;
    letter-spacing:.18em;
    font-weight:800;
    margin-bottom:14px;
}

.pcms-masthead h1{
    margin:0;
    color:#fff;
    font-size:clamp(48px,8vw,92px);
    line-height:.85;
    letter-spacing:-.055em;
    font-weight:900;
}

.pcms-masthead p{
    max-width:690px;
    color:#d8d3ca;
    font-size:18px;
    line-height:1.55;
    margin:25px 0 0;
}

.pcms-masthead-mark{
    min-width:170px;
    border-left:1px solid #444;
    padding-left:28px;
    font-size:52px;
    line-height:.8;
    font-weight:900;
    text-align:left;
}

.pcms-masthead-mark span{
    display:block;
    font-size:10px;
    letter-spacing:.16em;
    margin-top:12px;
    color:#c9c3bb;
}

.pcms-tabs{
    background:#fff;
    border-bottom:1px solid var(--pcms-line);
    position:sticky;
    top:0;
    z-index:30;
}

.pcms-tabs-scroll{
    display:flex;
    overflow-x:auto;
    scrollbar-width:none;
}

.pcms-tabs-scroll::-webkit-scrollbar{
    display:none;
}

.pcms-tabs a{
    display:flex;
    align-items:center;
    min-height:58px;
    white-space:nowrap;
    padding:0 19px;
    color:#333;
    text-decoration:none;
    font-size:14px;
    font-weight:750;
    border-bottom:3px solid transparent;
}

.pcms-tabs a:first-child{
    padding-left:0;
}

.pcms-tabs a:hover,
.pcms-tabs a.active{
    color:var(--pcms-black);
    border-bottom-color:var(--pcms-red);
}

.pcms-lead{
    padding-top:48px;
}

.pcms-lead-card{
    display:grid;
    grid-template-columns:minmax(0,1.55fr) minmax(330px,.85fr);
    background:var(--pcms-black);
    text-decoration:none;
    color:#fff;
    overflow:hidden;
}

.pcms-lead-image{
    min-height:520px;
}

.pcms-lead-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.pcms-lead-copy{
    padding:46px;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.pcms-lead-copy h2{
    color:#fff;
    font-size:clamp(32px,4vw,52px);
    line-height:1.02;
    letter-spacing:-.035em;
    margin:20px 0;
}

.pcms-lead-copy p{
    color:#d8d3ca;
    font-size:17px;
    line-height:1.6;
    margin:0 0 24px;
}

.pcms-lead-copy strong{
    color:#fff;
    font-size:14px;
}

.pcms-meta{
    display:flex;
    flex-wrap:wrap;
    gap:11px 16px;
    align-items:center;
    font-size:11px;
    letter-spacing:.08em;
    font-weight:800;
    text-transform:uppercase;
}

.pcms-meta time{
    color:#8a857d;
}

.pcms-lead .pcms-meta time{
    color:#b9b3ab;
}

.pcms-breaking{
    background:var(--pcms-red);
    color:#fff;
    padding:5px 8px;
}

.pcms-section{
    padding-top:65px;
    padding-bottom:20px;
}

.pcms-section-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    gap:35px;
    border-top:4px solid var(--pcms-black);
    padding-top:20px;
    margin-bottom:28px;
}

.pcms-section-head h2{
    margin:0;
    font-size:clamp(30px,4vw,46px);
    letter-spacing:-.04em;
    line-height:1;
}

.pcms-section-head p{
    max-width:480px;
    margin:0;
    color:var(--pcms-muted);
    line-height:1.55;
}

.pcms-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:34px 24px;
}

.pcms-card{
    border-bottom:1px solid var(--pcms-line);
    padding-bottom:24px;
}

.pcms-card-image{
    display:block;
    aspect-ratio:16/10;
    overflow:hidden;
    background:#eee;
    margin-bottom:18px;
}

.pcms-card-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:transform .3s ease;
}

.pcms-card:hover .pcms-card-image img{
    transform:scale(1.025);
}

.pcms-card h2,
.pcms-card h3{
    margin:11px 0 10px;
    font-size:24px;
    line-height:1.12;
    letter-spacing:-.025em;
}

.pcms-card h2 a,
.pcms-card h3 a{
    color:var(--pcms-black);
    text-decoration:none;
}

.pcms-card p{
    margin:0;
    color:var(--pcms-muted);
    line-height:1.55;
}

.pcms-discipline{
    padding-top:72px;
}

.pcms-view-all{
    color:var(--pcms-black);
    text-decoration:none;
    font-weight:800;
    white-space:nowrap;
}

.pcms-mini-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:20px;
}

.pcms-mini-image{
    display:block;
    aspect-ratio:4/3;
    overflow:hidden;
    margin-bottom:13px;
    background:#eee;
}

.pcms-mini-image img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.pcms-mini-card time,
.pcms-related time{
    color:#7d776f;
    font-size:12px;
    font-weight:700;
}

.pcms-mini-card h3{
    font-size:18px;
    line-height:1.18;
    margin:7px 0 0;
}

.pcms-mini-card h3 a,
.pcms-related h3 a{
    color:var(--pcms-black);
    text-decoration:none;
}

.pcms-empty-hero,
.pcms-empty{
    margin-top:48px;
    padding:70px;
    background:var(--pcms-cream);
    border:1px solid var(--pcms-line);
}

.pcms-empty-hero h2,
.pcms-empty h2{
    font-size:clamp(32px,5vw,54px);
    letter-spacing:-.04em;
    line-height:1;
    margin:0 0 18px;
}

.pcms-empty-hero p,
.pcms-empty p{
    max-width:650px;
    color:var(--pcms-muted);
    font-size:17px;
    line-height:1.6;
}

.pcms-category-head{
    background:var(--pcms-cream);
    border-bottom:1px solid var(--pcms-line);
    padding:58px 0 48px;
}

.pcms-category-head h1{
    font-size:clamp(48px,8vw,82px);
    line-height:.9;
    letter-spacing:-.055em;
    margin:16px 0 20px;
}

.pcms-category-head p{
    max-width:720px;
    font-size:18px;
    line-height:1.55;
    color:var(--pcms-muted);
}

.pcms-back{
    display:inline-block;
    color:#555;
    font-weight:750;
    text-decoration:none;
    margin-bottom:28px;
}

.pcms-article{
    width:min(900px,calc(100% - 40px));
    margin:0 auto;
    padding:55px 0 80px;
}

.pcms-article-head h1{
    font-size:clamp(42px,7vw,74px);
    line-height:.98;
    letter-spacing:-.05em;
    margin:18px 0 20px;
}

.pcms-dek{
    font-size:21px;
    line-height:1.55;
    color:#4f4b45;
    margin:24px 0 34px;
}

.pcms-hero{
    margin:34px 0 0;
}

.pcms-hero img{
    width:100%;
    height:auto;
    display:block;
}

.pcms-hero figcaption{
    display:block;
    color:#76716a;
    font-size:12px;
    margin-top:9px;
}

.pcms-article-content{
    width:min(740px,100%);
    margin:45px auto 0;
    font-size:18px;
    line-height:1.78;
}

.pcms-article-content p{
    margin:0 0 24px;
}

.pcms-article-content h2{
    font-size:34px;
    line-height:1.1;
    letter-spacing:-.03em;
    margin:48px 0 18px;
}

.pcms-article-content h3{
    font-size:25px;
    margin:35px 0 14px;
}

.pcms-article-content img{
    max-width:100%;
    height:auto;
}

.pcms-sources,
.pcms-related{
    width:min(740px,100%);
    margin:55px auto 0;
    border-top:1px solid var(--pcms-line);
    padding-top:28px;
}

.pcms-sources h2{
    font-size:28px;
    margin:0 0 18px;
}

.pcms-sources a{
    display:block;
    color:var(--pcms-black);
    padding:11px 0;
    border-bottom:1px solid #ebe6dd;
    word-break:break-word;
}

.pcms-related-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:20px;
}

.pcms-related h3{
    margin:7px 0 0;
    font-size:18px;
    line-height:1.25;
}

.pcms-pagination{
    margin-top:45px;
}

@media(max-width:900px){

    .pcms-masthead-inner{
        align-items:flex-start;
    }

    .pcms-masthead-mark{
        display:none;
    }

    .pcms-lead-card{
        grid-template-columns:1fr;
    }

    .pcms-lead-image{
        min-height:0;
        aspect-ratio:16/10;
    }

    .pcms-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .pcms-mini-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:640px){

    .pcms-wrap,
    .pcms-article{
        width:min(100% - 28px,1180px);
    }

    .pcms-masthead{
        padding:38px 0 34px;
    }

    .pcms-masthead h1{
        font-size:52px;
    }

    .pcms-masthead p{
        font-size:16px;
    }

    .pcms-tabs a{
        min-height:52px;
        padding:0 14px;
        font-size:13px;
    }

    .pcms-lead{
        padding-top:26px;
    }

    .pcms-lead-copy{
        padding:28px 23px 31px;
    }

    .pcms-lead-copy h2{
        font-size:33px;
    }

    .pcms-section{
        padding-top:48px;
    }

    .pcms-section-head{
        display:block;
    }

    .pcms-section-head p,
    .pcms-view-all{
        display:block;
        margin-top:14px;
    }

    .pcms-grid,
    .pcms-mini-grid,
    .pcms-related-grid{
        grid-template-columns:1fr;
    }

    .pcms-card h2,
    .pcms-card h3{
        font-size:23px;
    }

    .pcms-empty-hero,
    .pcms-empty{
        padding:40px 24px;
    }

    .pcms-category-head{
        padding:42px 0 35px;
    }

    .pcms-category-head h1{
        font-size:50px;
    }

    .pcms-article{
        padding-top:35px;
    }

    .pcms-article-head h1{
        font-size:40px;
    }

    .pcms-dek{
        font-size:18px;
    }

    .pcms-article-content{
        font-size:17px;
        line-height:1.7;
    }

    .pcms-article-content h2{
        font-size:29px;
    }
}

/* PURECAR MOTORSPORT HEADER IMAGE FORCE */
.pcms-masthead{
    position:relative !important;
    overflow:hidden !important;
    isolation:isolate !important;
}

.pcms-masthead::before{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    z-index:-2 !important;
    display:block !important;
    background-image:
        linear-gradient(
            90deg,
            rgba(17,17,17,.98) 0%,
            rgba(17,17,17,.90) 38%,
            rgba(17,17,17,.52) 67%,
            rgba(17,17,17,.12) 100%
        ),
        url('/images/motorsport/motorsport-header.jpg') !important;
    background-size:cover !important;
    background-position:center 58% !important;
    background-repeat:no-repeat !important;
}


/* PURECAR MOTORSPORT HEADER IMAGE FORCE */
.pcms-masthead{
    position:relative !important;
    overflow:hidden !important;
    isolation:isolate !important;
}

.pcms-masthead::before{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    z-index:-2 !important;
    display:block !important;
    background-image:
        linear-gradient(
            90deg,
            rgba(17,17,17,.98) 0%,
            rgba(17,17,17,.90) 38%,
            rgba(17,17,17,.52) 67%,
            rgba(17,17,17,.12) 100%
        ),
        url('/images/motorsport/motorsport-header.jpg') !important;
    background-size:cover !important;
    background-position:center 58% !important;
    background-repeat:no-repeat !important;
}

