*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"DM Sans",sans-serif;color:#17263a;background:#f7f9fc;line-height:1.6;overflow-x:hidden}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:99;opacity:.18;background-image:radial-gradient(#24425f .45px,transparent .45px);background-size:6px 6px}
.cursor-glow{position:fixed;width:360px;height:360px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,#13b9d51a,transparent 67%);transform:translate(-50%,-50%);z-index:0}
.header{height:78px;position:fixed;top:0;left:0;right:0;z-index:60;display:flex;align-items:center;justify-content:space-between;padding:0 6%;background:#f7f9fbd9;border-bottom:1px solid #dce5ee;backdrop-filter:blur(18px)}
.brand{display:flex;align-items:center;gap:10px;color:#10243a;font:800 15px Manrope;letter-spacing:.6px}
.brand-symbol{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:#102b46;color:#fff;box-shadow:0 7px 20px #102b4625}
.brand-name span{color:#078fa8}
.header nav{display:flex;gap:30px;color:#64758a;font-size:13px}
.header nav a{transition:.2s}.header nav a:hover{color:#078fa8}
.header-cta{border:1px solid #cdd9e4;padding:10px 15px;border-radius:10px;font-size:12px;color:#183049;background:#fff}
.header-cta b{color:#078fa8}.menu{display:none;background:none;border:0;color:#10243a;font-size:23px}

.hero{min-height:850px;position:relative;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;padding:145px 7% 90px;background:linear-gradient(135deg,#f8fafc 0%,#eef6f7 55%,#f8fafc 100%);overflow:hidden}
.hero:after{content:"";position:absolute;right:-220px;top:110px;width:680px;height:680px;border-radius:50%;border:1px solid #0c9eaf17;box-shadow:inset 0 0 100px #0c9eaf08,0 0 120px #0c9eaf08}
.hero-bg{position:absolute;inset:0;background-image:linear-gradient(#1d496008 1px,transparent 1px),linear-gradient(90deg,#1d496008 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(to bottom,#000 0%,transparent 85%)}
.hero-bg span{position:absolute;border-radius:50%;filter:blur(2px);animation:float 8s ease-in-out infinite}
.hero-bg span:nth-child(1){width:430px;height:430px;right:3%;top:150px;background:#0c9eaf10}
.hero-bg span:nth-child(2){width:180px;height:180px;left:38%;top:10%;background:#1d49600c;animation-delay:-3s}
.hero-bg span:nth-child(3){width:130px;height:130px;left:4%;bottom:8%;background:#0c9eaf0c;animation-delay:-5s}
.code-rain{position:absolute;right:3%;top:115px;display:grid;gap:55px;color:#167d9410;font:700 11px monospace;transform:rotate(14deg);animation:drift 12s linear infinite}
.code-rain i:nth-child(2n){margin-left:80px}
.hero-content{position:relative;z-index:3;max-width:690px}
.status{font-size:10px;letter-spacing:2px;font-weight:800;color:#078fa8;display:flex;align-items:center;gap:10px}
.status span{width:7px;height:7px;background:#15b58c;border-radius:50%;box-shadow:0 0 14px #15b58c66}
.hero h1{font:800 clamp(58px,7vw,94px)/.95 Manrope;letter-spacing:-5px;margin:25px 0;color:#10243a}
.hero h1 em{font-style:normal;color:#078fa8}
.hero p{font-size:18px;color:#66798d;max-width:600px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:14px 20px;border-radius:11px;font-weight:700;font-size:13px;border:1px solid transparent;cursor:pointer}
.primary{background:#102b46;color:#fff;box-shadow:0 14px 35px #102b4626}.primary:hover{transform:translateY(-2px)}
.outline{border-color:#cbd8e3;color:#19344e;background:#ffffffaa}
.hero-meta{display:flex;gap:34px;margin-top:55px;color:#738598;font-size:11px}
.hero-meta b{color:#17334e;font:800 18px Manrope;margin-right:7px}

.hero-console{position:relative;z-index:3;perspective:1000px}
.console-shell{width:min(560px,100%);height:410px;margin:auto;background:linear-gradient(145deg,#102b46,#071b2d);border:1px solid #ffffff18;border-radius:23px;box-shadow:0 40px 90px #102b4630,0 0 80px #078fa814;transform:rotateY(-8deg) rotateX(4deg);animation:consoleFloat 7s ease-in-out infinite}
.console-top,.console-bottom{height:48px;border-bottom:1px solid #ffffff10;display:flex;align-items:center;padding:0 20px;gap:10px;font:10px monospace;color:#88a3b9}
.console-top span{display:flex;gap:6px}.console-top i{width:7px;height:7px;border-radius:50%;background:#597187}.console-top small{margin-left:10px}.console-top b{margin-left:auto;color:#42d9a0;font-size:9px}
.console-body{height:310px;display:grid;grid-template-columns:1.3fr .7fr;padding:40px}
.console-code{font:13px/2 monospace;color:#83a0b7}.console-code p{margin:0}.console-code p span{color:#46627a;margin-right:20px}.console-code b{color:#58d1dc}.console-code em{color:#65dfad;font-style:normal}.console-code strong{color:#42d9a0}
.radar{position:relative;display:grid;place-items:center;height:190px;width:190px;margin:auto;border:1px solid #5dd4df30;border-radius:50%;overflow:hidden}
.radar:before,.radar:after{content:"";position:absolute;background:#5dd4df18}.radar:before{width:100%;height:1px}.radar:after{height:100%;width:1px}
.radar-ring{position:absolute;border:1px solid #5dd4df2a;border-radius:50%}.r1{inset:25%}.r2{inset:40%}.r3{inset:10%}
.radar-scan{position:absolute;width:50%;height:1px;background:linear-gradient(90deg,#5dd4df,transparent);left:50%;top:50%;transform-origin:left;animation:scan 3s linear infinite}.radar b{z-index:2;color:#fff;font:800 26px Manrope}
.console-bottom{border-top:1px solid #ffffff0e;border-bottom:0;justify-content:space-around;color:#63839d}

.ticker{height:52px;background:#102b46;color:#dcebf4;overflow:hidden;display:flex;align-items:center}
.ticker-track{display:flex;gap:30px;white-space:nowrap;animation:ticker 25s linear infinite;font:800 10px Manrope;letter-spacing:1.5px}.ticker-track b{color:#59ced9;opacity:.9}

.section{padding:120px 7%}
.dark-section{background:#102b46;color:#fff}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:60px}
.eyebrow{font-size:10px;letter-spacing:2px;color:#078fa8;font-weight:800;display:inline-block;margin-bottom:16px}
.dark-section .eyebrow{color:#65d8df}
.section-head h2,.about h2,.partner-intro h2,.cta h2,.contact h2{font:800 clamp(36px,4.6vw,60px)/1.04 Manrope;letter-spacing:-3px;margin:0}
.section-head h2{color:#fff}.section-head h2 span{color:#63d3dc}.section-head>p{max-width:430px;color:#a4bacb;font-size:14px}

.expertise-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #ffffff14;border-left:1px solid #ffffff14}
.expertise{min-height:305px;padding:27px;border-right:1px solid #ffffff14;border-bottom:1px solid #ffffff14;position:relative;background:linear-gradient(145deg,#ffffff08,#ffffff02);transition:.35s}
.expertise:hover{background:#4ed4dd0d;transform:translateY(-6px);box-shadow:0 25px 50px #0002}
.expertise>span{position:absolute;right:20px;top:18px;color:#6f899d;font:11px monospace}
.expertise-icon{width:48px;height:48px;border-radius:12px;border:1px solid #65d8df3b;background:#65d8df0b;color:#65d8df;display:grid;place-items:center;font:700 18px monospace;margin-bottom:55px}
.expertise h3{font:700 17px Manrope;color:#f2f8fc;margin:0 0 9px}.expertise p{font-size:12px;color:#9cb2c3}.expertise>b{position:absolute;bottom:24px;left:27px;font:9px monospace;color:#69a7b9}

.about{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;background:#fff;color:#11263c}
.about h2{color:#10243a}.about-copy p{color:#64778b;max-width:590px}
.about-visual{height:500px;position:relative;background:linear-gradient(145deg,#0a2238,#103f54);border-radius:25px;overflow:hidden;border:1px solid #0d6f7c1c;box-shadow:0 25px 70px #102b4615}
.grid3d{position:absolute;inset:-50%;background-image:linear-gradient(#69d4dc18 1px,transparent 1px),linear-gradient(90deg,#69d4dc18 1px,transparent 1px);background-size:45px 45px;transform:perspective(450px) rotateX(60deg) rotateZ(15deg);animation:gridmove 15s linear infinite}
.about-orbit{position:absolute;inset:17%;border:1px solid #68d5dc40;border-radius:50%;transform:rotateX(65deg);animation:spin 12s linear infinite}.about-orbit:after{content:"";position:absolute;top:0;left:50%;width:10px;height:10px;background:#67d5dd;border-radius:50%;box-shadow:0 0 25px #67d5dd}
.about-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:150px;height:150px;border-radius:50%;background:#68d5dc14;border:1px solid #68d5dc66;display:grid;place-items:center;box-shadow:0 0 80px #68d5dc18}.about-core span{font:800 40px Manrope;color:#fff}.about-core small{position:absolute;bottom:28px;text-align:center;font:700 7px monospace;letter-spacing:1px;color:#8ac8d0}
.float-tag{position:absolute;padding:8px 11px;border:1px solid #ffffff18;background:#081b2dd9;backdrop-filter:blur(10px);font:700 9px monospace;color:#76d9e1;animation:float 5s ease-in-out infinite}.t1{top:20%;left:15%}.t2{right:12%;top:35%;animation-delay:-2s}.t3{bottom:18%;left:22%;animation-delay:-3s}
.principles{display:flex;gap:35px;margin-top:38px}.principles>div{display:flex;gap:10px;align-items:start}.principles b{font:800 12px monospace;color:#078fa8}.principles span{font:700 11px Manrope}.principles small{font:400 10px DM Sans;color:#8291a2}

.partners-section{padding:115px 0 130px;background:#f7f9fc;overflow:hidden;color:#13283e}
.partner-intro{padding:0 7%;margin-bottom:55px;display:flex;align-items:end;justify-content:space-between;gap:40px}.partner-intro h2{color:#10243a}.partner-intro p{max-width:390px;color:#708195;font-size:13px}
.partner-marquee{overflow:hidden;border-top:1px solid #dce5ed;border-bottom:1px solid #dce5ed;padding:25px 0;background:#fff}
.partner-track{display:flex;gap:16px;width:max-content;animation:partnerScroll 28s linear infinite}.partner-marquee:hover .partner-track{animation-play-state:paused}
.partner-card{height:105px;width:190px;display:grid;place-items:center;border:1px solid #dfe7ee;border-radius:15px;background:#fbfcfd;flex-shrink:0;transition:.3s}.partner-card:hover{background:#f3fafb;border-color:#79cdd5}
.partner-logo{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:14px 16px;overflow:hidden}
.partner-logo-img{display:block;width:145px;height:58px;object-fit:contain;transition:transform .35s ease,filter .35s ease}
.partner-card:hover .partner-logo-img{transform:scale(1.06)}
.partner-fallback{font:800 19px/1 Manrope;letter-spacing:-.5px;color:#1b344c;text-align:center}
.partner-logo small{display:block;text-align:center;font:8px monospace;letter-spacing:1.5px;color:#8293a3;margin-top:5px}

.cta{margin:0 7% 115px;padding:70px;border-radius:27px;display:flex;justify-content:space-between;align-items:center;position:relative;overflow:hidden;background:#102b46;box-shadow:0 30px 80px #102b4626}
.cta:before{content:"";position:absolute;width:420px;height:420px;border:1px solid #65d8df1d;border-radius:50%;right:-120px;top:-180px}.cta:after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;background:#65d8df10;right:40px;top:10px;filter:blur(10px)}
.cta h2{color:#fff;position:relative;z-index:2}.cta .eyebrow{color:#69d8df}.cta .btn{position:relative;z-index:3}

.contact{display:grid;grid-template-columns:1fr 1fr;gap:100px;background:#eaf0f4;color:#11263c}
.contact h2{color:#10243a}.contact p{color:#687c8e;max-width:480px}.contact-items{display:grid;gap:12px;margin-top:30px;font-size:13px;color:#5f7387}.contact-items b{color:#20394f}
.contact-form{display:grid;gap:14px}.contact-form label{font-size:11px;font-weight:700;color:#4c6175}.contact-form input,.contact-form textarea{display:block;width:100%;margin-top:7px;border:1px solid #d2dee7;background:#fff;border-radius:10px;padding:13px 15px;font:inherit;outline:none}.contact-form input:focus,.contact-form textarea:focus{border-color:#57bdc8;box-shadow:0 0 0 3px #57bdc817}.contact-form .btn{width:max-content}.contact-form small{color:#078fa8}
footer{min-height:80px;padding:25px 7%;display:flex;align-items:center;justify-content:space-between;gap:20px;background:#071622;color:#70879a;font-size:11px}footer .brand{color:#fff}

.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
@keyframes ticker{to{transform:translateX(-50%)}}@keyframes partnerScroll{to{transform:translateX(-50%)}}@keyframes scan{to{transform:rotate(360deg)}}@keyframes spin{to{transform:rotateX(65deg) rotateZ(360deg)}}@keyframes gridmove{to{transform:perspective(450px) rotateX(60deg) rotateZ(15deg) translateY(45px)}}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-18px)}}@keyframes drift{to{transform:rotate(14deg) translateY(130px)}}@keyframes consoleFloat{0%,100%{transform:rotateY(-8deg) rotateX(4deg) translateY(0)}50%{transform:rotateY(-5deg) rotateX(2deg) translateY(-12px)}}

@media(max-width:1000px){
.header nav,.header-cta{display:none}.menu{display:block}.hero{grid-template-columns:1fr;min-height:auto;padding-top:140px}.hero-console{margin-top:65px}.expertise-grid{grid-template-columns:repeat(2,1fr)}.about{grid-template-columns:1fr;gap:55px}.contact{grid-template-columns:1fr;gap:50px}
}
@media(max-width:620px){
.hero{padding-left:5%;padding-right:5%}.hero h1{font-size:56px;letter-spacing:-3px}.hero-meta{gap:15px;flex-wrap:wrap}.console-shell{height:360px}.console-body{padding:25px;grid-template-columns:1fr}.radar{display:none}.console-code{font-size:11px}
.section{padding:85px 5%}.section-head{flex-direction:column;align-items:start;gap:20px}.expertise-grid{grid-template-columns:1fr}.about-visual{height:380px}.principles{gap:15px}.cta{margin:0 5% 80px;padding:40px 28px;flex-direction:column;align-items:start;gap:25px}.contact{padding-left:5%;padding-right:5%}footer{padding:25px 5%;flex-wrap:wrap}.partner-intro{padding:0 5%}.partner-card{width:155px}
}
/* ===== HEADER V4 — logo + professional framed navigation ===== */
.header{
  padding:0 6%;
  min-height:86px;
  border-bottom:0;
  background:rgba(247,249,251,.90);
  box-shadow:0 8px 30px rgba(20,40,60,.05);
}
.header .brand{gap:13px;text-decoration:none;align-items:center}
.header .brand-symbol.logo-box{
  width:68px;height:54px;
  border-radius:12px;
  background:#fff;
  border:1px solid #d9e5ec;
  box-shadow:0 8px 22px rgba(16,43,70,.10);
  padding:4px;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease;
}
.header .brand-symbol.logo-box img{
  width:100%;height:100%;object-fit:contain;display:block;
}
.header .brand:hover .logo-box{
  transform:translateY(-2px) scale(1.02);
  border-color:#159bd155;
  box-shadow:0 12px 28px rgba(21,155,209,.16);
}
.header .brand-name{
  font:800 24px/1 "Manrope",sans-serif;
  letter-spacing:-1px;
  color:#15283c;
  white-space:nowrap;
  text-decoration:none;
}
.header .brand-name span{
  color:#159bd1;
  text-decoration:none;
}
.header nav{
  display:flex;
  align-items:center;
  gap:5px;
  padding:5px;
  margin-left:auto;
  margin-right:22px;
  border:1px solid #d8e4eb;
  border-radius:16px;
  background:rgba(255,255,255,.76);
  box-shadow:0 8px 25px rgba(18,42,64,.06);
  backdrop-filter:blur(12px);
}
.header nav a{
  position:relative;
  padding:10px 15px;
  border-radius:11px;
  color:#53677a;
  font-size:12px;
  font-weight:700;
  text-decoration:none!important;
  transition:color .25s ease,background .25s ease,transform .25s ease,box-shadow .25s ease;
}
.header nav a:after,.header nav a:before{display:none!important;content:none!important}
.header nav a:hover{
  color:#102b46;
  background:#eef8fc;
  transform:translateY(-1px);
}
.header nav a.active{
  color:#087fbc;
  background:#f0f9fd;
  box-shadow:inset 0 0 0 1px #159bd11c;
}
.header .header-cta{
  padding:11px 17px;
  border:1px solid #159bd133;
  border-radius:13px;
  background:linear-gradient(135deg,#102b46,#173e59);
  color:#fff;
  text-decoration:none;
  font-size:11px;
  font-weight:800;
  box-shadow:0 10px 24px rgba(16,43,70,.17);
  transition:transform .25s ease,box-shadow .25s ease;
}
.header .header-cta:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 30px rgba(21,155,209,.20);
}
.header .header-cta b{color:#56cbe8}
.footer-logo-box{width:48px!important;height:38px!important;border-radius:8px!important;padding:2px!important}
.footer-logo-box img{object-fit:contain!important}
@media(max-width:900px){
  .header{padding:0 5%}
  .header .brand-symbol.logo-box{width:60px;height:50px}
  .header .brand-name{font-size:20px}
}
@media(max-width:620px){
  .header{min-height:74px}
  .header .brand-symbol.logo-box{width:54px;height:45px}
  .header .brand-name{font-size:18px}
}

/* ===== HERO REFINEMENT — logo colors + responsive ===== */
.hero h1{
  font-size:clamp(48px,6.2vw,78px);
  letter-spacing:-4px;
  line-height:.98;
}
.hero h1 em{color:#159bd1}
.fs-mark{
  display:flex!important;
  align-items:center;
  justify-content:center;
  gap:0;
  font:800 28px/1 "Manrope",sans-serif!important;
  letter-spacing:-3px;
}
.fs-mark span{color:#159bd1;text-shadow:0 0 16px #159bd155}
.fs-mark strong{color:#fff;font-weight:800}
.radar{
  background:radial-gradient(circle,#159bd10d,transparent 65%);
}
.radar-scan{background:linear-gradient(90deg,#159bd1,transparent)}
@media (max-width:1100px){
  .hero{grid-template-columns:1fr 1fr;padding-left:5%;padding-right:5%}
  .hero h1{font-size:clamp(45px,5.6vw,68px)}
  .hero-console{transform:scale(.92);transform-origin:center}
  .expertise-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:800px){
  .header{padding:0 5%;min-height:76px}
  .header nav{
    position:absolute;
    top:82px;left:5%;right:5%;
    display:none;
    flex-direction:column;
    align-items:stretch;
    gap:3px;
    margin:0;
    padding:7px;
    border-radius:14px;
  }
  .header nav.open{display:flex}
  .header nav a{padding:12px 14px}
  .header nav a.active:after{display:none!important}
  .header-cta{display:none}
  .menu{display:block}
  .hero{
    grid-template-columns:1fr;
    min-height:auto;
    padding-top:120px;
    padding-bottom:55px;
  }
  .hero-content{max-width:700px}
  .hero h1{font-size:clamp(44px,10vw,65px);letter-spacing:-3px}
  .hero p{font-size:15px;max-width:620px}
  .hero-console{margin-top:35px;transform:none;width:100%}
  .console-shell{width:min(600px,100%);height:390px}
  .about{grid-template-columns:1fr;gap:50px}
  .contact{grid-template-columns:1fr;gap:45px}
  .cta{margin-left:5%;margin-right:5%}
}
@media (max-width:600px){
  .header .brand-symbol.logo-box{width:58px;height:47px}
  .header .brand-name{font-size:19px;letter-spacing:-.7px}
  .hero{padding-left:5%;padding-right:5%}
  .hero h1{font-size:clamp(40px,12vw,54px);letter-spacing:-2.5px}
  .hero p{font-size:14px}
  .hero-actions{flex-direction:column;align-items:stretch}
  .hero-actions .btn{width:100%}
  .hero-meta{gap:13px}
  .console-shell{height:auto;min-height:330px;border-radius:18px}
  .console-body{grid-template-columns:1fr;padding:25px 20px}
  .console-code{font-size:11px}
  .radar{width:135px;height:135px;margin:22px auto 0}
  .console-bottom{height:42px;font-size:9px}
  .section{padding:75px 5%}
  .section-head h2,.about h2,.contact h2{font-size:39px;letter-spacing:-2px}
  .expertise-grid{grid-template-columns:1fr}
  .partner-intro{padding:0 5%;display:block}
  .partner-intro h2{font-size:36px}
  .partner-marquee{margin:0 5%;border-radius:12px}
  .cta{padding:38px 25px}
  .cta h2{font-size:35px}
  .contact-form{width:100%}
  footer{padding:24px 5%;display:grid;gap:10px}
}

/* ===== FOOTER FIX — compact, clean and responsive ===== */
footer{
  width:100%;
  min-height:88px!important;
  height:auto!important;
  padding:18px 6%!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
  background:#071622!important;
  color:#8fa3b4!important;
  border-top:1px solid rgba(255,255,255,.08)!important;
  overflow:hidden!important;
  position:relative!important;
}
footer:before{
  content:"";
  position:absolute;
  width:340px;height:160px;
  right:-80px;bottom:-100px;
  border-radius:50%;
  background:radial-gradient(circle,#159bd11c,transparent 70%);
  pointer-events:none;
}
footer .brand{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  min-width:0;
  color:#fff!important;
  text-decoration:none!important;
  flex-shrink:0;
}
footer .brand-symbol.footer-logo-box{
  width:52px!important;
  height:42px!important;
  min-width:52px!important;
  max-width:52px!important;
  min-height:42px!important;
  max-height:42px!important;
  padding:2px!important;
  margin:0!important;
  border-radius:8px!important;
  background:#fff!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:0 5px 18px rgba(0,0,0,.18)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
}
footer .brand-symbol.footer-logo-box img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
}
footer .brand-name{
  font:800 16px/1 "Manrope",sans-serif!important;
  letter-spacing:-.5px!important;
  color:#fff!important;
  white-space:nowrap!important;
}
footer .brand-name span{
  color:#159bd1!important;
  text-decoration:none!important;
}
footer>span{
  font-size:10px!important;
  color:#8095a6!important;
  white-space:nowrap;
}
footer>span:last-child{
  color:#159bd1!important;
  font-weight:600;
}
@media(max-width:700px){
  footer{
    min-height:120px!important;
    padding:22px 5%!important;
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:center!important;
    text-align:center!important;
    gap:10px 18px!important;
  }
  footer .brand{width:100%;justify-content:center}
  footer>span{white-space:normal}
}
@media(max-width:420px){
  footer{min-height:135px!important}
  footer .brand-name{font-size:15px!important}
  footer .brand-symbol.footer-logo-box{width:48px!important;height:38px!important;min-width:48px!important}
}

/* ===== HEADER LOGO — complete logo artwork, no duplicated wordmark ===== */
.header .brand.logo-only{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:230px!important;
  height:68px!important;
  padding:0!important;
  margin:0!important;
  text-decoration:none!important;
}
.header .brand.logo-only .main-logo{
  display:block!important;
  width:225px!important;
  height:68px!important;
  max-width:100%!important;
  object-fit:contain!important;
  object-position:left center!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  padding:0!important;
  box-shadow:none!important;
  transition:transform .3s ease,filter .3s ease!important;
}
.header .brand.logo-only:hover .main-logo{
  transform:scale(1.025)!important;
  filter:drop-shadow(0 8px 16px rgba(21,155,209,.16))!important;
}
.header .brand.logo-only + nav{
  margin-left:auto!important;
}
@media(max-width:900px){
  .header .brand.logo-only{
    width:190px!important;
    height:58px!important;
  }
  .header .brand.logo-only .main-logo{
    width:185px!important;
    height:58px!important;
  }
}
@media(max-width:620px){
  .header .brand.logo-only{
    width:165px!important;
    height:52px!important;
  }
  .header .brand.logo-only .main-logo{
    width:160px!important;
    height:52px!important;
  }
}

/* ===== MODIFICATION DEMANDEE UNIQUEMENT : EXPERTISES ===== */
#expertises.expertise-section{padding-top:78px!important;padding-bottom:82px!important}
#expertises .section-head{max-width:1180px;margin:0 auto 30px!important}
#expertises .section-head h2{font-size:clamp(34px,4vw,52px)!important;line-height:1.04!important;letter-spacing:-2.2px!important}
#expertises .section-head h2 span{color:#159bd1!important}
#expertises .expertise-grid{max-width:1180px;margin:0 auto!important;display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:12px!important}
#expertises .expertise.expertise-visual{
  min-height:300px!important;height:300px!important;padding:0!important;
  position:relative!important;overflow:hidden!important;
  border:1px solid rgba(53,171,221,.27)!important;border-radius:13px!important;
  background-image:var(--expertise-bg)!important;background-size:cover!important;background-position:center!important;
  box-shadow:0 10px 28px rgba(0,0,0,.20)!important;
  transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease!important;
}
#expertises .expertise.expertise-visual:before{
  content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg,rgba(3,15,28,.27),rgba(3,15,28,.50) 38%,rgba(3,15,28,.94) 100%)!important;
  transition:background .35s ease;
}
#expertises .expertise.expertise-visual:hover{
  transform:translateY(-5px)!important;
  border-color:#159bd199!important;
  box-shadow:0 18px 40px rgba(0,0,0,.32),0 0 25px rgba(21,155,209,.10)!important;
}
#expertises .expertise.expertise-visual:hover:before{
  background:linear-gradient(180deg,rgba(3,15,28,.18),rgba(3,15,28,.43) 40%,rgba(3,15,28,.91) 100%)!important;
}
#expertises .expertise-overlay{
  position:absolute;inset:0;z-index:2;pointer-events:none;
  background:radial-gradient(circle at 82% 12%,rgba(21,155,209,.22),transparent 34%)!important;
}
#expertises .expertise.expertise-visual>span{
  position:absolute!important;right:15px!important;top:14px!important;z-index:4!important;
  color:#dcebf3!important;font:700 10px/1 "Manrope",sans-serif!important;letter-spacing:1px!important;
}
#expertises .expertise.expertise-visual .expertise-icon{
  position:absolute!important;left:15px!important;top:15px!important;z-index:4!important;
  width:44px!important;height:44px!important;margin:0!important;
  display:grid!important;place-items:center!important;
  background:rgba(5,23,38,.72)!important;border:1px solid rgba(43,182,229,.48)!important;
  border-radius:10px!important;color:#25c6f4!important;font-size:18px!important;
  backdrop-filter:blur(7px)!important;
}
#expertises .expertise-content{
  position:absolute!important;left:16px!important;right:16px!important;bottom:15px!important;z-index:4!important;
}
#expertises .expertise-content h3{
  font-size:15px!important;line-height:1.2!important;margin:0 0 8px!important;color:#fff!important;
}
#expertises .expertise-content p{
  font-size:10px!important;line-height:1.55!important;color:#b9cbd8!important;margin:0 0 14px!important;
}
#expertises .expertise-content b{
  font:700 8px/1 "Manrope",sans-serif!important;letter-spacing:1.1px!important;color:#22c4f2!important;
}
@media(max-width:1050px){
  #expertises .expertise-grid{grid-template-columns:repeat(2,1fr)!important}
  #expertises .expertise.expertise-visual{height:285px!important;min-height:285px!important}
}
@media(max-width:600px){
  #expertises.expertise-section{padding-top:62px!important;padding-bottom:68px!important}
  #expertises .section-head{margin-bottom:24px!important}
  #expertises .section-head h2{font-size:39px!important}
  #expertises .expertise-grid{grid-template-columns:1fr!important;gap:13px!important}
  #expertises .expertise.expertise-visual{height:295px!important;min-height:295px!important}
}

/* ===== GROUPE — amélioration visuelle ===== */
.about-premium{display:grid!important;grid-template-columns:minmax(420px,.95fr) minmax(480px,1.05fr)!important;gap:70px!important;align-items:center!important;max-width:1280px!important;margin:0 auto!important;padding-top:105px!important;padding-bottom:105px!important}
.about-premium .about-visual{height:610px!important;min-height:610px!important;position:relative!important;overflow:hidden!important;border-radius:28px!important;background:linear-gradient(145deg,#061a2b,#0b3049 55%,#061624)!important;border:1px solid rgba(34,190,235,.24)!important;box-shadow:0 28px 70px rgba(4,24,39,.18)!important}
.about-premium .visual-glow{position:absolute;inset:-20%;background:radial-gradient(circle at 50% 42%,rgba(21,155,209,.24),transparent 34%),radial-gradient(circle at 15% 90%,rgba(21,155,209,.12),transparent 30%);animation:groupGlow 7s ease-in-out infinite alternate}
@keyframes groupGlow{from{transform:scale(.96);opacity:.7}to{transform:scale(1.04);opacity:1}}
.about-premium .grid3d{position:absolute;inset:45% -15% -12%;opacity:.48;transform:perspective(500px) rotateX(58deg);background-image:linear-gradient(rgba(47,187,229,.22) 1px,transparent 1px),linear-gradient(90deg,rgba(47,187,229,.22) 1px,transparent 1px);background-size:48px 48px}
.about-premium .about-orbit{position:absolute;border:1px solid rgba(54,198,237,.34);border-radius:50%;left:50%;top:45%;transform:translate(-50%,-50%) rotate(-18deg);width:72%;height:32%;box-shadow:0 0 28px rgba(28,170,215,.08)}
.about-premium .orbit-b{width:62%;height:58%;transform:translate(-50%,-50%) rotate(48deg)}
.about-premium .about-core{position:absolute;left:50%;top:45%;transform:translate(-50%,-50%);width:190px;height:190px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 35% 25%,#123e59,#061927 68%);border:1px solid rgba(74,210,241,.5);box-shadow:0 0 0 14px rgba(31,177,221,.04),0 0 55px rgba(24,169,217,.16)}
.about-premium .about-core span{font:800 48px/1 "Manrope",sans-serif;letter-spacing:-5px;color:#fff}.about-premium .about-core span i{font-style:normal;color:#159bd1}.about-premium .about-core small{margin-top:12px;color:#65c9e6;font:700 8px/1.35 "Manrope",sans-serif;letter-spacing:2px;text-align:center}
.about-premium .float-tag{position:absolute;z-index:3;padding:10px 13px;border:1px solid rgba(51,191,232,.25);background:rgba(5,25,41,.72);backdrop-filter:blur(8px);border-radius:9px;color:#70d5ef;font:700 8px/1 "Manrope",sans-serif;letter-spacing:1.5px;box-shadow:0 8px 20px rgba(0,0,0,.15);animation:tagFloat 4s ease-in-out infinite}.about-premium .float-tag em{font-style:normal;color:#6f8798;margin-left:8px}.about-premium .t1{left:13%;top:22%}.about-premium .t2{right:12%;top:35%;animation-delay:.8s}.about-premium .t3{left:18%;bottom:24%;animation-delay:1.5s}@keyframes tagFloat{50%{transform:translateY(-7px)}}
.about-premium .visual-line{position:absolute;height:1px;background:linear-gradient(90deg,transparent,rgba(65,205,241,.55),transparent);opacity:.55}.about-premium .line-a{width:70%;top:20%;left:15%;transform:rotate(-12deg)}.about-premium .line-b{width:58%;bottom:25%;left:22%;transform:rotate(17deg)}
.about-premium .visual-status{position:absolute;top:22px;right:25px;color:#8caaba;font:700 8px/1 "Manrope",sans-serif;letter-spacing:1.3px}.about-premium .visual-status span{display:inline-block;width:6px;height:6px;background:#24d39b;border-radius:50%;margin-right:7px;box-shadow:0 0 9px #24d39b}
.about-premium .visual-caption{position:absolute;bottom:24px;left:25px;right:25px;display:flex;justify-content:space-between;align-items:end;padding-top:18px;border-top:1px solid rgba(255,255,255,.09);color:#fff}.about-premium .visual-caption b{font:800 11px/1 "Manrope",sans-serif;letter-spacing:1px}.about-premium .visual-caption small{font:600 7px/1 "Manrope",sans-serif;color:#7190a1;letter-spacing:1.2px}
.about-premium .about-copy{max-width:650px!important}.about-premium .about-copy h2{font-size:clamp(42px,4.2vw,64px)!important;line-height:.98!important;letter-spacing:-3.2px!important;margin:18px 0 25px!important}.about-premium .about-copy h2 span{color:#159bd1}.about-premium .about-lead{font-size:17px!important;line-height:1.7!important;color:#61788b!important;max-width:620px}
.about-premium .about-history{display:flex;gap:15px;align-items:center;margin:26px 0;padding:18px 20px;border:1px solid #dce8ee;border-radius:14px;background:linear-gradient(100deg,#f8fbfc,#fff);box-shadow:0 10px 30px rgba(18,52,75,.05)}.about-premium .history-mark{width:40px;height:40px;min-width:40px;display:grid;place-items:center;border-radius:10px;background:#09243a;color:#159bd1;font:800 12px/1 "Manrope",sans-serif}.about-premium .about-history p{margin:0!important;font-size:12px!important;line-height:1.6!important;color:#657b8c!important}.about-premium .about-history strong{color:#0d2c45}
.about-premium .about-metrics{display:flex;gap:10px;margin:25px 0 22px}.about-premium .about-metrics>div{flex:1;display:flex;align-items:center;gap:10px;padding:13px 14px;border:1px solid #dfe9ee;border-radius:12px;background:#fff}.about-premium .about-metrics strong{font:800 19px/1 "Manrope",sans-serif;color:#159bd1}.about-premium .about-metrics span{font:700 9px/1.2 "Manrope",sans-serif;color:#1b344a}.about-premium .about-metrics small{font-weight:500;color:#8193a0}
.about-premium .principles{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:9px!important}.about-premium .principles>div{position:relative;padding:14px!important;border:1px solid #dfe8ed!important;border-radius:12px!important;background:#fff!important;transition:transform .25s,box-shadow .25s,border-color .25s}.about-premium .principles>div:hover{transform:translateY(-3px);border-color:#159bd155!important;box-shadow:0 10px 24px rgba(21,155,209,.08)}.about-premium .principles b{font:800 9px/1 "Manrope",sans-serif!important;color:#159bd1!important}.about-premium .principles span{display:block;margin-top:9px;font:800 10px/1.2 "Manrope",sans-serif!important;color:#18334a!important}.about-premium .principles small{display:block;margin-top:4px;color:#8799a6!important;font-size:8px!important}.about-premium .principles i{position:absolute;right:12px;bottom:13px;font-style:normal;color:#159bd1}
@media(max-width:1000px){.about-premium{grid-template-columns:1fr!important;gap:45px!important}.about-premium .about-visual{height:500px!important;min-height:500px!important}.about-premium .about-copy{max-width:100%!important}}
@media(max-width:600px){.about-premium{padding-top:65px!important;padding-bottom:70px!important;gap:32px!important}.about-premium .about-visual{height:390px!important;min-height:390px!important;border-radius:20px!important}.about-premium .about-core{width:130px;height:130px}.about-premium .about-core span{font-size:35px}.about-premium .float-tag{padding:8px 9px;font-size:7px}.about-premium .visual-caption{display:block}.about-premium .visual-caption small{display:block;margin-top:8px}.about-premium .about-copy h2{font-size:40px!important;letter-spacing:-2px!important}.about-premium .about-lead{font-size:14px!important}.about-premium .about-metrics{display:grid;grid-template-columns:1fr!important}.about-premium .principles{grid-template-columns:1fr!important}}

/* ===== CTA PREMIUM — amélioration de la section appel à l'action uniquement ===== */
.cta.cta-premium{
  position:relative!important;
  max-width:1280px!important;
  min-height:410px!important;
  margin:0 auto!important;
  padding:62px 76px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  overflow:hidden!important;
  border-radius:30px!important;
  background:linear-gradient(125deg,#061b2e 0%,#0a2a43 55%,#071a2c 100%)!important;
  border:1px solid rgba(65,191,232,.22)!important;
  box-shadow:0 28px 70px rgba(5,29,47,.20)!important;
}
.cta-premium .cta-grid{
  position:absolute;inset:0;opacity:.18;pointer-events:none;
  background-image:linear-gradient(rgba(83,199,231,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(83,199,231,.18) 1px,transparent 1px);
  background-size:52px 52px;
  mask-image:linear-gradient(90deg,black,transparent 78%);
}
.cta-premium .cta-glow{
  position:absolute!important;width:500px!important;height:500px!important;right:-120px!important;top:-180px!important;
  background:radial-gradient(circle,rgba(21,155,209,.22),transparent 68%)!important;
  filter:blur(4px);animation:ctaGlow 6s ease-in-out infinite alternate;
}
@keyframes ctaGlow{from{transform:scale(.92);opacity:.7}to{transform:scale(1.08);opacity:1}}
.cta-premium .cta-orbit{
  position:absolute;right:-110px;top:-135px;width:520px;height:520px;border:1px solid rgba(63,197,235,.17);border-radius:50%;
  box-shadow:0 0 0 55px rgba(43,178,220,.025),0 0 0 110px rgba(43,178,220,.018);
}
.cta-premium .cta-content{position:relative;z-index:3;max-width:850px}
.cta-premium .cta-kicker{
  display:flex;align-items:center;gap:11px;margin-bottom:20px;
  color:#61cfe9;font:800 10px/1 "Manrope",sans-serif;letter-spacing:2.5px;
}
.cta-premium .cta-kicker span{width:7px;height:7px;border-radius:50%;background:#24cfa1;box-shadow:0 0 12px #24cfa1}
.cta-premium h2{
  margin:0!important;color:#fff!important;
  font:800 clamp(43px,5vw,68px)/.98 "Manrope",sans-serif!important;
  letter-spacing:-3.5px!important;
}
.cta-premium h2 em{font-style:normal;color:#159bd1}
.cta-premium p{
  max-width:670px;margin:22px 0 0;color:#a9c0cf;
  font-size:15px;line-height:1.65;
}
.cta-premium .cta-actions{display:flex;align-items:center;gap:20px;margin-top:28px}
.cta-premium .cta-button{
  display:inline-flex;align-items:center;gap:26px;padding:14px 17px 14px 21px;
  color:#fff;text-decoration:none;border:1px solid rgba(87,213,245,.35);border-radius:12px;
  background:linear-gradient(135deg,#159bd1,#087db5);
  box-shadow:0 12px 28px rgba(0,126,181,.22);
  font:800 12px/1 "Manrope",sans-serif;transition:transform .3s,box-shadow .3s,background .3s;
}
.cta-premium .cta-button b{
  display:grid;place-items:center;width:28px;height:28px;border-radius:8px;
  background:rgba(255,255,255,.14);font-size:15px;
}
.cta-premium .cta-button:hover{transform:translateY(-3px);box-shadow:0 17px 35px rgba(0,126,181,.32);background:linear-gradient(135deg,#1aa8df,#0988c2)}
.cta-premium .cta-note{color:#718d9f;font:700 8px/1 "Manrope",sans-serif;letter-spacing:1.4px}
.cta-premium .cta-side{
  position:relative;z-index:3;width:150px;display:flex;flex-direction:column;align-items:center;gap:17px;
  color:#648496;text-align:center;font:700 7px/1.7 "Manrope",sans-serif;letter-spacing:1.5px;
}
.cta-premium .cta-badge{
  width:82px;height:82px;border:1px solid rgba(75,202,237,.35);border-radius:22px;
  background:rgba(5,25,41,.68);backdrop-filter:blur(10px);display:flex;flex-direction:column;align-items:center;justify-content:center;
  box-shadow:0 14px 35px rgba(0,0,0,.18);
}
.cta-premium .cta-badge span{font:900 29px/.8 "Manrope",sans-serif;letter-spacing:-3px;color:#159bd1}.cta-premium .cta-badge span::after{content:"S";color:#fff}
.cta-premium .cta-badge small{margin-top:10px;font:700 5px/1.25 "Manrope",sans-serif;letter-spacing:1.4px;color:#76cce4}
.cta-premium .cta-side-line{width:1px;height:38px;background:linear-gradient(#159bd1,transparent)}
@media(max-width:850px){
  .cta.cta-premium{min-height:390px!important;padding:55px 8%!important}
  .cta-premium .cta-side{display:none}
  .cta-premium h2{font-size:clamp(40px,7vw,57px)!important}
}
@media(max-width:560px){
  .cta.cta-premium{min-height:430px!important;padding:48px 26px!important;border-radius:22px!important}
  .cta-premium h2{font-size:39px!important;letter-spacing:-2px!important}
  .cta-premium p{font-size:13px}
  .cta-premium .cta-actions{align-items:flex-start;flex-direction:column;gap:15px}
  .cta-premium .cta-button{width:100%;justify-content:space-between}
}

/* ===== HEADER + TECHNOLOGIES : modification demandée ===== */
/* Le header reprend le même ton que la bannière, et le logo reste transparent. */
.header{
  background:linear-gradient(135deg,#f8fafc 0%,#eef6f7 55%,#f8fafc 100%)!important;
  border-bottom:1px solid rgba(29,73,96,.10)!important;
}
.header .brand.logo-only{background:transparent!important}
.header .brand.logo-only .main-logo{background:transparent!important}

/* ===== TECHNOLOGIES — bandeau animé premium ===== */
.tech-stack{
  position:relative;
  padding:72px 0 78px;
  overflow:hidden;
  background:#f8fafc;
  border-top:1px solid #e0e9ee;
  border-bottom:1px solid #e0e9ee;
}
.tech-head{
  max-width:1180px;margin:0 auto 30px;padding:0 7%;
  display:flex;align-items:end;justify-content:space-between;gap:35px;
}
.tech-head h2{
  margin:10px 0 0!important;
  font-size:clamp(32px,3.8vw,50px)!important;
  line-height:1.02!important;letter-spacing:-2.4px!important;color:#10243a!important;
}
.tech-head h2 span{color:#159bd1!important}
.tech-head p{max-width:390px;margin:0!important;color:#718395!important;font-size:13px;line-height:1.65}
.tech-marquee{
  position:relative;overflow:hidden;padding:4px 0;
  mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
}
.tech-track{
  display:flex;align-items:center;gap:13px;width:max-content;
  animation:techScroll 34s linear infinite;
}
.tech-marquee:hover .tech-track{animation-play-state:paused}
.tech-item{
  height:70px;min-width:155px;padding:0 18px;display:flex;align-items:center;gap:12px;
  border:1px solid #dbe6ec;border-radius:15px;background:rgba(255,255,255,.78);
  box-shadow:0 8px 22px rgba(18,50,70,.05);
  flex-shrink:0;transition:transform .3s,border-color .3s,box-shadow .3s;
}
.tech-item:hover{transform:translateY(-4px);border-color:#159bd166;box-shadow:0 14px 28px rgba(21,155,209,.10)}
.tech-item b{
  width:37px;height:37px;display:grid;place-items:center;border-radius:10px;
  background:#0c2942;color:#25c6f4;font:800 10px/1 "Manrope",sans-serif;letter-spacing:-.3px;
}
.tech-item span{font:800 11px/1 "Manrope",sans-serif;color:#263e52;white-space:nowrap}
.tech-track>i{font-style:normal;color:#159bd1;font-size:11px;opacity:.7}
@keyframes techScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(max-width:750px){
  .tech-stack{padding:55px 0 60px}
  .tech-head{display:block;padding:0 5%;margin-bottom:25px}
  .tech-head p{margin-top:14px!important}
  .tech-item{min-width:140px;height:62px}
}
/* Dynamic content media */
.tech-item .tech-logo-img{width:30px;height:30px;object-fit:contain;display:block}
