/* ==========================================================================
   REVAMP CONSULTANCY STANDALONE CSS FILE
   Supports: Premium Typography, Keyframe Animations, Modal transitions
   ========================================================================== */

:root {
    --color-navy: #002B7A;
    --color-red: #E11D24;
    --color-yellow: #fcb415;
    --color-navy-dark: #0b1c3d;
    --font-primary: 'Inter', sans-serif;
    --font-display: 'Inter', sans-serif;
    --font-mono: 'JetBrains Mono', monospace;
}

/* Custom scroll smooth behaviors */
html {
    scroll-behavior: smooth;
}

/* High fidelity Custom Zooming for hero background */
.hero-bg-zoom {
    animation: gentleZoom 30s infinite alternate ease-in-out;
}

@keyframes gentleZoom {
    0% {
        transform: scale(1);
    }

    100% {
        transform: scale(1.08);
    }
}

/* Dynamic modal window entry scales */
@keyframes modalEntrance {
    0% {
        opacity: 0;
        transform: scale(0.95) translateY(10px);
    }

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

.animate-modal-entrance {
    animation: modalEntrance 0.3s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

/* Modern clean scrollbar stylings */
.custom-scrollbar::-webkit-scrollbar {
    width: 6px;
}

.custom-scrollbar::-webkit-scrollbar-track {
    background: #f1f5f9;
}

.custom-scrollbar::-webkit-scrollbar-thumb {
    background: #cbd5e1;
    border-radius: 4px;
}

.custom-scrollbar::-webkit-scrollbar-thumb:hover {
    background: #94a3b8;
}

/* Precise styling focus attributes */
input:focus,
select:focus,
textarea:focus {
    border-color: var(--color-red) !important;
    box-shadow: 0 0 0 3px rgba(225, 29, 36, 0.15) !important;
}

/* Program bento glow accents */
.program-accent-glow {
    background: linear-gradient(90deg, transparent, rgba(0, 43, 122, 0.3) 50%, transparent);
}

.flag-icon {
    display: inline-block;
    width: 18px;
    height: 12px;
    flex: 0 0 auto;
    border-radius: 2px;
    box-shadow: inset 0 0 0 1px rgba(15, 23, 42, 0.16);
}

.flag-fr {
    background: linear-gradient(90deg, #002395 0 33.33%, #fff 33.33% 66.66%, #ed2939 66.66%);
}

.flag-de {
    background: linear-gradient(180deg, #000 0 33.33%, #dd0000 33.33% 66.66%, #ffce00 66.66%);
}

.flag-nz {
    background: linear-gradient(135deg, #012169 0 62%, #c8102e 62% 70%, #012169 70%);
}

.flag-ie {
    background: linear-gradient(90deg, #169b62 0 33.33%, #fff 33.33% 66.66%, #ff883e 66.66%);
}

.flag-ca {
    background: linear-gradient(90deg, #d80621 0 25%, #fff 25% 75%, #d80621 75%);
}

.flag-au {
    background: linear-gradient(135deg, #012169 0 60%, #fff 60% 64%, #e4002b 64% 68%, #012169 68%);
}

.flag-bd {
    background: radial-gradient(circle at 58% 50%, #f42a41 0 28%, transparent 29%), #006a4e;
}

.flag-np {
    background: linear-gradient(135deg, #dc143c 0 55%, #003893 55%);
}

.flag-ru {
    background: linear-gradient(180deg, #fff 0 33.33%, #0039a6 33.33% 66.66%, #d52b1e 66.66%);
}

.flag-ge {
    background: linear-gradient(90deg, transparent 0 42%, #f00 42% 58%, transparent 58%), linear-gradient(180deg, #fff 0 42%, #f00 42% 58%, #fff 58%);
}

.flag-am {
    background: linear-gradient(180deg, #d90012 0 33.33%, #0033a0 33.33% 66.66%, #f2a800 66.66%);
}

.flag-uz {
    background: linear-gradient(180deg, #1eb5e9 0 30%, #fff 30% 38%, #ce1126 38% 43%, #fff 43% 51%, #009b3a 51%);
}