:root{
      --bg:#061311;
      --bg-deep:#020b0a;
      --bg-2:#0a201c;
      --cream:#f2ead9;
      --muted:#91a59f;
      --teal:#5aa99d;
      --teal-2:#2d746a;
      --gold:#c7a96c;
      --line:rgba(242,234,217,.11);
      --glass:rgba(12,40,35,.60);
      --shadow:0 40px 100px rgba(0,0,0,.38);
    }

    *{box-sizing:border-box;margin:0;padding:0}
    html{scroll-behavior:smooth;background:var(--bg)}
    body{
      min-height:100vh;
      overflow-x:hidden;
      background:var(--bg);
      color:var(--cream);
      font-family:"Tajawal",system-ui,sans-serif;
    }
    a{color:inherit;text-decoration:none}
    button{font:inherit}
    img{display:block;max-width:100%}
    ::selection{background:var(--gold);color:#10201d}

    .page-width{width:min(1380px,88vw);margin-inline:auto}

    /* =========================================================
       GLOBAL CINEMATIC LAYERS
    ========================================================= */
    #three-canvas{
      position:fixed;inset:0;width:100%;height:100%;z-index:-5;
      pointer-events:none;
    }
    .grain{
      position:fixed;inset:0;z-index:999;pointer-events:none;opacity:.018;
      background-image:radial-gradient(circle,rgba(242,234,217,.55) .35px,transparent .55px);
      background-size:5px 5px;
    }
    .cursor-glow{
      position:fixed;width:360px;height:360px;border-radius:50%;z-index:-1;
      transform:translate(-50%,-50%);pointer-events:none;
      background:radial-gradient(circle,rgba(90,169,157,.12),transparent 70%);
    }

    /* =========================================================
       HEADER
    ========================================================= */
    .site-header{
      position:fixed;top:18px;left:50%;z-index:100;
      width:min(1380px,92vw);min-height:76px;
      transform:translateX(-50%) translateY(-24px);
      opacity:0;pointer-events:none;
      display:grid;grid-template-columns:1fr auto 1fr;align-items:center;
      padding:0 16px;border:1px solid rgba(255,255,255,.08);border-radius:24px;
      background:rgba(4,18,16,.82);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
      box-shadow:0 18px 60px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.04);
    }
    .brand{justify-self:end;display:flex;align-items:center;gap:18px;position:relative}
    .brand-orbit{
      position:absolute;right:-7px;width:66px;height:66px;border-radius:50%;
      border:1px solid rgba(199,169,108,.20);animation:brandOrbit 8s linear infinite;
    }
    .brand-orbit::after{
      content:"";position:absolute;top:5px;left:13px;width:5px;height:5px;border-radius:50%;
      background:var(--gold);box-shadow:0 0 14px var(--gold);
    }
    @keyframes brandOrbit{to{transform:rotate(360deg)}}
    .brand-logo{
      width:54px;height:54px;flex:0 0 54px;object-fit:contain;position:relative;z-index:2;
      border-radius:0!important;clip-path:none!important;
      filter:drop-shadow(0 12px 25px rgba(0,0,0,.38));
    }
    .brand-copy{display:flex;flex-direction:column;line-height:1;position:relative;z-index:3;white-space:nowrap;padding-right:2px}
    .brand-copy strong{font-size:20px;font-weight:900}
    .brand-copy small{margin-top:7px;direction:ltr;color:#6e8881;font:600 9px "Space Grotesk";letter-spacing:1.5px}
    .nav{display:flex;align-items:center;gap:31px;color:#c6d2ce;font-size:14px}
    .nav a{position:relative;transition:.25s}
    .nav a::after{content:"";position:absolute;right:0;left:0;bottom:-11px;height:1px;background:var(--gold);transform:scaleX(0);transition:.25s}
    .nav a:hover{color:var(--cream)}
    .nav a:hover::after{transform:scaleX(1)}
    .header-cta{justify-self:start;margin-right:18px;min-height:46px;padding:0 18px;display:flex;align-items:center;gap:10px;border-radius:15px;background:var(--cream);color:#10221f;font-weight:900;font-size:14px}

    /* =========================================================
       INTRO — SCROLL DRIVEN LOGO JOURNEY
    ========================================================= */
    .intro-journey{height:320vh;position:relative;background:var(--bg-deep)}
    .intro-sticky{
      position:sticky;top:0;height:100vh;overflow:hidden;perspective:1800px;
      background:
        radial-gradient(circle at 50% 42%,rgba(77,164,151,.20),transparent 28%),
        radial-gradient(circle at 20% 80%,rgba(199,169,108,.06),transparent 25%),
        linear-gradient(180deg,#020a09,#061813 58%,#020b0a);
    }
    .intro-grid{
      position:absolute;inset:-10%;opacity:.16;pointer-events:none;
      background-image:
        linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
      background-size:70px 70px;
      transform:perspective(900px) rotateX(67deg) translateY(38%);
      transform-origin:center bottom;
      mask-image:linear-gradient(to top,#000,transparent 72%);
      -webkit-mask-image:linear-gradient(to top,#000,transparent 72%);
    }
    .intro-aura{
      position:absolute;left:50%;top:50%;width:min(820px,88vw);aspect-ratio:1;
      transform:translate(-50%,-50%);border-radius:50%;
      border:1px solid rgba(199,169,108,.07);
      box-shadow:0 0 0 90px rgba(255,255,255,.008),0 0 0 180px rgba(255,255,255,.004),inset 0 0 100px rgba(90,169,157,.06);
    }
    .intro-scan{
      position:absolute;left:0;right:0;top:-20%;height:180px;opacity:.36;pointer-events:none;
      background:linear-gradient(180deg,transparent,rgba(112,207,190,.08),transparent);
      animation:scanIntro 5s linear infinite;
    }
    @keyframes scanIntro{to{transform:translateY(150vh)}}
    .intro-core{
      position:absolute;left:50%;top:50%;width:min(520px,74vw);aspect-ratio:1;
      transform:translate(-50%,-50%);display:grid;place-items:center;transform-style:preserve-3d;
      will-change:transform,opacity;
    }
    .intro-logo{
      position:relative;z-index:5;width:min(390px,64vw);max-height:390px;object-fit:contain;
      border-radius:0!important;clip-path:none!important;
      filter:drop-shadow(0 36px 60px rgba(0,0,0,.56)) drop-shadow(0 0 32px rgba(76,164,151,.10));
      transform:translateZ(70px);
    }
    .intro-ring{position:absolute;border-radius:50%;border:1px solid rgba(199,169,108,.20);box-shadow:0 0 40px rgba(90,169,157,.05)}
    .intro-ring.r1{inset:0;animation:ringA 12s linear infinite}
    .intro-ring.r2{inset:48px;border-color:rgba(92,183,169,.18);animation:ringB 9s linear infinite}
    .intro-ring.r3{inset:92px;border-color:rgba(242,234,217,.09);animation:ringC 7s linear infinite}
    @keyframes ringA{to{transform:rotateZ(360deg) rotateX(72deg)}}
    @keyframes ringB{to{transform:rotateZ(-360deg) rotateY(70deg)}}
    @keyframes ringC{to{transform:rotateZ(360deg) rotateX(82deg)}}
    .intro-caption{
      position:absolute;left:50%;bottom:8vh;transform:translateX(-50%);text-align:center;width:min(680px,90vw);
      color:#8fa49e;will-change:opacity,transform,filter;
    }
    .intro-caption strong{display:block;color:var(--cream);font-size:clamp(27px,3vw,42px);font-weight:800}
    .intro-caption span{display:block;margin-top:10px;font-size:14px}
    .scroll-line{width:1px;height:62px;margin:18px auto 0;background:linear-gradient(var(--gold),transparent);transform-origin:top;animation:scrollPulse 1.5s ease-in-out infinite}
    @keyframes scrollPulse{0%,100%{transform:scaleY(.25);opacity:.35}50%{transform:scaleY(1);opacity:1}}
    .intro-bridge{
      position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:20px;
      opacity:0;pointer-events:none;transform-style:preserve-3d;will-change:transform,opacity;
    }
    .intro-bridge .bridge-kicker{direction:ltr;color:var(--gold);font:600 11px "Space Grotesk";letter-spacing:4px}
    .intro-bridge h2{margin-top:16px;font-size:clamp(54px,8vw,122px);line-height:.92;font-weight:900;letter-spacing:-2px}
    .intro-bridge h2 span{display:block;margin-top:13px;color:transparent;-webkit-text-stroke:1px rgba(242,234,217,.78)}

    /* =========================================================
       SCENE SYSTEM / SECTION BACKGROUNDS
    ========================================================= */
    .scene-section{position:relative;isolation:isolate;overflow:hidden;perspective:1800px}
    .scene-inner{position:relative;transform-style:preserve-3d;will-change:transform,opacity}
    .scene-section::after{
      content:"";position:absolute;left:50%;bottom:0;width:min(1100px,86vw);height:1px;transform:translateX(-50%);
      background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent);z-index:10;
    }
    .scene-glow{position:absolute;border-radius:50%;pointer-events:none;opacity:.34;will-change:transform;
      -webkit-mask-image:radial-gradient(circle,#000 0 22%,rgba(0,0,0,.82) 43%,transparent 72%);
      mask-image:radial-gradient(circle,#000 0 22%,rgba(0,0,0,.82) 43%,transparent 72%)}
    .scene-lines{position:absolute;inset:0;pointer-events:none;opacity:.14;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px);background-size:100% 78px;mask-image:linear-gradient(to bottom,transparent,#000 22%,#000 78%,transparent);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 22%,#000 78%,transparent)}
    .formula-cloud{position:absolute;inset:0;pointer-events:none;overflow:hidden;color:rgba(242,234,217,.055);font:600 34px "Space Grotesk";direction:ltr}
    .formula-cloud span{position:absolute;animation:formulaFloat 9s ease-in-out infinite}
    .formula-cloud span:nth-child(1){top:20%;left:7%}
    .formula-cloud span:nth-child(2){top:66%;left:13%;animation-delay:-2s}
    .formula-cloud span:nth-child(3){top:25%;right:8%;animation-delay:-4s}
    .formula-cloud span:nth-child(4){top:72%;right:12%;animation-delay:-6s}
    @keyframes formulaFloat{50%{transform:translateY(-18px) rotate(3deg)}}

    /* =========================================================
       HERO
    ========================================================= */
    .hero{
      min-height:135vh;padding:150px 0 125px;
      background:
        radial-gradient(circle at 78% 25%,rgba(74,159,146,.22),transparent 26%),
        radial-gradient(circle at 13% 70%,rgba(199,169,108,.075),transparent 22%),
        linear-gradient(180deg,#061311,#081d19 55%,#061311);
    }
    .hero .scene-glow.one{width:620px;height:620px;right:-180px;top:10%;background:rgba(51,132,120,.18)}
    .hero .scene-glow.two{width:420px;height:420px;left:-140px;bottom:10%;background:rgba(199,169,108,.08)}
    .hero-grid{min-height:calc(100vh - 170px);display:grid;grid-template-columns:1.04fr .96fr;align-items:center;gap:6vw}
    .hero-copy{padding-bottom:6vh}
    .eyebrow{display:inline-flex;align-items:center;gap:10px;padding:9px 14px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.025);color:#bdcbc7;font-size:13px}
    .eyebrow i{width:7px;height:7px;border-radius:50%;background:#76c0b3;box-shadow:0 0 16px #76c0b3}
    .hero h1{margin-top:30px;font-size:clamp(58px,7.5vw,118px);line-height:.93;letter-spacing:-2px;font-weight:900;text-shadow:0 16px 50px rgba(0,0,0,.22)}
    .hero h1 em{display:block;margin-top:13px;color:transparent;-webkit-text-stroke:1px rgba(242,234,217,.8);font-style:normal}
    .hero-copy>p{max-width:700px;margin-top:30px;color:#9fb2ac;font-size:clamp(18px,1.6vw,24px);line-height:1.9}
    .hero-actions{margin-top:32px;display:flex;gap:12px;flex-wrap:wrap}
    .btn{min-height:54px;padding:0 23px;display:inline-flex;align-items:center;justify-content:center;gap:17px;border-radius:17px;border:1px solid var(--line);font-weight:900;transition:.3s}
    .btn-primary{background:var(--cream);color:#10221f}
    .btn-ghost{background:rgba(255,255,255,.025)}
    .btn:hover{transform:translateY(-4px)}
    .btn-primary:hover{box-shadow:0 18px 45px rgba(0,0,0,.30)}
    .btn-ghost:hover{background:rgba(255,255,255,.065)}
    .hero-stats{margin-top:48px;padding-top:25px;max-width:720px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
    .hero-stats div{display:flex;flex-direction:column;gap:6px}
    .hero-stats strong{direction:ltr;text-align:right;color:var(--cream);font:700 24px "Space Grotesk"}
    .hero-stats span{color:#78908a;font-size:12px}
    .hero-visual{position:relative;min-height:640px;display:grid;place-items:center;perspective:1600px}
    .visual-halo{position:absolute;width:560px;aspect-ratio:1;border-radius:50%;border:1px solid rgba(199,169,108,.13);box-shadow:0 0 0 48px rgba(255,255,255,.017),0 0 0 100px rgba(255,255,255,.009),inset 0 0 100px rgba(78,159,146,.08)}
    .hero-brand-float{position:absolute;top:-26px;right:-54px;width:190px;height:190px;display:grid;place-items:center;z-index:20;transform-style:preserve-3d}
    .hero-brand-float img{width:150px;height:150px;object-fit:contain;border-radius:0!important;clip-path:none!important;transform:translateZ(55px);filter:drop-shadow(0 25px 35px rgba(0,0,0,.42))}
    .hero-brand-ring{position:absolute;inset:0;border-radius:50%;border:1px solid rgba(199,169,108,.22)}
    .hero-brand-ring.one{animation:heroBrandA 10s linear infinite}
    .hero-brand-ring.two{inset:22px;border-color:rgba(98,187,173,.20);animation:heroBrandB 8s linear infinite}
    @keyframes heroBrandA{to{transform:rotateZ(360deg) rotateX(70deg)}}
    @keyframes heroBrandB{to{transform:rotateZ(-360deg) rotateY(70deg)}}

    .exam-stack{width:min(390px,72vw);height:520px;position:relative;transform-style:preserve-3d}
    .paper{position:absolute;inset:0;border-radius:30px;border:1px solid rgba(255,255,255,.12);box-shadow:var(--shadow)}
    .paper-back{background:#143a35;transform:translate3d(-54px,20px,-90px) rotateY(-11deg) rotateZ(-6deg);opacity:.45}
    .paper-mid{background:#1c4c45;transform:translate3d(-28px,10px,-42px) rotateY(-6deg) rotateZ(-3deg);opacity:.72}
    .paper-front{padding:30px;color:#15332f;background:linear-gradient(145deg,rgba(244,237,220,.98),rgba(205,198,182,.94));transform:translateZ(25px) rotateY(-8deg) rotateX(3deg)}
    .paper-head{padding-bottom:22px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(21,51,47,.16);font-size:22px;font-weight:900}
    .score{padding:8px 12px;border-radius:12px;direction:ltr;color:#eef4ef;background:#1b4d45;font:700 18px "Space Grotesk"}
    .answer-row{height:66px;display:flex;align-items:center;gap:16px;border-bottom:1px solid rgba(21,51,47,.1)}
    .answer-row i{flex:1;height:7px;border-radius:10px;background:linear-gradient(90deg,rgba(21,51,47,.25) 70%,transparent 70%)}
    .answer-row b{width:31px;height:31px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#225e54;font-family:Arial}
    .paper-foot{margin-top:24px;display:flex;justify-content:flex-end;color:#4a625d;font-size:14px}.paper-foot strong{color:#1f534b}
    .floating-chip{position:absolute;z-index:22;padding:11px 15px;border-radius:14px;border:1px solid rgba(255,255,255,.1);background:rgba(11,38,34,.94);backdrop-filter:blur(7px);color:#d8e3df;box-shadow:0 18px 35px rgba(0,0,0,.22);direction:ltr;font:600 11px "Space Grotesk";letter-spacing:1.2px}
    .chip-one{top:18%;left:3%}.chip-two{right:3%;bottom:23%}.chip-three{left:14%;bottom:8%;color:var(--gold)}

    /* =========================================================
       APP
    ========================================================= */
    .app-section{
      min-height:118vh;padding:135px 0;
      background:
        radial-gradient(circle at 20% 55%,rgba(199,169,108,.055),transparent 22%),
        radial-gradient(circle at 82% 30%,rgba(78,159,146,.12),transparent 27%),
        linear-gradient(180deg,#061311,#0a211d,#061311);
    }
    .app-section .scene-glow.one{width:520px;height:520px;left:-180px;top:26%;background:rgba(199,169,108,.08)}
    .app-layout{display:grid;grid-template-columns:.95fr 1.05fr;align-items:center;gap:8vw}
    .phone-stage{min-height:650px;position:relative;display:grid;place-items:center;perspective:1600px}
    .phone-shadow{position:absolute;bottom:10%;width:320px;height:80px;border-radius:50%;background:rgba(0,0,0,.45);filter:blur(35px)}
    .phone-3d{width:290px;height:590px;padding:10px;border-radius:52px;background:linear-gradient(135deg,#bab3a3,#4c5c58 32%,#152824 62%,#c5a967);box-shadow:40px 55px 100px rgba(0,0,0,.45),inset 0 0 0 1px rgba(255,255,255,.2);transform:rotateY(13deg) rotateX(4deg)}
    .phone-bezel{width:100%;height:100%;position:relative;padding:12px;overflow:hidden;border-radius:44px;background:#030807}
    .dynamic-island{position:absolute;top:19px;left:50%;z-index:10;width:92px;height:27px;transform:translateX(-50%);border-radius:30px;background:#000}
    .phone-ui{height:100%;padding:80px 22px 25px;border-radius:34px;background:radial-gradient(circle at 50% 20%,#2e675f,#153934 40%,#071916 82%)}
    .mini-brand{display:flex;align-items:center;gap:11px}.mini-brand img{width:74px;height:50px;object-fit:contain;border-radius:0!important;clip-path:none!important}.mini-brand strong{font-size:20px}
    .ui-title{margin-top:45px;font-size:22px;font-weight:900}
    .ui-chart{height:190px;margin-top:22px;padding:18px;display:flex;align-items:flex-end;gap:11px;border:1px solid rgba(255,255,255,.08);border-radius:22px;background:rgba(255,255,255,.035)}
    .ui-chart i{flex:1;height:var(--h);border-radius:7px 7px 3px 3px;background:linear-gradient(#d4bd82,#4d9b8f);box-shadow:0 0 20px rgba(78,159,146,.16)}
    .ui-cards{margin-top:16px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.ui-cards span{padding:14px;border-radius:16px;background:rgba(255,255,255,.05);color:#9db0ab;font-size:12px;display:flex;flex-direction:column;gap:6px}.ui-cards b{color:#fff;font:700 22px "Space Grotesk"}
    .section-kicker{direction:ltr;text-align:right;color:var(--gold);font:600 11px "Space Grotesk";letter-spacing:3px}
    .app-copy h2,.section-heading h2{margin-top:18px;font-size:clamp(48px,6vw,88px);line-height:1.02;font-weight:900;letter-spacing:-1px}
    .app-copy h2 span,.section-heading h2 span{color:#76b6ab}
    .app-copy>p{max-width:620px;margin-top:25px;color:var(--muted);font-size:21px;line-height:1.9}
    .version-pill{margin-top:28px;display:inline-flex;align-items:center;gap:9px;padding:9px 13px;border:1px solid var(--line);border-radius:999px;color:#a9bbb5;background:rgba(255,255,255,.025);font-size:13px}.version-pill i{width:7px;height:7px;border-radius:50%;background:#69b9a8;box-shadow:0 0 14px #69b9a8}
    .store-buttons{margin-top:28px;display:flex;gap:12px;flex-wrap:wrap}.store-btn{min-width:205px;padding:13px 16px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.035);display:flex;align-items:center;gap:13px;transition:.3s}.store-btn:hover:not(.disabled){transform:translateY(-5px);background:rgba(255,255,255,.075)}.store-btn.disabled{opacity:.5;cursor:not-allowed}.store-icon{direction:ltr;font:500 35px Arial}.store-icon.play{color:var(--gold);font-size:23px}.store-btn>span:last-child{display:flex;flex-direction:column}.store-btn small{color:#7f9690;font-size:11px}.store-btn strong{margin-top:5px;direction:ltr;font:600 18px "Space Grotesk"}

    /* =========================================================
       SERVICES — PROFESSIONAL SERVICE-TO-SERVICE TRANSITION
    ========================================================= */
    .services-section{
      min-height:125vh;padding:145px 0;
      background:
        radial-gradient(circle at 80% 30%,rgba(78,159,146,.13),transparent 27%),
        radial-gradient(circle at 16% 78%,rgba(199,169,108,.07),transparent 23%),
        linear-gradient(180deg,#061311,#071b17 48%,#061311);
    }
    .services-section .scene-glow.one{width:660px;height:660px;right:-240px;top:12%;background:rgba(51,132,120,.16)}
    .section-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:9vw;align-items:end;margin-bottom:65px}.section-heading>p{color:var(--muted);font-size:18px;line-height:1.8;max-width:500px;padding-bottom:8px}
    .services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;perspective:1500px}
    .service-card{position:relative;min-height:338px;padding:24px;text-align:right;color:var(--cream);border:1px solid var(--line);border-radius:26px;background:linear-gradient(145deg,rgba(26,67,60,.72),rgba(7,24,21,.9));box-shadow:0 25px 65px rgba(0,0,0,.2);overflow:hidden;cursor:pointer;transform-style:preserve-3d;transition:border-color .35s,background .35s,box-shadow .35s}
    .service-card::before{content:"";position:absolute;width:240px;height:240px;top:-150px;left:-100px;border-radius:50%;background:radial-gradient(circle,rgba(199,169,108,.16),transparent 66%)}
    .service-card::after{content:"";position:absolute;right:0;top:0;width:3px;height:0;background:linear-gradient(var(--gold),transparent);transition:height .45s ease}
    .service-card:hover::after,.service-card.active::after{height:100%}
    .service-card.active{border-color:rgba(199,169,108,.48);background:linear-gradient(145deg,rgba(40,93,83,.92),rgba(10,31,27,.96));box-shadow:0 38px 90px rgba(0,0,0,.32)}
    .service-no{position:absolute;top:22px;left:22px;direction:ltr;color:#667c76;font:600 11px "Space Grotesk"}.service-icon{margin-top:36px;width:58px;height:58px;border-radius:18px;display:grid;place-items:center;border:1px solid rgba(199,169,108,.2);background:rgba(255,255,255,.04);color:var(--gold);font:700 15px "Space Grotesk";transform:translateZ(45px)}
    .service-card strong{display:block;margin-top:64px;font-size:24px;line-height:1.3;transform:translateZ(55px)}.service-card small{display:block;margin-top:12px;color:#8ba09a;font-size:14px;line-height:1.65;transform:translateZ(35px)}.service-card>i{position:absolute;left:24px;bottom:22px;color:var(--gold);font-size:20px;font-style:normal}
    .service-stage{margin-top:20px;position:relative;min-height:300px;padding:1px;perspective:1600px}
    .service-detail{position:relative;min-height:250px;padding:34px;display:grid;grid-template-columns:90px 1fr 240px;gap:28px;align-items:center;overflow:hidden;border:1px solid var(--line);border-radius:30px;background:linear-gradient(145deg,rgba(255,255,255,.036),rgba(255,255,255,.014));backdrop-filter:none;box-shadow:0 35px 90px rgba(0,0,0,.20);transform-style:preserve-3d}
    .service-detail::before{content:"";position:absolute;width:320px;height:320px;top:-190px;left:-130px;border-radius:50%;background:radial-gradient(circle,rgba(199,169,108,.14),transparent 70%)}
    .service-detail::after{content:"";position:absolute;width:300px;height:300px;bottom:-210px;right:-120px;border-radius:50%;background:radial-gradient(circle,rgba(78,159,146,.16),transparent 70%)}
    .detail-number{position:relative;z-index:2;direction:ltr;color:rgba(199,169,108,.30);font:700 54px "Space Grotesk"}.detail-copy{position:relative;z-index:2}.detail-tag{color:var(--gold);font-size:12px}.service-detail h3{margin-top:8px;font-size:32px}.service-detail p{max-width:760px;margin-top:9px;color:var(--muted);line-height:1.85}.detail-badge{position:relative;z-index:2;justify-self:end;padding:16px;display:flex;align-items:center;gap:10px;border:1px solid rgba(199,169,108,.18);border-radius:18px;color:#d7c495;background:rgba(199,169,108,.055)}.detail-badge strong{font-size:13px}

    /* =========================================================
       TEACHERS
    ========================================================= */
    .teachers-section{
      min-height:115vh;padding:145px 0;
      background:
        radial-gradient(circle at 20% 65%,rgba(199,169,108,.08),transparent 30%),
        radial-gradient(circle at 82% 20%,rgba(73,155,143,.08),transparent 22%),
        linear-gradient(180deg,#061311,#081a17,#061311);
    }
    .teachers-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;perspective:1600px}.teacher-card{min-height:390px;padding:28px;border:1px solid var(--line);border-radius:27px;background:linear-gradient(160deg,rgba(27,68,61,.66),rgba(6,22,19,.88));position:relative;overflow:hidden;transform-style:preserve-3d}.teacher-card::after{content:"";position:absolute;width:180px;height:180px;left:-95px;top:-85px;border-radius:50%;border:1px solid rgba(199,169,108,.11);box-shadow:0 0 0 24px rgba(255,255,255,.012),0 0 0 48px rgba(255,255,255,.007)}.teacher-symbol{width:70px;height:70px;display:grid;place-items:center;border-radius:22px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08);color:var(--gold);font-size:28px;transform:translateZ(45px)}.teacher-subject{margin-top:45px;color:#72aa9f;font-size:12px}.teacher-card h3{margin-top:8px;font-size:24px;line-height:1.35;transform:translateZ(42px)}.teacher-card p{margin-top:15px;color:#8ea39d;font-size:14px;line-height:1.8;transform:translateZ(28px)}.teacher-line{position:absolute;right:28px;left:28px;bottom:25px;height:1px;background:linear-gradient(90deg,transparent,rgba(199,169,108,.5))}

    /* =========================================================
       STATS / FOOTER
    ========================================================= */
    .stats-section{padding:80px 0 120px;background:linear-gradient(180deg,#061311,#020b0a)}
    .stats-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
    .stat{position:relative;padding:55px 35px;display:flex;flex-direction:column;align-items:center;text-align:center}.stat:not(:last-child)::after{content:"";position:absolute;top:25%;bottom:25%;left:0;width:1px;background:var(--line)}.stat strong{direction:ltr;color:var(--cream);font:700 clamp(44px,5vw,72px) "Space Grotesk"}.stat span{margin-top:8px;color:#82958f;font-size:15px}


    /* =========================================================
       SOCIAL CONTACT BAR
    ========================================================= */
    .social-strip{
      position:relative;
      padding:34px 0 38px;
      background:
        radial-gradient(circle at 50% 0%,rgba(78,159,146,.10),transparent 38%),
        #020b0a;
      overflow:hidden;
    }
    .social-strip::before{
      content:"";
      position:absolute;
      left:50%;
      top:0;
      width:min(1100px,86vw);
      height:1px;
      transform:translateX(-50%);
      background:linear-gradient(90deg,transparent,rgba(199,169,108,.34),transparent);
    }
    .social-bar{
      position:relative;
      max-width:900px;
      margin:auto;
      padding:10px;
      display:grid;
      grid-template-columns:repeat(2,1fr);
      gap:10px;
      border:1px solid rgba(242,234,217,.11);
      border-radius:28px;
      background:linear-gradient(145deg,rgba(30,72,65,.72),rgba(5,20,18,.92));
      box-shadow:0 30px 80px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.05);
      backdrop-filter:blur(8px);
      -webkit-backdrop-filter:blur(8px);
      perspective:1400px;
    }
    .social-item{
      min-height:96px;
      padding:18px 22px;
      display:flex;
      align-items:center;
      justify-content:center;
      gap:16px;
      border:1px solid transparent;
      border-radius:21px;
      background:rgba(255,255,255,.018);
      color:var(--cream);
      transition:background .3s ease,border-color .3s ease,box-shadow .3s ease;
      transform-style:preserve-3d;
    }
    .social-item:hover{
      background:rgba(255,255,255,.055);
      border-color:rgba(199,169,108,.28);
      box-shadow:0 20px 40px rgba(0,0,0,.22);
    }
    .social-icon{
      width:56px;
      height:56px;
      flex:0 0 56px;
      display:grid;
      place-items:center;
      border-radius:18px;
      border:1px solid rgba(199,169,108,.2);
      background:linear-gradient(145deg,rgba(199,169,108,.09),rgba(255,255,255,.025));
      transform:translateZ(24px);
    }
    .social-icon svg{width:27px;height:27px;fill:none;stroke:var(--gold);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
    .telegram-social .social-icon svg{fill:var(--gold);stroke:none}
    .social-copy{display:flex;flex-direction:column;gap:5px;transform:translateZ(18px)}
    .social-copy span{color:#81918e;font-size:13px}
    .social-copy strong{direction:ltr;font:600 18px "Space Grotesk",sans-serif;color:var(--cream)}
    .social-arrow{margin-right:auto;color:var(--gold);font-size:22px;transform:translateZ(20px)}

    .site-footer{padding:30px 0;background:#020b0a}.footer-inner{min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.06);padding-top:28px;color:#71857f;font-size:13px}.footer-brand{display:flex;align-items:center;gap:10px;color:var(--cream)}.footer-brand img{width:76px;height:46px;object-fit:contain;border-radius:0!important;clip-path:none!important}.footer-brand>div{display:flex;flex-direction:column}.footer-brand small{direction:ltr;margin-top:3px;font:600 8px "Space Grotesk";letter-spacing:1.4px;color:#688079}.site-footer a{color:#a8bbb5}

    .tilt-panel{transform-style:preserve-3d;will-change:transform}.magnetic{will-change:transform}


    /* =========================================================
       CINEMATIC V3 — TEACHERS / APP
    ========================================================= */
    .teachers-section{
      min-height:auto;
      padding:0 0 145px;
      background:
        radial-gradient(circle at 50% 24%,rgba(54,139,126,.16),transparent 28%),
        radial-gradient(circle at 15% 65%,rgba(199,169,108,.07),transparent 28%),
        linear-gradient(180deg,#061311 0%,#03100e 36%,#081a17 70%,#061311 100%);
    }
    .teachers-cinematic-wrap{min-height:100vh;position:relative;z-index:2}
    .teachers-cinematic-stage{
      position:relative;top:auto;height:100vh;overflow:hidden;display:grid;place-items:center;
      perspective:1800px;isolation:isolate;
      background:
        radial-gradient(circle at 50% 50%,rgba(58,151,137,.13),transparent 24%),
        radial-gradient(circle at 50% 58%,rgba(199,169,108,.05),transparent 36%);
    }
    .teachers-stars{
      position:absolute;inset:0;opacity:.42;
      background-image:
        radial-gradient(circle at 10% 20%,rgba(242,234,217,.8) 0 1px,transparent 1.6px),
        radial-gradient(circle at 70% 12%,rgba(199,169,108,.7) 0 1px,transparent 1.8px),
        radial-gradient(circle at 86% 63%,rgba(90,169,157,.85) 0 1px,transparent 1.7px),
        radial-gradient(circle at 28% 78%,rgba(242,234,217,.6) 0 1px,transparent 1.7px);
      background-size:180px 180px,240px 240px,210px 210px,280px 280px;
      will-change:transform,opacity;
    }
    .educators-giant{
      position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(.75);
      direction:ltr;white-space:nowrap;color:transparent;-webkit-text-stroke:1px rgba(242,234,217,.055);
      font:700 clamp(100px,18vw,300px)/.8 "Space Grotesk";letter-spacing:-10px;opacity:.45;
      will-change:transform,opacity;
    }
    .teachers-beam{position:absolute;top:-20%;width:24vw;height:145vh;opacity:.075;will-change:transform}
    .beam-a{right:12%;background:linear-gradient(180deg,transparent,rgba(94,199,181,.45),transparent);transform:rotate(17deg)}
    .beam-b{left:10%;background:linear-gradient(180deg,transparent,rgba(199,169,108,.36),transparent);transform:rotate(-14deg)}
    .academy-orbit{
      position:relative;width:min(690px,76vw);aspect-ratio:1;transform-style:preserve-3d;
      display:grid;place-items:center;will-change:transform,opacity;
    }
    .academy-ring{position:absolute;border-radius:50%;border:1px solid rgba(242,234,217,.11);box-shadow:0 0 55px rgba(90,169,157,.045)}
    .academy-ring.ring-a{inset:0;border-color:rgba(199,169,108,.23)}
    .academy-ring.ring-b{inset:12%;border-color:rgba(90,169,157,.22)}
    .academy-ring.ring-c{inset:25%;border-color:rgba(242,234,217,.10)}
    .academy-axis{position:absolute;left:50%;top:50%;width:112%;height:1px;transform-origin:center;background:linear-gradient(90deg,transparent,rgba(242,234,217,.15),transparent)}
    .academy-axis.axis-a{transform:translate(-50%,-50%) rotate(36deg)}
    .academy-axis.axis-b{transform:translate(-50%,-50%) rotate(-36deg)}
    .academy-core{
      position:relative;z-index:5;width:290px;aspect-ratio:1;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
      border:1px solid rgba(199,169,108,.28);background:radial-gradient(circle at 50% 35%,rgba(41,104,94,.74),rgba(4,20,17,.94) 67%);
      box-shadow:0 0 0 18px rgba(255,255,255,.012),0 0 85px rgba(76,164,151,.18),inset 0 0 60px rgba(199,169,108,.05);
      transform-style:preserve-3d;will-change:transform;
    }
    .academy-core::after{content:"";position:absolute;inset:28px;border-radius:50%;border:1px dashed rgba(242,234,217,.10)}
    .academy-core small{direction:ltr;color:var(--gold);font:600 9px "Space Grotesk";letter-spacing:3px;transform:translateY(-16px) translateZ(30px);position:relative;z-index:3}
    .academy-core strong{margin-top:8px;font-size:70px;line-height:1;font-weight:900;transform:translateZ(48px)}
    .academy-core span{margin-top:8px;color:#86a49d;font-size:13px;transform:translateZ(26px)}
    .subject-orb{
      position:absolute;z-index:7;width:112px;height:112px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;
      border:1px solid rgba(242,234,217,.12);background:rgba(5,24,21,.94);backdrop-filter:none;
      box-shadow:0 20px 45px rgba(0,0,0,.28);will-change:transform,opacity;
    }
    .subject-orb b{color:var(--gold);font-size:31px;font-weight:700}.subject-orb em{font-style:normal;color:#a9bbb6;font-size:11px;line-height:1.45;max-width:86%;text-align:center;font-weight:700}
    .orb-1{top:3%;left:50%;transform:translateX(-50%)}
    .orb-2{top:27%;right:-2%}
    .orb-3{bottom:7%;right:12%}
    .orb-4{bottom:7%;left:12%}
    .orb-5{top:27%;left:-2%}
    .teachers-cinema-caption{
      position:absolute;left:50%;bottom:8vh;transform:translateX(-50%);width:min(720px,88vw);text-align:center;opacity:0;will-change:transform,opacity;
    }
    .teachers-cinema-caption span{display:block;color:var(--gold);font-size:12px;letter-spacing:1px}
    .teachers-cinema-caption strong{display:block;margin-top:10px;font-size:clamp(28px,4vw,54px);line-height:1.2}
    .teachers-content{position:relative;z-index:4;padding-top:90px}
    .teachers-heading{margin-bottom:70px}
    .teacher-card{transition:border-color .35s,box-shadow .35s,background .35s}
    .teacher-card:hover{border-color:rgba(199,169,108,.34);box-shadow:0 30px 75px rgba(0,0,0,.28);background:linear-gradient(160deg,rgba(34,81,72,.82),rgba(5,20,17,.94))}

    .app-section{
      min-height:auto;padding:0 0 145px;
      background:
        radial-gradient(circle at 50% 24%,rgba(199,169,108,.06),transparent 25%),
        radial-gradient(circle at 50% 62%,rgba(78,159,146,.12),transparent 30%),
        linear-gradient(180deg,#061311,#020b0a 42%,#0a211d 73%,#061311);
    }
    .app-cinematic-wrap{min-height:100vh;position:relative;z-index:3}
    .app-cinematic-stage{
      position:relative;top:auto;height:100vh;overflow:hidden;display:grid;place-items:center;perspective:1900px;isolation:isolate;
      background:
        radial-gradient(circle at 50% 50%,rgba(66,160,145,.13),transparent 26%),
        linear-gradient(180deg,rgba(2,11,10,.94),rgba(6,24,20,.94));
    }
    .app-cinema-grid{
      position:absolute;inset:-15%;opacity:.16;
      background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
      background-size:72px 72px;transform:perspective(900px) rotateX(68deg) translateY(42%);transform-origin:center bottom;
      mask-image:linear-gradient(to top,#000,transparent 78%);-webkit-mask-image:linear-gradient(to top,#000,transparent 78%);
    }
    .app-cinema-glow{position:absolute;width:min(820px,86vw);aspect-ratio:1;border-radius:50%;border:1px solid rgba(199,169,108,.09);box-shadow:0 0 0 70px rgba(255,255,255,.007),0 0 0 145px rgba(255,255,255,.004),inset 0 0 100px rgba(90,169,157,.07);will-change:transform,opacity}
    .app-giant-word{position:absolute;left:50%;top:49%;transform:translate(-50%,-50%);direction:ltr;color:transparent;-webkit-text-stroke:1px rgba(242,234,217,.045);font:700 clamp(120px,21vw,360px)/.8 "Space Grotesk";letter-spacing:-14px;white-space:nowrap;opacity:.4;will-change:transform,opacity}
    .draw-board{
      position:relative;z-index:8;width:min(570px,72vw);aspect-ratio:1;border-radius:42px;overflow:visible;transform-style:preserve-3d;
      border:1px solid rgba(242,234,217,.16);background:linear-gradient(145deg,rgba(239,232,214,.98),rgba(199,195,181,.94));
      box-shadow:0 34px 82px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.65);will-change:transform,opacity;
    }
    .draw-board::before{content:"";position:absolute;inset:18px;border:1px solid rgba(21,51,47,.09);border-radius:29px;pointer-events:none}
    .board-paper-lines{position:absolute;inset:38px;opacity:.24;background-image:linear-gradient(rgba(21,51,47,.13) 1px,transparent 1px);background-size:100% 34px;mask-image:linear-gradient(to bottom,transparent 5%,#000 25%,#000 75%,transparent 95%);-webkit-mask-image:linear-gradient(to bottom,transparent 5%,#000 25%,#000 75%,transparent 95%)}
    .logo-trace{position:absolute;inset:9%;width:82%;height:82%;overflow:visible;pointer-events:none}
    .logo-trace path{fill:none;stroke:#215a51;stroke-width:6;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;vector-effect:non-scaling-stroke}
    .logo-paint{position:absolute;inset:10%;width:80%;height:80%;overflow:visible;pointer-events:none}
    .logo-paint .logo-outline-mask,.logo-paint .logo-fill-mask{fill:none;stroke:#fff;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1}
    .logo-paint .logo-outline-mask{stroke-width:24}
    .logo-paint .logo-fill-mask{stroke-width:76}
    .logo-paint .paint-guide{fill:none;stroke:transparent;stroke-width:1;pointer-events:none}
    .logo-paint .painted-logo{opacity:1}
    .logo-finish-glow{position:absolute;inset:12%;border-radius:50%;background:radial-gradient(circle,rgba(199,169,108,.22),rgba(90,169,157,.07) 42%,transparent 70%);opacity:0;transform:scale(.65);pointer-events:none}
    .drawing-pen{position:absolute;z-index:18;left:50%;top:50%;width:44px;height:210px;transform:translate(-50%,-50%) rotate(38deg);transform-origin:70% 90%;will-change:transform,opacity}
    .pen-body{position:absolute;left:9px;top:0;width:27px;height:165px;border-radius:18px 18px 9px 9px;background:linear-gradient(90deg,#0f2d28,#2d746a 40%,#7cc0b5 64%,#173a34);border:1px solid rgba(10,32,28,.45)}
    .pen-body::after{content:"";position:absolute;left:6px;top:12px;width:4px;height:118px;border-radius:4px;background:rgba(255,255,255,.26)}
    .pen-nib{position:absolute;left:10px;top:157px;width:25px;height:44px;background:linear-gradient(90deg,#8f7b52,#e1c98f,#7c6945);clip-path:polygon(0 0,100% 0,50% 100%)}
    .pen-clip{position:absolute;right:3px;top:22px;width:6px;height:83px;border:2px solid #c7a96c;border-left:0;border-radius:0 7px 7px 0;z-index:2}
    .board-stamp{position:absolute;left:50%;right:auto;bottom:-48px;padding:9px 15px;border:2px solid rgba(33,90,81,.34);border-radius:10px;color:rgba(33,90,81,.68);background:rgba(239,232,214,.96);box-shadow:0 12px 30px rgba(0,0,0,.16);font-weight:900;font-size:13px;white-space:nowrap;transform:translateX(-50%) rotate(-3deg) scale(1.8);opacity:0}
    .floating-paper{position:absolute;z-index:3;width:170px;height:220px;padding:26px 20px;border-radius:20px;background:linear-gradient(145deg,#e9e2d2,#c9c4b7);box-shadow:0 28px 70px rgba(0,0,0,.32);border:1px solid rgba(255,255,255,.35);opacity:.45;will-change:transform,opacity}
    .floating-paper i{display:block;height:5px;margin:16px 0;border-radius:5px;background:rgba(21,51,47,.18)}
    .floating-paper i:nth-child(2){width:74%}.floating-paper i:nth-child(3){width:88%}.floating-paper b{position:absolute;left:18px;bottom:17px;color:#29675e;font:800 28px "Space Grotesk"}
    .fp-1{left:7%;top:18%;transform:rotate(-13deg)}.fp-2{right:8%;top:15%;transform:rotate(12deg)}.fp-3{right:12%;bottom:10%;transform:rotate(-7deg)}
    .app-cinema-copy{position:absolute;z-index:22;left:50%;bottom:2.5vh;transform:translateX(-50%);width:min(780px,90vw);padding:0 16px;text-align:center;opacity:0;pointer-events:none;will-change:transform,opacity}
    .app-cinema-copy small{direction:ltr;color:var(--gold);font:600 10px "Space Grotesk";letter-spacing:4px}
    .app-cinema-copy strong{display:block;margin-top:10px;font-size:clamp(33px,5vw,68px);line-height:1.08}
    .app-cinema-copy span{display:block;margin-top:10px;color:#8ea49e;font-size:15px}
    .app-download-layout{position:relative;z-index:5;padding-top:105px}

    /* Keep the cinematic scene physically inside the viewport while scrolling. */
    .teachers-section.scene-section,.app-section.scene-section{overflow:visible;perspective:none}

    @media(max-width:850px){
      .teachers-cinematic-wrap{min-height:100vh}.academy-orbit{width:92vw}.academy-core{width:200px}.academy-core strong{font-size:50px}.subject-orb{width:78px;height:78px}.subject-orb b{font-size:23px}.subject-orb em{font-size:9px;line-height:1.3}.educators-giant{font-size:26vw;letter-spacing:-4px}.teachers-cinema-caption{bottom:9vh}.teachers-content{padding-top:50px}
      .app-cinematic-wrap{min-height:100vh}.draw-board{width:82vw;border-radius:28px}.drawing-pen{width:32px;height:155px}.pen-body{width:20px;height:124px}.pen-nib{top:119px;width:20px;height:34px}.pen-clip{height:60px}.floating-paper{width:105px;height:140px;padding:15px 12px;border-radius:14px}.floating-paper i{margin:10px 0;height:3px}.floating-paper b{font-size:19px}.fp-1{left:-3%;top:18%}.fp-2{right:-4%;top:17%}.fp-3{right:3%;bottom:17%}.app-cinema-copy{bottom:2vh}.app-giant-word{font-size:31vw;letter-spacing:-7px}.board-stamp{left:50%;right:auto;bottom:-38px;font-size:9px;padding:6px 9px}
    }

    /* Mobile educators cinematic — native sticky + one lightweight scrub timeline.
       This keeps the animation alive without GSAP pinning or expensive 3D work. */
    @media(max-width:850px){
      .teachers-cinematic-wrap{
        min-height:235svh;
        position:relative;
      }
      .teachers-cinematic-stage{
        position:sticky;
        top:0;
        height:100svh;
        min-height:0;
        max-height:none;
        perspective:none;
        contain:layout paint;
        overflow:hidden;
      }
      .teachers-beam,.educators-giant,.academy-axis{display:none!important}
      .teachers-stars{opacity:.22;will-change:transform,opacity!important}
      .academy-orbit{
        width:min(92vw,520px);
        transform-style:flat!important;
        will-change:transform,opacity!important;
      }
      .academy-core{
        transform-style:flat!important;
        will-change:transform!important;
        box-shadow:0 0 0 10px rgba(255,255,255,.01),0 0 38px rgba(76,164,151,.10);
      }
      .academy-ring{
        box-shadow:none!important;
        will-change:transform!important;
      }
      .subject-orb{
        will-change:transform,opacity!important;
        box-shadow:0 8px 18px rgba(0,0,0,.18);
      }
      .teachers-cinema-caption{will-change:transform,opacity!important}
    }



    /* =========================================================
       ELITE CINEMA — CUT-OUT AIRCRAFT / NATIVE WEBSITE SCENE
       The plane is transparent and lives inside the website scene itself.
       No photo frame, no rectangular image edge, and the depth is driven by scroll.
    ========================================================= */
    .plane-cinema{
      position:relative;
      width:min(1120px,92vw)!important;
      height:min(720px,82vh);
      aspect-ratio:auto!important;
      display:grid;
      place-items:center;
      isolation:isolate;
      overflow:visible;
      transform-style:preserve-3d;
      background:transparent;
    }

    .plane-cinema::before{
      content:"";
      position:absolute;
      left:50%;top:52%;
      width:min(980px,90vw);height:min(620px,70vh);
      transform:translate(-50%,-50%);
      border-radius:50%;
      background:
        radial-gradient(circle at 48% 48%,rgba(56,142,129,.13),transparent 44%),
        radial-gradient(circle at 30% 65%,rgba(199,169,108,.08),transparent 36%);
      filter:blur(10px);
      z-index:0;
      pointer-events:none;
    }

    .plane-cinema .academy-ring{
      pointer-events:none;
      opacity:.08;
      box-shadow:none;
      z-index:2;
    }
    .plane-cinema .ring-a{inset:6%;border-color:rgba(199,169,108,.16)}
    .plane-cinema .ring-b{inset:18%;border-color:rgba(90,169,157,.13)}
    .plane-cinema .ring-c{inset:31%;border-color:rgba(242,234,217,.06)}

    .flight-streak{
      position:absolute;
      left:3%;right:3%;top:53%;height:1px;
      z-index:3;
      opacity:.0;
      background:linear-gradient(90deg,transparent,rgba(199,169,108,.08),rgba(242,234,217,.40),rgba(199,169,108,.08),transparent);
      box-shadow:0 0 22px rgba(199,169,108,.12);
      pointer-events:none;
      will-change:transform,opacity;
    }

    /* Cloud layers are native CSS elements, not part of a rectangular photograph. */
    .elite-cloud{
      position:absolute;
      border-radius:50%;
      pointer-events:none;
      z-index:4;
      opacity:0;
      filter:blur(17px);
      mix-blend-mode:screen;
      will-change:transform,opacity;
    }
    .elite-cloud::before,.elite-cloud::after{
      content:"";
      position:absolute;
      border-radius:50%;
      background:inherit;
    }
    .elite-cloud.c1{left:-11%;bottom:5%;width:40%;height:20%;background:radial-gradient(ellipse at center,rgba(244,236,222,.30),rgba(244,236,222,.08) 52%,transparent 74%)}
    .elite-cloud.c2{right:-10%;bottom:7%;width:42%;height:22%;background:radial-gradient(ellipse at center,rgba(242,233,219,.28),rgba(242,233,219,.08) 50%,transparent 75%)}
    .elite-cloud.c3{left:16%;top:18%;width:30%;height:15%;background:radial-gradient(ellipse at center,rgba(237,220,197,.14),transparent 72%)}
    .elite-cloud.c4{right:14%;top:14%;width:27%;height:14%;background:radial-gradient(ellipse at center,rgba(224,238,232,.11),transparent 72%)}
    .elite-cloud.c5{left:33%;bottom:0%;width:36%;height:17%;background:radial-gradient(ellipse at center,rgba(242,234,219,.20),transparent 74%)}

    /* Transparent real aircraft cut-out. It comes from the distance toward the viewer. */
    .elite-plane-wrap{
      position:absolute;
      left:50%;top:46%;
      z-index:12;
      width:min(920px,76vw);
      transform:translate(-50%,-50%);
      transform-origin:center center;
      will-change:transform,opacity;
      backface-visibility:hidden;
      pointer-events:none;
    }
    .elite-plane{
      display:block;
      width:100%;height:auto;
      object-fit:contain;
      border:0!important;
      border-radius:0!important;
      background:transparent!important;
      filter:drop-shadow(0 34px 42px rgba(0,0,0,.35)) drop-shadow(0 8px 14px rgba(0,0,0,.22));
      image-rendering:auto;
      backface-visibility:hidden;
      -webkit-user-drag:none;
      user-select:none;
    }
    .plane-brand-mark{display:none !important;}
    .plane-brand-mark::before,
    .plane-brand-mark::after,
    .plane-brand-mark img{display:none !important;}


    /* Names are normal DOM elements above clouds so they stay perfectly readable. */
    .plane-name{
      position:absolute;
      z-index:35;
      min-width:145px;
      display:flex;align-items:center;justify-content:center;gap:8px;
      padding:9px 14px;
      border-radius:16px;
      border:1px solid rgba(199,169,108,.36);
      background:linear-gradient(145deg,rgba(6,34,30,.96),rgba(2,15,13,.98));
      box-shadow:0 18px 48px rgba(0,0,0,.38),0 0 24px rgba(199,169,108,.05);
      color:#f3ead8;
      font-size:12px;font-weight:900;
      opacity:0;
      will-change:transform,opacity;
      backdrop-filter:none!important;
    }
    .plane-name i{display:block;flex:0 0 auto;width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 15px rgba(199,169,108,.82)}
    .plane-name::after{content:"";position:absolute;height:1px;width:84px;background:linear-gradient(90deg,rgba(199,169,108,.92),rgba(242,234,217,.35),transparent);opacity:.86}
    .name-1{right:5%;top:24%}.name-1::after{right:100%;top:50%;transform:rotate(15deg);transform-origin:right center}
    .name-2{right:7%;bottom:24%}.name-2::after{right:100%;top:46%;transform:rotate(-15deg);transform-origin:right center}
    .name-3{left:7%;bottom:22%}.name-3::after{left:100%;top:46%;transform:rotate(195deg);transform-origin:left center}
    .name-4{left:5%;top:25%}.name-4::after{left:100%;top:50%;transform:rotate(165deg);transform-origin:left center}
    .name-5{left:50%;top:9%;transform:translateX(-50%)}.name-5::after{left:50%;top:100%;width:66px;transform:rotate(90deg);transform-origin:left center}
    .name-6{left:50%;top:73%;transform:translateX(-50%)}.name-6::after{left:50%;bottom:100%;width:62px;transform:rotate(-90deg);transform-origin:left center}

    .teachers-cinema-caption{z-index:45!important;bottom:5vh!important;text-shadow:0 10px 28px rgba(0,0,0,.50)}
    .teachers-cinema-caption strong{font-size:clamp(27px,3.2vw,46px)}

    @media(max-width:850px){
      .plane-cinema{width:100vw!important;height:100svh!important;transform-style:flat!important;overflow:hidden}
      .plane-cinema .academy-ring{opacity:.04!important}
      .elite-plane-wrap{width:min(440px,90vw);left:50%;top:45%}
      .plane-brand-mark{display:none!important}
      .elite-cloud{filter:blur(11px)}
      .elite-cloud.c3,.elite-cloud.c4{display:none}
      .plane-name{min-width:104px;padding:8px 10px;border-radius:12px;font-size:10.5px;gap:7px;box-shadow:0 10px 25px rgba(0,0,0,.38)}
      .plane-name i{width:6px;height:6px}
      .plane-name::after{width:34px}
      .name-1{right:2%;top:22%}
      .name-2{right:2%;bottom:25%}
      .name-3{left:2%;bottom:23%}
      .name-4{left:2%;top:25%}
      .name-5{top:9%}
      .name-5::after{width:29px}
      .name-6{left:50%;top:71%;transform:translateX(-50%)}
      .name-6::after{width:29px}
      .teachers-cinema-caption{bottom:5svh!important}
    }

    /* =========================================================
       RESPONSIVE
    ========================================================= */
    @media(max-width:1150px){
      .services-grid{grid-template-columns:repeat(2,1fr)}
      .teachers-grid{grid-template-columns:repeat(3,1fr)}
      .hero-grid,.app-layout{gap:4vw}
    }
    @media(max-width:850px){
      #three-canvas,.grain,.cursor-glow{display:none}
      .site-header,.floating-chip,.service-detail,.subject-orb{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
      .cursor-glow{display:none}
      .site-header{top:10px;min-height:68px;grid-template-columns:1fr auto;width:94vw;border-radius:20px}
      .nav{display:none}.header-cta{font-size:12px;min-height:40px;padding:0 13px}.brand-copy small{display:none}.brand-logo{width:48px;height:48px;flex-basis:48px}.brand-orbit{width:58px;height:58px}
      .intro-journey{height:275vh}.intro-core{width:88vw}.intro-logo{width:82vw;max-width:340px}.intro-ring.r2{inset:32px}.intro-ring.r3{inset:62px}.intro-caption strong{font-size:28px}.intro-bridge h2{font-size:clamp(48px,14vw,78px)}
      .hero{min-height:132vh;padding-top:110px}.hero-grid{grid-template-columns:1fr;gap:25px}.hero-copy{padding-top:35px}.hero h1{font-size:clamp(50px,14vw,78px)}.hero-copy>p{font-size:18px}.hero-stats{gap:10px}.hero-stats strong{font-size:18px}.hero-stats span{font-size:10px}.hero-visual{min-height:520px}.visual-halo{width:390px}.exam-stack{width:300px;height:410px}.paper-front{padding:22px}.answer-row{height:51px}.hero-brand-float{width:118px;height:118px;top:-18px;right:-14px}.hero-brand-float img{width:102px;height:90px}
      .app-section,.services-section,.teachers-section{padding:100px 0}.app-layout{grid-template-columns:1fr}.phone-stage{order:2;min-height:620px}.app-copy{order:1}.section-heading{grid-template-columns:1fr;gap:20px;margin-bottom:45px}.section-heading h2,.app-copy h2{font-size:clamp(46px,12vw,70px)}
      .services-grid{grid-template-columns:1fr}.service-card{min-height:260px}.service-card strong{margin-top:45px}.service-detail{grid-template-columns:1fr;gap:14px}.detail-number{font-size:36px}.detail-badge{justify-self:start}
      .teachers-grid{grid-template-columns:1fr}.teacher-card{min-height:310px}.stats-grid{grid-template-columns:1fr}.stat:not(:last-child)::after{top:auto;bottom:0;right:20%;left:20%;width:auto;height:1px}.footer-inner{flex-direction:column;text-align:center}
      .social-strip{padding:26px 0 30px}.social-bar{grid-template-columns:1fr;border-radius:23px}.social-item{min-height:84px;padding:15px 17px}.social-icon{width:50px;height:50px;flex-basis:50px}.social-copy strong{font-size:16px}
    }

    @media(max-height:760px){
      .intro-core{top:45%;width:min(450px,68vw)}
      .intro-logo{width:min(320px,56vw);max-height:320px}
      .intro-caption{bottom:3vh}
      .intro-caption strong{font-size:clamp(22px,3vw,34px)}
      .scroll-line{height:38px;margin-top:10px}
      .app-cinema-copy strong{font-size:clamp(28px,4.6vw,52px)}
    }

    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
  

    /* ===== Premium teacher portrait cards ===== */
    .teachers-grid{gap:20px}
    .teacher-card{
      min-height:535px;
      padding:24px 24px 26px;
      display:flex;
      flex-direction:column;
      overflow:hidden;
      isolation:isolate;
      border:1px solid rgba(199,169,108,.16);
      background:
        radial-gradient(circle at 50% 12%,rgba(90,169,157,.16),transparent 34%),
        linear-gradient(160deg,rgba(25,63,56,.82),rgba(5,21,18,.96));
      box-shadow:0 24px 70px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.03);
    }
    .teacher-card::before{
      content:"";
      position:absolute;
      inset:0;
      z-index:-1;
      background:
        linear-gradient(115deg,transparent 0 38%,rgba(255,255,255,.018) 38% 39%,transparent 39% 100%),
        radial-gradient(circle at 50% -8%,rgba(199,169,108,.12),transparent 38%);
      pointer-events:none;
    }
    .teacher-card::after{
      content:"";
      position:absolute;
      width:260px;height:260px;
      left:50%;top:28px;
      transform:translateX(-50%);
      border-radius:50%;
      border:1px solid rgba(199,169,108,.08);
      box-shadow:0 0 0 28px rgba(255,255,255,.008),0 0 0 56px rgba(255,255,255,.004);
      pointer-events:none;
    }
    .teacher-media{
      position:relative;
      height:295px;
      margin:-10px -10px 18px;
      display:flex;
      align-items:flex-end;
      justify-content:center;
      overflow:visible;
      transform:translateZ(34px);
      border:0;
      background:transparent;
      box-shadow:none;
    }
    .teacher-media::before{
      content:"";
      position:absolute;
      left:50%;bottom:10px;
      width:70%;height:54%;
      transform:translateX(-50%);
      border-radius:50%;
      background:radial-gradient(circle,rgba(76,201,185,.18),rgba(76,201,185,.05) 42%,transparent 72%);
      filter:blur(8px);
      pointer-events:none;
    }
    .teacher-media::after{
      content:"";
      position:absolute;
      left:12%;right:12%;bottom:2px;
      height:34px;
      border-radius:50%;
      background:radial-gradient(ellipse,rgba(0,0,0,.36),transparent 68%);
      filter:blur(8px);
      pointer-events:none;
    }
    .teacher-photo{
      position:relative;
      z-index:2;
      width:100%;
      height:100%;
      display:block;
      object-fit:contain;
      object-position:center bottom;
      transform-origin:center bottom;
      transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .55s ease;
      filter:drop-shadow(0 22px 24px rgba(0,0,0,.34)) saturate(.98) contrast(1.02);
      backface-visibility:hidden;
    }
    .teacher-card:hover .teacher-photo{
      transform:translateY(-7px) scale(1.035);
      filter:drop-shadow(0 28px 30px rgba(0,0,0,.40)) saturate(1.03) contrast(1.04);
    }
    .teacher-photo.photo-ahmed{transform:scale(.93);transform-origin:center bottom}
    .teacher-card:hover .teacher-photo.photo-ahmed{transform:translateY(-7px) scale(.965)}
    .teacher-photo.photo-moataz{transform:scale(1.02);transform-origin:center bottom}
    .teacher-card:hover .teacher-photo.photo-moataz{transform:translateY(-7px) scale(1.055)}
    .teacher-photo.photo-daleer{transform:scale(.92);transform-origin:center bottom}
    .teacher-card:hover .teacher-photo.photo-daleer{transform:translateY(-7px) scale(.955)}
    .teacher-photo.photo-hussein{transform:scale(.94);transform-origin:center bottom}
    .teacher-card:hover .teacher-photo.photo-hussein{transform:translateY(-7px) scale(.975)}
    .teacher-photo.photo-qusay{transform:scale(.94);transform-origin:center bottom;object-position:center top}
    .teacher-card:hover .teacher-photo.photo-qusay{transform:translateY(-7px) scale(.975)}
    .teacher-photo.photo-nadia{transform:scale(.94);transform-origin:center bottom;object-position:center bottom}
    .teacher-card:hover .teacher-photo.photo-nadia{transform:translateY(-7px) scale(.975)}
    .teacher-placeholder{
      position:relative;
      z-index:2;
      width:100%;height:100%;
      display:grid;
      place-items:center;
    }
    .teacher-placeholder .teacher-symbol{
      width:92px;height:92px;margin:0;
      border-radius:30px;
      font-size:34px;
      transform:none;
      background:rgba(255,255,255,.035);
      border:1px solid rgba(199,169,108,.15);
      box-shadow:0 15px 35px rgba(0,0,0,.18);
    }
    .teacher-subject{
      position:relative;
      z-index:3;
      width:max-content;
      margin:0 auto 2px;
      padding:7px 13px;
      border-radius:999px;
      color:#d8bc7a;
      font-size:11px;
      font-weight:800;
      letter-spacing:.02em;
      background:rgba(199,169,108,.08);
      border:1px solid rgba(199,169,108,.16);
      transform:translateZ(34px);
    }
    .teacher-card h3{
      position:relative;
      z-index:3;
      margin-top:10px;
      text-align:center;
      font-size:25px;
      color:#f5eedf;
      transform:translateZ(42px);
    }
    .teacher-card p{
      position:relative;
      z-index:3;
      margin:12px auto 34px;
      max-width:92%;
      text-align:center;
      color:#90a59f;
      font-size:13px;
      line-height:1.85;
      transform:translateZ(28px);
    }
    .teacher-line{right:22%;left:22%;bottom:24px;background:linear-gradient(90deg,transparent,rgba(199,169,108,.58),transparent)}
    .teacher-card:hover{
      border-color:rgba(199,169,108,.34);
      box-shadow:0 34px 90px rgba(0,0,0,.30),0 0 40px rgba(63,165,149,.07);
      background:
        radial-gradient(circle at 50% 12%,rgba(90,169,157,.22),transparent 36%),
        linear-gradient(160deg,rgba(31,76,67,.88),rgba(5,20,17,.98));
    }
    @media(max-width:850px){
      .teacher-card{min-height:500px;padding:18px 18px 24px}
      .teacher-media{height:285px;margin:-6px -6px 16px}
      .teacher-card h3{font-size:23px}
      .teacher-card p{font-size:12.5px;margin-bottom:30px}
      .teacher-photo.photo-ahmed{transform:scale(.90)}
      .teacher-card:hover .teacher-photo.photo-ahmed{transform:translateY(-5px) scale(.925)}
      .teacher-photo.photo-moataz{transform:scale(.98)}
      .teacher-card:hover .teacher-photo.photo-moataz{transform:translateY(-5px) scale(1.015)}
      .teacher-photo.photo-daleer{transform:scale(.90)}
      .teacher-card:hover .teacher-photo.photo-daleer{transform:translateY(-5px) scale(.935)}
      .teacher-photo.photo-hussein{transform:scale(.92)}
      .teacher-card:hover .teacher-photo.photo-hussein{transform:translateY(-5px) scale(.955)}
      .teacher-photo.photo-qusay{transform:scale(.92)}
      .teacher-card:hover .teacher-photo.photo-qusay{transform:translateY(-5px) scale(.955)}
      .teacher-photo.photo-nadia{transform:scale(.92)}
      .teacher-card:hover .teacher-photo.photo-nadia{transform:translateY(-5px) scale(.955)}
    }

/* CSP-safe replacements for the former inline chart styles */
.ui-chart i:nth-child(1){--h:42%}
.ui-chart i:nth-child(2){--h:66%}
.ui-chart i:nth-child(3){--h:52%}
.ui-chart i:nth-child(4){--h:83%}
.ui-chart i:nth-child(5){--h:72%}

.store-btn.disabled[aria-disabled="true"]{pointer-events:none}


/* =========================================================
   MOBILE RESPONSIVE HARDENING — MUSA3D
   Prevents horizontal overflow, card/label collisions,
   oversized hero/app elements and small-screen header overlap.
========================================================= */

html, body{
  max-width:100%;
  overflow-x:clip;
}

section[id]{
  scroll-margin-top:92px;
}

a, button{
  touch-action:manipulation;
}

@media (max-width:850px){
  :root{--mobile-gutter:16px}

  body{
    width:100%;
    min-width:0;
    overflow-x:clip;
  }

  .page-width{
    width:calc(100% - 32px);
    max-width:100%;
    margin-inline:auto;
  }

  /* Header */
  .site-header{
    top:8px;
    width:calc(100% - 18px);
    min-height:64px;
    padding:0 10px;
    grid-template-columns:minmax(0,1fr) auto;
    gap:8px;
    border-radius:18px;
  }

  .brand{
    min-width:0;
    gap:10px;
  }

  .brand-logo{
    width:44px;
    height:44px;
    flex-basis:44px;
  }

  .brand-orbit{
    right:-5px;
    width:52px;
    height:52px;
  }

  .brand-copy{
    min-width:0;
  }

  .brand-copy strong{
    font-size:16px;
    white-space:nowrap;
  }

  .header-cta{
    margin-right:0;
    min-height:40px;
    padding:0 11px;
    gap:7px;
    font-size:11px;
    white-space:nowrap;
  }

  /* Intro */
  .intro-journey{
    height:185svh;
  }

  .intro-sticky{
    height:100svh;
  }

  .intro-core{
    width:86vw;
    max-width:390px;
  }

  .intro-logo{
    width:76vw;
    max-width:310px;
  }

  .intro-caption{
    bottom:6svh;
    width:88vw;
  }

  .intro-caption strong{
    font-size:clamp(24px,7vw,31px);
    line-height:1.25;
  }

  .intro-caption span{
    font-size:12px;
    line-height:1.7;
  }

  .intro-bridge h2{
    font-size:clamp(42px,13vw,68px);
    letter-spacing:-1px;
  }

  /* Hero */
  .hero{
    min-height:auto;
    padding:100px 0 72px;
  }

  .hero-grid{
    min-height:auto;
    grid-template-columns:1fr;
    gap:28px;
  }

  .hero-copy{
    padding:22px 0 0;
    min-width:0;
  }

  .hero h1{
    margin-top:22px;
    font-size:clamp(42px,13vw,66px);
    line-height:.98;
    letter-spacing:-1px;
    overflow-wrap:anywhere;
  }

  .hero h1 em{
    margin-top:9px;
  }

  .hero-copy>p{
    margin-top:22px;
    font-size:16px;
    line-height:1.85;
  }

  .hero-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
  }

  .btn{
    width:100%;
    min-height:50px;
  }

  .hero-stats{
    margin-top:30px;
    padding-top:18px;
    gap:0;
  }

  .hero-stats div{
    min-width:0;
    align-items:center;
    text-align:center;
    padding-inline:4px;
  }

  .hero-stats strong{
    text-align:center;
    font-size:17px;
  }

  .hero-stats span{
    font-size:9.5px;
    line-height:1.45;
  }

  .hero-visual{
    width:100%;
    min-height:450px;
    overflow:hidden;
  }

  .visual-halo{
    width:min(350px,88vw);
  }

  .exam-stack{
    width:min(278px,76vw);
    height:390px;
  }

  .paper-back{
    transform:translate3d(-26px,14px,-90px) rotateY(-8deg) rotateZ(-4deg);
  }

  .paper-mid{
    transform:translate3d(-14px,7px,-42px) rotateY(-4deg) rotateZ(-2deg);
  }

  .paper-front{
    padding:20px;
    border-radius:24px;
    transform:translateZ(18px) rotateY(-4deg) rotateX(2deg);
  }

  .paper-head{
    font-size:18px;
  }

  .answer-row{
    height:48px;
  }

  .hero-brand-float{
    width:105px;
    height:105px;
    top:-8px;
    right:0;
  }

  .hero-brand-float img{
    width:88px;
    height:80px;
  }

  /* Main sections */
  .services-section,
  .teachers-section,
  .app-section{
    padding:76px 0;
  }

  .section-heading{
    grid-template-columns:1fr;
    gap:15px;
    margin-bottom:34px;
  }

  .section-heading h2,
  .app-copy h2{
    font-size:clamp(38px,11vw,58px);
    line-height:1.06;
    letter-spacing:-.5px;
  }

  .section-heading>p,
  .app-copy>p{
    max-width:100%;
    font-size:16px;
    line-height:1.8;
  }

  /* Services */
  .services-grid{
    grid-template-columns:1fr;
    gap:12px;
  }

  .service-card{
    min-height:225px;
    padding:20px;
    border-radius:22px;
  }

  .service-card strong{
    margin-top:38px;
    font-size:21px;
  }

  .service-card small{
    font-size:13px;
  }

  .service-detail{
    min-height:0;
    padding:22px;
    grid-template-columns:1fr;
    gap:12px;
    border-radius:22px;
  }

  .service-detail h3{
    font-size:25px;
  }

  .service-detail p{
    font-size:14px;
  }

  .detail-badge{
    justify-self:stretch;
    justify-content:center;
    text-align:center;
  }

  /* App section */
  .app-layout{
    grid-template-columns:1fr;
    gap:28px;
  }

  .app-copy{
    order:1;
    min-width:0;
  }

  .phone-stage{
    order:2;
    min-height:555px;
    overflow:hidden;
  }

  .phone-3d{
    width:min(265px,76vw);
    height:540px;
    transform:none;
  }

  .phone-shadow{
    width:min(280px,75vw);
  }

  .store-buttons{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
  }

  .store-btn{
    width:100%;
    min-width:0;
  }

  .app-download-layout{
    padding-top:58px;
  }

  /* Mobile cinematic app */
  .app-cinematic-stage{
    height:100svh;
    min-height:100svh;
    overflow:hidden;
  }

  .draw-board{
    width:min(330px,80vw);
    border-radius:26px;
  }

  .drawing-pen{
    max-height:145px;
  }

  .floating-paper{
    opacity:.20!important;
  }

  .app-cinema-copy{
    width:92vw;
    bottom:2.5svh;
    padding-inline:12px;
  }

  .app-cinema-copy strong{
    font-size:clamp(27px,8vw,40px);
    line-height:1.12;
  }

  .app-cinema-copy span{
    font-size:13px;
    line-height:1.55;
  }

  /* Teachers cinematic */
  .teachers-cinematic-stage{
    height:100svh;
    min-height:100svh;
    overflow:hidden;
  }

  .plane-cinema{
    width:100vw!important;
    height:100svh!important;
    overflow:hidden!important;
  }

  .elite-plane-wrap{
    width:min(440px,90vw);
    left:50%;
    top:45%;
  }

  .plane-name{
    min-width:88px;
    max-width:40vw;
    padding:6px 7px;
    gap:5px;
    border-radius:11px;
    font-size:9px;
    line-height:1.2;
    white-space:nowrap;
  }

  .plane-name i{
    width:5px;
    height:5px;
  }

  .plane-name::after{
    width:26px;
  }

  .name-1{right:2%;top:23%}
  .name-4{left:2%;top:23%}
  .name-2{right:2%;bottom:27%}
  .name-3{left:2%;bottom:27%}
  .name-5{top:10%}
  .name-6{top:69%}

  .name-5::after,
  .name-6::after{
    width:24px;
  }

  .teachers-cinema-caption{
    width:88vw;
    bottom:3.5svh!important;
  }

  .teachers-cinema-caption strong{
    font-size:clamp(22px,6.4vw,31px);
    line-height:1.18;
  }

  .teachers-cinema-caption span{
    font-size:10.5px;
  }

  /* Teacher cards */
  .teachers-content{
    padding-top:42px;
  }

  .teachers-grid{
    grid-template-columns:1fr;
    gap:16px;
  }

  .teacher-card{
    min-height:455px;
    padding:16px 16px 22px;
    border-radius:22px;
  }

  .teacher-card::after{
    width:220px;
    height:220px;
    top:20px;
  }

  .teacher-media{
    height:248px;
    margin:-4px -4px 12px;
  }

  .teacher-subject{
    padding:6px 11px;
    font-size:10.5px;
  }

  .teacher-card h3{
    margin-top:8px;
    font-size:21px;
  }

  .teacher-card p{
    margin:9px auto 28px;
    max-width:100%;
    font-size:12px;
    line-height:1.7;
  }

  .teacher-line{
    bottom:20px;
  }

  /* Disable desktop hover lift on touch screens */
  .teacher-card:hover{
    transform:none;
  }

  .teacher-card:hover .teacher-photo,
  .teacher-card:hover .teacher-photo.photo-ahmed,
  .teacher-card:hover .teacher-photo.photo-moataz,
  .teacher-card:hover .teacher-photo.photo-daleer,
  .teacher-card:hover .teacher-photo.photo-hussein,
  .teacher-card:hover .teacher-photo.photo-qusay,
  .teacher-card:hover .teacher-photo.photo-nadia{
    filter:drop-shadow(0 22px 24px rgba(0,0,0,.34)) saturate(.98) contrast(1.02);
  }

  /* Stats */
  .stats-section{
    padding:54px 0 72px;
  }

  .stats-grid{
    grid-template-columns:1fr;
  }

  .stat{
    padding:34px 18px;
  }

  .stat strong{
    font-size:clamp(42px,13vw,58px);
  }

  /* Social / footer */
  .social-strip{
    padding:24px 0 28px;
  }

  .social-bar{
    width:100%;
    grid-template-columns:1fr;
    gap:8px;
    padding:8px;
    border-radius:21px;
  }

  .social-item{
    width:100%;
    min-width:0;
    min-height:78px;
    padding:13px 14px;
    gap:12px;
    border-radius:17px;
  }

  .social-icon{
    width:46px;
    height:46px;
    flex-basis:46px;
    border-radius:14px;
  }

  .social-copy{
    min-width:0;
  }

  .social-copy strong{
    max-width:100%;
    font-size:15px;
    overflow-wrap:anywhere;
  }

  .social-arrow{
    margin-right:auto;
  }

  .footer-inner{
    min-height:0;
    flex-direction:column;
    text-align:center;
    padding-top:24px;
  }
}

@media (max-width:480px){
  .site-header{
    top:6px;
    width:calc(100% - 12px);
    min-height:60px;
    padding-inline:8px;
  }

  .brand{
    gap:7px;
  }

  .brand-logo{
    width:40px;
    height:40px;
    flex-basis:40px;
  }

  .brand-orbit{
    width:48px;
    height:48px;
  }

  .brand-copy strong{
    font-size:14px;
  }

  .header-cta{
    min-height:37px;
    padding:0 9px;
    font-size:10px;
    gap:5px;
  }

  .hero h1{
    font-size:clamp(38px,12vw,54px);
  }

  .hero-copy>p{
    font-size:15px;
  }

  .hero-stats strong{
    font-size:15px;
  }

  .hero-stats span{
    font-size:8.5px;
  }

  .hero-visual{
    min-height:420px;
  }

  .exam-stack{
    width:min(260px,74vw);
    height:365px;
  }

  .phone-stage{
    min-height:525px;
  }

  .phone-3d{
    width:min(248px,74vw);
    height:515px;
  }

  .floating-paper{
    display:none!important;
  }

  .plane-name{
    min-width:84px;
    max-width:43vw;
    padding:6px 7px;
    font-size:8.5px;
  }

  .name-1{right:1%;top:24%}
  .name-4{left:1%;top:24%}
  .name-2{right:1%;bottom:28%}
  .name-3{left:1%;bottom:28%}
  .name-5{top:11%}
  .name-6{top:68%}

  .teacher-card{
    min-height:435px;
  }

  .teacher-media{
    height:232px;
  }
}

@media (max-width:360px){
  .page-width{
    width:calc(100% - 24px);
  }

  .brand-copy strong{
    font-size:13px;
  }

  .brand-logo{
    width:37px;
    height:37px;
    flex-basis:37px;
  }

  .brand-orbit{
    width:44px;
    height:44px;
  }

  .header-cta{
    padding-inline:7px;
    font-size:9.5px;
  }

  .plane-name{
    min-width:78px;
    font-size:8px;
  }

  .social-item{
    padding-inline:11px;
  }
}

@media (hover:none) and (pointer:coarse){
  .btn:hover,
  .store-btn:hover:not(.disabled),
  .social-item:hover{
    transform:none;
  }
}


/* =========================================================
   PERFORMANCE PASS — MOBILE / LOW-COST VISUALS
========================================================= */
@media (max-width:850px){
  .grain,.cursor-glow{display:none!important}
  .site-header,.social-bar{
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  .scene-glow{opacity:.20!important}
  .floating-chip{box-shadow:0 10px 22px rgba(0,0,0,.16)}
  .teacher-card,.service-card,.service-detail{box-shadow:none}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{
    animation-duration:.001ms!important;
    animation-iteration-count:1!important;
    transition-duration:.001ms!important;
  }
}


/* =========================================================
   FINAL AIRCRAFT BALANCE GUARD
   Keeps the teacher aircraft centered, smaller and clear of
   the headline on desktop/tablet/mobile.
========================================================= */
@media (min-width:851px){
  #teachersCinemaStage .plane-cinema{
    width:min(1120px,92vw)!important;
    height:min(720px,82vh)!important;
  }
  #teachersCinemaStage .elite-plane-wrap{
    left:50%!important;
    top:46%!important;
    width:min(920px,76vw)!important;
  }
  #teachersCinemaStage .teachers-cinema-caption{
    width:min(760px,82vw)!important;
    bottom:5vh!important;
  }
  #teachersCinemaStage .teachers-cinema-caption strong{
    font-size:clamp(27px,3.2vw,46px)!important;
  }
}
@media (max-width:850px){
  #teachersCinemaStage .elite-plane-wrap{
    left:50%!important;
    top:45%!important;
    width:min(440px,90vw)!important;
  }
  #teachersCinemaStage .teachers-cinema-caption{
    width:88vw!important;
    bottom:3.5svh!important;
  }
}
@media (max-width:480px){
  #teachersCinemaStage .elite-plane-wrap{
    top:44%!important;
    width:min(400px,88vw)!important;
  }
  #teachersCinemaStage .teachers-cinema-caption{
    bottom:4svh!important;
  }
}


/* =========================================================
   MUSA3D GALAXY INTRO
   Emerald / teal / gold universe matching the site identity.
========================================================= */
.intro-sticky{
  isolation:isolate;
}

.galaxy-canvas{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  z-index:0;
  display:block;
  pointer-events:none;
  opacity:1;
  transform:translateZ(0);
}

.galaxy-core-glow{
  position:absolute;
  left:50%;
  top:48%;
  width:min(760px,58vw);
  aspect-ratio:1;
  z-index:1;
  pointer-events:none;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:
    radial-gradient(circle,
      rgba(242,234,217,.19) 0 2%,
      rgba(199,169,108,.20) 5%,
      rgba(127,180,170,.14) 15%,
      rgba(39,101,91,.08) 30%,
      transparent 66%);
  filter:blur(10px);
  mix-blend-mode:screen;
  opacity:.92;
}

.galaxy-vignette{
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:
    radial-gradient(circle at 50% 47%,
      transparent 0 25%,
      rgba(2,10,9,.08) 43%,
      rgba(2,10,9,.52) 78%,
      rgba(2,8,7,.88) 100%),
    linear-gradient(180deg,rgba(2,10,9,.05),rgba(2,10,9,.20));
}

.intro-grid,
.intro-aura,
.intro-scan{
  z-index:3;
}

.intro-grid{
  opacity:.08;
}

.intro-aura{
  opacity:.72;
  mix-blend-mode:screen;
}

.intro-scan{
  opacity:.18;
}

.intro-core{
  z-index:5;
}

.intro-caption{
  z-index:6;
}

.intro-bridge{
  z-index:7;
}

.intro-galaxy-tag{
  display:block!important;
  margin:8px 0 2px!important;
  color:rgba(199,169,108,.88)!important;
  direction:ltr;
  font-family:"Space Grotesk",sans-serif;
  font-size:10px!important;
  font-weight:700;
  letter-spacing:.22em;
  text-transform:uppercase;
}

@media (max-width:850px){
  .galaxy-core-glow{
    top:46%;
    width:min(560px,92vw);
    opacity:.74;
    filter:blur(8px);
  }

  .galaxy-vignette{
    background:
      radial-gradient(circle at 50% 45%,transparent 0 21%,rgba(2,10,9,.14) 45%,rgba(2,9,8,.76) 88%),
      linear-gradient(180deg,rgba(2,10,9,.02),rgba(2,10,9,.18));
  }

  .intro-galaxy-tag{
    font-size:8.5px!important;
    letter-spacing:.15em;
  }
}

@media (prefers-reduced-motion:reduce){
  .galaxy-canvas{opacity:.60}
  .galaxy-core-glow{opacity:.55}
}


/* =========================================================
   MOBILE INTRO FIRST-PAINT STABILITY
   Gives the intro logo a stable centered box before GSAP runs.
========================================================= */
#intro .intro-core{
  left:50%!important;
  top:50%!important;
  margin:0!important;
}

@media (max-width:850px){
  #intro .intro-core{
    left:50%!important;
    top:50%!important;
  }
}

@media (max-height:760px) and (max-width:850px){
  #intro .intro-core{
    top:45%!important;
  }
}
