:root {
    --v2-bg: #030712;
    --v2-bg-soft: #071426;
    --v2-navy: #071b38;
    --v2-blue: #00c2ff;
    --v2-blue-light: #5eebff;
    --v2-gold: #f5a623;
    --v2-white: #ffffff;
    --v2-text: #e8eef8;
    --v2-muted: #9eacbf;
    --v2-border: rgba(255,255,255,.09);
    --v2-glass: rgba(7,27,56,.68);
    --v2-container: 1400px;
}

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html {
    scroll-behavior: smooth;
}

body {
    min-height: 100vh;
    overflow-x: hidden;
    background:
        radial-gradient(circle at 80% 0%, rgba(0,194,255,.10), transparent 32%),
        #030712;
    color: var(--v2-text);
    font-family: Arial, Helvetica, sans-serif;
}

a {
    color: inherit;
    text-decoration: none;
}

.v2-container {
    width: min(92%, var(--v2-container));
    margin-inline: auto;
}


/* NAVBAR */

.v2-navbar {
    position: fixed;
    z-index: 1000;
    top: 0;
    inset-inline: 0;
    height: 88px;
    background: var(--v2-glass);
    border-bottom: 1px solid var(--v2-border);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
}

.v2-navbar-inner {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 35px;
}

.v2-logo {
    display: flex;
    align-items: center;
    gap: 12px;
    color: white;
}

.v2-logo-mark {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    border: 1px solid rgba(94,235,255,.32);
    border-radius: 14px;
    background:
        linear-gradient(135deg, rgba(0,194,255,.20), rgba(255,255,255,.03));
    color: var(--v2-blue-light);
    font-size: 19px;
    font-weight: 900;
    box-shadow: 0 0 30px rgba(0,194,255,.12);
}

.v2-logo-name {
    font-size: 17px;
    font-weight: 700;
    white-space: nowrap;
}

.v2-nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 34px;
    flex: 1;
}

.v2-nav a {
    position: relative;
    color: #cbd5e1;
    font-size: 14px;
    font-weight: 700;
    transition: .25s ease;
}

.v2-nav a:hover {
    color: white;
}

.v2-nav a::after {
    content: "";
    position: absolute;
    inset-inline-start: 0;
    bottom: -10px;
    width: 0;
    height: 2px;
    border-radius: 10px;
    background: var(--v2-blue);
    transition: width .25s ease;
}

.v2-nav a:hover::after {
    width: 100%;
}

.v2-navbar-actions,
.v2-languages {
    display: flex;
    align-items: center;
}

.v2-navbar-actions {
    gap: 18px;
}

.v2-languages {
    gap: 6px;
    padding: 5px;
    border: 1px solid var(--v2-border);
    border-radius: 14px;
    background: rgba(255,255,255,.03);
}

.v2-languages a {
    display: grid;
    place-items: center;
    min-width: 37px;
    height: 34px;
    padding-inline: 7px;
    border-radius: 9px;
    color: var(--v2-muted);
    font-size: 12px;
    font-weight: 800;
    transition: .25s ease;
}

.v2-languages a:hover,
.v2-languages a.active {
    background: rgba(0,194,255,.15);
    color: var(--v2-blue-light);
}

.v2-menu-button {
    display: none;
    width: 44px;
    height: 44px;
    padding: 10px;
    border: 1px solid var(--v2-border);
    border-radius: 12px;
    background: rgba(255,255,255,.04);
    cursor: pointer;
}

.v2-menu-button span {
    display: block;
    width: 100%;
    height: 2px;
    margin: 5px 0;
    border-radius: 4px;
    background: white;
}


/* TEMPORARY SECTIONS */

.v2-homepage {
    padding-top: 88px;
}

.v2-placeholder-section {
    min-height: 280px;
    padding: 100px 0;
    border-bottom: 1px solid var(--v2-border);
}

.v2-placeholder-section:nth-child(even) {
    background: rgba(255,255,255,.018);
}

.v2-placeholder-section h2 {
    margin-bottom: 18px;
    color: white;
    font-size: clamp(32px, 5vw, 56px);
}

.v2-placeholder-section p {
    max-width: 800px;
    color: var(--v2-muted);
    font-size: 18px;
    line-height: 1.8;
}


/* RTL */

html[dir="rtl"] body {
    direction: rtl;
}


/* MOBILE */

@media (max-width: 900px) {

    .v2-nav {
        display: none;
    }

    .v2-logo-name {
        display: none;
    }

    .v2-menu-button {
        display: block;
    }

}

@media (max-width: 520px) {

    .v2-navbar {
        height: 76px;
    }

    .v2-homepage {
        padding-top: 76px;
    }

    .v2-languages a {
        min-width: 31px;
        height: 31px;
        font-size: 11px;
    }

}


/* ==========================================================
   HERO V2
========================================================== */

.v2-hero {
    position: relative;
    min-height: calc(100vh - 88px);
    display: flex;
    align-items: center;
    overflow: hidden;
    isolation: isolate;
    background:
        radial-gradient(circle at 75% 40%, rgba(0,194,255,.13), transparent 27%),
        radial-gradient(circle at 25% 80%, rgba(30,64,175,.13), transparent 30%),
        linear-gradient(135deg, #020711 0%, #061427 50%, #020813 100%);
}

.v2-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -5;
    background:
        linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px);
    background-size: 70px 70px;
    mask-image: linear-gradient(to bottom, rgba(0,0,0,.9), transparent);
}

.v2-hero-grid {
    position: absolute;
    z-index: -4;
    inset: 0;
    opacity: .65;
    background:
        radial-gradient(
            circle at center,
            transparent 0,
            transparent 25%,
            rgba(0,194,255,.025) 26%,
            transparent 27%
        );
    background-size: 150px 150px;
}

.v2-hero-glow {
    position: absolute;
    z-index: -3;
    border-radius: 50%;
    filter: blur(100px);
    pointer-events: none;
}

.v2-hero-glow-one {
    top: 10%;
    inset-inline-end: 7%;
    width: 480px;
    height: 480px;
    background: rgba(0,194,255,.12);
    animation: v2Glow 8s ease-in-out infinite alternate;
}

.v2-hero-glow-two {
    bottom: -20%;
    inset-inline-start: 10%;
    width: 420px;
    height: 420px;
    background: rgba(37,99,235,.10);
    animation: v2Glow 10s ease-in-out infinite alternate-reverse;
}

.v2-hero-inner {
    position: relative;
    z-index: 10;
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(420px, .95fr);
    align-items: center;
    gap: clamp(50px, 7vw, 120px);
    padding-top: 70px;
    padding-bottom: 70px;
}

.v2-hero-content {
    position: relative;
    z-index: 5;
    max-width: 760px;
}

.v2-hero-badge {
    width: fit-content;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 27px;
    padding: 9px 15px;
    border: 1px solid rgba(94,235,255,.18);
    border-radius: 999px;
    background: rgba(0,194,255,.065);
    color: #a5f3fc;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

.v2-live-dot {
    position: relative;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #5eebff;
    box-shadow: 0 0 14px #00c2ff;
}

.v2-live-dot::after {
    content: "";
    position: absolute;
    inset: -5px;
    border: 1px solid rgba(94,235,255,.45);
    border-radius: 50%;
    animation: v2Pulse 2s infinite;
}

.v2-hero-title {
    max-width: 800px;
    margin: 0;
    color: #fff;
    font-size: clamp(52px, 6vw, 92px);
    font-weight: 900;
    line-height: .98;
    letter-spacing: -.045em;
    text-wrap: balance;
    text-shadow: 0 15px 60px rgba(0,0,0,.25);
}

.v2-hero-title::first-line {
    color: #fff;
}

.v2-hero-subtitle {
    max-width: 670px;
    margin-top: 28px;
    color: #9fb0c5;
    font-size: clamp(18px, 1.45vw, 23px);
    line-height: 1.65;
}

.v2-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 38px;
}

.v2-btn {
    min-height: 56px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 13px;
    padding: 0 27px;
    border: 1px solid transparent;
    border-radius: 14px;
    font-size: 14px;
    font-weight: 800;
    transition:
        transform .25s ease,
        background .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}

.v2-btn-primary {
    background:
        linear-gradient(135deg, #00c2ff 0%, #0879d9 100%);
    color: #fff;
    box-shadow:
        0 15px 40px rgba(0,153,255,.22),
        inset 0 1px rgba(255,255,255,.25);
}

.v2-btn-primary:hover {
    transform: translateY(-3px);
    box-shadow:
        0 20px 55px rgba(0,194,255,.32),
        inset 0 1px rgba(255,255,255,.25);
}

.v2-btn-arrow {
    font-size: 20px;
    transition: transform .25s ease;
}

.v2-btn-primary:hover .v2-btn-arrow {
    transform: translateX(4px);
}

html[dir="rtl"] .v2-btn-arrow {
    transform: rotate(180deg);
}

html[dir="rtl"] .v2-btn-primary:hover .v2-btn-arrow {
    transform: rotate(180deg) translateX(4px);
}

.v2-btn-secondary {
    border-color: rgba(255,255,255,.12);
    background: rgba(255,255,255,.035);
    color: #e5edf7;
    backdrop-filter: blur(12px);
}

.v2-btn-secondary:hover {
    transform: translateY(-3px);
    border-color: rgba(94,235,255,.30);
    background: rgba(255,255,255,.07);
}

.v2-hero-trust {
    display: flex;
    align-items: center;
    gap: 25px;
    margin-top: 52px;
}

.v2-trust-item {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.v2-trust-item strong {
    color: #fff;
    font-size: 16px;
    font-weight: 900;
}

.v2-trust-item span {
    color: #71839a;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .07em;
}

.v2-trust-divider {
    width: 1px;
    height: 35px;
    background: rgba(255,255,255,.10);
}


/* GLOBE */

.v2-hero-visual {
    position: relative;
    min-height: 600px;
    display: grid;
    place-items: center;
}

.v2-globe {
    position: relative;
    width: min(35vw, 520px);
    aspect-ratio: 1;
    display: grid;
    place-items: center;
}

.v2-globe::before {
    content: "";
    position: absolute;
    inset: 4%;
    border-radius: 50%;
    background:
        radial-gradient(circle at 35% 30%, rgba(94,235,255,.16), transparent 25%),
        radial-gradient(circle at 60% 70%, rgba(0,194,255,.10), transparent 28%);
    filter: blur(25px);
}

.v2-globe-core {
    position: relative;
    width: 72%;
    aspect-ratio: 1;
    overflow: hidden;
    display: grid;
    place-items: center;
    border: 1px solid rgba(94,235,255,.20);
    border-radius: 50%;
    background:
        radial-gradient(circle at 40% 35%, rgba(0,194,255,.16), transparent 25%),
        radial-gradient(circle at center, #08203b 0%, #04101f 58%, #020711 100%);
    box-shadow:
        inset 0 0 70px rgba(0,194,255,.08),
        0 0 80px rgba(0,194,255,.10);
    animation: v2GlobeFloat 7s ease-in-out infinite;
}

.v2-globe-core::before,
.v2-globe-core::after {
    content: "";
    position: absolute;
    border: 1px solid rgba(94,235,255,.10);
    border-radius: 50%;
}

.v2-globe-core::before {
    width: 35%;
    height: 100%;
}

.v2-globe-core::after {
    width: 70%;
    height: 100%;
}

.v2-world-lines {
    position: absolute;
    inset: 0;
    opacity: .35;
    background:
        linear-gradient(
            90deg,
            transparent 49.6%,
            rgba(94,235,255,.18) 50%,
            transparent 50.4%
        ),
        linear-gradient(
            transparent 49.6%,
            rgba(94,235,255,.18) 50%,
            transparent 50.4%
        );
}

.v2-globe-ring {
    position: absolute;
    border: 1px solid rgba(94,235,255,.13);
    border-radius: 50%;
}

.ring-a {
    inset: 0;
    animation: v2Rotate 25s linear infinite;
}

.ring-b {
    inset: 9%;
    transform: rotateX(68deg);
    animation: v2RotateReverse 18s linear infinite;
}

.ring-c {
    inset: 17%;
    transform: rotateY(68deg);
    animation: v2Rotate 20s linear infinite;
}

.v2-globe-ring::before {
    content: "";
    position: absolute;
    top: -4px;
    left: 50%;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #5eebff;
    box-shadow: 0 0 20px #00c2ff;
}

.v2-globe-logo {
    position: relative;
    z-index: 5;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.v2-globe-logo strong {
    color: white;
    font-size: clamp(36px, 4vw, 62px);
    font-weight: 900;
    letter-spacing: -.04em;
    text-shadow: 0 0 35px rgba(0,194,255,.35);
}

.v2-globe-logo span {
    margin-top: 5px;
    color: #5eebff;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .3em;
}

.v2-node {
    position: absolute;
    z-index: 7;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #5eebff;
    box-shadow:
        0 0 0 5px rgba(0,194,255,.08),
        0 0 22px #00c2ff;
    animation: v2Node 2.5s ease-in-out infinite;
}

.node-1 { top: 25%; left: 28%; }
.node-2 { top: 35%; right: 23%; animation-delay: .4s; }
.node-3 { bottom: 27%; left: 34%; animation-delay: .8s; }
.node-4 { bottom: 30%; right: 27%; animation-delay: 1.2s; }
.node-5 { top: 18%; left: 55%; animation-delay: 1.6s; }


/* FLOATING CARDS */

.v2-floating-card {
    position: absolute;
    z-index: 10;
    min-width: 175px;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 13px 15px;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 15px;
    background: rgba(5,19,37,.72);
    box-shadow: 0 20px 50px rgba(0,0,0,.25);
    backdrop-filter: blur(18px);
}

.v2-floating-card div {
    display: flex;
    flex-direction: column;
}

.v2-floating-card strong {
    color: white;
    font-size: 12px;
}

.v2-floating-card div span {
    margin-top: 2px;
    color: #73859c;
    font-size: 10px;
}

.v2-card-icon {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    border-radius: 10px;
    background: rgba(0,194,255,.10);
    color: #5eebff;
    font-size: 17px;
}

.card-one {
    top: 18%;
    inset-inline-start: -2%;
    animation: v2CardFloat 6s ease-in-out infinite;
}

.card-two {
    top: 50%;
    inset-inline-end: -2%;
    animation: v2CardFloat 7s ease-in-out infinite 1s;
}

.card-three {
    bottom: 13%;
    inset-inline-start: 7%;
    animation: v2CardFloat 8s ease-in-out infinite .5s;
}


/* SCROLL */

.v2-scroll-indicator {
    position: absolute;
    z-index: 20;
    bottom: 28px;
    left: 50%;
    width: 27px;
    height: 43px;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 20px;
    transform: translateX(-50%);
}

.v2-scroll-indicator span {
    position: absolute;
    top: 9px;
    left: 50%;
    width: 4px;
    height: 7px;
    border-radius: 5px;
    background: #5eebff;
    transform: translateX(-50%);
    animation: v2Scroll 2s infinite;
}


/* ANIMATIONS */

@keyframes v2Pulse {
    0% {
        opacity: 1;
        transform: scale(.7);
    }

    100% {
        opacity: 0;
        transform: scale(1.8);
    }
}

@keyframes v2Glow {
    from {
        opacity: .65;
        transform: scale(.9);
    }

    to {
        opacity: 1;
        transform: scale(1.15);
    }
}

@keyframes v2GlobeFloat {
    0%, 100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-14px);
    }
}

@keyframes v2Rotate {
    to {
        transform: rotate(360deg);
    }
}

@keyframes v2RotateReverse {
    to {
        transform: rotate(-360deg);
    }
}

@keyframes v2Node {
    0%, 100% {
        opacity: .55;
        transform: scale(.8);
    }

    50% {
        opacity: 1;
        transform: scale(1.25);
    }
}

@keyframes v2CardFloat {
    0%, 100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-12px);
    }
}

@keyframes v2Scroll {
    0% {
        opacity: 0;
        transform: translate(-50%, 0);
    }

    30% {
        opacity: 1;
    }

    100% {
        opacity: 0;
        transform: translate(-50%, 14px);
    }
}


/* HERO RESPONSIVE */

@media (max-width: 1100px) {

    .v2-hero-inner {
        grid-template-columns: 1fr .8fr;
        gap: 35px;
    }

    .v2-floating-card {
        display: none;
    }

}

@media (max-width: 850px) {

    .v2-hero {
        min-height: auto;
    }

    .v2-hero-inner {
        grid-template-columns: 1fr;
        padding-top: 85px;
        padding-bottom: 100px;
    }

    .v2-hero-content {
        max-width: 720px;
    }

    .v2-hero-visual {
        min-height: 430px;
    }

    .v2-globe {
        width: min(85vw, 450px);
    }

}

@media (max-width: 560px) {

    .v2-hero-inner {
        padding-top: 65px;
    }

    .v2-hero-title {
        font-size: clamp(44px, 15vw, 64px);
    }

    .v2-hero-subtitle {
        margin-top: 22px;
        font-size: 17px;
    }

    .v2-hero-actions {
        flex-direction: column;
    }

    .v2-btn {
        width: 100%;
    }

    .v2-hero-trust {
        gap: 14px;
        justify-content: space-between;
    }

    .v2-trust-item strong {
        font-size: 13px;
    }

    .v2-trust-item span {
        font-size: 8px;
    }

    .v2-hero-visual {
        min-height: 340px;
    }

    .v2-globe {
        width: min(90vw, 350px);
    }

    .v2-scroll-indicator {
        display: none;
    }

}

@media (prefers-reduced-motion: reduce) {

    .v2-hero *,
    .v2-hero *::before,
    .v2-hero *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
    }

}


/* ==========================================================
   STATISTICS V2
========================================================== */

.v2-statistics {
    position: relative;
    z-index: 20;
    padding: 0 0 90px;
    background: #030712;
}

.v2-statistics-grid {
    position: relative;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    overflow: hidden;
    margin-top: -45px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
    background:
        linear-gradient(
            135deg,
            rgba(12,30,52,.94),
            rgba(4,14,28,.96)
        );
    box-shadow:
        0 30px 80px rgba(0,0,0,.32),
        inset 0 1px rgba(255,255,255,.04);
    backdrop-filter: blur(20px);
}

.v2-stat-card {
    position: relative;
    min-height: 175px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 30px 20px;
    overflow: hidden;
    text-align: center;
}

.v2-stat-card:not(:last-child) {
    border-inline-end: 1px solid rgba(255,255,255,.07);
}

.v2-stat-glow {
    position: absolute;
    top: -70px;
    left: 50%;
    width: 150px;
    height: 120px;
    border-radius: 50%;
    background: rgba(0,194,255,.12);
    filter: blur(45px);
    transform: translateX(-50%);
    transition: .35s ease;
}

.v2-stat-card:hover .v2-stat-glow {
    background: rgba(0,194,255,.22);
    transform: translateX(-50%) scale(1.3);
}

.v2-stat-number {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: baseline;
    justify-content: center;
    color: #fff;
    font-size: clamp(34px,4vw,52px);
    font-weight: 900;
    line-height: 1;
    letter-spacing: -.04em;
}

.v2-stat-suffix {
    margin-inline-start: 4px;
    color: #5eebff;
}

.v2-stat-title {
    position: relative;
    z-index: 2;
    margin-top: 13px;
    color: #8192a8;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}


/* STATISTICS RESPONSIVE */

@media (max-width: 900px) {

    .v2-statistics-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .v2-stat-card:nth-child(2) {
        border-inline-end: 0;
    }

    .v2-stat-card:nth-child(-n+2) {
        border-bottom: 1px solid rgba(255,255,255,.07);
    }

}

@media (max-width: 520px) {

    .v2-statistics {
        padding-bottom: 65px;
    }

    .v2-statistics-grid {
        grid-template-columns: 1fr;
        margin-top: -25px;
    }

    .v2-stat-card {
        min-height: 135px;
        border-inline-end: 0 !important;
        border-bottom: 1px solid rgba(255,255,255,.07);
    }

    .v2-stat-card:last-child {
        border-bottom: 0;
    }

}

/* =========================================================
   QRVS V2 - HEADER FINAL
   ========================================================= */

.v2-navbar {
    position: relative;
    z-index: 1000;
    width: 100%;
    min-height: 92px;
    background: rgba(5, 25, 51, 0.96);
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.v2-navbar-inner {
    min-height: 92px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
}

/* LOGO */

.v2-logo {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-shrink: 0;
    color: #fff;
    text-decoration: none;
}

.v2-logo-mark {
    width: 52px;
    height: 52px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 16px;
    border: 1px solid rgba(0, 194, 255, 0.45);
    background: rgba(0, 194, 255, 0.08);
    color: #5eebff;
    font-size: 21px;
    font-weight: 900;
    letter-spacing: 1px;
}

.v2-logo-name {
    color: #fff;
    font-size: 18px;
    font-weight: 800;
    white-space: nowrap;
}

/* MAIN MENU */

.v2-nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 34px;
    margin-left: auto;
    margin-right: auto;
}

.v2-nav a {
    color: #cbd6e6;
    font-size: 15px;
    font-weight: 700;
    text-decoration: none;
    transition: color .2s ease;
}

.v2-nav a:hover {
    color: #5eebff;
}

/* ACTIONS */

.v2-navbar-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex-shrink: 0;
}

.v2-external-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 0 13px;
    border-radius: 10px;
    color: #dce7f5;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    transition: .2s ease;
}

.v2-external-link:hover {
    color: #5eebff;
    background: rgba(255,255,255,.05);
}

/* LANGUAGES */

.v2-languages {
    display: flex;
    align-items: center;
    padding: 5px;
    gap: 2px;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 14px;
    background: rgba(255,255,255,.025);
}

.v2-languages a {
    min-width: 38px;
    height: 36px;
    padding: 0 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    color: #9eacc0;
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
}

.v2-languages a:hover {
    color: #fff;
}

.v2-languages a.active {
    color: #79efff;
    background: rgba(0,194,255,.15);
}

/* ADMIN */

.v2-admin-button {
    min-height: 40px;
    padding: 0 15px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(0,194,255,.25);
    border-radius: 11px;
    background: rgba(0,194,255,.08);
    color: #70eaff;
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
}

.v2-admin-button:hover {
    background: rgba(0,194,255,.16);
    border-color: rgba(0,194,255,.45);
}

/* LOGIN / LOGOUT */

.v2-logout-form {
    margin: 0;
    padding: 0;
    display: flex;
}

.v2-login-button {
    appearance: none;
    -webkit-appearance: none;
    min-height: 40px;
    padding: 0 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 11px;
    background: rgba(255,255,255,.055);
    color: #fff;
    font-family: inherit;
    font-size: 13px;
    font-weight: 800;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
    cursor: pointer;
    transition: .2s ease;
}

.v2-login-button:hover {
    color: #5eebff;
    border-color: rgba(0,194,255,.35);
    background: rgba(0,194,255,.08);
}

/* MOBILE BUTTON */

.v2-menu-button {
    display: none;
    width: 44px;
    height: 44px;
    padding: 10px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 11px;
    background: rgba(255,255,255,.04);
    cursor: pointer;
}

.v2-menu-button span {
    display: block;
    width: 100%;
    height: 2px;
    margin: 5px 0;
    border-radius: 10px;
    background: #fff;
}

/* TABLET */

@media (max-width: 1250px) {

    .v2-navbar-inner {
        gap: 16px;
    }

    .v2-nav {
        gap: 20px;
    }

    .v2-logo-name {
        display: none;
    }

    .v2-external-link {
        padding-left: 8px;
        padding-right: 8px;
    }
}

/* MOBILE */

@media (max-width: 980px) {

    .v2-navbar {
        min-height: 76px;
    }

    .v2-navbar-inner {
        min-height: 76px;
        position: relative;
    }

    .v2-logo-mark {
        width: 46px;
        height: 46px;
        border-radius: 14px;
    }

    .v2-menu-button {
        display: block;
    }

    .v2-nav {
        display: none;
        position: absolute;
        top: calc(100% + 1px);
        left: 0;
        right: 0;
        width: 100%;
        padding: 18px;
        flex-direction: column;
        align-items: stretch;
        gap: 4px;
        border: 1px solid rgba(255,255,255,.08);
        border-radius: 0 0 18px 18px;
        background: #06172d;
        box-shadow: 0 24px 50px rgba(0,0,0,.35);
    }

    .v2-nav.is-open {
        display: flex;
    }

    .v2-nav a {
        padding: 14px 16px;
        border-radius: 10px;
    }

    .v2-nav a:hover {
        background: rgba(255,255,255,.05);
    }

    .v2-external-link {
        display: none;
    }

    .v2-admin-button {
        display: none;
    }
}

/* SMALL MOBILE */

@media (max-width: 620px) {

    .v2-languages {
        display: none;
    }

    .v2-login-button {
        padding: 0 12px;
        font-size: 12px;
    }
}

/* RTL */

html[dir="rtl"] .v2-navbar-inner {
    direction: rtl;
}

html[dir="rtl"] .v2-nav {
    direction: rtl;
}

html[dir="rtl"] .v2-navbar-actions {
    direction: rtl;
}


/* =========================================================
   V2 HEADER - UPLOADED SITE LOGO
   ========================================================= */

.v2-logo-mark-image {
    padding: 0;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

.v2-logo-mark-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}



/* =========================================================
   QRVS V2 - MOBILE HEADER COMPLETE
   Desktop remains unchanged
   ========================================================= */

.v2-mobile-only {
    display: none;
}

@media (max-width: 980px) {

    .v2-navbar {
        min-height: 72px;
    }

    .v2-navbar-inner {
        min-height: 72px;
        gap: 10px;
    }

    .v2-logo {
        flex-shrink: 0;
    }

    .v2-logo-mark {
        width: 44px;
        height: 44px;
        border-radius: 13px;
    }

    /*
     * Mobile dropdown.
     */
    .v2-nav {
        display: none;
        position: absolute;
        top: calc(100% + 1px);
        left: 0;
        right: 0;
        width: 100%;
        max-height: calc(100vh - 78px);
        overflow-y: auto;
        overscroll-behavior: contain;
        padding: 14px;
        gap: 3px;
        flex-direction: column;
        align-items: stretch;
        background: #06172d;
        border: 1px solid rgba(255,255,255,.08);
        border-top: 0;
        border-radius: 0 0 18px 18px;
        box-shadow: 0 24px 50px rgba(0,0,0,.38);
        z-index: 1000;
    }

    .v2-nav.is-open {
        display: flex;
    }

    .v2-nav > a {
        display: flex;
        align-items: center;
        min-height: 48px;
        padding: 12px 14px;
        border-radius: 10px;
        font-size: 15px;
    }

    .v2-nav > a:hover,
    .v2-nav > a:focus-visible {
        background: rgba(255,255,255,.06);
    }

    /*
     * Desktop-only actions remain hidden on mobile because
     * their equivalents are inside the hamburger menu.
     */
    .v2-external-link,
    .v2-admin-button,
    .v2-languages {
        display: none;
    }

    /*
     * Login / Logout stays visible in the top bar.
     */
    .v2-login-button {
        min-height: 42px;
        padding: 0 14px;
        white-space: nowrap;
    }

    .v2-logout-form {
        margin: 0;
    }

    /*
     * Hamburger touch target.
     */
    .v2-menu-button {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        width: 44px;
        height: 44px;
        min-width: 44px;
        padding: 0;
        border-radius: 12px;
        cursor: pointer;
    }

    /*
     * Mobile-only section inside dropdown.
     */
    .v2-mobile-only {
        display: flex;
        flex-direction: column;
        gap: 3px;
    }

    .v2-mobile-divider {
        height: 1px;
        margin: 8px 4px;
        background: rgba(255,255,255,.10);
    }

    .v2-mobile-only > a {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        min-height: 48px;
        padding: 12px 14px;
        border-radius: 10px;
        text-decoration: none;
    }

    .v2-mobile-only > a:hover,
    .v2-mobile-only > a:focus-visible {
        background: rgba(255,255,255,.06);
    }

    .v2-mobile-external {
        color: #e7f7ff;
    }

    .v2-mobile-admin {
        color: #ffffff;
        background: rgba(25,198,255,.10);
        border: 1px solid rgba(25,198,255,.18);
    }

    /*
     * Languages.
     */
    .v2-mobile-languages {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 16px;
        min-height: 56px;
        padding: 8px 10px 8px 14px;
    }

    .v2-mobile-language-label {
        font-size: 13px;
        font-weight: 600;
        color: rgba(255,255,255,.70);
    }

    .v2-mobile-language-options {
        display: flex;
        align-items: center;
        gap: 6px;
    }

    .v2-mobile-language-options a {
        display: flex;
        align-items: center;
        justify-content: center;
        min-width: 42px;
        height: 38px;
        padding: 0 10px;
        border-radius: 9px;
        text-decoration: none;
        font-size: 12px;
        font-weight: 700;
        color: rgba(255,255,255,.72);
        border: 1px solid rgba(255,255,255,.10);
    }

    .v2-mobile-language-options a.active {
        color: #ffffff;
        border-color: rgba(25,198,255,.50);
        background: rgba(25,198,255,.14);
    }

    /*
     * RTL.
     */
    html[dir="rtl"] .v2-nav {
        text-align: right;
    }

    html[dir="rtl"] .v2-mobile-only > a {
        direction: rtl;
    }

    html[dir="rtl"] .v2-mobile-languages {
        direction: rtl;
        padding: 8px 14px 8px 10px;
    }
}


/* Phones */
@media (max-width: 620px) {

    .v2-navbar {
        min-height: 68px;
    }

    .v2-navbar-inner {
        min-height: 68px;
        gap: 8px;
    }

    .v2-logo-mark {
        width: 42px;
        height: 42px;
        border-radius: 12px;
    }

    .v2-login-button {
        min-height: 40px;
        padding: 0 11px;
        font-size: 12px;
    }

    .v2-menu-button {
        width: 42px;
        height: 42px;
        min-width: 42px;
    }

    .v2-nav {
        max-height: calc(100vh - 70px);
        padding: 12px;
        border-radius: 0 0 16px 16px;
    }

    .v2-nav > a,
    .v2-mobile-only > a {
        min-height: 48px;
        padding: 12px;
    }

    .v2-mobile-languages {
        min-height: 54px;
        padding-left: 12px;
        padding-right: 8px;
    }

    html[dir="rtl"] .v2-mobile-languages {
        padding-left: 8px;
        padding-right: 12px;
    }
}


/* Very small phones */
@media (max-width: 380px) {

    .v2-navbar-inner {
        gap: 6px;
    }

    .v2-logo-mark {
        width: 40px;
        height: 40px;
    }

    .v2-login-button {
        padding: 0 9px;
        font-size: 11px;
    }

    .v2-menu-button {
        width: 40px;
        height: 40px;
        min-width: 40px;
    }

    .v2-mobile-language-options {
        gap: 4px;
    }

    .v2-mobile-language-options a {
        min-width: 38px;
        padding: 0 7px;
    }
}

/* =========================================================
   QRVS V2 - MOBILE HERO TOP SPACING FIX
   Desktop unchanged
   ========================================================= */

@media (max-width: 850px) {

    .v2-hero-inner {
        padding-top: 32px;
    }

}

@media (max-width: 560px) {

    .v2-hero-inner {
        padding-top: 28px;
    }

}



/* ==========================================================
   HERO ROTATING WORLD GLOBE
   ========================================================== */

.v2-globe-core {
    isolation: isolate;
}

/*
 * The map is clipped by .v2-globe-core's circular border.
 * Two identical maps travel horizontally to create an
 * endless globe rotation.
 */
.v2-world-map {
    position: absolute;
    inset: 0;
    z-index: 2;
    overflow: hidden;
    border-radius: 50%;
    pointer-events: none;

    -webkit-mask-image:
        radial-gradient(
            circle at center,
            #000 0%,
            #000 68%,
            rgba(0,0,0,.94) 78%,
            rgba(0,0,0,.60) 91%,
            transparent 100%
        );

    mask-image:
        radial-gradient(
            circle at center,
            #000 0%,
            #000 68%,
            rgba(0,0,0,.94) 78%,
            rgba(0,0,0,.60) 91%,
            transparent 100%
        );
}


/* spherical light/shadow */
.v2-world-map::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 5;
    border-radius: 50%;
    pointer-events: none;

    background:
        radial-gradient(
            circle at 30% 27%,
            rgba(94,235,255,.16),
            transparent 27%
        ),
        linear-gradient(
            90deg,
            rgba(0,4,12,.68) 0%,
            transparent 24%,
            transparent 70%,
            rgba(0,4,12,.78) 100%
        );

    box-shadow:
        inset 24px 0 45px rgba(0,0,0,.36),
        inset -30px 0 55px rgba(0,0,0,.52);
}


.v2-world-map-track {
    position: absolute;
    top: 0;
    left: 0;

    width: 200%;
    height: 100%;

    display: flex;

    will-change: transform;

    animation:
        v2WorldRotation 32s linear infinite;
}


.v2-world-map-svg {
    display: block;
    flex: 0 0 50%;

    width: 50%;
    height: 100%;

    overflow: visible;
}


.v2-world-continents {
    fill: rgba(18, 161, 205, .23);

    stroke: rgba(94, 235, 255, .62);
    stroke-width: 2;

    vector-effect: non-scaling-stroke;

    filter:
        drop-shadow(0 0 4px rgba(0,194,255,.34));
}


.v2-world-points {
    fill: #5eebff;

    filter:
        drop-shadow(0 0 7px rgba(0,194,255,.95));
}


/*
 * Longitude / latitude grid remains above the moving map.
 */
.v2-world-lines {
    z-index: 4;
    pointer-events: none;
}


/*
 * Existing QRVS logo remains readable in front.
 */
.v2-globe-logo {
    z-index: 8;
}


/*
 * Existing network nodes remain above the map.
 */
.v2-node {
    z-index: 9;
}


/*
 * Continuous westward rotation.
 */
@keyframes v2WorldRotation {

    from {
        transform: translate3d(0, 0, 0);
    }

    to {
        transform: translate3d(-50%, 0, 0);
    }

}


/*
 * Extra curved latitude lines make the flat SVG appear
 * wrapped around a spherical object.
 */
.v2-globe-core .v2-world-lines {
    background:
        linear-gradient(
            90deg,
            transparent 49.6%,
            rgba(94,235,255,.16) 50%,
            transparent 50.4%
        ),

        linear-gradient(
            transparent 49.6%,
            rgba(94,235,255,.15) 50%,
            transparent 50.4%
        ),

        radial-gradient(
            ellipse 80% 22% at center 28%,
            transparent 96%,
            rgba(94,235,255,.10) 97%,
            transparent 100%
        ),

        radial-gradient(
            ellipse 94% 28% at center 50%,
            transparent 96%,
            rgba(94,235,255,.12) 97%,
            transparent 100%
        ),

        radial-gradient(
            ellipse 80% 22% at center 72%,
            transparent 96%,
            rgba(94,235,255,.10) 97%,
            transparent 100%
        );
}


/* RTL:
   Grid direction places content and globe on opposite sides.
   The globe itself must not be mirrored.
 */
html[dir="rtl"] .v2-world-map,
html[dir="rtl"] .v2-world-map-track,
html[dir="rtl"] .v2-world-map-svg {
    direction: ltr;
}


/* Mobile */
@media (max-width: 900px) {

    .v2-world-map-track {
        animation-duration: 38s;
    }

}


/* Accessibility */
@media (prefers-reduced-motion: reduce) {

    .v2-world-map-track {
        animation-play-state: paused;
    }

}



/* ==========================================================
   HERO GLOBE - CLEAR WORLD CONTINENTS
   Keep existing rotation and layout unchanged
   ========================================================== */

/*
 * Make the continents read as a real map instead of blobs.
 */
.v2-world-continents {
    fill: rgba(0, 194, 255, .075) !important;

    stroke: rgba(94, 235, 255, .95) !important;
    stroke-width: 3.5 !important;
    stroke-linejoin: round;
    stroke-linecap: round;

    filter:
        drop-shadow(0 0 3px rgba(0,194,255,.80))
        drop-shadow(0 0 10px rgba(0,194,255,.28)) !important;
}


/*
 * Keep continent borders the same visual thickness
 * while the SVG moves/scales.
 */
.v2-world-continents path {
    vector-effect: non-scaling-stroke;
}


/*
 * Slightly enlarge the world texture inside the globe.
 */
.v2-world-map-svg {
    transform: scale(1.07);
    transform-origin: center center;
}


/*
 * Reduce the dark spherical overlay that was hiding
 * continent details.
 */
.v2-world-map::after {
    background:
        radial-gradient(
            circle at 29% 25%,
            rgba(94,235,255,.18),
            transparent 30%
        ),
        linear-gradient(
            90deg,
            rgba(0,4,12,.38) 0%,
            transparent 20%,
            transparent 76%,
            rgba(0,4,12,.48) 100%
        ) !important;

    box-shadow:
        inset 18px 0 34px rgba(0,0,0,.24),
        inset -22px 0 42px rgba(0,0,0,.34) !important;
}


/*
 * Make latitude / longitude lines softer so they
 * do not compete with continent outlines.
 */
.v2-globe-core .v2-world-lines {
    opacity: .27;
}


/*
 * Brighter connection points.
 */
.v2-world-points {
    fill: #8bf3ff !important;

    filter:
        drop-shadow(0 0 4px #00c2ff)
        drop-shadow(0 0 9px rgba(0,194,255,.8)) !important;
}


/*
 * Slight globe surface depth.
 */
.v2-globe-core {
    background:
        radial-gradient(
            circle at 34% 27%,
            rgba(0,194,255,.19),
            transparent 25%
        ),
        radial-gradient(
            circle at 52% 55%,
            rgba(7,44,75,.72),
            transparent 66%
        ),
        radial-gradient(
            circle at center,
            #071b31 0%,
            #030d1b 70%,
            #01050c 100%
        ) !important;
}


/* Mobile: keep map crisp */
@media (max-width: 850px) {

    .v2-world-continents {
        stroke-width: 3 !important;
    }

    .v2-world-map-svg {
        transform: scale(1.05);
    }

}



/* ==========================================================
   HERO GLOBE - DETAILED HAND-DRAWN WORLD MAP
   No external image / no external SVG
   ========================================================== */

.v2-world-continents path {
    fill: rgba(0, 194, 255, .10);
    stroke: rgba(94, 235, 255, .88);
    stroke-width: 2.1;
    stroke-linejoin: round;
    stroke-linecap: round;
    vector-effect: non-scaling-stroke;
}

.v2-world-continents {
    filter:
        drop-shadow(0 0 3px rgba(94, 235, 255, .48))
        drop-shadow(0 0 9px rgba(0, 194, 255, .20));
}

.v2-world-map::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 3;
    border-radius: 50%;
    pointer-events: none;

    background:
        radial-gradient(
            circle at 38% 34%,
            rgba(73, 218, 255, .08),
            transparent 32%
        );
}

/* Keep the center brighter while the sides curve into shadow */
.v2-world-map::after {
    background:
        radial-gradient(
            circle at 34% 28%,
            rgba(94,235,255,.13),
            transparent 29%
        ),
        linear-gradient(
            90deg,
            rgba(0,4,12,.76) 0%,
            rgba(0,4,12,.26) 17%,
            transparent 34%,
            transparent 66%,
            rgba(0,4,12,.30) 83%,
            rgba(0,4,12,.80) 100%
        );
}

/* Preserve globe direction in Arabic */
html[dir="rtl"] .v2-world-continents,
html[dir="rtl"] .v2-world-points {
    direction: ltr;
}


/* ==========================================================
   HERO GLOBE - TEMPORARILY DISABLE WORLD MAP
   Keep globe, grid, lighting, logo, nodes and outer rings.
   We will rebuild the real world map later.
   ========================================================== */

.v2-world-map {
    display: none !important;
}

/*
 * Restore globe grid visibility because the map is now hidden.
 */
.v2-globe-core .v2-world-lines {
    opacity: 1 !important;
}


/* ==========================================================
   QRVS V2 - TRUE SPHERICAL WORLD MAP
   Mathematical globe projection
   ========================================================== */

.v2-globe-core {
    position: relative;
    overflow: hidden;
    border-radius: 50%;
}

.v2-spherical-world {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    display: block;
    border-radius: 50%;
    z-index: 3;
    pointer-events: none;
}

/*
 * Existing longitude / latitude grid stays above the map.
 */
.v2-globe-core .v2-world-lines {
    position: absolute;
    z-index: 4;
    pointer-events: none;
}

/*
 * Keep existing dots visible.
 */
.v2-globe-core .v2-node {
    z-index: 5;
}

/*
 * Keep QRVS branding above everything.
 */
.v2-globe-brand {
    position: relative;
    z-index: 7;
}


/* Old experimental flat SVG world map stays disabled. */
.v2-world-map {
    display: none !important;
}



/* ==========================================================
   QRVS V2 - SPHERICAL WORLD CANVAS FINAL LAYER
   ========================================================== */

.v2-globe-core {
    position: relative;
    overflow: hidden;
    border-radius: 50%;
}

/*
 * Mathematical world map.
 * The JS performs the spherical projection.
 */
.v2-globe-core .v2-spherical-world {
    position: absolute !important;
    inset: 0 !important;

    width: 100% !important;
    height: 100% !important;

    display: block !important;

    border-radius: 50%;

    z-index: 3 !important;

    pointer-events: none;
}

/*
 * Existing spherical grid remains visible,
 * but softer than the continents.
 */
.v2-globe-core .v2-world-lines {
    position: absolute;
    inset: 0;

    z-index: 4 !important;

    opacity: .34 !important;

    pointer-events: none;
}

/*
 * Existing glowing location nodes.
 */
.v2-globe-core .v2-node {
    z-index: 5 !important;
}

/*
 * QRVS branding always remains in front.
 */
.v2-globe-logo,
.v2-globe-brand {
    position: relative;
    z-index: 7 !important;
}

/*
 * Old flat SVG experiment remains disabled.
 */
.v2-world-map {
    display: none !important;
}



/* ==========================================================
   QRVS V2
   REAL WEBGL / THREE.JS WORLD GLOBE
   ========================================================== */

.v2-globe-core {
    position: relative !important;
    overflow: hidden !important;
    border-radius: 50% !important;
    isolation: isolate !important;
}


/*
 * Real Globe.GL canvas
 */

.v2-real-globe {
    position: absolute !important;

    inset: 0 !important;

    width: 100% !important;
    height: 100% !important;

    overflow: hidden !important;

    border-radius: 50% !important;

    z-index: 5 !important;

    pointer-events: none !important;
}


.v2-real-globe > div {
    position: absolute !important;

    inset: 0 !important;

    width: 100% !important;
    height: 100% !important;
}


.v2-real-globe canvas {
    display: block !important;

    width: 100% !important;
    height: 100% !important;

    border-radius: 50% !important;

    outline: none !important;
}


/*
 * Completely disable previous experimental
 * manually-drawn world maps.
 */

.v2-spherical-world,
.v2-world-map,
.v2-world-map-track,
.v2-world-map-svg,
.v2-world-continents,
.v2-world-points {
    display: none !important;
}


/*
 * Hide old artificial globe lines.
 * Globe.GL now draws true spherical graticules.
 */

.v2-globe-core > .v2-world-lines {
    display: none !important;
}


/*
 * Keep QRVS branding above WebGL.
 */

.v2-globe-logo,
.v2-globe-brand {
    position: relative !important;

    z-index: 20 !important;

    pointer-events: none !important;
}


/*
 * Keep decorative nodes above globe.
 */

.v2-globe-core > .v2-node {
    z-index: 15 !important;
}


/*
 * Do not mirror the actual world geography
 * when the website switches to RTL.
 */

html[dir="rtl"] .v2-real-globe {
    direction: ltr !important;
}


/*
 * Mobile GPU optimization.
 */

@media (max-width: 850px) {

    .v2-real-globe {
        transform: translateZ(0);
        backface-visibility: hidden;
    }

}


/* =========================================================
   QRVS GLOBE - REAL WEBGL MAP ONLY
   Disable obsolete hand-drawn / canvas map layers.
   Keep globe decoration, logo, nodes and orbital rings.
   ========================================================= */

.v2-globe-core > .v2-spherical-world,
.v2-globe-core > .v2-world-map,
.v2-globe-core .v2-world-map-track,
.v2-globe-core .v2-world-map-svg,
.v2-globe-core .v2-world-continents,
.v2-globe-core .v2-world-points {
    display: none !important;
}

/*
 * WebGL Globe.GL layer
 */
#qrvs-real-globe {
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    overflow: hidden !important;
    border-radius: 50% !important;
    z-index: 3 !important;
    pointer-events: none !important;
}

#qrvs-real-globe canvas {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
}

/*
 * Keep QRVS logo above WebGL globe.
 */
.v2-globe-logo,
.v2-globe-brand {
    position: absolute !important;
    z-index: 10 !important;
}

/*
 * Keep decorative nodes visible.
 */
.v2-globe-core > .v2-node {
    z-index: 11 !important;
}



/* ==========================================================
   QRVS V2 - FINAL REAL 3D WEBGL GLOBE LAYER
   Globe.GL is the geographic sphere.
   Existing QRVS branding remains above it.
   ========================================================== */

.v2-globe-core {
    position: relative !important;
    overflow: hidden !important;
    border-radius: 50% !important;
    isolation: isolate !important;
}


/*
 * Remove the OLD CSS longitude/latitude pseudo-elements.
 * Globe.GL provides the actual spherical grid.
 */

.v2-globe-core::before,
.v2-globe-core::after {
    display: none !important;
}


/*
 * Real Globe.GL surface.
 */

#qrvs-real-globe.v2-real-globe {
    display: block !important;

    position: absolute !important;
    inset: 0 !important;

    width: 100% !important;
    height: 100% !important;

    border-radius: 50% !important;
    overflow: hidden !important;

    z-index: 20 !important;

    opacity: 1 !important;
    visibility: visible !important;

    pointer-events: none !important;

    transform: translateZ(0);
}


/*
 * Globe.GL creates internal wrappers.
 */

#qrvs-real-globe > div {
    position: absolute !important;

    inset: 0 !important;

    width: 100% !important;
    height: 100% !important;

    overflow: hidden !important;
}


/*
 * Actual WebGL canvas.
 */

#qrvs-real-globe canvas {
    display: block !important;

    position: absolute !important;

    top: 0 !important;
    left: 0 !important;

    width: 100% !important;
    height: 100% !important;

    max-width: none !important;
    max-height: none !important;

    opacity: 1 !important;
    visibility: visible !important;

    border-radius: 50% !important;

    z-index: 20 !important;

    pointer-events: none !important;
}


/*
 * Absolutely disable every previous map experiment.
 */

.v2-spherical-world,
.v2-world-map,
.v2-world-map-track,
.v2-world-map-svg,
.v2-world-continents,
.v2-world-points,
.v2-globe-core > .v2-world-lines {
    display: none !important;
}


/*
 * Existing decorative dots above WebGL.
 */

.v2-globe-core > .v2-node {
    position: absolute !important;
    z-index: 30 !important;
}


/*
 * QRVS logo MUST remain above the real globe.
 */

.v2-globe-logo,
.v2-globe-brand {
    position: relative !important;
    z-index: 40 !important;
}


/*
 * Geography itself must never be mirrored in Arabic RTL.
 */

html[dir="rtl"] #qrvs-real-globe {
    direction: ltr !important;
}


/* =========================================================
   QRVS - TEMPORARY WEBGL DISABLE
   Restore fast clean globe while lightweight map is prepared.
   ========================================================= */

#qrvs-real-globe,
#qrvs-real-globe canvas,
#qrvs-real-globe > div {
    display: none !important;
}

/* Restore original globe grid. */
.v2-globe-core > .v2-world-lines {
    display: block !important;
    opacity: .55 !important;
}

/* Restore original globe latitude/longitude pseudo lines. */
.v2-globe-core::before,
.v2-globe-core::after {
    display: block !important;
}

/* Old experimental maps remain disabled. */
.v2-spherical-world,
.v2-world-map,
.v2-world-map-track,
.v2-world-map-svg,
.v2-world-continents,
.v2-world-points {
    display: none !important;
}



/* =========================================================
   QRVS V2 - LIGHTWEIGHT WORLD GLOBE
   No WebGL / no Globe.GL / no runtime GeoJSON.
   ========================================================= */


/*
 * Keep all obsolete map experiments disabled.
 */

#qrvs-real-globe,
#qrvs-real-globe canvas,
#qrvs-real-globe > div,
.v2-spherical-world,
.v2-world-map,
.v2-world-map-track,
.v2-world-map-svg,
.v2-world-continents,
.v2-world-points {
    display: none !important;
}


/*
 * Globe clipping surface.
 */

.v2-globe-core {
    position: relative !important;
    overflow: hidden !important;
    border-radius: 50% !important;
    isolation: isolate !important;
}


/*
 * Lightweight map viewport.
 *
 * The map is intentionally wider than the sphere.
 * The circular globe clips it and creates the visual
 * impression of geography travelling around a globe.
 */

.v2-light-world {
    position: absolute;
    inset: 5%;

    z-index: 5;

    overflow: hidden;

    border-radius: 50%;

    pointer-events: none;

    -webkit-mask-image:
        radial-gradient(
            circle at center,
            #000 0%,
            #000 68%,
            rgba(0,0,0,.96) 82%,
            rgba(0,0,0,.25) 97%,
            transparent 100%
        );

    mask-image:
        radial-gradient(
            circle at center,
            #000 0%,
            #000 68%,
            rgba(0,0,0,.96) 82%,
            rgba(0,0,0,.25) 97%,
            transparent 100%
        );

    transform: translateZ(0);

    contain: strict;
}


/*
 * Two identical maps create a seamless continuous loop.
 */

.v2-light-world-track {
    position: absolute;

    left: 0;
    top: 13%;

    display: flex;

    width: 400%;
    height: 74%;

    will-change: transform;

    animation:
        qrvsLightWorldRotate 42s linear infinite;

    transform: translate3d(0,0,0);

    backface-visibility: hidden;
}


/*
 * Each map occupies half of the complete track.
 */

.v2-light-world-map {
    display: block;

    flex: 0 0 50%;

    width: 50%;
    height: 100%;

    object-fit: fill;

    user-select: none;

    opacity: .94;

    filter:
        drop-shadow(0 0 3px rgba(40,220,255,.34));

    transform: translateZ(0);
}


/*
 * Constant linear motion = no acceleration/deceleration
 * and therefore no visible "jerking" between rotations.
 */

@keyframes qrvsLightWorldRotate {

    from {
        transform: translate3d(0,0,0);
    }

    to {
        transform: translate3d(-50%,0,0);
    }

}


/*
 * Original spherical grid stays ABOVE the geography,
 * but remains subtle.
 */

.v2-globe-core > .v2-world-lines {
    display: block !important;

    position: absolute !important;

    z-index: 8 !important;

    opacity: .30 !important;

    pointer-events: none !important;
}


/*
 * Original latitude/longitude globe effects.
 */

.v2-globe-core::before,
.v2-globe-core::after {
    display: block !important;

    z-index: 9 !important;

    pointer-events: none !important;
}


/*
 * Decorative location nodes.
 */

.v2-globe-core > .v2-node {
    position: absolute !important;

    z-index: 20 !important;
}


/*
 * QRVS branding always remains above geography.
 */

.v2-globe-logo,
.v2-globe-brand {
    z-index: 30 !important;

    pointer-events: none !important;
}


/*
 * Arabic must NOT mirror geography.
 */

html[dir="rtl"] .v2-light-world,
html[dir="rtl"] .v2-light-world-track,
html[dir="rtl"] .v2-light-world-map {
    direction: ltr !important;
}


/*
 * Slightly reduce GPU work on mobile.
 */

@media (max-width: 850px) {

    .v2-light-world-track {
        animation-duration: 48s;
    }

    .v2-light-world-map {
        filter: none;
    }

}


/*
 * Accessibility.
 */

@media (prefers-reduced-motion: reduce) {

    .v2-light-world-track {
        animation: none !important;

        transform: translate3d(-10%,0,0);
    }

}



/* =========================================================
   QRVS V2 - SPHERICAL WORLD MAP CORRECTION
   Make the lightweight flat map visually conform
   to the existing globe instead of looking rectangular.
   ========================================================= */


/*
 * Exact spherical viewport.
 */

.v2-light-world {
    inset: 4% !important;

    border-radius: 50% !important;

    overflow: hidden !important;

    /*
     * Strong spherical mask:
     * geography fades/compresses naturally toward
     * the left/right curvature of the globe.
     */
    -webkit-mask-image:
        radial-gradient(
            ellipse 50% 50% at 50% 50%,
            #000 0%,
            #000 70%,
            rgba(0,0,0,.98) 78%,
            rgba(0,0,0,.82) 86%,
            rgba(0,0,0,.42) 93%,
            transparent 100%
        ) !important;

    mask-image:
        radial-gradient(
            ellipse 50% 50% at 50% 50%,
            #000 0%,
            #000 70%,
            rgba(0,0,0,.98) 78%,
            rgba(0,0,0,.82) 86%,
            rgba(0,0,0,.42) 93%,
            transparent 100%
        ) !important;

    perspective: 700px;

    transform:
        translateZ(0)
        scale(.96) !important;
}


/*
 * Map belt.
 *
 * Increase its vertical size so the geography reaches
 * the curved top/bottom of the globe instead of appearing
 * as a narrow rectangular strip.
 */

.v2-light-world-track {
    top: -1% !important;

    height: 102% !important;

    width: 400% !important;

    transform-style: preserve-3d;

    animation:
        qrvsSphericalWorldRotate 46s linear infinite !important;
}


/*
 * Stretch geography vertically into the sphere.
 */

.v2-light-world-map {
    height: 100% !important;

    object-fit: fill !important;

    opacity: .92 !important;

    transform:
        scaleY(1.08)
        translateZ(0);

    transform-origin: center center;
}


/*
 * Dark curved limb shading.

 * This is important:
 * flat geography becomes progressively darker toward
 * both sides exactly like a physical sphere.
 */

.v2-light-world::after {
    content: "";

    position: absolute;
    inset: 0;

    z-index: 7;

    border-radius: 50%;

    pointer-events: none;

    background:
        radial-gradient(
            ellipse at center,
            transparent 0%,
            transparent 53%,
            rgba(1,15,28,.08) 64%,
            rgba(1,15,28,.30) 76%,
            rgba(1,15,28,.68) 90%,
            rgba(1,15,28,.96) 100%
        );

    box-shadow:
        inset 42px 0 45px -35px rgba(0,0,0,.95),
        inset -42px 0 45px -35px rgba(0,0,0,.95);

}


/*
 * Subtle spherical highlight in the center.
 */

.v2-light-world::before {
    content: "";

    position: absolute;
    inset: 0;

    z-index: 6;

    border-radius: 50%;

    pointer-events: none;

    background:
        radial-gradient(
            ellipse 60% 82% at 50% 48%,
            rgba(35,220,255,.07) 0%,
            rgba(35,220,255,.025) 50%,
            transparent 72%
        );
}


/*
 * Smooth continuous movement.
 */

@keyframes qrvsSphericalWorldRotate {

    from {
        transform: translate3d(0,0,0);
    }

    to {
        transform: translate3d(-50%,0,0);
    }

}


/*
 * Grid remains above geography.
 */

.v2-globe-core > .v2-world-lines {
    z-index: 12 !important;
    opacity: .32 !important;
}


/*
 * QRVS and location dots remain on top.
 */

.v2-globe-core > .v2-node {
    z-index: 25 !important;
}

.v2-globe-logo,
.v2-globe-brand {
    z-index: 35 !important;
}


/*
 * Mobile.
 */

@media (max-width: 850px) {

    .v2-light-world-track {
        animation-duration: 52s !important;
    }

}


/*
 * Reduced motion.
 */

@media (prefers-reduced-motion: reduce) {

    .v2-light-world-track {
        animation: none !important;
    }

}



/* =========================================================
   QRVS V2 - FINAL SPHERICAL DEPTH
   Polar shading + curved glass illumination
   Lightweight CSS only - no WebGL
   ========================================================= */


/*
 * Keep the geographic surface perfectly circular.
 */
.v2-light-world {
    border-radius: 50% !important;
    overflow: hidden !important;

    /*
     * Gives the globe a subtle internal depth.
     */
    box-shadow:
        inset 0 22px 34px rgba(0, 3, 14, .58),
        inset 0 -24px 38px rgba(0, 3, 14, .68),
        inset 22px 0 34px rgba(0, 3, 14, .34),
        inset -22px 0 34px rgba(0, 3, 14, .42),
        0 0 22px rgba(18, 205, 255, .08) !important;
}


/*
 * SPHERICAL GLASS / LIMB SHADING
 *
 * Center remains clear.
 * Left/right edges become progressively darker.
 * Top/bottom poles receive curved shadow.
 */
.v2-light-world::after {
    content: "" !important;

    position: absolute !important;
    inset: 0 !important;

    display: block !important;

    border-radius: 50% !important;

    z-index: 10 !important;

    pointer-events: none !important;

    background:

        /* north pole shadow */
        radial-gradient(
            ellipse 72% 24% at 50% -2%,
            rgba(0, 2, 12, .88) 0%,
            rgba(0, 5, 18, .55) 38%,
            rgba(0, 8, 24, .16) 70%,
            transparent 100%
        ),

        /* south pole shadow */
        radial-gradient(
            ellipse 74% 25% at 50% 102%,
            rgba(0, 2, 12, .92) 0%,
            rgba(0, 5, 18, .60) 38%,
            rgba(0, 8, 24, .18) 70%,
            transparent 100%
        ),

        /* left spherical limb */
        radial-gradient(
            ellipse 34% 84% at -5% 50%,
            rgba(0, 2, 12, .86) 0%,
            rgba(0, 5, 18, .56) 45%,
            transparent 100%
        ),

        /* right spherical limb */
        radial-gradient(
            ellipse 34% 84% at 105% 50%,
            rgba(0, 2, 12, .88) 0%,
            rgba(0, 5, 18, .58) 45%,
            transparent 100%
        ),

        /* soft central glass illumination */
        radial-gradient(
            circle at 46% 43%,
            rgba(42, 219, 255, .10) 0%,
            rgba(16, 153, 196, .045) 34%,
            transparent 64%
        ) !important;

    box-shadow:
        inset 0 0 24px rgba(22, 211, 255, .10),
        inset 0 0 52px rgba(0, 5, 18, .42) !important;
}


/*
 * Thin atmospheric rim around the actual globe.
 */
.v2-light-world::before {
    content: "" !important;

    position: absolute !important;
    inset: 0 !important;

    display: block !important;

    border-radius: 50% !important;

    z-index: 11 !important;

    pointer-events: none !important;

    border: 1px solid rgba(45, 222, 255, .24) !important;

    box-shadow:
        inset 0 0 9px rgba(46, 224, 255, .20),
        inset 0 0 24px rgba(8, 134, 179, .10),
        0 0 9px rgba(31, 211, 255, .08) !important;

    background:
        linear-gradient(
            180deg,
            rgba(61, 226, 255, .08) 0%,
            transparent 17%,
            transparent 80%,
            rgba(31, 193, 236, .07) 100%
        ) !important;
}


/*
 * Geography remains below glass/shadow layers.
 */
.v2-light-world-track {
    z-index: 4 !important;
}


/*
 * Original spherical grid above geography,
 * but below the QRVS branding.
 */
.v2-globe-core > .v2-world-lines {
    z-index: 14 !important;
    opacity: .27 !important;
}


/*
 * Keep nodes and branding above everything.
 */
.v2-globe-core > .v2-node {
    z-index: 25 !important;
}

.v2-globe-logo,
.v2-globe-brand {
    z-index: 35 !important;
}


/*
 * Mobile: slightly lighter effects.
 */
@media (max-width: 850px) {

    .v2-light-world {
        box-shadow:
            inset 0 16px 26px rgba(0, 3, 14, .48),
            inset 0 -18px 28px rgba(0, 3, 14, .56),
            inset 14px 0 24px rgba(0, 3, 14, .28),
            inset -14px 0 24px rgba(0, 3, 14, .32) !important;
    }

}


/* =========================================================
   QRVS V2 - HEADER / HERO GAP FIX
   Navbar is now position: relative, therefore homepage
   no longer needs the old fixed-header top compensation.
   ========================================================= */

.v2-homepage {
    padding-top: 0 !important;
}

/* Override the old mobile fixed-header compensation too */
@media (max-width: 520px) {
    .v2-homepage {
        padding-top: 0 !important;
    }
}


/* =========================================================
   QRVS V2 - EXAMINATION CENTERS
   ========================================================= */

.v2-centers-page {
    min-height: 100vh;
    background:
        radial-gradient(
            circle at 78% 12%,
            rgba(0, 207, 255, .09),
            transparent 28%
        ),
        #030712;
    color: #eefaff;
}

.v2-centers-hero {
    position: relative;
    padding: 78px 0 54px;
    overflow: hidden;
    border-bottom: 1px solid rgba(94, 221, 255, .10);
}

.v2-centers-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(
            90deg,
            rgba(13, 210, 255, .035) 1px,
            transparent 1px
        ),
        linear-gradient(
            rgba(13, 210, 255, .035) 1px,
            transparent 1px
        );
    background-size: 42px 42px;
    mask-image:
        linear-gradient(to bottom, #000, transparent);
}

.v2-centers-hero-copy {
    position: relative;
    z-index: 2;
    max-width: 780px;
}

.v2-centers-eyebrow {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    padding: 0 13px;
    margin-bottom: 18px;
    border: 1px solid rgba(44, 221, 255, .28);
    border-radius: 999px;
    background: rgba(8, 184, 230, .06);
    color: #55ddff;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.v2-centers-hero h1 {
    margin: 0;
    color: #f5fdff;
    font-size: clamp(38px, 5vw, 66px);
    line-height: 1.02;
    letter-spacing: -.045em;
}

.v2-centers-hero p {
    max-width: 680px;
    margin: 20px 0 0;
    color: rgba(222, 243, 250, .69);
    font-size: 17px;
    line-height: 1.75;
}

.v2-centers-content {
    padding-top: 38px;
    padding-bottom: 90px;
}

.v2-centers-toolbar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 260px;
    gap: 12px;
    margin-bottom: 22px;
}

.v2-centers-toolbar input,
.v2-centers-toolbar select {
    width: 100%;
    min-height: 50px;
    padding: 0 16px;
    border: 1px solid rgba(92, 215, 255, .15);
    border-radius: 12px;
    outline: none;
    background: rgba(8, 20, 35, .86);
    color: #eafaff;
    font: inherit;
}

.v2-centers-toolbar input:focus,
.v2-centers-toolbar select:focus {
    border-color: rgba(57, 218, 255, .55);
    box-shadow: 0 0 0 3px rgba(20, 202, 255, .07);
}

.v2-centers-map-shell {
    overflow: hidden;
    border: 1px solid rgba(80, 219, 255, .16);
    border-radius: 20px;
    background: #07111d;
    box-shadow:
        0 24px 70px rgba(0, 0, 0, .28);
}

.v2-centers-map-heading {
    display: flex;
    align-items: center;
    gap: 9px;
    min-height: 52px;
    padding: 0 18px;
    border-bottom: 1px solid rgba(77, 220, 255, .12);
    color: rgba(231, 249, 255, .86);
    font-size: 13px;
    font-weight: 750;
    letter-spacing: .035em;
}

.v2-centers-map-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #2de1ff;
    box-shadow: 0 0 12px #2de1ff;
}

#qrvs-centers-map {
    width: 100%;
    height: min(58vh, 580px);
    min-height: 420px;
    background: #06111e;
}

.v2-centers-list-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin: 46px 0 18px;
    color: #effbff;
    font-size: 23px;
    font-weight: 800;
}

.v2-centers-list-heading strong {
    display: grid;
    place-items: center;
    min-width: 38px;
    height: 30px;
    padding: 0 10px;
    border: 1px solid rgba(55, 218, 255, .20);
    border-radius: 999px;
    background: rgba(27, 196, 237, .07);
    color: #5be3ff;
    font-size: 13px;
}

.v2-centers-grid {
    display: grid;
    grid-template-columns:
        repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.v2-center-card {
    position: relative;
    padding: 22px;
    overflow: hidden;
    border: 1px solid rgba(74, 211, 255, .13);
    border-radius: 16px;
    background:
        linear-gradient(
            145deg,
            rgba(11, 31, 50, .95),
            rgba(5, 16, 29, .95)
        );
    box-shadow:
        inset 0 1px rgba(255, 255, 255, .02),
        0 16px 40px rgba(0, 0, 0, .16);
    transition:
        transform .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}

.v2-center-card:hover {
    transform: translateY(-3px);
    border-color: rgba(59, 221, 255, .32);
    box-shadow:
        0 20px 46px rgba(0, 0, 0, .22),
        0 0 26px rgba(19, 199, 241, .04);
}

.v2-center-card[hidden] {
    display: none !important;
}

.v2-center-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 18px;
}

.v2-center-pin {
    display: grid;
    place-items: center;
    width: 35px;
    height: 35px;
    border: 1px solid rgba(55, 220, 255, .25);
    border-radius: 50%;
    background: rgba(32, 203, 242, .07);
    color: #52e1ff;
    font-size: 19px;
}

.v2-center-country {
    color: rgba(109, 225, 248, .72);
    font-size: 12px;
    font-weight: 750;
    text-transform: uppercase;
    letter-spacing: .07em;
}

.v2-center-card h2 {
    min-height: 52px;
    margin: 0;
    color: #f1fbff;
    font-size: 18px;
    line-height: 1.45;
}

.v2-center-city {
    margin: 9px 0 21px;
    color: rgba(215, 239, 246, .58);
    font-size: 14px;
}

.v2-center-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
}

.v2-center-actions button,
.v2-center-actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 0 13px;
    border-radius: 9px;
    font: inherit;
    font-size: 12px;
    font-weight: 750;
    text-decoration: none;
    cursor: pointer;
}

.v2-center-actions button {
    border: 1px solid rgba(48, 222, 255, .28);
    background: rgba(35, 205, 243, .10);
    color: #70e8ff;
}

.v2-center-actions a {
    border: 1px solid rgba(255, 255, 255, .08);
    background: rgba(255, 255, 255, .035);
    color: rgba(234, 249, 253, .76);
}

.v2-centers-empty {
    padding: 48px 20px;
    text-align: center;
    color: rgba(218, 241, 247, .60);
}

.qrvs-map-popup {
    display: grid;
    gap: 5px;
    min-width: 190px;
}

.qrvs-map-popup strong {
    color: #071827;
    font-size: 13px;
}

.qrvs-map-popup span {
    color: #49616e;
    font-size: 12px;
}


/* RTL */

.v2-rtl .v2-centers-hero-copy,
.v2-rtl .v2-center-card {
    text-align: right;
}

.v2-rtl .v2-centers-eyebrow {
    letter-spacing: 0;
}


/* TABLET */

@media (max-width: 980px) {

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

}


/* MOBILE */

@media (max-width: 680px) {

    .v2-centers-hero {
        padding: 52px 0 38px;
    }

    .v2-centers-toolbar {
        grid-template-columns: 1fr;
    }

    #qrvs-centers-map {
        min-height: 390px;
        height: 52vh;
    }

    .v2-centers-grid {
        grid-template-columns: 1fr;
    }

    .v2-center-card h2 {
        min-height: auto;
    }

}

/* QRVS Exam Centers - exact physical address */
.v2-center-address {
    min-height: 48px;
    margin: -8px 0 18px;
    color: rgba(214, 239, 247, .66);
    font-size: 13px;
    line-height: 1.65;
}



/* =========================================================
   QRVS V2 - LIGHT PREMIUM TEST
   ---------------------------------------------------------
   Experimental light visual theme.
   Structure, dimensions and animations remain unchanged.
   Globe itself remains dark for visual contrast.
   ========================================================= */


/* ---------- GLOBAL ---------- */

:root {
    --v2-bg: #f4f9fc;
    --v2-bg-soft: #eaf4f9;
    --v2-navy: #0b2945;

    --v2-text: #102a43;
    --v2-muted: #5d7285;

    --v2-white: #ffffff;

    /* Keep QRVS identity */
    --v2-blue: #009ed1;
    --v2-blue-light: #16c7e8;
}


html,
body {
    background: #f4f9fc !important;
    color: #102a43;
}


.v2-homepage {
    background:
        radial-gradient(
            circle at 82% 8%,
            rgba(0, 174, 220, .10),
            transparent 28%
        ),
        radial-gradient(
            circle at 12% 35%,
            rgba(53, 116, 190, .055),
            transparent 32%
        ),
        linear-gradient(
            180deg,
            #f7fbfd 0%,
            #edf6fa 52%,
            #f8fbfd 100%
        ) !important;

    color: #102a43 !important;
}


/* ---------- HEADER ---------- */

.v2-header {
    background:
        rgba(248, 252, 254, .91) !important;

    border-bottom:
        1px solid rgba(9, 92, 126, .12) !important;

    box-shadow:
        0 8px 30px rgba(14, 58, 82, .055) !important;

    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}


.v2-header a,
.v2-header button {
    color: #17364d;
}


/* ---------- HERO ---------- */

.v2-hero {
    background:
        radial-gradient(
            circle at 76% 42%,
            rgba(0, 190, 230, .13),
            transparent 30%
        ),
        radial-gradient(
            circle at 22% 78%,
            rgba(51, 112, 184, .07),
            transparent 32%
        ),
        linear-gradient(
            135deg,
            #f8fcfe 0%,
            #edf7fb 48%,
            #e7f3f8 100%
        ) !important;

    color: #102a43 !important;
}


/* subtle grid */

.v2-hero::before {
    opacity: .34 !important;
}


/* ---------- HERO TEXT ---------- */

.v2-hero h1,
.v2-hero h2,
.v2-hero h3,
.v2-hero strong {
    color: #0c2940;
}


.v2-hero p {
    color: #536b7d;
}


/* cyan accent stays visible */

.v2-hero .v2-eyebrow,
.v2-hero .v2-accent {
    color: #008fbd;
}


/* ---------- HERO BUTTONS ---------- */

.v2-hero a:not(.v2-floating-card) {
    transition:
        transform .2s ease,
        box-shadow .2s ease;
}


/* ---------- FLOATING GLOBE CARDS ---------- */

.v2-floating-card {
    background:
        rgba(255, 255, 255, .82) !important;

    border:
        1px solid rgba(4, 138, 180, .17) !important;

    box-shadow:
        0 14px 36px rgba(17, 70, 98, .11),
        inset 0 1px 0 rgba(255,255,255,.85) !important;

    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);

    color: #16364d !important;
}


.v2-floating-card strong {
    color: #102f46 !important;
}


.v2-floating-card span:not(.v2-card-icon) {
    color: #60798a !important;
}


.v2-card-icon {
    color: #009fcf !important;
}


/* Linked exam centers card */

.v2-exam-centers-link {
    color: #16364d !important;
    text-decoration: none !important;
}


.v2-exam-centers-link:hover {
    background:
        rgba(255,255,255,.96) !important;

    border-color:
        rgba(0, 167, 215, .34) !important;

    box-shadow:
        0 17px 42px rgba(10, 92, 124, .16) !important;

    transform: translateY(-2px);
}


/* ---------- GENERAL SECTIONS ---------- */

.v2-homepage section:not(.v2-hero) {
    color: #17344a;
}


.v2-homepage section:not(.v2-hero) h1,
.v2-homepage section:not(.v2-hero) h2,
.v2-homepage section:not(.v2-hero) h3 {
    color: #102d43;
}


.v2-homepage section:not(.v2-hero) p {
    color: #5b7182;
}


/* ---------- GENERIC GLASS CARDS ---------- */

.v2-homepage section:not(.v2-hero) article {
    background:
        rgba(255,255,255,.72);

    border-color:
        rgba(16, 105, 139, .11);

    box-shadow:
        0 12px 34px rgba(26, 74, 98, .07);
}


/* =========================================================
   IMPORTANT
   ---------------------------------------------------------
   Do NOT recolor the actual globe.
   Its dark navy appearance provides the focal contrast
   against the new light hero.
   ========================================================= */

.v2-globe-core,
.v2-light-world {
    /* existing globe styling intentionally preserved */
}


/* ---------- MOBILE ---------- */

@media (max-width: 850px) {

    .v2-header {
        background:
            rgba(248,252,254,.96) !important;
    }

    .v2-floating-card {
        background:
            rgba(255,255,255,.90) !important;
    }
}


/* ===== END QRVS V2 LIGHT PREMIUM TEST ===== */


/* =========================================================
   QRVS V2 - CORRECT LIGHT MODE TEST
   ========================================================= */


/* ---------- PAGE ---------- */

html,
body {
    background: #eef7fb !important;
    color: #102b3d !important;
}


/* ---------- REAL HEADER: .v2-navbar ---------- */

.v2-navbar {
    background: rgba(255,255,255,.96) !important;

    border-bottom:
        1px solid rgba(16,91,125,.12) !important;

    box-shadow:
        0 8px 30px rgba(23,74,100,.08) !important;

    backdrop-filter: blur(18px) !important;
}


.v2-navbar .v2-logo-name {
    color: #0b2940 !important;
}


.v2-navbar .v2-nav a {
    color: #35566a !important;
}


.v2-navbar .v2-nav a:hover {
    color: #009dcc !important;
}


.v2-navbar-actions a,
.v2-navbar-actions button {
    color: #173b50 !important;
}


/* ---------- HERO ---------- */

.v2-hero,
section.v2-hero {

    background:

        radial-gradient(
            circle at 76% 45%,
            rgba(0,190,235,.18) 0%,
            rgba(0,190,235,.08) 25%,
            transparent 48%
        ),

        radial-gradient(
            circle at 12% 20%,
            rgba(45,130,190,.08),
            transparent 34%
        ),

        linear-gradient(
            125deg,
            #ffffff 0%,
            #f5fbfd 35%,
            #e8f5fa 68%,
            #dceff6 100%
        ) !important;

    color: #102c40 !important;
}


/* Grid remains visible but subtle */

.v2-hero-grid {
    opacity: .22 !important;
}


/* ---------- HERO TEXT ---------- */

.v2-hero-title {
    color: #08283e !important;
    text-shadow: none !important;
}


.v2-hero-subtitle {
    color: #587181 !important;
    text-shadow: none !important;
}


.v2-hero-badge {
    background: rgba(0,167,211,.08) !important;

    border-color:
        rgba(0,143,188,.20) !important;

    color: #007fa7 !important;
}


/* ---------- BUTTONS ---------- */

.v2-hero .v2-btn-primary {

    background:
        linear-gradient(
            135deg,
            #00bce9,
            #0785c5
        ) !important;

    color: #ffffff !important;

    border-color: transparent !important;

    box-shadow:
        0 12px 30px rgba(0,145,190,.20) !important;
}


.v2-hero .v2-btn-secondary {

    background:
        rgba(255,255,255,.80) !important;

    color: #15394e !important;

    border-color:
        rgba(12,103,143,.18) !important;

    box-shadow:
        0 8px 25px rgba(20,75,100,.07) !important;
}


/* ---------- FLOATING CARDS ---------- */

.v2-floating-card,
a.v2-floating-card {

    background:
        rgba(255,255,255,.93) !important;

    border:
        1px solid rgba(0,145,185,.17) !important;

    box-shadow:
        0 15px 40px rgba(20,70,95,.13) !important;

    backdrop-filter:
        blur(16px) !important;
}


.v2-floating-card strong {
    color: #0c3047 !important;
}


.v2-floating-card span {
    color: #607989 !important;
}


.v2-floating-card .v2-card-icon {
    color: #009fcf !important;
}


/* =========================================================
   GLOBE
   IMPORTANT: DO NOT LIGHTEN IT
   ========================================================= */

.v2-globe-core {
    filter:
        drop-shadow(
            0 22px 48px rgba(0,85,115,.22)
        ) !important;
}


/* ---------- TRUST / STATS ---------- */

.v2-hero-trust strong {
    color: #12364b !important;
}


.v2-hero-trust span {
    color: #6c8290 !important;
}


/* ---------- NEXT SECTION ---------- */

.v2-hero + section {
    background: #f8fcfd !important;
}


/* ---------- MOBILE ---------- */

@media (max-width: 850px) {

    .v2-navbar {
        background:
            rgba(255,255,255,.98) !important;
    }

    .v2-hero,
    section.v2-hero {

        background:

            radial-gradient(
                circle at 50% 55%,
                rgba(0,190,230,.13),
                transparent 40%
            ),

            linear-gradient(
                180deg,
                #ffffff,
                #e8f5f9
            ) !important;
    }

}


/* ===== END CORRECT LIGHT MODE TEST ===== */

/* =========================================================
   QRVS V2 - MEDIUM LIGHT BLUE FINAL TUNING
   ========================================================= */


/* PAGE BACKGROUND */
html,
body,
.v2-homepage {
    background: #dcecf5 !important;
    color: #102f45 !important;
}


/* HEADER - KEEP CLEAN WHITE */
.v2-navbar {
    background: rgba(250,253,255,.97) !important;
    border-bottom: 1px solid rgba(20,95,135,.14) !important;
    box-shadow: 0 8px 26px rgba(25,70,100,.08) !important;
}


/* HERO - LIGHT BLUE BUT NOT TOO WHITE */
.v2-hero,
section.v2-hero {
    background:
        radial-gradient(
            circle at 77% 46%,
            rgba(25,190,230,.22) 0%,
            rgba(40,180,220,.12) 24%,
            transparent 48%
        ),

        radial-gradient(
            circle at 15% 25%,
            rgba(65,145,200,.10) 0%,
            transparent 38%
        ),

        linear-gradient(
            120deg,
            #e8f3f9 0%,
            #deedf6 34%,
            #cfe7f3 68%,
            #c4e2ef 100%
        ) !important;

    color: #0b2e46 !important;
}


/* MAIN TITLE - ALL DARK NAVY */
.v2-hero-title,
.v2-hero-title *,
.v2-hero h1,
.v2-hero h1 * {
    color: #082d49 !important;
    -webkit-text-fill-color: #082d49 !important;
    text-shadow: none !important;
}


/* SUBTITLE */
.v2-hero-subtitle {
    color: #526f82 !important;
}


/* BADGE */
.v2-hero-badge {
    background: rgba(255,255,255,.48) !important;
    border-color: rgba(0,145,190,.25) !important;
    color: #007fa8 !important;
    box-shadow: 0 6px 20px rgba(20,100,140,.05) !important;
}


/* GRID - MORE VISIBLE */
.v2-hero-grid {
    opacity: .30 !important;
}


/* FLOATING CARDS */
.v2-floating-card,
a.v2-floating-card {
    background: rgba(248,252,255,.94) !important;
    border: 1px solid rgba(15,130,175,.18) !important;
    box-shadow:
        0 14px 34px rgba(20,75,105,.14) !important;
}

.v2-floating-card strong {
    color: #0a3049 !important;
}

.v2-floating-card span {
    color: #5e7889 !important;
}


/* PRIMARY BUTTON */
.v2-hero .v2-btn-primary {
    background:
        linear-gradient(
            135deg,
            #08b9e5 0%,
            #0786c8 100%
        ) !important;

    color: #ffffff !important;

    box-shadow:
        0 12px 28px rgba(0,135,185,.20) !important;
}


/* SECONDARY BUTTON */
.v2-hero .v2-btn-secondary {
    background: rgba(250,253,255,.88) !important;
    color: #12364d !important;
    border-color: rgba(20,105,145,.18) !important;
}


/* BOTTOM HERO STATISTICS */
.v2-hero-trust strong {
    color: #103850 !important;
}

.v2-hero-trust span {
    color: #607b8c !important;
}


/* =========================================================
   GLOBE
   KEEP THE GLOBE DARK
   ========================================================= */

.v2-globe-core {
    filter:
        drop-shadow(0 20px 42px rgba(0,80,115,.25))
        !important;
}


/* QRVS MUST STAY WHITE INSIDE THE DARK GLOBE */
.v2-globe-logo strong,
.v2-globe-brand strong,
.v2-globe-logo,
.v2-globe-brand {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}


/* GLOBAL NETWORK UNDER QRVS */
.v2-globe-logo span,
.v2-globe-brand span {
    color: #5eebff !important;
    -webkit-text-fill-color: #5eebff !important;
}


/* NEXT SECTION */
.v2-hero + section {
    background: #edf6fa !important;
}


/* MOBILE */
@media (max-width: 850px) {

    .v2-hero,
    section.v2-hero {
        background:
            radial-gradient(
                circle at 50% 55%,
                rgba(25,185,225,.17),
                transparent 42%
            ),
            linear-gradient(
                180deg,
                #e5f2f8 0%,
                #cfe7f2 100%
            ) !important;
    }
}


/* ===== END MEDIUM LIGHT BLUE FINAL TUNING ===== */


/* =========================================================
   QRVS V2 - MEDIUM LIGHT BLUE FINAL TUNING
   ========================================================= */


/* PAGE BACKGROUND */
html,
body,
.v2-homepage {
    background: #dcecf5 !important;
    color: #102f45 !important;
}


/* HEADER - KEEP CLEAN WHITE */
.v2-navbar {
    background: rgba(250,253,255,.97) !important;
    border-bottom: 1px solid rgba(20,95,135,.14) !important;
    box-shadow: 0 8px 26px rgba(25,70,100,.08) !important;
}


/* HERO - LIGHT BLUE BUT NOT TOO WHITE */
.v2-hero,
section.v2-hero {
    background:
        radial-gradient(
            circle at 77% 46%,
            rgba(25,190,230,.22) 0%,
            rgba(40,180,220,.12) 24%,
            transparent 48%
        ),

        radial-gradient(
            circle at 15% 25%,
            rgba(65,145,200,.10) 0%,
            transparent 38%
        ),

        linear-gradient(
            120deg,
            #e8f3f9 0%,
            #deedf6 34%,
            #cfe7f3 68%,
            #c4e2ef 100%
        ) !important;

    color: #0b2e46 !important;
}


/* MAIN TITLE - ALL DARK NAVY */
.v2-hero-title,
.v2-hero-title *,
.v2-hero h1,
.v2-hero h1 * {
    color: #082d49 !important;
    -webkit-text-fill-color: #082d49 !important;
    text-shadow: none !important;
}


/* SUBTITLE */
.v2-hero-subtitle {
    color: #526f82 !important;
}


/* BADGE */
.v2-hero-badge {
    background: rgba(255,255,255,.48) !important;
    border-color: rgba(0,145,190,.25) !important;
    color: #007fa8 !important;
    box-shadow: 0 6px 20px rgba(20,100,140,.05) !important;
}


/* GRID - MORE VISIBLE */
.v2-hero-grid {
    opacity: .30 !important;
}


/* FLOATING CARDS */
.v2-floating-card,
a.v2-floating-card {
    background: rgba(248,252,255,.94) !important;
    border: 1px solid rgba(15,130,175,.18) !important;
    box-shadow:
        0 14px 34px rgba(20,75,105,.14) !important;
}

.v2-floating-card strong {
    color: #0a3049 !important;
}

.v2-floating-card span {
    color: #5e7889 !important;
}


/* PRIMARY BUTTON */
.v2-hero .v2-btn-primary {
    background:
        linear-gradient(
            135deg,
            #08b9e5 0%,
            #0786c8 100%
        ) !important;

    color: #ffffff !important;

    box-shadow:
        0 12px 28px rgba(0,135,185,.20) !important;
}


/* SECONDARY BUTTON */
.v2-hero .v2-btn-secondary {
    background: rgba(250,253,255,.88) !important;
    color: #12364d !important;
    border-color: rgba(20,105,145,.18) !important;
}


/* BOTTOM HERO STATISTICS */
.v2-hero-trust strong {
    color: #103850 !important;
}

.v2-hero-trust span {
    color: #607b8c !important;
}


/* =========================================================
   GLOBE
   KEEP THE GLOBE DARK
   ========================================================= */

.v2-globe-core {
    filter:
        drop-shadow(0 20px 42px rgba(0,80,115,.25))
        !important;
}


/* QRVS MUST STAY WHITE INSIDE THE DARK GLOBE */
.v2-globe-logo strong,
.v2-globe-brand strong,
.v2-globe-logo,
.v2-globe-brand {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}


/* GLOBAL NETWORK UNDER QRVS */
.v2-globe-logo span,
.v2-globe-brand span {
    color: #5eebff !important;
    -webkit-text-fill-color: #5eebff !important;
}


/* NEXT SECTION */
.v2-hero + section {
    background: #edf6fa !important;
}


/* MOBILE */
@media (max-width: 850px) {

    .v2-hero,
    section.v2-hero {
        background:
            radial-gradient(
                circle at 50% 55%,
                rgba(25,185,225,.17),
                transparent 42%
            ),
            linear-gradient(
                180deg,
                #e5f2f8 0%,
                #cfe7f2 100%
            ) !important;
    }
}


/* ===== END MEDIUM LIGHT BLUE FINAL TUNING ===== */



/* =========================================================
   QRVS V2 - COMPANY / WHO WE ARE
   Light premium version
   ========================================================= */

.v2-company {
    position: relative;
    z-index: 10;
    overflow: hidden;
    padding: 82px 0;
    background:
        radial-gradient(
            circle at 88% 45%,
            rgba(37, 190, 230, .12),
            transparent 30%
        ),
        linear-gradient(
            180deg,
            #eef8fc 0%,
            #e7f3f9 100%
        );
    color: #082f49;
}

.v2-company::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: .34;
    background-image:
        linear-gradient(rgba(20, 112, 145, .045) 1px, transparent 1px),
        linear-gradient(90deg, rgba(20, 112, 145, .045) 1px, transparent 1px);
    background-size: 72px 72px;
    mask-image: linear-gradient(
        to right,
        transparent,
        #000 35%,
        #000 100%
    );
}

.v2-company-grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 1.03fr .97fr;
    align-items: center;
    gap: clamp(50px, 7vw, 105px);
}

.v2-company-content {
    max-width: 650px;
}

.v2-company-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 18px;
    color: #087fa6;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .15em;
}

.v2-company-eyebrow > span {
    width: 8px;
    height: 8px;
    flex: 0 0 auto;
    border-radius: 50%;
    background: #21c8ee;
    box-shadow: 0 0 0 6px rgba(33, 200, 238, .11);
}

.v2-company-title {
    max-width: 650px;
    margin: 0;
    color: #062f49;
    font-size: clamp(37px, 4vw, 58px);
    font-weight: 900;
    line-height: 1.04;
    letter-spacing: -.045em;
}

.v2-company-text {
    max-width: 610px;
    margin: 24px 0 0;
    color: #526d7d;
    font-size: 17px;
    font-weight: 500;
    line-height: 1.75;
}

.v2-company-features {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 28px;
}

.v2-company-feature {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 40px;
    padding: 0 14px;
    border: 1px solid rgba(12, 125, 163, .13);
    border-radius: 12px;
    background: rgba(255,255,255,.58);
    color: #234b60;
    font-size: 13px;
    font-weight: 800;
    box-shadow:
        0 8px 24px rgba(35, 103, 130, .035),
        inset 0 1px rgba(255,255,255,.85);
}

.v2-company-feature-icon {
    width: 21px;
    height: 21px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: rgba(20, 190, 230, .12);
    color: #0495bd;
    font-size: 11px;
    font-weight: 900;
}

.v2-company-link {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin-top: 30px;
    color: #067fa8;
    font-size: 14px;
    font-weight: 900;
    text-decoration: none;
}

.v2-company-link span {
    transition: transform .2s ease;
}

.v2-company-link:hover span {
    transform: translateX(5px);
}


/* VISUAL */

.v2-company-visual {
    position: relative;
    min-height: 390px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.v2-company-visual::before {
    content: "";
    position: absolute;
    width: 390px;
    height: 390px;
    border-radius: 50%;
    background:
        radial-gradient(
            circle,
            rgba(42, 203, 238, .20) 0%,
            rgba(39, 180, 216, .07) 45%,
            transparent 70%
        );
    filter: blur(4px);
}

.v2-company-orbit {
    position: absolute;
    border: 1px solid rgba(17, 154, 194, .12);
    border-radius: 50%;
    pointer-events: none;
}

.v2-company-orbit.orbit-one {
    width: 330px;
    height: 330px;
}

.v2-company-orbit.orbit-two {
    width: 430px;
    height: 430px;
}

.v2-company-main-card {
    position: relative;
    z-index: 3;
    width: min(100%, 440px);
    min-height: 175px;
    display: flex;
    align-items: center;
    gap: 24px;
    padding: 30px;
    border: 1px solid rgba(10, 123, 159, .13);
    border-radius: 28px;
    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.90),
            rgba(240,250,253,.75)
        );
    box-shadow:
        0 28px 70px rgba(36, 105, 132, .13),
        inset 0 1px 0 rgba(255,255,255,.95);
    backdrop-filter: blur(18px);
}

.v2-company-monogram {
    width: 112px;
    height: 112px;
    flex: 0 0 112px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 25px;
    background:
        radial-gradient(
            circle at 30% 25%,
            rgba(70, 225, 255, .32),
            transparent 34%
        ),
        linear-gradient(
            145deg,
            #073d5d,
            #06283f
        );
    color: #fff;
    font-size: 25px;
    font-weight: 950;
    letter-spacing: -.04em;
    box-shadow:
        0 18px 35px rgba(5, 68, 96, .20),
        inset 0 0 25px rgba(41, 211, 244, .13);
}

.v2-company-main-copy {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.v2-company-main-copy span {
    color: #638090;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.v2-company-main-copy strong {
    color: #092f47;
    font-size: 22px;
    font-weight: 900;
    line-height: 1.2;
}

.v2-company-metrics {
    position: absolute;
    z-index: 5;
    left: 50%;
    bottom: 18px;
    width: min(94%, 500px);
    display: grid;
    grid-template-columns: .75fr 1fr 1.35fr;
    transform: translateX(-50%);
    overflow: hidden;
    border: 1px solid rgba(11, 127, 162, .12);
    border-radius: 17px;
    background: rgba(255,255,255,.88);
    box-shadow: 0 18px 40px rgba(34, 100, 128, .10);
    backdrop-filter: blur(16px);
}

.v2-company-metric {
    min-height: 76px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 13px 17px;
}

.v2-company-metric:not(:last-child) {
    border-inline-end: 1px solid rgba(10, 114, 151, .10);
}

.v2-company-metric span {
    margin-bottom: 4px;
    color: #78909d;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.v2-company-metric strong {
    color: #08354e;
    font-size: 15px;
    font-weight: 900;
    line-height: 1.2;
}


/* RTL */

html[dir="rtl"] .v2-company-link span {
    transform: rotate(180deg);
}

html[dir="rtl"] .v2-company-link:hover span {
    transform: rotate(180deg) translateX(5px);
}


/* RESPONSIVE */

@media (max-width: 900px) {

    .v2-company {
        padding: 65px 0;
    }

    .v2-company-grid {
        grid-template-columns: 1fr;
        gap: 45px;
    }

    .v2-company-content {
        max-width: 720px;
    }

    .v2-company-visual {
        min-height: 370px;
    }

}

@media (max-width: 560px) {

    .v2-company {
        padding: 52px 0;
    }

    .v2-company-title {
        font-size: 38px;
    }

    .v2-company-text {
        font-size: 15px;
    }

    .v2-company-visual {
        min-height: 400px;
    }

    .v2-company-main-card {
        align-items: flex-start;
        padding: 22px;
        border-radius: 22px;
    }

    .v2-company-monogram {
        width: 78px;
        height: 78px;
        flex-basis: 78px;
        border-radius: 19px;
        font-size: 19px;
    }

    .v2-company-main-copy strong {
        font-size: 18px;
    }

    .v2-company-metrics {
        grid-template-columns: 1fr;
        bottom: 0;
    }

    .v2-company-metric {
        min-height: 56px;
    }

    .v2-company-metric:not(:last-child) {
        border-inline-end: 0;
        border-bottom: 1px solid rgba(10, 114, 151, .10);
    }

    .v2-company-orbit.orbit-two {
        width: 340px;
        height: 340px;
    }

}


/* ===== END QRVS V2 COMPANY ===== */

/* =========================================================
   QRVS V2 - COMPANY COMPACT 35%
   Reduce vertical whitespace without changing the design
   ========================================================= */

.v2-company {
    padding-top: 58px !important;
    padding-bottom: 58px !important;
}

.v2-company-inner {
    min-height: auto !important;
}

/* Keep content vertically compact */
.v2-company-content,
.v2-company-visual {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Mobile */
@media (max-width: 900px) {
    .v2-company {
        padding-top: 44px !important;
        padding-bottom: 44px !important;
    }
}

@media (max-width: 520px) {
    .v2-company {
        padding-top: 36px !important;
        padding-bottom: 36px !important;
    }
}

/* ===== END COMPANY COMPACT 35% ===== */


/* =========================================================
   QRVS V2 - HERO COMPACT 35%
   Reduce vertical height while preserving globe/content size
   ========================================================= */

@media (min-width: 901px) {

    .v2-hero {
        min-height: 590px !important;
        height: auto !important;
    }

    .v2-hero-inner {
        padding-top: 32px !important;
        padding-bottom: 32px !important;
    }

    .v2-hero-visual {
        min-height: 500px !important;
    }

}

/* Tablet */
@media (min-width: 561px) and (max-width: 900px) {

    .v2-hero {
        min-height: auto !important;
    }

    .v2-hero-inner {
        padding-top: 42px !important;
        padding-bottom: 42px !important;
    }

}

/* Mobile - don't over-compress */
@media (max-width: 560px) {

    .v2-hero {
        min-height: auto !important;
    }

    .v2-hero-inner {
        padding-top: 34px !important;
        padding-bottom: 34px !important;
    }

}

/* ===== END HERO COMPACT 35% ===== */


/* =========================================================
   QRVS V2 - HEADER COMPACT 40%
   Compact desktop header while preserving readability
   ========================================================= */

@media (min-width: 901px) {

    /* HEADER HEIGHT */
    .v2-navbar {
        min-height: 58px !important;
    }

    .v2-navbar-inner {
        min-height: 58px !important;
        gap: 18px !important;
    }

    /* LOGO */
    .v2-logo {
        gap: 10px !important;
    }

    .v2-logo-mark {
        width: 40px !important;
        height: 40px !important;
        border-radius: 12px !important;
        font-size: 17px !important;
    }

    .v2-logo-name {
        font-size: 16px !important;
    }

    /* MAIN NAVIGATION */
    .v2-nav {
        gap: 25px !important;
    }

    .v2-nav a {
        font-size: 14px !important;
    }

    /* VALI / ACADEMY */
    .v2-external-link {
        min-height: 34px !important;
        padding: 0 10px !important;
        font-size: 13px !important;
    }

    /* LANGUAGE SWITCHER */
    .v2-languages {
        padding: 3px !important;
        border-radius: 11px !important;
    }

    .v2-languages a {
        min-width: 31px !important;
        min-height: 31px !important;
        padding: 0 7px !important;
        font-size: 12px !important;
        border-radius: 8px !important;
    }

    /* LOGIN / ADMIN / LOGOUT */
    .v2-navbar-actions {
        gap: 7px !important;
    }

    .v2-login-button,
    .v2-admin-button,
    .v2-logout-button {
        min-height: 34px !important;
        padding: 0 11px !important;
        font-size: 13px !important;
        border-radius: 9px !important;
    }

}

/* Keep tablet/mobile comfortable */
@media (max-width: 900px) {

    .v2-navbar,
    .v2-navbar-inner {
        min-height: 64px !important;
    }

}

/* ===== END HEADER COMPACT 40% ===== */


/* =========================================================
   QRVS V2 - COMPANY / WHO WE ARE
   30% SMALLER FROM CURRENT SIZE
   ========================================================= */

.v2-company {
    padding-top: 34px !important;
    padding-bottom: 34px !important;
}

.v2-company-inner {
    gap: 32px !important;
}

.v2-company-eyebrow {
    margin-bottom: 12px !important;
    font-size: 10px !important;
}

.v2-company-title {
    max-width: 570px !important;
    margin-bottom: 16px !important;
    font-size: clamp(30px, 3.2vw, 45px) !important;
    line-height: 1.03 !important;
}

.v2-company-text {
    max-width: 610px !important;
    margin-bottom: 18px !important;
    font-size: 14px !important;
    line-height: 1.65 !important;
}

.v2-company-points {
    gap: 8px !important;
    margin-bottom: 18px !important;
}

.v2-company-point {
    min-height: 34px !important;
    padding: 6px 12px !important;
    font-size: 12px !important;
}

.v2-company-link {
    font-size: 13px !important;
}

.v2-company-visual {
    min-height: 300px !important;
}

.v2-company-main-card {
    padding: 22px !important;
    border-radius: 22px !important;
}

.v2-company-logo-box {
    width: 88px !important;
    height: 88px !important;
    border-radius: 20px !important;
}

.v2-company-main-card h3 {
    font-size: 20px !important;
}

.v2-company-meta {
    min-height: 66px !important;
}

.v2-company-meta > div {
    padding: 12px 15px !important;
}

.v2-company-meta span {
    font-size: 9px !important;
}

.v2-company-meta strong {
    font-size: 13px !important;
}

@media (max-width: 900px) {
    .v2-company {
        padding-top: 30px !important;
        padding-bottom: 30px !important;
    }

    .v2-company-visual {
        min-height: 260px !important;
    }
}

/* ===== END COMPANY 30% SHRINK ===== */


/* =========================================================
   QRVS V2 - WHO WE ARE
   FIX RIGHT SIDE CARD SPACING
   Keep current sizes - spacing only
   ========================================================= */

/*
 * Keep the visual column organized vertically.
 * Do not resize the cards.
 */
.v2-company-visual {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 18px !important;
}

/*
 * Remove positioning/margins that caused the
 * lower information card to overlap the upper card.
 */
.v2-company-main-card {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    margin: 0 !important;
    transform: none !important;
}

.v2-company-meta {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    margin: 0 !important;
    transform: none !important;
}

/* Keep both cards visually aligned */
.v2-company-main-card,
.v2-company-meta {
    flex-shrink: 0 !important;
}

/* Mobile */
@media (max-width: 900px) {
    .v2-company-visual {
        gap: 14px !important;
    }
}

/* ===== END WHO WE ARE CARD SPACING FIX ===== */


/* =========================================================
   QRVS V2 - COMPANY RIGHT CARDS
   FINAL REAL SPACING FIX
   ========================================================= */

@media (min-width: 901px) {

    .v2-company-visual {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;

        /* المسافة بين الكرتين */
        gap: 28px !important;

        min-height: 300px !important;
    }

    /* Upper card */
    .v2-company-main-card {
        position: relative !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;

        margin: 0 !important;
        transform: none !important;
        flex-shrink: 0 !important;
    }

    /* Lower metrics card - THIS IS THE REAL CLASS */
    .v2-company-metrics {
        position: relative !important;

        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;

        margin: 0 !important;
        transform: none !important;

        width: min(94%, 500px) !important;
        flex-shrink: 0 !important;
    }
}

/* Mobile */
@media (max-width: 900px) {

    .v2-company-visual {
        gap: 20px !important;
    }

    .v2-company-metrics {
        position: relative !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;
        transform: none !important;
        margin: 0 auto !important;
    }
}

/* ===== END COMPANY RIGHT CARDS FINAL FIX ===== */


/* =========================================================
   QRVS V2 - SERVICES
   COMPACT SCALE MATCHING WHO WE ARE
   ========================================================= */

.v2-services {
    position: relative;
    padding: 42px 0;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 78% 20%,
            rgba(0, 194, 255, .055),
            transparent 28%
        ),
        transparent;
}

.v2-services-inner {
    position: relative;
}

.v2-services-heading {
    width: min(100%, 760px);
    margin: 0 auto 28px;
    text-align: center;
}

.v2-services-eyebrow {
    display: inline-flex;
    align-items: center;
    min-height: 27px;
    padding: 0 11px;
    margin-bottom: 11px;

    border: 1px solid rgba(0, 194, 255, .22);
    border-radius: 999px;

    background: rgba(0, 194, 255, .07);

    color: #08799b;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.v2-services-heading h2 {
    max-width: 680px;
    margin: 0 auto;

    color: #102b3d;
    font-size: clamp(25px, 2.5vw, 36px);
    font-weight: 900;
    line-height: 1.13;
    letter-spacing: -.035em;
}

.v2-services-heading p {
    max-width: 650px;
    margin: 13px auto 0;

    color: #5b7080;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.7;
}


/* GRID */

.v2-services-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;

    width: min(100%, 980px);
    margin: 0 auto;
}


/* SERVICE CARD */

.v2-service-card {
    position: relative;
    display: flex;
    align-items: flex-start;
    gap: 15px;

    min-height: 145px;
    padding: 20px;

    overflow: hidden;

    border: 1px solid rgba(15, 74, 105, .12);
    border-radius: 18px;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.88),
            rgba(230,243,249,.78)
        );

    box-shadow:
        0 12px 30px rgba(18, 55, 75, .07),
        inset 0 1px 0 rgba(255,255,255,.8);

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

.v2-service-card:hover {
    transform: translateY(-4px);

    border-color: rgba(0, 174, 220, .28);

    box-shadow:
        0 18px 38px rgba(18, 55, 75, .11),
        inset 0 1px 0 rgba(255,255,255,.9);
}

.v2-service-card-glow {
    position: absolute;
    width: 100px;
    height: 100px;
    top: -55px;
    right: -35px;

    border-radius: 50%;

    background: rgba(0, 194, 255, .10);
    filter: blur(35px);

    pointer-events: none;
}


/* ICON */

.v2-service-icon {
    position: relative;
    z-index: 2;

    width: 42px;
    height: 42px;
    flex: 0 0 42px;

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

    border: 1px solid rgba(0, 174, 220, .18);
    border-radius: 12px;

    background: rgba(0, 194, 255, .08);

    font-size: 20px;
}


/* CONTENT */

.v2-service-content {
    position: relative;
    z-index: 2;
    min-width: 0;
}

.v2-service-content h3 {
    margin: 1px 0 7px;

    color: #102b3d;
    font-size: 16px;
    font-weight: 850;
    line-height: 1.25;
}

.v2-service-content p {
    margin: 0;

    color: #607685;
    font-size: 12.5px;
    line-height: 1.6;
}

.v2-service-link {
    display: inline-flex;
    align-items: center;
    gap: 7px;

    margin-top: 11px;

    color: #087fa4;
    font-size: 12px;
    font-weight: 800;
    text-decoration: none;
}

.v2-service-link:hover {
    color: #005f7d;
}


/* 1 SERVICE */

.v2-services-grid > .v2-service-card:only-child {
    grid-column: 1 / -1;

    width: min(100%, 620px);
    margin: 0 auto;
}


/* 2 SERVICES */

.v2-services-grid:has(> .v2-service-card:nth-child(2):last-child) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: min(100%, 760px);
}


/* RTL */

[dir="rtl"] .v2-service-card-glow {
    right: auto;
    left: -35px;
}


/* TABLET */

@media (max-width: 900px) {

    .v2-services {
        padding: 36px 0;
    }

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

}


/* MOBILE */

@media (max-width: 620px) {

    .v2-services {
        padding: 30px 0;
    }

    .v2-services-heading {
        margin-bottom: 22px;
    }

    .v2-services-heading h2 {
        font-size: 25px;
    }

    .v2-services-grid,
    .v2-services-grid:has(> .v2-service-card:nth-child(2):last-child) {
        grid-template-columns: 1fr;
        width: 100%;
    }

    .v2-services-grid > .v2-service-card:only-child {
        width: 100%;
    }

    .v2-service-card {
        min-height: 0;
        padding: 18px;
    }

}

/* ===== END SERVICES V2 ===== */


/* =========================================================
   QRVS V2 - SERVICES COMPLETE
   12 SERVICES + DETAIL MODALS
   ========================================================= */

.v2-services {
    position: relative !important;
    padding: 48px 0 !important;
    overflow: hidden;
}

.v2-services .v2-container {
    position: relative;
    z-index: 2;
}


/* HEADING */

.v2-services-heading {
    max-width: 760px;
    margin: 0 auto 28px;
    text-align: center;
}

.v2-services-eyebrow {
    margin-bottom: 8px;
    color: #31bfe5;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.v2-services-heading h2 {
    max-width: 720px;
    margin: 0 auto;
    color: #102b3d;
    font-size: clamp(25px, 3vw, 36px);
    font-weight: 900;
    line-height: 1.12;
    letter-spacing: -.035em;
}

.v2-services-heading p {
    max-width: 700px;
    margin: 12px auto 0;
    color: #60798a;
    font-size: 14px;
    line-height: 1.7;
}


/* GRID */

.v2-services-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}


/* CARD */

.v2-service-card {
    appearance: none;
    position: relative;
    min-width: 0;
    min-height: 158px;
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 20px;
    overflow: hidden;
    border: 1px solid rgba(28, 119, 151, .13);
    border-radius: 18px;
    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.92),
            rgba(235,246,250,.78)
        );
    box-shadow:
        0 10px 28px rgba(32,75,94,.06),
        inset 0 1px 0 rgba(255,255,255,.9);
    color: inherit;
    font: inherit;
    text-align: start;
    cursor: pointer;
    transition:
        transform .22s ease,
        border-color .22s ease,
        box-shadow .22s ease,
        background .22s ease;
}

.v2-service-card::before {
    content: "";
    position: absolute;
    top: -70px;
    right: -70px;
    width: 145px;
    height: 145px;
    border-radius: 50%;
    background: rgba(44, 190, 226, .08);
    filter: blur(10px);
    pointer-events: none;
}

.v2-service-card:hover {
    transform: translateY(-4px);
    border-color: rgba(22, 172, 211, .30);
    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.98),
            rgba(228,244,249,.92)
        );
    box-shadow:
        0 18px 40px rgba(32,75,94,.10),
        inset 0 1px 0 #fff;
}


/* ICON */

.v2-service-icon {
    position: relative;
    z-index: 2;
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(21, 178, 218, .20);
    border-radius: 13px;
    background: rgba(32, 191, 228, .08);
    color: #159dc4;
    font-size: 19px;
    font-weight: 900;
}


/* CONTENT */

.v2-service-card-content {
    position: relative;
    z-index: 2;
    min-width: 0;
    display: flex;
    flex: 1;
    flex-direction: column;
}

.v2-service-card-content strong {
    color: #143448;
    font-size: 15px;
    font-weight: 900;
    line-height: 1.35;
}

.v2-service-short {
    margin-top: 7px;
    color: #667f8f;
    font-size: 12.5px;
    line-height: 1.55;
}

.v2-service-more {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 11px;
    color: #139fc7;
    font-size: 11.5px;
    font-weight: 900;
}


/* MODAL */

html.v2-modal-open,
body.v2-modal-open {
    overflow: hidden !important;
}

.v2-service-modal {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transition:
        opacity .2s ease,
        visibility .2s ease;
}

.v2-service-modal.is-open {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
}

.v2-service-modal-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(7, 24, 38, .66);
    backdrop-filter: blur(8px);
}


/* DIALOG */

.v2-service-dialog {
    position: relative;
    z-index: 2;
    width: min(100%, 650px);
    max-height: calc(100vh - 40px);
    padding: 28px;
    overflow-y: auto;
    border: 1px solid rgba(51, 190, 224, .18);
    border-radius: 22px;
    background:
        linear-gradient(
            145deg,
            #ffffff,
            #edf7fa
        );
    box-shadow:
        0 35px 100px rgba(5,31,45,.28);
    transform: translateY(14px) scale(.985);
    transition: transform .22s ease;
}

.v2-service-modal.is-open .v2-service-dialog {
    transform: translateY(0) scale(1);
}


/* CLOSE X */

.v2-service-close {
    position: absolute;
    top: 16px;
    right: 16px;
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(19, 93, 118, .12);
    border-radius: 10px;
    background: rgba(255,255,255,.72);
    color: #55717f;
    font-size: 23px;
    line-height: 1;
    cursor: pointer;
}

[dir="rtl"] .v2-service-close {
    right: auto;
    left: 16px;
}


/* DIALOG CONTENT */

.v2-service-dialog-icon {
    width: 48px;
    height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 16px;
    border: 1px solid rgba(24, 181, 219, .22);
    border-radius: 14px;
    background: rgba(31, 190, 226, .09);
    color: #159fc7;
    font-size: 21px;
    font-weight: 900;
}

.v2-service-dialog h3 {
    max-width: 540px;
    margin: 0;
    padding-inline-end: 30px;
    color: #102f42;
    font-size: clamp(22px, 3vw, 29px);
    font-weight: 900;
    line-height: 1.2;
    letter-spacing: -.025em;
}

.v2-service-description {
    margin: 13px 0 0;
    color: #587383;
    font-size: 14px;
    line-height: 1.75;
}


/* HIGHLIGHTS */

.v2-service-highlights {
    margin-top: 22px;
    padding: 18px;
    border: 1px solid rgba(24, 135, 169, .11);
    border-radius: 16px;
    background: rgba(226, 242, 247, .62);
}

.v2-service-highlights h4 {
    margin: 0 0 12px;
    color: #173c50;
    font-size: 13px;
    font-weight: 900;
}

.v2-service-highlights ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px 18px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.v2-service-highlights li {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    color: #536e7d;
    font-size: 12.5px;
    line-height: 1.5;
}

.v2-service-highlights li span {
    flex: 0 0 auto;
    color: #13a8cf;
    font-weight: 900;
}


/* ACTIONS */

.v2-service-dialog-actions {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 22px;
}

.v2-service-chat,
.v2-service-dialog-close-button {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 17px;
    border-radius: 12px;
    font-size: 12.5px;
    font-weight: 900;
    cursor: pointer;
}

.v2-service-chat {
    border: 1px solid #169fc7;
    background:
        linear-gradient(
            135deg,
            #23b9dc,
            #1596bf
        );
    color: #fff;
    box-shadow: 0 10px 24px rgba(20, 160, 198, .18);
}

.v2-service-chat:hover {
    transform: translateY(-1px);
}

.v2-service-dialog-close-button {
    border: 1px solid rgba(27, 92, 113, .13);
    background: rgba(255,255,255,.68);
    color: #506b7b;
}


/* RTL */

.v2-services[dir="rtl"] .v2-services-heading {
    direction: rtl;
}

.v2-services[dir="rtl"] .v2-service-card,
.v2-services[dir="rtl"] .v2-service-dialog {
    direction: rtl;
    text-align: right;
}

.v2-services[dir="rtl"] .v2-service-card::before {
    right: auto;
    left: -70px;
}


/* TABLET */

@media (max-width: 900px) {

    .v2-services {
        padding: 40px 0 !important;
    }

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

}


/* MOBILE */

@media (max-width: 600px) {

    .v2-services {
        padding: 34px 0 !important;
    }

    .v2-services-heading {
        margin-bottom: 22px;
    }

    .v2-services-heading h2 {
        font-size: 25px;
    }

    .v2-services-grid {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .v2-service-card {
        min-height: 0;
        padding: 17px;
        border-radius: 15px;
    }

    .v2-service-modal {
        align-items: flex-end;
        padding: 10px;
    }

    .v2-service-dialog {
        width: 100%;
        max-height: 88vh;
        padding: 22px 18px 18px;
        border-radius: 20px;
    }

    .v2-service-highlights ul {
        grid-template-columns: 1fr;
    }

    .v2-service-dialog-actions {
        flex-direction: column;
        align-items: stretch;
    }

    .v2-service-chat,
    .v2-service-dialog-close-button {
        width: 100%;
    }

}


/* ===== END SERVICES COMPLETE ===== */


/* =========================================================
   QRVS V2 - VALI ARABIC INSTITUTE
   COMPACT PREMIUM BLOCK
   ========================================================= */

.v2-vali {
    position: relative !important;
    padding: 48px 0 !important;
    overflow: hidden;
}

.v2-vali .v2-container {
    position: relative;
    z-index: 2;
}


/* MAIN SHELL */

.v2-vali-shell {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
    align-items: center;
    gap: 38px;
    padding: 34px 38px;
    overflow: hidden;
    border: 1px solid rgba(25, 142, 176, .14);
    border-radius: 24px;
    background:
        radial-gradient(
            circle at 88% 18%,
            rgba(38, 190, 224, .11),
            transparent 28%
        ),
        linear-gradient(
            135deg,
            rgba(255,255,255,.91),
            rgba(229,243,248,.82)
        );
    box-shadow:
        0 18px 48px rgba(37, 76, 92, .07),
        inset 0 1px 0 rgba(255,255,255,.92);
}


/* CONTENT */

.v2-vali-content {
    position: relative;
    z-index: 3;
}

.v2-vali-eyebrow {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 13px;
    color: #1aa8ce;
    font-size: 10.5px;
    font-weight: 900;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.v2-vali-eyebrow span {
    width: 19px;
    height: 2px;
    border-radius: 10px;
    background: #22b7db;
}


/* BRAND */

.v2-vali-brand {
    display: flex;
    align-items: center;
    gap: 11px;
    margin-bottom: 15px;
}

.v2-vali-logo {
    width: 43px;
    height: 43px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(20, 167, 202, .22);
    border-radius: 13px;
    background:
        linear-gradient(
            135deg,
            rgba(37, 191, 224, .14),
            rgba(255,255,255,.72)
        );
    color: #159dc3;
    box-shadow: 0 8px 22px rgba(25, 152, 184, .08);
}

.v2-vali-logo span {
    font-size: 21px;
    font-weight: 950;
}

.v2-vali-brand > div:last-child {
    display: flex;
    flex-direction: column;
}

.v2-vali-brand strong {
    color: #12384b;
    font-size: 17px;
    font-weight: 950;
    line-height: 1;
    letter-spacing: .03em;
}

.v2-vali-brand small {
    margin-top: 4px;
    color: #6b8390;
    font-size: 9.5px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}


/* TITLE */

.v2-vali h2 {
    max-width: 570px;
    margin: 0;
    color: #102f42;
    font-size: clamp(27px, 3.2vw, 39px);
    font-weight: 950;
    line-height: 1.08;
    letter-spacing: -.04em;
}

.v2-vali-intro {
    max-width: 590px;
    margin: 14px 0 0;
    color: #607987;
    font-size: 13.5px;
    line-height: 1.72;
}


/* ACTIONS */

.v2-vali-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 9px;
    margin-top: 20px;
}

.v2-vali-primary,
.v2-vali-secondary {
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 16px;
    border-radius: 11px;
    font-size: 11.5px;
    font-weight: 900;
    text-decoration: none !important;
    transition:
        transform .2s ease,
        box-shadow .2s ease,
        background .2s ease;
}

.v2-vali-primary {
    border: 1px solid #16a2c9;
    background:
        linear-gradient(
            135deg,
            #25bddf,
            #1598c0
        );
    color: #fff !important;
    box-shadow: 0 10px 24px rgba(19, 157, 194, .16);
}

.v2-vali-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 30px rgba(19, 157, 194, .22);
}

.v2-vali-secondary {
    border: 1px solid rgba(25, 103, 127, .13);
    background: rgba(255,255,255,.60);
    color: #3e6374 !important;
}

.v2-vali-secondary:hover {
    background: rgba(255,255,255,.92);
}


/* STATS */

.v2-vali-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin-top: 22px;
}

.v2-vali-stats > div {
    min-width: 0;
    padding: 11px 12px;
    border: 1px solid rgba(28, 119, 151, .10);
    border-radius: 12px;
    background: rgba(255,255,255,.45);
}

.v2-vali-stats strong {
    display: block;
    overflow: hidden;
    color: #159fc5;
    font-size: 13px;
    font-weight: 950;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.v2-vali-stats span {
    display: block;
    margin-top: 3px;
    overflow: hidden;
    color: #6b8390;
    font-size: 9.5px;
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
}


/* =========================================================
   VISUAL
   ========================================================= */

.v2-vali-visual {
    position: relative;
    min-height: 310px;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* DECORATIVE ORBITS */

.v2-vali-orbit {
    position: absolute;
    border: 1px solid rgba(29, 180, 216, .10);
    border-radius: 50%;
    pointer-events: none;
}

.v2-vali-orbit-one {
    width: 310px;
    height: 310px;
}

.v2-vali-orbit-two {
    width: 225px;
    height: 225px;
    border-style: dashed;
}


/* PROGRAM GRID */

.v2-vali-program-grid {
    position: relative;
    z-index: 3;
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.v2-vali-program {
    min-width: 0;
    min-height: 116px;
    display: flex;
    align-items: flex-start;
    gap: 11px;
    padding: 16px;
    border: 1px solid rgba(24, 127, 157, .12);
    border-radius: 16px;
    background: rgba(255,255,255,.72);
    box-shadow:
        0 10px 28px rgba(33, 84, 101, .055),
        inset 0 1px 0 rgba(255,255,255,.90);
    backdrop-filter: blur(12px);
    transition:
        transform .22s ease,
        border-color .22s ease,
        box-shadow .22s ease;
}

.v2-vali-program:hover {
    transform: translateY(-3px);
    border-color: rgba(24, 172, 207, .25);
    box-shadow:
        0 16px 34px rgba(33, 84, 101, .09),
        inset 0 1px 0 #fff;
}

.v2-vali-program-icon {
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(27, 177, 211, .17);
    border-radius: 10px;
    background: rgba(30, 185, 219, .08);
    color: #159fc4;
    font-size: 15px;
    font-weight: 950;
}

.v2-vali-program > div:last-child {
    min-width: 0;
}

.v2-vali-program strong {
    display: block;
    color: #173a4d;
    font-size: 12px;
    font-weight: 900;
    line-height: 1.35;
}

.v2-vali-program p {
    margin: 6px 0 0;
    color: #708793;
    font-size: 10.5px;
    line-height: 1.5;
}


/* SIGNATURE */

.v2-vali-signature {
    position: absolute;
    z-index: 5;
    left: 50%;
    bottom: -9px;
    min-width: 145px;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 11px;
    border: 1px solid rgba(26, 155, 189, .13);
    border-radius: 12px;
    background: rgba(247,252,253,.94);
    box-shadow: 0 10px 25px rgba(26, 75, 92, .10);
    transform: translateX(-50%);
}

.v2-vali-signature-mark {
    width: 27px;
    height: 27px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: rgba(28, 181, 215, .10);
    color: #159dc3;
    font-size: 13px;
    font-weight: 950;
}

.v2-vali-signature > div:last-child {
    display: flex;
    flex-direction: column;
}

.v2-vali-signature strong {
    color: #183c4e;
    font-size: 10.5px;
    font-weight: 950;
    line-height: 1;
}

.v2-vali-signature span {
    margin-top: 3px;
    color: #7b909a;
    font-size: 8px;
    font-weight: 800;
}


/* RTL */

.v2-vali[dir="rtl"] {
    text-align: right;
}

.v2-vali[dir="rtl"] .v2-vali-eyebrow,
.v2-vali[dir="rtl"] .v2-vali-brand,
.v2-vali[dir="rtl"] .v2-vali-actions {
    direction: rtl;
}


/* TABLET */

@media (max-width: 900px) {

    .v2-vali {
        padding: 40px 0 !important;
    }

    .v2-vali-shell {
        grid-template-columns: 1fr;
        gap: 26px;
        padding: 28px;
    }

    .v2-vali-content {
        max-width: 680px;
    }

    .v2-vali-visual {
        min-height: 270px;
    }

}


/* MOBILE */

@media (max-width: 600px) {

    .v2-vali {
        padding: 34px 0 !important;
    }

    .v2-vali-shell {
        gap: 22px;
        padding: 22px 17px;
        border-radius: 18px;
    }

    .v2-vali h2 {
        font-size: 27px;
    }

    .v2-vali-intro {
        font-size: 13px;
    }

    .v2-vali-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .v2-vali-primary,
    .v2-vali-secondary {
        width: 100%;
    }

    .v2-vali-stats {
        grid-template-columns: 1fr;
    }

    .v2-vali-stats strong,
    .v2-vali-stats span {
        white-space: normal;
    }

    .v2-vali-visual {
        min-height: 0;
    }

    .v2-vali-program-grid {
        grid-template-columns: 1fr;
    }

    .v2-vali-program {
        min-height: 0;
    }

    .v2-vali-orbit,
    .v2-vali-signature {
        display: none;
    }

}


/* ===== END VALI ARABIC INSTITUTE ===== */


/* =========================================================
   QRVS V2 - ACADEMY
   COMPACT PREMIUM BLOCK
   ========================================================= */

.v2-academy {
    position: relative !important;
    padding: 48px 0 !important;
    overflow: hidden;
}

.v2-academy-shell {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0,.90fr) minmax(0,1.10fr);
    align-items: center;
    gap: 38px;

    padding: 34px 38px;

    border: 1px solid rgba(30,120,155,.14);
    border-radius: 24px;

    background:
        radial-gradient(
            circle at 90% 15%,
            rgba(0,194,255,.10),
            transparent 28%
        ),
        linear-gradient(
            135deg,
            rgba(255,255,255,.91),
            rgba(228,242,248,.82)
        );

    box-shadow:
        0 18px 48px rgba(37,76,92,.07),
        inset 0 1px 0 rgba(255,255,255,.92);
}


/* LEFT */

.v2-academy-content {
    position: relative;
    z-index: 2;
}

.v2-academy-eyebrow {
    display: flex;
    align-items: center;
    gap: 8px;

    margin-bottom: 13px;

    color: #159fc5;
    font-size: 10.5px;
    font-weight: 900;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.v2-academy-eyebrow span {
    width: 19px;
    height: 2px;
    border-radius: 10px;
    background: #22b7db;
}

.v2-academy h2 {
    max-width: 590px;
    margin: 0;

    color: #102f42;

    font-size: clamp(27px,3.2vw,39px);
    font-weight: 950;
    line-height: 1.08;
    letter-spacing: -.04em;
}

.v2-academy-intro {
    max-width: 600px;
    margin: 14px 0 0;

    color: #607987;

    font-size: 13.5px;
    line-height: 1.72;
}


/* BUTTON */

.v2-academy-button {
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;

    margin-top: 20px;
    padding: 0 17px;

    border: 1px solid #159fc5;
    border-radius: 11px;

    background:
        linear-gradient(
            135deg,
            #25bddf,
            #1598c0
        );

    color: #fff !important;

    font-size: 11.5px;
    font-weight: 900;
    text-decoration: none !important;

    box-shadow:
        0 10px 24px rgba(19,157,194,.16);

    transition:
        transform .2s ease,
        box-shadow .2s ease;
}

.v2-academy-button:hover {
    transform: translateY(-2px);

    box-shadow:
        0 14px 30px rgba(19,157,194,.22);
}


/* STATS */

.v2-academy-stats {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 8px;

    margin-top: 22px;
}

.v2-academy-stats > div {
    min-width: 0;

    padding: 11px 12px;

    border: 1px solid rgba(28,119,151,.10);
    border-radius: 12px;

    background: rgba(255,255,255,.45);
}

.v2-academy-stats strong {
    display: block;

    overflow: hidden;

    color: #159fc5;

    font-size: 12px;
    font-weight: 950;

    text-overflow: ellipsis;
    white-space: nowrap;
}

.v2-academy-stats span {
    display: block;

    margin-top: 3px;

    overflow: hidden;

    color: #6b8390;

    font-size: 9.5px;
    font-weight: 800;

    text-overflow: ellipsis;
    white-space: nowrap;
}


/* RIGHT */

.v2-academy-programs {
    position: relative;
    z-index: 2;
}

.v2-academy-programs-title {
    margin-bottom: 10px;

    color: #68818e;

    font-size: 9.5px;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.v2-academy-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 10px;
}


/* CARDS */

.v2-academy-card {
    min-width: 0;
    min-height: 116px;

    display: flex;
    align-items: flex-start;
    gap: 11px;

    padding: 16px;

    border: 1px solid rgba(24,127,157,.12);
    border-radius: 16px;

    background: rgba(255,255,255,.72);

    box-shadow:
        0 10px 28px rgba(33,84,101,.055),
        inset 0 1px 0 rgba(255,255,255,.90);

    backdrop-filter: blur(12px);

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

.v2-academy-card:hover {
    transform: translateY(-3px);

    border-color: rgba(24,172,207,.25);

    box-shadow:
        0 16px 34px rgba(33,84,101,.09),
        inset 0 1px 0 #fff;
}

.v2-academy-icon {
    width: 34px;
    height: 34px;
    flex: 0 0 34px;

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

    border: 1px solid rgba(27,177,211,.17);
    border-radius: 10px;

    background: rgba(30,185,219,.08);

    color: #159fc4;

    font-size: 15px;
    font-weight: 950;
}

.v2-academy-card > div:last-child {
    min-width: 0;
}

.v2-academy-card strong {
    display: block;

    color: #173a4d;

    font-size: 12px;
    font-weight: 900;
    line-height: 1.35;
}

.v2-academy-card p {
    margin: 6px 0 0;

    color: #708793;

    font-size: 10.5px;
    line-height: 1.5;
}


/* RTL */

.v2-academy[dir="rtl"] {
    text-align: right;
}

.v2-academy[dir="rtl"] .v2-academy-eyebrow {
    direction: rtl;
}


/* TABLET */

@media (max-width: 900px) {

    .v2-academy {
        padding: 40px 0 !important;
    }

    .v2-academy-shell {
        grid-template-columns: 1fr;
        gap: 26px;
        padding: 28px;
    }

}


/* MOBILE */

@media (max-width: 600px) {

    .v2-academy {
        padding: 34px 0 !important;
    }

    .v2-academy-shell {
        gap: 22px;
        padding: 22px 17px;
        border-radius: 18px;
    }

    .v2-academy h2 {
        font-size: 27px;
    }

    .v2-academy-intro {
        font-size: 13px;
    }

    .v2-academy-button {
        width: 100%;
    }

    .v2-academy-stats {
        grid-template-columns: 1fr;
    }

    .v2-academy-stats strong,
    .v2-academy-stats span {
        white-space: normal;
    }

    .v2-academy-grid {
        grid-template-columns: 1fr;
    }

    .v2-academy-card {
        min-height: 0;
    }

}


/* ===== END QRVS ACADEMY ===== */


/* =========================================================
   QRVS V2 - VIRTUAL EXAMINATION CENTERS
   COMPACT PREMIUM
   ========================================================= */

.v2-exams {
    position: relative !important;
    padding: 48px 0 !important;
}

.v2-exams-shell {
    display: grid;
    grid-template-columns: minmax(0,.90fr) minmax(0,1.10fr);
    align-items: center;

    gap: 38px;

    padding: 34px 38px;

    border: 1px solid rgba(30,120,155,.14);
    border-radius: 24px;

    background:
        radial-gradient(
            circle at 88% 20%,
            rgba(0,194,255,.10),
            transparent 29%
        ),
        linear-gradient(
            135deg,
            rgba(255,255,255,.91),
            rgba(228,242,248,.82)
        );

    box-shadow:
        0 18px 48px rgba(37,76,92,.07),
        inset 0 1px 0 rgba(255,255,255,.92);
}


/* EYEBROW */

.v2-exams-eyebrow {
    display: flex;
    align-items: center;
    gap: 8px;

    margin-bottom: 13px;

    color: #159fc5;

    font-size: 10.5px;
    font-weight: 900;
    letter-spacing: .15em;

    text-transform: uppercase;
}

.v2-exams-eyebrow span {
    width: 19px;
    height: 2px;

    border-radius: 10px;

    background: #22b7db;
}


/* TEXT */

.v2-exams h2 {
    max-width: 600px;

    margin: 0;

    color: #102f42;

    font-size: clamp(27px,3.2vw,39px);
    font-weight: 950;

    line-height: 1.08;
    letter-spacing: -.04em;
}

.v2-exams-intro {
    max-width: 610px;

    margin: 14px 0 0;

    color: #607987;

    font-size: 13.5px;
    line-height: 1.72;
}


/* ACTIONS */

.v2-exams-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 10px;

    margin-top: 20px;
}


/* EXPLORE BUTTON */

.v2-exams-button {
    min-height: 40px;

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

    gap: 8px;

    padding: 0 17px;

    border: 1px solid #159fc5;
    border-radius: 11px;

    background:
        linear-gradient(
            135deg,
            #25bddf,
            #1598c0
        );

    color: #fff !important;

    font-size: 11.5px;
    font-weight: 900;

    text-decoration: none !important;

    box-shadow:
        0 10px 24px rgba(19,157,194,.16);

    transition: .2s ease;
}

.v2-exams-button:hover {
    transform: translateY(-2px);

    box-shadow:
        0 14px 30px rgba(19,157,194,.22);
}


/* CRISP CHAT BUTTON */

.v2-exams-chat-button {
    min-height: 40px;

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

    gap: 8px;

    padding: 0 17px;

    border: 1px solid rgba(21,159,197,.25);
    border-radius: 11px;

    background: rgba(255,255,255,.68);

    color: #17647d;

    font-family: inherit;
    font-size: 11.5px;
    font-weight: 900;

    cursor: pointer;

    box-shadow:
        0 8px 20px rgba(33,84,101,.05);

    transition: .2s ease;
}

.v2-exams-chat-button:hover {
    transform: translateY(-2px);

    background: #fff;

    border-color: rgba(21,159,197,.42);

    box-shadow:
        0 12px 25px rgba(33,84,101,.09);
}

.v2-exams-chat-icon {
    width: 22px;
    height: 22px;

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

    border-radius: 50%;

    background: rgba(21,159,197,.10);

    color: #159fc5;

    font-size: 14px;
}


/* STATS */

.v2-exams-stats {
    display: grid;

    grid-template-columns: repeat(3,minmax(0,1fr));

    gap: 8px;

    margin-top: 22px;
}

.v2-exams-stats > div {
    padding: 11px 12px;

    border: 1px solid rgba(28,119,151,.10);
    border-radius: 12px;

    background: rgba(255,255,255,.45);
}

.v2-exams-stats strong {
    display: block;

    color: #159fc5;

    font-size: 12px;
    font-weight: 950;
}

.v2-exams-stats span {
    display: block;

    margin-top: 3px;

    color: #6b8390;

    font-size: 9.5px;
    font-weight: 800;
}


/* NETWORK PANEL */

.v2-exams-network {
    padding: 17px;

    border: 1px solid rgba(24,127,157,.11);
    border-radius: 19px;

    background: rgba(255,255,255,.43);

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.88);
}

.v2-exams-network-head {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 15px;

    margin-bottom: 11px;
}

.v2-exams-network-head > div {
    display: flex;
    align-items: center;

    gap: 7px;

    color: #68818e;

    font-size: 9.5px;
    font-weight: 900;

    letter-spacing: .11em;
    text-transform: uppercase;
}

.v2-exams-network-head > strong {
    color: #159fc5;

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

.v2-exams-network-dot {
    width: 7px;
    height: 7px;

    border-radius: 50%;

    background: #27c4e5;

    box-shadow:
        0 0 0 4px rgba(39,196,229,.10);
}


/* CARDS */

.v2-exams-grid {
    display: grid;

    grid-template-columns: repeat(2,minmax(0,1fr));

    gap: 10px;
}

.v2-exams-card {
    min-height: 105px;

    display: flex;
    align-items: flex-start;

    gap: 10px;

    padding: 14px;

    border: 1px solid rgba(24,127,157,.11);
    border-radius: 14px;

    background: rgba(255,255,255,.72);

    box-shadow:
        0 9px 24px rgba(33,84,101,.045);

    transition: .22s ease;
}

.v2-exams-card:hover {
    transform: translateY(-3px);

    border-color: rgba(24,172,207,.25);

    box-shadow:
        0 15px 31px rgba(33,84,101,.085);
}

.v2-exams-icon {
    width: 33px;
    height: 33px;

    flex: 0 0 33px;

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

    border: 1px solid rgba(27,177,211,.17);
    border-radius: 10px;

    background: rgba(30,185,219,.08);

    color: #159fc4;

    font-size: 15px;
    font-weight: 950;
}

.v2-exams-card strong {
    display: block;

    color: #173a4d;

    font-size: 11.5px;
    font-weight: 900;
}

.v2-exams-card p {
    margin: 5px 0 0;

    color: #708793;

    font-size: 10px;
    line-height: 1.48;
}


/* BOTTOM LINK */

.v2-exams-bottom-link {
    min-height: 42px;

    display: flex;
    align-items: center;

    gap: 9px;

    margin-top: 10px;
    padding: 0 12px;

    border: 1px solid rgba(25,163,198,.13);
    border-radius: 12px;

    background:
        linear-gradient(
            90deg,
            rgba(32,190,221,.075),
            rgba(255,255,255,.67)
        );

    color: #31586b !important;

    font-size: 10.5px;
    font-weight: 900;

    text-decoration: none !important;
}

.v2-exams-bottom-link > span {
    width: 26px;
    height: 26px;

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

    border-radius: 8px;

    background: rgba(25,177,211,.10);

    color: #159fc5;
}

.v2-exams-bottom-link b {
    margin-inline-start: auto;

    color: #159fc5;
}


/* RTL */

.v2-exams[dir="rtl"] {
    text-align: right;
}

.v2-exams[dir="rtl"] .v2-exams-eyebrow {
    direction: rtl;
}


/* TABLET */

@media (max-width: 900px) {

    .v2-exams {
        padding: 40px 0 !important;
    }

    .v2-exams-shell {
        grid-template-columns: 1fr;

        gap: 26px;

        padding: 28px;
    }

}


/* MOBILE */

@media (max-width: 600px) {

    .v2-exams {
        padding: 34px 0 !important;
    }

    .v2-exams-shell {
        gap: 22px;

        padding: 22px 17px;

        border-radius: 18px;
    }

    .v2-exams h2 {
        font-size: 27px;
    }

    .v2-exams-actions {
        display: grid;

        grid-template-columns: 1fr;
    }

    .v2-exams-button,
    .v2-exams-chat-button {
        width: 100%;
    }

    .v2-exams-stats {
        grid-template-columns: 1fr;
    }

    .v2-exams-grid {
        grid-template-columns: 1fr;
    }

    .v2-exams-card {
        min-height: 0;
    }

}

/* ===== END VIRTUAL EXAMINATION CENTERS ===== */


/* =========================================================
   QRVS V2 - VIRTUAL EXAMINATION CENTERS
   COMPACT PREMIUM
   ========================================================= */

.v2-exams {
    position: relative !important;
    padding: 48px 0 !important;
}

.v2-exams-shell {
    display: grid;
    grid-template-columns: minmax(0,.90fr) minmax(0,1.10fr);
    align-items: center;

    gap: 38px;

    padding: 34px 38px;

    border: 1px solid rgba(30,120,155,.14);
    border-radius: 24px;

    background:
        radial-gradient(
            circle at 88% 20%,
            rgba(0,194,255,.10),
            transparent 29%
        ),
        linear-gradient(
            135deg,
            rgba(255,255,255,.91),
            rgba(228,242,248,.82)
        );

    box-shadow:
        0 18px 48px rgba(37,76,92,.07),
        inset 0 1px 0 rgba(255,255,255,.92);
}


/* EYEBROW */

.v2-exams-eyebrow {
    display: flex;
    align-items: center;
    gap: 8px;

    margin-bottom: 13px;

    color: #159fc5;

    font-size: 10.5px;
    font-weight: 900;
    letter-spacing: .15em;

    text-transform: uppercase;
}

.v2-exams-eyebrow span {
    width: 19px;
    height: 2px;

    border-radius: 10px;

    background: #22b7db;
}


/* TEXT */

.v2-exams h2 {
    max-width: 600px;

    margin: 0;

    color: #102f42;

    font-size: clamp(27px,3.2vw,39px);
    font-weight: 950;

    line-height: 1.08;
    letter-spacing: -.04em;
}

.v2-exams-intro {
    max-width: 610px;

    margin: 14px 0 0;

    color: #607987;

    font-size: 13.5px;
    line-height: 1.72;
}


/* ACTIONS */

.v2-exams-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 10px;

    margin-top: 20px;
}


/* EXPLORE BUTTON */

.v2-exams-button {
    min-height: 40px;

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

    gap: 8px;

    padding: 0 17px;

    border: 1px solid #159fc5;
    border-radius: 11px;

    background:
        linear-gradient(
            135deg,
            #25bddf,
            #1598c0
        );

    color: #fff !important;

    font-size: 11.5px;
    font-weight: 900;

    text-decoration: none !important;

    box-shadow:
        0 10px 24px rgba(19,157,194,.16);

    transition: .2s ease;
}

.v2-exams-button:hover {
    transform: translateY(-2px);

    box-shadow:
        0 14px 30px rgba(19,157,194,.22);
}


/* CRISP CHAT BUTTON */

.v2-exams-chat-button {
    min-height: 40px;

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

    gap: 8px;

    padding: 0 17px;

    border: 1px solid rgba(21,159,197,.25);
    border-radius: 11px;

    background: rgba(255,255,255,.68);

    color: #17647d;

    font-family: inherit;
    font-size: 11.5px;
    font-weight: 900;

    cursor: pointer;

    box-shadow:
        0 8px 20px rgba(33,84,101,.05);

    transition: .2s ease;
}

.v2-exams-chat-button:hover {
    transform: translateY(-2px);

    background: #fff;

    border-color: rgba(21,159,197,.42);

    box-shadow:
        0 12px 25px rgba(33,84,101,.09);
}

.v2-exams-chat-icon {
    width: 22px;
    height: 22px;

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

    border-radius: 50%;

    background: rgba(21,159,197,.10);

    color: #159fc5;

    font-size: 14px;
}


/* STATS */

.v2-exams-stats {
    display: grid;

    grid-template-columns: repeat(3,minmax(0,1fr));

    gap: 8px;

    margin-top: 22px;
}

.v2-exams-stats > div {
    padding: 11px 12px;

    border: 1px solid rgba(28,119,151,.10);
    border-radius: 12px;

    background: rgba(255,255,255,.45);
}

.v2-exams-stats strong {
    display: block;

    color: #159fc5;

    font-size: 12px;
    font-weight: 950;
}

.v2-exams-stats span {
    display: block;

    margin-top: 3px;

    color: #6b8390;

    font-size: 9.5px;
    font-weight: 800;
}


/* NETWORK PANEL */

.v2-exams-network {
    padding: 17px;

    border: 1px solid rgba(24,127,157,.11);
    border-radius: 19px;

    background: rgba(255,255,255,.43);

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.88);
}

.v2-exams-network-head {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 15px;

    margin-bottom: 11px;
}

.v2-exams-network-head > div {
    display: flex;
    align-items: center;

    gap: 7px;

    color: #68818e;

    font-size: 9.5px;
    font-weight: 900;

    letter-spacing: .11em;
    text-transform: uppercase;
}

.v2-exams-network-head > strong {
    color: #159fc5;

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

.v2-exams-network-dot {
    width: 7px;
    height: 7px;

    border-radius: 50%;

    background: #27c4e5;

    box-shadow:
        0 0 0 4px rgba(39,196,229,.10);
}


/* CARDS */

.v2-exams-grid {
    display: grid;

    grid-template-columns: repeat(2,minmax(0,1fr));

    gap: 10px;
}

.v2-exams-card {
    min-height: 105px;

    display: flex;
    align-items: flex-start;

    gap: 10px;

    padding: 14px;

    border: 1px solid rgba(24,127,157,.11);
    border-radius: 14px;

    background: rgba(255,255,255,.72);

    box-shadow:
        0 9px 24px rgba(33,84,101,.045);

    transition: .22s ease;
}

.v2-exams-card:hover {
    transform: translateY(-3px);

    border-color: rgba(24,172,207,.25);

    box-shadow:
        0 15px 31px rgba(33,84,101,.085);
}

.v2-exams-icon {
    width: 33px;
    height: 33px;

    flex: 0 0 33px;

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

    border: 1px solid rgba(27,177,211,.17);
    border-radius: 10px;

    background: rgba(30,185,219,.08);

    color: #159fc4;

    font-size: 15px;
    font-weight: 950;
}

.v2-exams-card strong {
    display: block;

    color: #173a4d;

    font-size: 11.5px;
    font-weight: 900;
}

.v2-exams-card p {
    margin: 5px 0 0;

    color: #708793;

    font-size: 10px;
    line-height: 1.48;
}


/* BOTTOM LINK */

.v2-exams-bottom-link {
    min-height: 42px;

    display: flex;
    align-items: center;

    gap: 9px;

    margin-top: 10px;
    padding: 0 12px;

    border: 1px solid rgba(25,163,198,.13);
    border-radius: 12px;

    background:
        linear-gradient(
            90deg,
            rgba(32,190,221,.075),
            rgba(255,255,255,.67)
        );

    color: #31586b !important;

    font-size: 10.5px;
    font-weight: 900;

    text-decoration: none !important;
}

.v2-exams-bottom-link > span {
    width: 26px;
    height: 26px;

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

    border-radius: 8px;

    background: rgba(25,177,211,.10);

    color: #159fc5;
}

.v2-exams-bottom-link b {
    margin-inline-start: auto;

    color: #159fc5;
}


/* RTL */

.v2-exams[dir="rtl"] {
    text-align: right;
}

.v2-exams[dir="rtl"] .v2-exams-eyebrow {
    direction: rtl;
}


/* TABLET */

@media (max-width: 900px) {

    .v2-exams {
        padding: 40px 0 !important;
    }

    .v2-exams-shell {
        grid-template-columns: 1fr;

        gap: 26px;

        padding: 28px;
    }

}


/* MOBILE */

@media (max-width: 600px) {

    .v2-exams {
        padding: 34px 0 !important;
    }

    .v2-exams-shell {
        gap: 22px;

        padding: 22px 17px;

        border-radius: 18px;
    }

    .v2-exams h2 {
        font-size: 27px;
    }

    .v2-exams-actions {
        display: grid;

        grid-template-columns: 1fr;
    }

    .v2-exams-button,
    .v2-exams-chat-button {
        width: 100%;
    }

    .v2-exams-stats {
        grid-template-columns: 1fr;
    }

    .v2-exams-grid {
        grid-template-columns: 1fr;
    }

    .v2-exams-card {
        min-height: 0;
    }

}

/* ===== END VIRTUAL EXAMINATION CENTERS ===== */


/* =========================================================
   QRVS V2 - PARTNERS
   ========================================================= */

.v2-partners {
    position: relative;
    z-index: 10;
    padding: 38px 0 !important;
    background: #dbe9ef;
}

.v2-partners-shell {
    position: relative;
    overflow: hidden;
    padding: 30px;
    border: 1px solid rgba(24, 91, 117, .11);
    border-radius: 22px;
    background:
        radial-gradient(
            circle at 92% 8%,
            rgba(29, 181, 215, .09),
            transparent 28%
        ),
        linear-gradient(
            145deg,
            rgba(248,252,253,.92),
            rgba(232,243,247,.88)
        );
    box-shadow:
        0 16px 44px rgba(31, 75, 93, .08),
        inset 0 1px 0 rgba(255,255,255,.76);
}


/* HEADER */

.v2-partners-header {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(280px, .95fr);
    align-items: end;
    gap: 38px;
    margin-bottom: 24px;
}

.v2-partners-heading {
    min-width: 0;
}

.v2-partners-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
    color: #168daf;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.v2-partners-eyebrow span {
    width: 23px;
    height: 2px;
    border-radius: 99px;
    background: #1db4d6;
}

.v2-partners h2 {
    max-width: 620px;
    margin: 0;
    color: #102f42;
    font-size: clamp(25px, 3vw, 37px);
    font-weight: 950;
    line-height: 1.08;
    letter-spacing: -.04em;
}

.v2-partners-intro {
    max-width: 570px;
    margin: 0;
    color: #607987;
    font-size: 13px;
    line-height: 1.7;
}


/* GRID */

.v2-partners-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}


/* CARD */

.v2-partner-card {
    position: relative;
    min-width: 0;
    min-height: 190px;
    display: flex;
    flex-direction: column;
    padding: 15px;
    overflow: hidden;
    border: 1px solid rgba(24, 91, 117, .10);
    border-radius: 16px;
    background: rgba(255,255,255,.67);
    color: inherit;
    text-decoration: none;
    box-shadow:
        0 8px 22px rgba(35, 80, 97, .045),
        inset 0 1px 0 rgba(255,255,255,.78);
    transition:
        transform .22s ease,
        border-color .22s ease,
        box-shadow .22s ease,
        background .22s ease;
}

.v2-partner-card::before {
    content: "";
    position: absolute;
    top: -45px;
    right: -45px;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: rgba(29, 181, 215, .08);
    filter: blur(25px);
    pointer-events: none;
}

.v2-partner-card:hover {
    transform: translateY(-3px);
    border-color: rgba(24, 157, 190, .24);
    background: rgba(255,255,255,.86);
    box-shadow:
        0 14px 30px rgba(35, 80, 97, .09),
        inset 0 1px 0 rgba(255,255,255,.9);
}


/* LOGO AREA */

.v2-partner-logo-wrap {
    height: 72px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 12px;
    padding: 8px 14px;
    border: 1px solid rgba(28, 105, 131, .07);
    border-radius: 12px;
    background: rgba(255,255,255,.56);
}

.v2-partner-logo {
    display: block;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 54px;
    object-fit: contain;
}

.v2-partner-logo-fallback {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 13px;
    background: rgba(28, 181, 215, .10);
    color: #158eaf;
    font-size: 20px;
    font-weight: 950;
}


/* CONTENT */

.v2-partner-info {
    flex: 1;
    text-align: center;
}

.v2-partner-info h3 {
    margin: 0;
    color: #183b4d;
    font-size: 12.5px;
    font-weight: 900;
    line-height: 1.3;
}

.v2-partner-info p {
    margin: 7px 0 0;
    color: #718995;
    font-size: 10.5px;
    line-height: 1.45;
}


/* LINK */

.v2-partner-link {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    margin-top: 10px;
    color: #168ead;
    font-size: 9.5px;
    font-weight: 900;
    letter-spacing: .02em;
}

.v2-partner-link strong {
    font-size: 12px;
    transition: transform .2s ease;
}

.v2-partner-card:hover .v2-partner-link strong {
    transform: translate(2px, -2px);
}


/* RTL */

.v2-partners[dir="rtl"] {
    text-align: right;
}

.v2-partners[dir="rtl"] .v2-partners-eyebrow {
    direction: rtl;
}

.v2-partners[dir="rtl"] .v2-partner-link {
    direction: rtl;
}


/* TABLET */

@media (max-width: 1000px) {

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

}


/* MOBILE */

@media (max-width: 700px) {

    .v2-partners {
        padding: 28px 0 !important;
    }

    .v2-partners-shell {
        padding: 22px 16px;
        border-radius: 18px;
    }

    .v2-partners-header {
        grid-template-columns: 1fr;
        gap: 12px;
        margin-bottom: 20px;
    }

    .v2-partners-grid {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .v2-partner-card {
        min-height: 170px;
    }

}


/* ===== END QRVS V2 PARTNERS ===== */




/* =========================================================
   QRVS V2 - STATISTICS PREMIUM FINAL
   ========================================================= */

.v2-statistics-premium {
    position: relative !important;
    z-index: 10 !important;
    padding: 38px 0 !important;
    background: #dbe9ef !important;
}

.v2-statistics-premium .v2-statistics-shell {
    position: relative;
    overflow: hidden;
    padding: 30px;
    border: 1px solid rgba(24,91,117,.11);
    border-radius: 22px;
    background:
        radial-gradient(
            circle at 8% 10%,
            rgba(29,181,215,.08),
            transparent 27%
        ),
        linear-gradient(
            145deg,
            rgba(248,252,253,.92),
            rgba(232,243,247,.88)
        );
    box-shadow:
        0 16px 44px rgba(31,75,93,.08),
        inset 0 1px 0 rgba(255,255,255,.76);
}


/* HEADER */

.v2-statistics-premium .v2-statistics-header {
    display: grid;
    grid-template-columns: minmax(0,1.05fr) minmax(280px,.95fr);
    align-items: end;
    gap: 38px;
    margin-bottom: 24px;
}

.v2-statistics-premium .v2-statistics-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
    color: #168daf;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.v2-statistics-premium .v2-statistics-eyebrow span {
    width: 23px;
    height: 2px;
    border-radius: 99px;
    background: #1db4d6;
}

.v2-statistics-premium h2 {
    max-width: 620px;
    margin: 0;
    color: #102f42;
    font-size: clamp(25px,3vw,37px);
    font-weight: 950;
    line-height: 1.08;
    letter-spacing: -.04em;
}

.v2-statistics-premium .v2-statistics-intro {
    max-width: 570px;
    margin: 0;
    color: #607987;
    font-size: 13px;
    line-height: 1.7;
}


/* GRID */

.v2-statistics-premium .v2-statistics-grid {
    position: relative;
    display: grid !important;
    grid-template-columns: repeat(4,minmax(0,1fr)) !important;
    gap: 12px !important;
    overflow: visible !important;
    margin-top: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
}


/* CARD */

.v2-statistics-premium .v2-stat-card {
    position: relative;
    min-height: 188px !important;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 20px 15px !important;
    overflow: hidden;
    text-align: center;
    border: 1px solid rgba(24,91,117,.10) !important;
    border-radius: 16px;
    background: rgba(255,255,255,.68);
    box-shadow:
        0 8px 22px rgba(35,80,97,.045),
        inset 0 1px 0 rgba(255,255,255,.78);
    transition:
        transform .22s ease,
        border-color .22s ease,
        box-shadow .22s ease;
}

.v2-statistics-premium .v2-stat-card:not(:last-child) {
    border-inline-end: 1px solid rgba(24,91,117,.10) !important;
}

.v2-statistics-premium .v2-stat-card:hover {
    transform: translateY(-3px);
    border-color: rgba(24,157,190,.24) !important;
    box-shadow:
        0 14px 30px rgba(35,80,97,.09),
        inset 0 1px 0 rgba(255,255,255,.9);
}


/* GLOW */

.v2-statistics-premium .v2-stat-glow {
    position: absolute;
    top: -55px;
    left: 50%;
    width: 135px;
    height: 105px;
    border-radius: 50%;
    background: rgba(29,181,215,.09);
    filter: blur(38px);
    transform: translateX(-50%);
    pointer-events: none;
}


/* NUMBER */

.v2-statistics-premium .v2-stat-number {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: baseline;
    justify-content: center;
    color: #12384b !important;
    font-size: clamp(31px,3.5vw,45px) !important;
    font-weight: 950 !important;
    line-height: 1;
    letter-spacing: -.04em;
}

.v2-statistics-premium .v2-stat-suffix {
    margin-inline-start: 3px;
    color: #18a7c8 !important;
}

.v2-statistics-premium .v2-stat-word {
    color: #1598b9;
    font-size: clamp(20px,2.3vw,29px);
    letter-spacing: .02em;
}


/* TITLE */

.v2-statistics-premium .v2-stat-title {
    position: relative;
    z-index: 2;
    margin: 12px 0 0 !important;
    color: #294d5e !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    line-height: 1.35;
    letter-spacing: .04em !important;
    text-transform: uppercase;
}


/* DETAIL */

.v2-statistics-premium .v2-stat-detail {
    position: relative;
    z-index: 2;
    max-width: 220px;
    margin: 7px 0 0;
    color: #718995;
    font-size: 10px;
    line-height: 1.45;
}


/* RTL */

.v2-statistics-premium[dir="rtl"] {
    text-align: right;
}

.v2-statistics-premium[dir="rtl"] .v2-statistics-eyebrow {
    direction: rtl;
}


/* TABLET */

@media (max-width: 900px) {

    .v2-statistics-premium .v2-statistics-header {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .v2-statistics-premium .v2-statistics-grid {
        grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    }

}


/* MOBILE */

@media (max-width: 520px) {

    .v2-statistics-premium {
        padding: 28px 0 !important;
    }

    .v2-statistics-premium .v2-statistics-shell {
        padding: 22px 16px;
        border-radius: 18px;
    }

    .v2-statistics-premium .v2-statistics-grid {
        grid-template-columns: 1fr !important;
        margin-top: 0 !important;
    }

    .v2-statistics-premium .v2-stat-card {
        min-height: 150px !important;
        border-bottom: 1px solid rgba(24,91,117,.10) !important;
    }

}


/* ===== END STATISTICS PREMIUM FINAL ===== */



/* =========================================================
   QRVS V2 - TESTIMONIALS
   ========================================================= */

.v2-testimonials {
    position: relative;
    overflow: hidden;
    padding: 34px 0;
    background:
        radial-gradient(
            circle at 15% 20%,
            rgba(54, 196, 225, .09),
            transparent 26%
        ),
        radial-gradient(
            circle at 88% 80%,
            rgba(48, 172, 205, .08),
            transparent 25%
        ),
        #dcecf2;
}

.v2-testimonials::before {
    content: "";
    position: absolute;
    width: 260px;
    height: 260px;
    right: -100px;
    top: -120px;
    border: 1px solid rgba(25, 167, 201, .10);
    border-radius: 50%;
    pointer-events: none;
}

.v2-testimonials-shell {
    position: relative;
    z-index: 2;

    width: calc(100% - 8%);
    max-width: 1500px;

    margin: 0 auto;
    padding: 28px 28px 32px;

    border: 1px solid rgba(22, 116, 143, .10);
    border-radius: 22px;

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.56),
            rgba(239,249,252,.42)
        );

    box-shadow:
        0 18px 45px rgba(22, 80, 99, .06);
}


/* HEADER */

.v2-testimonials-heading {
    max-width: 780px;
    margin: 0 auto 24px;
    text-align: center;
}

.v2-testimonials-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;

    margin-bottom: 11px;

    color: #087fa5;

    font-size: 10px;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.v2-testimonials-eyebrow span {
    width: 8px;
    height: 8px;

    border-radius: 50%;

    background: #28c2e3;

    box-shadow:
        0 0 0 6px rgba(40,194,227,.10);
}

.v2-testimonials-heading h2 {
    max-width: 760px;

    margin: 0 auto;

    color: #0c3147;

    font-size: clamp(25px, 2.8vw, 38px);
    font-weight: 950;

    line-height: 1.08;
    letter-spacing: -.035em;
}

.v2-testimonials-heading > p {
    max-width: 690px;

    margin: 12px auto 0;

    color: #607987;

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


/* GRID */

.v2-testimonials-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}


/* CARD */

.v2-testimonial-card {
    position: relative;

    min-width: 0;
    min-height: 205px;

    padding: 20px;

    overflow: hidden;

    border: 1px solid rgba(19, 112, 139, .10);
    border-radius: 17px;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.91),
            rgba(248,252,253,.78)
        );

    box-shadow:
        0 12px 30px rgba(19, 76, 94, .055);

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

.v2-testimonial-card:hover {
    transform: translateY(-3px);

    border-color: rgba(29, 174, 208, .24);

    box-shadow:
        0 18px 36px rgba(19, 76, 94, .09);
}


/* PERSON */

.v2-testimonial-top {
    display: flex;
    align-items: center;
    gap: 11px;
}

.v2-testimonial-avatar {
    width: 43px;
    height: 43px;

    flex: 0 0 43px;

    overflow: hidden;

    border: 1px solid rgba(22, 145, 177, .13);
    border-radius: 13px;

    background: #eef8fb;
}

.v2-testimonial-avatar img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
}

.v2-testimonial-avatar-fallback {
    display: flex;
    align-items: center;
    justify-content: center;

    color: #0787ad;

    background:
        linear-gradient(
            135deg,
            rgba(39, 194, 225, .16),
            rgba(255,255,255,.92)
        );

    font-size: 17px;
    font-weight: 950;
}

.v2-testimonial-person {
    min-width: 0;
}

.v2-testimonial-person h3 {
    margin: 0;

    color: #12384b;

    font-size: 14px;
    font-weight: 900;

    line-height: 1.25;
}

.v2-testimonial-person span {
    display: block;

    margin-top: 3px;

    color: #79909b;

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


/* RATING */

.v2-testimonial-rating {
    display: flex;
    gap: 2px;

    margin-top: 15px;

    direction: ltr;
}

.v2-testimonial-rating span {
    color: #d7e2e6;
    font-size: 13px;
}

.v2-testimonial-rating span.is-active {
    color: #16a9cc;
}


/* QUOTE */

.v2-testimonial-card blockquote {
    position: relative;

    margin: 14px 0 0;
    padding: 0;

    border: 0;
}

.v2-testimonial-quote-mark {
    position: absolute;

    top: -12px;
    right: 0;

    color: rgba(21, 169, 204, .13);

    font-size: 52px;
    font-family: Georgia, serif;

    line-height: 1;
}

.v2-testimonial-card blockquote p {
    position: relative;
    z-index: 2;

    margin: 0;

    color: #607986;

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


/* EMPTY */

.v2-testimonials-empty {
    max-width: 600px;

    margin: 0 auto;
    padding: 30px;

    text-align: center;

    border: 1px solid rgba(19, 112, 139, .10);
    border-radius: 17px;

    background: rgba(255,255,255,.78);
}

.v2-testimonials-empty-icon {
    width: 42px;
    height: 42px;

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

    margin: 0 auto 10px;

    border-radius: 12px;

    color: #149ec2;
    background: rgba(31, 185, 217, .10);

    font-size: 17px;
}

.v2-testimonials-empty h3 {
    margin: 0;

    color: #12384b;

    font-size: 15px;
    font-weight: 900;
}

.v2-testimonials-empty p {
    margin: 7px 0 0;

    color: #718995;

    font-size: 11px;
}


/* RTL */

.v2-testimonials[dir="rtl"] {
    text-align: right;
}

.v2-testimonials[dir="rtl"] .v2-testimonials-heading {
    text-align: right;
    margin-right: 0;
    margin-left: auto;
}

.v2-testimonials[dir="rtl"] .v2-testimonials-heading h2,
.v2-testimonials[dir="rtl"] .v2-testimonials-heading > p {
    margin-right: 0;
    margin-left: auto;
}

.v2-testimonials[dir="rtl"] .v2-testimonial-top {
    direction: rtl;
}

.v2-testimonials[dir="rtl"] .v2-testimonial-quote-mark {
    right: auto;
    left: 0;
}


/* TABLET */

@media (max-width: 1000px) {

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

}


/* MOBILE */

@media (max-width: 700px) {

    .v2-testimonials {
        padding: 24px 0;
    }

    .v2-testimonials-shell {
        width: calc(100% - 24px);
        padding: 22px 16px;
        border-radius: 18px;
    }

    .v2-testimonials-heading {
        margin-bottom: 18px;
    }

    .v2-testimonials-heading h2 {
        font-size: 26px;
    }

    .v2-testimonials-grid {
        grid-template-columns: 1fr;
    }

    .v2-testimonial-card {
        min-height: 0;
    }

}

/* ===== END TESTIMONIALS ===== */

/* =========================================================
   QRVS V2 - GOOGLE REVIEWS EXTENSION
========================================================= */

.v2-google-review-summary {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    margin-top: 16px;
    padding: 8px 13px;
    border: 1px solid rgba(26, 155, 189, .13);
    border-radius: 12px;
    background: rgba(255,255,255,.72);
}

.v2-google-g {
    width: 31px;
    height: 31px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 4px 12px rgba(31, 70, 90, .10);
    font-size: 17px;
    font-weight: 900;
    color: #4285f4;
}

.v2-google-review-summary > div {
    display: flex;
    flex-direction: column;
}

.v2-google-review-summary strong {
    color: #17394a;
    font-size: 13px;
    line-height: 1.2;
}

.v2-google-review-summary strong span {
    margin-left: 5px;
    color: #f4b400;
    letter-spacing: 1px;
}

.v2-google-review-summary small {
    margin-top: 2px;
    color: #78909c;
    font-size: 9px;
    font-weight: 700;
}

.v2-google-reviews-actions {
    display: flex;
    justify-content: center;
    margin-top: 24px;
}

.v2-google-reviews-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-height: 40px;
    padding: 9px 17px;
    border: 1px solid rgba(20, 167, 202, .18);
    border-radius: 11px;
    background: rgba(255,255,255,.84);
    color: #167f9e;
    text-decoration: none;
    font-size: 11px;
    font-weight: 850;
    transition:
        transform .18s ease,
        box-shadow .18s ease,
        border-color .18s ease;
}

.v2-google-reviews-button:hover {
    transform: translateY(-1px);
    border-color: rgba(20, 167, 202, .35);
    box-shadow: 0 8px 22px rgba(26, 117, 145, .10);
}

.v2-testimonials[dir="rtl"] .v2-google-review-summary strong span {
    margin-left: 0;
    margin-right: 5px;
}

@media (max-width: 640px) {
    .v2-google-reviews-actions {
        margin-top: 18px;
    }

    .v2-google-reviews-button {
        width: 100%;
    }
}

/* ===== END GOOGLE REVIEWS EXTENSION ===== */


/* =========================================================
   QRVS V2 - GOOGLE REVIEWS COMPACT FINAL
   ========================================================= */

.v2-testimonials {
    padding: 22px 0 !important;
}

.v2-testimonials-shell {
    width: calc(100% - 8%) !important;
    max-width: 1500px !important;
    padding: 24px 28px 26px !important;
}


/* Header more compact */

.v2-testimonials-heading {
    max-width: 850px !important;
    margin: 0 auto 20px !important;
    text-align: center !important;
}

.v2-testimonials-heading h2 {
    font-size: clamp(25px, 2.5vw, 36px) !important;
}

.v2-testimonials-heading > p {
    margin-top: 8px !important;
    line-height: 1.55 !important;
}

.v2-google-review-summary {
    margin-top: 12px !important;
}


/* Reviews grid */

.v2-testimonials-grid {
    display: grid !important;
    grid-template-columns: repeat(
        auto-fit,
        minmax(min(100%, 320px), 1fr)
    ) !important;

    max-width: 1120px !important;
    margin: 0 auto !important;

    gap: 16px !important;
}


/* Special layout when only ONE review exists */

.v2-testimonials-grid:has(.v2-testimonial-card:only-child) {
    grid-template-columns: minmax(320px, 720px) !important;
    justify-content: center !important;
}


/* Special layout when TWO reviews exist */

.v2-testimonials-grid:has(
    .v2-testimonial-card:first-child:nth-last-child(2)
) {
    grid-template-columns: repeat(2, minmax(0, 520px)) !important;
    justify-content: center !important;
}


/* Review card */

.v2-testimonial-card {
    min-height: 0 !important;
    padding: 18px 20px !important;
}

.v2-testimonial-rating {
    margin-top: 11px !important;
}

.v2-testimonial-card blockquote {
    margin-top: 10px !important;
}

.v2-testimonial-card blockquote p {
    line-height: 1.6 !important;
}


/* Google button */

.v2-google-reviews-actions {
    margin-top: 16px !important;
}


/* RTL */

.v2-testimonials[dir="rtl"] .v2-testimonials-heading {
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
}


/* Tablet */

@media (max-width: 1000px) {

    .v2-testimonials-grid,
    .v2-testimonials-grid:has(.v2-testimonial-card:only-child),
    .v2-testimonials-grid:has(
        .v2-testimonial-card:first-child:nth-last-child(2)
    ) {
        grid-template-columns: repeat(
            auto-fit,
            minmax(min(100%, 300px), 1fr)
        ) !important;
    }

}


/* Mobile */

@media (max-width: 700px) {

    .v2-testimonials {
        padding: 16px 0 !important;
    }

    .v2-testimonials-shell {
        width: calc(100% - 24px) !important;
        padding: 20px 15px !important;
    }

    .v2-testimonials-heading {
        margin-bottom: 16px !important;
    }

    .v2-testimonials-heading h2 {
        font-size: 25px !important;
    }

    .v2-testimonials-grid,
    .v2-testimonials-grid:has(.v2-testimonial-card:only-child),
    .v2-testimonials-grid:has(
        .v2-testimonial-card:first-child:nth-last-child(2)
    ) {
        grid-template-columns: 1fr !important;
    }

    .v2-testimonial-card {
        padding: 17px !important;
    }

    .v2-google-reviews-actions {
        margin-top: 14px !important;
    }

}


/* ===== END GOOGLE REVIEWS COMPACT FINAL ===== */


/* =========================================================
   QRVS V2 TESTIMONIALS - CLEAN FINAL
   ========================================================= */

@media (min-width: 900px) {

    /* نفس عرض البلوكات الكبيرة */
    .v2-testimonials {
        width: calc(100% - 40px) !important;
        max-width: none !important;
        margin-left: 20px !important;
        margin-right: 20px !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        box-sizing: border-box !important;
    }

    /* الصندوق الداخلي */
    .v2-testimonials-shell {
        width: 100% !important;
        max-width: none !important;
        min-height: 0 !important;
        height: auto !important;
        margin: 0 !important;

        padding-top: 8px !important;
        padding-bottom: 8px !important;
        padding-left: 28px !important;
        padding-right: 28px !important;

        box-sizing: border-box !important;
    }

    /* العنوان */
    .v2-testimonials-heading {
        width: 100% !important;
        max-width: none !important;
        margin: 0 auto 4px !important;
        text-align: center !important;
    }

    .v2-testimonials[dir="rtl"] .v2-testimonials-heading {
        text-align: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .v2-testimonials-eyebrow {
        margin-top: 0 !important;
        margin-bottom: 2px !important;
    }

    .v2-testimonials-heading h2 {
        margin-top: 0 !important;
        margin-bottom: 2px !important;
        line-height: 1.05 !important;
    }

    .v2-testimonials-heading > p {
        margin-top: 2px !important;
        margin-bottom: 2px !important;
        line-height: 1.3 !important;
    }

    /* Google rating */
    .v2-google-review-summary {
        margin-top: 4px !important;
        margin-bottom: 3px !important;
        padding-top: 5px !important;
        padding-bottom: 5px !important;
    }

    /* أهم تعديل:
       الكرت يتمدد تقريباً بعرض البلوك كله */
    .v2-testimonials-grid {
        width: 96% !important;
        max-width: none !important;

        margin-left: auto !important;
        margin-right: auto !important;
        margin-top: 4px !important;
        margin-bottom: 3px !important;

        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }

    /* إلغاء قاعدة الكرت الوحيد القديمة */
    .v2-testimonials-grid:has(.v2-testimonial-card:only-child) {
        width: 96% !important;
        max-width: none !important;
        grid-template-columns: 1fr !important;
        justify-content: stretch !important;
    }

    .v2-testimonial-card {
        width: 100% !important;
        max-width: none !important;
        min-height: 0 !important;
        height: auto !important;

        padding-top: 8px !important;
        padding-bottom: 8px !important;

        box-sizing: border-box !important;
    }

    .v2-testimonial-rating {
        margin-top: 4px !important;
        margin-bottom: 0 !important;
    }

    .v2-testimonial-card blockquote {
        margin-top: 3px !important;
        margin-bottom: 0 !important;
    }

    .v2-testimonial-card blockquote p {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        line-height: 1.35 !important;
    }

    .v2-google-reviews-actions {
        margin-top: 4px !important;
        margin-bottom: 0 !important;
    }
}


/* Mobile */
@media (max-width: 899px) {

    .v2-testimonials {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

}


/* =========================================================
   TESTIMONIALS - OUTER BLOCK HEIGHT FIX
   تصغير البلوك الخارجي نفسه عمودياً
   لا تغيير على العرض
   ========================================================= */

@media (min-width: 900px) {

    /* البلوك الأزرق الخارجي نفسه */
    section.v2-testimonials,
    .v2-testimonials {
        height: auto !important;
        min-height: 0 !important;

        padding-top: 0 !important;
        padding-bottom: 0 !important;

        margin-top: 0 !important;
        margin-bottom: 0 !important;

        align-content: start !important;
    }

    /* الصندوق الموجود داخله */
    .v2-testimonials > .v2-testimonials-shell {
        height: auto !important;
        min-height: 0 !important;

        padding-top: 8px !important;
        padding-bottom: 8px !important;

        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

}



/* =========================================================
   QRVS V2 - GOOGLE REVIEWS
   EXACT OUTER DIMENSIONS OF STATISTICS BLOCK
   ========================================================= */

.v2-google-reviews-section {
    position: relative !important;
    z-index: 10 !important;
    padding: 38px 0 !important;
    background: #dbe9ef !important;
}


/*
 * IMPORTANT:
 * These values are copied directly from
 * .v2-statistics-premium .v2-statistics-shell
 */
.v2-google-reviews-shell {
    position: relative;
    overflow: hidden;

    padding: 30px;

    border: 1px solid rgba(24,91,117,.11);
    border-radius: 22px;

    background:
        radial-gradient(
            circle at 8% 10%,
            rgba(29,181,215,.08),
            transparent 27%
        ),
        linear-gradient(
            145deg,
            rgba(248,252,253,.92),
            rgba(232,243,247,.88)
        );

    box-shadow:
        0 16px 44px rgba(31,75,93,.08),
        inset 0 1px 0 rgba(255,255,255,.76);
}


/* HEADER */

.v2-google-reviews-header {
    display: grid;
    grid-template-columns:
        minmax(0,1.05fr)
        minmax(280px,.95fr);

    align-items: end;

    gap: 38px;
    margin-bottom: 24px;
}


.v2-google-reviews-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;

    margin-bottom: 10px;

    color: #168daf;

    font-size: 10px;
    font-weight: 900;
    letter-spacing: .13em;
    text-transform: uppercase;
}


.v2-google-reviews-eyebrow span {
    width: 23px;
    height: 2px;

    border-radius: 99px;
    background: #1db4d6;
}


.v2-google-reviews-header h2 {
    max-width: 620px;

    margin: 0;

    color: #102f42;

    font-size: clamp(25px,3vw,37px);
    font-weight: 950;

    line-height: 1.08;
    letter-spacing: -.04em;
}


.v2-google-reviews-header-side {
    display: flex;
    flex-direction: column;
    gap: 12px;
}


.v2-google-reviews-intro {
    max-width: 570px;

    margin: 0;

    color: #607987;

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


/* GOOGLE SCORE */

.v2-google-rating-box {
    width: fit-content;

    display: flex;
    align-items: center;

    gap: 10px;

    padding: 8px 12px;

    border: 1px solid rgba(24,91,117,.10);
    border-radius: 13px;

    background: rgba(255,255,255,.78);

    box-shadow:
        0 8px 20px rgba(31,75,93,.05);
}


.v2-google-rating-logo {
    width: 34px;
    height: 34px;

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

    border-radius: 50%;

    background: #fff;

    color: #4285f4;

    font-size: 18px;
    font-weight: 900;

    box-shadow:
        0 4px 12px rgba(31,75,93,.08);
}


.v2-google-rating-info {
    display: flex;
    flex-direction: column;
}


.v2-google-rating-line {
    display: flex;
    align-items: center;
    gap: 8px;
}


.v2-google-rating-line strong {
    color: #102f42;
    font-size: 14px;
}


.v2-google-rating-line span {
    color: #f5b301;
    letter-spacing: 1px;
}


.v2-google-rating-info small {
    margin-top: 2px;

    color: #718995;

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


/* REVIEWS GRID */

.v2-google-reviews-grid {
    display: grid !important;

    grid-template-columns:
        repeat(4,minmax(0,1fr)) !important;

    gap: 12px !important;

    margin: 0 !important;
}


.v2-google-review-card {
    position: relative;

    min-width: 0;
    min-height: 188px;

    display: flex;
    flex-direction: column;

    padding: 20px;

    border: 1px solid rgba(24,91,117,.10);
    border-radius: 17px;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.94),
            rgba(248,252,253,.82)
        );

    box-shadow:
        0 10px 28px rgba(31,75,93,.055);
}


.v2-google-review-person {
    display: flex;
    align-items: center;

    gap: 10px;
}


.v2-google-review-avatar {
    width: 44px;
    height: 44px;

    flex: 0 0 44px;

    overflow: hidden;

    border-radius: 13px;

    border:
        1px solid rgba(25,167,201,.18);

    background: #eef8fb;
}


.v2-google-review-avatar img {
    width: 100%;
    height: 100%;

    object-fit: cover;
}


.v2-google-review-avatar-fallback {
    display: flex;
    align-items: center;
    justify-content: center;

    color: #0787aa;

    font-size: 17px;
    font-weight: 900;
}


.v2-google-review-name {
    min-width: 0;
}


.v2-google-review-name h3 {
    margin: 0;

    color: #102f42;

    font-size: 13px;
    font-weight: 900;

    line-height: 1.3;
}


.v2-google-review-name span {
    display: block;

    margin-top: 3px;

    color: #718995;

    font-size: 9px;
}


.v2-google-review-stars {
    margin-top: 15px;

    font-size: 13px;
    letter-spacing: 1px;
}


.v2-google-review-stars span {
    color: #d3dde1;
}


.v2-google-review-stars span.active {
    color: #f5b301;
}


.v2-google-review-text {
    margin: 10px 0 0;

    color: #607987;

    font-size: 11px;
    line-height: 1.55;
}


/* FOOTER */

.v2-google-reviews-footer {
    display: flex;
    justify-content: center;

    margin-top: 18px;
}


.v2-google-reviews-link {
    display: inline-flex;
    align-items: center;

    gap: 8px;

    padding: 10px 16px;

    border:
        1px solid rgba(25,167,201,.18);

    border-radius: 12px;

    background: rgba(255,255,255,.72);

    color: #087fa5 !important;

    font-size: 10px;
    font-weight: 900;

    text-decoration: none !important;

    transition:
        transform .2s ease,
        box-shadow .2s ease;
}


.v2-google-reviews-link:hover {
    transform: translateY(-2px);

    box-shadow:
        0 8px 20px rgba(31,75,93,.08);
}


/* RTL */

.v2-google-reviews-section[dir="rtl"] {
    text-align: right;
}


/* TABLET */

@media (max-width: 900px) {

    .v2-google-reviews-header {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .v2-google-reviews-grid {
        grid-template-columns:
            repeat(2,minmax(0,1fr)) !important;
    }

}


/* MOBILE */

@media (max-width: 520px) {

    .v2-google-reviews-section {
        padding: 28px 0 !important;
    }

    .v2-google-reviews-shell {
        padding: 22px 16px;
        border-radius: 18px;
    }

    .v2-google-reviews-grid {
        grid-template-columns: 1fr !important;
    }

    .v2-google-review-card {
        min-height: 150px;
    }

}


/* ===== END GOOGLE REVIEWS ===== */



/* =========================================================
   GOOGLE REVIEWS - VERTICAL COMPACT
   WIDTH UNCHANGED
   ========================================================= */

@media (min-width: 901px) {

    /*
     * OUTER SECTION:
     * keep full width, reduce ONLY vertical spacing
     */
    .v2-google-reviews-section {
        padding-top: 12px !important;
        padding-bottom: 12px !important;
    }


    /*
     * SHELL:
     * DO NOT CHANGE WIDTH
     * reduce top/bottom padding only
     */
    .v2-google-reviews-shell {
        padding-top: 14px !important;
        padding-bottom: 14px !important;

        padding-left: 30px !important;
        padding-right: 30px !important;

        min-height: 0 !important;
        height: auto !important;
    }


    /* HEADER more compact vertically */

    .v2-google-reviews-header {
        margin-bottom: 10px !important;
        gap: 38px !important;
    }

    .v2-google-reviews-eyebrow {
        margin-bottom: 4px !important;
    }

    .v2-google-reviews-header h2 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    .v2-google-reviews-header-side {
        gap: 5px !important;
    }

    .v2-google-reviews-intro {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }


    /* GOOGLE SCORE */

    .v2-google-rating-box {
        padding-top: 5px !important;
        padding-bottom: 5px !important;
    }


    /* REVIEW CARDS */

    .v2-google-review-card {
        min-height: 115px !important;
        height: auto !important;

        padding-top: 12px !important;
        padding-bottom: 12px !important;
    }

    .v2-google-review-stars {
        margin-top: 7px !important;
    }

    .v2-google-review-text {
        margin-top: 5px !important;
    }


    /* BUTTON AREA */

    .v2-google-reviews-footer {
        margin-top: 8px !important;
    }

    .v2-google-reviews-link {
        padding-top: 7px !important;
        padding-bottom: 7px !important;
    }

}


/* ===== END GOOGLE REVIEWS VERTICAL COMPACT ===== */



/* =========================================================
   GOOGLE REVIEWS - 3 EQUAL ITEMS IN ONE ROW
   Desktop only
   ========================================================= */

@media (min-width: 901px) {

    /*
     * Turn the shell into a grid while keeping
     * the heading across the full width.
     */
    .v2-google-reviews-shell {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        column-gap: 14px !important;
        row-gap: 12px !important;
        align-items: stretch !important;
    }


    /* Heading stays above all three cards */

    .v2-google-reviews-header {
        grid-column: 1 / -1 !important;

        display: grid !important;
        grid-template-columns:
            minmax(0,1.05fr)
            minmax(280px,.95fr) !important;

        margin-bottom: 4px !important;
    }


    /*
     * Header side must not keep the rating card inside
     * its normal visual position.
     */

    .v2-google-reviews-header-side {
        display: contents !important;
    }


    .v2-google-reviews-intro {
        position: absolute !important;
        top: 24px !important;
        left: 30px !important;

        max-width: 570px !important;
    }


    /* =========================================
       ITEM 1 — GOOGLE RATING
       ========================================= */

    .v2-google-rating-card {
        grid-column: 1 !important;
        grid-row: 2 !important;

        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;

        min-height: 125px !important;
        height: 125px !important;

        margin: 0 !important;
        padding: 16px !important;

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

        box-sizing: border-box !important;

        border: 1px solid rgba(24,91,117,.10) !important;
        border-radius: 17px !important;

        background:
            linear-gradient(
                145deg,
                rgba(255,255,255,.94),
                rgba(248,252,253,.82)
            ) !important;

        box-shadow:
            0 10px 28px rgba(31,75,93,.055) !important;
    }


    /* =========================================
       TESTIMONIAL GRID becomes transparent
       so its first card participates as column 3
       ========================================= */

    .v2-google-reviews-grid {
        display: contents !important;
    }


    /* =========================================
       ITEM 2 — REVIEW CARD
       ========================================= */

    .v2-google-review-card.v2-google-row-item {
        grid-column: 3 !important;
        grid-row: 2 !important;

        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;

        min-height: 125px !important;
        height: 125px !important;

        margin: 0 !important;
        padding: 16px !important;

        box-sizing: border-box !important;
    }


    /* =========================================
       ITEM 3 — ALL REVIEWS BUTTON CARD
       ========================================= */

    .v2-google-button-card {
        grid-column: 2 !important;
        grid-row: 2 !important;

        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;

        min-height: 125px !important;
        height: 125px !important;

        margin: 0 !important;
        padding: 16px !important;

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

        box-sizing: border-box !important;

        border: 1px solid rgba(24,91,117,.10) !important;
        border-radius: 17px !important;

        background:
            linear-gradient(
                145deg,
                rgba(255,255,255,.94),
                rgba(248,252,253,.82)
            ) !important;

        box-shadow:
            0 10px 28px rgba(31,75,93,.055) !important;
    }


    .v2-google-button-card .v2-google-reviews-link {
        margin: 0 !important;
    }


    /*
     * All three are exactly equal.
     */

    .v2-google-row-item {
        width: 100% !important;
        height: 125px !important;
        min-height: 125px !important;
        max-height: 125px !important;
    }

}


/* ===== END GOOGLE REVIEWS 3 EQUAL ITEMS ===== */



/* =========================================================
   QRVS GOOGLE REVIEWS
   FINAL COMPACT 3-CARD ROW FIX
   ========================================================= */

@media (min-width: 901px) {

    /* البلوك الداخلي */
    .v2-google-reviews-shell {
        display: grid !important;

        grid-template-columns:
            repeat(3, minmax(0, 1fr)) !important;

        grid-template-rows:
            auto 105px !important;

        column-gap: 14px !important;
        row-gap: 14px !important;

        align-items: stretch !important;
    }


    /* العنوان والوصف فوق */
    .v2-google-reviews-header {
        grid-column: 1 / -1 !important;
        grid-row: 1 !important;

        margin: 0 0 8px !important;
    }


    /* نلغي التموضع السابق */
    .v2-google-reviews-header-side {
        display: contents !important;
    }


    .v2-google-reviews-intro {
        position: static !important;

        width: auto !important;
        max-width: 570px !important;

        margin: 0 !important;
    }


    /* ========================================
       الكرت الأول: Google Rating
       ======================================== */

    .v2-google-rating-card {
        grid-column: 1 !important;
        grid-row: 2 !important;

        width: 100% !important;
        max-width: none !important;

        height: 105px !important;
        min-height: 105px !important;
        max-height: 105px !important;

        margin: 0 !important;
        padding: 12px 16px !important;

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

        box-sizing: border-box !important;

        border-radius: 16px !important;
    }


    /* يسمح لكرت التقييم بالدخول مباشرة في Grid */
    .v2-google-reviews-grid {
        display: contents !important;
    }


    /* ========================================
       الكرت الثاني: Testimonial
       ======================================== */

    .v2-google-review-card.v2-google-row-item {
        grid-column: 2 !important;
        grid-row: 2 !important;

        width: 100% !important;
        max-width: none !important;

        height: 105px !important;
        min-height: 105px !important;
        max-height: 105px !important;

        margin: 0 !important;
        padding: 12px 16px !important;

        box-sizing: border-box !important;

        border-radius: 16px !important;

        overflow: hidden !important;
    }


    /* تصغير محتويات بطاقة العميل */
    .v2-google-review-card .v2-google-review-avatar {
        width: 42px !important;
        height: 42px !important;
        min-width: 42px !important;
    }


    .v2-google-review-card h3 {
        font-size: 14px !important;
        line-height: 1.15 !important;
        margin: 0 !important;
    }


    .v2-google-review-card p {
        font-size: 11px !important;
        line-height: 1.35 !important;
        margin-top: 5px !important;
    }


    /* ========================================
       الكرت الثالث: زر جميع التقييمات
       ======================================== */

    .v2-google-button-card {
        grid-column: 3 !important;
        grid-row: 2 !important;

        width: 100% !important;
        max-width: none !important;

        height: 105px !important;
        min-height: 105px !important;
        max-height: 105px !important;

        margin: 0 !important;
        padding: 12px 16px !important;

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

        box-sizing: border-box !important;

        border-radius: 16px !important;
    }


    .v2-google-button-card .v2-google-reviews-link {
        width: auto !important;
        max-width: 100% !important;

        margin: 0 !important;
        padding: 9px 15px !important;
    }


    /* ========================================
       توحيد قياس الثلاثة بالقوة
       ======================================== */

    .v2-google-row-item {
        width: 100% !important;

        height: 105px !important;
        min-height: 105px !important;
        max-height: 105px !important;

        box-sizing: border-box !important;
    }

}


/* =========================================================
   END FINAL COMPACT 3-CARD ROW
   ========================================================= */



/* =========================================================
   QRVS V2 - GOOGLE REVIEWS - THREE EQUAL CARDS
   SAFE OVERRIDE
   Does NOT change outer shell/header
   ========================================================= */

@media (min-width: 901px) {

    /*
     * Use the existing shell as a 2-column grid:
     * header remains untouched visually,
     * the three cards are normalized below.
     */

    .v2-google-reviews-shell {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        column-gap: 16px !important;
    }

    /* Header stays full width */
    .v2-google-reviews-header {
        grid-column: 1 / -1 !important;
    }

    /*
     * Rating card:
     * remove it from header-side positioning and
     * place it as card #1 in the common row.
     */
    .v2-google-reviews-header-side {
        display: contents !important;
    }

    .v2-google-reviews-intro {
        grid-column: 1 / -1 !important;
    }

    .v2-google-rating-card {
        grid-column: 1 !important;
        grid-row: 2 !important;
    }

    /* Reviews wrapper participates directly in shell grid */
    .v2-google-reviews-grid {
        display: contents !important;
    }

    /* Current single testimonial = card #2 */
    .v2-google-review-card {
        grid-column: 2 !important;
        grid-row: 2 !important;
    }

    /* Button card = card #3 */
    .v2-google-button-card {
        grid-column: 3 !important;
        grid-row: 2 !important;
    }


    /* =====================================================
       SAME SIZE FOR ALL THREE
       ===================================================== */

    .v2-google-rating-card,
    .v2-google-review-card,
    .v2-google-button-card {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;

        height: 118px !important;
        min-height: 118px !important;
        max-height: 118px !important;

        margin: 18px 0 0 !important;
        padding: 14px 18px !important;

        box-sizing: border-box !important;

        border: 1px solid rgba(24, 91, 117, .10) !important;
        border-radius: 16px !important;

        background:
            linear-gradient(
                145deg,
                rgba(255,255,255,.92),
                rgba(248,252,253,.82)
            ) !important;

        box-shadow:
            0 10px 26px rgba(31,75,93,.05) !important;
    }


    /* Card 1 - Google rating */
    .v2-google-rating-card {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 12px !important;
    }


    /* Card 2 - Client review */
    .v2-google-review-card {
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        overflow: hidden !important;
    }


    /* Card 3 - Google button */
    .v2-google-button-card {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .v2-google-reviews-link {
        margin: 0 !important;
    }

}


/* =========================================================
   TABLET / MOBILE
   ========================================================= */

@media (max-width: 900px) {

    .v2-google-reviews-shell {
        display: block !important;
    }

    .v2-google-reviews-header-side {
        display: block !important;
    }

    .v2-google-reviews-grid {
        display: grid !important;
    }

    .v2-google-rating-card,
    .v2-google-review-card,
    .v2-google-button-card {
        width: 100% !important;
        max-width: none !important;
        height: auto !important;
        min-height: 105px !important;
        max-height: none !important;
        margin-top: 12px !important;
        box-sizing: border-box !important;
    }

}



/* =========================================================
   QRVS V2 - GOOGLE REVIEWS - FINAL STRUCTURAL FIX
   ========================================================= */

.v2-google-reviews-section {
    position: relative !important;
    padding: 38px 0 !important;
}

.v2-google-reviews-section .v2-google-reviews-shell {
    display: block !important;
    position: relative !important;
    overflow: hidden !important;
    padding: 30px !important;
    box-sizing: border-box !important;
}


/* HEADER */

.v2-google-reviews-section .v2-google-reviews-header {
    display: grid !important;
    grid-template-columns: minmax(0, 1.05fr) minmax(280px, .95fr) !important;
    align-items: end !important;
    gap: 38px !important;
    margin: 0 0 24px !important;
}

.v2-google-reviews-section .v2-google-reviews-intro {
    margin: 0 !important;
}


/* =========================================================
   THREE IDENTICAL CARDS
   ========================================================= */

.v2-google-reviews-section .v2-google-three-cards {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}


.v2-google-reviews-section .v2-google-unified-card {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;

    height: 118px !important;
    min-height: 118px !important;
    max-height: 118px !important;

    margin: 0 !important;
    padding: 14px 18px !important;

    box-sizing: border-box !important;

    border: 1px solid rgba(24,91,117,.10) !important;
    border-radius: 16px !important;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.94),
            rgba(248,252,253,.84)
        ) !important;

    box-shadow:
        0 10px 26px rgba(31,75,93,.05) !important;
}


/* RATING */

.v2-google-reviews-section .v2-google-unified-rating {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
}


/* REVIEW */

.v2-google-reviews-section .v2-google-unified-review {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    overflow: hidden !important;
}


/* BUTTON */

.v2-google-reviews-section .v2-google-unified-button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.v2-google-reviews-section .v2-google-unified-button .v2-google-reviews-link {
    margin: 0 !important;
}


/* =========================================================
   RTL
   ========================================================= */

.v2-google-reviews-section[dir="rtl"] {
    text-align: right !important;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {

    .v2-google-reviews-section .v2-google-reviews-header {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    .v2-google-reviews-section .v2-google-three-cards {
        grid-template-columns: 1fr !important;
    }

    .v2-google-reviews-section .v2-google-unified-card {
        height: auto !important;
        min-height: 105px !important;
        max-height: none !important;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 640px) {

    .v2-google-reviews-section {
        padding: 24px 0 !important;
    }

    .v2-google-reviews-section .v2-google-reviews-shell {
        padding: 20px !important;
    }

}



/* =========================================================
   QRVS V2 - VIDEOS PREMIUM
   ========================================================= */

.v2-videos-premium {
    position: relative;
    z-index: 10;
    padding: 38px 0;
    background: #dbe9ef;
}

.v2-videos-premium .v2-videos-shell {
    position: relative;
    overflow: hidden;

    padding: 30px;

    border: 1px solid rgba(24,91,117,.11);
    border-radius: 22px;

    background:
        radial-gradient(
            circle at 8% 10%,
            rgba(29,181,215,.08),
            transparent 27%
        ),
        linear-gradient(
            145deg,
            rgba(248,252,253,.92),
            rgba(232,243,247,.88)
        );

    box-shadow:
        0 16px 44px rgba(31,75,93,.08),
        inset 0 1px 0 rgba(255,255,255,.76);
}


/* HEADER */

.v2-videos-premium .v2-videos-header {
    display: grid;
    grid-template-columns: minmax(0,1.05fr) minmax(280px,.95fr);
    align-items: end;
    gap: 38px;
    margin-bottom: 24px;
}

.v2-videos-premium .v2-videos-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;

    margin-bottom: 10px;

    color: #168daf;

    font-size: 10px;
    font-weight: 900;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.v2-videos-premium .v2-videos-eyebrow span {
    width: 23px;
    height: 2px;

    border-radius: 99px;
    background: #1db4d6;
}

.v2-videos-premium h2 {
    max-width: 650px;
    margin: 0;

    color: #102f42;

    font-size: clamp(25px,3vw,37px);
    font-weight: 950;

    line-height: 1.08;
    letter-spacing: -.04em;
}

.v2-videos-premium .v2-videos-intro {
    max-width: 570px;
    margin: 0;

    color: #607987;

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


/* GRID */

.v2-videos-premium .v2-videos-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 14px;
}


/* CARD */

.v2-videos-premium .v2-video-card {
    min-width: 0;
    overflow: hidden;

    border: 1px solid rgba(19,112,139,.10);
    border-radius: 17px;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.94),
            rgba(248,252,253,.82)
        );

    box-shadow:
        0 12px 30px rgba(19,76,94,.055);

    transition:
        transform .25s ease,
        box-shadow .25s ease;
}

.v2-videos-premium .v2-video-card:hover {
    transform: translateY(-3px);

    box-shadow:
        0 18px 38px rgba(19,76,94,.09);
}


/* VIDEO */

.v2-videos-premium .v2-video-media {
    position: relative;

    width: 100%;
    aspect-ratio: 16 / 9;

    overflow: hidden;

    background: #0d3044;
}

.v2-videos-premium .v2-video-media iframe,
.v2-videos-premium .v2-video-media video,
.v2-videos-premium .v2-video-media img {
    display: block;

    width: 100%;
    height: 100%;

    border: 0;

    object-fit: cover;
}

.v2-videos-premium .v2-video-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 100%;
    height: 100%;

    background:
        radial-gradient(
            circle at center,
            rgba(32,188,220,.24),
            transparent 35%
        ),
        linear-gradient(
            145deg,
            #123b50,
            #092838
        );
}

.v2-videos-premium .v2-video-placeholder span {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 56px;
    height: 56px;

    padding-left: 4px;

    border: 1px solid rgba(255,255,255,.35);
    border-radius: 50%;

    background: rgba(255,255,255,.12);

    color: #fff;

    font-size: 20px;
}


/* CONTENT */

.v2-videos-premium .v2-video-content {
    padding: 17px 18px 19px;
}

.v2-videos-premium .v2-video-meta {
    display: flex;
    align-items: center;
    gap: 7px;

    margin-bottom: 8px;

    color: #1598b9;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .08em;
    text-transform: uppercase;
}

.v2-videos-premium .v2-video-play-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 20px;
    height: 20px;

    border-radius: 50%;

    background: rgba(29,180,214,.11);

    color: #1598b9;

    font-size: 8px;
}

.v2-videos-premium .v2-video-content h3 {
    margin: 0;

    color: #103247;

    font-size: 16px;
    font-weight: 900;

    line-height: 1.3;
}

.v2-videos-premium .v2-video-content p {
    margin: 8px 0 0;

    color: #718995;

    font-size: 11px;
    line-height: 1.55;
}


/* RTL */

.v2-videos-premium[dir="rtl"] {
    text-align: right;
}


/* TABLET */

@media (max-width: 900px) {

    .v2-videos-premium .v2-videos-header {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .v2-videos-premium .v2-videos-grid {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }

}


/* MOBILE */

@media (max-width: 600px) {

    .v2-videos-premium {
        padding: 28px 0;
    }

    .v2-videos-premium .v2-videos-shell {
        padding: 20px 16px;
        border-radius: 18px;
    }

    .v2-videos-premium .v2-videos-grid {
        grid-template-columns: 1fr;
    }

}



/* =========================================================
   QRVS V2 - YOUTUBE PREVIEW
   ========================================================= */

.v2-videos-premium .v2-youtube-preview {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background: #0d3044;
    text-decoration: none;
}

.v2-videos-premium .v2-youtube-preview img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.01);
    transition: transform .35s ease;
}

.v2-videos-premium .v2-youtube-preview-overlay {
    position: absolute;
    inset: 0;
    z-index: 2;
    background:
        linear-gradient(
            180deg,
            rgba(5,31,45,.05),
            rgba(5,31,45,.22)
        );
}

.v2-videos-premium .v2-youtube-play {
    position: absolute;
    z-index: 3;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);

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

    width: 62px;
    height: 62px;

    border: 1px solid rgba(255,255,255,.72);
    border-radius: 50%;

    background: rgba(255,255,255,.94);

    box-shadow:
        0 12px 30px rgba(5,38,54,.22);

    transition:
        transform .25s ease,
        box-shadow .25s ease;
}

.v2-videos-premium .v2-youtube-play span {
    margin-left: 4px;
    color: #1598b9;
    font-size: 20px;
    line-height: 1;
}

.v2-videos-premium .v2-youtube-preview:hover img {
    transform: scale(1.045);
}

.v2-videos-premium .v2-youtube-preview:hover .v2-youtube-play {
    transform: translate(-50%, -50%) scale(1.08);
    box-shadow:
        0 16px 36px rgba(5,38,54,.28);
}


/* MOBILE */

@media (max-width: 600px) {

    .v2-videos-premium .v2-youtube-play {
        width: 52px;
        height: 52px;
    }

    .v2-videos-premium .v2-youtube-play span {
        font-size: 17px;
    }

}



/* =========================================================
   QRVS V2 - NEWS PREMIUM
   ========================================================= */

.v2-news-premium {
    position: relative;
    padding: 38px 0;
    background: #dbe9ef;
}

.v2-news-premium .v2-news-shell {
    position: relative;
    overflow: hidden;
    padding: 30px;
    border: 1px solid rgba(24,91,117,.11);
    border-radius: 22px;
    background:
        radial-gradient(
            circle at 8% 10%,
            rgba(29,181,215,.08),
            transparent 27%
        ),
        linear-gradient(
            145deg,
            rgba(248,252,253,.92),
            rgba(232,243,247,.88)
        );
    box-shadow:
        0 16px 44px rgba(31,75,93,.08),
        inset 0 1px 0 rgba(255,255,255,.76);
}


/* HEADER */

.v2-news-premium .v2-news-header {
    display: grid;
    grid-template-columns: minmax(0,1.05fr) minmax(280px,.95fr);
    align-items: end;
    gap: 38px;
    margin-bottom: 26px;
}

.v2-news-premium .v2-news-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
    color: #168daf;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.v2-news-premium .v2-news-eyebrow span {
    width: 23px;
    height: 2px;
    border-radius: 99px;
    background: #1db4d6;
}

.v2-news-premium h2 {
    max-width: 650px;
    margin: 0;
    color: #102f42;
    font-size: clamp(25px,3vw,37px);
    font-weight: 950;
    line-height: 1.08;
    letter-spacing: -.04em;
}

.v2-news-premium .v2-news-intro {
    max-width: 570px;
    margin: 0;
    color: #607987;
    font-size: 13px;
    line-height: 1.7;
}


/* GRID */

.v2-news-premium .v2-news-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 14px;
}


/* CARD */

.v2-news-premium .v2-news-card {
    overflow: hidden;
    min-width: 0;
    border: 1px solid rgba(24,91,117,.10);
    border-radius: 17px;
    background: rgba(255,255,255,.82);
    box-shadow:
        0 10px 30px rgba(31,75,93,.055),
        inset 0 1px 0 rgba(255,255,255,.85);
    transition:
        transform .25s ease,
        box-shadow .25s ease;
}

.v2-news-premium .v2-news-card:hover {
    transform: translateY(-3px);
    box-shadow:
        0 16px 36px rgba(31,75,93,.10),
        inset 0 1px 0 rgba(255,255,255,.9);
}


/* IMAGE */

.v2-news-premium .v2-news-media {
    position: relative;
    overflow: hidden;
    aspect-ratio: 16 / 9;
    background: #dcecf2;
}

.v2-news-premium .v2-news-media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform .4s ease;
}

.v2-news-premium .v2-news-card:hover .v2-news-media img {
    transform: scale(1.025);
}

.v2-news-premium .v2-news-placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background:
        radial-gradient(
            circle at 25% 20%,
            rgba(29,181,215,.16),
            transparent 30%
        ),
        linear-gradient(
            145deg,
            #edf7fa,
            #dcecf2
        );
    color: #123b4e;
}

.v2-news-premium .v2-news-placeholder span {
    color: #1aa2c3;
    font-size: 13px;
    font-weight: 900;
    letter-spacing: .18em;
}

.v2-news-premium .v2-news-placeholder strong {
    margin-top: 4px;
    font-size: 28px;
    font-weight: 950;
    letter-spacing: -.04em;
}


/* CONTENT */

.v2-news-premium .v2-news-card-body {
    padding: 17px 18px 16px;
}

.v2-news-premium time {
    display: block;
    margin-bottom: 8px;
    color: #1696b7;
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .06em;
}

.v2-news-premium .v2-news-card h3 {
    margin: 0 0 9px;
    color: #102f42;
    font-size: 17px;
    font-weight: 900;
    line-height: 1.25;
}

.v2-news-premium .v2-news-card p {
    margin: 0;
    color: #617b88;
    font-size: 12px;
    line-height: 1.65;
}

.v2-news-premium .v2-news-card-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 15px;
    padding-top: 12px;
    border-top: 1px solid rgba(24,91,117,.08);
    color: #0787aa;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .05em;
}


/* RTL */

.v2-news-premium[dir="rtl"] {
    text-align: right;
}

.v2-news-premium[dir="rtl"] .v2-news-eyebrow {
    flex-direction: row-reverse;
}


/* TABLET */

@media (max-width: 980px) {

    .v2-news-premium .v2-news-header {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .v2-news-premium .v2-news-grid {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
}


/* MOBILE */

@media (max-width: 680px) {

    .v2-news-premium {
        padding: 24px 0;
    }

    .v2-news-premium .v2-news-shell {
        padding: 20px 16px;
        border-radius: 18px;
    }

    .v2-news-premium .v2-news-grid {
        grid-template-columns: 1fr;
    }

    .v2-news-premium .v2-news-header {
        margin-bottom: 20px;
    }
}



/* =========================================================
   QRVS V2 - CTA FINAL
   ========================================================= */

.v2-cta {
    position: relative;
    padding: 34px 0;
    background: #dbe9ef;
}

.v2-cta-shell {
    position: relative;
    overflow: hidden;

    display: grid;
    grid-template-columns: minmax(0, 1.35fr) auto;
    align-items: center;
    gap: 50px;

    padding: 38px 42px;

    border: 1px solid rgba(24,91,117,.11);
    border-radius: 22px;

    background:
        radial-gradient(
            circle at 8% 10%,
            rgba(29,181,215,.10),
            transparent 30%
        ),
        linear-gradient(
            145deg,
            rgba(248,252,253,.95),
            rgba(232,243,247,.90)
        );

    box-shadow:
        0 16px 44px rgba(31,75,93,.08),
        inset 0 1px 0 rgba(255,255,255,.78);
}

.v2-cta-content {
    position: relative;
    z-index: 2;
    max-width: 760px;
}

.v2-cta-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;

    margin-bottom: 11px;

    color: #168daf;

    font-size: 10px;
    font-weight: 900;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.v2-cta-eyebrow span {
    width: 23px;
    height: 2px;

    border-radius: 99px;
    background: #1db4d6;
}

.v2-cta h2 {
    margin: 0;

    color: #102f42;

    font-size: clamp(25px, 3vw, 38px);
    font-weight: 950;

    line-height: 1.08;
    letter-spacing: -.04em;
}

.v2-cta-content > p {
    max-width: 700px;

    margin: 14px 0 0;

    color: #607987;

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

.v2-cta-actions {
    position: relative;
    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;

    flex-wrap: wrap;
}

.v2-cta-primary,
.v2-cta-secondary {
    min-height: 44px;

    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;

    padding: 0 20px;

    border-radius: 12px;

    font-size: 12px;
    font-weight: 900;

    text-decoration: none !important;

    transition:
        transform .2s ease,
        box-shadow .2s ease,
        background .2s ease;
}

.v2-cta-primary {
    border: 1px solid #159fc1;

    color: #fff !important;

    background:
        linear-gradient(
            135deg,
            #1496b8,
            #20b8d8
        );

    box-shadow:
        0 10px 24px rgba(22,159,193,.18);
}

.v2-cta-secondary {
    border: 1px solid rgba(22,116,143,.17);

    color: #1c6179 !important;

    background: rgba(255,255,255,.58);
}

.v2-cta-primary:hover,
.v2-cta-secondary:hover {
    transform: translateY(-2px);
}

.v2-cta-primary:hover {
    box-shadow:
        0 14px 30px rgba(22,159,193,.24);
}

.v2-cta-decoration {
    position: absolute;

    border-radius: 50%;

    pointer-events: none;
}

.v2-cta-decoration-one {
    width: 250px;
    height: 250px;

    right: -100px;
    top: -150px;

    border: 1px solid rgba(29,181,215,.12);
}

.v2-cta-decoration-two {
    width: 150px;
    height: 150px;

    right: -45px;
    bottom: -100px;

    border: 1px solid rgba(29,181,215,.08);
}


/* RTL */

.v2-cta[dir="rtl"] {
    text-align: right;
}

.v2-cta[dir="rtl"] .v2-cta-eyebrow {
    direction: rtl;
}


/* TABLET */

@media (max-width: 900px) {

    .v2-cta-shell {
        grid-template-columns: 1fr;
        gap: 24px;

        padding: 32px;
    }

    .v2-cta-actions {
        justify-content: flex-start;
    }

    .v2-cta[dir="rtl"] .v2-cta-actions {
        justify-content: flex-start;
    }

}


/* MOBILE */

@media (max-width: 520px) {

    .v2-cta {
        padding: 26px 0;
    }

    .v2-cta-shell {
        padding: 26px 20px;
        border-radius: 18px;
    }

    .v2-cta-actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .v2-cta-primary,
    .v2-cta-secondary {
        width: 100%;
    }

}


/* ===== END CTA FINAL ===== */






/* =========================================================
   QRVS V2 - FOOTER FINAL
   ========================================================= */

.v2-footer {
    padding: 0 0 34px;
}

.v2-footer > .v2-container {
    background:
        radial-gradient(circle at 8% 15%, rgba(31, 169, 207, .10), transparent 25%),
        linear-gradient(135deg, rgba(255,255,255,.78), rgba(240,249,252,.72));
    border: 1px solid rgba(255,255,255,.82);
    border-radius: 26px;
    box-shadow: 0 22px 55px rgba(20, 71, 94, .07);
    overflow: hidden;
}

.v2-footer-main {
    display: grid;
    grid-template-columns: 1.7fr .8fr 1fr 1fr;
    gap: 48px;
    padding: 56px 48px 48px;
}

.v2-footer-brand {
    max-width: 460px;
}

.v2-footer-logo {
    display: inline-flex;
    align-items: center;
    gap: 13px;
    color: #073957;
    font-size: 20px;
    font-weight: 900;
    text-decoration: none;
}

.v2-footer-logo-mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 13px;
    background: #16a7c9;
    color: #fff;
    font-weight: 900;
}

.v2-footer-logo-image {
    width: 48px;
    height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-radius: 13px;
    background: #fff;
}

.v2-footer-logo-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.v2-footer-description {
    margin: 22px 0 18px;
    max-width: 430px;
    color: #557286;
    font-size: 15px;
    line-height: 1.8;
}

.v2-footer-contact {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 7px;
    color: #345c72;
    font-size: 14px;
}

.v2-footer-contact a {
    color: #0787aa;
    text-decoration: none;
    font-weight: 700;
}

.v2-footer-column h3 {
    margin: 3px 0 19px;
    color: #073957;
    font-size: 15px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.v2-footer-column nav {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
}

.v2-footer-column nav a {
    color: #527083;
    font-size: 14px;
    line-height: 1.5;
    text-decoration: none;
    transition: color .2s ease, transform .2s ease;
}

.v2-footer-column nav a:hover {
    color: #079fc4;
    transform: translateX(3px);
}

.v2-footer-connect-title {
    margin-top: 30px !important;
}

.v2-footer-socials {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.v2-footer-socials a {
    padding: 7px 10px;
    border: 1px solid rgba(10, 147, 181, .18);
    border-radius: 9px;
    background: rgba(255,255,255,.52);
    color: #087f9e;
    font-size: 12px;
    font-weight: 800;
    text-decoration: none;
}

.v2-footer-bottom {
    min-height: 70px;
    padding: 20px 48px;
    border-top: 1px solid rgba(20, 91, 118, .10);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    color: #648092;
    font-size: 13px;
}

.v2-footer-germany {
    color: #0b8eaf;
    font-weight: 800;
}

.v2-rtl .v2-footer-main,
.v2-rtl .v2-footer-bottom {
    direction: rtl;
}

.v2-rtl .v2-footer-contact,
.v2-rtl .v2-footer-column nav {
    align-items: flex-start;
}

.v2-rtl .v2-footer-column nav a:hover {
    transform: translateX(-3px);
}

@media (max-width: 1100px) {
    .v2-footer-main {
        grid-template-columns: 1.5fr 1fr 1fr;
    }

    .v2-footer-brand {
        grid-column: 1 / -1;
        max-width: 700px;
    }
}

@media (max-width: 760px) {
    .v2-footer {
        padding-bottom: 18px;
    }

    .v2-footer > .v2-container {
        border-radius: 20px;
    }

    .v2-footer-main {
        grid-template-columns: 1fr 1fr;
        gap: 36px 24px;
        padding: 38px 24px 32px;
    }

    .v2-footer-brand {
        grid-column: 1 / -1;
    }

    .v2-footer-bottom {
        padding: 20px 24px;
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 520px) {
    .v2-footer-main {
        grid-template-columns: 1fr;
    }

    .v2-footer-brand {
        grid-column: auto;
    }
}

/* ===== END FOOTER FINAL ===== */




























/* =========================================================
   QRVS HERO ADMIN BACKGROUND - ZINDEX FIX
   ========================================================= */

/*
 * IMPORTANT:
 * Do NOT change Hero layout.
 * Do NOT change Hero grid.
 * Do NOT change Hero globe.
 * Do NOT change Hero dimensions.
 *
 * Only place uploaded image inside the existing stacking
 * context and below the real Hero content.
 */

.v2-hero-background-layer {
    position: absolute !important;
    inset: 0 !important;

    width: 100% !important;
    height: 100% !important;

    z-index: 0 !important;

    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;

    opacity: 1 !important;

    pointer-events: none !important;
}


/*
 * Original decorative layers remain above the uploaded image.
 */
.v2-hero-grid,
.v2-hero-glow,
.v2-hero-orbit {
    pointer-events: none !important;
}


/*
 * Existing Hero content must always remain above background.
 */
.v2-hero-inner {
    position: relative !important;
    z-index: 10 !important;
}

/* ===== END QRVS HERO ADMIN BACKGROUND ZINDEX FIX ===== */



/* =========================================================
   QRVS HERO IMAGE - TOP LAYER TEST
   TEMPORARY TEST ONLY
   ========================================================= */

.v2-hero {
    position: relative !important;
    isolation: isolate !important;
}

.v2-hero-background-layer {
    display: block !important;
    visibility: visible !important;

    position: absolute !important;
    inset: 0 !important;

    width: 100% !important;
    height: 100% !important;

    z-index: 9999 !important;

    opacity: 1 !important;

    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;

    pointer-events: none !important;
}

/* ===== END TOP LAYER TEST ===== */


/* =========================================================
   QRVS HERO BACKGROUND - RELATIVE URL TEST
   ========================================================= */

.v2-hero {
    position: relative !important;
    isolation: isolate !important;
    overflow: hidden !important;
}

/*
 * For this test the uploaded image is deliberately ABOVE
 * everything and fully visible.
 *
 * Once we SEE it, we will move it underneath the content
 * and reduce opacity.
 */
.v2-hero-background-layer {
    display: block !important;
    visibility: visible !important;

    position: absolute !important;
    inset: 0 !important;

    width: 100% !important;
    height: 100% !important;

    z-index: 9999 !important;

    opacity: 1 !important;

    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;

    pointer-events: none !important;
}

/* ===== END QRVS HERO BACKGROUND RELATIVE URL TEST ===== */


/* =========================================================
   QRVS HERO BACKGROUND - UNDER CONTENT FINAL
   ========================================================= */

/*
 * Do not modify Hero dimensions or layout.
 */
.v2-hero {
    position: relative !important;
    isolation: isolate !important;
    overflow: hidden !important;
}


/*
 * LAYER 1
 * Uploaded administrator image.
 */
.v2-hero-background-layer {
    display: block !important;
    visibility: visible !important;

    position: absolute !important;
    inset: 0 !important;

    width: 100% !important;
    height: 100% !important;

    z-index: 1 !important;

    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;

    opacity: 0.20 !important;

    pointer-events: none !important;
}


/*
 * LAYER 2
 * Existing decorative effects.
 */
.v2-hero-grid,
.v2-hero-glow,
.v2-hero-orbit {
    position: absolute;
    z-index: 2 !important;
    pointer-events: none !important;
}


/*
 * LAYER 10
 * Entire original Hero content.
 */
.v2-hero-inner {
    position: relative !important;
    z-index: 10 !important;
}


/*
 * Additional protection for text and visual/globe.
 */
.v2-hero-content,
.v2-hero-visual {
    position: relative !important;
    z-index: 11 !important;
}


/* ===== END QRVS HERO BACKGROUND UNDER CONTENT FINAL ===== */


/* =========================================================
   QRVS HERO - COMPANY CONTACT INFORMATION
   ========================================================= */

.v2-hero-company-info {
    margin-top: 22px;
    margin-bottom: 22px;
    max-width: 720px;
}

.v2-hero-company-name {
    margin-bottom: 9px;

    font-size: 15px;
    line-height: 1.3;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;

    color: #12395b;
}

.v2-hero-contact-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 8px 18px;
}

.v2-hero-contact-item {
    display: inline-flex;
    align-items: center;
    gap: 7px;

    color: #36536d;
    text-decoration: none;

    font-size: 13px;
    line-height: 1.4;
    font-weight: 600;

    transition:
        color .2s ease,
        transform .2s ease;
}

a.v2-hero-contact-item:hover {
    color: #0798cf;
    transform: translateY(-1px);
}

.v2-hero-contact-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-width: 17px;

    color: #0798cf;
    font-size: 15px;
    font-weight: 700;
}

.v2-hero-contact-person {
    margin-top: 8px;

    color: #6b8092;

    font-size: 12px;
    line-height: 1.4;
    font-weight: 600;
}


/* Mobile */
@media (max-width: 760px) {

    .v2-hero-company-info {
        margin-top: 18px;
        margin-bottom: 18px;
    }

    .v2-hero-contact-row {
        align-items: flex-start;
        flex-direction: column;

        gap: 7px;
    }

}


/* ===== END QRVS HERO COMPANY CONTACT INFORMATION ===== */


/* =========================================================
   QRVS FOOTER - CONTACT PERSON
   ========================================================= */

.v2-footer-contact-person {
    opacity: 0.82;
    font-size: 0.92em;
}

/* ===== END QRVS FOOTER CONTACT PERSON ===== */


/* =========================================================
   QRVS CRISP CHAT HINT
   ========================================================= */

.qrvs-chat-hint {
    position: fixed;

    right: 86px;
    bottom: 27px;

    z-index: 2147482999;

    display: flex;
    align-items: center;
    gap: 8px;

    min-height: 44px;
    padding: 0 15px;

    border: 1px solid rgba(21, 159, 197, .20);
    border-radius: 14px;

    background: rgba(255, 255, 255, .96);

    color: #075274;

    font-family: inherit;
    font-size: 13px;
    font-weight: 800;

    box-shadow:
        0 8px 28px rgba(5, 50, 73, .13),
        0 2px 7px rgba(5, 50, 73, .06);

    cursor: pointer;

    opacity: 0;
    visibility: hidden;

    transform: translateX(8px);

    transition:
        opacity .25s ease,
        transform .25s ease,
        visibility .25s ease,
        box-shadow .2s ease;
}

.qrvs-chat-hint.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
}

.qrvs-chat-hint:hover {
    transform: translateY(-2px);

    box-shadow:
        0 12px 32px rgba(5, 50, 73, .17),
        0 3px 9px rgba(5, 50, 73, .08);
}

.qrvs-chat-hint-icon {
    font-size: 15px;
    line-height: 1;
}

.qrvs-chat-hint-dot {
    width: 8px;
    height: 8px;

    flex: 0 0 8px;

    border-radius: 50%;

    background: #25b36a;

    box-shadow:
        0 0 0 4px rgba(37, 179, 106, .10);
}

.qrvs-chat-hint-text {
    white-space: nowrap;
}


/* Arabic */

html[dir="rtl"] .qrvs-chat-hint {
    right: 86px;
}


/* Mobile */

@media (max-width: 640px) {

    .qrvs-chat-hint {
        right: 78px;
        bottom: 24px;

        min-height: 40px;

        padding: 0 11px;

        font-size: 11.5px;
    }

    .qrvs-chat-hint-icon {
        display: none;
    }

}


/* =========================================================
   QRVS V2 - MOBILE HAMBURGER VISIBILITY FIX
   2026-08-14
   ========================================================= */

@media (max-width: 980px) {

    .v2-menu-button {
        display: flex !important;
        flex-direction: column;
        align-items: center;
        justify-content: center;

        border: 1px solid rgba(8, 72, 105, .18) !important;
        background: rgba(8, 110, 150, .06) !important;

        box-shadow: 0 4px 12px rgba(8, 72, 105, .06);
    }

    .v2-menu-button span {
        display: block !important;

        width: 22px !important;
        height: 2px !important;

        margin: 2.5px 0 !important;

        border-radius: 10px;

        background: #083b5c !important;

        opacity: 1 !important;
        visibility: visible !important;
    }

    .v2-menu-button:hover,
    .v2-menu-button:focus-visible {
        background: rgba(0, 160, 205, .10) !important;
        border-color: rgba(0, 140, 185, .30) !important;
    }

}

/* =========================================================
   END MOBILE HAMBURGER VISIBILITY FIX
   ========================================================= */


/* =========================================================
   QRVS - MOBILE CRISP CHAT ACCESS
   Desktop unchanged
   ========================================================= */

@media (max-width: 640px) {

    .qrvs-chat-hint {
        right: 18px !important;
        bottom: 22px !important;

        min-height: 48px !important;
        padding: 0 16px !important;

        gap: 9px !important;

        border-radius: 16px !important;

        font-size: 13px !important;
        font-weight: 800 !important;

        z-index: 2147483646 !important;

        box-shadow:
            0 10px 30px rgba(5, 50, 73, .18),
            0 2px 8px rgba(5, 50, 73, .08) !important;
    }

    .qrvs-chat-hint-icon {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;

        width: 25px;
        height: 25px;

        flex: 0 0 25px;

        border-radius: 50%;

        background: #159fc5;
        color: #fff;

        font-size: 14px !important;
        line-height: 1;
    }

    .qrvs-chat-hint-dot {
        width: 9px !important;
        height: 9px !important;
        flex: 0 0 9px !important;
    }

    .qrvs-chat-hint-text {
        display: inline-block !important;
        white-space: nowrap;
    }

}

/* ===== END MOBILE CRISP CHAT ACCESS ===== */


/* =========================================================
   QRVS CRISP - MOBILE SAME AS DESKTOP
   ========================================================= */

@media (max-width: 640px) {

    /* Chat label - same relationship to Crisp logo as desktop */
    .qrvs-chat-hint {
        right: 78px !important;
        bottom: 24px !important;

        min-height: 44px !important;
        padding: 0 15px !important;

        display: flex !important;
        align-items: center !important;
        gap: 8px !important;

        border-radius: 14px !important;

        font-size: 13px !important;
        font-weight: 800 !important;

        z-index: 2147482999 !important;
    }

    /* Remove the extra blue chat icon we added */
    .qrvs-chat-hint-icon {
        display: none !important;
    }

    .qrvs-chat-hint-dot {
        display: block !important;

        width: 8px !important;
        height: 8px !important;

        flex: 0 0 8px !important;

        border-radius: 50% !important;

        background: #25b36a !important;

        box-shadow:
            0 0 0 4px rgba(37, 179, 106, .10) !important;
    }

    .qrvs-chat-hint-text {
        display: inline-block !important;
        white-space: nowrap !important;
    }

    /* Make sure Crisp launcher itself stays visible on mobile */
    .crisp-client .cc-tlyw,
    .crisp-client .cc-kxkl,
    .crisp-client [data-id="chat_opened"],
    .crisp-client [data-id="chat_closed"] {
        visibility: visible !important;
        opacity: 1 !important;
    }

}

/* =========================================================
   END QRVS CRISP - MOBILE SAME AS DESKTOP
   ========================================================= */

