        :root {
            --peach: #fedbe2;
            --sage: #8ebaa0;
            --gold: #a87b3f;
            --lavender: #d0cfee;
            --taupe: #493a3e;
            --whitePink: #fff0f4;
            --burntOrange: #e0624c;
            --candle-h-desktop: 150px;
            --candle-h-tablet: 110px;
            --candle-h-mobile: 70px;
            --candle-w-desktop: 10px;
            --candle-w-tablet: 8px;
            --candle-w-mobile: 5px;
        }
        * {
            user-select: none;
            -webkit-user-select: none;
            -moz-user-select: none;
            -ms-user-select: none;
            -webkit-touch-callout: none;
        }
        html[lang="ar"] *, 
        [data-lang="ar"],
        .font-arabic {
            letter-spacing: normal !important;
        }
        html, body {
            touch-action: manipulation; 
        }
        input, textarea {
            user-select: auto !important;
            -webkit-user-select: auto !important;
            -moz-user-select: auto !important;
            -ms-user-select: auto !important;
        }
        html, body {
            scroll-behavior: smooth;
            scrollbar-width: none;
            overflow-x: hidden;
        }
        ::-webkit-scrollbar { display: none; }
        body {
            background-color: var(--peach);
            color: var(--taupe);
            font-family: 'Cairo', 'Plus Jakarta Sans', sans-serif;
            cursor: none;
        }
        @media (max-width: 768px) {
            body { cursor: auto; }
        }
        
        .custom-scrollbar::-webkit-scrollbar {
            width: 4px;
            display: block; 
        }
        .custom-scrollbar::-webkit-scrollbar-track {
            background: transparent;
        }
        .custom-scrollbar::-webkit-scrollbar-thumb {
            background: rgba(168, 123, 63, 0.3);
            border-radius: 10px;
        }
        .custom-scrollbar::-webkit-scrollbar-thumb:hover {
            background: rgba(168, 123, 63, 0.6);
        }
        .text-soft-shadow {
            text-shadow: 0 0 12px rgba(255, 255, 255, 0.9), 0 1px 2px rgba(255, 255, 255, 1);
        }
        .bg-grain {
            position: fixed;
            top: 0; left: 0;
            width: 100vw; height: 100vh;
            background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.03'/%3E%3C/svg%3E");
            pointer-events: none;
            z-index: 9998;
        }
        .custom-cursor {
            width: 36px; height: 36px;
            border: 1.5px solid var(--gold);
            border-radius: 50%;
            position: fixed;
            top: 0; left: 0;
            transform: translate(-50%, -50%);
            pointer-events: none;
            z-index: 99999;
            mix-blend-mode: difference;
            transition: width 0.4s cubic-bezier(0.16,1,0.3,1),
                        height 0.4s cubic-bezier(0.16,1,0.3,1),
                        background-color 0.3s ease,
                        border-color 0.3s ease;
            will-change: transform;
        }
        .custom-cursor-dot {
            width: 5px; height: 5px;
            background-color: var(--gold);
            border-radius: 50%;
            position: fixed;
            top: 0; left: 0;
            transform: translate(-50%, -50%);
            pointer-events: none;
            z-index: 99999;
            will-change: transform;
        }
        .custom-cursor-text {
            position: fixed;
            top: 0; left: 0;
            transform: translate(-50%, -50%);
            pointer-events: none;
            z-index: 99999;
            font-family: 'Plus Jakarta Sans', sans-serif;
            font-size: 8px;
            letter-spacing: 0.15em;
            text-transform: uppercase;
            color: var(--gold);
            opacity: 0;
            transition: opacity 0.3s ease;
            white-space: nowrap;
        }
        @media (max-width: 768px) {
            .custom-cursor, .custom-cursor-dot, .custom-cursor-text { display: none !important; }
        }
        .frosted-glass {
            backdrop-filter: blur(24px) saturate(180%);
            -webkit-backdrop-filter: blur(24px) saturate(180%);
            background: linear-gradient(135deg, rgba(255, 240, 244, 0.5) 0%, rgba(255, 240, 244, 0.15) 100%);
            box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.3), 0 10px 40px rgba(168,123,63,0.08);
        }
        [data-lang="en"] { display: none; }
        html[lang="en"] [data-lang="ar"] { display: none; }
        html[lang="en"] [data-lang="en"] { display: block; }
        html[lang="en"] [data-lang-inline="en"] { display: inline; }
        html[lang="en"] [data-lang-inline="ar"] { display: none; }
        .candle-scroll-wrapper {
            position: fixed;
            top: 50%; transform: translateY(-50%);
            z-index: 9999;
            display: flex;
            flex-direction: column;
            align-items: center;
            pointer-events: none;
            transition: opacity 0.6s cubic-bezier(0.16,1,0.3,1);
        }
        html[dir="rtl"] .candle-scroll-wrapper { left: 20px; }
        html[dir="ltr"] .candle-scroll-wrapper { right: 20px; }
        .candle-container {
            position: relative;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: flex-end;
            pointer-events: auto;
            cursor: pointer;
        }
        .candle-body {
            width: var(--candle-w-desktop);
            background: 
                url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.2'/%3E%3C/svg%3E"),
                linear-gradient(to bottom, rgba(255, 220, 140, 0.55) 0%, transparent 18%),
                linear-gradient(to right, #cfbfbe 0%, #fffefe 35%, #e8dad9 75%, #bda9a8 100%);
            border-radius: 4px 4px 14px 14px;
            box-shadow: 
                inset 0 4px 8px rgba(255,180,80,0.5), 
                inset -3px 0 10px rgba(80,60,65,0.2), 
                inset 3px 0 10px rgba(255,255,255,0.8),
                0 6px 20px rgba(212,175,55,0.25);
            transition: height 0.15s linear;
            position: relative;
        }
        .candle-body::before {
            content: '';
            position: absolute;
            top: 0; left: 0; right: 0;
            height: 6px;
            background: 
                url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.15'/%3E%3C/svg%3E"),
                radial-gradient(ellipse at center, rgba(255,245,210,0.95) 0%, rgba(212,160,60,0.5) 70%, transparent 100%);
            border-radius: 50%;
            box-shadow: inset 0 1px 2px rgba(255,255,255,0.9), 0 1px 3px rgba(0,0,0,0.15);
            z-index: 2;
        }
        .candle-body::after {
            content: '';
            position: absolute;
            top: 3px; left: 32%;
            width: 4px; height: 16px;
            background: 
                url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.15'/%3E%3C/svg%3E"),
                linear-gradient(to bottom, rgba(255,253,253,0.95) 0%, rgba(230,210,210,0.8) 100%);
            border-radius: 2px 2px 5px 5px;
            box-shadow: 0 2px 4px rgba(0,0,0,0.1), 5px -8px 0 -0.5px rgba(255,251,251,0.85);
            animation: meltDrip 5s infinite cubic-bezier(0.4, 0, 0.2, 1);
            transition: opacity 0.8s ease-out;
            z-index: 3;
        }
        .candle-flame {
            width: 15px; height: 30px;
            background: radial-gradient(ellipse at bottom, rgba(255,255,255,0) 10%, rgba(255,215,80,0.95) 30%, rgba(240,100,50,0.8) 65%, transparent 85%);
            border-radius: 50% 50% 35% 35% / 60% 60% 40% 40%;
            animation: flameFlicker 3s infinite ease-in-out alternate;
            transform-origin: bottom center;
            box-shadow: 
                0 -2px 15px rgba(255, 120, 30, 0.7),
                0 0 30px rgba(255, 180, 50, 0.8),
                0 0 60px rgba(255, 100, 0, 0.4);
            margin-bottom: -1px;
            z-index: 4;
            position: relative;
            transition: opacity 0.8s cubic-bezier(0.16,1,0.3,1), transform 0.8s cubic-bezier(0.16,1,0.3,1);
        }
        .candle-flame::before {
            content: '';
            position: absolute;
            bottom: -1px; left: 15%; right: 15%;
            height: 25%;
            background: radial-gradient(ellipse at bottom, rgba(20, 120, 255, 0.9) 0%, transparent 80%);
            border-radius: 50%;
            mix-blend-mode: screen;
        }
        .candle-flame::after {
            content: '';
            position: absolute;
            bottom: 12%; left: 30%; right: 30%;
            height: 35%;
            background: #ffffff;
            border-radius: 50% 50% 40% 40%;
            filter: blur(1.5px);
            box-shadow: 0 0 5px #fff;
        }
        .candle-wick {
            width: 2px; height: 8px;
            background: linear-gradient(to bottom, #ff4500 0%, #1a1a1a 30%, #3d2f32 100%);
            border-radius: 1px;
            z-index: 1;
            margin-bottom: -3px;
            transform: rotate(-3deg);
            transform-origin: bottom;
            box-shadow: 0 -1px 3px rgba(255,69,0,0.8);
        }

        @media (max-width: 1024px) {
            .candle-body { width: var(--candle-w-tablet); }
            .candle-flame { width: 10px; height: 18px; }
            .candle-wick { width: 1.5px; height: 4px; }

            .candle-body::before { width: 3px; height: 8px; }
            .candle-scroll-label { font-size: 6px !important; }
        }
        @media (max-width: 640px) {
            html[dir="rtl"] .candle-scroll-wrapper { left: 10px; }
            html[dir="ltr"] .candle-scroll-wrapper { right: 10px; }
            .candle-body { width: var(--candle-w-mobile); }
            .candle-flame { width: 7px; height: 13px; filter: drop-shadow(0 0 4px rgba(224,98,76,0.6)); }
            .candle-wick { width: 1px; height: 3px; }

            .candle-body::before { width: 2px; height: 6px; }
            .candle-scroll-label { display: none !important; }
        }
        .smoke-puff {
            position: absolute; top: -20px;
            stroke: rgba(255, 240, 244, 0.7); fill: none;
            opacity: 0; pointer-events: none;
        }
        .smoke-puff-1 { width: 14px; height: 28px; stroke-dasharray: 50; stroke-dashoffset: 50; }
        .smoke-puff-2 { width: 10px; height: 22px; stroke-dasharray: 40; stroke-dashoffset: 40; left: -3px; }
        .smoke-puff-3 { width: 12px; height: 25px; stroke-dasharray: 45; stroke-dashoffset: 45; left: 5px; }
        .candle-out .candle-flame { opacity: 0; transform: scale(0); }
        .candle-out .candle-body::after { display: none !important; }
        .candle-out .smoke-puff-1 { animation: smokeRise1 2.2s forwards cubic-bezier(0.25,1,0.5,1); }
        .candle-out .smoke-puff-2 { animation: smokeRise2 2.5s 0.15s forwards cubic-bezier(0.25,1,0.5,1); }
        .candle-out .smoke-puff-3 { animation: smokeRise3 2.0s 0.3s forwards cubic-bezier(0.25,1,0.5,1); }
        @keyframes flameFlicker {
            0%   { transform: scale(1) rotate(-1deg); box-shadow: 0 -2px 15px rgba(255,120,30,0.7), 0 0 30px rgba(255,180,50,0.8), 0 0 60px rgba(255,100,0,0.4); }
            20%  { transform: scale(0.96, 1.05) rotate(1.5deg); box-shadow: 0 -3px 20px rgba(255,130,40,0.8), 0 0 40px rgba(255,190,60,0.9), 0 0 70px rgba(255,110,10,0.5); }
            40%  { transform: scale(1.03, 0.97) rotate(-1.5deg); box-shadow: 0 -1px 12px rgba(255,110,20,0.6), 0 0 25px rgba(255,170,40,0.7), 0 0 50px rgba(255,90,0,0.3); }
            60%  { transform: scale(0.98, 1.03) rotate(2.5deg); box-shadow: 0 -2px 18px rgba(255,125,35,0.75), 0 0 35px rgba(255,185,55,0.85), 0 0 65px rgba(255,105,5,0.45); }
            80%  { transform: scale(1.04, 0.96) rotate(-2deg); box-shadow: 0 -2px 14px rgba(255,115,25,0.65), 0 0 28px rgba(255,175,45,0.75), 0 0 55px rgba(255,95,0,0.35); }
            100% { transform: scale(1) rotate(0deg); box-shadow: 0 -2px 15px rgba(255,120,30,0.7), 0 0 30px rgba(255,180,50,0.8), 0 0 60px rgba(255,100,0,0.4); }
        }
        @keyframes meltDrip {
            0%   { height: 3px; opacity: 0.9; transform: translateY(0); }
            40%  { height: 16px; opacity: 1; }
            100% { height: 3px; opacity: 0; transform: translateY(22px); }
        }
        @keyframes smokeRise1 {
            0%   { stroke-dashoffset: 50; opacity: 0.6; transform: translateY(0) scaleX(0.8); }
            40%  { opacity: 0.35; }
            100% { stroke-dashoffset: 0; opacity: 0; transform: translateY(-30px) scaleX(1.5); }
        }
        @keyframes smokeRise2 {
            0%   { stroke-dashoffset: 40; opacity: 0.5; transform: translateY(0) scaleX(0.9) rotate(-5deg); }
            100% { stroke-dashoffset: 0; opacity: 0; transform: translateY(-28px) scaleX(1.3) rotate(5deg); }
        }
        @keyframes smokeRise3 {
            0%   { stroke-dashoffset: 45; opacity: 0.45; transform: translateY(0) scaleX(0.7) rotate(3deg); }
            100% { stroke-dashoffset: 0; opacity: 0; transform: translateY(-35px) scaleX(1.6) rotate(-3deg); }
        }
        #preloader {
            background: var(--taupe);
        }
        .preloader-particle {
            position: absolute;
            width: 3px; height: 3px;
            background: var(--gold);
            border-radius: 50%;
            opacity: 0;
            pointer-events: none;
        }
        .keyhole-outer {
            width: 48px; height: 72px;
            position: relative;
            display: flex;
            flex-direction: column;
            align-items: center;
        }
        .keyhole-circle {
            width: 42px; height: 42px;
            border-radius: 50%;
            border: 1.5px solid rgba(168,123,63,0.5);
            background: rgba(73,58,62,0.9);
            display: flex;
            align-items: center;
            justify-content: center;
            box-shadow: inset 0 2px 8px rgba(0,0,0,0.3), 0 0 20px rgba(168,123,63,0.15);
        }
        .keyhole-inner {
            width: 16px; height: 16px;
            border-radius: 50%;
            background: radial-gradient(circle, #fedbe2 0%, #d0cfee 100%);
            box-shadow: 0 0 12px rgba(254,219,226,0.4);
        }
        .keyhole-slot {
            width: 20px; height: 38px;
            background: rgba(73,58,62,0.9);
            border-left: 1.5px solid rgba(168,123,63,0.5);
            border-right: 1.5px solid rgba(168,123,63,0.5);
            border-bottom: 1.5px solid rgba(168,123,63,0.5);
            margin-top: -6px;
            border-radius: 0 0 6px 6px;
            box-shadow: inset 0 4px 6px rgba(0,0,0,0.2);
        }
        .preloader-key-svg {
            filter: drop-shadow(0 4px 12px rgba(168,123,63,0.4));
        }
        #nav-interactive-container {
            width: auto;
            min-width: 140px;
            max-width: 640px;
            height: 52px;
            border-radius: 26px;
            transition: background-color 0.6s ease;
            transform-origin: top center;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        #nav-interactive-container.expanded {
            backdrop-filter: blur(24px) saturate(180%);
            -webkit-backdrop-filter: blur(24px) saturate(180%);
            background: linear-gradient(135deg, rgba(254, 219, 226, 0.95) 0%, rgba(254, 219, 226, 0.85) 100%); 
            box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.5), 0 10px 40px rgba(168,123,63,0.15);
        }
        .nav-link-group {
            opacity: 0;
            pointer-events: none;
            position: absolute;
            display: flex;
            align-items: center;
            justify-content: space-evenly;
            width: calc(50% - 44px);
            gap: 0;
        }
        @media (min-width: 768px) {
            .nav-link-group { gap: 1.5rem; justify-content: flex-start; width: auto; }
        }
        .nav-link-group.is-visible {
            opacity: 1;
            pointer-events: auto;
        }
        .nav-link-item {
            font-size: 11px;
            letter-spacing: 0.02em;
            color: var(--taupe);
            transition: color 0.3s ease;
            white-space: nowrap;
        }
        @media (min-width: 768px) {
            .nav-link-item { font-size: 11px; letter-spacing: 0.1em; }
        }
        .nav-link-item:hover {
            color: var(--burnt-orange);
        }
        .nav-link-group.left-group { left: 0; }
        .nav-link-group.right-group { right: 0; }
        html[dir="rtl"] .nav-link-group.left-group { left: auto; right: 0; }
        html[dir="rtl"] .nav-link-group.right-group { right: auto; left: 0; }
        @media (min-width: 768px) {
            .nav-link-group.left-group { left: 85px; width: auto; justify-content: flex-start; }
            .nav-link-group.right-group { right: 85px; width: auto; justify-content: flex-start; }
            html[dir="rtl"] .nav-link-group.left-group { left: auto; right: 85px; }
            html[dir="rtl"] .nav-link-group.right-group { right: auto; left: 85px; }
        }
        .ripple-container {
            position: relative;
            overflow: hidden;
        }
        .ripple-effect {
            position: absolute;
            border-radius: 50%;
            background: rgba(168,123,63,0.2);
            transform: scale(0);
            animation: rippleAnim 0.6s ease-out forwards;
            pointer-events: none;
        }
        @keyframes rippleAnim {
            to { transform: scale(4); opacity: 0; }
        }
        .tilt-card {
            transform-style: preserve-3d;
            perspective: 1000px;
            will-change: transform;
        }
        .tilt-card .tilt-shine {
            position: absolute;
            inset: 0;
            border-radius: inherit;
            background: radial-gradient(circle at 50% 50%, rgba(168,123,63,0.3) 0%, transparent 60%);
            pointer-events: none;
            opacity: 0;
            transition: opacity 0.3s ease;
            z-index: 5;
        }
        .tilt-card:hover .tilt-shine { opacity: 1; }
        .success-state {
            display: none;
        }
        .success-state.is-active {
            display: flex;
        }
        .success-checkmark {
            width: 80px; height: 80px;
        }
        .success-checkmark .checkmark-circle {
            fill: none;
            stroke: var(--gold);
            stroke-width: 2;
            stroke-dasharray: 252;
            stroke-dashoffset: 252;
            stroke-linecap: round;
        }
        .success-checkmark .checkmark-check {
            fill: none;
            stroke: var(--sage);
            stroke-width: 3;
            stroke-dasharray: 50;
            stroke-dashoffset: 50;
            stroke-linecap: round;
            stroke-linejoin: round;
        }
        .reveal-up {
            opacity: 0;
            transform: translateY(60px);
        }
        .reveal-up.is-revealed {
            opacity: 1;
            transform: translateY(0);
            transition: opacity 0.9s cubic-bezier(0.16,1,0.3,1), transform 0.9s cubic-bezier(0.16,1,0.3,1);
        }
        .magnetic-btn {
            transition: transform 0.3s cubic-bezier(0.25,0.46,0.45,0.94);
        }
        @media (max-width: 640px) {
            .hero-title-en {
                font-size: 2rem !important;
                letter-spacing: 0.12em !important;
            }
            .hero-subtitle-ar {
                font-size: 1rem !important;
            }
            .section-title {
                font-size: 1.5rem !important;
            }
            .section-padding {
                padding-top: 4rem !important;
                padding-bottom: 4rem !important;
                padding-left: 1rem !important;
                padding-right: 1rem !important;
            }
        }
        @media (min-width: 641px) and (max-width: 1024px) {
            .hero-title-en {
                font-size: 3.5rem !important;
                letter-spacing: 0.18em !important;
            }
            .section-padding {
                padding-top: 5rem !important;
                padding-bottom: 5rem !important;
            }
        }
        #door-left::after {
            content: '';
            position: absolute;
            top: 0; right: 0;
            width: 1px; height: 100%;
            background: linear-gradient(to bottom, transparent, rgba(168,123,63,0.3), transparent);
        }
        #door-right::before {
            content: '';
            position: absolute;
            top: 0; left: 0;
            width: 1px; height: 100%;
            background: linear-gradient(to bottom, transparent, rgba(168,123,63,0.3), transparent);
        }
        input[type="range"] {
            -webkit-appearance: none;
            background: linear-gradient(to right, rgba(168,123,63,0.15), rgba(168,123,63,0.3));
            height: 3px;
            border-radius: 4px;
            outline: none;
        }
        input[type="range"]::-webkit-slider-thumb {
            -webkit-appearance: none;
            width: 18px; height: 18px;
            border-radius: 50%;
            background: linear-gradient(135deg, var(--gold), #c4964e);
            cursor: pointer;
            box-shadow: 0 2px 8px rgba(168,123,63,0.4);
            transition: transform 0.2s ease;
        }
        input[type="range"]::-webkit-slider-thumb:hover {
            transform: scale(1.2);
        }
        .parallax-slow { will-change: transform; }
        .parallax-medium { will-change: transform; }
        .interactive-el {
            transition: transform 0.3s cubic-bezier(0.25,0.46,0.45,0.94),
                        box-shadow 0.3s ease,
                        border-color 0.3s ease;
        }
        @media (hover: none) {
            .touch-active:active {
                transform: scale(0.96) !important;
                transition: transform 0.1s ease !important;
            }
        }
        @media (hover: hover) {
            #services-grid:hover .service-card:hover,
            #infrastructure-list:hover > div:hover {
                z-index: 50;
                position: relative;
            }
            #services-grid:hover .service-card:not(:hover) {
                opacity: 0.35;
                filter: blur(5px);
                transform: scale(0.98);
                z-index: 10;
                position: relative;
            }
            #infrastructure-list:hover > div:not(:hover) {
                opacity: 0.35;
                filter: blur(5px);
                z-index: 10;
                position: relative;
            }
            .service-card, #infrastructure-list > div {
                transition: background-color 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
            }
            .service-card.gsap-loaded, #infrastructure-list > div.gsap-loaded {
                transition: opacity 0.5s ease, filter 0.5s ease, transform 0.5s ease, background-color 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
            }
        }
        @media (max-width: 639px) {
            #services-grid {
                display: flex;
                overflow-x: auto;
                scroll-snap-type: x mandatory;
                scrollbar-width: none;
                -ms-overflow-style: none;
                padding-bottom: 24px;
                margin-left: -16px;
                margin-right: -16px;
                padding-left: 16px;
                padding-right: 16px;
                gap: 16px;
            }
            #services-grid::-webkit-scrollbar {
                display: none;
            }
            #services-grid .service-card {
                flex: 0 0 85vw;
                scroll-snap-align: center;
                min-height: 240px !important;
            }
            #infrastructure-list > div {
                display: flex !important;
                flex-wrap: wrap;
                align-items: center;
                gap: 8px;
            }
            #infrastructure-list > div > div:nth-child(1) {
                flex: 0 0 auto;
                margin-top: 0 !important;
            }
            #infrastructure-list > div > div:nth-child(2),
            #infrastructure-list > div > div:nth-child(3) {
                flex: 1 1 auto;
                margin-top: 0 !important;
            }
            #infrastructure-list > div > div:nth-child(4),
            #infrastructure-list > div > div:nth-child(5) {
                flex: 0 0 100%;
                margin-top: 4px !important;
            }
        }
        @keyframes glow-heart {
            0%, 100% { opacity: 0.6; transform: scale(1); filter: drop-shadow(0 0 2px rgba(168,123,63,0.3)); }
            50% { opacity: 1; transform: scale(1.15); filter: drop-shadow(0 0 8px rgba(168,123,63,0.9)); }
        }
        .animate-glow-heart {
            animation: glow-heart 2s ease-in-out infinite;
        }
        @keyframes float-cloud {
            0%, 100% { transform: translateY(0); }
            50% { transform: translateY(-12px); }
        }
        .animate-float-cloud {
            animation: float-cloud 5s ease-in-out infinite;
        }
        @keyframes arrow-glow-move-rtl {
            0%, 100% {
                transform: translateX(0);
                filter: drop-shadow(0 0 2px rgba(212, 175, 55, 0.4));
            }
            50% {
                transform: translateX(-6px);
                filter: drop-shadow(0 0 10px rgba(212, 175, 55, 1));
            }
        }
        @keyframes arrow-glow-move-ltr {
            0%, 100% {
                transform: translateX(0);
                filter: drop-shadow(0 0 2px rgba(212, 175, 55, 0.4));
            }
            50% {
                transform: translateX(6px);
                filter: drop-shadow(0 0 10px rgba(212, 175, 55, 1));
            }
        }
        .animate-arrow-rtl {
            animation: arrow-glow-move-rtl 2s ease-in-out infinite;
        }
        .animate-arrow-ltr {
            animation: arrow-glow-move-ltr 2s ease-in-out infinite;
        }
