/* Page-specific overrides: cmsed */
.cmsed-mission-section {
            background: linear-gradient(180deg, #fff 0%, #fef8f8 50%, #fff 100%);
            padding: 50px 0 45px;
            border-top: 1px solid rgba(198,40,40,0.08);
        }

.cmsed-mission-section .mission-head {
            text-align: center;
            max-width: 820px;
            margin: 0 auto 40px;
        }

.cmsed-mission-section .mission-head h2 {
            color: var(--primary-red);
            font-size: 2rem;
            margin-bottom: 16px;
            line-height: 1.3;
        }

.cmsed-mission-section .mission-head p {
            color: var(--text-dark);
            font-size: 1.1rem;
            line-height: 1.85;
        }

.cmsed-mission-block {
            background: white;
            border-radius: 12px;
            padding: 32px 36px;
            margin-bottom: 28px;
            box-shadow: 0 4px 20px rgba(0,0,0,0.06);
            border-left: 4px solid var(--primary-red);
        }

.cmsed-mission-block h3 {
            color: var(--primary-red);
            font-size: 1.35rem;
            margin-bottom: 14px;
            display: flex;
            align-items: center;
            gap: 12px;
        }

.cmsed-mission-block h3 i { font-size: 1.2rem; }

.cmsed-mission-block p {
            color: var(--text-dark);
            line-height: 1.9;
            margin-bottom: 12px;
        }

.cmsed-mission-block p:last-child { margin-bottom: 0; }

.cmsed-mission-section .mission-cta {
            text-align: center;
            margin-top: 28px;
            font-size: 1.1rem;
            color: var(--text-dark);
            font-weight: 600;
        }

.certificate-demo-section {
            background: white;
            padding: 14px 0 18px;
            box-shadow: 0 2px 10px rgba(0,0,0,0.05);
        }

.certificate-demo-section .container {
            max-width: 1400px;
            margin: 0 auto;
            padding: 0 5%;
        }

.certificate-demo-container {
            display: flex;
            gap: 30px;
            align-items: center;
            max-width: 1200px;
            margin: 0 auto;
            padding: 0 20px;
        }

.certificate-demo-section .certificate-preview {
            flex: 1;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
        }

.certificate-demo-section .certificate-frame {
            background: linear-gradient(135deg, #f5f5f5 0%, #ffffff 100%);
            border: 4px solid var(--gold);
            border-radius: 8px;
            padding: 8px;
            box-shadow: 0 8px 30px rgba(0,0,0,0.25);
            position: relative;
            width: fit-content;
            max-width: min(560px, 100%);
            margin-left: auto;
            margin-right: auto;
            overflow: visible;
            transform: perspective(1000px) rotateY(-3deg);
            transition: transform 0.3s ease, box-shadow 0.3s ease;
            cursor: zoom-in;
        }

.certificate-demo-section .certificate-frame:focus {
            outline: 3px solid var(--primary-red);
            outline-offset: 4px;
        }

.certificate-demo-section .certificate-frame:focus:not(:focus-visible) {
            outline: none;
        }

.certificate-demo-section .certificate-frame:focus-visible {
            outline: 3px solid var(--primary-red);
            outline-offset: 4px;
        }

.certificate-demo-section .certificate-frame:hover {
            transform: perspective(1000px) rotateY(0deg) scale(1.03);
            box-shadow: 0 12px 40px rgba(0,0,0,0.35);
        }

.certificate-demo-section .certificate-frame img {
            width: auto;
            max-width: 100%;
            height: auto;
            max-height: clamp(216px, 38.4vh, 336px); /* ~+20% vs prior clamp max */
            display: block;
            margin: 0;
            border-radius: 4px;
            object-fit: contain;
            pointer-events: none;
        }

.cmsed-cert-modal {
            position: fixed;
            inset: 0;
            z-index: 99999;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 20px;
            box-sizing: border-box;
        }

.cmsed-cert-modal[hidden] {
            display: none !important;
        }

.cmsed-cert-modal__backdrop {
            position: absolute;
            inset: 0;
            margin: 0;
            padding: 0;
            border: none;
            background: rgba(12, 12, 16, 0.9);
            cursor: zoom-out;
        }

.cmsed-cert-modal__inner {
            position: relative;
            z-index: 1;
            max-width: min(1100px, 98vw);
            max-height: 96vh;
        }

.cmsed-cert-modal__inner img {
            display: block;
            max-width: 100%;
            max-height: 96vh;
            width: auto;
            height: auto;
            margin: 0 auto;
            object-fit: contain;
            border-radius: 6px;
            box-shadow: 0 20px 60px rgba(0, 0, 0, 0.55);
        }

.cmsed-cert-modal__close {
            position: absolute;
            top: -14px;
            right: -14px;
            width: 44px;
            height: 44px;
            border: none;
            border-radius: 50%;
            background: var(--primary-red);
            color: white;
            font-size: 1.6rem;
            line-height: 1;
            cursor: pointer;
            box-shadow: 0 4px 16px rgba(0, 0, 0, 0.35);
            z-index: 2;
            display: flex;
            align-items: center;
            justify-content: center;
        }

.cmsed-cert-modal__close:hover {
            filter: brightness(1.08);
        }
