.product-page {
    --product-teal: var(--teal, #00b896);
    --product-teal-light: var(--teal-light, #00d4aa);
    --product-teal-dark: var(--teal-dark, #008f74);

    --product-text: var(--gray-900, #0f172a);
    --product-heading: var(--gray-900, #0f172a);
    --product-muted: var(--gray-500, #64748b);
    --product-muted-dark: var(--gray-600, #475569);

    --product-white: var(--white, #ffffff);
    --product-soft: var(--gray-50, #f8fafc);
    --product-section-soft: var(--gray-100, #f1f5f9);

    --product-border: var(--gray-200, #e2e8f0);
    --product-border-light: var(--gray-150, #eaeff6);

    --product-teal-bg: var(--teal-bg, rgba(0, 184, 150, 0.08));
    --product-teal-border: var(--teal-border, rgba(0, 184, 150, 0.20));
    --product-teal-shadow: var(--teal-shadow, rgba(0, 184, 150, 0.25));

    --product-body-font: var(--font-b), "Outfit", sans-serif;
    --product-heading-font: "Plus Jakarta Sans", var(--font-b), "Outfit", sans-serif;
    --product-display-font: var(--font-s), "Fraunces", serif;

    --product-container: 1400px;
    --product-container-padding: 24px;

    --product-radius: 10px;
    --product-radius-lg: 14px;

    --product-shadow:
        0 4px 16px rgba(0, 0, 0, 0.07),
        0 2px 6px rgba(0, 0, 0, 0.04);

    --product-shadow-hover:
        0 12px 40px rgba(0, 0, 0, 0.10);

    width: 100%;
    margin: 0;
    padding: 0;

    color: var(--product-text);
    background: var(--product-white);

    font-family: var(--product-body-font);
    font-size: 16px;
    line-height: 1.6;

    box-sizing: border-box;
}
.product-page *,
.product-page *::before,
.product-page *::after {
    box-sizing: border-box;
}

.product-page h1,
.product-page h2,
.product-page h3,
.product-page h4,
.product-page h5,
.product-page h6,
.product-page p,
.product-page ul,
.product-page ol,
.product-page figure {
    margin-top: 0;
}

.product-page p,
.product-page ul,
.product-page ol {
    margin-bottom: 0;
}

.product-page img {
    display: block;
    max-width: 100%;
    height: auto;
}

.product-page a {
    color: var(--product-teal-dark);
    text-decoration: none;
}

.product-page a:hover,
.product-page a:focus {
    text-decoration: underline;
}

.product-page button,
.product-page input,
.product-page textarea,
.product-page select {
    font-family: inherit;
}
.product-container {
    width: 100%;
    max-width: var(--product-container);

    margin-left: auto;
    margin-right: auto;

    padding-left: var(--product-container-padding);
    padding-right: var(--product-container-padding);

    box-sizing: border-box;
}

.product-main {
    width: 100%;
    margin: 0;
    padding: 0;
}

.product-breadcrumb-wrapper {
    width: 100%;
    margin-top: 66px;
    margin-bottom: 0;
    padding: 0;

    background: var(--product-white);
    border-bottom: 1px solid var(--product-border-light);

    position: relative;
    z-index: 1;
}

.product-breadcrumb {
    /* Override global nav styles */
    position: static;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;

    width: 100%;
    height: auto;
    min-height: 42px;

    margin: 0;
    padding: 5px 0;

    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 6px;

    background: transparent;
    border: 0;
    box-shadow: none;

    color: var(--product-muted);

    font-family: var(--product-body-font);
    font-size: 13px;
    line-height: 1.4;

    justify-content: flex-start;

    box-sizing: border-box;
}

.product-breadcrumb a {
    display: inline-flex;
    align-items: center;

    width: auto;
    height: auto;

    margin: 0;
    padding: 0;

    background: transparent;
    border: 0;
    box-shadow: none;

    color: var(--product-teal-dark);

    font-family: inherit;
    font-size: inherit;
    font-weight: 600;
    line-height: inherit;

    text-decoration: none;
}

.product-breadcrumb a:hover,
.product-breadcrumb a:focus {
    color: var(--product-teal);
    text-decoration: underline;
}

.product-breadcrumb-separator,
.product-breadcrumb__separator {
    display: inline-flex;
    align-items: center;

    width: auto;
    height: auto;

    margin: 0;
    padding: 0;

    background: transparent;
    border: 0;
    box-shadow: none;

    color: var(--gray-400, #94a3b8);

    font-size: inherit;
    line-height: inherit;
}

.product-breadcrumb-current,
.product-breadcrumb__current {
    display: inline-flex;
    align-items: center;

    width: auto;
    height: auto;

    margin: 0;
    padding: 0;

    color: var(--product-muted);

    font-family: inherit;
    font-size: inherit;
    font-weight: 400;
    line-height: inherit;
}

.product-section {
    width: 100%;
    margin: 0;
    padding: 20px 0;
}

.product-section:last-child {
    padding-bottom: 0;
}


.product-section--soft {
    position: relative;
    isolation: isolate;
    background: transparent;
}

.product-section--soft::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 100vw;
    transform: translateX(-50%);
    background: var(--product-section-soft);
    pointer-events: none;
}

.product-section > h2,
.product-final-cta h2 {
    margin: 0 0 8px;

    color: var(--product-heading);
    font-family: var(--product-display-font);

    font-size: 36px;
    line-height: 1.15;
    letter-spacing: -0.01em;
    font-weight: 700;
}

.product-section > h3 {
    margin: 0 0 6px;

    color: var(--product-teal-dark);
    font-family: var(--product-body-font);

    font-size: 17px;
    line-height: 1.35;
    font-weight: 700;
}

.product-intro {
    width: 100%;
    margin: 8px 0 12px;
    color: var(--product-muted);
    font-family: var(--product-body-font);
    font-size: 16px;
    line-height: 1.78;
}

.product-section > p {
    margin: 0 0 12px;

    color: var(--product-muted);
    font-size: 16px;
    line-height: 1.72;
}

.product-section > p:last-child {
    margin-bottom: 0;
}

.product-content {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
}

.product-content--wide {
    width: 100%;
}

.product-content p {
    margin: 0 0 14px;
    color: var(--product-muted);
    font-size: 16px;
    line-height: 1.72;
}

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

.product-content strong {
    color: var(--product-text);
}

.product-hero {
    position: relative;
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(-50vw + 50%);
    overflow: hidden;

    /* Soft homepage-style background with subtle depth */
    background:
        radial-gradient(
            ellipse 70% 90% at 85% 15%,
            rgba(0, 184, 150, 0.18) 0%,
            rgba(0, 184, 150, 0.08) 38%,
            transparent 72%
        ),
        radial-gradient(
            ellipse 55% 75% at 10% 90%,
            rgba(0, 212, 170, 0.10) 0%,
            transparent 68%
        ),
        linear-gradient(
            135deg,
            #f3fffc 0%,
            #e9fbf6 48%,
            #f7fffd 100%
        );

    border-top: 1px solid rgba(0, 184, 150, 0.08);
    border-bottom: 1px solid rgba(0, 184, 150, 0.10);
}

/* Decorative glow */
.product-hero::before {
    content: "";
    position: absolute;
    width: 520px;
    height: 520px;
    top: -250px;
    right: 4%;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(0, 212, 170, 0.18) 0%,
            rgba(0, 184, 150, 0.10) 35%,
            rgba(0, 184, 150, 0.04) 55%,
            transparent 72%
        );

    filter: blur(12px);
    pointer-events: none;
}

/* Secondary decorative glow */
.product-hero::after {
    content: "";
    position: absolute;
    width: 420px;
    height: 420px;
    bottom: -250px;
    left: 5%;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(76, 201, 185, 0.12) 0%,
            rgba(0, 184, 150, 0.06) 40%,
            transparent 72%
        );

    filter: blur(8px);
    pointer-events: none;
}
.product-hero-inner,
.product-hero__inner {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: var(--product-container);
    display: grid;
    grid-template-columns:
        minmax(0, 1fr)
        minmax(0, 600px);
    align-items: center;
    gap: 45px;
    margin: 0 auto;
    padding: 60px 24px;
}

.product-hero--featured .product-hero-inner {
    grid-template-columns:
        minmax(0, 1fr)
        minmax(0, 580px);
    max-width: var(--product-container);
}

.product-hero-content,
.product-hero__content {
    width: 100%;
    min-width: 0;
    /* max-width: 680px; */
}

.product-badge {
    display: inline-flex;
    align-items: center;
    gap: 7px;

    margin: 0 0 14px;
    padding: 5px 14px;

    background: var(--product-teal-bg);
    border: 1px solid var(--product-teal-border);
    border-radius: 100px;

    color: var(--product-teal-dark);

    font-family: var(--product-body-font);
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.product-hero .product-badge {
    background: rgba(0, 184, 150, 0.09);
    border-color: rgba(0, 184, 150, 0.20);
    color: var(--product-teal-dark);
    box-shadow: 0 6px 20px rgba(0, 184, 150, 0.08);
    backdrop-filter: blur(10px);
}
.product-hero-content h1,
.product-hero h1 {
    margin: 0 0 20px;
    color: var(--product-heading);
    font-family:
        "Plus Jakarta Sans",
        var(--product-body-font),
        sans-serif;
    font-size: 40px;
    line-height: 1.08;
    letter-spacing: -0.025em;
    font-weight: 900;
    text-shadow: none;
}

.product-hero-content h1 em,
.product-hero h1 em {
    color: var(--product-teal-dark);
    font-style: italic;
}

.product-hero--split .product-hero-content h1 {
    font-size: 40px;
}

.product-hero-content > p,
.product-hero__description {
    margin: 0 0 24px;
    color: var(--product-muted-dark);
    font-family: var(--product-body-font);
    font-size: 1.05rem;
    line-height: 1.78;
    font-weight: 400;
}

.product-hero-content > p a,
.product-hero__description a {
    color: var(--product-teal-dark);
    font-weight: 700;
}
.product-trusted,
.product-hero__trust {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    margin: 0 0 22px !important;
    color: var(--product-muted);
    font-size: 0.82rem !important;
    line-height: 1.5;
}

.product-trusted strong,
.product-hero__trust strong {
    color: var(--product-teal-dark);
    font-size: inherit;
}
.product-hero-buttons,
.product-final-buttons,
.product-hero__buttons {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
}

.product-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;

    min-height: 46px;
    padding: 13px 26px;

    border: none;
    border-radius: 10px;

    font-family: var(--product-body-font);
    font-size: 0.93rem;
    font-weight: 700;
    line-height: 1.3;

    text-decoration: none !important;
    cursor: pointer;

    transition:
        transform 0.25s ease,
        background 0.25s ease,
        border-color 0.25s ease,
        box-shadow 0.25s ease,
        color 0.25s ease;
}
.product-btn-primary,
.product-btn--primary {
    background: var(--product-teal);
    color: #ffffff !important;

    border: 1px solid var(--product-teal);

    box-shadow:
        0 6px 24px var(--product-teal-shadow);
}

.product-btn-primary:hover,
.product-btn-primary:focus,
.product-btn--primary:hover,
.product-btn--primary:focus {
    transform: translateY(-2px);

    background: var(--product-teal-dark);
    border-color: var(--product-teal-dark);

    color: #ffffff !important;

    box-shadow:
        0 10px 32px var(--product-teal-shadow);
}
.product-btn-secondary,
.product-btn--secondary {
    background: var(--product-white);
    color: var(--product-muted-dark) !important;

    border: 2px solid var(--product-border);

    box-shadow: var(--product-shadow);
}

.product-btn-secondary:hover,
.product-btn-secondary:focus,
.product-btn--secondary:hover,
.product-btn--secondary:focus {
    transform: translateY(-2px);

    background: var(--product-white);
    border-color: var(--product-teal);

    color: var(--product-teal) !important;

    box-shadow: var(--product-shadow-hover);
}
.product-btn--light {
    background: #ffffff;
    color: var(--product-teal-dark) !important;

    border: 1px solid rgba(255, 255, 255, 0.85);
}

.product-btn--light:hover {
    transform: translateY(-2px);

    background: #f5fffd;
    color: var(--product-teal-dark) !important;

    box-shadow:
        0 8px 25px rgba(0, 0, 0, 0.12);
}

.product-btn--outline-light {
    background: transparent;
    color: #ffffff !important;

    border: 2px solid rgba(255, 255, 255, 0.60);
}

.product-btn--outline-light:hover {
    transform: translateY(-2px);

    background: rgba(255, 255, 255, 0.10);
    border-color: #ffffff;

    color: #ffffff !important;
}
.product-btn:focus-visible {
    outline: 3px solid rgba(0, 184, 150, 0.25);
    outline-offset: 3px;
}
.product-hero-media,
.product-hero__image {
    width: 100%;
    min-width: 0;

    display: flex;
    align-items: center;
    justify-content: center;
}

.product-hero-media img,
.product-hero__image img {
    display: block;
    width: 100%;
    max-width: 650px;
    height: auto;
    margin: 0 auto;

    object-fit: contain;

    filter:
        drop-shadow(0 24px 40px rgba(0, 40, 35, 0.30))
        drop-shadow(0 4px 14px rgba(0, 212, 170, 0.12));

    transition:
        transform 0.35s ease,
        filter 0.35s ease;
}

.product-hero-media img:hover,
.product-hero__image img:hover {
    transform: translateY(-6px);

    filter:
        drop-shadow(0 28px 48px rgba(0, 40, 35, 0.34))
        drop-shadow(0 5px 18px rgba(0, 212, 170, 0.16));
}
.product-hero-card {
    width: 100%;

    padding: 6px;

    background: rgba(255, 255, 255, 0.96);

    border: 1px solid rgba(255, 255, 255, 0.20);
    border-radius: 14px;

    box-shadow:
        0 25px 60px rgba(0, 0, 0, 0.28),
        0 0 0 1px rgba(0, 212, 170, 0.08);
}

.product-hero-card img {
    width: 100%;
    border-radius: 9px;
}
.product-card-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
    margin-top:48px;
}
.product-card{
    position:relative;
    min-width:0;
    overflow:hidden;
    padding:28px;
    background:var(--product-white);
    border:1.5px solid var(--product-border-light);
    border-radius:14px;
    box-shadow:var(--shadow-sm);
    transition:all .3s ease;
}
.product-card::after{
    content:'';
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:3px;
    background:linear-gradient(90deg,var(--product-teal),var(--product-teal-light));
    transform:scaleX(0);
    transform-origin:left;
    transition:transform .3s ease;
}
.product-card:hover{
    transform:translateY(-4px);
    border-color:var(--product-teal-border);
    box-shadow:var(--shadow-lg);
}
.product-card:hover::after{transform:scaleX(1)}
.product-card h3{
    display:flex;
    align-items:center;
    gap:8px;
    margin:0 0 9px;
    color:var(--product-text);
    font-family:var(--product-body-font);
    font-size:1rem;
    line-height:1.4;
    font-weight:700;
}
.product-card p{
    margin:0;
    color:var(--product-muted);
    font-family:var(--product-body-font);
    font-size:.86rem;
    line-height:1.7;
}
.product-card__icon{
    width:50px;
    height:50px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0 0 16px;
    border-radius:13px;
    background:var(--product-teal-bg);
    border:1px solid var(--product-teal-border);
    color:var(--product-teal);
    font-family:var(--product-body-font);
    font-size:1.35rem;
    line-height:1;
    transition:transform .3s ease,background-color .3s ease,border-color .3s ease,color .3s ease;
}
.product-card:hover .product-card__icon{
    transform:translateY(-2px);
    background:rgba(0,184,150,.12);
    border-color:var(--product-teal);
    color:var(--product-teal-dark);
}

.product-process{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px;
    margin:48px auto 0;
    width:100%;
}
.product-process-item,
.product-process__item{
    position:relative;
    min-width:0;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:flex-start;
    padding:28px 24px;
    text-align:center;
    background:var(--product-white);
    border:1.5px solid var(--product-border-light);
    border-radius:14px;
    box-shadow:var(--shadow-sm);
    transition:all .3s ease;
}
.product-process-item::after,
.product-process__item::after{
    content:'';
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:3px;
    background:linear-gradient(90deg,var(--product-teal),var(--product-teal-light));
    transform:scaleX(0);
    transform-origin:left;
    transition:transform .3s ease;
}
.product-process-item:hover,
.product-process__item:hover{
    transform:translateY(-4px);
    border-color:var(--product-teal-border);
    box-shadow:var(--shadow-lg);
}
.product-process-item:hover::after,
.product-process__item:hover::after{transform:scaleX(1)}
.product-step-number,
.product-process__number{
    width:32px;
    height:32px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 32px;
    margin:0 0 14px;
    border-radius:50%;
    background:var(--product-teal);
    color:#fff;
    font-family:var(--product-body-font);
    font-size:.75rem;
    line-height:1;
    font-weight:700;
    box-shadow:0 4px 12px var(--product-teal-shadow);
}
.product-process-item h3,
.product-process__item h3{
    margin:0 0 9px;
    color:var(--product-text);
    font-family:var(--product-body-font);
    font-size:1rem;
    line-height:1.4;
    font-weight:700;
}
.product-process-item p,
.product-process__item p{
    margin:0;
    color:var(--product-muted);
    font-family:var(--product-body-font);
    font-size:.86rem;
    line-height:1.7;
}
/* 3 process cards - AI Proctoring */
.product-process:has(> .product-process-item:nth-child(3):last-child),
.product-process:has(> .product-process__item:nth-child(3):last-child) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    max-width: 1000px;
}

.product-feature-list {
    display: grid;
    gap: 10px;
    margin-top: 16px;
}

.product-feature {
    display: flex;
    align-items: flex-start;
    gap: 11px;

    padding: 14px 16px;

    background: #ffffff;

    border: 1px solid var(--product-border-light);
    border-radius: 10px;

    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease,
        border-color 0.2s ease;
}

.product-feature:hover {
    transform: translateY(-2px);

    border-color: var(--product-teal-border);

    box-shadow: var(--product-shadow);
}

.product-feature > span {
    flex: 0 0 auto;

    color: var(--product-teal);

    font-size: 16px;
    line-height: 1.4;
    font-weight: 700;
}

.product-feature > div {
    min-width: 0;

    color: var(--product-muted);

    font-size: 0.88rem;
    line-height: 1.65;
}

.product-feature p {
    margin: 0;
}

.product-feature strong {
    color: var(--product-text);
}
.product-media-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));

    gap: 16px;
    margin-top: 18px;
}

.product-media-card {
    position: relative;
    min-width: 0;
    overflow: hidden;
    background: var(--product-white);
    border: 1.5px solid var(--product-border-light);
    border-radius: 14px;
    box-shadow: var(--shadow-sm);
    transition: all 0.3s ease;
}

.product-media-card::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 3px;
    background: linear-gradient(
        90deg,
        var(--product-teal),
        var(--product-teal-light)
    );
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.3s ease;
}

.product-media-card:hover {
    transform: translateY(-4px);
    border-color: var(--product-teal-border);
    box-shadow: var(--shadow-lg);
}

.product-media-card:hover::after {
    transform: scaleX(1);
}
.product-media-image {
    width: 100%;
    height: 180px;
    overflow: hidden;
    background: #ffffff;
    border-bottom: 1px solid var(--product-border-light);
}

.product-media-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform 0.35s ease;
}

/* Image zoom - consistent with card hover */
.product-media-card:hover .product-media-image img {
    transform: scale(1.02);
}
.product-media-content {
    padding: 20px 22px 22px;
}

.product-media-content h3 {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 9px;
    color: var(--product-text);
    font-family: var(--product-body-font);
    font-size: 1rem;
    line-height: 1.4;
    font-weight: 700;
}

.product-media-content p {
    margin: 0;
    color: var(--product-muted);
    font-family: var(--product-body-font);
    font-size: 0.86rem;
    line-height: 1.7;
}

/* Step number */
.product-media-content .product-step-number {
    width: 32px;
    height: 32px;
    flex: 0 0 32px;
    margin: 0;
}
@media (max-width: 767px) {
    .product-media-image {
        height: auto;
    }

    .product-media-image img {
        width: 100%;
        height: auto;
        object-fit: contain;
    }

    .product-media-content {
        padding: 18px;
    }
}

.product-table-wrapper {
    width: 100%;

    overflow-x: auto;

    margin-top: 18px;

    border: 1px solid var(--product-border);
    border-radius: 12px;

    background: #ffffff;

    box-shadow: var(--product-shadow);

    -webkit-overflow-scrolling: touch;
}

.product-table {
    width: 100%;
    min-width: 650px;

    border-collapse: collapse;

    font-size: 14px;
}

.product-table th,
.product-table td {
    padding: 10px 13px;

    text-align: left;
    vertical-align: top;

    border-bottom: 1px solid var(--product-border-light);

    line-height: 1.55;
}

.product-table thead th {
    background: var(--product-teal-bg);
    color: var(--product-text);

    font-weight: 700;
}

.product-table tbody tr:nth-child(even) {
    background: var(--product-soft);
}

.product-table tbody tr:last-child td {
    border-bottom: 0;
}

.product-table-label {
    color: var(--product-text);
    font-weight: 700;
}

.product-positive {
    color: var(--product-teal-dark);
    font-weight: 700;
}
.product-usecase-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));

    gap: 12px;
    margin-top: 18px;
}

.product-usecase-card {
    min-width: 0;

    padding: 18px 10px;

    text-align: center;

    background: #ffffff;

    border: 1px solid var(--product-border-light);
    border-radius: 12px;

    box-shadow: var(--product-shadow);

    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease,
        border-color 0.2s ease;
}

.product-usecase-card:hover {
    transform: translateY(-3px);

    border-color: var(--product-teal-border);

    box-shadow: var(--product-shadow-hover);
}

.product-usecase-icon {
    min-height: 48px;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 7px;
}

.product-usecase-icon img {
    width: 48px;
    height: 48px;

    margin: 0 auto;

    object-fit: contain;
}

.product-usecase-card p {
    margin: 0;

    color: var(--product-muted);

    font-size: 0.78rem;
    font-weight: 600;
    line-height: 1.5;
}

.product-usecase-description {
    max-width: 900px;

    margin: 14px auto 0 !important;

    color: var(--product-muted);

    font-size: 0.86rem;
    line-height: 1.65;

    text-align: center;
}

.product-callout {
    margin: 14px 0 0;
    padding: 10px 14px;

    background: var(--product-teal-bg);

    border: 1px solid var(--product-teal-border);
    border-radius: 9px;

    color: var(--product-teal-dark);

    font-size: 0.84rem;
    font-weight: 600;
    line-height: 1.55;
}

.product-compliance-box {
    padding: 15px 18px;

    background: var(--product-soft);

    border: 1px solid var(--product-border);
    border-radius: 10px;

    color: var(--product-muted);

    font-size: 0.86rem;
    line-height: 1.65;
}

.product-compliance-box a {
    font-weight: 600;
}
.product-package-wrapper {
    display: flex;
    justify-content: center;
}

.product-package {
    width: 100%;
    max-width: 420px;

    padding: 25px 30px;

    background:
        linear-gradient(
            135deg,
            var(--product-teal),
            var(--product-teal-dark)
        );

    border-radius: 14px;

    color: #ffffff;
    text-align: center;

    box-shadow:
        0 12px 32px rgba(0, 184, 150, 0.18);
}

.product-package h3 {
    margin: 0 0 5px;

    color: #ffffff;

    font-family: var(--product-display-font);

    font-size: 23px;
    line-height: 1.25;
    font-weight: 700;
}

.product-package p {
    margin: 0 0 15px;

    color: rgba(255, 255, 255, 0.86);

    font-size: 0.84rem;
    line-height: 1.55;
}

.product-package-buttons {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
}

.product-package-quote,
.product-package-talk {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 38px;
    padding: 9px 17px;

    border-radius: 8px;

    font-size: 0.82rem;
    font-weight: 700;

    text-decoration: none !important;
}

.product-package-quote {
    background: #ffffff;
    color: var(--product-teal-dark) !important;
}

.product-package-talk {
    background: transparent;

    border: 1.5px solid rgba(255, 255, 255, 0.65);

    color: #ffffff !important;
}

.product-package-note {
   max-width: 950px;
    margin: 12px auto 0;
    color: var(--product-muted);

    font-size: 0.78rem;
    line-height: 1.5;

    text-align: center;
}
.product-video {
    position: relative;

    width: 100%;
    max-width: 900px;

    margin-left: auto;
    margin-right: auto;

    overflow: hidden;

    border-radius: 14px;

    background: #000000;

    box-shadow: var(--product-shadow-hover);
}

.product-video a {
    position: relative;

    display: block;

    overflow: hidden;

    background: #000000;

    text-decoration: none !important;
}

.product-video img {
    display: block;

    width: 100%;
    height: auto;

    transition: transform 0.35s ease;
}

.product-video a:hover img {
    transform: scale(1.02);
}
.product-faq-section,
.product-section.product-faq-section{
    width:100vw;
    margin-left:calc(-50vw + 50%);
    padding:60px 0;
    background:var(--gray-150);
    border-top:1px solid var(--gray-150);
    border-bottom:0;
}
.product-faq{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    width:100%;
    margin-top:48px;
}
.product-faq-column{
    min-width:0;
    display:flex;
    flex-direction:column;
    gap:14px;
}
.product-faq-item{
    position:relative;
    min-width:0;
    background:var(--white);
    border:1.5px solid var(--gray-150);
    border-radius:14px;
    padding:22px 26px;
    cursor:pointer;
    transition:all .2s ease;
    box-shadow:var(--shadow-sm);
}
.product-faq-item:hover{
    border-color:var(--teal-border);
    box-shadow:0 6px 24px rgba(0,184,150,.1);
}
.product-faq-item.open{
    border-color:var(--teal);
    box-shadow:0 0 0 3px rgba(0,184,150,.08);
}
.product-faq-question{
    width:100%;
    min-height:0;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin:0;
    padding:0;
    border:0;
    background:transparent;
    color:var(--gray-900);
    font-family:var(--font-b,"Outfit",sans-serif);
    font-size:.97rem;
    font-weight:700;
    line-height:1.45;
    text-align:left;
    cursor:pointer;
}
.product-faq-question:hover{color:var(--teal)}
.product-faq-question-text{min-width:0}
.product-faq-arrow{
    flex:0 0 auto;
    width:auto;
    height:auto;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin-left:auto;
    padding:0;
    background:transparent;
    border-radius:0;
    color:var(--gray-400);
    font-size:.82rem;
    line-height:1;
    transition:transform .2s ease,color .2s ease;
}
.product-faq-item.open .product-faq-arrow{
    transform:rotate(180deg);
    color:var(--teal);
}
.product-faq-answer{
    display:none;
    margin-top:13px;
    padding:0;
    color:var(--gray-500);
    font-family:var(--font-b,"Outfit",sans-serif);
    font-size:.88rem;
    line-height:1.75;
}
.product-faq-item.open .product-faq-answer{display:block}
.product-faq-item.open .product-faq-question{color:var(--teal-dark)}

.product-related {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));

    gap: 8px 12px;

    padding: 14px 16px;

    background: var(--product-soft);

    border: 1px solid var(--product-border);
    border-radius: 10px;

    color: var(--product-muted);

    font-size: 0.88rem;
    line-height: 1.6;
}

.product-related a {
    display: block;

    padding: 8px 10px;

    background: #ffffff;

    border: 1px solid var(--product-border);
    border-radius: 8px;

    color: var(--product-teal-dark);

    font-weight: 600;

    text-decoration: none;
}

.product-related a:hover {
    border-color: var(--product-teal-border);

    color: var(--product-teal);

    text-decoration: none;
}

.ai-proctoring-related {
    width: 100%;

    padding: 14px 16px;

    background: var(--product-soft);

    border: 1px solid var(--product-border);
    border-radius: 10px;

    color: var(--product-muted);

    font-size: 0.88rem;
    line-height: 1.65;
}

.ai-proctoring-related a {
    display: inline;

    margin: 0;
    padding: 0;

    background: transparent;

    border: 0;

    color: var(--product-teal-dark);

    font-size: inherit;
    font-weight: 600;
}

.ai-proctoring-related a:hover,
.ai-proctoring-related a:focus {
    text-decoration: underline;
}

.product-section:has(.ai-proctoring-related) {
    padding-bottom: 40px;
}

.product-final-cta{
  position:relative;
  overflow:hidden;
  /* width:100%;
  margin-top:10px; */
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(-50vw + 50%);
  padding:60px 25px;
  background:
    radial-gradient(ellipse 70% 80% at 50% 50%,rgba(0,212,170,.14) 0%,transparent 65%),
    linear-gradient(135deg,var(--gray-900,#0f172a) 0%,#0f2d20 100%);
  text-align:center;
  box-shadow:var(--shadow-xl);
}

.product-final-cta::before{
  content:"";
  position:absolute;
  top:50%;
  left:50%;
  width:800px;
  height:400px;
  transform:translate(-50%,-50%);
  background:radial-gradient(ellipse,rgba(0,212,170,.14) 0%,transparent 65%);
  pointer-events:none;
}

.product-final-cta h2{
  position:relative;
  margin:0 0 8px;
  color:#fff;
  font-family:var(--product-display-font);
  font-size:36px;
  line-height:1.15;
}

.product-final-cta p{
  position:relative;
  max-width:540px;
  margin:16px auto 38px;
  color:rgba(255,255,255,.55);
  font-size:1rem;
  line-height:1.78;
}

.product-final-buttons{position:relative;justify-content:center}

.product-final-cta .product-btn--light{
  box-shadow:0 8px 28px rgba(0,0,0,.2);
}
.product-final-cta .product-btn--outline-light{
  border-color:rgba(255,255,255,.3);
}
.product-page .modal-content {
    border: 0;
    border-radius: 14px;

    overflow: hidden;

    box-shadow:
        0 20px 60px rgba(0, 0, 0, 0.18);
}

.product-page .modal-header {
    padding: 16px 20px;

    border-bottom: 1px solid var(--product-border);
}

.product-page .modal-title {
    color: var(--product-text);

    font-family: var(--product-body-font);

    font-size: 20px;
    font-weight: 700;
}

.product-page .modal-body {
    padding: 20px;
}

.product-page .modal-footer {
    padding: 12px 20px;

    border-top: 1px solid var(--product-border);
}

.product-page .modal .control-label {
    display: block;

    margin: 0 0 5px;

    color: var(--product-text);

    font-size: 0.76rem;
    line-height: 1.5;
    font-weight: 700;
    letter-spacing: 0.04em;

    text-transform: uppercase;
}

.product-page .modal .form-control {
    width: 100%;
    min-height: 42px;

    margin-bottom: 12px;

    border: 1px solid #d9e5e2;
    border-radius: 8px;

    box-shadow: none;

    font-family: var(--product-body-font);
    font-size: 0.88rem;
}

.product-page .modal .form-control:focus {
    border-color: var(--product-teal);

    box-shadow:
        0 0 0 3px rgba(0, 184, 150, 0.10);
}

.product-page .modal .btn-primary {
    color: #ffffff;

    background: var(--product-teal);
    border-color: var(--product-teal);

    border-radius: 8px;

    font-family: var(--product-body-font);
    font-weight: 700;
}

.product-page .modal .btn-primary:hover {
    background: var(--product-teal-dark);
    border-color: var(--product-teal-dark);
}
.product-section--dark {
    position: relative;

    overflow: hidden;

    background:
        radial-gradient(
            ellipse 55% 90% at 90% 20%,
            rgba(0, 184, 150, 0.13) 0%,
            transparent 65%
        ),
        linear-gradient(
            135deg,
            #0f172a 0%,
            #132b38 55%,
            #12363d 100%
        );

    color: #ffffff;
}

.product-section--dark::before {
    content: "";

    position: absolute;

    width: 320px;
    height: 320px;

    top: -180px;
    left: -100px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(0, 212, 170, 0.10),
            transparent 70%
        );

    pointer-events: none;
}

.product-section--dark > .product-container {
    position: relative;
    z-index: 1;
}

.product-section--dark > h2,
.product-section--dark .product-container > h2 {
    color: #ffffff;
}

.product-section--dark > p,
.product-section--dark .product-container > p,
.product-section--dark .product-intro {
    color: rgba(255, 255, 255, 0.72);
}


/* Dark cards */

.product-section--dark .product-card,
.product-section--dark .product-process-item,
.product-section--dark .product-process__item,
.product-section--dark .product-usecase-card,
.product-section--dark .product-feature {
    background: rgba(255, 255, 255, 0.055);

    border-color: rgba(255, 255, 255, 0.10);

    box-shadow:
        0 10px 30px rgba(0, 0, 0, 0.16);

    backdrop-filter: blur(8px);
}

.product-section--dark .product-card h3,
.product-section--dark .product-process-item h3,
.product-section--dark .product-process__item h3 {
    color: #ffffff;
}

.product-section--dark .product-card p,
.product-section--dark .product-process-item p,
.product-section--dark .product-process__item p,
.product-section--dark .product-feature > div,
.product-section--dark .product-usecase-card p {
    color: rgba(255, 255, 255, 0.68);
}


/* Dark card hover */

.product-section--dark .product-card:hover,
.product-section--dark .product-process-item:hover,
.product-section--dark .product-process__item:hover,
.product-section--dark .product-usecase-card:hover,
.product-section--dark .product-feature:hover {
    transform: translateY(-4px);

    border-color: rgba(0, 212, 170, 0.35);

    background: rgba(255, 255, 255, 0.075);

    box-shadow:
        0 18px 40px rgba(0, 0, 0, 0.22);
}


/* Dark card icons */

.product-section--dark .product-card__icon {
    background: rgba(0, 212, 170, 0.10);

    border-color: rgba(0, 212, 170, 0.20);

    color: var(--product-teal-light);
}


/* Dark process numbers */

.product-section--dark .product-step-number,
.product-section--dark .product-process__number {
    background: var(--product-teal);

    box-shadow:
        0 5px 18px rgba(0, 184, 150, 0.25);
}


/* Dark callout */

.product-section--dark .product-callout {
    background: rgba(0, 212, 170, 0.08);

    border-color: rgba(0, 212, 170, 0.20);

    color: #8df5e2;
}


/* Dark FAQ */

.product-section--dark .product-faq-item {
    border-color: rgba(255, 255, 255, 0.12);
}

.product-section--dark .product-faq-question {
    color: rgba(255, 255, 255, 0.88);
}

.product-section--dark .product-faq-question:hover,
.product-section--dark .product-faq-item.open .product-faq-question {
    color: var(--product-teal-light);
}

.product-section--dark .product-faq-answer {
    color: rgba(255, 255, 255, 0.68);
}

.product-section--dark .product-faq-arrow {
    background: rgba(0, 212, 170, 0.10);
    color: var(--product-teal-light);
}
@media (max-width: 991px) {

    .product-container {
        padding-left: 18px;
        padding-right: 18px;
    }

    .product-hero-inner,
    .product-hero__inner {
        grid-template-columns: 1fr;

        gap: 32px;

        padding-top: 48px;
        padding-bottom: 48px;
    }

    .product-hero--featured .product-hero-inner {
        grid-template-columns: 1fr;
    }

    .product-hero-content,
    .product-hero__content {
        max-width: 760px;

        margin-left: auto;
        margin-right: auto;
    }

    .product-hero-media,
    .product-hero__image {
        width: 100%;
        max-width: 700px;

        margin-left: auto;
        margin-right: auto;
    }

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

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

    .product-usecase-grid {
        grid-template-columns:
            repeat(3, minmax(0, 1fr));
    }
}
@media (max-width: 767px) {

    .product-page {
        font-size: 15px;
    }

    .product-container {
        padding-left: 16px;
        padding-right: 16px;
    }

    .product-main {
        padding-bottom: 28px;
    }

    .product-section {
        padding: 24px 0;
    }

    .product-section > h2,
    .product-final-cta h2 {
        margin-bottom: 8px;

        font-size: 29px;
        line-height: 1.2;
    }

    .product-intro {
        margin-top: 7px;
        margin-bottom: 14px;

        font-size: 15px;
        line-height: 1.7;
    }

    .product-section > p {
        font-size: 15px;
        line-height: 1.68;
    }


    /* Mobile Hero */

    .product-hero::before {
        width: 320px;
        height: 320px;

        top: -140px;
        right: -90px;

        background:
            radial-gradient(
                circle,
                rgba(167, 255, 240, 0.20) 0%,
                rgba(0, 212, 170, 0.10) 38%,
                transparent 72%
            );

        filter: blur(8px);
    }

    .product-hero-inner,
    .product-hero__inner {
        gap: 24px;

        padding-top: 38px;
        padding-bottom: 38px;
    }

    .product-hero--featured .product-hero-inner {
        gap: 24px;
    }

    .product-hero-content h1,
    .product-hero h1,
    .product-hero--split .product-hero-content h1 {
        margin-bottom: 16px;

        font-size: 32px;
        line-height: 1.1;

        text-shadow: none;
    }

    .product-hero-content > p,
    .product-hero__description {
        margin-bottom: 20px;

        font-size: 0.95rem;
        line-height: 1.7;
    }

    .product-hero-buttons,
    .product-final-buttons,
    .product-hero__buttons {
        width: 100%;
        gap: 9px;
    }

    .product-hero-buttons .product-btn,
    .product-hero__buttons .product-btn {
        width: 100%;
    }


    /* Mobile grids */

    .product-card-grid,
    .product-media-grid,
    .product-process {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .product-card {
        padding: 18px;
    }

    .product-process-item,
    .product-process__item {
        padding: 22px 20px;
    }


    /* Mobile media */

    .product-media-image {
        height: auto;
    }

    .product-media-image img {
        width: 100%;
        height: auto;

        object-fit: contain;
    }


    /* Mobile features */

    .product-feature {
        padding: 12px 13px;
        gap: 9px;
    }


    /* Mobile use cases */

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

        gap: 9px;
    }

    .product-usecase-card {
        padding: 14px 7px;
    }


    /* Mobile FAQ */

    .product-faq {
        grid-template-columns: 1fr;
        gap: 12px;
        margin-top: 32px;
    }

    .product-faq-column {
        gap: 12px;
    }

    .product-faq-item {
        padding: 18px 20px;
    }

    .product-faq-question {
        font-size: 0.9rem;
    }

    .product-faq-answer {
        margin-top: 11px;
        font-size: 0.84rem;
    }


    /* Mobile table */

    .product-table {
        min-width: 620px;
    }


    /* Mobile related */

    .product-related {
        grid-template-columns: 1fr;

        padding: 12px;
    }


    /* Mobile package */

    .product-package {
        padding: 22px 18px;
    }


    /* Mobile CTA */

    .product-final-cta {
        padding: 30px 18px;

        border-radius: 12px;
    }

    .product-final-cta h2 {
        font-size: 27px;
    }


    /* Mobile dark section */

    .product-section--dark {
        padding-top: 34px;
        padding-bottom: 34px;
    }
}
@media (max-width: 480px) {

    .product-section {
        padding: 22px 0;
    }

    .product-section > h2,
    .product-final-cta h2 {
        font-size: 26px;
    }

    .product-hero-content h1,
    .product-hero h1,
    .product-hero--split .product-hero-content h1 {
        font-size: 29px;
    }

    .product-hero-inner,
    .product-hero__inner {
        gap: 20px;

        padding-top: 32px;
        padding-bottom: 32px;
    }

    .product-hero--featured .product-hero-inner {
        gap: 20px;
    }

    .product-usecase-card {
        padding: 12px 6px;
    }

    .product-usecase-icon img {
        width: 44px;
        height: 44px;
    }

    .product-btn {
        min-height: 44px;
        padding: 12px 20px;
    }

    .product-final-cta {
        padding: 27px 15px;
    }

    .product-section--dark {
        padding-top: 30px;
        padding-bottom: 30px;
    }
}
@media (prefers-reduced-motion: reduce) {

    .product-card,
    .product-process-item,
    .product-process__item,
    .product-media-card,
    .product-usecase-card,
    .product-btn,
    .product-faq-arrow,
    .product-video img,
    .product-hero-media img,
    .product-hero__image img {
        transition: none;
    }
}