*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:86px}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:#13262d;background:#f7fafb;line-height:1.65}
body.modal-open{overflow:hidden}
img{display:block;width:100%;height:auto}
a{color:inherit}
button{font:inherit}
.container{width:min(1140px,calc(100% - 36px));margin-inline:auto}
.skip-link{position:absolute;left:-999px;top:10px;z-index:999;background:#fff;padding:10px 15px;border-radius:8px}
.skip-link:focus{left:10px}

.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.95);backdrop-filter:blur(15px);border-bottom:1px solid #e1e9ed}
.nav-wrap{min-height:76px;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-size:1rem;font-weight:900;letter-spacing:-.045em}
.brand>span:last-child>span{color:#087f73}
.brand-mark{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#087f73,#2457a6);color:#fff;font-weight:900}
.main-nav{display:flex;align-items:center;gap:3px}
.main-nav a,.main-nav button{padding:10px 11px;border:0;background:transparent;border-radius:10px;text-decoration:none;color:#45585f;font-size:.76rem;font-weight:750;cursor:pointer}
.main-nav a:hover,.main-nav button:hover{background:#edf7f5;color:#087f73}
.menu-toggle{display:none;border:0;background:none;font-size:1.45rem;cursor:pointer}

.hero{padding:82px 0 72px;background:
radial-gradient(circle at 8% 15%,#dff5f0 0,transparent 29%),
radial-gradient(circle at 90% 80%,#e4e9ff 0,transparent 30%),
linear-gradient(135deg,#f8fcfb,#f0f5ff)}
.hero-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:54px;align-items:center}
.eyebrow{margin:0 0 16px;color:#087f73;font-size:.67rem;letter-spacing:.15em;font-weight:900}
.hero h1{max-width:700px;margin:0;font-size:clamp(3rem,6.2vw,5.6rem);line-height:1.04;letter-spacing:-.075em}
.hero h1 span{display:block;white-space:normal}
.gradient-text{margin-top:4px;background:linear-gradient(90deg,#087f73,#2457a6,#673ab7);background-clip:text;-webkit-background-clip:text;color:transparent}
.hero-lead{max-width:670px;margin:25px 0 0;color:#596c73;font-size:1.02rem}
.hero-actions{display:flex;flex-wrap:wrap;gap:11px;margin:28px 0 24px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 20px;border-radius:999px;text-decoration:none;font-size:.76rem;font-weight:850;transition:transform .2s ease,box-shadow .2s ease}
.button:hover{transform:translateY(-2px)}
.button-primary{color:#fff;background:#087f73;box-shadow:0 12px 28px #087f7330}
.button-light{background:#fff;border:1px solid #d9e3e7}
.hero-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;max-width:760px}
.hero-pillar{min-height:100px;padding:15px 14px;border-radius:18px;text-decoration:none;color:#fff;display:flex;flex-direction:column;justify-content:center;box-shadow:0 12px 30px #10202716;transition:transform .2s ease,box-shadow .2s ease}
.hero-pillar:hover{transform:translateY(-4px);box-shadow:0 18px 38px #10202722}
.pillar-digital{background:linear-gradient(135deg,#087f73,#075e68)}
.pillar-learn{background:linear-gradient(135deg,#2457a6,#4338ca)}
.pillar-skills{background:linear-gradient(135deg,#673ab7,#3d4ba8)}
.pillar-number{font-size:.58rem;letter-spacing:.12em;font-weight:900;opacity:.8}
.hero-pillar strong{font-size:.84rem;line-height:1.15;margin:5px 0}
.hero-pillar small{font-size:.6rem;line-height:1.3;opacity:.78}
.hero-visual{position:relative}
.hero-visual>img{height:520px;object-fit:cover;border-radius:32px;box-shadow:0 28px 70px #10202722}
.visual-note{position:absolute;left:-22px;bottom:24px;display:flex;gap:13px;align-items:center;padding:13px 17px;background:#fff;border:1px solid #e3eaed;border-radius:15px;box-shadow:0 14px 35px #10202718}
.visual-note>span{color:#087f73;font-size:.68rem;font-weight:900}
.visual-note strong,.visual-note small{display:block}
.visual-note strong{font-size:.8rem}.visual-note small{color:#72838a;font-size:.61rem}

.welcome-section{padding:30px 0 88px;background:#f1fbf9}
.welcome-panel{position:relative;overflow:hidden;display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:48px 52px;border-radius:28px;color:#fff;background:
radial-gradient(circle at 90% 15%,#3d8edc55,transparent 25%),
linear-gradient(120deg,#073e4a,#087f73 58%,#2457a6)}
.welcome-panel:after{content:"";position:absolute;width:280px;height:280px;right:-120px;bottom:-150px;border:1px solid #ffffff2b;border-radius:50%;box-shadow:0 0 0 35px #ffffff08,0 0 0 70px #ffffff05}
.welcome-copy,.welcome-message{position:relative;z-index:1}
.section-kicker{margin:0;font-size:.65rem;letter-spacing:.14em;font-weight:900;text-transform:uppercase}
.welcome-panel .section-kicker{color:#a8eee5}
.welcome-panel h2{max-width:600px;margin:11px 0 0;font-size:clamp(2.1rem,4vw,3.65rem);line-height:1;letter-spacing:-.06em}
.welcome-message{align-self:center}
.welcome-message>p{margin:0;color:#d8eeeb;font-size:.92rem}
.welcome-stats{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.welcome-stats span{padding:9px 11px;border:1px solid #ffffff22;border-radius:12px;background:#ffffff0d;font-size:.62rem;color:#e6f8f5}
.welcome-stats b{margin-right:5px;color:#9aeee4}

.content-section{padding:90px 0}
.digital-section{background:#fff}
.learn-section{background:#f2f5ff}
.skills-section{background:#f7f3ff}
.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:end;margin-bottom:34px}
.section-heading h2{margin:10px 0 0;max-width:620px;font-size:clamp(2.3rem,4.6vw,4rem);line-height:1;letter-spacing:-.06em}
.section-heading>p{margin:0;color:#63747b}
.teal{color:#087f73}.blue{color:#2457a6}.violet{color:#673ab7}

.article-stack{display:grid;gap:24px}
.article-card{display:grid;grid-template-columns:46% 54%;min-height:360px;background:#fff;border:1px solid #dfe8eb;border-radius:28px;overflow:hidden;box-shadow:0 9px 30px #1020270a;transition:transform .22s ease,box-shadow .22s ease}
.article-card:hover{transform:translateY(-4px);box-shadow:0 20px 52px #10202715}
.article-card.reverse{grid-template-columns:54% 46%}
.article-image{min-height:360px;background:#dfe8ec;overflow:hidden}
.article-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.article-card:hover .article-image img{transform:scale(1.025)}
.article-copy{display:flex;flex-direction:column;justify-content:center;padding:43px 47px}
.article-label{color:#087f73;font-size:.61rem;letter-spacing:.12em;font-weight:900}
.article-copy h3{margin:9px 0 13px;font-size:clamp(1.55rem,2.7vw,2.3rem);line-height:1.05;letter-spacing:-.045em}
.article-copy p{margin:0;color:#62747b;font-size:.9rem}
.read-more{align-self:flex-start;margin-top:14px;padding:7px 0;border:0;background:none;color:#087f73;font-size:.75rem;font-weight:900;cursor:pointer}
.read-more span{display:inline-block;transition:transform .2s ease}
.read-more:hover span{transform:translateX(4px)}

.services-section{padding:30px 0 95px;background:linear-gradient(#f2f5ff,#f7fafb)}
.services-banner{overflow:hidden;border-radius:32px;color:#fff;background:linear-gradient(130deg,#071a22,#0b3440 48%,#087f73);box-shadow:0 25px 70px #0b344040}
.services-intro{max-width:850px;margin:auto;text-align:center;padding:58px 35px 30px}
.service-kicker{margin:0;color:#a7eee4;font-size:.63rem;letter-spacing:.13em;font-weight:900}
.service-kicker span{display:inline-block;width:8px;height:8px;margin-right:7px;border-radius:50%;background:#61ddcf}
.services-intro h2{margin:15px auto 12px;font-size:clamp(2.4rem,5vw,4.3rem);line-height:.98;letter-spacing:-.065em}
.services-intro h2 em{font-style:normal;color:#83e4d6}
.services-intro>p:last-child{max-width:650px;margin:auto;color:#c6d9dc;font-size:.88rem}
.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:25px 30px 30px}
.service-tile{overflow:hidden;border:1px solid #ffffff1e;border-radius:19px;background:#ffffff0d}
.service-tile>img{height:175px;object-fit:cover}
.service-tile>div{padding:16px}
.service-tile span{color:#77ddd0;font-size:.58rem;font-weight:900}
.service-tile h3{margin:4px 0 5px;font-size:1rem}
.service-tile p{margin:0;color:#bcd0d4;font-size:.67rem;line-height:1.45}
.services-bottom{display:flex;justify-content:center;flex-wrap:wrap;gap:9px;padding:0 30px 30px}
.services-bottom span{padding:8px 11px;border:1px solid #ffffff1a;border-radius:999px;color:#a9c0c5;font-size:.58rem}

.explore-section{padding:90px 0;background:#fff}
.explore-box{display:flex;justify-content:space-between;align-items:center;gap:35px;padding:45px 48px;border:1px solid #dfe8eb;border-radius:26px;background:linear-gradient(110deg,#f3ffff,#f4f6ff)}
.explore-box h2{margin:10px 0;font-size:clamp(2rem,4vw,3.2rem);line-height:1;letter-spacing:-.055em}
.explore-box p:last-child{margin:0;color:#63747b}

.site-footer{padding:55px 0 22px;background:#0a1420;color:#fff}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:50px;padding-bottom:38px}
.footer-brand{margin-bottom:8px}
.footer-grid h4{margin:0 0 10px;color:#79dbd0;font-size:.65rem;letter-spacing:.12em;text-transform:uppercase}
.footer-grid a:not(.brand){display:block;text-decoration:none;color:#b6c6ca;font-size:.72rem;margin:7px 0}
.footer-grid a:hover{color:#fff}
.footer-grid p{color:#8ea1a8;font-size:.72rem}
.copyright{border-top:1px solid #ffffff18;padding-top:17px;color:#6f838a;font-size:.62rem}

.modal{position:fixed;inset:0;z-index:500;display:none;align-items:center;justify-content:center;padding:20px;background:#031016b8;backdrop-filter:blur(8px)}
.modal.is-open{display:flex}
.modal-box,.article-reader{position:relative;width:min(650px,100%);max-height:90vh;overflow:auto;padding:42px;border-radius:28px;background:#fff;box-shadow:0 35px 100px #0006}
.modal-box h2,.article-reader h2{margin:10px 0 20px;font-size:clamp(2rem,5vw,3.5rem);line-height:1;letter-spacing:-.06em}
.modal-box p,.article-reader p{color:#60727a}
.modal-close{position:absolute;right:16px;top:15px;width:39px;height:39px;border:0;border-radius:50%;background:#edf3f4;font-size:1.35rem;cursor:pointer}
.contact-list a{display:flex;justify-content:space-between;gap:18px;padding:13px 0;border-bottom:1px solid #e1e9ed;text-decoration:none;font-size:.75rem}
.contact-list span{color:#65777e}.contact-list strong{color:#087f73}
.article-reader{width:min(800px,100%)}

@media(max-width:950px){
  .main-nav a,.main-nav button{padding-inline:7px;font-size:.7rem}
  .hero-grid{grid-template-columns:1fr}
  .hero-visual{max-width:760px}
  .hero-visual>img{height:440px}
  .welcome-panel,.section-heading{grid-template-columns:1fr;gap:20px}
  .service-grid{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  .container{width:calc(100% - 28px)}
  .menu-toggle{display:block}
  .main-nav{display:none;position:absolute;left:14px;right:14px;top:68px;padding:8px;flex-direction:column;align-items:stretch;background:#fff;border:1px solid #dfe8eb;border-radius:17px;box-shadow:0 15px 40px #0002}
  .main-nav.nav-open{display:flex}
  .main-nav a,.main-nav button{text-align:left;padding:11px}
  .hero{padding:58px 0 52px}
  .hero h1{font-size:3.25rem;line-height:1.02}
  .hero-pillars{grid-template-columns:1fr}
  .hero-pillar{min-height:82px}
  .hero-visual>img{height:340px}
  .visual-note{left:12px;bottom:14px}
  .welcome-section{padding-bottom:60px}
  .welcome-panel{padding:34px 26px}
  .content-section{padding:65px 0}
  .article-card,.article-card.reverse{grid-template-columns:1fr}
  .article-card.reverse .article-copy{order:2}
  .article-image{min-height:235px;height:235px}
  .article-copy{padding:31px 25px}
  .services-section{padding-bottom:65px}
  .services-intro{padding:40px 22px 22px}
  .service-grid{grid-template-columns:1fr;padding:20px}
  .service-tile>img{height:205px}
  .services-bottom{padding:0 20px 20px}
  .explore-section{padding:65px 0}
  .explore-box{display:block;padding:31px 26px}
  .explore-box .button{margin-top:17px}
  .footer-grid{grid-template-columns:1fr}
  .modal-box,.article-reader{padding:33px 24px}
  .contact-list a{display:block}
  .contact-list strong{display:block;margin-top:3px}
}

/* ===== FINAL HERO REDESIGN ===== */
.hero-redesign{
  position:relative; min-height:calc(100vh - 76px); display:flex; align-items:center;
  overflow:hidden; isolation:isolate; padding:72px 0 78px; color:#fff;
  background:radial-gradient(circle at 78% 45%,rgba(55,183,170,.20),transparent 25%),
  radial-gradient(circle at 94% 12%,rgba(80,113,230,.24),transparent 27%),
  linear-gradient(120deg,#061c27 0%,#073844 43%,#092b4b 100%);
}
.hero-redesign .hero-grid-lines{
  position:absolute; inset:0; z-index:-2; opacity:.22;
  background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),
  linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);
  background-size:58px 58px;
  mask-image:linear-gradient(to right,black 0%,rgba(0,0,0,.75) 55%,transparent 100%);
}
.hero-orb{position:absolute;z-index:-1;border:1px solid rgba(133,235,224,.15);border-radius:50%;pointer-events:none}
.orb-one{width:520px;height:520px;right:-160px;top:50%;transform:translateY(-50%);box-shadow:0 0 0 55px rgba(83,215,201,.025),0 0 0 110px rgba(83,215,201,.018)}
.orb-two{width:190px;height:190px;right:31%;top:11%;border-color:rgba(111,145,255,.16)}
.hero-redesign .hero-grid{grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);gap:72px;align-items:center}
.hero-redesign .eyebrow{color:#82e3d8;margin-bottom:22px}
.hero-redesign h1{margin:0;max-width:850px;font-size:clamp(3.2rem,6.1vw,6.4rem);line-height:1.02;letter-spacing:-.065em;font-weight:850}
.hero-line{display:block;white-space:nowrap}
.hero-accent{margin-top:7px;color:#82e3d8;text-shadow:0 0 40px rgba(89,221,207,.12)}
.hero-redesign .hero-lead{max-width:650px;margin:28px 0 0;color:#c0d2d7;font-size:1rem;line-height:1.75}
.hero-redesign .hero-actions{display:flex;flex-wrap:wrap;gap:9px;margin:29px 0 0}
.hero-section-button{display:inline-grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;min-width:150px;padding:11px 14px;border:1px solid rgba(255,255,255,.13);border-radius:12px;color:#fff;text-decoration:none;background:rgba(255,255,255,.075);backdrop-filter:blur(10px);font-size:.72rem;font-weight:800;transition:transform .2s ease,background .2s ease,border-color .2s ease}
.hero-section-button:hover{transform:translateY(-3px);background:rgba(255,255,255,.13);border-color:rgba(255,255,255,.28)}
.button-number{font-size:.55rem;color:#82e3d8;letter-spacing:.08em}
.learn .button-number{color:#a2b8ff}.skills .button-number{color:#c6a7f5}
.button-arrow{font-size:.9rem;opacity:.65}
.hero-note{display:flex;align-items:center;gap:9px;margin-top:21px;color:#82979e;font-size:.62rem}
.note-dot{width:7px;height:7px;border-radius:50%;background:#65d7ca;box-shadow:0 0 0 5px rgba(101,215,202,.09)}
.hero-art{position:relative;min-height:450px;display:flex;align-items:center;justify-content:center}
.art-panel{position:relative;width:min(440px,100%);height:420px;padding:18px;border:1px solid rgba(255,255,255,.14);border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,255,255,.035));box-shadow:0 35px 90px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.08);backdrop-filter:blur(18px);transform:rotate(2deg)}
.art-top{display:flex;justify-content:space-between;align-items:center;color:#91aeb5;font-size:.54rem;letter-spacing:.12em;font-weight:900}
.art-chip{padding:6px 8px;border:1px solid rgba(255,255,255,.12);border-radius:7px}.art-status{color:#72d9cd}
.art-display{position:relative;height:280px;margin-top:18px;overflow:hidden;border-radius:20px;background:radial-gradient(circle at 72% 35%,rgba(100,222,209,.35),transparent 23%),radial-gradient(circle at 32% 75%,rgba(72,106,231,.28),transparent 28%),linear-gradient(145deg,#0b4a54,#102e52)}
.display-circle{position:absolute;width:235px;height:235px;right:-35px;top:-48px;border:1px solid rgba(146,239,229,.25);border-radius:50%;box-shadow:0 0 0 30px rgba(146,239,229,.025),0 0 0 65px rgba(146,239,229,.018)}
.display-copy{position:absolute;left:28px;bottom:27px}.display-copy small{display:block;color:#80ded4;font-size:.52rem;letter-spacing:.15em;font-weight:900;margin-bottom:8px}.display-copy strong{display:block;color:#fff;font-size:2.8rem;line-height:.91;letter-spacing:-.06em}
.art-bars{display:flex;gap:7px;height:60px;align-items:flex-end;padding:15px 7px 0}.art-bars span{display:block;flex:1;border-radius:4px 4px 1px 1px;background:linear-gradient(#70d9ce,#265b83)}
.art-bars span:nth-child(1){height:30%}.art-bars span:nth-child(2){height:65%}.art-bars span:nth-child(3){height:46%}.art-bars span:nth-child(4){height:88%}
.floating-card{position:absolute;display:flex;align-items:center;gap:9px;padding:10px 13px;border:1px solid rgba(255,255,255,.15);border-radius:12px;background:rgba(5,27,37,.82);box-shadow:0 18px 35px rgba(0,0,0,.22);backdrop-filter:blur(12px);font-size:.62rem;font-weight:800}
.floating-card b{font-size:.55rem;color:#79ded4}.card-one{left:-12px;top:72px}.card-two{right:-18px;top:175px}.card-three{left:25px;bottom:33px}.card-two b{color:#9db2ff}.card-three b{color:#c6a6f4}
@media(max-width:950px){
  .hero-redesign{min-height:auto;padding:75px 0 72px}.hero-redesign .hero-grid{grid-template-columns:1fr;gap:55px}
  .hero-redesign h1{font-size:clamp(3.3rem,9vw,5.7rem)}.hero-art{min-height:390px}
}
@media(max-width:720px){
  .hero-redesign{padding:54px 0 58px}.hero-redesign h1{font-size:clamp(2.75rem,12vw,4.3rem);line-height:1.03}.hero-line{white-space:normal}
  .hero-redesign .hero-actions{display:grid;grid-template-columns:1fr;max-width:330px}.hero-section-button{width:100%}
  .hero-art{min-height:320px}.art-panel{height:310px}.art-display{height:195px}.display-copy strong{font-size:2.15rem}
  .floating-card{font-size:.55rem;padding:8px 10px}.card-one{left:-3px;top:35px}.card-two{right:-4px;top:122px}.card-three{left:12px;bottom:8px}
}

/* ===== HERO IMAGE ===== */
.hero-redesign .hero-art.hero-people{
  position:relative;
  min-height:450px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:visible;
}
.hero-image-wrap{
  position:relative;
  width:100%;
  max-width:590px;
  line-height:0;
  z-index:2;
  filter:drop-shadow(0 28px 45px rgba(0,0,0,.24));
}
.hero-people-image{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
  object-position:center bottom;
}
.hero-image-glow{
  position:absolute;
  width:82%;
  height:58%;
  right:2%;
  bottom:5%;
  border-radius:50%;
  background:rgba(72,211,195,.17);
  filter:blur(60px);
  z-index:1;
}
.hero-redesign .hero-art .art-panel,
.hero-redesign .hero-art .floating-card{
  display:none !important;
}
@media(max-width:950px){
  .hero-redesign .hero-art.hero-people{min-height:auto;margin-top:8px}
  .hero-image-wrap{max-width:650px}
}
@media(max-width:720px){
  .hero-redesign .hero-art.hero-people{min-height:auto;margin-top:4px}
  .hero-image-wrap{max-width:100%}
}

/* ===== V7: CLEAN TEXT HERO + FULL-WIDTH BANNER ===== */
.hero-redesign{
  min-height:calc(100vh - 76px);
  padding:92px 0 86px;
}
.hero-redesign .hero-grid{
  display:block;
  max-width:1100px;
  margin:0 auto;
}
.hero-redesign .hero-content{
  max-width:980px;
  margin:0 auto;
  text-align:center;
}
.hero-redesign .eyebrow{
  margin-bottom:24px;
}
.hero-redesign h1{
  max-width:none;
  font-size:clamp(3.4rem,7vw,6.8rem);
  line-height:1.02;
}
.hero-line{
  white-space:nowrap;
}
.hero-redesign .hero-lead{
  max-width:700px;
  margin:30px auto 0;
}
.hero-redesign .hero-actions{
  justify-content:center;
}
.hero-redesign .hero-note{
  justify-content:center;
}

/* Completely remove the previous Hero artwork/card system. */
.hero-redesign .hero-art,
.hero-redesign .hero-image-wrap,
.hero-redesign .hero-image-glow,
.hero-redesign .art-panel,
.hero-redesign .floating-card{
  display:none !important;
}

/* ===== HORIZONTAL TECHNOLOGY BANNER ===== */
.tech-people-banner{
  position:relative;
  width:100%;
  margin:0;
  padding:0;
  overflow:hidden;
  background:#071d29;
}
.tech-people-banner-inner{
  position:relative;
  width:100%;
  height:250px;
  overflow:hidden;
}
.tech-people-banner img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 47%;
  transform:none;
}
.tech-people-banner::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(3,20,28,.14),transparent 24%,transparent 76%,rgba(3,20,28,.14));
}
.tech-people-banner-caption{
  position:absolute;
  left:50%;
  bottom:20px;
  transform:translateX(-50%);
  z-index:2;
  padding:9px 16px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:999px;
  background:rgba(3,24,34,.58);
  color:#fff;
  backdrop-filter:blur(10px);
  font-size:.64rem;
  font-weight:800;
  letter-spacing:.07em;
  text-transform:uppercase;
  white-space:nowrap;
}

/* Prevent the banner from inheriting card/grid styling. */
.tech-people-banner .container{
  max-width:none;
  padding:0;
}

@media(max-width:950px){
  .hero-redesign{
    min-height:auto;
    padding:78px 0 70px;
  }
  .hero-redesign h1{
    font-size:clamp(3.2rem,9vw,5.8rem);
  }
  .tech-people-banner-inner{
    height:210px;
  }
}
@media(max-width:720px){
  .hero-redesign{
    padding:60px 0 58px;
  }
  .hero-redesign h1{
    font-size:clamp(2.7rem,12vw,4.4rem);
  }
  .hero-line{
    white-space:normal;
  }
  .hero-redesign .hero-actions{
    display:flex;
    justify-content:center;
    max-width:100%;
  }
  .hero-section-button{
    min-width:0;
    flex:1 1 145px;
  }
  .tech-people-banner-inner{
    height:155px;
  }
  .tech-people-banner img{
    object-position:center 46%;
  }
  .tech-people-banner-caption{
    bottom:10px;
    font-size:.52rem;
    padding:7px 11px;
  }
}

/* ===== V8: ORIGINAL FULL-WIDTH IT SERVICES BANNER ===== */
.service-banner{
  position:relative;
  width:100%;
  overflow:hidden;
  color:#fff;
  background:
    radial-gradient(circle at 18% 50%,rgba(56,211,195,.16),transparent 28%),
    radial-gradient(circle at 82% 30%,rgba(111,126,240,.13),transparent 30%),
    linear-gradient(105deg,#061c28,#082f3b 48%,#101e42);
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.service-banner::before{
  content:"";
  position:absolute;
  inset:0;
  opacity:.12;
  background-image:
    linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px);
  background-size:42px 42px;
}
.service-banner-inner{
  position:relative;
  z-index:1;
  max-width:1450px;
  margin:0 auto;
  min-height:245px;
  padding:28px 34px;
  display:grid;
  grid-template-columns:minmax(250px,.8fr) minmax(0,2.2fr);
  gap:34px;
  align-items:center;
}
.service-banner-intro{max-width:360px}
.service-banner-kicker{
  display:inline-block;
  margin-bottom:10px;
  color:#76ded3;
  font-size:.55rem;
  font-weight:900;
  letter-spacing:.16em;
}
.service-banner-intro h2{
  margin:0;
  font-size:clamp(1.45rem,2.4vw,2.2rem);
  line-height:1.02;
  letter-spacing:-.045em;
}
.service-banner-intro h2 em{
  color:#7de0d5;
  font-style:normal;
}
.service-banner-intro p{
  margin:12px 0 0;
  color:#a8c0c6;
  font-size:.72rem;
  line-height:1.55;
}
.service-strip{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:9px;
}
.service-tile{
  min-height:175px;
  padding:16px 14px 13px;
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  overflow:hidden;
  color:#fff;
  text-decoration:none;
  border:1px solid rgba(255,255,255,.12);
  border-radius:15px;
  background:rgba(255,255,255,.055);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
  transition:transform .2s ease,border-color .2s ease,background .2s ease;
}
.service-tile:hover{
  transform:translateY(-4px);
  border-color:rgba(255,255,255,.28);
  background:rgba(255,255,255,.09);
}
.service-tile::after{
  content:"";
  position:absolute;
  width:110px;height:110px;
  right:-40px;top:-45px;
  border-radius:50%;
  background:rgba(255,255,255,.06);
}
.service-number{
  position:absolute;
  top:12px;right:13px;
  color:rgba(255,255,255,.5);
  font-size:.52rem;
  font-weight:900;
  letter-spacing:.08em;
}
.service-icon{
  position:absolute;
  top:17px;left:15px;
  width:55px;height:55px;
  display:block;
}
.service-tile strong{
  position:relative;
  z-index:2;
  font-size:.78rem;
  line-height:1.1;
}
.service-tile small{
  position:relative;
  z-index:2;
  margin-top:5px;
  color:#a9c1c6;
  font-size:.55rem;
  line-height:1.3;
}
.service-support{background:linear-gradient(145deg,rgba(30,173,159,.16),rgba(255,255,255,.035))}
.service-web{background:linear-gradient(145deg,rgba(88,116,230,.18),rgba(255,255,255,.035))}
.service-data{background:linear-gradient(145deg,rgba(142,91,219,.18),rgba(255,255,255,.035))}
.service-office{background:linear-gradient(145deg,rgba(226,154,58,.16),rgba(255,255,255,.035))}

/* Original CSS illustrations: no copied third-party artwork is used. */
.icon-monitor{
  position:absolute;left:4px;top:5px;width:38px;height:25px;
  border:2px solid #6fe0d5;border-radius:5px;
}
.icon-monitor::after{
  content:"";position:absolute;left:13px;bottom:-9px;width:9px;height:7px;
  border-left:2px solid #6fe0d5;border-right:2px solid #6fe0d5;
}
.icon-headset{
  position:absolute;right:0;bottom:2px;width:20px;height:19px;
  border:2px solid #6fe0d5;border-bottom-color:transparent;border-radius:12px 12px 0 0;
}
.icon-headset::after{
  content:"";position:absolute;right:-4px;bottom:0;width:7px;height:10px;
  border:2px solid #6fe0d5;border-left:0;border-radius:0 5px 5px 0;
}
.icon-browser{
  position:absolute;left:1px;top:5px;width:45px;height:36px;
  border:2px solid #9eb0ff;border-radius:6px;
}
.icon-browser::before{
  content:"";position:absolute;left:0;right:0;top:9px;border-top:2px solid #9eb0ff;
}
.icon-browser i{
  display:block;position:absolute;width:4px;height:4px;border-radius:50%;background:#9eb0ff;top:3px;
}
.icon-browser i:nth-child(1){left:5px}.icon-browser i:nth-child(2){left:12px}.icon-browser i:nth-child(3){left:19px}
.icon-chart{
  position:absolute;left:3px;bottom:2px;width:46px;height:43px;
  border-left:2px solid #c49df4;border-bottom:2px solid #c49df4;
  display:flex;align-items:flex-end;gap:5px;padding-left:6px;
}
.icon-chart i{display:block;width:6px;border-radius:3px 3px 0 0;background:#c49df4}
.icon-chart i:nth-child(1){height:14px}.icon-chart i:nth-child(2){height:26px}.icon-chart i:nth-child(3){height:20px}.icon-chart i:nth-child(4){height:37px}
.icon-apps{
  position:absolute;left:4px;top:4px;width:45px;height:45px;
  display:grid;grid-template-columns:repeat(2,18px);grid-template-rows:repeat(2,18px);gap:6px;
}
.icon-apps i{display:block;border-radius:4px;border:2px solid #f3c674;background:rgba(243,198,116,.12)}

@media(max-width:1050px){
  .service-banner-inner{grid-template-columns:1fr;gap:20px;padding:26px 28px}
  .service-banner-intro{max-width:650px}
  .service-strip{grid-template-columns:repeat(4,1fr)}
}
@media(max-width:720px){
  .service-banner-inner{padding:25px 18px}
  .service-strip{grid-template-columns:repeat(2,1fr)}
  .service-tile{min-height:145px}
}
@media(max-width:430px){
  .service-strip{grid-template-columns:1fr 1fr;gap:7px}
  .service-tile{padding:13px 11px;min-height:135px}
  .service-icon{transform:scale(.88);transform-origin:top left}
}

/* ===== V9 SHORT COURSES / TRAINING ===== */
.training-banner{position:relative;width:100%;overflow:hidden;color:#fff;background:radial-gradient(circle at 18% 50%,rgba(57,205,189,.15),transparent 27%),radial-gradient(circle at 82% 25%,rgba(104,120,238,.14),transparent 29%),linear-gradient(105deg,#061c28,#082f3b 48%,#111d40);border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}
.training-banner::before{content:"";position:absolute;inset:0;opacity:.11;background-image:linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px);background-size:42px 42px}
.training-banner-inner{position:relative;z-index:1;max-width:1450px;margin:0 auto;min-height:285px;padding:28px 34px;display:grid;grid-template-columns:minmax(255px,.78fr) minmax(0,2.35fr);gap:32px;align-items:center}
.training-banner-intro{max-width:370px}.training-kicker{display:inline-block;margin-bottom:10px;color:#78ded4;font-size:.55rem;font-weight:900;letter-spacing:.16em}
.training-banner-intro h2{margin:0;font-size:clamp(1.55rem,2.5vw,2.25rem);line-height:1.02;letter-spacing:-.045em}.training-banner-intro h2 em{color:#7de0d5;font-style:normal}
.training-banner-intro p{margin:12px 0 10px;color:#a9c0c6;font-size:.72rem;line-height:1.55}.training-note{display:inline-block;color:#fff;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.13);border-radius:999px;padding:6px 10px;font-size:.51rem;font-weight:800;letter-spacing:.05em}
.training-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.training-tile{min-height:218px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;padding:0 13px 14px;color:#fff;text-decoration:none;border:1px solid rgba(255,255,255,.12);border-radius:15px;background:rgba(255,255,255,.055);transition:transform .2s ease,border-color .2s ease,background .2s ease}
.training-tile:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.09)}
.training-image{position:absolute;left:0;right:0;top:0;height:145px;overflow:hidden;border-radius:14px 14px 0 0}.training-image svg{display:block;width:100%;height:100%}
.training-tile::after{content:"";position:absolute;left:0;right:0;top:95px;height:75px;background:linear-gradient(transparent,rgba(5,23,35,.94));pointer-events:none}
.training-number{position:absolute;right:12px;top:12px;z-index:3;color:rgba(255,255,255,.62);font-size:.52rem;font-weight:900;letter-spacing:.08em}.training-tile strong,.training-tile small{position:relative;z-index:3}.training-tile strong{font-size:.79rem;line-height:1.1}.training-tile small{margin-top:5px;color:#a9c1c6;font-size:.54rem;line-height:1.25}
@media(max-width:1050px){.training-banner-inner{grid-template-columns:1fr;gap:20px;padding:26px 28px}.training-banner-intro{max-width:650px}}
@media(max-width:720px){.training-banner-inner{padding:25px 18px}.training-strip{grid-template-columns:repeat(2,1fr);gap:7px}.training-tile{min-height:190px}.training-image{height:125px}.training-tile::after{top:82px}}
@media(max-width:430px){.training-tile{min-height:175px;padding:0 10px 12px}.training-image{height:112px}.training-tile::after{top:70px}}

/* ===== V10: IN-PAGE COURSE INFORMATION ===== */
.course-trigger{
  appearance:none;
  -webkit-appearance:none;
  font:inherit;
  text-align:left;
  cursor:pointer;
}
.course-trigger:focus-visible{
  outline:3px solid rgba(125,224,213,.65);
  outline-offset:3px;
}
.course-trigger.is-selected{
  transform:translateY(-4px);
  border-color:rgba(125,224,213,.62);
  background:rgba(125,224,213,.10);
}
.course-info{
  margin-top:16px;
  border:1px solid rgba(125,224,213,.24);
  border-radius:16px;
  background:rgba(3,22,32,.82);
  box-shadow:0 18px 45px rgba(0,0,0,.18);
  overflow:hidden;
  opacity:0;
  transform:translateY(-7px);
  transition:opacity .22s ease,transform .22s ease;
}
.course-info.is-open{
  opacity:1;
  transform:translateY(0);
}
.course-info-inner{
  position:relative;
  max-width:900px;
  margin:0 auto;
  padding:23px 58px 23px 24px;
}
.course-info-kicker{
  display:block;
  margin-bottom:6px;
  color:#78ded4;
  font-size:.52rem;
  font-weight:900;
  letter-spacing:.14em;
}
.course-info h3{
  margin:0 0 7px;
  color:#fff;
  font-size:1.25rem;
  line-height:1.1;
}
.course-info p{
  margin:0;
  color:#b6c9ce;
  font-size:.72rem;
  line-height:1.65;
}
.course-info-close{
  position:absolute;
  top:14px;
  right:15px;
  width:32px;
  height:32px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:50%;
  background:rgba(255,255,255,.06);
  color:#fff;
  font-size:1.25rem;
  line-height:1;
  cursor:pointer;
}
.course-info-close:hover{
  background:rgba(255,255,255,.12);
}
@media(max-width:720px){
  .course-info-inner{padding:20px 50px 20px 18px}
  .course-info p{font-size:.68rem}
}
