/* =====================================================
   CONTENT PAGES
   Shared by: production, services, supply, industries,
   standards, projects, about — all editable from
   inside Edit Page (title, excerpt, featured image,
   and the main content editor).
===================================================== */

.content-hero{
    position:relative;
    padding:80px 0 60px;
    background:var(--light);
    text-align:center;
    overflow:hidden;
}

.content-hero.has-bg-image{
    background-size:cover;
    background-position:center;
    padding:130px 0 100px;
}

.content-hero-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(180deg, rgba(20,41,59,.55), rgba(20,41,59,.82));
}

.content-hero .container{
    position:relative;
    z-index:1;
}

.content-hero h1{
    color:var(--primary);
    font-size:36px;
    margin:0 0 15px;
}

.content-hero p{
    color:var(--secondary);
    font-size:17px;
    max-width:720px;
    margin:0 auto;
}

.content-hero.has-bg-image h1{
    color:#fff;
}

.content-hero.has-bg-image p{
    color:#e4e9ed;
}

.content-hero.has-bg-image .section-badge{
    background:rgba(255,255,255,.12);
    border-color:rgba(255,255,255,.3);
    color:#fff;
}

.content-hero .section-badge{
    position:relative;
    z-index:1;
}


/* ================= CONTENT BLOCK ================= */

.content-block{
    padding:60px 0;
}

.content-block.alt-bg{
    background:var(--light);
}


/* ================= ENTRY CONTENT
   Generic styling for whatever the Page editor outputs —
   no custom classes required, so it stays editable. ================= */

.entry-content{
    max-width:900px;
    margin:0 auto;
    color:#454f57;
    font-size:16.5px;
    line-height:2.1;
}

.entry-content h2{
    color:var(--primary);
    font-size:26px;
    margin:38px 0 16px;
}

.entry-content h2:first-child{
    margin-top:0;
}

.entry-content h3{
    color:var(--primary);
    font-size:19px;
    margin:26px 0 12px;
}

.entry-content p{
    margin:0 0 16px;
}

.entry-content ul,
.entry-content ol{
    margin:0 0 22px;
    padding-right:22px;
}

.entry-content ul{
    list-style:disc;
}

.entry-content ol{
    list-style:decimal;
}

.entry-content li{
    margin-bottom:9px;
}

.entry-content strong{
    color:var(--primary);
}

.entry-content table{
    margin:10px 0 26px;
}

.entry-content img{
    border-radius:16px;
    margin:10px 0 26px;
}

.entry-content a{
    color:var(--accent);
    font-weight:600;
    text-decoration:underline;
}

.entry-content blockquote{
    margin:24px 0;
    padding:18px 22px;
    background:#FFF4EC;
    border-right:4px solid var(--accent);
    border-radius:8px;
    color:#7a3c08;
    font-size:15px;
    line-height:1.9;
}

.entry-content blockquote p{
    margin:0;
}

.entry-content li::marker{
    color:var(--accent);
    font-weight:700;
}

.entry-content h2[id],
.entry-content h3[id]{
    scroll-margin-top:28px;
}

.content-callout{
    margin:30px 0 4px;
    padding:22px 24px;
    background:linear-gradient(135deg,#fff5ed,#fffaf7);
    border:1px solid #f2d4c3;
    border-right:4px solid var(--accent);
    border-radius:14px;
}

.content-callout strong{
    display:block;
    margin-bottom:6px;
}

.content-callout p:last-child{
    margin-bottom:0;
}

.content-reading-shell .entry-content a,
.contact-entry-content a{
    text-underline-offset:3px;
}

.content-reading-shell .entry-content table{
    min-width:560px;
}


/* ================= RESPONSIVE ================= */

@media(max-width:600px){

    .content-hero h1{
        font-size:27px;
    }

    .content-hero.has-bg-image{
        padding:90px 0 60px;
    }

}
