@font-face{font-family:Almarai;src:url('assets/fonts/Almarai-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Almarai;src:url('assets/fonts/Almarai-Bold.ttf') format('truetype');font-style:normal;font-weight:700;font-display:swap}
:root{--green2:#061c17;--gold:#d6ad67;--gold2:#f5d89d;--ease:cubic-bezier(.16,1,.3,1)}
body,button,input,select{font-family:Almarai,Tahoma,sans-serif}
body{cursor:none;background-image:radial-gradient(circle at 12% 25%,rgba(214,173,103,.055),transparent 22%)}a,button{cursor:none}.scroll-progress{position:fixed;top:0;right:0;width:0;height:2px;background:linear-gradient(90deg,#9c733c,var(--gold2));box-shadow:0 0 16px var(--gold);z-index:100}.cursor-dot,.cursor-ring{position:fixed;top:0;left:0;pointer-events:none;border-radius:50%;z-index:9998;transform:translate(-50%,-50%)}.cursor-dot{width:5px;height:5px;background:var(--gold2)}.cursor-ring{width:35px;height:35px;border:1px solid rgba(214,173,103,.75);transition:width .3s var(--ease),height .3s var(--ease),background .3s}.cursor-ring.hover{width:58px;height:58px;background:rgba(214,173,103,.12)}
.header{transition:height .5s var(--ease),background .5s}.header.scrolled{background:linear-gradient(90deg,rgba(5,25,20,.97),rgba(19,55,46,.94));box-shadow:0 14px 50px rgba(0,0,0,.18)}.brand-mark{background:linear-gradient(145deg,rgba(245,216,157,.12),transparent);box-shadow:inset 0 0 20px rgba(214,173,103,.12),0 0 30px rgba(214,173,103,.08)}.pill{background:rgba(255,255,255,.04);backdrop-filter:blur(12px);transition:.35s}.pill:hover{background:var(--gold);color:var(--green2);border-color:var(--gold);transform:translateY(-3px)}
.hero{background:radial-gradient(circle at 79% 26%,#376b5c 0,transparent 24%),radial-gradient(circle at 13% 92%,rgba(169,73,47,.3),transparent 27%),linear-gradient(135deg,#173b32,#041a15);isolation:isolate}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(245,216,157,.07) 49%,transparent 62%);transform:translateX(-100%);animation:heroLight 8s 1.2s infinite}.hero:after{content:'✦';position:absolute;top:17%;left:5%;font-size:45vw;line-height:1;color:rgba(255,255,255,.012);z-index:-1}@keyframes heroLight{50%,100%{transform:translateX(100%)}}.hero h1{background:linear-gradient(180deg,#fff 15%,#d5dfdb 88%);-webkit-background-clip:text;color:transparent;text-shadow:0 25px 60px rgba(0,0,0,.16)}.hero h1 em{background:linear-gradient(90deg,#aa7c3d,#f5d89d,#bd8f4e);background-size:200%;-webkit-background-clip:text;color:transparent;animation:goldFlow 5s linear infinite}@keyframes goldFlow{to{background-position:200%}}.arch{border:1px solid rgba(245,216,157,.35);box-shadow:-35px 45px 100px rgba(0,0,0,.48),inset 0 0 0 10px rgba(255,255,255,.025)}.arch:before{content:'';position:absolute;inset:14px;border:1px solid rgba(255,255,255,.12);border-radius:245px 245px 0 0;z-index:2;pointer-events:none}.float-card{backdrop-filter:blur(18px);background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(235,224,204,.85));border:1px solid rgba(255,255,255,.7)}.primary{position:relative;overflow:hidden;background:linear-gradient(110deg,#ae7e3e,var(--gold2),#b88544);background-size:200%;box-shadow:0 12px 30px rgba(145,103,49,.16);transition:.45s var(--ease)}.primary:before{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.45),transparent 70%);transform:translateX(-130%);transition:.65s}.primary:hover:before{transform:translateX(130%)}.primary:hover{transform:translateY(-5px) scale(1.015);box-shadow:0 20px 45px rgba(145,103,49,.3)}
.marquee{height:82px;background:linear-gradient(90deg,#a8472f,#bd583b);color:#f9e9cf;overflow:hidden;display:flex;align-items:center;border-block:1px solid rgba(255,255,255,.16);box-shadow:0 15px 45px rgba(93,38,24,.12)}.marquee div{display:flex;align-items:center;gap:35px;width:max-content;white-space:nowrap;animation:marquee 24s linear infinite}.marquee span{font-size:21px}.marquee i{font-style:normal;color:var(--gold2)}@keyframes marquee{to{transform:translateX(50%)}}
.section{position:relative}.section-label{letter-spacing:1px}.section-label:after{background:linear-gradient(90deg,var(--gold),transparent)}h2 em{position:relative}h2 em:after{content:'';position:absolute;right:2%;left:2%;bottom:-7px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);transform:scaleX(0);transition:1.2s .35s var(--ease)}.visible h2 em:after,h2.visible em:after{transform:scaleX(1)}.intro:before{content:'';position:absolute;width:420px;height:420px;border:1px solid rgba(200,158,88,.12);border-radius:50%;left:-220px;top:13%}.mosaic figure,.gallery-grid figure{box-shadow:0 24px 55px rgba(17,42,35,.12);position:relative}.mosaic figure:after,.gallery-grid figure:after{content:'';position:absolute;inset:0;border:1px solid rgba(255,255,255,.35);margin:9px;pointer-events:none}.quote{background:linear-gradient(120deg,#f0eadd,#fbf7ee);box-shadow:0 18px 40px rgba(46,59,54,.06)}
.courses{background:radial-gradient(circle at 12% 28%,rgba(214,173,103,.11),transparent 23%),radial-gradient(circle at 88% 90%,rgba(169,73,47,.16),transparent 28%),#061e19;overflow:hidden}.courses:after{content:'ACADEMY';position:absolute;left:-30px;bottom:-10px;font:700 12vw Arial;color:rgba(255,255,255,.018);letter-spacing:15px}.course{position:relative;z-index:1;transition:.5s var(--ease)}.course:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(214,173,103,.12),transparent);transform:scaleX(0);transform-origin:right;transition:.5s var(--ease);z-index:-1}.course:hover:before{transform:scaleX(1)}.course:hover{padding-right:25px;transform:translateX(-8px)}.course-icon{text-shadow:0 0 25px rgba(214,173,103,.35)}.course button{transition:.45s var(--ease)}.course:hover button{transform:rotate(-45deg);box-shadow:0 8px 25px rgba(214,173,103,.25)}
.experience-img{filter:drop-shadow(0 28px 40px rgba(20,46,38,.18))}.experience-img:after{content:'';position:absolute;inset:0;background:linear-gradient(145deg,transparent 55%,rgba(7,31,25,.34))}.steps>div{transition:.4s var(--ease)}.steps>div:hover{transform:translateX(-10px);padding-right:15px}.steps b{background:linear-gradient(145deg,#fff,#eee5d4);box-shadow:0 7px 20px rgba(35,57,49,.1)}
.gallery{background:radial-gradient(circle at 90% 20%,rgba(214,173,103,.18),transparent 26%),#efe7d9}.gallery-grid figure{transition:.55s var(--ease)}.gallery-grid figure:hover{transform:translateY(-12px) rotateX(2deg)}.gallery-grid figcaption{backdrop-filter:blur(2px)}.honors{background:radial-gradient(circle at 80% 30%,rgba(245,216,157,.14),transparent 28%),linear-gradient(145deg,#8c3524,#b95135)}.cert-stack img{box-shadow:0 35px 75px rgba(52,13,7,.45),0 0 0 1px rgba(255,255,255,.45)}.form{border:1px solid rgba(200,158,88,.2);box-shadow:0 35px 90px rgba(29,46,40,.12);position:relative}.form:before{content:'✦';position:absolute;top:-24px;left:32px;width:48px;height:48px;background:var(--green);color:var(--gold);display:grid;place-items:center;box-shadow:0 12px 30px rgba(23,59,50,.25)}footer{background:radial-gradient(circle at 10% 20%,rgba(214,173,103,.09),transparent 20%),#051a16}
@media(max-width:900px){body,a,button{cursor:auto}.cursor-dot,.cursor-ring{display:none}.hero:after{top:25%;font-size:90vw}.marquee{height:64px}.marquee span{font-size:15px}.marquee div{gap:24px}.header nav{backdrop-filter:blur(25px);border-bottom:1px solid rgba(214,173,103,.25)}.course:hover{transform:none}.gallery-grid figure:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.marquee div,.hero:before,.hero h1 em{animation:none}.cursor-dot,.cursor-ring{display:none}body,a,button{cursor:auto}}

/* Mobile layout isolation: prevent RTL intrinsic-width overflow */
@media(max-width:900px){
  html,body{width:100%;max-width:100%;overflow-x:clip}
  body{background:#fbf8f1}
  main,.hero,.section,.marquee,footer{width:100%;max-width:100%;min-width:0;overflow-x:hidden}
  .hero{display:flex!important;flex-direction:column;align-items:stretch;padding:112px 22px 58px!important;min-height:100svh}
  .hero-copy,.hero-art,.intro-grid>* ,.section-head>* ,.gallery-head>*,.honors>*,.register>*{width:100%;max-width:100%;min-width:0}
  .hero-copy{z-index:3}
  .hero h1{font-size:clamp(44px,13vw,66px)!important;line-height:1.18;letter-spacing:-2.5px!important;max-width:100%;overflow-wrap:anywhere;margin:18px 0 24px}
  .hero-copy>p{width:100%;max-width:34rem;font-size:13px;line-height:2}
  .hero-actions{width:100%;max-width:100%;gap:18px;margin:28px 0 38px}
  .hero-actions .primary{min-width:0;width:min(100%,230px)}
  .hero-stats{width:100%!important;max-width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px!important}
  .hero-stats>div{min-width:0;padding-left:6px}
  .hero-stats small{white-space:normal;font-size:9px;line-height:1.6}
  .hero-art{margin:55px 0 0!important;padding:0 10px;transform:none!important}
  .arch{width:100%;max-width:100%;height:min(118vw,520px);transform:none;border-radius:48vw 48vw 0 0}
  .arch:before{border-radius:45vw 45vw 0 0}
  .float-card{right:0;bottom:7%;max-width:85%;padding:14px 16px}
  .float-card b{font-size:12px}.float-card small{font-size:9px}
  .orb-a{width:100vw;height:100vw;left:-55vw}.orb-b{width:65vw;height:65vw;left:-28vw}
  .marquee div{max-width:none}
  .section{padding-right:22px!important;padding-left:22px!important}
  .intro-grid,.experience,.honors,.register{width:100%;max-width:100%;gap:54px}
  .mosaic,.gallery-grid{width:100%;max-width:100%}
  .mosaic figure,.gallery-grid figure{min-width:0}
  .course{width:100%;max-width:100%;min-width:0;padding:22px 0;grid-template-columns:28px 38px minmax(0,1fr) 40px!important}
  .course h3,.course p{max-width:100%;overflow-wrap:anywhere}
  .experience-img,.cert-stack{width:100%;max-width:100%}
  .form{width:100%;max-width:100%}.form input,.form select{width:100%;min-width:0}
  footer{padding-right:22px!important;padding-left:22px!important}
  .bottom-nav{width:100%;max-width:100%;right:0;left:0}
}
@media(max-width:420px){
  .brand b{font-size:11px}.brand small{font-size:8px}.brand-mark{width:38px;height:38px}
  .hero{padding-right:18px!important;padding-left:18px!important}
  .hero h1{font-size:43px!important}
  .section{padding-right:18px!important;padding-left:18px!important}
  .hero-stats b{font-size:11px}
  .gallery-grid{grid-template-columns:1fr!important}.gallery-grid .g1{grid-column:auto}
  .gallery-grid figure,.gallery-grid .g2,.gallery-grid .g3{height:310px}
  .mosaic{grid-template-columns:1fr!important}.mosaic .wide{grid-column:auto}.mosaic figure,.mosaic .wide{height:300px}
  footer{padding-right:18px!important;padding-left:18px!important}
}
