
:root{
 --blue:#0759c9; --blue2:#0b2b73; --gold:#f2c14e; --gold2:#a96c00; --white:#fff;
 --ink:#071329; --muted:#657089; --glass:rgba(5,18,43,.68); --line:rgba(255,255,255,.15);
 --shadow:0 25px 80px rgba(0,0,0,.28);
}
*{box-sizing:border-box} html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--ink);background:#f6f8fc;overflow-x:hidden}html.intro-lock,body.intro-lock{overflow:hidden!important;height:100%!important;overscroll-behavior:none!important;touch-action:none!important}body.intro-lock{position:fixed;width:100%;left:0;right:0}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:9999;opacity:.035;background-image:radial-gradient(#fff 1px,transparent 1px);background-size:4px 4px}
a{text-decoration:none;color:inherit} img{max-width:100%;display:block}
p,li{line-height:1.8;text-align:justify}.title,p{hyphens:auto}
h1,h2,h3,.display,.art-title{font-family:Georgia,"Times New Roman",serif;text-align:center}
h1,h2,h3{margin:0 0 18px}.art-title{letter-spacing:.08em}
.container{width:min(1180px,92%);margin:auto}.section{padding:100px 0;position:relative}.dark{background:#06142e;color:#fff}.white{background:#fff}
.eyebrow{color:var(--gold);letter-spacing:.28em;text-transform:uppercase;font-size:.72rem;font-weight:800;text-align:center}
.lead{max-width:780px;margin:0 auto 34px;color:inherit;opacity:.82}
.btn{display:inline-flex;align-items:center;gap:10px;padding:14px 22px;border-radius:999px;border:1px solid rgba(242,193,78,.65);font-weight:800;letter-spacing:.03em;transition:.35s;cursor:pointer}
.btn.primary{background:linear-gradient(135deg,var(--blue),#0a86ff);color:#fff;box-shadow:0 12px 35px rgba(7,89,201,.32)}
.btn.ghost{background:transparent;color:inherit}.btn:hover{transform:translateY(-3px);box-shadow:0 15px 45px rgba(0,0,0,.18)}
.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;padding:10px 0;transition:.45s;background:rgba(3,13,31,.18);backdrop-filter:blur(10px)}
.navbar.scrolled{background:rgba(3,13,31,.94);box-shadow:0 12px 40px rgba(0,0,0,.25)}
.nav-inner{display:flex;align-items:center;gap:22px;min-height:66px}.brand img{width:155px;height:58px;object-fit:contain}
.navlinks{margin-left:auto;display:flex;align-items:center;gap:5px}.navlinks a{text-transform:uppercase;color:#fff;font-size:calc(.78rem * 1.01);font-weight:800;padding:10px 10px;opacity:.9}.navlinks a:hover,.navlinks a.active{color:var(--gold)}
.lang{display:flex;gap:4px;margin-left:8px}.lang button{background:transparent;border:1px solid rgba(255,255,255,.25);color:#fff;border-radius:999px;padding:7px 9px;font-weight:800;cursor:pointer}.lang button.active{background:var(--gold);color:#071329;border-color:var(--gold)}
.menu{display:none;color:#fff;font-size:26px;margin-left:auto;background:none;border:0}
.hero{min-height:100vh;position:relative;color:#fff;overflow:hidden;background:#030c1c}.slides{position:absolute;inset:0}.slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity 1.4s ease}.slide.active{opacity:1;visibility:visible}.slide img{width:100%;height:100%;object-fit:cover;animation:cinema 9s ease-in-out both}.slide:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,10,27,.9),rgba(2,10,27,.35),rgba(2,10,27,.72))}
@keyframes cinema{0%{transform:scale(1.08) translateX(-1.5%)}50%{transform:scale(1.02) translateX(1.5%)}100%{transform:scale(1.1) translateX(0)}}
.hero-content{position:relative;z-index:2;min-height:100vh;display:flex;align-items:center}.hero-copy{width:min(760px);padding-top:70px}.hero-copy h1{font-size:clamp(3rem,7vw,7.2rem);line-height:.93;text-align:left;margin:12px 0 22px}.hero-copy p{max-width:680px;font-size:1.05rem;opacity:.9}.typing{min-height:32px;color:#dbe7ff;font-weight:700}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.dots{position:absolute;z-index:5;bottom:34px;left:50%;transform:translateX(-50%);display:flex;gap:9px}.dots button{width:34px;height:4px;border:0;background:rgba(255,255,255,.35);cursor:pointer;border-radius:5px}.dots button.active{background:var(--gold);width:60px}
.scrollhint{position:absolute;bottom:28px;right:4%;z-index:5;writing-mode:vertical-rl;color:#fff;font-size:.68rem;letter-spacing:.25em;opacity:.7}
.pagehero{padding:170px 0 90px;color:#fff;position:relative;overflow:hidden;background:#06142e}.pagehero:before{content:"";position:absolute;inset:-15%;background:url('../assets/img-background/img-background2.png') center/cover;opacity:.28;transform:scale(1.05);animation:drift 14s ease-in-out infinite alternate}.pagehero:after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(3,13,31,.94),rgba(4,39,92,.7))}
.pagehero>*{position:relative;z-index:2}.pagehero h1{font-size:clamp(2.8rem,6vw,6rem)}@keyframes drift{to{transform:scale(1.12) translate3d(2%, -1%,0)}}
.grid{display:grid;gap:22px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}
.card{background:#fff;border:1px solid #e8edf6;border-radius:24px;padding:28px;box-shadow:0 12px 45px rgba(11,39,85,.07);transition:.4s;overflow:hidden}.card:hover{transform:translateY(-8px);box-shadow:var(--shadow)}
.dark .card,.glass{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.1);color:#fff}
.service-card img{height:190px;width:100%;object-fit:cover;border-radius:16px;margin-bottom:20px;transition:.5s}.service-card:hover img{transform:scale(1.04)}
.icon{width:50px;height:50px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,var(--blue),var(--gold));color:#fff;font-weight:900;margin-bottom:18px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.visual{position:relative;border-radius:30px;overflow:hidden;box-shadow:var(--shadow)}.visual img{width:100%;min-height:420px;object-fit:cover}.visual:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(7,89,201,.08),rgba(242,193,78,.18));mix-blend-mode:screen}
.welcome{background:#fff}.welcome .visual{order:2}.welcome-copy{order:1}.quote{font-family:Georgia,serif;font-size:clamp(1.7rem,3vw,3rem);line-height:1.15}
.fixed-bg{position:relative;min-height:620px;display:flex;align-items:center;overflow:hidden;color:#fff}.fixed-bg:before{content:"";position:absolute;inset:-5%;background:var(--bg) center/cover fixed;transform:scale(1.04);transition:transform 1s ease}.fixed-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,10,27,.88),rgba(2,10,27,.52),rgba(2,10,27,.8))}
.fixed-inner{position:relative;z-index:2;max-width:720px}.reveal{opacity:0;transform:translateY(35px);transition:1s cubic-bezier(.2,.8,.2,1)}.reveal.visible{opacity:1;transform:none}
.team-card{padding:0;overflow:hidden}.team-card img{width:100%;height:330px;object-fit:cover;background:#eef3fb}.team-card .team-info{padding:22px}.role{color:var(--blue);font-weight:800;font-size:.78rem;text-transform:uppercase;letter-spacing:.12em}
.news-card img{width:100%;height:220px;object-fit:cover}.news-card .body{padding:22px}.news-card{cursor:pointer}
.modal{position:fixed;inset:0;background:rgba(0,7,20,.9);backdrop-filter:blur(12px);z-index:3000;display:none;align-items:center;justify-content:center;padding:30px}.modal.open{display:flex}.modal-box{width:min(1100px,95vw);max-height:92vh;overflow:auto;background:#fff;border-radius:26px;position:relative;box-shadow:0 30px 100px #000}.modal-box img{width:100%;max-height:58vh;object-fit:cover}.modal-content{padding:28px}.close,.modal-nav{position:absolute;z-index:4;border:0;cursor:pointer;border-radius:50%;background:rgba(0,0,0,.65);color:#fff}.close{top:14px;right:14px;width:44px;height:44px;font-size:22px}.modal-nav{top:45%;width:46px;height:46px;font-size:24px}.prev{left:15px}.next{right:15px}
.form{display:grid;gap:15px}.form input,.form textarea,.form select{width:100%;padding:15px 16px;border-radius:14px;border:1px solid #dbe2ef;background:#fbfcff;font:inherit}.form textarea{min-height:180px;resize:vertical}.contact-card{padding:30px}.contact-list{display:grid;gap:14px}.contact-item{padding:16px;border-left:3px solid var(--gold);background:#f7f9fd}
.footer{background:#030c1c;color:#fff;padding:65px 0 25px;border-top:1px solid rgba(242,193,78,.25)}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:35px}.footer h3{text-align:left;color:var(--gold);font-size:1rem}.footer p,.footer li{color:#aebbd2;font-size:.88rem}.footer ul{padding:0;list-style:none;display:grid;gap:9px}.footer-bottom{margin-top:40px;padding-top:18px;border-top:1px solid rgba(255,255,255,.1);font-size:.75rem;color:#8090ab;display:flex;justify-content:space-between;gap:20px}
.top{position:fixed;right:22px;bottom:22px;width:48px;height:48px;border:1px solid rgba(242,193,78,.55);background:#071a39;color:#fff;border-radius:50%;z-index:900;display:grid;place-items:center;opacity:0;transform:translateY(20px);transition:.3s}.top.show{opacity:1;transform:none}
.intro{position:fixed;inset:0;width:100vw;height:100vh;height:100dvh;min-height:100dvh;background:#020a18;z-index:10000;display:grid;place-items:center;color:#fff;overflow:hidden;overscroll-behavior:none;touch-action:none;transition:opacity 1.1s ease,visibility 1.1s ease}.intro:before{content:"";position:absolute;inset:-20%;background:radial-gradient(circle at 50% 45%,rgba(7,89,201,.18),transparent 38%),radial-gradient(circle at 50% 55%,rgba(242,193,78,.08),transparent 45%);animation:introAtmosphere 8s ease-in-out both;pointer-events:none}.intro.hide{opacity:0;visibility:hidden;pointer-events:none}.intro-inner{position:relative;z-index:2;width:min(900px,90vw);text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}.intro-logo{width:min(420px,70vw);max-height:38vh;object-fit:contain;filter:drop-shadow(0 0 30px rgba(7,89,201,.55));animation:logoIn 2.1s cubic-bezier(.2,.8,.2,1) both}.intro-line{height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent);width:min(520px,75vw);margin:22px auto;animation:line 2.8s both}.intro-word{min-height:1.4em;letter-spacing:.28em;text-transform:uppercase;font-size:clamp(.62rem,1.1vw,.82rem);font-weight:700;opacity:0;white-space:nowrap;animation:introTextIn .8s 1.05s ease forwards}.intro-word:after{content:"|";display:inline-block;color:var(--gold);margin-left:5px;animation:blink .7s steps(1) infinite}.intro-sub{margin-top:13px;min-height:1.3em;color:#dbe7ff;letter-spacing:.2em;text-transform:uppercase;font-size:.62rem;opacity:0;transform:translateY(8px);transition:opacity .9s ease,transform .9s ease}.intro-sub.show{opacity:.65;transform:none}@keyframes logoIn{0%{opacity:0;transform:scale(.5) rotate(-8deg);filter:blur(16px)}60%{opacity:1;transform:scale(1.08) rotate(1deg)}100%{transform:scale(1)}}@keyframes line{0%{transform:scaleX(0);opacity:0}100%{transform:scaleX(1);opacity:1}}@keyframes introTextIn{from{opacity:0;letter-spacing:.8em;filter:blur(6px)}to{opacity:.9;letter-spacing:.28em;filter:blur(0)}}@keyframes blink{0%,45%{opacity:1}46%,100%{opacity:0}}@keyframes introAtmosphere{0%,100%{transform:scale(1);opacity:.7}50%{transform:scale(1.08);opacity:1}}
.thank{min-height:75vh;display:grid;place-items:center;text-align:center}.thank .card{max-width:760px;padding:60px}.thank img{width:230px;margin:0 auto 30px}
.rtl{direction:rtl}.rtl p,.rtl li{text-align:justify}.rtl h1,.rtl h2,.rtl h3{text-align:center}.rtl .navlinks{margin-left:0;margin-right:auto}.rtl .hero-copy h1{text-align:right}.rtl .hero-copy{margin-left:auto}.rtl .footer h3{text-align:right}
@media(max-width:900px){.navlinks{position:absolute;top:76px;left:4%;right:4%;display:none;flex-direction:column;align-items:stretch;background:rgba(3,13,31,.98);padding:15px;border-radius:18px}.navlinks.open{display:flex}.navlinks a{text-align:center}.menu{display:block}.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}.split{grid-template-columns:1fr;gap:35px}.welcome .visual{order:1}.welcome-copy{order:2}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.section{padding:75px 0}.brand img{width:130px}.hero-copy h1{font-size:3.4rem}.hero-copy p{font-size:.95rem}.fixed-bg{min-height:540px}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.scrollhint{display:none}}

body{animation:pageIn .7s ease both}@keyframes pageIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}body.page-out{animation:pageOut .45s ease both}@keyframes pageOut{to{opacity:0;transform:translateY(-8px)}}


/* === FUTURISTIC CINEMATIC REFINEMENT === */
html,body{min-height:100%;}
.hero{min-height:100svh;height:100svh;}
.slides,.slide{inset:0;}
.slide{transition:opacity 1.15s cubic-bezier(.22,.61,.36,1),visibility 1.15s;}
.slide img{animation:none;transform:scale(1.04);will-change:transform,opacity;}
.slide.active img{animation:heroCinematic 10s cubic-bezier(.2,.65,.2,1) both;}
.slide:nth-child(even).active img{animation-name:heroCinematicReverse;}
@keyframes heroCinematic{0%{transform:scale(1.09) translate3d(-2.4%,0,0)}42%{transform:scale(1.035) translate3d(1.2%,0,0)}72%{transform:scale(1.065) translate3d(2.1%,-.5%,0)}100%{transform:scale(1.105) translate3d(0,0,0)}}
@keyframes heroCinematicReverse{0%{transform:scale(1.09) translate3d(2.4%,0,0)}42%{transform:scale(1.035) translate3d(-1.2%,0,0)}72%{transform:scale(1.065) translate3d(-2.1%,.5%,0)}100%{transform:scale(1.105) translate3d(0,0,0)}}
.slide:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(110deg,rgba(7,89,201,.16),transparent 38%,rgba(242,193,78,.08));mix-blend-mode:screen;opacity:0;transition:opacity 1.2s ease}
.slide.active:before{opacity:1}
.hero-copy h2,.hero-copy p,.hero-copy .typing,.hero-copy .hero-actions{opacity:0;transform:translateY(18px);}
.slide.active .hero-copy h2{animation:heroTextIn .9s .15s ease forwards;}
.slide.active .hero-copy p{animation:heroTextIn .9s .35s ease forwards;}
.slide.active .hero-copy .typing{animation:heroTextIn .9s .52s ease forwards;}
.slide.active .hero-copy .hero-actions{animation:heroTextIn .9s .68s ease forwards;}
@keyframes heroTextIn{to{opacity:1;transform:none}}
.typing{position:relative;display:block;min-height:32px;letter-spacing:.08em;text-transform:uppercase}
.typing:after{content:"|";color:var(--gold);margin-left:5px;animation:blink .7s steps(1) infinite}
.welcome .visual{position:relative;isolation:isolate;box-shadow:0 30px 90px rgba(7,25,65,.22);}
.welcome .visual:before{content:"";position:absolute;inset:14px;border:1px solid rgba(242,193,78,.7);border-radius:22px;z-index:2;pointer-events:none;box-shadow:0 0 35px rgba(242,193,78,.15) inset}
.welcome .visual img{transition:transform 1.1s cubic-bezier(.2,.8,.2,1);will-change:transform}
.welcome .visual:hover img{transform:scale(1.045)}
.welcome-copy{position:relative;padding:24px 0 24px 10px}
.welcome-copy:before{content:"";position:absolute;left:-16px;top:18px;bottom:18px;width:2px;background:linear-gradient(180deg,transparent,var(--gold),transparent);}
.fixed-bg{min-height:650px;background:#06142e;isolation:isolate;}
.fixed-bg:before{background-position:center center;background-size:cover;background-attachment:fixed;transform:none;transition:none;will-change:auto;}
.fixed-bg:after{background:linear-gradient(90deg,rgba(2,10,27,.9),rgba(2,10,27,.58),rgba(2,10,27,.9));}
.fixed-inner{max-width:900px!important;margin-inline:auto;text-align:center;padding:50px 30px;}
.fixed-inner p{text-align:center;max-width:820px;margin:0 auto 28px;}
.fixed-inner .btn{margin-top:8px;}
.fixed-inner:before{content:"";position:absolute;left:50%;top:18px;transform:translateX(-50%);width:120px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);}
/* About: full-width fixed cinematic panel */
.about-fixed{position:relative;min-height:680px;display:grid;place-items:center;overflow:hidden;color:#fff;background:#06142e;isolation:isolate;}
.about-fixed:before{content:"";position:absolute;inset:0;background:var(--bg) center/cover fixed;z-index:-2;}
.about-fixed:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(2,10,27,.92),rgba(4,39,92,.68),rgba(2,10,27,.9));z-index:-1;}
.about-fixed .fixed-inner{max-width:960px!important;}
.about-fixed .fixed-inner h2{font-size:clamp(2rem,4vw,4.2rem);}
.about-fixed .fixed-inner p{font-size:clamp(1rem,1.35vw,1.16rem);line-height:1.95;}
/* Framing and gold rules */
.section>.container>.eyebrow,.pagehero .eyebrow{position:relative;}
.section>.container>.eyebrow:after,.pagehero .eyebrow:after{content:"";display:block;width:70px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);margin:12px auto 0;}
.footer{position:relative;overflow:hidden;border-top:1px solid rgba(242,193,78,.5);}
.footer:before,.footer:after{content:"";position:absolute;height:1px;left:7%;right:7%;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.55;}
.footer:before{top:10px}.footer:after{bottom:10px}
.footer-grid{position:relative;z-index:1;padding-top:12px;}
.footer-grid>div{position:relative;padding-right:22px;}
.footer-grid>div:not(:last-child):after{content:"";position:absolute;right:0;top:4px;bottom:4px;width:1px;background:linear-gradient(180deg,transparent,rgba(242,193,78,.55),transparent);}
.footer h3{letter-spacing:.06em;}
.footer-bottom{border-top:1px solid rgba(242,193,78,.22);}
/* Contact refinement */
.contact-card{border:1px solid rgba(7,89,201,.12);box-shadow:0 25px 70px rgba(11,39,85,.1);position:relative;}
.contact-card:before{content:"";position:absolute;inset:10px;border:1px solid rgba(242,193,78,.14);border-radius:18px;pointer-events:none;}
.contact-list,.form{position:relative;z-index:1;}
.form input:focus,.form textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 4px rgba(7,89,201,.09),0 0 0 1px rgba(242,193,78,.2);}
.contact-item{transition:transform .35s,box-shadow .35s;border-left-width:2px;}
.contact-item:hover{transform:translateX(5px);box-shadow:0 10px 30px rgba(7,25,65,.08);}
/* Futuristic intro: locked viewport, no layout movement */
.intro{width:100%;height:100svh;min-height:100svh;overscroll-behavior:none;user-select:none;}
.intro:after{content:"";position:absolute;inset:10%;border:1px solid rgba(242,193,78,.13);border-radius:32px;box-shadow:0 0 70px rgba(7,89,201,.12),inset 0 0 70px rgba(7,89,201,.07);animation:introFrame 3.8s ease-in-out infinite alternate;pointer-events:none;}
.intro-inner:before,.intro-inner:after{content:"";position:absolute;left:50%;top:50%;border:1px solid rgba(7,134,255,.16);border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;}
.intro-inner:before{width:min(620px,78vw);height:min(620px,78vw);animation:introOrbit 6s linear infinite;}
.intro-inner:after{width:min(470px,62vw);height:min(470px,62vw);border-color:rgba(242,193,78,.15);animation:introOrbitReverse 8s linear infinite;}
.intro-logo{position:relative;z-index:3;animation:introLogoFuture 2.4s cubic-bezier(.16,1,.3,1) both;}
.intro-line{position:relative;z-index:3;animation:lineFuture 1.4s .8s cubic-bezier(.16,1,.3,1) both;}
.intro-word,.intro-sub{position:relative;z-index:3;}
@keyframes introLogoFuture{0%{opacity:0;transform:perspective(700px) rotateX(30deg) rotateY(-18deg) scale(.55);filter:blur(18px) drop-shadow(0 0 0 transparent)}45%{opacity:1;transform:perspective(700px) rotateX(-4deg) rotateY(6deg) scale(1.12);filter:blur(0) drop-shadow(0 0 55px rgba(7,134,255,.7))}72%{transform:perspective(700px) rotateX(2deg) rotateY(-2deg) scale(1.03);filter:drop-shadow(0 0 28px rgba(242,193,78,.28))}100%{transform:none;filter:drop-shadow(0 0 30px rgba(7,89,201,.55))}}
@keyframes lineFuture{from{transform:scaleX(0);opacity:0;filter:blur(4px)}to{transform:scaleX(1);opacity:1;filter:none}}
@keyframes introOrbit{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes introOrbitReverse{to{transform:translate(-50%,-50%) rotate(-360deg)}}
@keyframes introFrame{to{transform:scale(1.012);opacity:.65}}
/* Avoid page movement from transition transform on body */
body{animation:pageIn .7s ease both;}
body.page-out{animation:pageOut .45s ease both;}
@media(max-width:900px){.about-fixed{min-height:600px}.fixed-bg:before,.about-fixed:before{background-attachment:scroll;} .fixed-bg:after,.about-fixed:after{background:linear-gradient(180deg,rgba(2,10,27,.9),rgba(4,39,92,.7),rgba(2,10,27,.92));}.footer-grid>div:not(:last-child):after{display:none;}.welcome-copy{padding-left:0}.welcome-copy:before{display:none;}}
@media(prefers-reduced-motion:reduce){.slide.active img,.intro-logo,.intro-inner:before,.intro-inner:after,.intro:after{animation:none!important}.slide,.reveal,.btn{transition:none!important}}

/* === FINAL VISUAL PASS — stable layout / cinematic motion === */
.hero{contain:paint;isolation:isolate}
.slide img{will-change:transform;backface-visibility:hidden}
.hero-copy h2{min-height:2.05em;overflow:visible;opacity:0}
.hero-copy p{opacity:0;transform:translateY(12px);transition:opacity .9s ease,transform .9s ease}
.slide.active .hero-copy p.hero-text-ready{opacity:.9;transform:none}
.hero-copy .typing{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#dbe7ff;letter-spacing:.16em;text-transform:uppercase;font-size:.72rem;min-height:1.6em;opacity:0;transform:translateY(10px);transition:opacity .8s ease,transform .8s ease}
.slide.active .hero-copy .typing{opacity:.78;transform:none}
.hero-copy .typing:after{content:"|";color:var(--gold);margin-left:6px;animation:blink .7s steps(1) infinite}
.hero-copy .hero-actions{opacity:0;transform:translateY(12px)}
.slide.active .hero-copy .hero-actions{animation:heroTextIn .8s .9s ease forwards}

/* Full-width fixed background panels: the image stays visually locked during scroll. */
.fixed-bg,.about-fixed{width:100%;isolation:isolate}
.fixed-bg:before,.about-fixed:before{background-size:cover;background-position:center center;background-repeat:no-repeat;background-attachment:fixed;transform:none!important;transition:none!important;will-change:auto}
.fixed-bg:after,.about-fixed:after{pointer-events:none}
.fixed-inner{width:min(920px,92%);text-align:center}
.fixed-inner p,.about-fixed .fixed-inner p{margin-left:auto;margin-right:auto;text-align:center;max-width:840px}
.fixed-inner .art-title{max-width:900px;margin-left:auto;margin-right:auto}

/* About page: premium framed image with restrained cinematic reveal. */
.about-page-image,.about-page-image .visual{position:relative}
.about-page-image .visual{border:1px solid rgba(242,193,78,.34);box-shadow:0 25px 80px rgba(0,0,0,.18),0 0 0 1px rgba(7,89,201,.08);}
.about-page-image .visual:before{content:"";position:absolute;inset:12px;border:1px solid rgba(242,193,78,.55);border-radius:22px;z-index:3;pointer-events:none;box-shadow:inset 0 0 35px rgba(7,89,201,.15)}
.about-page-image .visual:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(7,89,201,.08),transparent 45%,rgba(242,193,78,.18));mix-blend-mode:screen;pointer-events:none}
.about-page-image .visual img{transition:transform 1.1s cubic-bezier(.2,.8,.2,1),filter 1.1s ease}
.about-page-image .visual:hover img{transform:scale(1.035);filter:saturate(1.08) contrast(1.03)}

/* Elegant gold rules around major content without changing the layout. */
.fixed-inner:after{content:"";display:block;width:150px;height:1px;margin:26px auto 0;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.75}
.footer{box-shadow:inset 0 1px 0 rgba(242,193,78,.12)}
.footer h3:after{content:"";display:block;width:42px;height:1px;margin-top:9px;background:linear-gradient(90deg,var(--gold),transparent)}
.footer a{transition:color .25s ease,transform .25s ease;display:inline-block}
.footer a:hover{color:var(--gold);transform:translateX(3px)}

/* Keep page geometry stable: no transform-based scrolling effects on the document itself. */
html{scroll-behavior:smooth;overflow-x:hidden}
body{overflow-x:hidden}

@media(max-width:900px){
  .fixed-bg:before,.about-fixed:before{background-attachment:fixed}
  .fixed-inner{padding:45px 18px}
  .hero-copy h2{min-height:2.35em}
}
/* Stable page transitions: fade only, never shift or deform the layout. */
body{animation:pageFadeIn .55s ease both!important}
body.page-out{animation:pageFadeOut .35s ease both!important}
@keyframes pageFadeIn{from{opacity:0}to{opacity:1}}
@keyframes pageFadeOut{to{opacity:0}}

/* === ABGT SPECTACULAR PASS — cinematic, stable, non-deforming === */
.hero{position:relative;overflow:hidden;background:#020a1b}
.hero:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(circle at 72% 45%,rgba(7,134,255,.16),transparent 34%),linear-gradient(90deg,rgba(1,7,18,.82),rgba(1,7,18,.32) 55%,rgba(1,7,18,.7));mix-blend-mode:screen}
.slide img{filter:saturate(.92) contrast(1.06);transition:transform 8s cubic-bezier(.16,1,.3,1),filter 1.2s ease;}
.slide.active img{transform:scale(1.055);filter:saturate(1.08) contrast(1.08)}
.hero-copy{position:relative;z-index:4;text-shadow:0 8px 35px rgba(0,0,0,.55)}
.hero-copy h2{opacity:0!important;transform:translateY(18px);letter-spacing:-.025em;text-wrap:balance}
.slide.active .hero-copy h2{animation:heroTypeReveal .9s .08s cubic-bezier(.16,1,.3,1) forwards}
@keyframes heroTypeReveal{to{opacity:1!important;transform:none}}
.hero-copy p{font-weight:500}
.hero-copy .typing{display:block;min-height:1.8em;text-shadow:0 0 22px rgba(7,134,255,.45)}

/* Intro: 6-second premium opening */
.intro{background:radial-gradient(circle at 50% 48%,#0b2e67 0%,#06142e 34%,#010713 78%);overflow:hidden}
.intro:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(255,255,255,.018) 0 1px,transparent 1px 5px);opacity:.55;pointer-events:none;animation:introScan 1.8s linear infinite}
.intro:after{inset:6%;border-color:rgba(242,193,78,.2);border-radius:40px;box-shadow:0 0 100px rgba(7,134,255,.18),inset 0 0 100px rgba(7,134,255,.1);animation:introFrame 2.4s ease-in-out infinite alternate}
.intro-inner:before{box-shadow:0 0 45px rgba(7,134,255,.12)}
.intro-inner:after{box-shadow:0 0 35px rgba(242,193,78,.12)}
.intro-logo{filter:drop-shadow(0 0 34px rgba(7,134,255,.55));}
.intro-word{font-weight:800;letter-spacing:.22em;text-shadow:0 0 24px rgba(7,134,255,.35)}
.intro-sub{opacity:0;transform:translateY(10px);transition:opacity .55s ease,transform .55s ease}
.intro-sub.show{opacity:1;transform:none}
@keyframes introScan{from{transform:translateY(-100%)}to{transform:translateY(100%)}}

/* News / activity imagery: depth, light sweep and premium hover */
.news-card,.service-card{position:relative;isolation:isolate}
.news-card:before,.service-card:before,.activity-last-photo:before,.security-scanner:before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(115deg,transparent 25%,rgba(255,255,255,.12) 48%,transparent 66%);transform:translateX(-120%);transition:transform 1.1s ease}
.news-card:hover:before,.service-card:hover:before,.activity-last-photo:hover:before,.security-scanner:hover:before{transform:translateX(120%)}
.news-card img,.service-card img,.activity-last-photo img,.security-scanner img{transition:transform .9s cubic-bezier(.16,1,.3,1),filter .9s ease;will-change:transform}
.news-card:hover img,.service-card:hover img,.activity-last-photo:hover img,.security-scanner:hover img{transform:scale(1.06);filter:saturate(1.12) contrast(1.06)}
.news-photo-effect img{filter:saturate(.96) contrast(1.04)}
.last-photo-effect img,.activity-last-photo img{box-shadow:inset 0 0 0 1px rgba(242,193,78,.28)}

/* Security scanner overlay on the requested final image */
.security-scanner{overflow:hidden}
.security-scanner .scanner-line{position:absolute;z-index:5;left:6%;right:6%;top:15%;height:2px;background:linear-gradient(90deg,transparent,#f2c14e,#79c9ff,transparent);box-shadow:0 0 16px rgba(242,193,78,.9),0 0 32px rgba(7,134,255,.65);animation:scannerSweep 2.8s ease-in-out infinite;pointer-events:none}
.security-scanner .scanner-grid{position:absolute;z-index:4;inset:0;background:linear-gradient(rgba(7,134,255,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(7,134,255,.07) 1px,transparent 1px);background-size:28px 28px;mask-image:linear-gradient(to bottom,transparent,black 25%,black 75%,transparent);opacity:.4;pointer-events:none}
@keyframes scannerSweep{0%,100%{top:12%;opacity:.15}45%{opacity:1}50%{top:86%;opacity:1}55%{opacity:.25}}

/* CEO block centered with image kept to the right */
.ceo-role{margin:16px 0 5px;text-align:center;color:var(--gold);font-size:.8rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
.ceo-name{text-align:center;margin:0 0 18px;font-size:clamp(1.15rem,2vw,1.65rem);letter-spacing:.03em}
.section.dark .split>div:first-child .quote{text-align:center}
.section.dark .split>div:first-child p{text-align:center;max-width:620px;margin-left:auto;margin-right:auto}
.section.dark .split>div:first-child .btn{display:block;width:max-content;margin:24px auto 0}

/* About / News / Contact editorial alignment */
.centered-lead,.about-intro,.contact-lead{text-align:center!important;max-width:920px;margin-left:auto!important;margin-right:auto!important}
.about-intro{font-size:clamp(1.1rem,1.7vw,1.35rem);line-height:1.8}
.contact-lead{max-width:980px;font-size:clamp(1.05rem,1.5vw,1.25rem);line-height:1.85}

/* Royal organizational chart */
.royal-org{position:relative;margin-top:15px;padding:20px 0 10px}
.royal-org:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:1px;background:linear-gradient(180deg,var(--gold),rgba(242,193,78,.08));opacity:.65}
.royal-ceo{width:min(440px,100%);margin:0 auto 72px;position:relative;z-index:3}
.royal-ceo:after{content:"";position:absolute;left:50%;top:100%;width:1px;height:72px;background:var(--gold)}
.royal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;position:relative}
.royal-grid:before{content:"";position:absolute;left:16.5%;right:16.5%;top:-36px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
.royal-card{background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(246,249,255,.98));border:1px solid rgba(242,193,78,.5);border-radius:26px;padding:0;overflow:hidden;box-shadow:0 24px 65px rgba(11,39,85,.13);transition:transform .5s cubic-bezier(.16,1,.3,1),box-shadow .5s ease}
.royal-card:hover{transform:translateY(-9px);box-shadow:0 35px 90px rgba(7,25,65,.2)}
.royal-card img{width:100%;height:250px;object-fit:cover;display:block}
.royal-card .team-info{padding:22px;text-align:center}
.royal-card h3{margin:8px 0 0;font-size:1.15rem}
.royal-ceo .royal-card img{height:360px}
.royal-branches{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:24px}
.royal-branch{position:relative}
.royal-branch:before{content:"";position:absolute;left:50%;top:-24px;height:24px;border-left:1px solid rgba(242,193,78,.7)}
.royal-branch .royal-card{min-height:100%}

/* Partners page */
.partners-hero{text-align:center}
.partner-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:45px}
.partner-card{min-height:220px;display:grid;place-items:center;position:relative;border:1px solid rgba(242,193,78,.4);background:linear-gradient(145deg,#fff,#f5f8fd);box-shadow:0 25px 70px rgba(7,25,65,.1);transition:transform .5s ease,box-shadow .5s ease}
.partner-card:before{content:"";position:absolute;inset:10px;border:1px solid rgba(7,89,201,.12);border-radius:18px;pointer-events:none}
.partner-card:hover{transform:translateY(-8px);box-shadow:0 35px 90px rgba(7,25,65,.18)}
.partner-card img{max-width:72%;max-height:105px;object-fit:contain;filter:grayscale(.08) contrast(1.05);transition:transform .6s ease,filter .6s ease}
.partner-card:hover img{transform:scale(1.06);filter:none}
.partner-note{text-align:center;max-width:800px;margin:0 auto;font-size:1.08rem;line-height:1.9}

/* Full-screen news modal with fluid opening */
.modal{opacity:0;visibility:hidden;display:flex!important;transition:opacity .45s ease,visibility .45s ease;padding:clamp(14px,3vw,34px)}
.modal.open{opacity:1;visibility:visible}
.modal-box{transform:translateY(24px) scale(.96);opacity:0;transition:transform .55s cubic-bezier(.16,1,.3,1),opacity .4s ease;width:min(1180px,96vw);max-height:94vh}
.modal.open .modal-box{transform:none;opacity:1}
.modal-box img{max-height:62vh}

/* Contact luxury treatment */
.contact-card{backdrop-filter:blur(4px)}
.contact-card:hover{transform:translateY(-6px)}
.contact-fixed{min-height:560px}

@media(max-width:900px){
 .royal-grid,.royal-branches,.partner-grid{grid-template-columns:1fr 1fr}
 .royal-org:before{display:none}.royal-grid:before{display:none}
}
@media(max-width:620px){
 .royal-grid,.royal-branches,.partner-grid{grid-template-columns:1fr}
 .royal-ceo{margin-bottom:34px}.royal-ceo:after{height:34px}
 .royal-branch:before{display:none}
 .royal-card img{height:300px}.royal-ceo .royal-card img{height:330px}
}

/* HERO — cinematic, fluid, non-blocking */
.hero .slide img{will-change:transform,opacity;backface-visibility:hidden;transform-origin:center center}
.hero .slide{will-change:opacity}
.hero .hero-copy{will-change:transform,opacity}
.hero .slide.active .hero-copy{animation:heroCopyFloat 1.05s cubic-bezier(.16,1,.3,1) both}
@keyframes heroCopyFloat{0%{opacity:0;transform:translate3d(0,28px,0) scale(.985)}100%{opacity:1;transform:translate3d(0,0,0) scale(1)}}
.hero .slide.active:before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.08) 48%,transparent 66%);transform:translateX(-120%);animation:heroLightSweep 2.2s .25s ease-out both}
@keyframes heroLightSweep{to{transform:translateX(120%)}}
.hero .slide.active img{animation-duration:8s!important}
@media (prefers-reduced-motion:reduce){.hero .slide.active img,.hero .slide.active .hero-copy,.hero .slide.active:before{animation:none!important}.hero .slide{transition:opacity .4s ease}}


/* Hero text: cinematic opacity + independent typewriter, without changing layout */
.hero-copy h2{display:block;opacity:0;transform:translateY(14px);transition:opacity .8s ease,transform .8s ease;}
.slide.active .hero-copy h2{opacity:1;transform:translateY(0);}
.hero-copy p{opacity:0;transform:translateY(10px);transition:opacity 1s ease .25s,transform 1s ease .25s;}
.slide.active .hero-copy p.hero-text-ready{opacity:.9;transform:none;}
.hero-copy .typing{opacity:0;transform:translateY(8px);transition:opacity .8s ease .35s,transform .8s ease .35s;}
.slide.active .hero-copy .typing{opacity:.9;transform:none;}

/* CEO photo on home: premium motion/effects, position and dimensions unchanged */
.section.dark .split>.visual{position:relative;isolation:isolate;overflow:hidden;border:1px solid rgba(242,193,78,.42);box-shadow:0 30px 90px rgba(0,0,0,.30),0 0 0 1px rgba(7,89,201,.10);}
.section.dark .split>.visual:before{content:"";position:absolute;inset:12px;border:1px solid rgba(242,193,78,.62);border-radius:22px;z-index:3;pointer-events:none;box-shadow:inset 0 0 38px rgba(7,89,201,.14);}
.section.dark .split>.visual:after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 25%,rgba(255,255,255,.13) 48%,transparent 68%);transform:translateX(-120%);z-index:4;pointer-events:none;animation:ceoLightSweep 5.5s ease-in-out infinite;}
.section.dark .split>.visual img{transition:transform 1.2s cubic-bezier(.16,1,.3,1),filter 1.2s ease;will-change:transform;position:relative;z-index:1;}
.section.dark .split>.visual:hover img{transform:scale(1.045);filter:saturate(1.1) contrast(1.05);}
@keyframes ceoLightSweep{0%,55%{transform:translateX(-120%);opacity:0}62%{opacity:1}78%,100%{transform:translateX(120%);opacity:0}}

/* Team introduction centered only; no structural movement */
.pagehero .lead[data-pi18n="teamLead"]{text-align:center;max-width:920px;margin-left:auto;margin-right:auto;}

/* === FINAL MICRO-FIX: preserve layout, restore hero text visibility === */
.navlinks a{text-transform:uppercase;color:#fff;font-size:calc(.78rem * 1.01);font-weight:800;padding:10px 10px;opacity:.9}
.ceo-home-visual{position:relative;isolation:isolate;overflow:hidden}
.ceo-home-visual:before{content:"";position:absolute;inset:10px;border:1px solid rgba(242,193,78,.55);border-radius:24px;z-index:3;pointer-events:none;box-shadow:inset 0 0 32px rgba(7,89,201,.14),0 0 30px rgba(242,193,78,.08)}
.ceo-home-visual:after{content:"";position:absolute;left:-20%;right:-20%;height:2px;top:18%;z-index:4;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(242,193,78,.85),rgba(7,134,255,.75),transparent);filter:blur(.3px);animation:ceoScan 3.8s ease-in-out infinite}
.ceo-home-visual img{transition:transform 1.2s cubic-bezier(.16,1,.3,1),filter 1.2s ease;will-change:transform}
.ceo-home-visual:hover img{transform:scale(1.035);filter:saturate(1.08) contrast(1.04)}
@keyframes ceoScan{0%,100%{transform:translateY(0);opacity:0}15%{opacity:.9}70%{opacity:.9}100%{transform:translateY(360%);opacity:0}}
/* Hero copy is kept in its original position; JS controls visibility so typing cannot be hidden by CSS timing. */
.hero-copy h2,.hero-copy p,.hero-copy .typing{visibility:hidden}
.slide.active .hero-copy h2,.slide.active .hero-copy p,.slide.active .hero-copy .typing{visibility:visible}
.hero-copy h2{opacity:1!important;transform:none!important;min-height:2.05em}
.hero-copy p{opacity:.9!important;transform:none!important}
.hero-copy .typing{opacity:.82!important;transform:none!important}
.hero-copy .typing:after{content:"|";display:inline-block;color:var(--gold);margin-left:6px;animation:blink .7s steps(1) infinite}
.intro-logo{animation:introLogoSpectacular 1.9s cubic-bezier(.16,1,.3,1) both}
@keyframes introLogoSpectacular{0%{opacity:0;transform:perspective(900px) rotateY(-110deg) rotateX(22deg) scale(.52);filter:blur(18px) drop-shadow(0 0 0 transparent)}35%{opacity:1;transform:perspective(900px) rotateY(28deg) rotateX(-5deg) scale(1.08);filter:blur(0) drop-shadow(0 0 55px rgba(7,134,255,.7))}65%{transform:perspective(900px) rotateY(-10deg) rotateX(2deg) scale(1.03);filter:drop-shadow(0 0 38px rgba(242,193,78,.45))}100%{transform:perspective(900px) rotateY(0) rotateX(0) scale(1);filter:drop-shadow(0 0 30px rgba(7,89,201,.55))}}
@media(prefers-reduced-motion:reduce){.intro-logo,.ceo-home-visual:after{animation:none!important}.hero-copy h2,.hero-copy p,.hero-copy .typing{visibility:visible!important}}


/* HERO TEXT — isolated animation layer; does not alter layout */
.hero .hero-copy{position:relative;z-index:20;}
.hero .hero-copy h2,.hero .hero-copy p,.hero .hero-copy .typing{position:relative;z-index:21;display:block;visibility:visible;}
.hero .hero-copy h2{min-height:2.05em;}
.hero .hero-copy p{min-height:3.2em;}
.hero .hero-copy .typing{min-height:1.6em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.08em;text-transform:uppercase;}
.hero .hero-copy .typing:after{content:'|';display:inline-block;color:var(--gold);margin-left:6px;animation:blink .7s steps(1) infinite;}
@media(prefers-reduced-motion:reduce){.hero .hero-copy h2,.hero .hero-copy p,.hero .hero-copy .typing{transition:none!important}.hero .hero-copy .typing:after{animation:none!important}}

/* V13 — Hero text only: stable visible layer, no layout changes */
.hero .hero-content{position:relative;z-index:10}
.hero .hero-copy{position:relative;z-index:30;pointer-events:auto}
.hero .hero-copy h2,.hero .hero-copy p,.hero .hero-copy .typing{visibility:visible}
.hero .hero-copy h2{opacity:1!important;transform:none!important}
.hero .hero-copy p{opacity:.92!important;transform:none!important}
.hero .hero-copy .typing{opacity:.95!important;transform:none!important}
.hero .hero-typing{animation:heroTypeFade .45s ease both}
@keyframes heroTypeFade{from{opacity:0}to{opacity:1}}
.thank-center{margin-left:auto;margin-right:auto;text-align:center}
.thank-center .card{margin-left:auto;margin-right:auto;text-align:center}

/* V14 — HERO TEXT ONLY: force visible, independent, no layout changes */
.hero .hero-copy{position:relative!important;z-index:100!important;display:block!important;visibility:visible!important;}
.hero .hero-copy h2,.hero .hero-copy p,.hero .hero-copy .typing{position:relative!important;z-index:101!important;display:block!important;visibility:visible!important;color:#fff!important;}
.hero .hero-copy h2{opacity:1!important;transform:none!important;}
.hero .hero-copy p{opacity:.94!important;transform:none!important;}
.hero .hero-copy .typing{opacity:.9!important;transform:none!important;color:#dbe7ff!important;}
.hero .hero-copy .hero-actions{position:relative!important;z-index:102!important;}
.hero .slide:after{z-index:1!important;pointer-events:none!important;}
.hero .hero-content{z-index:20!important;}
.hero-text-typing{overflow:visible!important;white-space:normal!important;}

/* Merci page — centered premium frame, no layout distortion */
.thank{min-height:75vh;display:grid;place-items:center;text-align:center;padding-top:40px}
.thank .thank-card{margin:0 auto;text-align:center;position:relative;border:1px solid rgba(212,166,62,.35);box-shadow:0 24px 80px rgba(3,13,31,.18),0 0 0 1px rgba(255,255,255,.55) inset}
.thank .thank-card:before{content:"";position:absolute;inset:10px;border:1px solid rgba(212,166,62,.16);border-radius:18px;pointer-events:none}

/* HERO TEXT ONLY — preserves all geometry and slider behavior */
.hero .hero-copy h2,
.hero .hero-copy p,
.hero .hero-copy .typing{animation:none!important;}
.hero .hero-copy h2,
.hero .hero-copy p,
.hero .hero-copy .typing{position:relative;z-index:21;display:block;}
.hero .hero-copy .typing{white-space:normal;}

/* ABGT HERO FINAL — text animation only, layout geometry preserved */
.hero .hero-copy h2,
.hero .hero-copy p{position:relative;}
.hero .hero-copy h2 .hero-reserve,
.hero .hero-copy p .hero-reserve{visibility:hidden!important;display:block!important;}
.hero .hero-copy h2 .hero-typed,
.hero .hero-copy p .hero-typed{
  position:absolute!important;
  inset:0 auto auto 0;
  display:block!important;
  width:100%;
  visibility:visible!important;
  color:#fff;
  opacity:0;
  transform:translateY(10px);
  transition:opacity .65s ease,transform .65s ease;
  pointer-events:none;
}
.hero .hero-copy h2 .hero-typed{font:inherit;letter-spacing:inherit;line-height:inherit;}
.hero .hero-copy p .hero-typed{font:inherit;letter-spacing:inherit;line-height:inherit;}
.hero .hero-copy h2.hero-active .hero-typed,
.hero .hero-copy p.hero-active .hero-typed{opacity:1;transform:none;}
.hero .hero-copy .typing{
  min-height:1.8em;
  opacity:0;
  transform:translateY(8px);
  transition:opacity .65s ease,transform .65s ease;
}
.hero .hero-copy .typing.hero-active{opacity:.9;transform:none;}
/* JS owns the timing; disable competing hero text animations */
.hero .hero-copy h2,
.hero .hero-copy p,
.hero .hero-copy .typing,
.hero .hero-copy .hero-actions{animation:none!important;}
@media(max-width:900px){
  .hero .hero-copy h2{min-height:2.35em;}
  .hero .hero-copy p{min-height:4.6em;}
}


/* ABGT HERO — AUTHORITATIVE TEXT LAYER: animation only, zero layout movement */
.hero .hero-copy{position:relative!important;z-index:50!important;visibility:visible!important;}
.hero .hero-copy h2,.hero .hero-copy p,.hero .hero-copy .typing{position:relative!important;display:block!important;visibility:visible!important;color:#fff!important;}
.hero .hero-copy h2{min-height:2.2em!important;}
.hero .hero-copy p{min-height:3.4em!important;}
.hero .hero-copy .typing{min-height:1.8em!important;color:#dbe7ff!important;font-family:inherit!important;}
.hero .hero-copy .hero-reserve{display:block!important;visibility:hidden!important;color:transparent!important;user-select:none!important;}
.hero .hero-copy h2 .hero-typed,.hero .hero-copy p .hero-typed{position:absolute!important;left:0!important;top:0!important;width:100%!important;display:block!important;visibility:visible!important;color:#fff!important;opacity:0!important;transform:translateY(10px)!important;transition:opacity .6s ease,transform .6s ease!important;pointer-events:none!important;}
.hero .hero-copy h2 .hero-typed.hero-active,.hero .hero-copy p .hero-typed.hero-active,.hero .hero-copy .typing.hero-active{opacity:1!important;transform:none!important;visibility:visible!important;}
.hero .hero-copy .typing{opacity:0!important;transform:translateY(8px)!important;transition:opacity .6s ease,transform .6s ease!important;}
.hero .hero-copy h2,.hero .hero-copy p,.hero .hero-copy .typing{animation:none!important;}
.hero .hero-copy .hero-actions{position:relative!important;z-index:60!important;}
@media(max-width:900px){.hero .hero-copy h2{min-height:2.8em!important}.hero .hero-copy p{min-height:5.2em!important}}

/* Contact details: discreet, normal-size icons without changing page geometry */
.contact-detail{display:flex;align-items:flex-start;gap:14px;padding:15px 16px;border-left:2px solid var(--gold);background:linear-gradient(90deg,#f7f9fd 0%,#fbfcff 100%);border-radius:0 12px 12px 0;min-height:52px;}
.contact-icon{flex:0 0 30px;width:30px;height:30px;margin-top:0;border:1px solid rgba(242,193,78,.55);border-radius:50%;background:#fff;box-shadow:0 4px 12px rgba(11,39,85,.07);color:var(--blue);display:grid;place-items:center;}
.contact-icon svg{width:16px;height:16px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.contact-text{min-width:0;flex:1;line-height:1.65;padding-top:2px;}
.contact-detail:hover .contact-icon{color:var(--gold2);border-color:var(--gold2);}
@media(max-width:620px){.contact-detail{gap:11px;padding:14px 13px}.contact-icon{flex-basis:28px;width:28px;height:28px}.contact-icon svg{width:15px;height:15px;}}

/* ABGT FINAL — HERO text and TEAM organigram motion only; geometry preserved */
.hero .hero-copy h2,.hero .hero-copy p,.hero .hero-copy .typing{position:relative!important;display:block!important;visibility:visible!important;animation:none!important;transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)!important}
.hero .hero-copy h2{min-height:2.2em!important;opacity:0!important;transform:translateY(18px)!important}
.hero .hero-copy p{min-height:3.4em!important;opacity:0!important;transform:translateY(14px)!important}
.hero .hero-copy .typing{min-height:1.8em!important;opacity:0!important;transform:translateY(10px)!important;color:#dbe7ff!important}
.hero .hero-copy h2.hero-show,.hero .hero-copy p.hero-show,.hero .hero-copy .typing.hero-show{opacity:1!important;transform:none!important}
.hero .hero-copy .typing:after{content:'|';display:inline-block;color:var(--gold);margin-left:6px;animation:abgtHeroCursor .7s steps(1) infinite}
@keyframes abgtHeroCursor{50%{opacity:0}}
.team-royal-section .royal-card.reveal{opacity:0;visibility:hidden;transform:translate3d(0,32px,0) scale(.97);filter:blur(8px);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1),filter 1s ease,box-shadow .8s ease;transition-delay:var(--reveal-delay,0ms);will-change:opacity,transform,filter}
.team-royal-section .royal-card.reveal.visible{opacity:1;visibility:visible;transform:none;filter:none;box-shadow:0 24px 65px rgba(11,39,85,.13),0 0 0 1px rgba(242,193,78,.05)}
.team-royal-section .royal-card.reveal.visible:hover{transform:translateY(-9px)}
@media(prefers-reduced-motion:reduce){.hero .hero-copy h2,.hero .hero-copy p,.hero .hero-copy .typing{transition:none!important;opacity:1!important;transform:none!important}.hero .hero-copy .typing:after{animation:none!important}.team-royal-section .royal-card.reveal{opacity:1!important;visibility:visible!important;transform:none!important;filter:none!important;transition:none!important}}

/* ABGT global hero visual — isolated overlay, no layout reflow */
.hero-global-visual{position:absolute;z-index:3;right:1.5%;top:50%;width:min(58vw,760px);aspect-ratio:1/1;transform:translateY(-50%);pointer-events:none;display:block;overflow:visible}
.hero-global-globe{position:absolute;inset:6%;width:88%;height:88%;object-fit:contain;filter:drop-shadow(0 0 28px rgba(235,176,58,.22));animation:abgtGlobeTurn 42s linear infinite;transform-origin:center}
.hero-globe-halo{position:absolute;inset:4%;border-radius:50%;background:radial-gradient(circle,rgba(23,104,183,.08) 0 45%,rgba(238,180,63,.12) 55%,transparent 70%);filter:blur(5px);animation:abgtHalo 6s ease-in-out infinite}
.hero-globe-orbit{position:absolute;inset:0;animation:abgtOrbitTurn 42s linear infinite}
.hero-globe-orbit svg{width:100%;height:100%;overflow:visible}
.hero-globe-orbit text{font-family:Arial,sans-serif;font-size:15px;font-weight:700;letter-spacing:3px;fill:rgba(239,190,83,.95);text-shadow:0 0 12px rgba(239,190,83,.35)}
.hero-globe-pulse{position:absolute;left:50%;top:50%;width:14px;height:14px;border-radius:50%;background:#f0bf55;box-shadow:0 0 0 0 rgba(240,191,85,.45);transform:translate(-50%,-50%);animation:abgtPulse 2.4s ease-out infinite}
@keyframes abgtGlobeTurn{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@keyframes abgtOrbitTurn{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@keyframes abgtHalo{0%,100%{opacity:.55;transform:scale(.96)}50%{opacity:1;transform:scale(1.03)}}
@keyframes abgtPulse{0%{box-shadow:0 0 0 0 rgba(240,191,85,.45);opacity:.9}70%{box-shadow:0 0 0 22px rgba(240,191,85,0);opacity:.2}100%{box-shadow:0 0 0 0 rgba(240,191,85,0);opacity:.9}}
@media(max-width:900px){.hero-global-visual{width:72vw;right:-8%;top:51%;opacity:.48}.hero-globe-orbit text{font-size:11px;letter-spacing:2px}.hero-copy{z-index:10}}
@media(max-width:620px){.hero-global-visual{width:82vw;right:-18%;top:52%;opacity:.26}.hero-global-globe{inset:8%;width:84%;height:84%}.hero-globe-orbit text{font-size:9px;letter-spacing:1.5px}}
@media(prefers-reduced-motion:reduce){.hero-global-globe,.hero-globe-orbit,.hero-globe-halo,.hero-globe-pulse{animation:none!important}.hero-global-globe{transform:none!important}}

/* === ABGT GLOBE FINAL: same restrained globe on all 6 slides === */
.hero .hero-global-visual{position:absolute;z-index:3;right:4%;top:50%;width:min(40vw,540px);aspect-ratio:1/1;transform:translateY(-50%);pointer-events:none;display:block;overflow:visible;opacity:.96}
.hero .hero-global-globe{position:absolute;inset:8%;width:84%;height:84%;object-fit:contain;filter:drop-shadow(0 0 24px rgba(235,176,58,.20));animation:abgtGlobeTurn 48s linear infinite;transform-origin:center}
.hero .hero-globe-halo{position:absolute;inset:6%;border-radius:50%;background:radial-gradient(circle,rgba(23,104,183,.07) 0 44%,rgba(238,180,63,.10) 54%,transparent 70%);filter:blur(4px);animation:abgtHalo 7s ease-in-out infinite}
.hero .hero-globe-orbit{position:absolute;inset:0;animation:abgtOrbitTurn 48s linear infinite}
.hero .hero-globe-orbit svg{width:100%;height:100%;overflow:visible}
.hero .hero-globe-orbit text{font-size:11px;letter-spacing:2px}
.hero .hero-globe-logo-mask{position:absolute;left:58.5%;top:50%;width:17%;height:22%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(4,13,28,.78) 0 48%,rgba(4,13,28,.35) 68%,transparent 76%);z-index:4;pointer-events:none;mix-blend-mode:multiply}
.hero .hero-globe-pulse{z-index:5}
@media(max-width:900px){.hero .hero-global-visual{width:48vw;right:0;top:52%;opacity:.55}.hero .hero-globe-orbit text{font-size:9px;letter-spacing:1.5px}.hero .hero-copy{z-index:10}}
@media(max-width:620px){.hero .hero-global-visual{width:58vw;right:-8%;top:53%;opacity:.30}.hero .hero-global-globe{inset:10%;width:80%;height:80%}.hero .hero-globe-orbit text{font-size:7px;letter-spacing:1px}.hero .hero-globe-logo-mask{width:16%;height:20%}}
