
/* Containers */
.cert-page {
    color: #193953;
    background: #fff;
}
.cert-page .cert-container {
    max-width: 1180px;
    width: 100%;
    margin: 0 auto;
    padding: 0 24px;
}

/* Hero — use Dutech typography and buttons */
.cert-page .cert-modern-hero {
    position: relative;
    min-height: 440px;
    padding: 0;
    background: #133b60;
    color: #fff;
    overflow: hidden;
}
.cert-page .cert-modern-hero .dutech-service-hero-content {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1220px;
    padding-top: 65px;
    padding-bottom: 65px;
}
.cert-page .cert-hero-layout {
    display: grid;
    grid-template-columns: 55% 45%;
    align-items: stretch;
    gap: 0;
}
.cert-page .cert-hero-text {
    align-self: center;
    padding: 10px 45px 10px 0;
}
.cert-page .cert-hero-text h1 {
    color: #fff;
    font-weight: 700;
    font-size: clamp(35px,4vw,54px);
    line-height: 1.15;
    margin: 17px 0 22px;
}
.cert-page .cert-hero-text .dutech-service-hero-lead {
    max-width: 600px;
    color: #e6eef7;
    font-size: 17px;
    line-height: 1.7;
    margin-bottom: 25px;
}
.cert-page .cert-hero-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px;
}
.cert-page .cert-hero-image {
    overflow: hidden;
    border-radius: 10px;
    min-height: 310px;
}
.cert-page .cert-hero-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Global-style breadcrumb below hero */
.cert-page .services-modern-breadcrumb {
    padding: 16px 0;
    background: #f4f7fa;
    border-bottom: 1px solid #e0e9f1;
}
.cert-page .services-modern-breadcrumb .container {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
}
.cert-page .services-modern-breadcrumb a {
    color: #17669b;
    text-decoration: none;
}
.cert-page .services-modern-breadcrumb a:hover {
    text-decoration: underline;
}

/* Global section styling */
.cert-page .cert-section {
    padding: 75px 0 85px;
}
.cert-page .cert-section h2 {
    color: #173858;
    font-size: clamp(28px,3vw,38px);
    margin: 12px 0 15px;
}
.cert-page .dutech-section-eyebrow {
    color: #1aa9df;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}
.cert-page .dutech-title-divider {
    display: block;
    width: 60px;
    height: 4px;
    background: #20b8e6;
    border-radius: 2px;
    margin: 0 0 24px;
}
.cert-page .dutech-section-title.text-center
.dutech-title-divider {
    margin-left: auto;
    margin-right: auto;
}
.cert-page .cert-lead {
    color: #617487;
    max-width: 770px;
    line-height: 1.7;
    font-size: 16px;
    margin-bottom: 32px;
}
.cert-page #business-certifications {
    scroll-margin-top: 110px;
}

/* Four certification cards */
.cert-page .cert-verified-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 22px;
}
.cert-page .cert-verified-card {
    min-width: 0;
    display: flex;
    flex-direction: column;
    background: #fff;
    padding: 27px;
    border: 1px solid #dce8f1;
    border-radius: 14px;
    box-shadow: 0 8px 24px rgba(17,47,77,.05);
}
.cert-page .cert-verified-header {
    display: grid;
    grid-template-columns: 180px minmax(0,1fr);
    align-items: center;
    gap: 20px;
    min-height: 125px;
    padding-bottom: 20px;
    border-bottom: 1px solid #e2edf5;
}
.cert-page .cert-verified-header img {
    display: block;
    width: 100%;
    max-height: 115px;
    object-fit: contain;
}
.cert-page .cert-verified-header h3 {
    color: #173858;
    font-size: 22px;
    margin: 0 0 8px;
}
.cert-page .cert-verified-header p {
    color: #607588;
    font-size: 14px;
    line-height: 1.5;
    margin: 0;
}
.cert-page .cert-verified-facts {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 19px;
    margin: 22px 0 0;
}
.cert-page .cert-verified-facts dt,
.cert-page .cert-information-grid dt {
    color: #637b8d;
    font-size: 12px;
    margin-bottom: 6px;
}
.cert-page .cert-verified-facts dd,
.cert-page .cert-information-grid dd {
    color: #173858;
    font-size: 15px;
    font-weight: 700;
    margin: 0;
    overflow-wrap: anywhere;
}
.cert-page .cert-verified-action {
    display: inline-block;
    margin-top: auto;
    padding-top: 24px;
    color: #156c9e;
    font-weight: 700;
    text-decoration: none;
}

/* Government contract cards */
.cert-page .cert-alt {
    background: #f4f8fb;
}
.cert-page .cert-grid-two {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 24px;
}
.cert-page .cert-card {
    display: flex;
    flex-direction: column;
    padding: 30px;
    background: #fff;
    border: 1px solid #dfebf3;
    border-radius: 14px;
}
.cert-page .cert-tag {
    align-self: flex-start;
    background: #e6f3fa;
    color: #176b9e;
    border-radius: 5px;
    font-size: 11px;
    font-weight: 700;
    padding: 7px 11px;
    margin-bottom: 19px;
}
.cert-page .cert-card h3 {
    color: #173858;
    font-size: 22px;
    margin-bottom: 14px;
}
.cert-page .cert-card p {
    color: #627587;
    line-height: 1.7;
}
.cert-page .cert-card a {
    color: #156b9e;
    font-weight: 700;
    margin-top: auto;
    padding-top: 18px;
    text-decoration: none;
}

/* Details: compact structured facts */
.cert-page .cert-document-section {
    background: #f3f8fb;
}
.cert-page .cert-document-icon {
    display: flex;
    justify-content: center;
    align-items: center;
    flex: 0 0 65px;
    height: 65px;
    border-radius: 10px;
    background: #eaf5fb;
    color: #1674a8;
    font-size: 30px;
}
.cert-page .cert-document-description {
    flex: 1;
}
.cert-page .cert-document-description h3 {
    color: #173858;
    font-size: 20px;
    margin: 0 0 6px;
}
.cert-page .cert-document-description p {
    margin: 0;
    color: #667b8b;
}

/* Centered Services-style CTA */
.cert-page .cert-final-cta {
    background: #eaf4fb;
    padding: 80px 20px;
    text-align: center;
}
.cert-page .cert-final-cta .dutech-section-title {
    max-width: 850px;
    margin: 0 auto;
}
.cert-page .cert-final-cta h2 {
    font-size: clamp(29px,3vw,39px);
    color: #173858;
    margin: 14px 0 20px;
}
.cert-page .cert-final-cta p {
    color: #5d7487;
    font-size: 16px;
    line-height: 1.7;
    max-width: 710px;
    margin: 0 auto;
}
.cert-page .cert-cta-actions {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 18px;
    flex-wrap: wrap;
    margin-top: 30px;
}
.cert-page .cert-cta-secondary {
    color: #176b9e;
    font-weight: 700;
    text-decoration: none;
}

/* Buttons use Dutech's global classes. */
.cert-page .dutech-btn-primary,
.cert-page .dutech-btn-outline-light {
    text-decoration: none;
}

@media (max-width: 900px) {
    .cert-page .cert-hero-layout {
        grid-template-columns: 1fr;
    }
    .cert-page .cert-hero-text {
        padding-right: 0;
        margin-bottom: 22px;
    }
    .cert-page .cert-hero-image {
        max-height: 290px;
        min-height: 230px;
    }
    .cert-page .cert-verified-grid,
    .cert-page .cert-grid-two {
        grid-template-columns: 1fr;
    }
}
@media (max-width: 580px) {
    .cert-page .cert-modern-hero
    .dutech-service-hero-content {
        padding-top: 42px;
        padding-bottom: 42px;
    }
    .cert-page .cert-verified-header {
        grid-template-columns: 110px minmax(0,1fr);
        gap: 14px;
    }
    .cert-page .cert-verified-header img {
        max-height: 90px;
    }
    .cert-page .cert-verified-facts,
    .cert-page .cert-information-grid {
        grid-template-columns: 1fr;
    }
    .cert-page .cert-section {
        padding: 55px 0;
    }
}
/* FINAL MAIN PAGE HERO ART - text-free certificate graphic */
.cert-page .cert-certificate-art {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 300px;
    background: transparent;
    border-radius: 0;
    overflow: visible;
}

.cert-page .cert-certificate-art svg {
    display: block;
    width: 100%;
    max-width: 480px;
    height: auto;
    max-height: 350px;
}

/* Dividers follow descriptions on content sections. */
.cert-page .cert-business-section > .cert-container > .dutech-title-divider,
.cert-page .cert-alt > .cert-container > .dutech-title-divider {
    margin-top: 15px;
    margin-bottom: 30px;
}

/* DETAILS: OFFICIAL CERTIFICATE IMAGE */

.cert-details-page .cert-document-section {
    background: #f3f8fc;
}

.cert-details-page .cert-document-section
.dutech-section-title {
    max-width: 840px;
    margin: 0 auto 36px;
    text-align: center;
}

.cert-details-page .cert-document-section
.dutech-title-divider {
    margin-left: auto;
    margin-right: auto;
}

.cert-details-page .cert-certificate-display {
    max-width: 860px;
    margin: 0 auto;
    padding: 20px;
    background: #fff;
    border: 1px solid #e0eaf2;
    border-radius: 12px;
    box-shadow: 0 12px 30px rgba(20,56,86,.06);
}

.cert-details-page .cert-certificate-display a {
    display: block;
    text-align: center;
}

.cert-details-page .cert-certificate-display img {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
}

.cert-details-page .cert-certificate-download {
    display: flex;
    justify-content: center;
    margin-top: 28px;
}

@media (max-width: 700px) {
    .cert-details-page .cert-certificate-display {
        padding: 10px;
    }

    .cert-details-page .cert-certificate-download a {
        max-width: 100%;
        text-align: center;
    }
}
