:root{--navy:#061524;--navy2:#081a2e;--surface:#0b2038;--surface2:#102943;--orange:#ff6b00;--blue:#198cff;--white:#f7f9fc;--muted:#b8c4d2;--line:rgba(149,190,231,.18);--shell:min(1580px,calc(100vw - 64px));--radius:18px}*{box-sizing:border-box}html,body{width:100%;max-width:none!important;margin:0!important;padding:0!important;overflow-x:hidden}body.sato-site{background:var(--navy);color:var(--white);font-family:"Geist",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}body.sato-site>*,#page,.site,.site-content,.content-area,.site-main,.wp-site-blocks{width:100%!important;max-width:none!important;margin:0!important;padding-left:0!important;padding-right:0!important}body.admin-bar .sato-header{top:32px}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.sato-shell{width:var(--shell);max-width:none;margin-inline:auto}.sato-header{position:absolute;z-index:30;left:0;right:0;top:0;padding:24px 0;background:linear-gradient(180deg,rgba(6,21,36,.96),rgba(6,21,36,.35),transparent)}.sato-header-inner,.sato-head-actions,.sato-lang,.sato-actions,.contact-row,.footer-inner{display:flex;align-items:center}.sato-header-inner{justify-content:space-between}.sato-logo{display:block;line-height:0}.sato-logo img{width:340px;max-width:38vw;height:auto;display:block;filter:none!important;opacity:1!important;image-rendering:auto}.sato-head-actions{gap:28px}.sato-lang{gap:9px;font-weight:750}.sato-lang a{color:#c4ced9;cursor:pointer}.sato-lang a.active{color:var(--orange)}.sato-outline,.sato-primary{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:54px;padding:0 24px;border-radius:8px;border:1px solid var(--orange);font-weight:720;cursor:pointer;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}.sato-outline{background:transparent;color:var(--white)}.sato-primary{background:var(--orange);color:#fff;border-color:var(--orange)}.sato-outline:hover,.sato-primary:hover{transform:translateY(-2px);box-shadow:0 14px 35px rgba(255,107,0,.18)}.sato-outline.small{min-height:44px;padding:0 19px;font-size:14px}.sato-hero{position:relative;width:100vw;min-height:100svh;display:flex;align-items:center;overflow:hidden;background:radial-gradient(circle at 65% 45%,rgba(16,80,140,.2),transparent 32%),linear-gradient(110deg,#061524 15%,#07182a 80%)}.sato-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#061524 0%,rgba(6,21,36,.96) 26%,rgba(6,21,36,.52) 52%,rgba(6,21,36,.04) 82%);pointer-events:none}.sato-hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(420px,47%) 1fr;align-items:center;min-height:100svh;padding:150px 0 92px}.sato-hero-visual{position:absolute;z-index:-1;right:-3vw;top:7%;width:78%;height:88%;background-image:var(--hero);background-position:center right;background-size:cover;background-repeat:no-repeat;mix-blend-mode:screen;opacity:.98;mask-image:linear-gradient(90deg,transparent 0%,#000 22%,#000 100%);animation:heroIn 1.5s cubic-bezier(.2,.8,.2,1) both}.sato-hero-visual:after{content:"";position:absolute;inset:12% 6% 8% 18%;border:1px solid rgba(25,140,255,.18);border-radius:50%;animation:pulseRing 4s ease-in-out infinite}.sato-kicker,.section-head>span,.mini-label{color:var(--orange);font-size:13px;font-weight:800;letter-spacing:.06em}.sato-kicker:before{content:"";display:inline-block;width:28px;height:2px;background:var(--orange);vertical-align:middle;margin-right:13px}.sato-hero h1{font-size:clamp(50px,5.25vw,84px);line-height:.99;letter-spacing:-.052em;margin:26px 0 24px;max-width:790px}.sato-hero-copy>p{font-size:clamp(17px,1.25vw,21px);line-height:1.7;color:var(--muted);max-width:650px}.hero-stagger>*{opacity:0;transform:translateY(20px);animation:staggerIn .75s ease forwards}.hero-stagger>*:nth-child(1){animation-delay:.35s}.hero-stagger>*:nth-child(2){animation-delay:.5s}.hero-stagger>*:nth-child(3){animation-delay:.65s}.hero-stagger>*:nth-child(4){animation-delay:.8s}.sato-actions{gap:16px;margin-top:34px}.mouse-icon{width:18px;height:27px;border:1.5px solid currentColor;border-radius:12px;position:relative}.mouse-icon i{position:absolute;top:5px;left:50%;width:2px;height:5px;background:currentColor;animation:wheel 1.5s infinite}.scroll-cue{position:absolute;z-index:5;bottom:22px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:6px;color:#98a8b8;font-size:11px}.scroll-cue span{height:34px;width:1px;background:linear-gradient(var(--orange),transparent);animation:scrollPulse 1.7s infinite}.sato-section{padding:108px 0}.services-section{background:linear-gradient(180deg,#061524,#07192b)}.section-head{text-align:center;margin-bottom:45px}.section-head h2{font-size:clamp(32px,3vw,48px);letter-spacing:-.035em;margin:10px 0}.section-head p{max-width:760px;margin:12px auto;color:var(--muted);line-height:1.7}.services-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.service-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:linear-gradient(160deg,rgba(16,41,67,.75),rgba(5,18,31,.45));transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}.service-card:hover,.service-card.active{transform:translateY(-6px);border-color:rgba(25,140,255,.62);box-shadow:0 22px 55px rgba(0,90,170,.13)}.service-trigger{width:100%;height:100%;min-height:330px;text-align:left;padding:30px 24px;background:none;color:inherit;border:0;cursor:pointer;display:flex;flex-direction:column}.service-icon svg,.metric-icon svg,.service-detail-icon svg{width:56px;height:56px;stroke:var(--blue);fill:none;stroke-width:1.45}.service-trigger h3{font-size:20px;margin:23px 0 13px}.service-trigger p{color:var(--muted);line-height:1.58;margin:0}.service-arrow{margin-top:auto;color:var(--orange);font-size:26px;transition:.3s}.service-card.active .service-arrow{transform:rotate(90deg)}.service-details-wrap{margin-top:22px}.service-detail-panel{display:grid;grid-template-columns:auto 1.25fr 1fr auto;gap:30px;align-items:center;max-height:0;opacity:0;overflow:hidden;padding:0 34px;border:1px solid transparent;border-radius:var(--radius);background:linear-gradient(130deg,rgba(13,43,72,.94),rgba(5,19,33,.96));transform:translateY(-12px) scale(.99);transition:max-height .6s cubic-bezier(.2,.8,.2,1),opacity .35s ease,transform .45s ease,padding .45s ease,border-color .45s ease}.service-detail-panel.open{max-height:520px;opacity:1;padding:34px;border-color:rgba(25,140,255,.42);transform:none;box-shadow:0 28px 90px rgba(0,74,146,.16);position:relative}.service-detail-glow{position:absolute;inset:auto -10% -70% 35%;height:220px;background:radial-gradient(circle,rgba(25,140,255,.22),transparent 70%);pointer-events:none}.service-detail-panel h3{font-size:30px;margin:6px 0 8px}.service-detail-panel p{color:var(--muted);line-height:1.65;margin:0}.service-detail-panel ul{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px;margin:0;padding:0;list-style:none;color:#dbe6f0}.service-detail-panel li:before{content:"✓";color:var(--orange);margin-right:9px}.metrics-section{padding:0 0 42px;background:#07192b}.metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:rgba(9,29,50,.72)}.metric{min-height:160px;padding:28px;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:20px;align-items:center;border-right:1px solid var(--line)}.metric:last-child{border:0}.metric-icon{grid-row:1/3;color:#98a3ff}.metric-icon svg{stroke:#98a3ff}.metric strong{font-size:38px;color:var(--orange);line-height:1}.metric strong:not(.word-metric):after{content:"+"}.metric .word-metric{font-size:29px}.metric span{color:#d9e0e8}.about-section{background:#07192b}.about-grid{display:grid;grid-template-columns:40% 60%;gap:70px;align-items:center}.about-copy h2{font-size:clamp(38px,4vw,58px);letter-spacing:-.04em;line-height:1.05;margin:17px 0 25px}.about-copy p{font-size:18px;color:var(--muted);line-height:1.75;margin-bottom:30px}.about-image img{display:block;width:100%;aspect-ratio:16/8.2;object-fit:cover;border-radius:var(--radius);border:1px solid var(--line)}.expertise-section{background:linear-gradient(180deg,#07192b,#061524)}.expertise-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.expertise-item{padding:34px 28px;border-right:1px solid var(--line)}.expertise-item:last-child{border-right:0}.expertise-item>span{color:var(--orange);font-size:12px;font-weight:800}.expertise-item h3{font-size:24px;margin:20px 0 12px}.expertise-item p{color:var(--muted);line-height:1.65;margin:0}.contact-section{padding:76px 0;background:linear-gradient(180deg,#061524,#07192b);border-top:1px solid var(--line)}.contact-row{justify-content:space-between;gap:22px;margin-top:38px}.contact-row>a,.contact-row>span{display:flex;gap:12px;align-items:center;color:#dce4ec}.partners-section{padding:58px 0 72px;background:#061524;border-top:1px solid var(--line)}.partner-badges{max-width:900px;margin:auto;border-radius:12px;overflow:hidden}.partner-badges img{display:block;width:100%;height:auto}.sato-footer{border-top:1px solid var(--line);padding:30px 0;background:#04111e}.footer-inner{justify-content:space-between;gap:30px}.footer-inner>img{width:240px}.footer-inner p{color:#8fa1b3}.socials{display:flex;gap:12px}.socials a{width:42px;height:42px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center}.contact-modal{position:fixed;z-index:100;inset:0;pointer-events:none;opacity:0;transition:.3s}.contact-modal.open{pointer-events:auto;opacity:1}.modal-backdrop{position:absolute;inset:0;background:rgba(1,8,15,.72);backdrop-filter:blur(10px)}.modal-panel{position:absolute;right:0;top:0;height:100%;width:min(560px,100%);padding:60px 50px;background:#07192b;border-left:1px solid var(--line);transform:translateX(100%);transition:.45s cubic-bezier(.2,.8,.2,1);overflow:auto}.contact-modal.open .modal-panel{transform:none}.modal-close{position:absolute;right:25px;top:20px;background:none;color:#fff;border:0;font-size:34px;cursor:pointer}.modal-panel h2{font-size:42px;margin:17px 0 28px}.modal-panel form{display:grid;gap:16px}.modal-panel label{display:grid;gap:7px;font-weight:600}.modal-panel input,.modal-panel textarea{width:100%;border-radius:10px;border:1px solid var(--line);background:#0c233a;color:#fff;padding:14px}.form-status{min-height:22px;color:#a8d4ff}.reveal{opacity:0;transform:translateY(24px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}.sato-loader{position:fixed;z-index:1000;inset:0;background:#04111e;display:grid;place-content:center;transition:.65s ease}.sato-loader img{width:340px}.sato-loader span{display:block;width:0;height:2px;background:linear-gradient(90deg,var(--blue),var(--orange));margin-top:25px;animation:loadbar 1.1s ease forwards}.sato-loader.done{opacity:0;visibility:hidden}.sato-basic{min-height:100vh;padding:120px 0}.sato-basic h1{font-size:50px}@keyframes wheel{0%{transform:translate(-50%,0);opacity:1}100%{transform:translate(-50%,9px);opacity:0}}@keyframes scrollPulse{50%{opacity:.35}}@keyframes loadbar{to{width:340px}}@keyframes heroIn{from{opacity:0;transform:scale(1.05) translateX(35px)}to{opacity:.98;transform:none}}@keyframes staggerIn{to{opacity:1;transform:none}}@keyframes pulseRing{0%,100%{opacity:.2;transform:scale(.98)}50%{opacity:.55;transform:scale(1.025)}}
@media(max-width:1200px){:root{--shell:min(100vw - 40px,1100px)}.services-grid{grid-template-columns:repeat(2,1fr)}.service-detail-panel{grid-template-columns:auto 1fr}.service-detail-panel ul{grid-column:2}.service-detail-panel .sato-outline{grid-column:2;justify-self:start}.about-grid{grid-template-columns:1fr}.expertise-grid{grid-template-columns:repeat(2,1fr)}.expertise-item:nth-child(2){border-right:0}.metrics-grid{grid-template-columns:repeat(2,1fr)}.metric:nth-child(2){border-right:0}.contact-row{flex-wrap:wrap}.sato-logo img{width:290px}}
@media(max-width:782px){body.admin-bar .sato-header{top:46px}.sato-header{padding:16px 0}.sato-head-actions .small{display:none}.sato-logo img{width:230px;max-width:62vw}.sato-hero-grid{display:block;padding-top:135px}.sato-hero-copy{max-width:86%}.sato-hero-visual{right:-35%;top:7%;width:125%;height:96%;opacity:.66}.sato-hero:after{background:linear-gradient(90deg,#061524 0%,rgba(6,21,36,.9) 68%,rgba(6,21,36,.12))}.services-grid{grid-template-columns:1fr}.service-trigger{min-height:auto}.service-detail-panel,.service-detail-panel.open{grid-template-columns:1fr;gap:18px}.service-detail-panel ul,.service-detail-panel .sato-outline{grid-column:auto}.metrics-grid{grid-template-columns:1fr}.metric{border-right:0;border-bottom:1px solid var(--line)}.metric:last-child{border:0}.expertise-grid{grid-template-columns:1fr}.expertise-item{border-right:0;border-bottom:1px solid var(--line)}.expertise-item:last-child{border-bottom:0}.about-grid{gap:35px}.contact-row{align-items:stretch}.contact-row>*{width:100%}.footer-inner{flex-direction:column;align-items:flex-start}.modal-panel{padding:55px 24px}.partner-badges{overflow:auto}.partner-badges img{min-width:720px}}
@media(max-width:560px){:root{--shell:calc(100vw - 30px)}.sato-hero-copy{max-width:100%}.sato-hero h1{font-size:44px}.sato-actions{flex-direction:column;align-items:stretch}.sato-actions>*{width:100%}.sato-section{padding:78px 0}.section-head{text-align:left}.section-head h2{font-size:34px}.about-copy h2{font-size:40px}.sato-loader img{width:250px}@keyframes loadbar{to{width:250px}}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}.sato-loader{display:none}}

/* v1.2.0 — full-bleed, responsive services, refined process */
html,body,body.sato-site,#page,.site,.site-content,.content-area,.site-main,.wp-site-blocks,main{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;background:#061524!important}
.sato-header,main>section,.sato-footer{position:relative;width:100vw!important;max-width:100vw!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important}
.sato-shell{width:min(1600px,calc(100vw - 72px));max-width:none!important;margin-inline:auto!important}
.sato-logo img{width:300px;max-width:34vw;height:auto;object-fit:contain;image-rendering:auto}
.sato-loader img{width:300px;height:auto}
.services-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:stretch}
.service-card,.service-trigger{height:100%}
.service-detail-panel.open.just-opened{animation:panelFlash .7s cubic-bezier(.2,.8,.2,1)}
@keyframes panelFlash{0%{box-shadow:0 0 0 rgba(25,140,255,0);transform:translateY(10px) scale(.985)}55%{box-shadow:0 30px 100px rgba(25,140,255,.26);transform:none}100%{box-shadow:0 28px 90px rgba(0,74,146,.16)}}
.expertise-section{overflow:hidden;background:radial-gradient(circle at 50% 20%,rgba(25,140,255,.08),transparent 35%),linear-gradient(180deg,#07192b,#061524)}
.process-flow{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin-top:58px;border:1px solid var(--line);border-radius:22px;background:rgba(7,25,43,.72);overflow:hidden}
.process-flow:before{content:"";position:absolute;left:8%;right:8%;top:72px;height:1px;background:linear-gradient(90deg,transparent,var(--blue),var(--orange),transparent);opacity:.55}
.process-step{position:relative;z-index:1;min-height:330px;padding:30px 26px;border-right:1px solid var(--line);transition:background .35s ease,transform .35s ease}
.process-step:last-child{border-right:0}.process-step:hover{background:linear-gradient(180deg,rgba(25,140,255,.11),rgba(255,107,0,.035));transform:translateY(-4px)}
.process-number{color:var(--orange);font-size:12px;font-weight:800;letter-spacing:.12em;margin-bottom:20px}.process-icon{width:62px;height:62px;border-radius:50%;display:grid;place-items:center;background:#07192b;border:1px solid rgba(25,140,255,.45);box-shadow:0 0 0 8px #07192b;margin-bottom:34px}
.process-icon svg{width:30px;height:30px;stroke:var(--blue);fill:none;stroke-width:1.5}.process-step h3{font-size:23px;line-height:1.2;margin:0 0 14px}.process-step p{color:var(--muted);line-height:1.65;margin:0}
@media(max-width:1380px){.sato-shell{width:min(1240px,calc(100vw - 48px))}.services-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.process-flow{grid-template-columns:repeat(3,1fr)}.process-flow:before{display:none}.process-step:nth-child(3){border-right:0}.process-step:nth-child(-n+3){border-bottom:1px solid var(--line)}}
@media(max-width:900px){.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.process-flow{grid-template-columns:repeat(2,1fr)}.process-step{border-right:1px solid var(--line)!important;border-bottom:1px solid var(--line)}.process-step:nth-child(even){border-right:0!important}.process-step:last-child{border-bottom:0}.sato-logo img{width:250px;max-width:55vw}}
@media(max-width:620px){.sato-shell{width:calc(100vw - 30px)}.services-grid{grid-template-columns:1fr}.process-flow{grid-template-columns:1fr}.process-step{min-height:auto;border-right:0!important}.process-step:last-child{border-bottom:0}.sato-logo img{width:210px;max-width:64vw}.sato-header-inner{gap:12px}.sato-head-actions{gap:12px}.sato-lang{font-size:14px}}

/* v1.3.0 — process responsiveness, modern scroll cue and richer motion */
.section-head h2,
.process-step h3,
.service-trigger h3,
.about-copy h2{
  overflow-wrap:anywhere;
  word-break:normal;
}

.expertise-section .sato-shell{
  min-width:0;
  overflow:hidden;
}

.expertise-section .section-head{
  max-width:1180px;
  margin-inline:auto;
  padding-inline:12px;
}

.expertise-section .section-head h2{
  font-size:clamp(2rem,4.1vw,4.6rem);
  line-height:1.03;
  text-wrap:balance;
  max-width:1100px;
  margin-inline:auto;
}

.process-flow{
  width:100%;
  max-width:100%;
  min-width:0;
  grid-template-columns:repeat(5,minmax(0,1fr));
}

.process-step{
  min-width:0;
  overflow:hidden;
  transform:none;
}

.process-step h3{
  font-size:clamp(1.05rem,1.35vw,1.45rem);
}

.process-step p{
  font-size:clamp(.92rem,1vw,1.05rem);
}

.process-icon{
  position:relative;
  isolation:isolate;
}

.process-icon:before{
  content:"";
  position:absolute;
  inset:-8px;
  z-index:-1;
  border-radius:inherit;
  border:1px solid rgba(25,140,255,.25);
  opacity:0;
  transform:scale(.7);
  transition:opacity .35s ease,transform .45s cubic-bezier(.2,.8,.2,1);
}

.process-step:hover .process-icon:before{
  opacity:1;
  transform:scale(1);
}

.process-step.visible .process-icon{
  animation:processIconIn .75s cubic-bezier(.2,.8,.2,1) both;
}

.process-step.visible:nth-child(2) .process-icon{animation-delay:.08s}
.process-step.visible:nth-child(3) .process-icon{animation-delay:.16s}
.process-step.visible:nth-child(4) .process-icon{animation-delay:.24s}
.process-step.visible:nth-child(5) .process-icon{animation-delay:.32s}

.process-flow:after{
  content:"";
  position:absolute;
  left:8%;
  top:72px;
  width:0;
  height:1px;
  background:linear-gradient(90deg,var(--blue),var(--orange));
  box-shadow:0 0 18px rgba(25,140,255,.45);
  animation:processLine 1.8s .35s cubic-bezier(.2,.8,.2,1) forwards;
}

.scroll-cue{
  letter-spacing:.16em;
  font-style:normal;
  text-transform:uppercase;
  font-weight:700;
}

.scroll-cue em{font-style:normal}
.scroll-cue:before{
  content:"";
  width:20px;
  height:30px;
  border:1px solid rgba(255,255,255,.55);
  border-radius:12px;
  position:absolute;
  top:-36px;
}
.scroll-cue:after{
  content:"";
  width:2px;
  height:5px;
  border-radius:2px;
  background:var(--orange);
  position:absolute;
  top:-29px;
  animation:wheel 1.5s infinite;
}
.scroll-cue span{display:none}

.service-card{
  position:relative;
}
.service-card:before{
  content:"";
  position:absolute;
  inset:-45% auto -45% -70%;
  width:45%;
  transform:skewX(-18deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent);
  transition:left .65s cubic-bezier(.2,.8,.2,1);
  pointer-events:none;
}
.service-card:hover:before{left:135%}
.service-card.visible{animation:cardLiftIn .7s cubic-bezier(.2,.8,.2,1) both}
.service-card.visible:nth-child(2){animation-delay:.08s}
.service-card.visible:nth-child(3){animation-delay:.16s}
.service-card.visible:nth-child(4){animation-delay:.24s}
.service-card.visible:nth-child(5){animation-delay:.32s}

.service-detail-panel.open .service-detail-icon{
  animation:detailIconPop .55s cubic-bezier(.2,.8,.2,1) both;
}
.service-detail-panel.open h3,
.service-detail-panel.open p,
.service-detail-panel.open li,
.service-detail-panel.open .sato-outline{
  animation:detailContentIn .48s ease both;
}
.service-detail-panel.open p{animation-delay:.06s}
.service-detail-panel.open li:nth-child(1){animation-delay:.10s}
.service-detail-panel.open li:nth-child(2){animation-delay:.14s}
.service-detail-panel.open li:nth-child(3){animation-delay:.18s}
.service-detail-panel.open li:nth-child(4){animation-delay:.22s}
.service-detail-panel.open .sato-outline{animation-delay:.26s}

@keyframes processLine{to{width:84%}}
@keyframes processIconIn{from{opacity:0;transform:scale(.72) rotate(-8deg)}to{opacity:1;transform:none}}
@keyframes cardLiftIn{from{opacity:0;transform:translateY(30px) scale(.985)}to{opacity:1;transform:none}}
@keyframes detailIconPop{from{opacity:0;transform:scale(.7) rotate(-8deg)}to{opacity:1;transform:none}}
@keyframes detailContentIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

@media (max-width:1380px){
  .process-flow{grid-template-columns:repeat(3,minmax(0,1fr))}
  .process-flow:before,.process-flow:after{display:none}
  .process-step{border-right:1px solid var(--line)!important;border-bottom:1px solid var(--line)}
  .process-step:nth-child(3n){border-right:0!important}
  .process-step:nth-last-child(-n+2){border-bottom:0}
}

@media (max-width:980px){
  .process-flow{grid-template-columns:repeat(2,minmax(0,1fr))}
  .process-step:nth-child(3n){border-right:1px solid var(--line)!important}
  .process-step:nth-child(even){border-right:0!important}
  .process-step:nth-last-child(-n+2){border-bottom:1px solid var(--line)}
  .process-step:last-child{border-bottom:0}
  .expertise-section .section-head h2{font-size:clamp(2rem,7vw,3.7rem)}
}

@media (max-width:620px){
  .process-flow{grid-template-columns:1fr}
  .process-step{border-right:0!important;border-bottom:1px solid var(--line)!important;min-height:auto;padding:26px 22px}
  .process-step:last-child{border-bottom:0!important}
  .process-icon{margin-bottom:22px}
  .expertise-section .section-head{padding-inline:0}
  .expertise-section .section-head h2{font-size:clamp(1.9rem,10vw,3rem)}
  .scroll-cue{display:none}
}
.sato-ambient-particles{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.sato-ambient-particles i{position:absolute;left:var(--x);top:var(--y);width:3px;height:3px;border-radius:50%;background:var(--blue);box-shadow:0 0 12px currentColor;opacity:.25;animation:ambientFloat var(--d) var(--delay) ease-in-out infinite alternate}
.sato-ambient-particles i:nth-child(3n){background:var(--orange);width:4px;height:4px}
@keyframes ambientFloat{from{transform:translate3d(0,8px,0);opacity:.15}to{transform:translate3d(0,-18px,0);opacity:.7}}

/* v8 vector logo rendering */
.sato-logo img,.footer-inner>img,.sato-loader img{image-rendering:auto!important;shape-rendering:geometricPrecision;transform:translateZ(0);backface-visibility:hidden}
.sato-logo img{width:320px;max-width:38vw}
@media(max-width:1200px){.sato-logo img{width:285px}}
@media(max-width:782px){.sato-logo img{width:225px;max-width:64vw}}
@media(max-width:620px){.sato-logo img{width:205px}}


/* v1.4.0 — Interactive Demo v4 motion language, ported into the production theme */
.sato-progress{position:fixed;z-index:1200;left:0;top:0;width:0;height:2px;background:linear-gradient(90deg,var(--orange),var(--blue));box-shadow:0 0 16px rgba(25,140,255,.7);transform-origin:left center;pointer-events:none}
.sato-motion-canvas{position:absolute;inset:0;z-index:0;width:100%;height:100%;opacity:.46;pointer-events:none;mix-blend-mode:screen}
.sato-hero-glow{position:absolute;z-index:1;right:-10%;top:4%;width:min(52vw,760px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(25,140,255,.20),rgba(255,107,0,.06) 35%,transparent 70%);filter:blur(8px);animation:satoHeroGlow 5.5s ease-in-out infinite;pointer-events:none}
.sato-orbit{position:absolute;z-index:1;right:7%;top:20%;width:min(33vw,470px);aspect-ratio:1;border:1px solid rgba(25,140,255,.20);border-radius:50%;animation:satoOrbitSpin 28s linear infinite;pointer-events:none}
.sato-orbit:before{content:"";position:absolute;inset:11%;border:1px solid rgba(255,107,0,.10);border-radius:50%;animation:satoOrbitSpin 18s linear reverse infinite}
.sato-orbit span{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--blue);box-shadow:0 0 18px currentColor}
.sato-orbit span:nth-child(1){left:14%;top:18%}.sato-orbit span:nth-child(2){right:4%;top:48%;background:var(--orange)}.sato-orbit span:nth-child(3){left:43%;bottom:-4px}
.sato-hero-grid{z-index:3}
.sato-hero-visual{will-change:transform;transform:translate3d(var(--hero-x,0),var(--hero-y,0),0) scale(var(--hero-scale,1));transition:transform .28s ease-out}
.sato-hero-copy{will-change:transform;transform:translate3d(var(--copy-x,0),var(--copy-y,0),0);transition:transform .32s ease-out}
.service-card.active{animation:satoServiceActive .7s cubic-bezier(.2,.8,.2,1)}
.service-card.active .service-icon{animation:satoServiceIconPop .55s cubic-bezier(.2,.8,.2,1)}
.service-card.active .service-arrow{filter:drop-shadow(0 0 10px rgba(255,107,0,.7))}
.service-detail-panel.open{isolation:isolate}
.service-detail-panel.open:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(110deg,transparent 0%,rgba(255,255,255,.06) 42%,transparent 58%);transform:translateX(-120%);animation:satoPanelSweep 1.1s .08s cubic-bezier(.2,.8,.2,1) both;pointer-events:none}
.service-detail-panel.open .service-detail-glow{animation:satoDetailGlow 2.8s ease-in-out infinite alternate}
.sato-loader{background:radial-gradient(circle at 50% 45%,rgba(25,140,255,.12),transparent 38%),#04111e}
.sato-loader img{animation:satoLogoIntro .85s cubic-bezier(.2,.8,.2,1) both;filter:drop-shadow(0 0 26px rgba(25,140,255,.16))}
.sato-loader span{box-shadow:0 0 22px rgba(25,140,255,.55)}
@keyframes satoHeroGlow{0%,100%{opacity:.6;transform:scale(.96)}50%{opacity:1;transform:scale(1.045)}}
@keyframes satoOrbitSpin{to{transform:rotate(360deg)}}
@keyframes satoServiceActive{0%{transform:translateY(0);box-shadow:0 0 0 rgba(25,140,255,0)}45%{transform:translateY(-10px);box-shadow:0 28px 72px rgba(25,140,255,.20)}100%{transform:translateY(-6px)}}
@keyframes satoServiceIconPop{0%{transform:scale(.72) rotate(-8deg);opacity:.4}70%{transform:scale(1.12) rotate(2deg)}100%{transform:none;opacity:1}}
@keyframes satoPanelSweep{to{transform:translateX(120%)}}
@keyframes satoDetailGlow{from{opacity:.35;transform:scale(.96)}to{opacity:.95;transform:scale(1.06)}}
@keyframes satoLogoIntro{from{opacity:0;transform:translateY(14px) scale(.96);filter:blur(7px)}to{opacity:1;transform:none;filter:blur(0) drop-shadow(0 0 26px rgba(25,140,255,.16))}}
@media(max-width:900px){.sato-orbit{right:-14%;top:22%;width:56vw;opacity:.55}.sato-motion-canvas{opacity:.32}.sato-hero-glow{right:-30%;width:90vw}}
@media(max-width:620px){.sato-orbit{display:none}.sato-motion-canvas{opacity:.22}.sato-hero-glow{right:-65%;top:12%;width:130vw}}
@media(prefers-reduced-motion:reduce){.sato-motion-canvas,.sato-orbit,.sato-hero-glow{display:none}.sato-progress{display:none}}

/* v10: seamless full-bleed hero and tighter first screen */
.sato-header{
  background:linear-gradient(180deg,rgba(6,21,36,.98) 0%,rgba(6,21,36,.78) 58%,rgba(6,21,36,0) 100%);
}
.sato-hero{
  min-height:100svh;
  background:#061524;
  isolation:isolate;
}
.sato-hero-visual{
  position:absolute;
  inset:0;
  z-index:0;
  width:100%;
  height:100%;
  background-image:var(--hero);
  background-position:center right;
  background-size:cover;
  background-repeat:no-repeat;
  mix-blend-mode:screen;
  opacity:.96;
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.18) 15%,#000 40%,#000 100%);
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.18) 15%,#000 40%,#000 100%);
  animation:heroIn 1.5s cubic-bezier(.2,.8,.2,1) both;
}
.sato-hero:after{
  z-index:1;
  background:linear-gradient(90deg,#061524 0%,rgba(6,21,36,.98) 24%,rgba(6,21,36,.64) 48%,rgba(6,21,36,.08) 76%,rgba(6,21,36,0) 100%);
}
.sato-hero-grid{
  position:relative;
  z-index:3;
  min-height:100svh;
  padding:118px 0 58px;
}
.sato-hero-copy{max-width:760px}
.sato-motion-canvas,.sato-hero-glow,.sato-orbit{z-index:2}
.sato-header,.sato-hero,.services-section,.metrics-section,.about-section,.expertise-section,.contact-section,.partners-section,.sato-footer{
  background-color:#061524;
}
@media(max-width:1200px){
  .sato-hero-grid{padding-top:112px;padding-bottom:48px}
  .sato-hero-visual{background-position:58% center;background-size:cover}
}
@media(max-width:782px){
  .sato-hero-grid{padding-top:118px;padding-bottom:52px}
  .sato-hero-visual{inset:0;background-position:62% center;opacity:.72;mask-image:none;-webkit-mask-image:none}
}
@media(max-width:560px){
  .sato-hero-grid{padding-top:108px}
  .sato-hero-visual{background-position:66% center;opacity:.58}
}


/* v11 — guaranteed cache-busted, true viewport hero */
html, body, body.sato-site {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow-x: clip !important;
  background: #061524 !important;
}
body.sato-site main,
body.sato-site .sato-header,
body.sato-site .sato-hero,
body.sato-site main > section,
body.sato-site .sato-footer {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  left: auto !important;
  right: auto !important;
}
.sato-header {
  inset-inline: 0 !important;
  width: 100% !important;
}
.sato-hero {
  min-height: 100svh !important;
  align-items: stretch !important;
  background: #061524 !important;
}
.sato-hero-grid {
  width: min(1580px, calc(100% - 64px)) !important;
  min-height: 100svh !important;
  align-items: start !important;
  padding-top: 168px !important;
  padding-bottom: 72px !important;
}
.sato-hero-visual {
  left: 50% !important;
  right: auto !important;
  top: 0 !important;
  bottom: auto !important;
  width: 100vw !important;
  max-width: none !important;
  height: 100% !important;
  transform: translate3d(calc(-50% + var(--hero-x, 0px)), var(--hero-y, 0px), 0) scale(var(--hero-scale, 1)) !important;
  background-position: center center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  opacity: .96 !important;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.18) 14%, #000 40%, #000 100%) !important;
  mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.18) 14%, #000 40%, #000 100%) !important;
}
.sato-hero:after {
  inset: 0 !important;
  width: 100% !important;
  background: linear-gradient(90deg,#061524 0%,rgba(6,21,36,.98) 25%,rgba(6,21,36,.58) 50%,rgba(6,21,36,.06) 78%,transparent 100%) !important;
}
@media (max-width: 1200px) {
  .sato-hero-grid {width: min(1120px, calc(100% - 48px)) !important; padding-top: 144px !important;}
}
@media (max-width: 782px) {
  .sato-hero-grid {width: calc(100% - 32px) !important; padding-top: 126px !important;}
  .sato-hero-visual {
    background-position: 62% center !important;
    opacity: .72 !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
  }
}
@media (max-width: 560px) {
  .sato-hero-grid {width: calc(100% - 24px) !important; padding-top: 112px !important;}
  .sato-hero-visual {background-position: 66% center !important; opacity: .58 !important;}
}

/* v12 — header overlays the hero; no separate empty header band */
body.sato-site .sato-header {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 50 !important;
  background: linear-gradient(180deg, rgba(4,17,30,.96) 0%, rgba(4,17,30,.72) 55%, rgba(4,17,30,0) 100%) !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 20px 0 48px !important;
}
body.admin-bar.sato-site .sato-header {
  top: 32px !important;
}
body.sato-site main {
  position: relative !important;
  z-index: 1 !important;
}
body.sato-site .sato-hero {
  margin-top: 0 !important;
  min-height: 100svh !important;
  isolation: isolate !important;
}
body.sato-site .sato-hero-grid {
  min-height: 100svh !important;
  padding-top: clamp(160px, 18vh, 220px) !important;
  padding-bottom: 72px !important;
}
body.sato-site .sato-hero-visual {
  inset: 0 auto auto 50% !important;
  width: 100vw !important;
  height: 100svh !important;
  min-height: 720px !important;
  background-position: center center !important;
}
body.sato-site .sato-hero:after {
  inset: 0 !important;
}
body.sato-site .sato-header-inner {
  width: min(1580px, calc(100% - 64px)) !important;
}
@media (max-width: 782px) {
  body.admin-bar.sato-site .sato-header { top: 46px !important; }
  body.sato-site .sato-header { padding: 14px 0 32px !important; }
  body.sato-site .sato-header-inner { width: calc(100% - 32px) !important; }
  body.sato-site .sato-hero-grid { padding-top: 138px !important; }
  body.sato-site .sato-hero-visual { min-height: 100svh !important; }
}
@media (max-width: 560px) {
  body.sato-site .sato-header-inner { width: calc(100% - 24px) !important; }
  body.sato-site .sato-hero-grid { padding-top: 124px !important; }
}


/* v13 — compact overlay header, clean first viewport, persistent scroll cue */
body.sato-site .sato-header{
  padding:12px 0!important;
  min-height:72px;
  transition:padding .28s ease,background .28s ease,backdrop-filter .28s ease,border-color .28s ease;
}
body.sato-site .sato-header.scrolled{
  position:fixed;
  background:rgba(4,17,30,.78)!important;
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  border-bottom:1px solid rgba(149,190,231,.12);
  padding:8px 0!important;
}
body.sato-site .sato-logo img{width:270px!important;max-width:34vw!important;transition:width .28s ease}
body.sato-site .sato-header.scrolled .sato-logo img{width:225px!important}
body.sato-site .sato-hero{min-height:100svh!important}
body.sato-site .sato-hero-grid{
  min-height:100svh!important;
  padding-top:96px!important;
  padding-bottom:96px!important;
  align-items:center!important;
}
body.sato-site .sato-hero-copy{padding-bottom:28px}
body.sato-site .sato-hero h1{margin-bottom:24px}
body.sato-site .scroll-cue{
  display:flex!important;
  position:absolute!important;
  left:50%!important;
  right:auto!important;
  bottom:20px!important;
  transform:translateX(-50%)!important;
  flex-direction:column;
  align-items:center;
  gap:8px;
  color:#dce6ef;
  z-index:12;
  opacity:1;
  transition:opacity .25s ease,transform .25s ease;
}
body.sato-site .scroll-cue.is-hidden{opacity:0;pointer-events:none;transform:translate(-50%,10px)!important}
body.sato-site .scroll-cue:before{
  content:"";
  width:22px;
  height:36px;
  border:1.5px solid rgba(255,255,255,.76);
  border-radius:14px;
  display:block;
  position:relative;
}
body.sato-site .scroll-cue:after{
  content:"";
  position:absolute;
  top:8px;
  left:50%;
  width:3px;
  height:7px;
  border-radius:3px;
  background:var(--orange);
  transform:translateX(-50%);
  animation:wheel 1.45s ease-in-out infinite;
}
body.sato-site .scroll-cue em{font-size:10px;letter-spacing:.18em;font-style:normal;font-weight:750}
body.sato-site .scroll-cue span{display:none!important}
@media(max-width:900px){
  body.sato-site .sato-logo img{width:220px!important;max-width:48vw!important}
  body.sato-site .sato-header{padding:10px 0!important}
  body.sato-site .sato-hero-grid{padding-top:88px!important;padding-bottom:84px!important}
}
@media(max-width:620px){
  body.sato-site .sato-logo img{width:185px!important;max-width:58vw!important}
  body.sato-site .sato-head-actions{gap:14px}
  body.sato-site .sato-outline.small{display:none!important}
  body.sato-site .scroll-cue{bottom:14px!important}
}


/* v14 — smoother hero typography, better scroll cue placement */
body.sato-site .sato-hero h1{
  font-size:clamp(46px,4.55vw,72px)!important;
  line-height:1.015!important;
  letter-spacing:-.045em!important;
  font-weight:650!important;
  max-width:720px!important;
  text-wrap:balance;
}
body.sato-site .sato-hero-copy>p{max-width:620px!important}
body.sato-site .scroll-cue{bottom:44px!important}
@media(max-width:1100px){body.sato-site .sato-hero h1{font-size:clamp(44px,5.4vw,64px)!important;max-width:650px!important}}
@media(max-width:782px){body.sato-site .sato-hero h1{font-size:clamp(40px,9vw,58px)!important;line-height:1.03!important}body.sato-site .scroll-cue{bottom:28px!important}}
@media(max-width:560px){body.sato-site .sato-hero h1{font-size:clamp(38px,11.5vw,52px)!important}body.sato-site .scroll-cue{bottom:22px!important}}


/* v15 — clearer, smoother first-viewport scroll guidance */
body.sato-site .scroll-cue{
  bottom:clamp(64px,8vh,92px)!important;
  gap:10px!important;
  color:rgba(235,243,250,.88)!important;
  animation:satoCueFloat 2.8s cubic-bezier(.45,0,.55,1) infinite;
  will-change:transform,opacity;
}
body.sato-site .scroll-cue:before{
  width:24px!important;
  height:39px!important;
  border-color:rgba(255,255,255,.82)!important;
  border-width:1.4px!important;
  box-shadow:0 0 0 1px rgba(25,140,255,.05),0 0 22px rgba(25,140,255,.10);
}
body.sato-site .scroll-cue:after{
  top:8px!important;
  width:3px!important;
  height:7px!important;
  background:linear-gradient(180deg,#ff9a3d,var(--orange))!important;
  box-shadow:0 0 10px rgba(255,107,0,.52);
  animation:satoWheelSoft 1.85s cubic-bezier(.45,0,.55,1) infinite!important;
}
body.sato-site .scroll-cue em{
  font-size:10px!important;
  letter-spacing:.22em!important;
  font-weight:700!important;
  color:rgba(244,248,252,.78)!important;
  text-shadow:0 0 18px rgba(25,140,255,.18);
}
body.sato-site .scroll-cue.is-hidden{
  animation:none!important;
  opacity:0!important;
  transform:translate(-50%,12px)!important;
}
@keyframes satoWheelSoft{
  0%{transform:translate(-50%,0);opacity:0}
  18%{opacity:1}
  68%{opacity:1}
  100%{transform:translate(-50%,12px);opacity:0}
}
@keyframes satoCueFloat{
  0%,100%{transform:translateX(-50%) translateY(0)}
  50%{transform:translateX(-50%) translateY(5px)}
}
@media(max-height:760px) and (min-width:783px){
  body.sato-site .scroll-cue{bottom:42px!important}
}
@media(max-width:782px){
  body.sato-site .scroll-cue{bottom:38px!important}
}
@media(max-width:560px){
  body.sato-site .scroll-cue{bottom:28px!important;transform:translateX(-50%) scale(.92)!important}
}

/* v16 — unified section canvas, premium motion, fixed service controls */
:root{--canvas:#061524;--canvas-soft:#07192b}
body.sato-site main{background:var(--canvas)}
body.sato-site .sato-hero{background:radial-gradient(circle at 70% 42%,rgba(25,140,255,.13),transparent 32%),linear-gradient(180deg,#061524 0%,#061524 74%,#07192b 100%)!important}
body.sato-site .sato-hero:before{content:"";position:absolute;z-index:4;left:0;right:0;bottom:-1px;height:22vh;pointer-events:none;background:linear-gradient(180deg,rgba(6,21,36,0),rgba(7,25,43,.62) 54%,#07192b 100%)}
body.sato-site .services-section{position:relative;background:linear-gradient(180deg,#07192b 0%,#07192b 68%,#071829 100%)!important;padding-top:94px!important}
body.sato-site .services-section:before{content:"";position:absolute;inset:-120px 0 auto;height:180px;background:radial-gradient(ellipse at 50% 70%,rgba(25,140,255,.08),transparent 66%);pointer-events:none}
body.sato-site .metrics-section,body.sato-site .about-section{background:#071829!important}
body.sato-site .about-section{position:relative;padding-top:96px!important}
body.sato-site .about-section:before{content:"";position:absolute;inset:-90px 0 auto;height:180px;background:linear-gradient(180deg,rgba(7,24,41,0),#071829 78%);pointer-events:none}
body.sato-site .expertise-section{background:linear-gradient(180deg,#071829 0%,#061524 100%)!important}
body.sato-site .contact-section,body.sato-site .partners-section{background:linear-gradient(180deg,#061524,#061524)!important}

/* scroll cue — visible in first viewport without competing with copy */
body.sato-site .scroll-cue{bottom:clamp(118px,17vh,176px)!important;opacity:.96!important}
body.sato-site .scroll-cue:before{box-shadow:0 0 28px rgba(25,140,255,.18)!important}
body.sato-site .scroll-cue em{display:none!important}
body.sato-site .scroll-cue span{display:block!important;position:absolute!important;top:48px!important;width:1px!important;height:34px!important;background:linear-gradient(var(--orange),transparent)!important;animation:satoScrollTrail 2s ease-in-out infinite!important}
body.sato-site .scroll-cue span:after{content:"";position:absolute;left:50%;bottom:-1px;width:7px;height:7px;border-right:1.5px solid var(--orange);border-bottom:1.5px solid var(--orange);transform:translateX(-50%) rotate(45deg)}
@keyframes satoScrollTrail{0%,100%{opacity:.28;transform:scaleY(.65)}50%{opacity:1;transform:scaleY(1)}}

/* service card control — isolated from text */
body.sato-site .service-trigger{position:relative;padding-bottom:88px!important}
body.sato-site .service-arrow{position:absolute!important;left:50%!important;bottom:24px!important;margin:0!important;width:48px;height:48px;border:1px solid rgba(25,140,255,.72);border-radius:50%;display:grid;place-items:center;transform:translateX(-50%);font-size:22px!important;line-height:1;color:var(--orange)!important;background:rgba(6,21,36,.48);box-shadow:0 0 0 0 rgba(25,140,255,0);transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease,background .35s ease!important}
body.sato-site .service-card:hover .service-arrow{background:rgba(13,43,72,.9);box-shadow:0 0 24px rgba(25,140,255,.22);transform:translateX(-50%) translateY(-3px)}
body.sato-site .service-card.active .service-arrow{transform:translateX(-50%) rotate(180deg)!important;background:rgba(255,107,0,.1);border-color:rgba(255,107,0,.75)}

/* metrics and about feel like one continuous scene */
body.sato-site .metrics-grid{position:relative;overflow:hidden;background:linear-gradient(120deg,rgba(13,43,72,.72),rgba(7,24,41,.78))!important;box-shadow:0 30px 80px rgba(0,0,0,.12)}
body.sato-site .metrics-grid:before{content:"";position:absolute;inset:-120% auto -120% -25%;width:32%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.045),transparent);transform:skewX(-18deg);animation:satoMetricSweep 8s ease-in-out infinite}
@keyframes satoMetricSweep{0%,20%{left:-35%}65%,100%{left:125%}}
body.sato-site .about-image{overflow:hidden;border-radius:var(--radius)}
body.sato-site .about-image img{transition:transform 1.1s cubic-bezier(.2,.8,.2,1),filter .8s ease}
body.sato-site .about-image.visible img{animation:satoImageBreathe 8s ease-in-out infinite alternate}
@keyframes satoImageBreathe{from{transform:scale(1.01)}to{transform:scale(1.055)}}

/* partner certifications — no white strip, animated cards */
body.sato-site .partners-section{position:relative;overflow:hidden;padding:92px 0 104px!important}
body.sato-site .partners-section:before{content:"";position:absolute;inset:10% 10% auto;height:300px;background:radial-gradient(circle,rgba(90,45,145,.13),transparent 70%);filter:blur(35px);pointer-events:none}
body.sato-site .partner-showcase{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;perspective:1000px}
body.sato-site .partner-card{position:relative;min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:26px 18px;border:1px solid rgba(149,190,231,.16);border-radius:22px;background:linear-gradient(160deg,rgba(16,41,67,.72),rgba(5,18,31,.48));overflow:hidden;transition:transform .45s cubic-bezier(.2,.8,.2,1),border-color .35s ease,box-shadow .45s ease;animation:satoPartnerFloat 6s ease-in-out infinite}
body.sato-site .partner-card:nth-child(2){animation-delay:-1.1s}body.sato-site .partner-card:nth-child(3){animation-delay:-2.2s}body.sato-site .partner-card:nth-child(4){animation-delay:-3.3s}body.sato-site .partner-card:nth-child(5){animation-delay:-4.4s}
body.sato-site .partner-card:before{content:"";position:absolute;inset:-45% -60%;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.08) 50%,transparent 65%);transform:translateX(-60%) rotate(8deg);transition:transform .9s ease}
body.sato-site .partner-card:hover{transform:translateY(-12px) rotateX(3deg);border-color:rgba(120,77,190,.7);box-shadow:0 30px 70px rgba(52,22,88,.24)}
body.sato-site .partner-card:hover:before{transform:translateX(62%) rotate(8deg)}
body.sato-site .partner-card img{position:relative;z-index:2;width:min(155px,88%);height:auto;filter:drop-shadow(0 12px 24px rgba(0,0,0,.25));transition:transform .45s ease}
body.sato-site .partner-card:hover img{transform:scale(1.06)}
body.sato-site .partner-card span{position:relative;z-index:2;color:#bac8d5;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
body.sato-site .partner-orbit{position:absolute;width:210px;height:210px;border:1px solid rgba(120,77,190,.15);border-radius:50%;animation:satoOrbitSpin 12s linear infinite}
body.sato-site .partner-orbit:after{content:"";position:absolute;top:-4px;left:50%;width:7px;height:7px;border-radius:50%;background:#8d63d1;box-shadow:0 0 16px #8d63d1}
@keyframes satoPartnerFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes satoOrbitSpin{to{transform:rotate(360deg)}}

@media(max-width:1180px){body.sato-site .partner-showcase{grid-template-columns:repeat(3,1fr)}body.sato-site .partner-card:nth-child(4),body.sato-site .partner-card:nth-child(5){grid-column:auto}}
@media(max-width:782px){body.sato-site .scroll-cue{bottom:90px!important}body.sato-site .partner-showcase{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 0 18px;gap:14px}body.sato-site .partner-card{min-width:78vw;scroll-snap-align:center;animation:none}body.sato-site .service-trigger{padding-bottom:82px!important}}
@media(max-width:560px){body.sato-site .scroll-cue{bottom:74px!important}.partner-card{min-height:230px!important}}
@media(prefers-reduced-motion:reduce){body.sato-site .partner-card,body.sato-site .about-image.visible img,body.sato-site .metrics-grid:before{animation:none!important}}


/* v17 release candidate — calm hero, seamless transition, accessible interactions */
.sato-hero{min-height:100svh;background:#061524;isolation:isolate}
.sato-hero:before{content:"";position:absolute;z-index:1;left:0;right:0;bottom:-2px;height:220px;background:linear-gradient(180deg,transparent 0%,rgba(6,21,36,.62) 45%,#061524 100%);pointer-events:none}
.sato-hero:after{z-index:0}
.sato-hero-visual{transform:none!important;transition:opacity .18s linear,filter .18s linear;will-change:opacity,filter}
.services-section{position:relative;z-index:3;margin-top:-2px;background:#061524;padding-top:92px}
.services-section:before{content:"";position:absolute;z-index:-1;left:0;right:0;top:-150px;height:190px;background:linear-gradient(180deg,transparent,#061524 78%);pointer-events:none}
.sato-hero h1{font-size:clamp(44px,4.55vw,72px);line-height:1.035;letter-spacing:-.045em;font-weight:650}
.scroll-cue{bottom:10vh;gap:8px;color:rgba(226,237,247,.86);transition:opacity .4s ease,transform .4s ease}
.scroll-cue:hover{color:#fff;transform:translateX(-50%) translateY(3px)}
.scroll-mouse{display:block;width:24px;height:38px;border:1.5px solid currentColor;border-radius:16px;position:relative;background:rgba(6,21,36,.18);box-shadow:0 0 18px rgba(25,140,255,.13)}
.scroll-mouse i{position:absolute;left:50%;top:7px;width:3px;height:7px;border-radius:5px;background:var(--orange);transform:translateX(-50%);animation:satoWheel 2s cubic-bezier(.45,0,.25,1) infinite}
.scroll-arrow{display:block!important;width:auto!important;height:auto!important;background:none!important;color:var(--orange);font-size:16px;line-height:1;animation:satoArrow 2s ease-in-out infinite}
@keyframes satoWheel{0%{opacity:0;transform:translate(-50%,0)}25%{opacity:1}70%{opacity:.75;transform:translate(-50%,13px)}100%{opacity:0;transform:translate(-50%,16px)}}
@keyframes satoArrow{0%,100%{transform:translateY(0);opacity:.45}50%{transform:translateY(5px);opacity:1}}
.service-trigger{position:relative;padding:30px 24px 92px;min-height:330px}
.service-arrow{position:absolute;right:24px;bottom:24px;display:grid;place-items:center;width:48px;height:48px;margin:0;border:1px solid rgba(25,140,255,.52);border-radius:50%;background:rgba(7,25,43,.72);color:var(--orange);font-size:21px;line-height:1;box-shadow:0 8px 25px rgba(0,0,0,.16);transition:transform .35s ease,background .35s ease,border-color .35s ease,box-shadow .35s ease}
.service-card:hover .service-arrow{border-color:var(--orange);background:rgba(255,107,0,.08);box-shadow:0 0 24px rgba(255,107,0,.12)}
.service-card.active .service-arrow{transform:rotate(180deg)}
.about-copy p{white-space:pre-line}
.contact-row{flex-wrap:wrap}
.partner-card strong{display:block;margin-top:14px;color:#f4f8fc;font-size:14px;font-weight:650;text-align:center}
.partner-card a{display:block}
@media(max-width:1280px){.scroll-cue{bottom:8vh}.sato-hero h1{font-size:clamp(42px,5.2vw,66px)}}
@media(max-width:782px){body.admin-bar .sato-header{top:46px}.scroll-cue{bottom:7vh}.sato-hero-grid{padding-top:120px}.service-trigger{padding-bottom:84px}.service-arrow{right:20px;bottom:20px}}
@media(max-height:720px) and (min-width:783px){.scroll-cue{bottom:5vh}.sato-hero-grid{padding-top:120px;padding-bottom:70px}.sato-hero h1{font-size:clamp(42px,4.2vw,62px)}}


/* v18 — approved minimal enterprise hero, preserving the existing visual and logo */
body.sato-site .sato-hero-grid{
  align-items:center!important;
  padding-top:clamp(116px,14vh,170px)!important;
  padding-bottom:clamp(110px,15vh,180px)!important;
}
body.sato-site .sato-hero-copy{
  width:min(620px,48vw)!important;
  max-width:620px!important;
  padding-bottom:0!important;
}
body.sato-site .sato-hero-copy .sato-kicker:empty{display:none!important}
body.sato-site .sato-hero h1{
  max-width:610px!important;
  margin:0!important;
  font-family:"Geist",Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:clamp(48px,4.4vw,74px)!important;
  line-height:.98!important;
  letter-spacing:-.055em!important;
  font-weight:460!important;
  text-wrap:balance;
  color:#f5f8fc!important;
  text-shadow:0 12px 44px rgba(0,0,0,.18);
}
body.sato-site .sato-hero-tagline{
  display:flex!important;
  align-items:center;
  gap:14px;
  width:max-content;
  max-width:100%;
  margin:34px 0 0!important;
  color:rgba(226,237,247,.74)!important;
  font-family:"Geist",Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:clamp(13px,1vw,16px)!important;
  font-weight:520!important;
  line-height:1.2!important;
  letter-spacing:.18em!important;
  text-transform:uppercase;
  white-space:nowrap;
}
body.sato-site .sato-hero-tagline:before{
  content:"";
  width:38px;
  height:1px;
  flex:none;
  background:linear-gradient(90deg,var(--orange),rgba(255,107,0,.1));
}
body.sato-site .sato-hero-visual{
  opacity:.92!important;
  filter:saturate(.96) contrast(1.01)!important;
}
body.sato-site .scroll-cue{bottom:11vh!important}
@media(max-width:1100px){
  body.sato-site .sato-hero-copy{width:min(570px,54vw)!important}
  body.sato-site .sato-hero h1{font-size:clamp(44px,5.2vw,66px)!important}
}
@media(max-width:782px){
  body.sato-site .sato-hero-grid{align-items:flex-end!important;padding-top:118px!important;padding-bottom:150px!important}
  body.sato-site .sato-hero-copy{width:100%!important;max-width:600px!important}
  body.sato-site .sato-hero h1{font-size:clamp(42px,10.4vw,60px)!important;max-width:92vw!important;line-height:1!important}
  body.sato-site .sato-hero-tagline{margin-top:25px!important;font-size:12px!important;letter-spacing:.13em!important;white-space:normal}
  body.sato-site .scroll-cue{bottom:7.5vh!important}
}
@media(max-width:480px){
  body.sato-site .sato-hero h1{font-size:clamp(38px,11.6vw,52px)!important}
  body.sato-site .sato-hero-tagline:before{width:25px}
}

/* SATOCONNECT v2.0 FINAL — approved production design */
:root{--sato-bg:#061524;--sato-bg-2:#081b2e;--sato-panel:#0d2238;--sato-text:#f5f8fc;--sato-muted:#aebdca;--sato-blue:#198cff;--sato-orange:#ff6b00}
html,body.sato-site,body.sato-site #page,body.sato-site .site,body.sato-site main{width:100%;max-width:none;margin:0;background:var(--sato-bg);overflow-x:clip}
body.sato-site .sato-hero h1{background:linear-gradient(105deg,#d7e8f8 0%,#86c8ff 42%,#4fa8ff 70%,#f29a4a 118%);-webkit-background-clip:text;background-clip:text;color:transparent!important;text-shadow:none!important;font-weight:520!important;letter-spacing:-.05em!important;font-size:clamp(44px,4.1vw,68px)!important;line-height:1.01!important}
body.sato-site .sato-hero-tagline{color:rgba(224,236,247,.66)!important;font-weight:560!important}
body.sato-site .scroll-cue{bottom:13.5vh!important;opacity:.94!important}
body.sato-site .scroll-mouse{width:25px;height:39px;border-color:rgba(218,235,250,.7);background:rgba(5,20,35,.28);box-shadow:0 0 24px rgba(25,140,255,.16)}
body.sato-site .scroll-mouse i{animation-duration:2.25s}

/* About — editorial three-part story */
body.sato-site .about-section{padding:clamp(92px,10vw,150px) 0;background:linear-gradient(180deg,#061524 0%,#07182a 58%,#061524 100%)}
body.sato-site .about-layout{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(360px,.96fr);gap:clamp(42px,6vw,94px);align-items:center}
body.sato-site .about-copy h2{font-size:clamp(39px,4.7vw,72px);line-height:1.02;letter-spacing:-.048em;margin:14px 0 34px;max-width:760px}
body.sato-site .about-story{display:grid;gap:12px}
body.sato-site .about-story-card{position:relative;padding:22px 24px 22px 78px;border:1px solid rgba(154,194,232,.13);border-radius:18px;background:linear-gradient(145deg,rgba(15,43,70,.72),rgba(7,24,41,.5));transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .35s ease,background .35s ease;overflow:hidden}
body.sato-site .about-story-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:linear-gradient(var(--sato-blue),var(--sato-orange));opacity:.45;transition:opacity .3s ease}
body.sato-site .about-story-card:hover{transform:translateX(8px);border-color:rgba(25,140,255,.38);background:linear-gradient(145deg,rgba(17,52,84,.82),rgba(7,24,41,.62))}
body.sato-site .about-story-card:hover:before{opacity:1}
body.sato-site .about-story-card>span{position:absolute;left:24px;top:23px;color:var(--sato-orange);font-size:12px;font-weight:750;letter-spacing:.14em}
body.sato-site .about-story-card h3{margin:0 0 8px;color:#f7faff;font-size:clamp(18px,1.45vw,23px);letter-spacing:-.025em}
body.sato-site .about-story-card p{margin:0;color:var(--sato-muted);font-size:clamp(14px,1.05vw,16.5px);line-height:1.7}
body.sato-site .about-image{position:relative;min-height:620px;border:1px solid rgba(154,194,232,.15);border-radius:28px;overflow:hidden;background:#0a2035}
body.sato-site .about-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(3,14,25,.72));pointer-events:none}
body.sato-site .about-image img{width:100%;height:100%;min-height:620px;object-fit:cover;animation:none!important;transform:none!important}
body.sato-site .about-image-note{position:absolute;z-index:2;left:28px;bottom:28px;display:flex;align-items:baseline;gap:12px;padding:16px 19px;border:1px solid rgba(255,255,255,.15);border-radius:15px;background:rgba(4,18,31,.68);backdrop-filter:blur(16px)}
body.sato-site .about-image-note strong{font-size:40px;line-height:1;color:var(--sato-orange)}
body.sato-site .about-image-note span{color:#e1ebf3;font-size:13px;letter-spacing:.08em;text-transform:uppercase}

/* Journey — five-stage connected flow */
body.sato-site .expertise-section{position:relative;padding:clamp(100px,11vw,170px) 0;background:radial-gradient(circle at 50% 32%,rgba(25,140,255,.08),transparent 36%),#061524;overflow:hidden}
body.sato-site .expertise-section .section-head{max-width:980px;margin:0 auto 68px;text-align:center}
body.sato-site .expertise-section .section-head h2{font-size:clamp(38px,4.6vw,70px);line-height:1.03;letter-spacing:-.048em}
body.sato-site .journey-track{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;width:100%;isolation:isolate}
body.sato-site .journey-line{position:absolute;z-index:-1;left:6%;right:6%;top:55px;height:2px;background:rgba(112,170,222,.16);overflow:hidden}
body.sato-site .journey-line i{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--sato-blue),#5aaeff 68%,var(--sato-orange));box-shadow:0 0 22px rgba(25,140,255,.55);transition:width 1.7s cubic-bezier(.2,.8,.2,1)}
body.sato-site .journey-track.is-visible .journey-line i{width:100%}
body.sato-site .journey-step{position:relative;min-width:0;padding:20px 18px 26px;border:1px solid rgba(154,194,232,.13);border-radius:20px;background:linear-gradient(155deg,rgba(15,43,70,.82),rgba(6,22,38,.74));box-shadow:0 20px 54px rgba(0,0,0,.12);transition:transform .4s cubic-bezier(.2,.8,.2,1),border-color .35s ease,box-shadow .4s ease}
body.sato-site .journey-step:hover{transform:translateY(-9px);border-color:rgba(25,140,255,.42);box-shadow:0 28px 68px rgba(7,28,48,.42)}
body.sato-site .journey-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}
body.sato-site .journey-step .process-number{font-size:12px;font-weight:760;letter-spacing:.15em;color:var(--sato-orange)}
body.sato-site .journey-step .process-icon{width:68px;height:68px;margin:0;border:1px solid rgba(25,140,255,.35);background:#091e33;color:#61b3ff;box-shadow:0 0 26px rgba(25,140,255,.11)}
body.sato-site .journey-step h3{margin:0 0 10px;color:#fff;font-size:clamp(18px,1.45vw,23px);line-height:1.15;letter-spacing:-.025em}
body.sato-site .journey-step p{min-height:74px;margin:0 0 18px;color:var(--sato-muted);font-size:14px;line-height:1.55}
body.sato-site .journey-step ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}
body.sato-site .journey-step li{position:relative;padding-left:17px;color:#d5e1eb;font-size:13px;line-height:1.35}
body.sato-site .journey-step li:before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:50%;background:var(--sato-blue);box-shadow:0 0 10px currentColor}
body.sato-site .journey-step:nth-of-type(5){border-color:rgba(255,107,0,.34)}
body.sato-site .journey-step:nth-of-type(5) .process-icon{color:var(--sato-orange);border-color:rgba(255,107,0,.45);box-shadow:0 0 27px rgba(255,107,0,.14)}
body.sato-site .journey-step:nth-of-type(5) li:before{background:var(--sato-orange)}

/* Compact partner band */
body.sato-site .partners-section{padding:36px 0 44px!important;border-top:1px solid rgba(154,194,232,.1);border-bottom:1px solid rgba(154,194,232,.1);background:#07182a;overflow:hidden}
body.sato-site .partners-compact{display:grid;grid-template-columns:270px minmax(0,1fr);align-items:center;gap:34px}
body.sato-site .partners-copy span{display:block;color:var(--sato-orange);font-size:11px;font-weight:750;letter-spacing:.17em;margin-bottom:7px}
body.sato-site .partners-copy h2{margin:0;color:#e7eef5;font-size:17px;font-weight:560;letter-spacing:-.02em}
body.sato-site .partner-marquee{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
body.sato-site .partner-marquee-track{display:flex;align-items:center;width:max-content;gap:18px;animation:satoPartnerMarquee 34s linear infinite}
body.sato-site .partner-marquee:hover .partner-marquee-track{animation-play-state:paused}
body.sato-site .partner-chip{display:flex;align-items:center;justify-content:center;min-width:170px;height:60px;padding:9px 20px;border:1px solid rgba(154,194,232,.1);border-radius:13px;background:rgba(11,35,58,.48);color:rgba(220,232,242,.58);filter:grayscale(1);transition:color .3s ease,border-color .3s ease,filter .3s ease,transform .3s ease}
body.sato-site .partner-chip:hover{color:#fff;border-color:rgba(25,140,255,.33);filter:grayscale(0);transform:translateY(-3px)}
body.sato-site .partner-chip img{max-width:142px;max-height:34px;object-fit:contain;opacity:.62;transition:opacity .3s ease}
body.sato-site .partner-chip:hover img{opacity:1}
body.sato-site .partner-chip span{font-size:13px;font-weight:650;letter-spacing:.01em;white-space:nowrap}
@keyframes satoPartnerMarquee{to{transform:translateX(-50%)}}

/* Refined footer */
body.sato-site .sato-footer{padding:62px 0 24px;background:#04111e;border-top:0}
body.sato-site .footer-grid{display:grid;grid-template-columns:1.2fr 1fr auto;gap:50px;align-items:start}
body.sato-site .footer-brand img{width:260px;max-width:100%;margin-bottom:20px}
body.sato-site .footer-brand p{max-width:430px;margin:0;color:var(--sato-muted);line-height:1.65}
body.sato-site .footer-contact{display:grid;gap:9px;color:#dce7ef}
body.sato-site .footer-contact a,body.sato-site .footer-contact span{color:inherit;text-decoration:none;font-size:14px}
body.sato-site .footer-contact a:hover{color:var(--sato-orange)}
body.sato-site .footer-bottom{margin-top:42px;padding-top:20px;border-top:1px solid rgba(154,194,232,.09);color:#718496;font-size:12px}

@media(max-width:1180px){
 body.sato-site .about-layout{grid-template-columns:1fr 420px;gap:42px}
 body.sato-site .journey-track{grid-template-columns:repeat(3,minmax(0,1fr))}
 body.sato-site .journey-line{display:none}
 body.sato-site .journey-step p{min-height:auto}
}
@media(max-width:900px){
 body.sato-site .about-layout{grid-template-columns:1fr}
 body.sato-site .about-image,body.sato-site .about-image img{min-height:480px}
 body.sato-site .journey-track{grid-template-columns:repeat(2,minmax(0,1fr))}
 body.sato-site .partners-compact{grid-template-columns:1fr;gap:20px}
 body.sato-site .footer-grid{grid-template-columns:1fr 1fr}
 body.sato-site .footer-grid .socials{grid-column:1/-1}
}
@media(max-width:620px){
 body.sato-site .sato-hero h1{font-size:clamp(37px,11vw,52px)!important}
 body.sato-site .scroll-cue{bottom:10vh!important}
 body.sato-site .about-story-card{padding:20px 18px 20px 60px}
 body.sato-site .about-story-card>span{left:18px;top:21px}
 body.sato-site .about-image,body.sato-site .about-image img{min-height:390px}
 body.sato-site .journey-track{grid-template-columns:1fr}
 body.sato-site .journey-step{padding:22px}
 body.sato-site .partner-chip{min-width:145px;height:54px;padding-inline:15px}
 body.sato-site .footer-grid{grid-template-columns:1fr;gap:28px}
}
@media(prefers-reduced-motion:reduce){body.sato-site .partner-marquee-track{animation:none}body.sato-site .journey-line i{width:100%}}


/* v3.0 approved final design */
body.sato-site{font-family:"Geist",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-weight:400}
body.sato-site h1,body.sato-site h2,body.sato-site h3{font-weight:600;letter-spacing:-.035em}
body.sato-site .sato-hero h1{font-size:clamp(44px,5vw,78px);line-height:1.04;font-weight:400;letter-spacing:-.045em;color:#d9e8f7;text-shadow:0 10px 45px rgba(0,30,70,.35)}
body.sato-site .sato-hero h1 span{color:#b9cee3;font-weight:350}
body.sato-site .sato-hero-tagline{font-size:clamp(13px,1.1vw,17px);font-weight:500;letter-spacing:.34em;color:#c1cede}
body.sato-site .sato-hero-tagline i{font-style:normal;color:var(--orange);padding:0 .35em}
body.sato-site .section-head h2{font-weight:550;letter-spacing:-.04em}

body.sato-site .expertise-section{padding:clamp(80px,8vw,130px) 0;background:linear-gradient(180deg,#061524,#07192b 50%,#061524)}
body.sato-site .journey-intro{display:grid;grid-template-columns:minmax(250px,.65fr) minmax(0,1.35fr);column-gap:clamp(40px,7vw,120px);align-items:end;margin-bottom:58px}
body.sato-site .journey-intro>span{grid-column:1;color:var(--orange);font-size:13px;font-weight:650;letter-spacing:.14em;margin-bottom:22px}
body.sato-site .journey-intro h2{grid-column:1;font-size:clamp(44px,5.3vw,82px);font-weight:350;line-height:1.08;letter-spacing:-.055em;margin:0;color:#e5edf5}
body.sato-site .journey-intro p{grid-column:2;grid-row:1/3;align-self:end;max-width:720px;margin:0 0 10px;color:#b8c8d8;font-size:clamp(17px,1.35vw,22px);line-height:1.75}
body.sato-site .journey-step h3{font-weight:580;font-size:clamp(18px,1.35vw,24px)}
body.sato-site .journey-step p,body.sato-site .journey-step li{font-weight:400}

body.sato-site .about-section{padding:clamp(90px,9vw,145px) 0;background:#061524}
body.sato-site .about-layout{grid-template-columns:minmax(460px,.82fr) minmax(0,1.18fr);gap:clamp(48px,6vw,100px);align-items:center}
body.sato-site .about-copy h2{font-size:clamp(48px,5.3vw,82px);font-weight:580;line-height:.99;letter-spacing:-.055em;margin:20px 0 30px;color:#f4f7fb}
body.sato-site .about-intro{font-size:clamp(16px,1.2vw,20px);line-height:1.75;color:#b9c9d8;margin:0 0 28px;max-width:650px}
body.sato-site .about-story{gap:10px}
body.sato-site .about-story-card{display:grid;grid-template-columns:72px 1fr;gap:18px;align-items:center;padding:20px 22px;border-radius:16px}
body.sato-site .about-story-card:before,body.sato-site .about-story-card>span{display:none}
body.sato-site .about-card-icon{width:58px;height:58px;display:grid;place-items:center;border-radius:50%;background:#0b2238;color:var(--orange)}
body.sato-site .about-card-icon svg{width:31px;height:31px;stroke:var(--orange);fill:none;stroke-width:1.7}
body.sato-site .about-story-card h3{font-weight:600;font-size:clamp(18px,1.35vw,23px)}
body.sato-site .about-image img{aspect-ratio:16/10.4;object-fit:cover;border-radius:18px}
body.sato-site .about-metrics{margin-top:18px;grid-template-columns:repeat(4,minmax(0,1fr))}
body.sato-site .about-metrics .metric{min-height:145px;padding:22px 18px;column-gap:13px}
body.sato-site .about-metrics .metric strong{font-size:clamp(25px,2vw,36px);font-weight:600}
body.sato-site .about-metrics .metric .word-metric{font-size:clamp(19px,1.5vw,27px)}
body.sato-site .about-metrics .metric span{font-size:13px}

body.sato-site .partners-section{padding:30px 0!important;background:#061524!important;border-top:1px solid rgba(154,194,232,.12);border-bottom:1px solid rgba(154,194,232,.12)}
body.sato-site .partners-inline{display:grid;grid-template-columns:auto 1fr;gap:34px;align-items:center}
body.sato-site .partners-label span{font-size:12px;font-weight:600;letter-spacing:.11em;color:#d0d9e2;white-space:nowrap;text-transform:uppercase}
body.sato-site .partner-chip{min-width:180px;padding:14px 24px;background:transparent;border:0;border-right:1px solid rgba(154,194,232,.14);border-radius:0;filter:grayscale(1);opacity:.62;transition:.3s}
body.sato-site .partner-chip:hover{filter:none;opacity:1;transform:translateY(-3px)}

body.sato-site .contact-cta-section{padding:26px 0 34px;background:#061524}
body.sato-site .contact-cta{position:relative;display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center;padding:24px 36px;border:1px solid rgba(25,140,255,.25);border-radius:15px;background:linear-gradient(100deg,#092440,#081c33);overflow:hidden}
body.sato-site .contact-cta:after{content:"";position:absolute;inset:0 0 0 58%;background:radial-gradient(circle at 80% 50%,rgba(25,140,255,.22),transparent 60%);pointer-events:none}
body.sato-site .contact-cta-icon{width:62px;height:62px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(25,140,255,.35);color:#86baff;font-size:27px}
body.sato-site .contact-cta h2{margin:0 0 5px;font-size:clamp(21px,1.8vw,30px);font-weight:580}
body.sato-site .contact-cta p{margin:0;color:#bac8d6}
body.sato-site .contact-cta button{position:relative;z-index:2}

body.sato-site .sato-footer{padding:38px 0 0;background:#04111e}
body.sato-site .footer-grid{grid-template-columns:1.25fr repeat(4,minmax(140px,1fr));gap:0;align-items:stretch}
body.sato-site .footer-grid>div{padding:8px 30px;border-right:1px solid rgba(154,194,232,.12)}
body.sato-site .footer-grid>div:first-child{padding-left:0}
body.sato-site .footer-grid>div:last-child{border-right:0}
body.sato-site .footer-brand img{width:250px;max-width:100%}
body.sato-site .footer-brand p{color:#9aabba;margin:8px 0 16px}
body.sato-site .footer-item{display:flex;flex-direction:column;gap:10px;color:#c3ced8}
body.sato-site .footer-item strong{font-size:14px;font-weight:600;color:#eef3f7}
body.sato-site .footer-mobile{color:var(--orange)}
body.sato-site .footer-rights{width:100%;margin-top:34px;padding:18px 20px;text-align:center;border-top:1px solid rgba(154,194,232,.12);color:#a3b0bc;font-size:13px}

@media(max-width:1100px){body.sato-site .about-layout{grid-template-columns:1fr}body.sato-site .about-visual-column{max-width:850px;width:100%}body.sato-site .journey-intro{grid-template-columns:1fr}body.sato-site .journey-intro p{grid-column:1;grid-row:auto;margin-top:24px}body.sato-site .footer-grid{grid-template-columns:1fr 1fr 1fr}body.sato-site .footer-grid>div{border-right:0;border-bottom:1px solid rgba(154,194,232,.1);padding:22px}}
@media(max-width:760px){body.sato-site .about-metrics{grid-template-columns:repeat(2,1fr)}body.sato-site .contact-cta{grid-template-columns:auto 1fr}body.sato-site .contact-cta button{grid-column:1/-1;width:100%}body.sato-site .partners-inline{grid-template-columns:1fr;gap:12px}body.sato-site .footer-grid{grid-template-columns:1fr}body.sato-site .about-story-card{grid-template-columns:54px 1fr;padding:18px 16px}body.sato-site .about-card-icon{width:48px;height:48px}}

/* v4.0 final polish requested by client */
body.sato-site .section-head h2{
  font-size:clamp(34px,3.6vw,58px);
  font-weight:360!important;
  line-height:1.12;
  letter-spacing:-.045em;
  color:#dfeaf4;
  text-wrap:balance;
}
body.sato-site .services-section{padding-bottom:38px}

body.sato-site .stats-section{
  padding:16px 0 42px;
  background:#061524;
}
body.sato-site .stats-section .metrics-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
  border:1px solid rgba(154,194,232,.16);
  border-radius:18px;
  overflow:hidden;
  background:linear-gradient(135deg,rgba(12,38,63,.84),rgba(5,22,38,.78));
}
body.sato-site .stats-section .metric{
  min-width:0;
  min-height:138px;
  padding:25px 24px;
  border-right:1px solid rgba(154,194,232,.13);
}
body.sato-site .stats-section .metric:last-child{border-right:0}
body.sato-site .stats-section .metric strong{
  font-weight:560;
  font-size:clamp(27px,2.5vw,42px);
  white-space:normal;
  overflow-wrap:anywhere;
}
body.sato-site .stats-section .metric .word-metric{
  font-size:clamp(20px,2vw,32px);
  line-height:1.1;
  max-width:100%;
}

body.sato-site .about-section{padding-top:clamp(72px,7vw,110px)}
body.sato-site .about-copy h2{
  font-size:clamp(42px,4.5vw,68px)!important;
  font-weight:360!important;
  line-height:1.08!important;
  letter-spacing:-.048em!important;
  color:#dfe9f3!important;
}
body.sato-site .about-story-card h3{font-weight:520!important}
body.sato-site .about-story-card p{font-weight:400}
body.sato-site .about-image{min-height:560px}
body.sato-site .about-image img{min-height:560px}

body.sato-site .expertise-section{padding-top:clamp(78px,8vw,122px)}
body.sato-site .journey-intro{
  display:block!important;
  max-width:1120px;
  margin:0 auto 52px;
  text-align:center;
}
body.sato-site .journey-intro>span{
  display:block;
  margin:0 0 18px!important;
  font-weight:600;
}
body.sato-site .journey-intro .journey-title{
  display:block;
  margin:0 auto 20px!important;
  max-width:1100px;
  font-size:clamp(34px,4.2vw,62px)!important;
  font-weight:340!important;
  line-height:1.12!important;
  letter-spacing:-.045em!important;
  color:#dfeaf4;
  text-wrap:balance;
  overflow-wrap:anywhere;
}
body.sato-site .journey-intro p{
  display:block!important;
  max-width:820px!important;
  margin:0 auto!important;
  font-size:clamp(16px,1.25vw,20px)!important;
  line-height:1.7!important;
  color:#b8c8d8!important;
}
body.sato-site .journey-track{align-items:stretch}
body.sato-site .journey-step{overflow:hidden}
body.sato-site .journey-step h3{
  min-height:2.45em;
  font-weight:520!important;
  line-height:1.22!important;
  overflow-wrap:anywhere;
  hyphens:auto;
}
body.sato-site .journey-step p{
  min-height:96px;
  overflow-wrap:anywhere;
}
body.sato-site .journey-step li{overflow-wrap:anywhere}

body.sato-site .contact-cta-icon svg{
  width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round
}
body.sato-site .contact-cta h2{font-weight:500!important}

body.sato-site .partners-label span{
  font-size:13px;
  font-weight:520!important;
  letter-spacing:.14em;
  color:#dce5ed;
}
body.sato-site .partner-chip{min-width:210px;padding:8px 20px}
body.sato-site .partner-chip img{width:190px;height:58px;object-fit:contain;display:block}

body.sato-site .sato-footer{padding:26px 0 0!important}
body.sato-site .footer-grid{
  grid-template-columns:1.05fr repeat(4,minmax(120px,1fr))!important;
  align-items:center!important;
}
body.sato-site .footer-grid>div{padding:8px 22px!important}
body.sato-site .footer-brand img{width:190px!important}
body.sato-site .footer-brand .socials{margin-top:12px}
body.sato-site .footer-item{gap:6px!important;font-size:14px}
body.sato-site .footer-item strong{font-weight:520!important}
body.sato-site .footer-rights{margin-top:22px!important;padding:15px 20px!important}

@media(max-width:1100px){
  body.sato-site .stats-section .metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.sato-site .stats-section .metric:nth-child(2){border-right:0}
  body.sato-site .stats-section .metric:nth-child(-n+2){border-bottom:1px solid rgba(154,194,232,.13)}
  body.sato-site .journey-step p{min-height:auto}
}
@media(max-width:760px){
  body.sato-site .stats-section .metrics-grid{grid-template-columns:1fr}
  body.sato-site .stats-section .metric{border-right:0!important;border-bottom:1px solid rgba(154,194,232,.13)}
  body.sato-site .stats-section .metric:last-child{border-bottom:0}
  body.sato-site .journey-intro{text-align:left}
  body.sato-site .journey-intro .journey-title{font-size:clamp(32px,10vw,48px)!important}
  body.sato-site .about-image,body.sato-site .about-image img{min-height:360px}
  body.sato-site .partner-chip{min-width:175px}
  body.sato-site .partner-chip img{width:155px;height:52px}
}


/* v5 refinement */
body.sato-site .about-section{padding:clamp(72px,7vw,112px) 0 54px!important}
body.sato-site .about-layout{align-items:start!important}
body.sato-site .about-copy .sato-kicker{margin-bottom:22px}
body.sato-site .about-copy h2{display:none!important}
body.sato-site .about-intro-lead{max-width:680px!important;margin:0 0 30px!important;font-size:clamp(18px,1.25vw,21px)!important;line-height:1.72!important;color:#d4dee7!important;font-weight:390!important}
body.sato-site .about-story-card{background:linear-gradient(135deg,rgba(10,35,58,.62),rgba(5,20,36,.38))!important;border-color:rgba(91,165,229,.18)!important;box-shadow:none!important;transition:transform .45s cubic-bezier(.2,.8,.2,1),border-color .45s,background .45s!important}
body.sato-site .about-story-card:hover{transform:translateY(-4px);border-color:rgba(255,111,0,.34)!important}
body.sato-site .about-story-card h3{font-weight:520!important;letter-spacing:-.02em}
body.sato-site .about-image{min-height:520px!important;overflow:hidden;border-radius:18px}
body.sato-site .about-image img{min-height:520px!important;width:100%;height:100%;object-fit:cover!important;object-position:center!important;animation:satoAboutZoom 16s ease-in-out infinite alternate}
@keyframes satoAboutZoom{from{transform:scale(1.01)}to{transform:scale(1.065)}}
body.sato-site .stats-section{padding:22px 0 clamp(72px,7vw,105px)!important;background:#061524!important}
body.sato-site .stats-section .metric .word-metric{font-size:clamp(18px,1.6vw,30px)!important;white-space:normal!important;overflow-wrap:anywhere!important}
body.sato-site .expertise-section{padding:clamp(82px,8vw,125px) 0!important}
body.sato-site .journey-intro{display:block!important;text-align:center!important;max-width:980px!important;margin:0 auto 60px!important}
body.sato-site .journey-intro>span{display:block!important;margin-bottom:18px!important}
body.sato-site .journey-intro .journey-title{display:flex!important;justify-content:center!important;flex-wrap:wrap!important;gap:.15em .36em!important;font-size:clamp(36px,4.2vw,64px)!important;font-weight:320!important;line-height:1.08!important;letter-spacing:-.045em!important;margin:0 0 24px!important;color:#e6edf4!important}
body.sato-site .journey-intro p{max-width:820px!important;margin:0 auto!important;font-size:clamp(16px,1.15vw,20px)!important;line-height:1.7!important}
body.sato-site .journey-track-static{background:transparent!important;border:0!important;box-shadow:none!important;gap:0!important}
body.sato-site .journey-track-static .journey-step{border:0!important;border-top:1px solid rgba(65,155,235,.32)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;padding:34px clamp(18px,2vw,30px) 20px!important;min-width:0!important;cursor:default!important}
body.sato-site .journey-track-static .journey-step:nth-last-child(-n+2){border-top-color:rgba(255,111,0,.42)!important}
body.sato-site .journey-track-static .journey-step:hover{transform:none!important;background:transparent!important}
body.sato-site .journey-step h3{font-weight:520!important;line-height:1.25!important;min-height:0!important}
body.sato-site .journey-step p{min-height:0!important;line-height:1.65!important}
body.sato-site .journey-step li{font-size:14px!important;line-height:1.5!important}
body.sato-site .contact-cta-section{padding:34px 0 22px!important}
body.sato-site .partners-section{padding:24px 0 28px!important}
body.sato-site .partners-label span{font-size:11px!important;letter-spacing:.16em!important}
body.sato-site .partner-chip{min-width:180px!important}
body.sato-site .partner-chip img{max-width:170px!important}
body.sato-site .sato-footer{padding:24px 0 0!important}
body.sato-site .footer-grid{grid-template-columns:1.1fr repeat(4,minmax(120px,1fr))!important}
body.sato-site .footer-grid>div{padding:5px 18px!important}
body.sato-site .footer-brand img{width:165px!important}
body.sato-site .footer-item{gap:4px!important;font-size:13px!important}
body.sato-site .footer-rights{margin-top:18px!important;padding:13px 20px!important}
@media(max-width:1100px){body.sato-site .journey-track-static{grid-template-columns:repeat(2,minmax(0,1fr))!important}body.sato-site .footer-grid{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:760px){body.sato-site .journey-intro .journey-title{display:block!important;text-align:left!important}body.sato-site .journey-intro .journey-title span{display:block!important;margin-bottom:4px}body.sato-site .journey-intro{text-align:left!important}body.sato-site .journey-track-static{grid-template-columns:1fr!important}body.sato-site .journey-track-static .journey-step{border-top:0!important;border-left:1px solid rgba(65,155,235,.32)!important;padding:18px 18px 26px 28px!important}body.sato-site .about-image,body.sato-site .about-image img{min-height:360px!important}body.sato-site .footer-grid{grid-template-columns:1fr!important}}
@media(prefers-reduced-motion:reduce){body.sato-site .about-image img{animation:none!important}}

/* v6 final polish: compact About, clean process labels, official partner strip */
body.sato-site .about-layout{
  grid-template-columns:minmax(0,.82fr) minmax(520px,1.18fr)!important;
  gap:clamp(42px,5vw,82px)!important;
  align-items:stretch!important;
}
body.sato-site .about-intro-lead{display:none!important}
body.sato-site .about-story{display:grid!important;gap:14px!important;margin-top:28px!important}
body.sato-site .about-story-card{
  min-height:0!important;
  padding:clamp(22px,2vw,30px)!important;
  display:grid!important;
  grid-template-columns:70px 1fr!important;
  gap:22px!important;
  align-items:center!important;
  border:1px solid rgba(149,190,231,.18)!important;
  border-radius:18px!important;
  background:linear-gradient(145deg,rgba(13,34,56,.86),rgba(5,18,31,.58))!important;
  transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease!important;
}
body.sato-site .about-story-card:hover{transform:translateY(-4px);border-color:rgba(25,140,255,.45)!important;box-shadow:0 20px 52px rgba(0,80,155,.12)}
body.sato-site .about-story-card h3{font-size:clamp(20px,1.4vw,26px)!important;font-weight:560!important;letter-spacing:-.025em!important;margin:0 0 8px!important}
body.sato-site .about-story-card p{font-size:clamp(15px,1.05vw,18px)!important;line-height:1.65!important;margin:0!important;color:#b9c7d5!important}
body.sato-site .about-card-icon{width:62px!important;height:62px!important;border-radius:50%!important;display:grid!important;place-items:center!important;background:rgba(9,34,58,.84)!important;border:1px solid rgba(25,140,255,.18)!important}
body.sato-site .about-card-icon svg{width:32px!important;height:32px!important;stroke:var(--orange)!important;fill:none!important;stroke-width:1.6!important}
body.sato-site .about-image{height:100%!important;min-height:560px!important;border-radius:22px!important;overflow:hidden!important;border:1px solid rgba(149,190,231,.22)!important;background:#07192b!important}
body.sato-site .about-image img{width:100%!important;height:100%!important;min-height:560px!important;aspect-ratio:auto!important;object-fit:cover!important;object-position:center!important;border:0!important;border-radius:0!important;animation:satoAboutZoom 18s ease-in-out infinite alternate!important}
@keyframes satoAboutZoom{from{transform:scale(1.005)}to{transform:scale(1.045)}}

/* Process numbers sit clearly above the connector, never on top of it. */
body.sato-site .journey-track{padding-top:58px!important;overflow:visible!important}
body.sato-site .journey-line{top:96px!important}
body.sato-site .journey-top{position:relative!important;padding-top:18px!important}
body.sato-site .process-number{
  position:absolute!important;
  top:-44px!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  z-index:5!important;
  padding:4px 9px!important;
  border-radius:999px!important;
  background:#061524!important;
  color:var(--blue)!important;
  font-size:14px!important;
  line-height:1!important;
  font-weight:650!important;
  letter-spacing:.08em!important;
  box-shadow:0 0 0 6px #061524!important;
}
body.sato-site .journey-step:nth-child(n+4) .process-number{color:var(--orange)!important}
body.sato-site .process-icon{position:relative!important;z-index:3!important}
body.sato-site .journey-step h3{font-weight:560!important;letter-spacing:-.025em!important}
body.sato-site .journey-step p,body.sato-site .journey-step li{font-weight:400!important}

/* Official bundled SVG logos: visible by default, colour and lift on hover. */
body.sato-site .partners-label span{font-weight:580!important;letter-spacing:.08em!important}
body.sato-site .partner-chip img{display:block!important;max-width:170px!important;max-height:52px!important;width:auto!important;height:auto!important;opacity:.76!important;filter:grayscale(1) brightness(1.85)!important;transition:transform .3s ease,filter .3s ease,opacity .3s ease!important}
body.sato-site .partner-chip:hover img{transform:translateY(-4px) scale(1.025)!important;filter:none!important;opacity:1!important}

@media(max-width:1100px){
  body.sato-site .about-layout{grid-template-columns:1fr!important}
  body.sato-site .about-image,body.sato-site .about-image img{min-height:440px!important}
}
@media(max-width:782px){
  body.sato-site .about-story-card{grid-template-columns:54px 1fr!important;padding:20px!important;gap:16px!important}
  body.sato-site .about-card-icon{width:50px!important;height:50px!important}
  body.sato-site .about-image,body.sato-site .about-image img{min-height:300px!important}
  body.sato-site .journey-track{padding-top:20px!important}
  body.sato-site .journey-line{display:none!important}
  body.sato-site .process-number{position:static!important;display:inline-block!important;transform:none!important;margin-bottom:12px!important;box-shadow:none!important}
}
@media(prefers-reduced-motion:reduce){body.sato-site .about-image img{animation:none!important}}

/* v6.1 hotfix: keep process numbers fully visible above the connector line */
body.sato-site .journey-track{
  padding-top:24px!important;
  overflow:visible!important;
}
body.sato-site .journey-top{
  position:relative!important;
  padding-top:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
}
body.sato-site .process-number{
  position:relative!important;
  top:auto!important;
  left:auto!important;
  transform:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:38px!important;
  height:28px!important;
  margin:0 0 34px!important;
  padding:0 10px!important;
  z-index:8!important;
  background:#061524!important;
  box-shadow:0 0 0 7px #061524!important;
}
body.sato-site .journey-line{
  top:72px!important;
  z-index:1!important;
}
body.sato-site .process-icon{
  margin-top:0!important;
  z-index:4!important;
}
@media(max-width:782px){
  body.sato-site .process-number{margin:0 0 14px!important;box-shadow:none!important}
}

/* v6.2 mobile refinement */
@media (max-width: 900px) {
  body.sato-site .journey-track-static{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:18px!important;
  }
  body.sato-site .journey-track-static .journey-step{
    border:1px solid rgba(65,155,235,.22)!important;
    border-radius:16px!important;
    padding:24px 22px!important;
    background:rgba(7,25,43,.58)!important;
  }
  body.sato-site .journey-track-static .journey-step:nth-child(6){
    grid-column:1 / -1!important;
    justify-self:center!important;
    width:min(100%,420px)!important;
  }
  body.sato-site .journey-track-static .journey-step:nth-child(6) .journey-top,
  body.sato-site .journey-track-static .journey-step:nth-child(6) h3,
  body.sato-site .journey-track-static .journey-step:nth-child(6) p,
  body.sato-site .journey-track-static .journey-step:nth-child(6) ul{
    text-align:center!important;
  }
  body.sato-site .journey-track-static .journey-step:nth-child(6) .journey-top{
    justify-content:center!important;
  }
  body.sato-site .journey-track-static .journey-step:nth-child(6) ul{
    display:inline-block!important;
  }
}

@media (max-width: 760px) {
  body.sato-site .about-copy .sato-kicker{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    color:var(--orange)!important;
    margin:0 0 22px!important;
    font-size:12px!important;
    letter-spacing:.14em!important;
    text-align:left!important;
  }
  body.sato-site .journey-intro{
    text-align:center!important;
    padding-inline:10px!important;
  }
  body.sato-site .journey-intro .journey-title{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    text-align:center!important;
    gap:2px!important;
    font-size:clamp(31px,9.5vw,44px)!important;
    line-height:1.08!important;
  }
  body.sato-site .journey-intro .journey-title span{
    margin:0!important;
  }
  body.sato-site .journey-intro p{
    text-align:center!important;
    margin-inline:auto!important;
  }
  body.sato-site .journey-track-static{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
  body.sato-site .journey-track-static .journey-step,
  body.sato-site .journey-track-static .journey-step:nth-child(6){
    grid-column:auto!important;
    width:100%!important;
    justify-self:stretch!important;
    text-align:left!important;
  }
  body.sato-site .journey-track-static .journey-step:nth-child(6) .journey-top,
  body.sato-site .journey-track-static .journey-step:nth-child(6) h3,
  body.sato-site .journey-track-static .journey-step:nth-child(6) p,
  body.sato-site .journey-track-static .journey-step:nth-child(6) ul{
    text-align:left!important;
  }
  body.sato-site .journey-track-static .journey-step:nth-child(6) .journey-top{
    justify-content:flex-start!important;
  }
  body.sato-site .journey-track-static .journey-step:nth-child(6) ul{
    display:block!important;
  }

  body.sato-site .sato-footer{
    padding:28px 0 0!important;
  }
  body.sato-site .footer-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:0!important;
    text-align:center!important;
  }
  body.sato-site .footer-grid>div{
    padding:14px 12px!important;
    border-right:0!important;
    border-bottom:1px solid rgba(154,194,232,.10)!important;
    align-items:center!important;
  }
  body.sato-site .footer-grid>div:last-child{
    border-bottom:0!important;
  }
  body.sato-site .footer-brand{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
  }
  body.sato-site .footer-brand img{
    width:170px!important;
  }
  body.sato-site .footer-brand .socials{
    justify-content:center!important;
  }
  body.sato-site .footer-item{
    align-items:center!important;
    text-align:center!important;
    gap:5px!important;
  }
  body.sato-site .footer-rights{
    margin-top:0!important;
    padding:16px 20px 18px!important;
    text-align:center!important;
  }
}

/* v6.3 language-view fail-safe */
.sato-loader{animation:satoLoaderFailsafe 0s linear 3s forwards}
@keyframes satoLoaderFailsafe{to{opacity:0;visibility:hidden;pointer-events:none}}


/* v6.4 mobile typography, motion and footer refinement */
@media (max-width: 760px) {
  body.sato-site .sato-section{padding:76px 0!important}
  body.sato-site .section-head{margin-bottom:32px!important}
  body.sato-site .section-head h2{
    font-size:clamp(31px,9vw,43px)!important;
    line-height:1.12!important;
    font-weight:480!important;
    letter-spacing:-.04em!important;
  }
  body.sato-site .section-head>span,
  body.sato-site .sato-kicker,
  body.sato-site .journey-intro>span{
    font-size:12px!important;
    letter-spacing:.13em!important;
  }
  body.sato-site .service-trigger h3{
    font-size:22px!important;
    line-height:1.22!important;
    font-weight:590!important;
  }
  body.sato-site .service-trigger p,
  body.sato-site .service-detail-panel p,
  body.sato-site .service-detail-panel li{
    font-size:16px!important;
    line-height:1.65!important;
  }
  body.sato-site .about-story-card h3{
    font-size:22px!important;
    line-height:1.25!important;
  }
  body.sato-site .about-story-card p{
    font-size:16px!important;
    line-height:1.7!important;
  }
  body.sato-site .journey-intro .journey-title{
    font-size:clamp(34px,10vw,48px)!important;
    font-weight:330!important;
    line-height:1.12!important;
  }
  body.sato-site .journey-intro p{
    font-size:17px!important;
    line-height:1.7!important;
  }
  body.sato-site .journey-step h3{
    font-size:22px!important;
    font-weight:560!important;
  }
  body.sato-site .journey-step p,
  body.sato-site .journey-step li{
    font-size:15px!important;
    line-height:1.6!important;
  }
  body.sato-site .metric strong{font-size:34px!important}
  body.sato-site .metric span{font-size:15px!important}
  body.sato-site .contact-cta h2{
    font-size:25px!important;
    line-height:1.25!important;
    font-weight:540!important;
  }
  body.sato-site .contact-cta p{font-size:16px!important;line-height:1.6!important}

  /* Mobile reveal motion: visible, restrained and staggered */
  body.sato-site .reveal{
    opacity:0!important;
    transform:translateY(28px) scale(.985)!important;
    filter:blur(4px)!important;
    transition:opacity .72s ease,transform .8s cubic-bezier(.2,.8,.2,1),filter .72s ease!important;
  }
  body.sato-site .reveal.visible{
    opacity:1!important;
    transform:none!important;
    filter:none!important;
  }
  body.sato-site .services-grid .service-card:nth-child(2){transition-delay:.06s!important}
  body.sato-site .services-grid .service-card:nth-child(3){transition-delay:.12s!important}
  body.sato-site .services-grid .service-card:nth-child(4){transition-delay:.18s!important}
  body.sato-site .services-grid .service-card:nth-child(5){transition-delay:.24s!important}
  body.sato-site .about-story-card{
    transition:transform .4s ease,border-color .4s ease,box-shadow .4s ease!important;
  }
  body.sato-site .about-story-card:nth-child(2){transition-delay:.08s!important}
  body.sato-site .about-story-card:nth-child(3){transition-delay:.16s!important}
  body.sato-site .journey-step:nth-child(2){transition-delay:.05s!important}
  body.sato-site .journey-step:nth-child(3){transition-delay:.10s!important}
  body.sato-site .journey-step:nth-child(4){transition-delay:.15s!important}
  body.sato-site .journey-step:nth-child(5){transition-delay:.20s!important}
  body.sato-site .journey-step:nth-child(6){transition-delay:.25s!important}
  body.sato-site .about-image.visible img{animation:satoAboutZoomMobile 12s ease-in-out infinite alternate!important}

  /* More compact and legible mobile footer */
  body.sato-site .sato-footer{padding:20px 0 0!important}
  body.sato-site .footer-grid>div{padding:11px 10px!important}
  body.sato-site .footer-brand img{width:150px!important}
  body.sato-site .footer-item strong{font-size:14px!important}
  body.sato-site .footer-item a,
  body.sato-site .footer-item span{font-size:15px!important;line-height:1.5!important}
  body.sato-site .footer-rights{
    margin-top:0!important;
    padding:16px 12px 18px!important;
    font-size:13px!important;
    line-height:1.4!important;
    white-space:normal!important;
  }
}
@keyframes satoAboutZoomMobile{from{transform:scale(1.01)}to{transform:scale(1.055)}}
@media(prefers-reduced-motion:reduce){body.sato-site .about-image.visible img{animation:none!important}}

/* v6.5: reliable language rendering and mobile About label */
.sato-loader{display:none!important}
@media (max-width:760px){
  body.sato-site .about-copy{opacity:1!important;transform:none!important;filter:none!important;visibility:visible!important}
  body.sato-site .about-copy>.sato-kicker{
    display:flex!important;align-items:center!important;visibility:visible!important;opacity:1!important;
    position:relative!important;z-index:4!important;min-height:24px!important;margin:0 0 24px!important;
    color:#ff6f00!important;font-size:13px!important;font-weight:650!important;letter-spacing:.14em!important;
  }
  body.sato-site .about-copy>.sato-kicker:before{content:"";display:block;width:34px;height:2px;margin-right:12px;background:#ff6f00}
}

/* v6.7 — mobile-first layout refinement */
@media (max-width: 760px) {
  :root{--shell:calc(100vw - 28px)}

  body.sato-site{
    font-size:16px!important;
    -webkit-text-size-adjust:100%;
  }
  body.sato-site .sato-shell{width:var(--shell)!important}
  body.sato-site .sato-section{padding:68px 0!important}

  /* Hero should feel intentionally mobile, not scaled desktop. */
  body.sato-site .sato-header{padding:14px 0!important}
  body.sato-site .sato-header-inner{align-items:flex-start!important}
  body.sato-site .sato-logo img{width:190px!important;max-width:58vw!important}
  body.sato-site .sato-head-actions{padding-top:4px!important;gap:10px!important}
  body.sato-site .sato-lang{font-size:13px!important;gap:7px!important}
  body.sato-site .sato-hero{min-height:92svh!important}
  body.sato-site .sato-hero-grid{
    min-height:92svh!important;
    padding:118px 0 72px!important;
    display:flex!important;
    align-items:flex-end!important;
  }
  body.sato-site .sato-hero-copy{max-width:100%!important;width:100%!important}
  body.sato-site .sato-hero h1{
    max-width:94%!important;
    font-size:clamp(38px,11.5vw,54px)!important;
    line-height:1.05!important;
    letter-spacing:-.045em!important;
    margin:18px 0 20px!important;
  }
  body.sato-site .sato-hero-tagline{
    font-size:12px!important;
    line-height:1.55!important;
    letter-spacing:.22em!important;
  }
  body.sato-site .sato-hero-visual{
    right:-54%!important;
    top:3%!important;
    width:158%!important;
    height:92%!important;
    opacity:.52!important;
    background-position:64% center!important;
  }
  body.sato-site .sato-hero:after{
    background:linear-gradient(180deg,rgba(6,21,36,.18) 0%,rgba(6,21,36,.5) 40%,#061524 88%)!important;
  }

  /* Larger, more readable mobile section typography. */
  body.sato-site .section-head{margin-bottom:28px!important}
  body.sato-site .section-head h2{
    font-size:clamp(32px,9.5vw,44px)!important;
    line-height:1.12!important;
    font-weight:440!important;
    letter-spacing:-.035em!important;
  }
  body.sato-site .section-head p{
    font-size:17px!important;
    line-height:1.65!important;
  }

  /* Services become true mobile cards. */
  body.sato-site .services-grid{gap:14px!important}
  body.sato-site .service-trigger{
    min-height:0!important;
    padding:24px 21px!important;
  }
  body.sato-site .service-icon svg{width:52px!important;height:52px!important}
  body.sato-site .service-trigger h3{
    font-size:23px!important;
    line-height:1.2!important;
    margin:18px 0 10px!important;
  }
  body.sato-site .service-trigger p{
    font-size:16.5px!important;
    line-height:1.65!important;
  }
  body.sato-site .service-arrow{margin-top:20px!important}
  body.sato-site .service-detail-panel.open{
    padding:24px 20px!important;
    max-height:900px!important;
  }
  body.sato-site .service-detail-panel h3{font-size:27px!important}

  /* About: image first, then a clearly visible section label and content. */
  body.sato-site .about-layout{
    display:flex!important;
    flex-direction:column!important;
    gap:28px!important;
  }
  body.sato-site .about-visual-column{
    order:1!important;
    width:100%!important;
    max-width:none!important;
  }
  body.sato-site .about-copy{
    order:2!important;
    width:100%!important;
    display:block!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
  }
  body.sato-site .about-image,
  body.sato-site .about-image img{
    width:100%!important;
    min-height:0!important;
    height:auto!important;
    aspect-ratio:16/10!important;
    object-fit:cover!important;
  }
  body.sato-site .about-copy>.sato-kicker{
    display:flex!important;
    align-items:center!important;
    visibility:visible!important;
    opacity:1!important;
    position:relative!important;
    z-index:5!important;
    min-height:28px!important;
    margin:0 0 20px!important;
    color:var(--orange)!important;
    font-size:13px!important;
    font-weight:650!important;
    letter-spacing:.14em!important;
    text-transform:uppercase!important;
  }
  body.sato-site .about-copy>.sato-kicker:before{
    content:""!important;
    display:block!important;
    flex:0 0 34px!important;
    width:34px!important;
    height:2px!important;
    margin-right:12px!important;
    background:var(--orange)!important;
  }
  body.sato-site .about-story{gap:13px!important;margin-top:0!important}
  body.sato-site .about-story-card{
    grid-template-columns:58px minmax(0,1fr)!important;
    gap:16px!important;
    padding:21px 18px!important;
    border-radius:15px!important;
  }
  body.sato-site .about-card-icon{width:54px!important;height:54px!important}
  body.sato-site .about-story-card h3{
    font-size:22px!important;
    line-height:1.24!important;
    font-weight:540!important;
  }
  body.sato-site .about-story-card p{
    font-size:16.5px!important;
    line-height:1.68!important;
  }

  /* Stats: two balanced columns on mobile, one on very narrow devices. */
  body.sato-site .metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.sato-site .metric{
    min-height:148px!important;
    padding:22px 16px!important;
    grid-template-columns:1fr!important;
    grid-template-rows:auto auto auto!important;
    text-align:center!important;
    gap:8px!important;
    border-right:1px solid var(--line)!important;
    border-bottom:1px solid var(--line)!important;
  }
  body.sato-site .metric:nth-child(even){border-right:0!important}
  body.sato-site .metric:nth-last-child(-n+2){border-bottom:0!important}
  body.sato-site .metric-icon{grid-row:auto!important;margin:auto!important}
  body.sato-site .metric-icon svg{width:44px!important;height:44px!important}
  body.sato-site .metric strong{font-size:31px!important}
  body.sato-site .metric .word-metric{font-size:22px!important;line-height:1.1!important}
  body.sato-site .metric span{font-size:14px!important;line-height:1.35!important}

  /* Journey: clearer rhythm and readable copy. */
  body.sato-site .journey-intro .journey-title{
    font-size:clamp(35px,10.5vw,48px)!important;
    line-height:1.1!important;
    font-weight:330!important;
  }
  body.sato-site .journey-intro p{font-size:17px!important;line-height:1.65!important}
  body.sato-site .journey-step{
    padding:23px 20px 25px!important;
    border-radius:14px!important;
  }
  body.sato-site .journey-step h3{font-size:23px!important;line-height:1.22!important}
  body.sato-site .journey-step p,
  body.sato-site .journey-step li{font-size:16px!important;line-height:1.6!important}

  /* CTA and footer: compact, touch-friendly and intentionally stacked. */
  body.sato-site .contact-cta{
    grid-template-columns:52px 1fr!important;
    gap:14px!important;
    padding:22px 18px!important;
  }
  body.sato-site .contact-cta h2{font-size:24px!important;line-height:1.22!important}
  body.sato-site .contact-cta p{font-size:16px!important}
  body.sato-site .contact-cta button{min-height:52px!important;margin-top:4px!important}

  body.sato-site .sato-footer{padding:18px 0 0!important}
  body.sato-site .footer-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:0!important;
    text-align:center!important;
  }
  body.sato-site .footer-grid>div{
    padding:13px 8px!important;
    border-right:0!important;
    border-bottom:1px solid rgba(154,194,232,.1)!important;
    align-items:center!important;
    justify-content:center!important;
  }
  body.sato-site .footer-grid>div:last-child{border-bottom:0!important}
  body.sato-site .footer-brand{align-items:center!important}
  body.sato-site .footer-brand img{width:158px!important;margin-bottom:8px!important}
  body.sato-site .footer-item{align-items:center!important;text-align:center!important}
  body.sato-site .footer-item strong{font-size:14px!important}
  body.sato-site .footer-item a,
  body.sato-site .footer-item span{font-size:15.5px!important;line-height:1.5!important}
  body.sato-site .socials{justify-content:center!important}
  body.sato-site .footer-rights{
    padding:15px 10px 18px!important;
    font-size:13px!important;
    text-align:center!important;
  }
}

@media (max-width: 390px) {
  :root{--shell:calc(100vw - 22px)}
  body.sato-site .metrics-grid{grid-template-columns:1fr!important}
  body.sato-site .metric{border-right:0!important;border-bottom:1px solid var(--line)!important}
  body.sato-site .metric:last-child{border-bottom:0!important}
  body.sato-site .about-story-card{grid-template-columns:48px minmax(0,1fr)!important;padding:18px 15px!important}
  body.sato-site .about-card-icon{width:46px!important;height:46px!important}
}

/* v6.8 — mobile About order: title → image → cards */
@media (max-width: 760px) {
  body.sato-site .about-layout{
    display:flex!important;
    flex-direction:column!important;
    gap:22px!important;
  }

  /* Let the title and card list participate independently in the flex order. */
  body.sato-site .about-copy{
    display:contents!important;
  }

  body.sato-site .about-copy>.sato-kicker{
    order:1!important;
    display:flex!important;
    width:100%!important;
    margin:0 0 4px!important;
    visibility:visible!important;
    opacity:1!important;
    transform:none!important;
    color:var(--orange)!important;
    font-size:14px!important;
    font-weight:600!important;
    letter-spacing:.13em!important;
  }

  body.sato-site .about-visual-column{
    order:2!important;
    width:100%!important;
    max-width:none!important;
    margin:0 0 6px!important;
  }

  body.sato-site .about-story{
    order:3!important;
    width:100%!important;
    display:grid!important;
    gap:14px!important;
    margin:0!important;
  }

  body.sato-site .about-image,
  body.sato-site .about-image img{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:16/10!important;
    object-fit:cover!important;
    object-position:center!important;
    border-radius:18px!important;
  }
}

/* v6.9 — dedicated mobile collision fixes */
@media (max-width: 760px) {
  /* Give the hero copy its own safe area and keep the scroll cue below it. */
  body.sato-site .sato-hero{
    min-height:100svh!important;
  }
  body.sato-site .sato-hero-grid{
    min-height:100svh!important;
    align-items:flex-start!important;
    padding-top:clamp(118px,18vh,156px)!important;
    padding-bottom:150px!important;
  }
  body.sato-site .sato-hero-copy{
    width:100%!important;
    max-width:calc(100vw - 34px)!important;
    padding-bottom:16px!important;
  }
  body.sato-site .sato-hero h1{
    font-size:clamp(38px,11vw,54px)!important;
    line-height:1.04!important;
    max-width:100%!important;
  }
  body.sato-site .sato-hero-tagline{
    font-size:12px!important;
    letter-spacing:.13em!important;
    line-height:1.55!important;
  }
  body.sato-site .scroll-cue{
    top:auto!important;
    bottom:max(52px,8svh)!important;
    left:50%!important;
    transform:translateX(-50%)!important;
    margin:0!important;
    z-index:12!important;
  }
  body.sato-site .scroll-mouse{
    width:25px!important;
    height:39px!important;
  }

  /* On mobile, the service arrow participates in normal flow. */
  body.sato-site .service-trigger{
    position:relative!important;
    min-height:0!important;
    padding:26px 22px 22px!important;
  }
  body.sato-site .service-trigger p{
    margin-bottom:0!important;
  }
  body.sato-site .service-arrow{
    position:relative!important;
    inset:auto!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    top:auto!important;
    align-self:center!important;
    flex:0 0 48px!important;
    width:48px!important;
    height:48px!important;
    margin:24px auto 0!important;
    transform:none!important;
  }
  body.sato-site .service-card:hover .service-arrow{
    transform:translateY(-2px)!important;
  }
  body.sato-site .service-card.active .service-arrow{
    transform:rotate(180deg)!important;
  }
}

@media (max-width: 420px) and (max-height: 760px) {
  body.sato-site .sato-hero-grid{
    padding-top:104px!important;
    padding-bottom:128px!important;
  }
  body.sato-site .sato-hero h1{
    font-size:clamp(34px,10.5vw,43px)!important;
  }
  body.sato-site .scroll-cue{
    bottom:34px!important;
  }
}
