:root{
  --navy:#06111f;
  --navy-2:#08182a;
  --navy-3:#0b2037;
  --blue:#168bd0;
  --cyan:#6ed7f4;
  --cyan-2:#b7efff;
  --ink:#0a1725;
  --muted:#657386;
  --line:#dce5ed;
  --paper:#f5f8fb;
  --white:#fff;
  --radius:22px;
  --shadow:0 28px 80px rgba(9,28,49,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Segoe UI",Arial,sans-serif;color:var(--ink);background:#fff;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{width:min(1180px,calc(100% - 48px));margin:0 auto}
.page-shell{min-height:100vh}
.site-header{position:fixed;top:0;left:0;right:0;z-index:50;transition:.3s ease;border-bottom:1px solid transparent}
.site-header.scrolled{background:rgba(6,17,31,.92);backdrop-filter:blur(16px);border-color:rgba(255,255,255,.08)}
.nav-wrap{height:86px;display:flex;align-items:center;justify-content:space-between}
.brand img{width:151px;height:auto;filter:brightness(1.35) saturate(.9)}
.main-nav{display:flex;align-items:center;gap:30px;color:#dbe6f0;font-size:14px;font-weight:600}
.main-nav>a:not(.nav-cta){position:relative}
.main-nav>a:not(.nav-cta):after{content:"";position:absolute;left:0;bottom:-7px;width:0;height:1px;background:var(--cyan);transition:.25s}
.main-nav>a:hover:after{width:100%}
.nav-cta{padding:12px 18px;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(255,255,255,.04)}
.nav-cta:hover{background:#fff;color:var(--navy)}
.menu-toggle{display:none;background:none;border:0;padding:8px;cursor:pointer}.menu-toggle span{display:block;width:24px;height:2px;background:#fff;margin:5px}
.hero{min-height:800px;background:radial-gradient(circle at 72% 35%,rgba(25,144,208,.20),transparent 34%),linear-gradient(135deg,#07111e 0%,#071a2c 48%,#05111f 100%);position:relative;color:#fff;overflow:hidden;padding-top:86px}
.hero-grid-bg{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:58px 58px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.75),transparent 85%)}
#networkCanvas{position:absolute;inset:0;width:100%;height:100%;opacity:.3}
.hero-inner{min-height:650px;display:grid;grid-template-columns:1.03fr .97fr;align-items:center;gap:60px;position:relative;z-index:2;padding:74px 0 30px}
.eyebrow{display:flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:#a8c4d8}.eyebrow span{width:32px;height:1px;background:var(--cyan)}
.eyebrow.dark{color:#5d7488}.eyebrow.dark span{background:var(--blue)}
h1,h2,h3{font-family:"Segoe UI",Arial,sans-serif;margin:0}
h1{font-size:clamp(56px,6vw,86px);line-height:.96;letter-spacing:-.055em;margin:24px 0 26px;max-width:760px}h1 em{font-style:normal;color:var(--cyan)}
.hero-lead{font-size:18px;line-height:1.75;color:#b8c7d5;max-width:620px;margin:0 0 32px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;border-radius:999px;padding:15px 22px;font-weight:700;font-size:14px;transition:.25s ease}.btn-primary{background:linear-gradient(135deg,#178fd3,#62d0ef);color:#04101c;box-shadow:0 10px 40px rgba(43,165,220,.25)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 16px 46px rgba(43,165,220,.35)}.btn-secondary{border:1px solid rgba(255,255,255,.18);color:#e9f3f9;background:rgba(255,255,255,.04)}.btn-secondary:hover{background:#fff;color:#07111e}
.hero-proof{display:flex;gap:42px;margin-top:58px}.hero-proof div{display:grid;gap:4px}.hero-proof strong{font-family:"Segoe UI",Arial,sans-serif;font-size:26px}.hero-proof span{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#8299aa}
.hero-visual{height:520px;position:relative;display:flex;align-items:center;justify-content:center}.orbital{width:440px;height:440px;position:relative;display:grid;place-items:center}.orbit{position:absolute;border:1px solid rgba(126,220,248,.17);border-radius:50%;animation:spin 30s linear infinite}.orbit:before{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:var(--cyan);box-shadow:0 0 20px var(--cyan);top:8%;left:23%}.orbit-1{inset:12px}.orbit-2{inset:64px;animation-duration:22s;animation-direction:reverse}.orbit-3{inset:111px;animation-duration:16s}.core-globe{width:180px;height:180px;border-radius:50%;background:radial-gradient(circle at 32% 25%,#5dc9f3,#147bb7 46%,#0c3f70 72%,#08233d);box-shadow:0 0 90px rgba(52,177,227,.34),inset -22px -28px 55px rgba(1,18,36,.45);position:relative;overflow:hidden}.core-globe:before,.core-globe:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.28);border-radius:50%}.core-globe:before{inset:24px -28px;transform:rotate(28deg)}.core-globe:after{inset:-28px 54px;transform:rotate(-18deg)}.globe-lines{position:absolute;inset:0;border-radius:50%;background:repeating-radial-gradient(ellipse at 50% 50%,transparent 0 22px,rgba(255,255,255,.14) 23px 24px,transparent 25px 46px)}
.pulse-dot{position:absolute;width:7px;height:7px;background:#d9f9ff;border-radius:50%;box-shadow:0 0 0 0 rgba(208,248,255,.6);animation:pulse 2.4s infinite}.d1{top:34px;left:64px}.d2{top:92px;right:29px;animation-delay:.5s}.d3{bottom:38px;left:52px;animation-delay:1s}.d4{top:70px;left:31px;animation-delay:1.5s}
.signal-card{position:absolute;background:rgba(10,30,50,.72);border:1px solid rgba(150,224,247,.15);backdrop-filter:blur(14px);padding:14px 16px;border-radius:14px;min-width:154px;box-shadow:0 18px 45px rgba(0,0,0,.18)}.signal-card small{display:block;font-size:9px;letter-spacing:.16em;color:#72d8f5;margin-bottom:5px}.signal-card strong{font-size:12px}.signal-card span{display:block;font-size:9px;color:#839bae;margin-top:5px}.card-a{top:54px;right:-5px}.card-b{left:-18px;top:230px}.card-c{right:8px;bottom:52px}
.hero-bottom{position:relative;z-index:2;height:64px;display:flex;align-items:center;gap:20px;color:#7d96aa;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.hero-bottom .line{height:1px;flex:1;background:rgba(255,255,255,.08)}
.trust-strip{border-bottom:1px solid var(--line);background:#fff}.trust-inner{min-height:88px;display:flex;align-items:center;gap:34px}.trust-label{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#8291a0;white-space:nowrap}.partner-ticker{display:flex;align-items:center;justify-content:space-between;gap:22px;flex:1;font-family:"Segoe UI",Arial,sans-serif;font-weight:800;color:#597084;font-size:13px}.partner-ticker i{width:3px;height:3px;background:#b8c8d4;border-radius:50%}
.section{padding:120px 0}.split-grid{display:grid;grid-template-columns:.83fr 1.17fr;gap:90px}.section-heading h2,.section-top h2{font-size:clamp(40px,4vw,60px);line-height:1.02;letter-spacing:-.045em;margin-top:18px}.about{background:#fff}.about-copy .large-copy{font-family:"Segoe UI",Arial,sans-serif;font-size:25px;line-height:1.48;letter-spacing:-.025em;color:#163149;margin:0 0 24px}.about-copy>p:not(.large-copy){color:var(--muted);font-size:16px;line-height:1.8;max-width:720px}.feature-row{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:46px}.feature-row>div{padding-top:18px;border-top:1px solid var(--line)}.feature-icon{font-size:10px;color:#2089c3;font-weight:800;letter-spacing:.12em}.feature-row strong{display:block;font-family:"Segoe UI",Arial,sans-serif;font-size:15px;margin:13px 0 8px}.feature-row p{font-size:12px;line-height:1.65;color:#758291;margin:0}
.solutions{background:var(--paper)}.section-top{display:grid;grid-template-columns:1.2fr .8fr;gap:80px;align-items:end;margin-bottom:58px}.section-top>p{color:var(--muted);line-height:1.75;margin:0;max-width:490px}.solution-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.solution-card{background:#fff;border:1px solid #e3eaf0;border-radius:var(--radius);padding:28px;min-height:390px;position:relative;overflow:hidden;transition:.3s ease}.solution-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:#c8dae7}.solution-card.featured{background:linear-gradient(145deg,#0b2036,#0b2d4d);color:#fff;border-color:transparent}.solution-card.featured p,.solution-card.featured li{color:#b7c8d6}.card-num{position:absolute;right:24px;top:24px;font-size:10px;font-weight:800;letter-spacing:.12em;color:#9badba}.solution-icon{width:72px;height:72px;border-radius:18px;background:#eef7fb;position:relative;margin-bottom:34px}.featured .solution-icon{background:rgba(255,255,255,.08)}.solution-icon span{position:absolute;background:#229bd3}.fiber-icon span:nth-child(1){width:38px;height:3px;left:16px;top:23px}.fiber-icon span:nth-child(2){width:28px;height:3px;left:16px;top:35px}.fiber-icon span:nth-child(3){width:18px;height:3px;left:16px;top:47px}.radio-icon span{border:2px solid #229bd3;background:transparent;border-radius:50%}.radio-icon span:nth-child(1){inset:17px}.radio-icon span:nth-child(2){inset:25px}.radio-icon span:nth-child(3){width:6px;height:6px;left:33px;top:33px;background:#229bd3}.wan-icon span{width:10px;height:10px;border-radius:50%}.wan-icon span:nth-child(1){top:18px;left:31px}.wan-icon span:nth-child(2){bottom:17px;left:16px}.wan-icon span:nth-child(3){bottom:17px;right:16px}.wan-icon:after{content:"";position:absolute;left:22px;right:22px;top:29px;height:28px;border-left:1px solid #229bd3;border-right:1px solid #229bd3;transform:skew(-28deg)}.carrier-icon span{height:6px;border-radius:6px;left:15px;right:15px}.carrier-icon span:nth-child(1){top:19px}.carrier-icon span:nth-child(2){top:33px}.carrier-icon span:nth-child(3){top:47px}.managed-icon span{border:2px solid #229bd3;background:transparent;border-radius:50%}.managed-icon span:nth-child(1){width:38px;height:38px;left:17px;top:17px}.managed-icon span:nth-child(2){width:16px;height:16px;left:28px;top:28px}.managed-icon span:nth-child(3){width:4px;height:4px;left:34px;top:34px;background:#229bd3}.comms-icon span{width:8px;height:8px;border-radius:50%}.comms-icon span:nth-child(1){top:18px;left:18px}.comms-icon span:nth-child(2){top:30px;right:16px}.comms-icon span:nth-child(3){bottom:17px;left:29px}.comms-icon:after{content:"";position:absolute;inset:22px;border:1px solid #229bd3;transform:rotate(24deg)}.solution-card h3{font-size:21px;letter-spacing:-.025em;margin-bottom:12px}.solution-card p{font-size:13px;line-height:1.7;color:#66798a;min-height:66px}.solution-card ul{list-style:none;padding:0;margin:24px 0 0;border-top:1px solid rgba(137,163,182,.2)}.solution-card li{font-size:12px;color:#4f6577;padding:9px 0;border-bottom:1px solid rgba(137,163,182,.15);display:flex;align-items:center;gap:9px}.solution-card li:before{content:"";width:4px;height:4px;border-radius:50%;background:#29a2d5}.all-services{margin-top:24px;background:#fff;border:1px solid #e1e9ef;border-radius:16px;padding:0 24px}.all-services summary{list-style:none;cursor:pointer;padding:22px 0;display:flex;justify-content:space-between;font-family:"Segoe UI",Arial,sans-serif;font-weight:700}.all-services summary::-webkit-details-marker{display:none}.all-services summary span{font-size:20px;color:#168bc7;transition:.2s}.all-services[open] summary span{transform:rotate(45deg)}.service-list{border-top:1px solid #e4eaf0;padding:22px 0 28px;display:grid;grid-template-columns:repeat(4,1fr);gap:10px 22px}.service-list span{font-size:12px;color:#607486;position:relative;padding-left:14px}.service-list span:before{content:"";position:absolute;left:0;top:6px;width:4px;height:4px;background:#1e93ce;border-radius:50%}
.network{background:#061421;color:#fff;position:relative;overflow:hidden}.network-bg{position:absolute;inset:0;background:radial-gradient(circle at 15% 30%,rgba(46,162,215,.18),transparent 28%),radial-gradient(circle at 88% 70%,rgba(46,162,215,.13),transparent 30%),linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:auto,auto,62px 62px,62px 62px}.network .container{position:relative}.section-top.light h2{color:#fff}.section-top.light>p{color:#9eb3c3}.country-grid{display:grid;grid-template-columns:repeat(7,1fr);border:1px solid rgba(255,255,255,.1);border-radius:18px;overflow:hidden;background:rgba(255,255,255,.025)}.country-card{min-height:126px;padding:18px 16px;display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid rgba(255,255,255,.08)}.country-card:last-child{border-right:0}.country-card span{font-size:9px;color:#5689a6;letter-spacing:.12em}.country-card strong{font-family:"Segoe UI",Arial,sans-serif;font-size:14px}.network-note{margin-top:30px;display:flex;align-items:flex-start;gap:14px;color:#91a7b8;font-size:13px;line-height:1.7;max-width:760px}.network-note p{margin:0}.network-note .pulse{margin-top:5px;width:9px;height:9px;border-radius:50%;background:#64d7f5;box-shadow:0 0 0 5px rgba(100,215,245,.08)}
.partners{background:#fff}.brand-grid{display:grid;grid-template-columns:repeat(6,1fr);border:1px solid var(--line);border-radius:18px;overflow:hidden}.brand-grid div{height:138px;display:flex;align-items:center;justify-content:center;text-align:center;border-right:1px solid var(--line);font-family:"Segoe UI",Arial,sans-serif;font-weight:800;font-size:13px;letter-spacing:.06em;color:#526c7f;background:linear-gradient(#fff,#fbfdff);transition:.25s}.brand-grid div:last-child{border-right:0}.brand-grid div:hover{background:#f0f8fc;color:#177fba}
.contact{background:linear-gradient(135deg,#07131f,#0a2034);color:#fff}.contact-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:80px;align-items:center}.contact-copy h2{font-size:clamp(42px,4vw,62px);line-height:1.02;letter-spacing:-.045em;margin:20px 0}.contact-copy>p{color:#a8bbc9;line-height:1.75;max-width:610px}.contact-links{margin-top:38px;border-top:1px solid rgba(255,255,255,.1)}.contact-links a{display:grid;grid-template-columns:155px 1fr auto;align-items:center;gap:18px;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.1);transition:.2s}.contact-links a:hover{padding-left:8px}.contact-links small{font-size:9px;letter-spacing:.12em;color:#64869d}.contact-links strong{font-size:13px;font-weight:600;color:#dce9f1}.contact-links span{color:#66d5f4}.office-card{position:relative;background:linear-gradient(145deg,rgba(22,78,112,.6),rgba(11,35,55,.65));border:1px solid rgba(133,216,243,.18);border-radius:24px;padding:34px;min-height:410px;overflow:hidden;box-shadow:0 28px 80px rgba(0,0,0,.18)}.office-top{display:flex;align-items:center;justify-content:space-between}.office-top span{background:#72d8f5;color:#06121f;border-radius:999px;font-size:9px;font-weight:800;letter-spacing:.12em;padding:7px 9px}.office-top small{font-size:9px;letter-spacing:.14em;color:#7fa0b6}.office-card h3{font-size:24px;margin:54px 0 18px}.office-card address{font-style:normal;color:#b4c6d3;line-height:1.8;font-size:14px;margin-bottom:30px}.office-card .btn{position:relative;z-index:3}.map-lines{position:absolute;right:-30px;bottom:-50px;width:290px;height:230px;opacity:.14;transform:rotate(-12deg)}.map-lines i{position:absolute;border:1px solid #75dff8;border-radius:50%}.map-lines i:nth-child(1){inset:10px}.map-lines i:nth-child(2){inset:40px}.map-lines i:nth-child(3){inset:70px}.map-lines i:nth-child(4){width:1px;height:250px;left:145px;top:-10px;background:#75dff8}.map-lines i:nth-child(5){height:1px;width:300px;left:0;top:115px;background:#75dff8}
footer{background:#040d16;color:#9db0bf;padding:70px 0 24px}.footer-grid{display:grid;grid-template-columns:1.6fr .8fr .9fr .8fr;gap:60px}.footer-brand img{width:160px;filter:brightness(1.25)}.footer-brand p{font-size:12px;line-height:1.7;max-width:250px}.footer-grid>div:not(.footer-brand){display:flex;flex-direction:column;gap:11px}.footer-grid small{font-size:9px;letter-spacing:.14em;color:#536f84;margin-bottom:7px}.footer-grid a,.footer-grid p{font-size:12px;line-height:1.7;margin:0}.footer-grid a:hover{color:#66d7f3}.footer-bottom{margin-top:55px;padding-top:22px;border-top:1px solid rgba(255,255,255,.07);display:flex;justify-content:space-between;font-size:10px;color:#587185}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:none}.reveal-delay-1{transition-delay:.12s}.reveal-delay-2{transition-delay:.22s}
@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(208,248,255,.5)}70%{box-shadow:0 0 0 14px rgba(208,248,255,0)}100%{box-shadow:0 0 0 0 rgba(208,248,255,0)}}
@media(max-width:1000px){.main-nav{gap:17px}.main-nav a{font-size:12px}.hero-inner{grid-template-columns:1fr}.hero-visual{height:440px}.hero{min-height:auto}.split-grid,.contact-grid{grid-template-columns:1fr;gap:45px}.section-top{grid-template-columns:1fr;gap:25px}.solution-grid{grid-template-columns:repeat(2,1fr)}.country-grid{grid-template-columns:repeat(4,1fr)}.country-card{border-bottom:1px solid rgba(255,255,255,.08)}.brand-grid{grid-template-columns:repeat(3,1fr)}.brand-grid div{border-bottom:1px solid var(--line)}.service-list{grid-template-columns:repeat(3,1fr)}.footer-grid{grid-template-columns:1.4fr 1fr 1fr}}
@media(max-width:760px){.container{width:min(100% - 30px,1180px)}.site-header{background:rgba(6,17,31,.9);backdrop-filter:blur(14px)}.nav-wrap{height:72px}.brand img{width:130px}.menu-toggle{display:block}.main-nav{position:absolute;top:72px;left:0;right:0;background:#081523;display:none;flex-direction:column;align-items:stretch;padding:20px 22px 28px;border-top:1px solid rgba(255,255,255,.07)}.main-nav.open{display:flex}.main-nav a{padding:8px 0}.nav-cta{text-align:center;margin-top:5px}.hero{padding-top:72px}.hero-inner{padding:70px 0 15px;gap:18px}.hero-copy{text-align:left}.hero-lead{font-size:16px}.hero-proof{gap:20px;justify-content:space-between}.hero-proof strong{font-size:22px}.hero-proof span{font-size:9px}.hero-visual{height:390px;transform:scale(.82);margin:-20px 0}.hero-bottom{font-size:8px}.trust-inner{overflow:hidden}.trust-label{display:none}.partner-ticker{min-width:700px;animation:ticker 18s linear infinite}.section{padding:82px 0}.feature-row{grid-template-columns:1fr}.solution-grid{grid-template-columns:1fr}.solution-card{min-height:auto}.service-list{grid-template-columns:1fr 1fr}.country-grid{grid-template-columns:repeat(2,1fr)}.brand-grid{grid-template-columns:repeat(2,1fr)}.contact-links a{grid-template-columns:1fr auto}.contact-links small{grid-column:1/-1}.office-card{min-height:370px}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-bottom{gap:20px;flex-direction:column}.section-heading h2,.section-top h2{font-size:40px}}
@media(max-width:480px){h1{font-size:49px}.hero-actions{flex-direction:column;align-items:stretch}.hero-proof{flex-wrap:wrap}.hero-visual{transform:scale(.68);margin:-60px 0}.service-list{grid-template-columns:1fr}.country-grid{grid-template-columns:1fr 1fr}.brand-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}.contact-links a{grid-template-columns:1fr auto}.office-card{padding:25px}.section{padding:68px 0}}
@keyframes ticker{to{transform:translateX(-320px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.orbit,.partner-ticker{animation:none}.reveal{opacity:1;transform:none;transition:none}}

/* =========================================================
   Responsive refinement layer — tablet + mobile
   Desktop styling above remains unchanged.
   ========================================================= */

/* Prevent long labels/addresses from forcing horizontal scroll. */
main, section, footer, .container, .hero-copy, .contact-copy,
.solution-card, .office-card, .footer-grid > div { min-width: 0; }
.contact-links strong, .office-card address, .footer-grid a, .footer-grid p {
  overflow-wrap: anywhere;
}

/* Better touch targets without changing desktop proportions. */
@media (hover: none) and (pointer: coarse) {
  .main-nav a, .btn, .all-services summary { min-height: 44px; }
  .solution-card:hover, .btn-primary:hover { transform: none; }
}

/* Small laptops / landscape tablets: switch to mobile navigation before it crowds. */
@media (max-width: 900px) {
  .container { width: min(100% - 40px, 1180px); }
  .nav-wrap { height: 76px; }
  .brand img { width: 140px; }
  .menu-toggle {
    display: inline-flex;
    width: 44px;
    height: 44px;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    border-radius: 10px;
    position: relative;
    z-index: 2;
  }
  .menu-toggle:focus-visible { outline: 2px solid var(--cyan); outline-offset: 2px; }
  .menu-toggle span { transition: transform .22s ease, opacity .22s ease; }
  .menu-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
  .menu-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

  .main-nav {
    position: absolute;
    top: 76px;
    left: 20px;
    right: 20px;
    display: none;
    flex-direction: column;
    align-items: stretch;
    gap: 2px;
    padding: 16px;
    background: rgba(8,21,35,.98);
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 0 0 16px 16px;
    box-shadow: 0 22px 50px rgba(0,0,0,.28);
    max-height: calc(100dvh - 92px);
    overflow-y: auto;
  }
  .main-nav.open { display: flex; }
  .main-nav a { font-size: 14px; padding: 12px 10px; border-radius: 8px; }
  .main-nav > a:not(.nav-cta):after { display: none; }
  .main-nav > a:not(.nav-cta):hover { background: rgba(255,255,255,.05); }
  .nav-cta { margin-top: 6px; text-align: center; }

  .hero { padding-top: 76px; min-height: auto; }
  .hero-inner {
    grid-template-columns: 1fr;
    min-height: 0;
    gap: 22px;
    padding: 64px 0 28px;
  }
  .hero-copy { max-width: 720px; }
  h1 { font-size: clamp(48px, 8.2vw, 72px); max-width: 700px; }
  .hero-visual { height: 420px; }
  .orbital { transform: scale(.88); }
  .hero-bottom { min-height: 58px; height: auto; padding: 14px 0; }

  .split-grid, .contact-grid { grid-template-columns: 1fr; gap: 46px; }
  .section-top { grid-template-columns: 1fr; gap: 22px; }
  .section-top > p { max-width: 720px; }
  .feature-row { grid-template-columns: repeat(3, minmax(0,1fr)); gap: 18px; }
  .solution-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .service-list { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .country-grid { grid-template-columns: repeat(4, minmax(0,1fr)); }
  .brand-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .footer-grid { grid-template-columns: 1.2fr 1fr 1fr; gap: 42px; }
  .footer-grid > div:last-child { grid-column: 2 / -1; }
}

/* Portrait tablets / large phones. */
@media (max-width: 700px) {
  .container { width: min(100% - 30px, 1180px); }
  .site-header { background: rgba(6,17,31,.94); backdrop-filter: blur(14px); }
  .main-nav { left: 15px; right: 15px; }

  .hero-inner { padding: 52px 0 18px; }
  h1 { font-size: clamp(42px, 12vw, 58px); line-height: .98; margin: 20px 0 22px; }
  .hero-lead { font-size: 16px; line-height: 1.65; }
  .hero-actions { gap: 10px; }
  .hero-proof { margin-top: 38px; gap: 12px; justify-content: space-between; }
  .hero-proof div { flex: 1 1 30%; }
  .hero-proof strong { font-size: 22px; }
  .hero-proof span { font-size: 9px; line-height: 1.35; }
  .hero-visual { height: 340px; }
  .orbital { transform: scale(.70); }
  .hero-bottom { flex-wrap: wrap; gap: 8px 12px; font-size: 8px; }
  .hero-bottom .line { min-width: 40px; }

  .trust-inner { min-height: 74px; overflow: hidden; }
  .trust-label { display: none; }
  .partner-ticker {
    width: max-content;
    min-width: 690px;
    justify-content: flex-start;
    animation: ticker 18s linear infinite;
  }

  .section { padding: 76px 0; }
  .section-heading h2, .section-top h2, .contact-copy h2 { font-size: clamp(36px, 10vw, 46px); }
  .about-copy .large-copy { font-size: 21px; }
  .feature-row { grid-template-columns: 1fr; margin-top: 34px; }
  .solution-grid { grid-template-columns: 1fr; }
  .solution-card { min-height: 0; padding: 24px; }
  .service-list { grid-template-columns: 1fr 1fr; }
  .country-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .brand-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .brand-grid div { height: 110px; }

  .contact-links a {
    grid-template-columns: minmax(0,1fr) auto;
    gap: 8px 14px;
    padding: 16px 0;
  }
  .contact-links small { grid-column: 1 / -1; }
  .contact-links strong { font-size: 12px; min-width: 0; }
  .office-card { min-height: 0; padding: 28px; }
  .office-card h3 { margin-top: 38px; }

  .footer-grid { grid-template-columns: 1fr 1fr; gap: 34px 24px; }
  .footer-brand { grid-column: 1 / -1; }
  .footer-grid > div:last-child { grid-column: auto; }
  .footer-bottom { flex-direction: column; align-items: flex-start; gap: 12px; }
}

/* Standard mobile. */
@media (max-width: 480px) {
  .container { width: min(100% - 24px, 1180px); }
  .nav-wrap { height: 68px; }
  .brand img { width: 122px; }
  .main-nav { top: 68px; left: 12px; right: 12px; max-height: calc(100dvh - 82px); }
  .hero { padding-top: 68px; }
  .hero-inner { padding-top: 42px; }
  h1 { font-size: clamp(38px, 12.7vw, 50px); letter-spacing: -.045em; }
  .hero-actions { flex-direction: column; align-items: stretch; }
  .btn { width: 100%; min-height: 48px; }
  .hero-proof { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
  .hero-proof div { min-width: 0; }
  .hero-proof strong { font-size: 20px; }
  .hero-proof span { letter-spacing: .04em; }

  .hero-visual { height: 300px; margin: -12px 0 -16px; }
  .orbital { transform: scale(.61); }
  .hero-bottom { display: grid; grid-template-columns: 1fr; line-height: 1.45; padding-bottom: 18px; }
  .hero-bottom .line { display: none; }

  .section { padding: 64px 0; }
  .section-heading h2, .section-top h2, .contact-copy h2 { font-size: clamp(33px, 10vw, 41px); }
  .section-top { margin-bottom: 38px; }
  .about-copy .large-copy { font-size: 20px; }
  .all-services { padding: 0 18px; }
  .all-services summary { gap: 14px; font-size: 14px; }
  .service-list { grid-template-columns: 1fr; }
  .country-card { min-height: 105px; }
  .brand-grid div { height: 92px; font-size: 11px; }

  .contact-links strong { font-size: 11px; }
  .office-card { padding: 24px 20px; border-radius: 20px; }
  .office-top { gap: 12px; }
  .office-card h3 { font-size: 21px; }

  footer { padding-top: 54px; }
  .footer-grid { grid-template-columns: 1fr; }
  .footer-brand { grid-column: auto; }
}

/* Very narrow devices (older/smaller phones). */
@media (max-width: 360px) {
  .container { width: calc(100% - 20px); }
  h1 { font-size: 36px; }
  .eyebrow { font-size: 9px; letter-spacing: .13em; }
  .eyebrow span { width: 22px; }
  .hero-proof { grid-template-columns: 1fr; gap: 14px; }
  .hero-proof div { grid-template-columns: auto 1fr; align-items: center; gap: 10px; }
  .hero-proof span { font-size: 9px; }
  .hero-visual { height: 270px; }
  .orbital { transform: scale(.54); }
  .country-grid, .brand-grid { grid-template-columns: 1fr; }
  .contact-links a { grid-template-columns: 1fr; }
  .contact-links span { display: none; }
}

/* Keep in-page anchors visible below the fixed header. */
section[id] { scroll-margin-top: 96px; }

/* Avoid animation work when mobile menu is open. */
body.menu-open { overflow: hidden; }

/* Mobile hero copy — intentionally more compact. */
@media (max-width: 480px) {
  .hero-inner { padding-top: 30px; }
  .hero-copy .eyebrow {
    font-size: 8px;
    letter-spacing: .12em;
    gap: 7px;
  }
  .hero-copy .eyebrow span { width: 20px; }
  .hero-copy h1 {
    font-size: clamp(31px, 9.8vw, 39px);
    line-height: 1;
    letter-spacing: -.04em;
    margin: 14px 0 16px;
    max-width: 360px;
  }
  .hero-lead {
    font-size: 13px;
    line-height: 1.55;
    max-width: 350px;
    margin-bottom: 20px;
  }
  .hero-actions {
    gap: 8px;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
  }
  .hero-actions .btn {
    width: auto;
    min-height: 40px;
    padding: 10px 14px;
    font-size: 11.5px;
    flex: 0 0 auto;
  }
  .hero-proof {
    margin-top: 18px;
    gap: 5px;
  }
  .hero-proof strong { font-size: 14px; }
  .hero-proof span {
    font-size: 6.5px;
    line-height: 1.2;
    letter-spacing: .02em;
  }
}

@media (max-width: 360px) {
  .hero-copy h1 { font-size: 30px; }
  .hero-lead { font-size: 12.5px; }
  .hero-proof {
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 5px;
  }
  .hero-proof div {
    display: grid;
    grid-template-columns: 1fr;
    align-items: start;
    gap: 3px;
  }
  .hero-proof strong { font-size: 13px; }
  .hero-proof span { font-size: 6px; }
}

/* Header logo: add a little breathing room from the top on every screen size. */
.brand img { transform: translateY(10px); }

@media (max-width: 900px) {
  .brand img { transform: translateY(13px); }
}

@media (max-width: 700px) {
  .brand img { transform: translateY(15px); }
}

@media (max-width: 480px) {
  .brand img { transform: translateY(14px); }
}
