:root{--ink:#111b19;--forest:#123f36;--deep:#092c27;--lime:#c8ff57;--cream:#f4f0e7;--paper:#fbfaf6;--line:#d9ddd6;--muted:#62706b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}
.site-header{height:92px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff2b;position:absolute;inset:0 0 auto;z-index:20;color:white}.brand{display:flex;align-items:center;white-space:nowrap}.brand-logo img{display:block;width:auto;height:76px;object-fit:contain}nav{display:flex;gap:32px;font-size:13px}nav a{opacity:.8}nav a:hover{opacity:1}.header-cta{display:flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid #ffffff73;border-radius:100px;font-size:12px}.header-cta svg,.button svg{width:18px;height:18px}.menu-button{display:none;background:none;border:0;color:white;width:42px;height:42px;padding:8px}.menu-button span{display:block;height:1px;background:currentColor;margin:7px 0}
.hero{min-height:790px;height:100vh;max-height:960px;padding:150px 6vw 44px;background:var(--deep);color:white;position:relative;overflow:hidden;display:grid;grid-template-columns:1.1fr .9fr;align-items:center}.hero-noise{position:absolute;inset:0;opacity:.055;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.hero:before{content:"";position:absolute;width:670px;height:670px;right:-120px;top:90px;border-radius:50%;background:radial-gradient(circle at 42% 45%,#c8ff5730,#123f3614 38%,transparent 70%)}.orbit{position:absolute;border:1px solid #c8ff5730;border-radius:50%;right:2vw;top:140px;width:580px;height:580px}.orbit-two{width:410px;height:410px;right:8vw;top:225px}.hero-copy{position:relative;z-index:2;max-width:760px}.eyebrow,.section-label{font-size:11px;font-weight:700;letter-spacing:.18em;color:#53635e;display:flex;align-items:center;gap:10px}.eyebrow{color:var(--lime);margin-bottom:30px}.eyebrow span{width:34px;height:1px;background:currentColor}h1{font:400 clamp(55px,6.1vw,92px)/.97 Georgia,serif;letter-spacing:-.045em;margin:0}h1 em{color:var(--lime);font-weight:400}.hero-intro{max-width:630px;font-size:17px;line-height:1.7;color:#cad8d3;margin:30px 0 34px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{min-height:49px;padding:0 22px;border-radius:100px;display:inline-flex;align-items:center;justify-content:center;gap:12px;font-size:13px;font-weight:700}.button.primary{background:var(--lime);color:var(--ink)}.button.ghost{border:1px solid #ffffff66;color:white}
.hero-visual{position:relative;z-index:2;height:520px}.globe-core{position:absolute;width:260px;height:260px;right:13%;top:110px;border-radius:50%;background:#c8ff5714;border:1px solid #c8ff578c;display:grid;place-items:center;box-shadow:0 0 80px #c8ff5717}.globe-core>svg{width:105px;height:105px;stroke-width:.75;color:var(--lime)}.globe-core i,.globe-core i:before,.globe-core i:after{position:absolute;border-radius:50%;border:1px solid #c8ff573d;content:""}.globe-core i{inset:-35px}.globe-core i:before{inset:-38px}.globe-core i:after{inset:-78px}.signal-card{position:absolute;background:#0a2c27d1;backdrop-filter:blur(12px);border:1px solid #ffffff24;border-radius:12px;padding:17px;width:190px;display:grid;grid-template-columns:35px 1fr;box-shadow:0 16px 50px #0000003d}.signal-card svg{grid-row:span 2;color:var(--lime);width:24px;height:24px}.signal-card span{font-size:8px;letter-spacing:.15em;color:#98aaa4}.signal-card b{font:400 14px Georgia,serif}.card-a{top:55px;left:8%}.card-b{bottom:44px;right:1%}.hero-footer{position:absolute;z-index:3;inset:auto 6vw 37px;border-top:1px solid #ffffff26;padding-top:22px;display:grid;grid-template-columns:1fr repeat(3,150px);gap:25px;align-items:end}.hero-footer>span{font-size:10px;letter-spacing:.15em;color:#829b93;text-transform:uppercase}.hero-footer div{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:8px}.hero-footer b{color:var(--lime);font:25px Georgia,serif}.hero-footer small{color:#8fa29c;font-size:8px;line-height:1.3;letter-spacing:.1em}
.section{padding:105px 6vw}.about-grid{margin-top:38px;display:grid;grid-template-columns:1fr 1fr;gap:9vw}h2{margin:0;font:400 clamp(42px,5vw,70px)/1.06 Georgia,serif;letter-spacing:-.035em}.lead{font:25px/1.45 Georgia,serif;margin:0 0 24px}.about-grid>div>p:not(.lead),.reach-panel p{color:var(--muted);line-height:1.75;font-size:15px}.values{margin-top:35px;padding-top:25px;border-top:1px solid var(--line);display:flex;gap:24px;flex-wrap:wrap}.values span{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700}.values svg{width:17px;height:17px;color:var(--forest)}
.services{background:var(--forest);color:white}.section-heading{display:grid;grid-template-columns:1.1fr .9fr;gap:10vw;align-items:end}.section-label.light{color:var(--lime);margin-bottom:25px}.section-heading>p{color:#b5c6c0;line-height:1.7;font-size:16px;max-width:470px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:60px;border-top:1px solid #ffffff29;border-left:1px solid #ffffff29}.service-card{min-height:320px;padding:30px;border-right:1px solid #ffffff29;border-bottom:1px solid #ffffff29;transition:.25s}.service-card:hover{background:#194b41;transform:translateY(-3px)}.service-top{display:flex;justify-content:space-between;color:var(--lime);font-size:11px;letter-spacing:.14em}.service-top svg{width:25px;height:25px;stroke-width:1.3}.service-card h3{font:400 27px Georgia,serif;margin:52px 0 14px}.service-card p{color:#afc0ba;font-size:13px;line-height:1.65;max-width:330px}.service-detail{color:var(--lime);font-size:9px;letter-spacing:.13em;margin-top:24px}
.reach{background:var(--cream)}.reach-panel{display:grid;grid-template-columns:1fr 1fr;gap:11vw}.reach-panel h2{margin:30px 0}.market-list{border-top:1px solid #bfc7bf}.market-list div{height:62px;display:grid;grid-template-columns:44px 1fr auto;align-items:center;border-bottom:1px solid #bfc7bf;font:20px Georgia,serif}.market-list span{font:9px Arial;color:#7b8983}.market-list svg{color:var(--forest);width:18px;height:18px}.method h2{margin:25px 0 55px}.steps{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.steps article{padding:26px 30px 15px 0}.steps b{color:#8c9893;font-size:10px;letter-spacing:.15em}.steps h3{font:400 25px Georgia,serif;margin:34px 0 12px}.steps p{font-size:13px;line-height:1.65;color:var(--muted)}
.contact{background:var(--deep);color:white;display:grid;grid-template-columns:1fr 370px;align-items:center;overflow:hidden}.contact h2{margin:25px 0}.contact p{color:#aec0ba;margin-bottom:30px}.contact-mark{height:350px;position:relative;display:grid;place-items:center}.contact-mark:before,.contact-mark:after{content:"";position:absolute;border:1px solid #edb76a52;border-radius:50%}.contact-mark:before{width:270px;height:270px}.contact-mark:after{width:370px;height:370px}.contact-mark img{position:relative;z-index:2;width:225px;height:225px;object-fit:contain}footer{min-height:118px;padding:18px 6vw;background:#071f1c;color:white;display:flex;align-items:center;justify-content:space-between;gap:25px}.footer-logo img{display:block;width:auto;height:84px;object-fit:contain}footer p,footer>span{color:#718983;font-size:10px;letter-spacing:.08em}
@media(max-width:900px){nav,.header-cta{display:none}.menu-button{display:block}.site-header.menu-open nav{display:flex;position:absolute;left:0;right:0;top:92px;background:#092c27;padding:28px 5vw;flex-direction:column;gap:22px;border-top:1px solid #ffffff1f}.hero{min-height:900px;height:auto;max-height:none;grid-template-columns:1fr;padding-top:145px;align-content:start}.hero-visual{height:340px}.globe-core{width:190px;height:190px;top:70px;right:calc(50% - 95px)}.globe-core>svg{width:80px}.card-a{left:0;top:25px}.card-b{right:0;bottom:20px}.hero-footer{display:none}.about-grid,.section-heading,.reach-panel{grid-template-columns:1fr;gap:45px}.service-grid{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:repeat(2,1fr)}.contact{grid-template-columns:1fr 250px}.contact-mark{height:280px}}
@media(max-width:600px){.site-header{padding:0 22px}.brand-logo img{height:68px}.section{padding:75px 22px}.hero{padding:125px 22px 50px;min-height:820px}.hero-intro{font-size:15px}.hero-visual{height:300px}.signal-card{width:160px;padding:12px}.signal-card b{font-size:12px}.service-grid{grid-template-columns:1fr}.service-card{min-height:270px}.service-card h3{margin-top:35px}.steps{grid-template-columns:1fr}.steps article{border-bottom:1px solid var(--line)}.contact{grid-template-columns:1fr}.contact-mark{display:none}footer{flex-direction:column;align-items:flex-start}.footer-logo img{height:76px}}

.partners{background:#f4f0e7;padding:90px 0 96px;overflow:hidden}.partners-heading{text-align:center;padding:0 6vw 42px}.partners-heading .section-label{justify-content:center;margin-bottom:18px}.partners-heading h2{font-size:clamp(38px,4.5vw,62px)}.logo-marquee{width:100%;overflow:hidden;mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent)}.logo-track{display:flex;gap:22px;width:max-content;animation:logo-scroll 52s linear infinite}.logo-marquee:hover .logo-track{animation-play-state:paused}.logo-card{width:240px;height:132px;flex:0 0 240px;padding:18px 22px;border:1px solid #d9ddd6;border-radius:14px;background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px #0d29240a}.logo-card img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}.logo-card:nth-child(17n + 15) img,.logo-card:nth-child(17n + 16) img,.logo-card:nth-child(17n + 17) img{max-width:76%;max-height:76%}@keyframes logo-scroll{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 11px))}}
@media(max-width:600px){.partners{padding:65px 0 70px}.partners-heading{padding-bottom:32px}.logo-track{gap:14px;animation-duration:42s}.logo-card{width:190px;height:108px;flex-basis:190px;padding:14px 18px}@keyframes logo-scroll{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 7px))}}}
@media(prefers-reduced-motion:reduce){.logo-track{animation-play-state:paused}}

.service-card{overflow:hidden}.service-card-image{padding:0;display:flex;flex-direction:column;min-height:520px}.service-media{height:172px;overflow:hidden;background:#0a2c27}.service-media img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .45s ease}.service-card-image:hover .service-media img{transform:scale(1.035)}.service-card-body{padding:25px 30px 30px;display:flex;flex:1;flex-direction:column}.service-card-image h3{margin:31px 0 14px}.service-card-image .service-detail{margin-top:auto;padding-top:24px}
.contact{grid-template-columns:1fr}.contact-copy{max-width:900px}
.location{background:var(--paper);display:grid;grid-template-columns:.82fr 1.18fr;gap:7vw;align-items:center}.location h2{margin:28px 0 24px}.location-copy p{color:var(--muted);font-size:15px;line-height:1.75;margin:0 0 28px}.map-link{display:inline-flex;align-items:center;gap:10px;color:var(--forest);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.map-link svg{width:18px;height:18px}.map-frame{min-height:440px;border-radius:18px;overflow:hidden;border:1px solid var(--line);box-shadow:0 25px 65px #0d292415;background:#e8ece8}.map-frame iframe{display:block;width:100%;height:440px;border:0}
@media(max-width:900px){.service-card-image{min-height:500px}.location{grid-template-columns:1fr;gap:42px}.map-frame,.map-frame iframe{min-height:380px;height:380px}}
@media(max-width:600px){.service-card-image{min-height:470px}.service-media{height:188px}.service-card-body{padding:23px 22px 27px}.service-card-image h3{margin-top:27px}.map-frame,.map-frame iframe{min-height:330px;height:330px}.location-copy p br{display:none}}

/* Responsive layout guardrails: keep every section inside the viewport. */
html,body{width:100%;max-width:100%;overflow-x:hidden}
body{min-width:320px}
main{width:100%;max-width:100%;overflow:hidden;overflow:clip}
header,main,section,footer{min-width:0}
.site-header,.hero,.section,.partners,footer{width:100%;max-width:100%}
img,iframe{max-width:100%}
.hero{grid-template-columns:minmax(0,1.08fr) minmax(300px,.92fr)}
.hero-copy,.hero-visual,.about-grid>*,.section-heading>*,.reach-panel>*,.location>*{min-width:0}
.service-grid{width:100%;grid-template-columns:repeat(3,minmax(0,1fr))}
.service-card,.service-card-body{min-width:0}
.service-card h3,.service-card p,.location-copy p{overflow-wrap:break-word}
.logo-marquee{max-width:100%;contain:paint}
.logo-track{will-change:transform}
.about-gallery{margin-top:64px;display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:16px}
.about-gallery figure{position:relative;min-width:0;height:260px;margin:0;overflow:hidden;background:var(--deep)}
.about-gallery img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.about-gallery figure:hover img{transform:scale(1.025)}
.about-gallery figure:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#071f1cde)}
.about-gallery figcaption{position:absolute;z-index:1;left:22px;right:22px;bottom:18px;color:white;font-size:14px;font-weight:700;letter-spacing:.04em}

@media(max-width:1180px){
  .site-header{padding-inline:4vw}
  nav{gap:20px}
  .hero{grid-template-columns:minmax(0,1fr) minmax(280px,.72fr);padding-inline:5vw}
  .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .section-heading{gap:6vw}
}

@media(max-width:900px){
  .hero{grid-template-columns:minmax(0,1fr);padding-inline:clamp(28px,6vw,58px)}
  .hero-copy{max-width:720px}
  .section{padding-inline:clamp(28px,6vw,58px)}
  .about-grid,.section-heading,.reach-panel,.location{grid-template-columns:minmax(0,1fr)}
  .contact{grid-template-columns:minmax(0,1fr)}
}

@media(max-width:720px){
  .about-gallery{grid-template-columns:minmax(0,1fr);gap:12px;margin-top:44px}
  .about-gallery figure{height:230px}
  .service-grid{grid-template-columns:minmax(0,1fr)}
  .service-card-image{min-height:0}
  .service-media{height:clamp(190px,55vw,300px)}
}

@media(max-width:600px){
  h1{font-size:clamp(42px,13vw,58px);line-height:1}
  h2{font-size:clamp(36px,11vw,50px)}
  .hero,.section{padding-inline:22px}
  .hero-visual{width:100%;max-width:520px;margin-inline:auto}
  .signal-card{max-width:46%}
  .service-card-body{padding:24px 22px 28px}
  .button{max-width:100%}
  footer{padding-inline:22px}
}
