.page-hero{position:relative;overflow:hidden;isolation:isolate;min-height:370px;display:flex;align-items:center;padding:68px 0;color:#fff;background:#143d70;border:0}.page-hero>.container{position:relative;z-index:3}.page-hero-media{position:absolute;inset:0 0 0 32%;z-index:-3}.page-hero-media img{width:100%;height:100%;object-fit:cover;object-position:center 42%;animation:page-photo-arrive 1.8s cubic-bezier(.2,.7,.2,1) both}.page-hero-wash{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#143d70 12%,rgba(20,61,112,.92) 35%,rgba(20,61,112,.5) 65%,rgba(20,61,112,.15))}.page-hero-grid{position:absolute;inset:0 45% 0 0;z-index:-1;background-image:linear-gradient(#ffffff04 1px,transparent 1px),linear-gradient(90deg,#ffffff04 1px,transparent 1px);background-size:46px 46px;mask-image:linear-gradient(90deg,#000,transparent)}.page-hero .eyebrow{color:#b1d9ff}.page-hero h1{font-size:48px;margin:13px 0 20px}.page-hero .container>p:last-child{color:#d0e1f5;font-size:16px;max-width:580px}.page-breadcrumb{display:flex;align-items:center;gap:13px;font-size:14px;letter-spacing:.09em;color:#adc9e6;margin-bottom:29px}.page-breadcrumb a:hover{color:#fff}.page-breadcrumb>span:first-of-type{opacity:.45}.page-hero-services .page-hero-media img{object-position:center 45%}.page-hero-contact .page-hero-media img{object-position:center 46%}
.service-card .card-visual{height:290px;align-items:flex-start;justify-content:flex-end;padding:26px;color:#fff;isolation:isolate;box-shadow:0 10px 25px #163e720c}.service-card-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3;transition:transform .8s cubic-bezier(.2,.6,.2,1)}.card-visual:hover .service-card-photo{transform:scale(1.06)}.card-photo-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,33,57,.72),transparent 65%);z-index:-2}.card-visual:after{display:none}.card-visual .visual-brand{color:#fff;font-size:27px;letter-spacing:.01em}.card-visual .visual-caption{color:#dceaf7;font-size:14px;margin-top:7px;letter-spacing:.12em}.service-card .card-copy h3{min-height:58px}.visual-frame{overflow:hidden;border-radius:14px;position:relative;isolation:isolate}.visual-frame img{width:100%;height:100%;object-fit:cover;transform:translate(var(--image-x,0),var(--image-y,0)) scale(1.04);transition:transform 1s cubic-bezier(.2,.65,.2,1)}.photo-note{position:absolute;bottom:12px;right:15px;font-size:14px;letter-spacing:0;color:#fff9;z-index:4;text-shadow:0 1px 4px #0006}
.company-story{padding-top:0}.story-layout{display:grid;grid-template-columns:1.08fr 1fr;gap:80px;align-items:center}.story-photo{margin:0;height:430px;box-shadow:0 20px 60px #143d7014}.story-photo:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#0e2d4eaa);z-index:1}.story-photo figcaption{position:absolute;left:28px;bottom:40px;color:white;z-index:3;font-size:17px;letter-spacing:-.03em}.story-copy h2{font-size:34px;line-height:1.55;margin:20px 0}.story-copy h2 em{font-style:normal;color:#3179b8}.story-copy>p:not(.eyebrow){font-size:15px;line-height:1.9;color:#6c7c8e}.story-values{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}.story-values span{border:1px solid #dce7f5;color:#2e6093;background:#f6f9fe;border-radius:30px;padding:7px 14px;font-size:14px}.story-copy .text-link{margin-top:8px}.principle-card{position:relative;overflow:hidden;transition:transform .35s,box-shadow .35s,border-color .35s}.principle-card:hover{transform:translateY(-5px);border-color:#b8d4f1;box-shadow:0 15px 30px #143d7010}.principle-card:after{content:'';position:absolute;inset:auto -30px -60px auto;width:145px;height:145px;border-radius:50%;border:1px solid #e2edf9}
.service-subnav{position:sticky;top:var(--header);z-index:20;box-shadow:0 5px 20px #163e7208;background:#fffffff5;backdrop-filter:blur(15px);gap:55px}.service-subnav a{position:relative;padding:5px 15px;transition:color .2s}.service-subnav a:after{content:'';position:absolute;bottom:-23px;left:15px;right:15px;height:3px;background:#3b87cf;transform:scaleX(0);transition:transform .3s}.service-subnav a[aria-current]{color:#2775b9;font-weight:600}.service-subnav a[aria-current]:after{transform:scaleX(1)}.service-detail{scroll-margin-top:75px}.detail-photo{padding:0;min-height:470px;height:470px;display:block;background:#e6eef6;box-shadow:0 14px 45px #163e7212}.detail-photo>img{position:absolute;inset:0}.detail-photo-shade{position:absolute;inset:0;background:linear-gradient(0deg,#112c4ccc,transparent 60%);z-index:1}.detail-photo-tag{position:absolute;top:22px;left:22px;background:#fffffff0;border:1px solid #ffffff6b;border-radius:30px;color:#244f7e;display:flex;align-items:center;gap:8px;padding:8px 13px;z-index:3;font-size:14px;font-weight:600}.detail-photo .detail-photo-tag svg{width:21px;height:21px;margin:0;stroke-width:1.6}.detail-photo-caption{position:absolute;bottom:43px;left:30px;color:#fff;z-index:3}.detail-photo-caption small{font-size:14px;letter-spacing:.12em;color:#c8e1f9;display:block;margin-bottom:10px}.detail-photo-caption strong{font-size:38px;letter-spacing:.01em}.detail-copy .check-list li{border-bottom:1px solid #edf2f7;padding-top:12px;padding-bottom:12px}.detail-copy .eyebrow{display:flex;align-items:center;gap:10px}.detail-copy .eyebrow:before{content:'';width:6px;height:6px;border-radius:50%;background:#3b87cf;box-shadow:0 0 0 5px #e8f2fc}
.ecosystem-section{padding-bottom:0}.ecosystem-layout{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid #e4edf7;border-radius:15px;overflow:hidden;background:#f4f8ff}.ecosystem-photo{height:430px;border-radius:0}.ecosystem-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0c2d57cc,transparent 80%)}.ecosystem-photo-copy{position:absolute;bottom:43px;left:35px;z-index:3;color:#fff}.ecosystem-photo-copy .eyebrow{color:#bddcff;font-size:14px}.ecosystem-photo-copy h2{font-size:29px;line-height:1.6;margin-top:12px}.ecosystem-map{position:relative;min-height:430px;overflow:hidden;isolation:isolate}.map-grid{position:absolute;inset:0;background-image:radial-gradient(#c4d8ee 1px,transparent 1px);background-size:19px 19px;opacity:.5}.map-lines{position:absolute;inset:15px 0 0;width:100%;height:390px;stroke:#81b6e7;stroke-width:1.5;stroke-dasharray:5 9;fill:none;animation:connection-flow 18s linear infinite}.map-hub{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);width:110px;height:110px;border-radius:50%;background:linear-gradient(135deg,#1d528c,#143963);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 0 0 13px #e4edf9,0 0 0 14px #c5d9ed,0 15px 35px #163e7230;color:#fff}.map-hub b{font-size:40px;line-height:1}.map-hub b span{color:#83c1fc;font-size:25px}.map-hub small{font-size:14px;letter-spacing:.1em;margin-top:8px}.map-node{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100px;height:92px;border:1px solid #d9e6f6;border-radius:12px;background:#fffffff2;box-shadow:0 6px 18px #163e7208;animation:node-float 8s ease-in-out infinite}.map-node svg{width:26px;height:26px;stroke-width:1.5;color:#3b87cf;margin-bottom:7px}.map-node strong{font-size:14px;color:#254e78}.map-node small{font-size:14px;color:#7994ae;margin-top:3px}.node-telecom{left:9%;top:10%}.node-beauty{right:9%;top:10%;animation-delay:-2s}.node-school{right:13%;bottom:14%;animation-delay:-4s}.node-expert{left:9%;bottom:14%;animation-delay:-6s}.map-caption{position:absolute;bottom:16px;left:0;width:100%;text-align:center;font-size:14px;color:#7b94ac;letter-spacing:.02em}.partner-card{transition:border-color .3s,transform .3s,box-shadow .3s;position:relative;overflow:hidden}.partner-card:hover{transform:translateY(-5px);border-color:#9bc4eb;box-shadow:0 12px 28px #163e7210}.partner-card-top svg{transition:transform .4s}.partner-card:hover .partner-card-top svg{transform:rotate(-7deg) scale(1.07)}.process-grid{position:relative}.process-grid>div{position:relative}.process-grid>div:before{content:'';position:absolute;top:-6px;left:0;width:10px;height:10px;border:2px solid #f1f6fc;background:#3b87cf;border-radius:50%;box-shadow:0 0 0 4px #e4effb}.process-grid>div.is-visible:before{animation:step-arrive .8s ease-out both}
.contact-visual{height:270px;position:relative;overflow:hidden;border:1px solid #e5eef8;border-radius:13px;background:radial-gradient(ellipse at 50% 38%,#e2efff,transparent 60%),linear-gradient(135deg,#f8fbff,#f2f7ff);margin:25px 0 10px;isolation:isolate}.contact-orbit{position:absolute;left:50%;top:41%;width:185px;height:185px;border:1px solid #bcd6ef;border-radius:50%;transform:translate(-50%,-50%)}.orbit-two{width:285px;height:285px;border-style:dashed;opacity:.5;animation:orbit-spin 70s linear infinite}.contact-center{position:absolute;left:50%;top:41%;transform:translate(-50%,-50%);width:82px;height:82px;border:1px solid #fff;border-radius:22px;background:linear-gradient(135deg,#388acf,#1b548e);box-shadow:0 13px 30px #205b8f29;display:grid;place-items:center;color:#fff}.contact-center svg{width:39px;height:39px;stroke-width:1.5}.contact-bubble{position:absolute;width:49px;height:49px;display:grid;place-items:center;background:#fff;border:1px solid #dce8f5;border-radius:14px;box-shadow:0 6px 15px #1b548e0c;color:#4383b8;animation:node-float 8s ease-in-out infinite}.contact-bubble svg{width:25px;height:25px;stroke-width:1.5}.bubble-one{left:17%;top:20%}.bubble-two{right:17%;top:20%;animation-delay:-3s}.bubble-three{right:23%;top:56%;animation-delay:-5s}.contact-visual-caption{position:absolute;left:20px;right:20px;bottom:23px;text-align:center}.contact-visual-caption small{display:block;font-size:14px;color:#6f94b6;letter-spacing:.15em;margin-bottom:5px}.contact-selected{font-size:17px;color:#285d8a;transition:color .3s}.inquiry-form{box-shadow:0 16px 55px #163e7209;border-color:#dce7f3;border-radius:13px}.form-heading{display:flex;align-items:center;gap:14px;margin-bottom:23px}.form-heading .eyebrow{font-size:14px;letter-spacing:.1em;margin-bottom:7px}.form-heading h3{margin:0;font-size:23px}.form-heading-icon{display:grid;place-items:center;width:49px;height:49px;border-radius:13px;background:#eaf3ff;color:#3985c3;flex-shrink:0}.form-heading-icon svg{width:25px;height:25px}.inquiry-progress{margin-bottom:26px}.progress-track{height:3px;background:#eaf0f7;border-radius:3px;overflow:hidden}.progress-track span{display:block;height:100%;width:0;background:linear-gradient(90deg,#327cbd,#6db3ea);transition:width .45s ease;border-radius:3px}.progress-caption{display:block;text-align:right;margin-top:8px;color:#7893ad;font-size:14px}.field:focus-within label{color:#2e79b7}.field input,.field select,.field textarea{transition:border-color .2s,box-shadow .2s,background .2s}.field input:focus,.field select:focus,.field textarea:focus{background:#fff;border-color:#8cb9e1;box-shadow:0 0 0 3px #eaf3fc;outline:none}.inquiry-result:not([hidden]){animation:result-arrive .5s ease-out}
[data-reveal].reveal-pending{opacity:0;transform:translateY(24px)}[data-reveal].is-visible{opacity:1;transform:none;transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}
@keyframes page-photo-arrive{from{transform:scale(1.07);opacity:.6}to{transform:scale(1);opacity:1}}@keyframes connection-flow{to{stroke-dashoffset:-280}}@keyframes node-float{0%,100%{translate:0 0}50%{translate:0 -7px}}@keyframes orbit-spin{to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes step-arrive{from{box-shadow:0 0 0 0 #73b4e86b}to{box-shadow:0 0 0 9px #73b4e800}}@keyframes result-arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:1100px){.story-layout{gap:45px}.story-copy h2{font-size:31px}.ecosystem-photo-copy{left:25px}.ecosystem-photo-copy h2{font-size:25px}.map-node{width:88px}.node-telecom,.node-expert{left:6%}.node-beauty{right:6%}.node-school{right:9%}}
@media(max-width:850px){.page-hero{min-height:320px}.page-hero h1{font-size:40px}.page-hero-media{left:15%}.page-hero-wash{background:linear-gradient(90deg,#143d70ee,#143d70b0 50%,#143d7055)}.page-hero .container>p:last-child{font-size:14px}.story-layout{grid-template-columns:1fr;gap:32px}.story-photo{height:400px}.story-copy h2{font-size:31px}.ecosystem-layout{grid-template-columns:1fr}.ecosystem-photo{height:340px}.ecosystem-map{min-height:390px}.map-lines{height:350px}.map-hub{top:47%}.map-node{width:105px}.node-telecom,.node-expert{left:13%}.node-beauty{right:13%}.node-school{right:16%}.detail-photo{min-height:370px;height:370px}.service-detail{scroll-margin-top:65px}.contact-visual{max-width:540px}.service-subnav a:after{bottom:-20px}.service-card .card-visual{height:235px}}
@media(max-width:560px){.page-hero{min-height:290px;padding:42px 0}.page-hero h1{font-size:36px;margin:12px 0 17px}.page-breadcrumb{margin-bottom:24px;font-size:14px}.page-hero-media{left:0}.page-hero-wash{background:linear-gradient(90deg,#143d70eb,#143d70ad 68%,#143d7080)}.page-hero .container>p:last-child{font-size:14px;max-width:290px}.service-card .card-visual{height:260px}.story-photo{height:310px}.story-photo figcaption{left:21px;bottom:37px;font-size:14px}.story-copy h2{font-size:27px}.story-copy>p:not(.eyebrow){font-size:14px}.story-values{gap:7px}.story-values span{padding:6px 11px;font-size:14px}.detail-photo{height:340px;min-height:340px}.detail-photo-caption{left:25px}.detail-photo-caption strong{font-size:33px}.detail-photo-tag{top:18px;left:18px}.service-subnav{gap:15px;padding:16px 8px}.service-subnav a{font-size:14px;padding:5px 8px}.service-subnav a:after{bottom:-17px;left:8px;right:8px}.ecosystem-photo{height:285px}.ecosystem-photo-copy{bottom:38px;left:22px}.ecosystem-photo-copy h2{font-size:25px}.ecosystem-map{min-height:360px}.map-lines{height:325px}.map-hub{width:88px;height:88px}.map-hub b{font-size:34px}.map-hub small{font-size:14px}.map-node{width:83px;height:81px}.map-node strong{font-size:14px}.map-node svg{width:23px;height:23px}.node-telecom,.node-expert{left:6%}.node-beauty{right:6%}.node-school{right:9%}.contact-visual{height:250px}.contact-bubble{width:44px;height:44px}.bubble-one{left:11%}.bubble-two{right:11%}.bubble-three{right:18%}.form-heading h3{font-size:20px}.form-heading{gap:11px}.photo-note{font-size:14px;right:12px}.principle-card:hover,.partner-card:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.page-hero-media img,.map-lines,.map-node,.orbit-two,.contact-bubble,.process-grid>div.is-visible:before,.inquiry-result:not([hidden]){animation:none!important}[data-reveal].reveal-pending{opacity:1;transform:none}[data-reveal].is-visible,.visual-frame img,.service-card-photo{transition:none!important}}
