.page-template-securityTemplate,
.security-page {
    font-family: 'Inter', sans-serif;
    color: #212121;
}

.page-template-securityTemplate h1,
.page-template-securityTemplate h2,
.page-template-securityTemplate h3,
.security-page h1,
.security-page h2,
.security-page h3 {
    font-family: 'Inter', sans-serif;
}

.page-template-securityTemplate .section-heading,
.security-page .section-heading {
    color: #155036;
    font-size: 40px;
    font-weight: 700;
    line-height: 52px;
    letter-spacing: -1px;
    margin: 0;
}

.page-template-securityTemplate .section-body,
.security-page .section-body {
    font-size: 16px;
    line-height: 24px;
    color: #212121;
}

.page-template-securityTemplate .benefit-title,
.security-page .benefit-title {
    color: #155036;
    font-size: 20px;
    font-weight: 700;
    line-height: 32px;
    margin: 0 0 12px;
}

.page-template-securityTemplate .benefit-copy,
.security-page .benefit-copy {
    font-size: 16px;
    line-height: 24px;
    margin: 0;
}

.page-template-securityTemplate .btn-security,
.security-page .btn-security {
    border-radius: 8px !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    height: auto !important;
    line-height: 1.5;
    padding: 12px 24px !important;
}

.page-template-securityTemplate .image-frame,
.security-page .image-frame {
    border-radius: 16px;
    height: 488px;
    overflow: hidden;
    position: relative;
    width: 100%;
}

.page-template-securityTemplate .image-frame > img,
.security-page .image-frame > img {
    display: block;
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.page-template-securityTemplate .overlay-card,
.security-page .overlay-card {
    background: #fff;
    border: 2px solid #e5e5e5;
    border-radius: 16px;
    box-shadow: 0 4.917px 2.458px rgba(0, 0, 0, 0.1), 0 1px 1px rgba(0, 0, 0, 0.05);
    padding: 16px;
    position: absolute;
    z-index: 2;
}

/* Hero */
.security-hero.banner.green-triangles {
    border-radius: 0 0 40px 40px;
    padding: 80px 0;
    text-align: left;
}

.security-hero .hero-inner {
    align-items: center;
    display: flex;
    gap: 32px;
}

.security-hero .hero-content {
    flex: 1 1 0;
}

.security-hero .eyebrow {
    color: #fff;
    font-size: 24px;
    font-weight: 700;
    line-height: 40px;
    margin: 0 0 24px;
}

.security-hero h1 {
    color: #fff;
    font-size: 52px;
    font-weight: 700;
    letter-spacing: -1px;
    line-height: 68px;
    margin: 0 0 24px;
    padding: 0;
    text-shadow: none;
}

.security-hero .hero-desc {
    color: #fff;
    font-size: 20px;
    line-height: 32px;
    margin: 0 0 41px;
}

.security-hero .hero-cta-group {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
}

.security-hero .hero-visual {
    flex: 0 0 695px;
    max-width: 100%;
    position: relative;
    height: 587px;
}

.security-hero .hero-card {
    background: #f5f5f5;
    border-radius: 12px;
    box-shadow: 0 9.833px 12.291px -7.375px rgba(0, 0, 0, 0.1), 0 24.583px 30.729px -6.146px rgba(0, 0, 0, 0.1);
    height: 472px;
    overflow: hidden;
    position: absolute;
    width: 332px;
}

.security-hero .hero-card-laptop {
    left: 0;
    top: 0;
    background: #fff;
}

.security-hero .hero-card-laptop > img.hero-photo {
    height: 100%;
    object-fit: cover;
    position: absolute;
    border-radius: 12px;
}

.security-hero .hero-card-soc {
    left: 363px;
    top: 114px;
}

.security-hero .hero-card-soc > img.hero-photo {
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.security-hero .hero-card-soc .hero-seal {
    height: 100%;
    left: 0;
    object-fit: cover;
    position: absolute;
    top: 0;
    width: 100%;
}

.security-hero .privacy-badge {
    align-items: center;
    background: #fff;
    border: 2px solid #e5e5e5;
    border-radius: 16px;
    bottom: 24px;
    box-shadow: 0 4.917px 2.458px rgba(0, 0, 0, 0.1), 0 1px 1px rgba(0, 0, 0, 0.05);
    display: flex;
    gap: 4px;
    left: 50%;
    padding: 16px;
    position: absolute;
    transform: translateX(-50%);
    white-space: nowrap;
}

.security-hero .privacy-badge img {
    height: 36px;
    width: 36px;
}

.security-hero .privacy-badge span {
    color: #212121;
    font-size: 20px;
    line-height: 32px;
}

/* Trusted logos */
.security-logos.customers-section {
    padding: 80px 0;
    text-align: center;
}

.security-logos .trusted-heading {
    font-size: 32px;
    font-weight: 700;
    line-height: 40px;
    margin: 0 0 32px;
    color: #155036;
}

.security-logos .scroller-container {
    margin: 0 auto;
    max-width: 100%;
}

/* Certifications */
.security-certifications {
    padding: 80px 0;
}

.security-certifications .section-heading {
    margin: 0 auto 40px;
    max-width: 705px;
    text-align: center;
}

.security-certifications .cert-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
    justify-content: center;
}

.security-certifications .cert-card {
    flex: 0 1 410px;
    max-width: 100%;
}

.security-certifications .cert-icon {
    height: 64px;
    margin-bottom: 16px;
    width: 64px;
}

.security-certifications .cert-icon img {
    height: 64px;
    object-fit: contain;
    width: 64px;
}

.security-certifications .cert-title {
    color: #155036;
    font-size: 24px;
    font-weight: 700;
    line-height: 40px;
    margin: 0 0 16px;
}

/* Intro band */
.security-intro-band {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    overflow: hidden;
    padding: 144px 0;
    position: relative;
}

    .security-intro-band .section-heading {
        font-size: 52px;
        color: #155036;
        margin-bottom: 13px;
    }

.security-intro-band .intro-content {
    margin: 0 auto;
    max-width: 856px;
    text-align: center;
}

.security-intro-band .section-body {
    color: #000;
}

/* Protection */
.security-protection {
    padding: 80px 0;
}

.security-protection .section-heading {
    margin-bottom: 48px;
}

.security-protection .split-row {
    align-items: center;
    display: grid;
    gap: 48px;
    grid-template-columns: 1fr 1fr;
}

.security-protection .benefits-col .benefit-item + .benefit-item {
    margin-top: 24px;
}

/* Trust center */
.security-trust-center {
    padding: 80px 0;
}

.security-trust-center .trust-panel {
    align-items: center;
    background: #f5f5f5;
    border-radius: 16px;
    box-shadow: 0 1px 2px -1px rgba(0, 0, 0, 0.1), 0 1px 3px rgba(0, 0, 0, 0.1);
    display: grid;
    gap: 48px;
    grid-template-columns: 1fr 1fr;
    margin-bottom: 40px;
    min-height: 600px;
    overflow: hidden;
    padding: 48px;
    position: relative;
}

.security-trust-center .trust-copy {
    position: relative;
    z-index: 2;
}

.security-trust-center .trust-copy .section-heading {
    margin-bottom: 24px;
    padding-bottom: 0px;
}

.security-trust-center .trust-copy ul {
    margin: 0 0 24px;
    padding-left: 24px;
}

.security-trust-center .trust-screenshot {
    position: relative;
    z-index: 1;
}

.security-trust-center .trust-screenshot img {
    border-radius: 24px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
    display: block;
    max-width: 100%;
}

.security-trust-center .trust-features-label {
    font-size: 20px;
    line-height: 32px;
    margin-bottom: 24px;
}

.security-trust-center .trust-features {
    display: grid;
    gap: 24px 36px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.security-trust-center .trust-feature {
    align-items: center;
    display: flex;
    gap: 16px;
}

.security-trust-center .trust-feature-icon {
    align-items: center;
    background: #155036;
    border-radius: 8px;
    display: flex;
    flex-shrink: 0;
    height: 64px;
    justify-content: center;
    width: 64px;
}

.security-trust-center .trust-feature-icon img {
    object-fit: contain;
}

.security-trust-center .trust-feature-label {
    font-size: 20px;
    font-weight: 600;
    line-height: 32px;
}

/* Safeguards & two-column sections */
.security-safeguards,
.security-data-ownership,
.security-staff-training {
    padding: 80px 0;
}

.security-safeguards .section-intro {
    margin-bottom: 67px;
    max-width: 566px;
}

.security-safeguards .section-intro .section-body {
    margin-top: 16px;
}

.security-safeguards .split-row,
.security-data-ownership .split-row,
.security-staff-training .split-row {
    align-items: center;
    display: grid;
    gap: 48px;
    grid-template-columns: 1fr 1fr;
}

.security-safeguards .content-col .benefit-item + .benefit-item {
    margin-top: 24px;
}

.security-data-ownership .section-body {
    margin-top: 16px;
}

.security-data-ownership .mini-benefits {
    display: flex;
    gap: 57px;
    margin-top: 32px;
}

.security-data-ownership .mini-benefit {
    flex: 1 1 0;
}

.security-data-ownership .mini-benefit-icon {
    align-items: center;
    background: #155036;
    border-radius: 8px;
    display: flex;
    height: 64px;
    justify-content: center;
    margin-bottom: 16px;
    width: 64px;
}


/* FAQ */
.security-faq {
    padding: 80px 0;
}

.security-faq .section-heading {
    margin: 0 auto 80px;
    text-align: center;
}

.security-faq .faq-list {
    margin: 0 auto;
    max-width: 875px;
}

.security-faq .faq-item {
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 2px 3px rgba(0, 0, 0, 0.16);
    margin-bottom: 24px;
    padding: 16px;
}

.security-faq .faq-toggle {
    align-items: flex-start;
    background: none;
    border: 0;
    cursor: pointer;
    display: flex;
    gap: 16px;
    padding: 0;
    text-align: left;
    width: 100%;
}

.security-faq .faq-question {
    color: #155036;
    flex: 1 1 auto;
    font-size: 24px;
    font-weight: 700;
    line-height: 40px;
}

.security-faq .faq-chevron {
    border-right: 2px solid #155036;
    border-bottom: 2px solid #155036;
    flex-shrink: 0;
    height: 10px;
    margin-top: 14px;
    transform: rotate(45deg);
    transition: transform 0.2s ease;
    width: 10px;
}

.security-faq .faq-toggle.is-open .faq-chevron {
    margin-top: 18px;
    transform: rotate(-135deg);
}

.security-faq .faq-answer {
    color: #515151;
    font-size: 16px;
    line-height: 24px;
    padding: 24px 36px 8px 0;
}

.security-faq .faq-answer ul {
    margin: 0;
    padding-left: 24px;
}

.security-faq .faq-answer a {
    color: #515151;
    text-decoration: underline;
}

.security-faq .faq-answer strong {
    color: #515151;
}

/* Bottom CTA */
.security-bottom-cta {
    padding: 80px 0;
}

.security-bottom-cta .cta-inner {
    background: linear-gradient(149deg, #155e75 10%, #0b301f 84%);
    border-radius: 16px;
    padding: 96px;
    text-align: center;
}

.security-bottom-cta .section-heading {
    color: #fafafa;
    margin: 0 auto 24px;
    max-width: 600px;
}

.security-bottom-cta .cta-desc {
    color: #fff;
    font-size: 16px;
    line-height: 24px;
    margin: 0 auto 24px;
    max-width: 786px;
}

.security-bottom-cta .cta-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
    justify-content: center;
}

.security-bottom-cta .btn-white-light-blue {
    background: #fff !important;
    border-radius: 8px !important;
    color: #0864ae !important;
    font-weight: 400 !important;
    height: auto !important;
    padding: 12px 24px !important;
}

@media (max-width: 1199px) {
    .security-hero .hero-inner {
        flex-direction: column;
    }

    .security-protection .split-row,
    .security-safeguards .split-row,
    .security-data-ownership .split-row,
    .security-staff-training .split-row {
        grid-template-columns: 1fr;
    }

    .security-trust-center .trust-panel {
        grid-template-columns: 1fr;
        min-height: 0;
    }

    .security-hero .hero-visual {
        flex: 1 1 auto;
        height: 520px;
        width: 100%;
    }

    .security-trust-center .trust-features {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .page-template-securityTemplate .section-heading,
    .security-page .section-heading {
        font-size: 32px;
        line-height: 40px;
        padding-bottom: 0px;
    }

    /* Hero */
    .security-hero.banner.green-triangles {
        padding: 40px 0;
    }

    .security-hero .hero-inner {
        gap: 40px;
    }

    .security-hero .eyebrow {
        font-size: 20px;
        line-height: 32px;
        margin-bottom: 24px;
    }

    .security-hero h1 {
        font-size: 40px;
        line-height: 52px;
        margin-bottom: 24px;
    }

    .security-hero .hero-desc {
        font-size: 18px;
        line-height: 32px;
        margin-bottom: 40px;
    }

    .security-hero .hero-cta-group {
        flex-direction: column;
        gap: 24px;
        width: 100%;
    }

    .security-hero .hero-cta-group .btn-security {
        display: block;
        text-align: center;
        width: 100%;
    }

    .security-hero .hero-visual {
        flex: none;
        height: 280px;
        margin: 0 auto;
        width: 100%;
    }

    .security-hero .hero-card {
        border-radius: 5px;
        height: 225px;
        width: calc(50% - 12px);
    }

    .security-hero .hero-card-laptop {
        left: 0;
        top: 0;
        transform: none;
    }

    .security-hero .hero-card-soc {
        display: block;
        left: auto;
        right: 0;
        top: 54px;
    }

    /* Trusted logos */
    .security-logos.customers-section {
        padding: 40px 0;
    }

    .security-logos .trusted-heading {
        font-size: 32px;
        line-height: 40px;
        margin-bottom: 32px;
    }

    /* Certifications */
    .security-certifications {
        padding: 40px 0;
    }

    .security-certifications .section-heading {
        margin-bottom: 40px;
        margin-left: 0;
        margin-right: 0;
        max-width: none;
        text-align: left;
        padding-bottom: 0px;
    }

    .security-certifications .cert-grid {
        gap: 40px;
    }

    .security-certifications .cert-card {
        flex-basis: 100%;
    }

    .security-certifications .cert-icon {
        height: 48px;
        margin-bottom: 16px;
        width: 48px;
    }

    .security-certifications .cert-icon img {
        height: 48px;
        width: 48px;
    }

    .security-certifications .cert-title {
        margin-bottom: 16px;
    }

    /* Intro band */
    .security-intro-band {
        padding: 80px 0;
    }

    .security-intro-band .section-heading {
        font-size: 32px;
        line-height: 40px;
        padding-bottom: 0px;
    }

    .security-intro-band .section-body {
        font-size: 16px;
        line-height: 24px;
    }

    /* Protection */
    .security-protection {
        padding: 40px 0;
    }

    .security-protection .section-heading {
        margin-bottom: 40px;
        padding-bottom: 0px;
    }

    .security-protection .split-row {
        gap: 48px;
    }

    .security-protection .benefits-col .benefit-item + .benefit-item {
        margin-top: 24px;
    }

    .security-protection .benefit-title {
        margin-bottom: 12px;
    }

    /* Trust center */
    .security-trust-center {
        padding: 40px 0;
    }

    .security-trust-center .trust-panel {
        gap: 24px;
        margin-bottom: 40px;
        min-height: 0;
        overflow: visible;
        padding: 24px;
    }

    .security-trust-center .trust-screenshot {
        margin-top: 24px;
        width: 100%;
    }

    .security-trust-center .trust-screenshot img {
        display: block;
        margin: 0 auto;
        max-width: 100%;
        width: 100%;
    }

    .security-trust-center .trust-features-label {
        font-size: 20px;
        line-height: 32px;
        margin-bottom: 24px;
    }

    .security-trust-center .trust-features {
        gap: 24px;
        grid-template-columns: 1fr;
    }

    .security-trust-center .trust-feature-icon {
        height: 48px;
        width: 48px;
    }


    .security-trust-center .trust-feature-label {
        font-size: 20px;
        font-weight: 600;
        line-height: 32px;
    }

    .page-template-securityTemplate .image-frame > img,
    .security-page .image-frame > img {
        object-position: left;
    }

    /* Safeguards */
    .security-safeguards {
        padding: 40px 0;
    }

    .security-safeguards .section-intro {
        margin-bottom: 40px;
        max-width: none;
    }

    .security-safeguards .split-row {
        gap: 57px;
    }

    .security-safeguards .content-col .benefit-item + .benefit-item {
        margin-top: 24px;
    }

    .security-safeguards .benefit-title {
        margin-bottom: 12px;
    }

    /* Data ownership */
    .security-data-ownership {
        padding: 40px 0;
    }

    .security-data-ownership .split-row {
        gap: 40px;
    }

    .security-data-ownership .mini-benefits {
        flex-direction: row;
        gap: 57px;
        margin-top: 32px;
    }

    .security-data-ownership .mini-benefit-icon {
        height: 48px;
        margin-bottom: 16px;
        width: 48px;
    }


    .security-data-ownership .mini-benefit .benefit-title {
        font-size: 16px;
        line-height: 24px;
        margin-bottom: 0;
    }

    /* Staff training */
    .security-staff-training {
        padding: 40px 0;
    }

    .security-staff-training .split-row {
        gap: 40px;
    }

    .security-staff-training .content-col {
        order: 1;
    }

    .security-staff-training .image-col {
        order: 2;
    }

    /* FAQ */
    .security-faq {
        padding: 40px 0 24px;
    }

    .security-faq .section-heading {
        margin-bottom: 40px;
    }

        .security-faq .faq-answer {
            padding: 16px 0;
        }

        .security-faq .faq-answer p {
            margin-bottom: 0px;
        }

    /* Bottom CTA */
    .security-bottom-cta {
        padding: 40px 0;
    }

    .security-bottom-cta .cta-inner {
        padding: 24px;
        text-align: left;
    }

    .security-bottom-cta .section-heading {
        font-size: 32px;
        font-weight: 600;
        line-height: 40px;
        margin-left: 0;
        margin-right: 0;
        max-width: none;
    }

    .security-bottom-cta .cta-desc {
        margin-left: 0;
        margin-right: 0;
        max-width: none;
    }

    .security-bottom-cta .cta-buttons {
        flex-direction: column;
        gap: 24px;
        justify-content: flex-start;
        width: 100%;
    }

    .security-bottom-cta .cta-buttons .btn-security {
        display: block;
        text-align: center;
        width: 100%;
    }
}
