
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&family=Roboto:wght@500;600;700&display=swap');
:root{--navy:#0065E2;--deep:#004DAF;--blue:#0065E2;--pale:#F4F8FE;--text:#1d2933;--muted:#687782;--line:#dbe3e8;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Noto Sans JP",sans-serif;color:var(--text);line-height:1.8;background:#fff}a{text-decoration:none;color:inherit}.container{width:min(1180px,calc(100% - 64px));margin:auto}.narrow{width:min(820px,100%);margin:auto}.section{padding:105px 0}.pale{background:var(--pale)}
.site-header{background:#fff;position:sticky;top:0;z-index:50;box-shadow:0 1px 0 rgba(0,0,0,.06)}.header-main{height:78px;max-width:1440px;margin:auto;display:flex;justify-content:space-between;align-items:center}.brand{display:flex;align-items:center;gap:14px;padding:0 28px}.brand-mark{width:44px;height:44px;display:grid;place-items:center;background:var(--navy);color:#fff;font:700 25px Roboto;transform:skew(-8deg)}.brand-copy{display:flex;flex-direction:column;line-height:1.35}.brand-copy strong{font-size:15px;letter-spacing:.05em}.brand-copy small{font-size:14px;letter-spacing:.12em;color:#71808d;margin-top:4px}.header-tools{display:flex;height:100%}.header-tools a{padding:0 24px;display:flex;align-items:center;justify-content:center;gap:9px;border-left:1px solid #e9eef1;color:var(--navy)}.header-tools a small{font-size:14px;letter-spacing:.12em}.header-tools a strong{font:700 17px Roboto}.header-tools .mail-tool{background:var(--navy);color:#fff;font-size:14px;min-width:145px}
.global-nav{height:58px;display:flex;justify-content:center;border-top:1px solid #eef2f4}.nav-item{min-width:135px;padding:7px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-left:1px solid #edf1f3;position:relative}.nav-item span{font-size:14px;font-weight:600}.nav-item small{font-size:14px;color:#84919b;letter-spacing:.14em}.nav-item:after{content:"";position:absolute;bottom:0;left:50%;width:0;height:3px;background:var(--blue);transition:.25s;transform:translateX(-50%)}.nav-item:hover:after,.nav-item.active:after{width:100%}.nav-item.active{color:var(--blue)}
.home-hero{height:680px;position:relative;display:flex;align-items:center;color:#fff;overflow:hidden}.home-hero-bg{position:absolute;inset:0;background:url('https://images.unsplash.com/photo-1494412519320-aa613dfb7738?auto=format&fit=crop&w=2200&q=85') center/cover}.home-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,28,49,.88),rgba(3,28,49,.62) 42%,rgba(3,28,49,.08))}.home-hero-inner{position:relative;z-index:2}.hero-en{font-size:14px;letter-spacing:.28em}.home-hero h1{font-size:70px;line-height:1.2;margin:18px 0 22px;letter-spacing:.03em}.home-hero h1 em{font-style:normal}.hero-copy{font-size:16px;line-height:2}.hero-btns{display:flex;gap:12px;margin-top:30px}.btn{min-width:180px;height:54px;padding:0 25px;display:inline-flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;letter-spacing:.04em;border:0;cursor:pointer}.white-btn{background:#fff;color:var(--navy)}.ghost-btn{border:1px solid rgba(255,255,255,.65);color:#fff}.navy-btn{background:var(--navy);color:#fff}
.split{display:grid;grid-template-columns:42% 58%;gap:90px}.eyebrow{display:block;color:var(--blue);font-size:14px;letter-spacing:.22em;margin-bottom:14px}.eyebrow.light{color:#9BC8FF}.section-title h2,.intro-center h2{font-size:38px;line-height:1.55;margin:0}.lead-copy p{margin:0 0 18px;color:#52616d;font-size:14px}.arrow-link{display:inline-flex;align-items:center;gap:22px;color:var(--navy);font-size:14px;font-weight:600;border-bottom:1px solid var(--navy);padding-bottom:7px;margin-top:12px}.section-head-row{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:42px}.section-head-row>p{font-size:14px;color:#667580;margin:0}
.home-business-grid{display:grid;grid-template-columns:1.3fr 1fr;grid-template-rows:240px 240px;gap:18px}.visual-card{position:relative;overflow:hidden;color:#fff}.visual-card.tall{grid-row:1/3}.vc-bg{position:absolute;inset:0;background-size:cover;background-position:center;transition:.45s}.visual-card:hover .vc-bg{transform:scale(1.04)}.bg-export{background-image:url('https://images.unsplash.com/photo-1578575437130-527eed3abbec?auto=format&fit=crop&w=1400&q=80')}.bg-procurement{background-image:url('https://images.unsplash.com/photo-1580674684081-7617fbf3d745?auto=format&fit=crop&w=1000&q=80')}.bg-logistics{background-image:url('https://images.unsplash.com/photo-1586528116311-ad8dd3c8310d?auto=format&fit=crop&w=1000&q=80')}.vc-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(2,25,44,.80),rgba(2,25,44,.05) 70%)}.vc-text{position:absolute;left:28px;right:28px;bottom:25px}.vc-text span{font-size:14px;letter-spacing:.14em;color:#CFE4FF}.vc-text h3{font-size:22px;margin:5px 0}.vc-text p{font-size:14px;margin:0;color:#d4e0e8}.center-action{text-align:center;margin-top:38px}
.product-four{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.product-tile{border:1px solid var(--line);background:#fff;transition:.25s}.product-tile:hover{transform:translateY(-4px);box-shadow:0 15px 35px rgba(7,52,93,.08)}.pt-img{height:220px;background-size:cover;background-position:center}.p-food{background-image:url('https://images.unsplash.com/photo-1534482421-64566f976cfa?auto=format&fit=crop&w=900&q=80')}.p-beverage{background-image:url('https://images.unsplash.com/photo-1544145945-f90425340c7e?auto=format&fit=crop&w=900&q=80')}.p-daily{background-image:url('https://images.unsplash.com/photo-1583947581924-860bda6a26df?auto=format&fit=crop&w=900&q=80')}.p-household{background-image:url('https://images.unsplash.com/photo-1586023492125-27b2c045efd7?auto=format&fit=crop&w=900&q=80')}.product-tile>div:last-child{padding:20px}.product-tile small{font-size:14px;color:var(--blue);letter-spacing:.12em}.product-tile h3{font-size:17px;margin:3px 0}
.home-strength{background:var(--deep);color:#fff;padding:85px 0}.home-strength-inner{display:grid;grid-template-columns:38% 62%;gap:65px}.invert h2{color:#fff}.invert .eyebrow{color:#8CC0FF}.strength-mini{display:grid;grid-template-columns:1fr 1fr}.strength-mini div{padding:28px;border-top:1px solid rgba(255,255,255,.18)}.strength-mini span{display:block;font-size:14px;color:#73AEFF;margin-bottom:10px}.strength-mini strong{font-size:15px}
.news-layout{display:grid;grid-template-columns:28% 72%;gap:65px}.news-list{border-top:1px solid var(--line)}.news-list a{display:grid;grid-template-columns:100px 70px 1fr;gap:15px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line)}.news-list time{font-size:14px;color:#85939d}.news-list span{font-size:14px;color:var(--blue);border:1px solid #b8cfdf;text-align:center;padding:2px 4px}.news-list p{font-size:14px;margin:0;color:#4d5c67}
.home-company-link{display:grid;grid-template-columns:60% 40%;min-height:430px}.hc-image{background:url('https://images.unsplash.com/photo-1497366811353-6870744d04b2?auto=format&fit=crop&w=1400&q=80') center/cover}.hc-panel{background:#F4F8FE;padding:70px;display:flex;flex-direction:column;justify-content:center}.hc-panel h2{font-size:38px;margin:0 0 12px}.hc-panel p{font-size:14px;color:#60707c;margin-bottom:25px}
.lower-hero{height:340px;position:relative;color:#fff;display:flex;align-items:center;overflow:hidden}.lower-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center}.business-hero .lower-hero-bg{background-image:url('https://images.unsplash.com/photo-1578575437130-527eed3abbec?auto=format&fit=crop&w=1800&q=80')}.products-hero .lower-hero-bg{background-image:url('../img/banner-products-uploaded.png');background-position:center center}.news-hero .lower-hero-bg{background-image:url('https://images.unsplash.com/photo-1497366754035-f200968a6e72?auto=format&fit=crop&w=1800&q=80')}.company-hero .lower-hero-bg{background-image:url('https://images.unsplash.com/photo-1497366216548-37526070297c?auto=format&fit=crop&w=1800&q=80')}.recruit-hero .lower-hero-bg{background-image:url('https://images.unsplash.com/photo-1521737711867-e3b97375f902?auto=format&fit=crop&w=1800&q=80')}.contact-hero .lower-hero-bg{background-image:url('https://images.unsplash.com/photo-1497366754035-f200968a6e72?auto=format&fit=crop&w=1800&q=80')}.lower-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,34,58,.88),rgba(3,34,58,.35))}.lower-hero-inner{position:relative;z-index:2}.lower-hero-inner>span{font-size:14px;letter-spacing:.23em}.lower-hero h1{font-size:42px;margin:6px 0}.lower-hero p{font-size:14px}.breadcrumb{border-bottom:1px solid var(--line);background:#fff}.breadcrumb .container{height:50px;display:flex;align-items:center;gap:13px;font-size:14px;color:#7b8993}.breadcrumb a{color:var(--blue)}
.intro-center{text-align:center}.intro-center p{font-size:14px;color:#62717d;margin-top:20px}.service-block{padding:80px 0}.service-grid{display:grid;grid-template-columns:52% 48%;min-height:410px}.service-grid.reverse{grid-template-columns:48% 52%}.service-grid.reverse .service-photo{order:2}.service-grid.reverse .service-copy{order:1;padding-left:0;padding-right:65px}.service-photo{background-size:cover;background-position:center}.s-export{background-image:url('https://images.unsplash.com/photo-1494412519320-aa613dfb7738?auto=format&fit=crop&w=1200&q=80')}.s-procure{background-image:url('../img/tokyo-tower.png')}.s-logistics{background-image:url('../img/business-logistics.png')}.service-copy{padding:35px 0 30px 65px;align-self:center}.service-num{font-size:14px;color:#9aa8b2}.service-copy small{display:block;color:var(--blue);font-size:14px;letter-spacing:.15em;margin-top:6px}.service-copy h2{font-size:30px;margin:8px 0 16px}.service-copy p,.service-copy li{font-size:14px;color:#596a76}.service-copy ul{padding-left:18px}.flow-section{background:#fff}.center{text-align:center}.flow-grid{display:grid;grid-template-columns:repeat(5,1fr);margin-top:45px}.flow-grid div{padding:25px;text-align:center;border-left:1px solid var(--line)}.flow-grid div:last-child{border-right:1px solid var(--line)}.flow-grid span{font-size:14px;color:var(--blue)}.flow-grid b{display:block;font-size:15px;margin:9px 0}.flow-grid p{font-size:14px;color:#74828c;margin:0}
.product-detail{display:grid;grid-template-columns:50% 50%;min-height:420px}.product-detail.reverse .pd-img{order:2}.product-detail.reverse .pd-copy{order:1}.pd-img{background-size:cover;background-position:center}.pd-food{background-image:url('https://images.unsplash.com/photo-1534482421-64566f976cfa?auto=format&fit=crop&w=1200&q=80')}.pd-beverage{background-image:url('https://images.unsplash.com/photo-1544145945-f90425340c7e?auto=format&fit=crop&w=1200&q=80')}.pd-daily{background-image:url('../img/product-daily-necessities.png')}.pd-household{background-image:url('https://images.unsplash.com/photo-1586023492125-27b2c045efd7?auto=format&fit=crop&w=1200&q=80')}.pd-copy{padding:70px 8vw;align-self:center}.pd-copy>span{font-size:14px;color:var(--blue);letter-spacing:.14em}.pd-copy h2{font-size:32px;margin:6px 0 14px}.pd-copy p,.pd-copy li{font-size:14px;color:#5d6d78}.product-contact{text-align:center;background:#EEF5FF}.product-contact h2{font-size:30px;margin-top:0}.product-contact p{font-size:14px;color:#61717d;margin-bottom:22px}
.news-page{max-width:900px}.news-filter{display:flex;gap:8px;margin-bottom:35px}.news-filter a{padding:9px 22px;border:1px solid var(--line);font-size:14px}.news-filter .selected{background:var(--navy);color:#fff}.large-news a{grid-template-columns:105px 80px 1fr 30px;padding:23px 0}.large-news b{color:var(--blue)}
.company-photo-wide{height:420px;background:url('../img/company-photo-wide.png') center/cover}.company-table{margin-top:40px;border-top:1px solid var(--line)}.company-table>div{display:grid;grid-template-columns:180px 1fr;border-bottom:1px solid var(--line);padding:18px 20px}.company-table dt{font-size:14px;font-weight:600}.company-table dd{margin:0;font-size:14px;color:#566671}.access-box{display:grid;grid-template-columns:60% 40%;gap:45px;align-items:center;margin-top:40px}.map-placeholder{height:290px;background:#EAF3FF;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#85949e}.map-placeholder span{font:700 32px Roboto;color:#c1ccd3}.map-placeholder p{font-size:14px}.access-box h3{font-size:19px}.access-box p{font-size:14px;color:#5f707b}
.recruit-visual{height:430px;background:url('https://images.unsplash.com/photo-1521737711867-e3b97375f902?auto=format&fit=crop&w=1900&q=80') center/cover}
.contact-form{margin-top:55px;border-top:1px solid var(--line)}.contact-form>label{display:grid;grid-template-columns:220px 1fr;gap:25px;padding:22px 0;border-bottom:1px solid var(--line);align-items:start}.contact-form>label>span{font-size:14px;font-weight:600}.contact-form b{font-size:14px;background:#b33b3b;color:#fff;padding:3px 6px;margin-left:8px}.contact-form em{font-style:normal;font-size:14px;background:#8997a0;color:#fff;padding:3px 6px;margin-left:8px}.contact-form input,.contact-form select,.contact-form textarea{width:100%;padding:13px 14px;border:1px solid #cfd9df;background:#fff;font-family:inherit}.privacy-check{display:flex;justify-content:center;gap:8px;margin:28px 0;font-size:14px}.submit-btn{display:flex;margin:0 auto}.contact-direct{display:grid;grid-template-columns:1fr 1fr;margin-top:65px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.contact-direct>div{padding:28px;text-align:center}.contact-direct>div+div{border-left:1px solid var(--line)}.contact-direct small{display:block;font-size:14px;color:var(--blue)}.contact-direct strong{font:700 25px Roboto;color:var(--navy)}.contact-direct p{font-size:14px;color:#788690;margin:5px 0 0}
.footer-contact{background:var(--navy);color:#fff;padding:65px 0}.footer-contact-inner{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.footer-contact h2{font-size:28px;line-height:1.6;margin:0}.footer-cta{display:grid;grid-template-columns:1fr 1fr}.footer-cta a{min-height:115px;padding:22px;display:flex;flex-direction:column;justify-content:center;border:1px solid rgba(255,255,255,.35)}.footer-cta small{font-size:14px;color:#D2E6FF}.footer-cta strong{font-size:14px;margin-top:6px}.footer-cta .white{background:#fff;color:var(--navy)}.footer-cta .white small{color:#6d7c87}.footer-main{background:var(--deep);color:#fff;padding:55px 0 22px}.footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.footer-brand{padding:0;margin-bottom:18px}.lightmark{background:#fff;color:var(--navy)}.footer-brand .brand-copy small{color:#9eb3c2}.footer-grid p{font-size:14px;color:#9eb0bd;margin:2px 0}.footer-nav{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 30px;align-content:start}.footer-nav a{font-size:14px;color:#ced9e0}.copyright{border-top:1px solid rgba(255,255,255,.12);margin-top:35px;padding-top:18px;display:flex;justify-content:space-between;font-size:14px;color:#7890a0;letter-spacing:.08em}
@media(max-width:920px){.container{width:min(100% - 36px,760px)}.header-main{height:72px}.header-tools{display:none}.global-nav{overflow-x:auto;justify-content:flex-start}.nav-item{min-width:112px}.home-hero{height:620px}.home-hero h1{font-size:54px}.split,.news-layout,.home-strength-inner,.footer-contact-inner{grid-template-columns:1fr;gap:35px}.home-business-grid{grid-template-columns:1fr;grid-template-rows:none}.visual-card,.visual-card.tall{grid-row:auto;min-height:280px}.product-four{grid-template-columns:1fr 1fr}.home-company-link{grid-template-columns:1fr}.hc-image{min-height:320px}.service-grid,.service-grid.reverse,.product-detail,.product-detail.reverse{grid-template-columns:1fr}.service-grid.reverse .service-photo,.product-detail.reverse .pd-img{order:1}.service-grid.reverse .service-copy,.product-detail.reverse .pd-copy{order:2}.service-photo,.pd-img{min-height:330px}.service-copy,.service-grid.reverse .service-copy{padding:40px 10px}.flow-grid{grid-template-columns:1fr}.flow-grid div{border:1px solid var(--line);border-bottom:0}.flow-grid div:last-child{border-bottom:1px solid var(--line)}.access-box{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}}
@media(max-width:560px){.container{width:calc(100% - 28px)}.section{padding:72px 0}.brand{padding:0 15px}.brand-copy strong{font-size:14px}.brand-mark{width:40px;height:40px}.home-hero{height:560px}.home-hero h1{font-size:42px}.hero-copy br{display:none}.hero-btns{display:grid;grid-template-columns:1fr 1fr}.btn{min-width:0}.section-title h2,.intro-center h2{font-size:29px}.product-four{grid-template-columns:1fr}.strength-mini{grid-template-columns:1fr}.news-list a,.large-news a{grid-template-columns:85px 65px;gap:8px}.news-list p,.large-news p{grid-column:1/-1}.large-news b{display:none}.hc-panel{padding:45px 28px}.lower-hero{height:280px}.lower-hero h1{font-size:35px}.pd-copy{padding:45px 28px}.company-table>div{grid-template-columns:1fr;gap:5px;padding:16px 8px}.contact-form>label{grid-template-columns:1fr;gap:8px}.contact-direct{grid-template-columns:1fr}.contact-direct>div+div{border-left:0;border-top:1px solid var(--line)}.footer-cta{grid-template-columns:1fr}.footer-nav{grid-template-columns:1fr 1fr}.copyright{display:block}.copyright span{display:block;margin-top:8px}}

/* ===== WINI JAPAN logo integration ===== */
.brand-logo{
  display:block;
  width:190px;
  height:auto;
  object-fit:contain;
}

/* Mobile menu control remains visible on the white header. */
@media(max-width:760px){
  .site-header .mobile-menu-toggle,
  .home-page .site-header .mobile-menu-toggle,
  .lower-page .site-header .mobile-menu-toggle{
    color:#173f66!important;
  }
  body.menu-open .site-header .mobile-menu-toggle{
    color:#bc1828!important;
  }
}

/* Homepage: hide the decorative oversized WINI JAPAN marquee. */
.home-page .sh-brand-marquee{display:none!important;}

.site-header .brand{
  min-width:245px;
}
.site-header .brand .brand-copy,
.site-header .brand .brand-mark{
  display:none;
}
.footer-brand{
  padding:0;
  margin-bottom:18px;
}
.footer-brand .brand-logo{
  width:220px;
  background:#fff;
  padding:8px 12px;
  border-radius:2px;
}
@media(max-width:560px){
  .brand-logo{width:150px}
  .site-header .brand{min-width:175px}
  .footer-brand .brand-logo{width:185px}
}


/* =========================================================
   Motion / editorial redesign
   ========================================================= */
html{scroll-behavior:smooth}
body{overflow-x:hidden}
.site-header{
  transition:height .35s ease, background .35s ease, box-shadow .35s ease, transform .35s ease;
  backdrop-filter:saturate(140%) blur(12px);
  background:rgba(255,255,255,.94);
}
.site-header.is-scrolled{
  box-shadow:0 10px 35px rgba(0,55,125,.10);
  background:rgba(255,255,255,.88);
}
.nav-item:after{
  height:2px;
  background:#0065E2;
}
.nav-item:hover span{transform:translateY(-2px)}
.nav-item span{transition:.25s ease}

/* loader */
.page-loader{
  position:fixed;inset:0;z-index:9999;background:#fff;
  display:grid;place-items:center;
  transition:opacity .7s ease, visibility .7s ease;
}
.page-loader.is-hide{opacity:0;visibility:hidden}
.loader-mark{
  position:absolute;
  font-size:14px)/1 Roboto,sans-serif;
  letter-spacing:.12em;color:#0065E2;
  opacity:.95;
  animation:loaderMark .85s cubic-bezier(.2,.75,.2,1) both;
}
.loader-line{
  position:absolute;left:12vw;right:12vw;bottom:18vh;height:1px;background:#dbe9fb;overflow:hidden
}
.loader-line span{
  display:block;width:35%;height:100%;background:#0065E2;
  animation:loaderLine 1s cubic-bezier(.75,0,.2,1) both;
}
@keyframes loaderLine{from{transform:translateX(-110%)}to{transform:translateX(390%)}}
@keyframes loaderMark{from{opacity:0;transform:translateY(30px);letter-spacing:.22em}to{opacity:1;transform:none;letter-spacing:.12em}}

/* hero */
.home-hero{
  height:min(760px,calc(100vh - 136px));
  min-height:620px;
  clip-path:inset(0 0 0 0);
}
.home-hero-bg,
.lower-hero-bg,
.vc-bg,
.hc-image,
.company-photo-wide,
.recruit-visual{
  transform:translate3d(0,var(--parallax-y,0),0) scale(1.055);
  will-change:transform;
}
.home-hero-bg{animation:heroZoom 2.1s cubic-bezier(.2,.75,.2,1) both}
@keyframes heroZoom{
  from{transform:scale(1.16)}
  to{transform:translate3d(0,var(--parallax-y,0),0) scale(1.055)}
}
.home-hero-shade{
  background:
    linear-gradient(90deg,rgba(0,36,88,.82) 0%,rgba(0,70,155,.52) 42%,rgba(0,101,226,.06) 72%),
    linear-gradient(180deg,rgba(0,0,0,.10),rgba(0,0,0,.20));
}
.home-hero-inner{max-width:1180px}
.hero-en{
  opacity:0;
  animation:heroMeta .85s .25s cubic-bezier(.2,.75,.2,1) forwards;
}
@keyframes heroMeta{to{opacity:1;transform:none}from{opacity:0;transform:translateY(18px)}}
.home-hero h1{
  font-size:clamp(58px,7.2vw,108px);
  letter-spacing:-.035em;
  line-height:1.03;
  margin:20px 0 32px;
  font-weight:700;
}
.hero-line{
  display:inline-block;overflow:hidden;
  padding:.03em 0 .12em;
}
.hero-line i{
  display:inline-block;font-style:normal;
  transform:translateY(115%);
  animation:heroLine 1.05s cubic-bezier(.16,.84,.24,1) forwards;
}
.hero-line.accent i{animation-delay:.14s}
.hero-line.accent{color:#fff}
@keyframes heroLine{to{transform:translateY(0)}}
.hero-copy{max-width:640px}

/* moving strip */
.brand-marquee{
  height:66px;display:flex;align-items:center;overflow:hidden;
  background:#0065E2;color:#fff;border-top:1px solid rgba(255,255,255,.12)
}
.marquee-track{
  display:flex;align-items:center;gap:30px;white-space:nowrap;
  min-width:max-content;
  animation:marquee 24s linear infinite;
  font-size:14px,sans-serif;letter-spacing:.18em
}
.marquee-track b{font-size:16px;font-weight:400;opacity:.55}
@keyframes marquee{to{transform:translateX(-50%)}}

/* editorial asymmetry */
.home-about.section{padding:135px 0 125px}
.home-about .split{
  grid-template-columns:minmax(340px, .85fr) minmax(0,1.15fr);
  gap:12vw;
}
.home-about .section-title{position:relative}
.home-about .section-title:after{
  content:"";position:absolute;width:115px;height:1px;background:#0065E2;
  left:0;bottom:-28px;
}
.section-title h2,.intro-center h2{
  letter-spacing:-.025em;
}
.home-business.section{padding-top:125px}
.home-business-grid{
  grid-template-columns:1.32fr .88fr;
  grid-template-rows:300px 300px;
  gap:0;
}
.visual-card{border:0}
.visual-card:nth-child(2){margin:40px 0 -40px 0}
.visual-card:nth-child(3){margin:-20px 0 20px 0}
.vc-text{
  left:34px;right:34px;bottom:30px;
  transform:translateY(8px);
  transition:transform .35s ease;
}
.visual-card:hover .vc-text{transform:translateY(0)}
.visual-card:hover .vc-bg{transform:translate3d(0,var(--parallax-y,0),0) scale(1.095)}
.vc-bg{transition:transform .8s cubic-bezier(.2,.75,.2,1)}
.vc-shade{
  background:linear-gradient(0deg,rgba(0,27,68,.86),rgba(0,44,104,.08) 70%);
}

/* less AI-card feeling */
.product-four{
  gap:0;
  border-top:1px solid var(--line);
  border-left:1px solid var(--line);
}
.product-tile{
  border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);
  box-shadow:none!important;
}
.product-tile:hover{transform:none}
.product-tile .pt-img{
  filter:saturate(.82) contrast(1.03);
  transition:transform .65s cubic-bezier(.2,.75,.2,1),filter .4s ease;
}
.product-tile:hover .pt-img{transform:scale(1.035);filter:saturate(1)}
.product-tile>div:last-child{padding:24px 22px 30px}
.product-tile h3{font-size:19px}

/* strengths, more architectural */
.home-strength{
  padding:120px 0;
  position:relative;
  overflow:hidden;
}
.home-strength:before{
  content:"WINI";position:absolute;right:-.05em;top:-.18em;
  font:700 260px/1 Roboto,sans-serif;letter-spacing:-.08em;
  color:rgba(255,255,255,.025);pointer-events:none;
}
.strength-mini{gap:0;border-top:1px solid rgba(255,255,255,.2)}
.strength-mini div{
  min-height:145px;padding:32px 26px;
  border-top:0;border-right:1px solid rgba(255,255,255,.14);
  border-bottom:1px solid rgba(255,255,255,.14);
}
.strength-mini div:nth-child(even){border-right:0}

/* company block */
.home-company-link{
  min-height:520px;
  grid-template-columns:62% 38%;
}
.hc-panel{
  padding:7vw 5vw;
  background:#F7FAFF;
  position:relative;
}
.hc-panel:before{
  content:"COMPANY";position:absolute;top:26px;right:22px;
  font:700 44px Roboto;color:#0065E2;opacity:.06;letter-spacing:.08em
}

/* lower pages */
.lower-hero{
  height:390px;
}
.lower-hero h1{
  font-size:clamp(42px,5vw,68px);
  letter-spacing:-.03em
}
.lower-shade{
  background:linear-gradient(90deg,rgba(0,43,103,.82),rgba(0,101,226,.15))
}
.service-grid,.product-detail{
  min-height:500px;
}
.service-copy,.pd-copy{padding-top:65px;padding-bottom:65px}
.service-copy h2,.pd-copy h2{font-size:36px;letter-spacing:-.02em}
.company-table>div{transition:background .25s ease,padding-left .25s ease}
.company-table>div:hover{background:#f5f9ff;padding-left:28px}
.news-list a{transition:padding-left .25s ease,background .25s ease}
.news-list a:hover{padding-left:12px;background:#f7faff}

/* eyebrow line animation */
.eyebrow{
  display:flex;align-items:center;gap:10px
}
.eyebrow-line{
  display:inline-block;width:0;height:1px;background:currentColor;
  transition:width .65s cubic-bezier(.2,.75,.2,1)
}
.in-view .eyebrow-line,
.eyebrow.in-view .eyebrow-line{width:28px}

/* scroll reveal */
.motion-ready{
  opacity:0;
  transform:translateY(34px);
  transition:
    opacity .9s cubic-bezier(.2,.75,.2,1) var(--delay,0ms),
    transform .9s cubic-bezier(.2,.75,.2,1) var(--delay,0ms);
}
.motion-ready.in-view{opacity:1;transform:none}
.visual-card.motion-ready,
.product-tile.motion-ready{
  transform:translateY(48px) scale(.985);
}
.visual-card.motion-ready.in-view,
.product-tile.motion-ready.in-view{transform:none}

/* link motion */
.btn,.arrow-link{
  transition:transform .18s ease,background .25s ease,color .25s ease,border-color .25s ease,box-shadow .25s ease;
  will-change:transform
}
.navy-btn:hover{
  background:#0055BE;
  box-shadow:0 12px 28px rgba(0,101,226,.22)
}
.white-btn:hover{box-shadow:0 12px 30px rgba(0,0,0,.14)}
.arrow-link b{transition:transform .25s ease}
.arrow-link:hover b{transform:translateX(7px)}

/* cursor */
.cursor-dot{
  position:fixed;left:0;top:0;width:12px;height:12px;border-radius:50%;
  background:#0065E2;pointer-events:none;z-index:9998;
  margin:-6px 0 0 -6px;
  mix-blend-mode:multiply;
  transition:width .2s ease,height .2s ease,margin .2s ease,opacity .2s ease;
}
.cursor-dot.is-active{
  width:38px;height:38px;margin:-19px 0 0 -19px;opacity:.16
}

/* Responsive motion */
@media(max-width:920px){
  .home-hero{height:620px;min-height:620px}
  .home-business-grid{
    grid-template-columns:1fr;
    grid-template-rows:none;
    gap:14px
  }
  .visual-card:nth-child(2),.visual-card:nth-child(3){margin:0}
  .brand-marquee{height:54px}
  .home-company-link{grid-template-columns:1fr}
}
@media(max-width:560px){
  .home-hero{height:560px;min-height:560px}
  .home-hero h1{font-size:46px}
  .home-about.section{padding:80px 0}
  .home-about .split{gap:46px}
  .product-four{border-left:0}
  .product-tile{border-left:1px solid var(--line)}
  .lower-hero{height:300px}
  .cursor-dot{display:none}
}

/* accessibility */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
    scroll-behavior:auto!important
  }
  .cursor-dot{display:none}
}

/* Optical centering: compensate for uneven transparent space inside the logo PNG. */
.home-page .site-header .brand-logo{
  transform:translate(8px,-16px) !important;
}
@media(max-width:1200px){
  .home-page .site-header .brand-logo{transform:translate(7px,-14px) !important;}
}
@media(max-width:920px){
  .home-page .site-header .brand-logo{transform:translate(5px,-11px) !important;}
}
@media(max-width:640px){
  .home-page .site-header .brand-logo{transform:translate(4px,-9px) !important;}
}


/* =========================================================
   Header / Logo bug fix
   ========================================================= */
.site-header{
  overflow:visible;
}

.header-main{
  height:82px;
  max-width:1380px;
  padding:0 24px;
}

.site-header .brand{
  height:82px;
  min-width:0;
  padding:8px 0;
  display:flex;
  align-items:center;
  overflow:hidden;
}

.site-header .brand-logo{
  width:auto !important;
  height:64px !important;
  max-width:230px;
  max-height:64px;
  object-fit:contain;
  object-position:left center;
  display:block;
}

.header-tools{
  height:82px;
  flex-shrink:0;
}

.global-nav{
  position:relative;
  z-index:2;
  height:58px;
  background:#fff;
  overflow:hidden;
}

.nav-item{
  height:58px;
  flex:0 0 135px;
}

.footer-brand{
  height:auto !important;
  overflow:visible !important;
}

.footer-brand .brand-logo{
  width:220px !important;
  height:auto !important;
  max-height:none !important;
}

@media(max-width:920px){
  .header-main{
    height:76px;
    padding:0 18px;
  }
  .site-header .brand{
    height:76px;
    padding:7px 0;
  }
  .site-header .brand-logo{
    height:58px !important;
    max-height:58px;
    max-width:210px;
  }
  .global-nav{
    height:56px;
    overflow-x:auto;
    overflow-y:hidden;
    justify-content:flex-start;
    -webkit-overflow-scrolling:touch;
  }
  .nav-item{
    height:56px;
    flex:0 0 108px;
    min-width:108px;
  }
}

@media(max-width:560px){
  .header-main{
    height:68px;
    padding:0 14px;
  }
  .site-header .brand{
    height:68px;
    padding:6px 0;
  }
  .site-header .brand-logo{
    height:52px !important;
    max-height:52px;
    max-width:180px;
  }
  .global-nav{
    height:52px;
  }
  .nav-item{
    height:52px;
    flex-basis:100px;
    min-width:100px;
    padding:5px 10px;
  }
}


/* Dual logo setup: color header / white footer */
.site-header .brand-logo{
  background:transparent !important;
}

.footer-brand{
  background:transparent !important;
}

.footer-brand .brand-logo{
  width:220px !important;
  height:auto !important;
  max-height:none !important;
  padding:0 !important;
  background:transparent !important;
  border-radius:0 !important;
  object-fit:contain;
  filter:none !important;
}

@media(max-width:560px){
  .footer-brand .brand-logo{
    width:190px !important;
  }
}


/* =========================================================
   Typography refinement
   Reference direction: conservative Japanese trading-company site
   ========================================================= */

/* Base */
body{
  font-size:14px;
  line-height:1.85;
  letter-spacing:.015em;
}

/* Header */
.brand-copy strong{font-size:14px}
.global-nav .nav-item span{
  font-size:14px;
  line-height:1.35;
}
.global-nav .nav-item small{
  font-size:14px;
  line-height:1.25;
}
.header-tools a small{font-size:14px}
.header-tools a strong{font-size:16px}
.header-tools .mail-tool{font-size:14px}

/* Homepage hero: toned down substantially */
.home-hero h1{
  font-size:clamp(42px,5vw,68px) !important;
  line-height:1.18;
  letter-spacing:.01em;
  font-weight:600;
}
.hero-en{
  font-size:14px;
  letter-spacing:.22em;
}
.hero-copy{
  font-size:15px;
  line-height:2;
}
.btn{
  font-size:14px;
}

/* Eyebrow / English helper labels */
.eyebrow{
  font-size:14px;
  letter-spacing:.18em;
  margin-bottom:12px;
}

/* Main section headings */
.section-title h2,
.intro-center h2{
  font-size:32px !important;
  line-height:1.55;
  letter-spacing:.01em;
  font-weight:600;
}
.home-about .section-title h2{
  font-size:31px !important;
}

/* Section descriptive text */
.lead-copy p,
.intro-center p,
.section-head-row>p{
  font-size:14px;
  line-height:1.95;
}

/* Business */
.vc-text span{
  font-size:14px;
}
.vc-text h3{
  font-size:19px;
  line-height:1.45;
}
.vc-text p{
  font-size:14px;
  line-height:1.75;
}

/* Product cards */
.product-tile small{
  font-size:14px;
}
.product-tile h3{
  font-size:17px !important;
  line-height:1.5;
}

/* Strength */
.strength-mini span{
  font-size:14px;
}
.strength-mini strong{
  font-size:14px;
  line-height:1.65;
}

/* News */
.news-list time{
  font-size:14px;
}
.news-list span{
  font-size:14px;
}
.news-list p{
  font-size:14px;
  line-height:1.75;
}

/* Company teaser */
.hc-panel h2{
  font-size:31px !important;
}
.hc-panel p{
  font-size:14px;
  line-height:1.9;
}

/* Lower page hero */
.lower-hero h1{
  font-size:38px !important;
  line-height:1.4;
  font-weight:600;
  letter-spacing:.01em;
}
.lower-hero-inner>span{
  font-size:14px;
}
.lower-hero p{
  font-size:14px;
}

/* Business detail pages */
.service-copy h2,
.pd-copy h2{
  font-size:28px !important;
  line-height:1.5;
  font-weight:600;
}
.service-copy p,
.service-copy li,
.pd-copy p,
.pd-copy li{
  font-size:14px;
  line-height:1.9;
}
.service-copy small,
.pd-copy>span{
  font-size:14px;
}

/* Export flow */
.flow-grid span{
  font-size:14px;
}
.flow-grid b{
  font-size:14px;
}
.flow-grid p{
  font-size:14px;
}

/* Company profile */
.company-table dt{
  font-size:14px;
}
.company-table dd{
  font-size:14px;
  line-height:1.8;
}
.access-box h3{
  font-size:18px;
}
.access-box p{
  font-size:14px;
}

/* Contact */
.contact-form>label>span{
  font-size:14px;
}
.contact-form input,
.contact-form select,
.contact-form textarea{
  font-size:14px;
}
.contact-direct strong{
  font-size:22px;
}

/* Footer */
.footer-contact h2{
  font-size:25px !important;
  line-height:1.65;
  font-weight:600;
}
.footer-cta small{
  font-size:14px;
}
.footer-cta strong{
  font-size:16px;
}
.footer-grid p{
  font-size:14px;
}
.footer-nav a{
  font-size:14px;
}

/* Make English decorative text less dominant */
.marquee-track{
  font-size:14px;
  letter-spacing:.15em;
}
.hc-panel:before{
  font-size:34px;
}
.home-strength:before{
  font-size:210px;
}

/* Tablet */
@media(max-width:920px){
  .home-hero h1{
    font-size:48px !important;
  }
  .section-title h2,
  .intro-center h2{
    font-size:29px !important;
  }
  .lower-hero h1{
    font-size:34px !important;
  }
}

/* Mobile */
@media(max-width:560px){
  body{
    font-size:14px;
  }
  .home-hero h1{
    font-size:37px !important;
    line-height:1.22;
  }
  .hero-copy{
    font-size:14px;
  }
  .section-title h2,
  .intro-center h2,
  .home-about .section-title h2{
    font-size:25px !important;
  }
  .lower-hero h1{
    font-size:29px !important;
  }
  .service-copy h2,
  .pd-copy h2{
    font-size:24px !important;
  }
  .hc-panel h2{
    font-size:26px !important;
  }
  .footer-contact h2{
    font-size:22px !important;
  }
}


/* =========================================================
   Final typography override
   Rule:
   - Minimum text size = 14px
   - All other typography +2px from previous refined version
   ========================================================= */

/* Global minimum */
body{
  font-size:16px;
}

/* Header */
.brand-copy strong{font-size:16px !important}
.global-nav .nav-item span{font-size:14px !important}
.global-nav .nav-item small{font-size:14px !important}
.header-tools a small{font-size:14px !important}
.header-tools a strong{font-size:18px !important}
.header-tools .mail-tool{font-size:14px !important}

/* Hero */
.home-hero h1{
  font-size:clamp(44px,5vw,70px) !important;
}
.hero-en{
  font-size:14px !important;
}
.hero-copy{
  font-size:17px !important;
}
.btn{
  font-size:14px !important;
}

/* Eyebrow / English labels */
.eyebrow{
  font-size:14px !important;
}

/* Main section headings */
.section-title h2,
.intro-center h2{
  font-size:34px !important;
}
.home-about .section-title h2{
  font-size:33px !important;
}

/* Section descriptive text */
.lead-copy p,
.intro-center p,
.section-head-row>p{
  font-size:16px !important;
}

/* Business cards */
.vc-text span{font-size:14px !important}
.vc-text h3{font-size:21px !important}
.vc-text p{font-size:14px !important}

/* Product cards */
.product-tile small{font-size:14px !important}
.product-tile h3{font-size:19px !important}

/* Strength */
.strength-mini span{font-size:14px !important}
.strength-mini strong{font-size:16px !important}

/* News */
.news-list time{font-size:14px !important}
.news-list span{font-size:14px !important}
.news-list p{font-size:15px !important}

/* Company teaser */
.hc-panel h2{font-size:33px !important}
.hc-panel p{font-size:15px !important}

/* Lower page hero */
.lower-hero h1{
  font-size:40px !important;
}
.lower-hero-inner>span{font-size:14px !important}
.lower-hero p{font-size:15px !important}

/* Business / product detail */
.service-copy h2,
.pd-copy h2{
  font-size:30px !important;
}
.service-copy p,
.service-copy li,
.pd-copy p,
.pd-copy li{
  font-size:15px !important;
}
.service-copy small,
.pd-copy>span{
  font-size:14px !important;
}

/* Export flow */
.flow-grid span{font-size:14px !important}
.flow-grid b{font-size:16px !important}
.flow-grid p{font-size:14px !important}

/* Company profile */
.company-table dt{font-size:14px !important}
.company-table dd{font-size:15px !important}
.access-box h3{font-size:20px !important}
.access-box p{font-size:15px !important}

/* Contact */
.contact-form>label>span{font-size:14px !important}
.contact-form input,
.contact-form select,
.contact-form textarea{
  font-size:15px !important;
}
.contact-form b,
.contact-form em{
  font-size:14px !important;
}
.privacy-check{font-size:14px !important}
.contact-direct small{font-size:14px !important}
.contact-direct strong{font-size:24px !important}
.contact-direct p{font-size:14px !important}

/* Footer */
.footer-contact h2{
  font-size:27px !important;
}
.footer-cta small{font-size:14px !important}
.footer-cta strong{font-size:18px !important}
.footer-grid p{font-size:14px !important}
.footer-nav a{font-size:14px !important}
.copyright{
  font-size:14px !important;
}

/* Decorative / moving English text */
.marquee-track{
  font-size:14px !important;
}
.hc-panel:before{
  font-size:36px !important;
}
.home-strength:before{
  font-size:212px !important;
}

/* Breadcrumb */
.breadcrumb .container{
  font-size:14px !important;
}

/* Tablet */
@media(max-width:920px){
  body{font-size:16px}
  .home-hero h1{
    font-size:50px !important;
  }
  .section-title h2,
  .intro-center h2{
    font-size:31px !important;
  }
  .lower-hero h1{
    font-size:36px !important;
  }
}

/* Mobile */
@media(max-width:560px){
  body{
    font-size:14px !important;
  }
  .home-hero h1{
    font-size:39px !important;
  }
  .hero-copy{
    font-size:15px !important;
  }
  .section-title h2,
  .intro-center h2,
  .home-about .section-title h2{
    font-size:27px !important;
  }
  .lower-hero h1{
    font-size:31px !important;
  }
  .service-copy h2,
  .pd-copy h2{
    font-size:26px !important;
  }
  .hc-panel h2{
    font-size:28px !important;
  }
  .footer-contact h2{
    font-size:24px !important;
  }

  /* Hard floor for previously tiny mobile labels */
  .global-nav .nav-item small,
  .global-nav .nav-item span,
  .eyebrow,
  .hero-en,
  .product-tile small,
  .vc-text span,
  .news-list time,
  .news-list span,
  .flow-grid span,
  .flow-grid p,
  .service-copy small,
  .pd-copy>span,
  .breadcrumb .container,
  .footer-cta small,
  .footer-grid p,
  .footer-nav a,
  .copyright,
  .contact-direct small,
  .contact-direct p{
    font-size:14px !important;
  }
}


/* =========================================================
   Final header alignment + smooth corporate motion
   ========================================================= */

/* --- Header: one shared grid, no drifting between rows --- */
.site-header{
  display:grid !important;
  grid-template-columns:280px minmax(0,1fr);
  grid-template-rows:82px 58px;
  width:100%;
  background:#fff;
  overflow:visible;
}

.header-main{
  display:contents !important;
}

.site-header .brand{
  grid-column:1;
  grid-row:1 / 3;
  width:280px;
  height:140px !important;
  min-width:280px !important;
  padding:14px 28px !important;
  display:flex;
  align-items:center;
  justify-content:center;
  border-right:1px solid #e6edf3;
  overflow:hidden;
  background:#fff;
}

.site-header .brand-logo{
  width:205px !important;
  height:auto !important;
  max-width:205px !important;
  max-height:112px !important;
  object-fit:contain;
  object-position:center;
}

.header-tools{
  grid-column:2;
  grid-row:1;
  height:82px !important;
  display:flex !important;
  justify-content:flex-end;
  align-items:stretch;
  border-bottom:1px solid #e6edf3;
  background:#fff;
}

.header-tools a{
  min-width:190px;
  padding:0 26px;
}

.header-tools .mail-tool{
  min-width:145px;
}

.global-nav{
  grid-column:2;
  grid-row:2;
  width:100%;
  height:58px !important;
  display:flex;
  justify-content:stretch !important;
  align-items:stretch;
  overflow:hidden;
  border-top:0 !important;
  border-bottom:1px solid #e6edf3;
  background:#fff;
}

.global-nav .nav-item{
  flex:1 1 0 !important;
  min-width:0 !important;
  height:58px !important;
  padding:5px 12px;
  border-left:1px solid #e6edf3;
}

.global-nav .nav-item:first-child{
  border-left:0;
}

/* header scroll state stays quiet */
.site-header{
  transition:box-shadow .45s ease, background-color .45s ease;
}
.site-header.is-scrolled{
  box-shadow:0 8px 28px rgba(0,67,150,.08);
}

/* --- Smoother loader --- */
.page-loader{
  transition:opacity .75s cubic-bezier(.22,.61,.36,1), visibility .75s linear;
}
.loader-mark{
  animation:loaderSoft .75s cubic-bezier(.22,.61,.36,1) both !important;
}
.loader-line span{
  animation:loaderLineSoft 1.1s cubic-bezier(.22,.61,.36,1) both !important;
}
@keyframes loaderSoft{
  from{opacity:0;transform:translateY(12px)}
  to{opacity:1;transform:none}
}
@keyframes loaderLineSoft{
  from{transform:translateX(-120%)}
  to{transform:translateX(380%)}
}

/* --- Hero: softer intro --- */
.home-hero-bg{
  animation:heroSoftZoom 2.2s cubic-bezier(.22,.61,.36,1) both !important;
}
@keyframes heroSoftZoom{
  from{transform:scale(1.09)}
  to{transform:translate3d(0,var(--parallax-y,0),0) scale(1.035)}
}

.home-hero-bg,
.lower-hero-bg,
.vc-bg,
.hc-image,
.company-photo-wide,
.recruit-visual{
  transform:translate3d(0,var(--parallax-y,0),0) scale(1.035) !important;
  will-change:transform;
}

.hero-en{
  animation:heroMetaSoft .75s .16s cubic-bezier(.22,.61,.36,1) forwards !important;
}
@keyframes heroMetaSoft{
  from{opacity:0;transform:translateY(10px)}
  to{opacity:1;transform:none}
}

.hero-line i{
  animation:heroLineSoft .9s cubic-bezier(.22,.61,.36,1) forwards !important;
}
.hero-line.accent i{
  animation-delay:.08s !important;
}
@keyframes heroLineSoft{
  from{transform:translateY(108%)}
  to{transform:translateY(0)}
}

/* --- Reveal: less distance, slower, more natural --- */
.motion-ready{
  opacity:0 !important;
  transform:translate3d(0,20px,0) !important;
  transition:
    opacity .95s cubic-bezier(.22,.61,.36,1) var(--delay,0ms),
    transform 1.05s cubic-bezier(.22,.61,.36,1) var(--delay,0ms) !important;
}

.motion-ready.in-view{
  opacity:1 !important;
  transform:translate3d(0,0,0) !important;
}

.visual-card.motion-ready,
.product-tile.motion-ready{
  transform:translate3d(0,22px,0) !important;
}
.visual-card.motion-ready.in-view,
.product-tile.motion-ready.in-view{
  transform:translate3d(0,0,0) !important;
}

/* image hover: restrained */
.vc-bg,
.product-tile .pt-img{
  transition:transform 1s cubic-bezier(.22,.61,.36,1), filter .55s ease !important;
}
.visual-card:hover .vc-bg{
  transform:translate3d(0,var(--parallax-y,0),0) scale(1.055) !important;
}
.product-tile:hover .pt-img{
  transform:scale(1.018) !important;
}

/* remove hard magnetic feel */
.btn,
.arrow-link{
  transform:none !important;
  transition:
    background-color .32s ease,
    color .32s ease,
    border-color .32s ease,
    box-shadow .38s ease !important;
}

/* remove custom cursor completely */
.cursor-dot{
  display:none !important;
}

/* marquee slower */
.marquee-track{
  animation-duration:38s !important;
}

/* eyebrow line slower */
.eyebrow-line{
  transition:width .85s cubic-bezier(.22,.61,.36,1) !important;
}

/* Tablet/mobile: header becomes stacked and stable */
@media(max-width:920px){
  .site-header{
    display:block !important;
  }

  .header-main{
    display:flex !important;
    height:76px !important;
    padding:0 18px !important;
    align-items:center;
    justify-content:space-between;
  }

  .site-header .brand{
    width:auto !important;
    min-width:0 !important;
    height:76px !important;
    padding:7px 0 !important;
    border-right:0;
    justify-content:flex-start;
  }

  .site-header .brand-logo{
    width:auto !important;
    height:58px !important;
    max-width:210px !important;
    max-height:58px !important;
  }

  .header-tools{
    display:none !important;
  }

  .global-nav{
    height:56px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    justify-content:flex-start !important;
  }

  .global-nav .nav-item{
    flex:0 0 116px !important;
    min-width:116px !important;
    height:56px !important;
  }
}

@media(max-width:560px){
  .header-main{
    height:68px !important;
    padding:0 14px !important;
  }

  .site-header .brand{
    height:68px !important;
  }

  .site-header .brand-logo{
    height:52px !important;
    max-height:52px !important;
    max-width:180px !important;
  }

  .global-nav{
    height:52px !important;
  }

  .global-nav .nav-item{
    flex-basis:110px !important;
    min-width:110px !important;
    height:52px !important;
  }
}


/* =========================================================
   FINAL PATCH — preserve current design, fix header alignment
   ========================================================= */

/* Reset the conflicting grid/header overrides from earlier iterations */
.site-header{
  display:block !important;
  position:sticky !important;
  top:0;
  z-index:100;
  width:100%;
  background:rgba(255,255,255,.97) !important;
  backdrop-filter:blur(10px);
  border-bottom:1px solid #e6edf3;
  box-shadow:none !important;
  overflow:visible !important;
}

/* Top line and nav use exactly the same centered width */
.header-main,
.global-nav{
  width:min(1180px,calc(100% - 64px)) !important;
  max-width:1180px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

.header-main{
  height:82px !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  background:#fff;
}

.site-header .brand{
  width:auto !important;
  min-width:0 !important;
  height:82px !important;
  padding:8px 0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  border:0 !important;
  overflow:hidden !important;
  background:#fff;
}

.site-header .brand-logo{
  width:auto !important;
  height:64px !important;
  max-width:225px !important;
  max-height:64px !important;
  object-fit:contain !important;
  object-position:left center !important;
}

.header-tools{
  position:static !important;
  width:auto !important;
  height:82px !important;
  display:flex !important;
  align-items:stretch !important;
  justify-content:flex-end !important;
  border:0 !important;
  background:#fff !important;
}

.header-tools a{
  min-width:0 !important;
  height:82px !important;
  padding:0 22px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px;
  border-left:1px solid #e6edf3 !important;
}

.header-tools .mail-tool{
  min-width:150px !important;
  background:#0065E2 !important;
  color:#fff !important;
}

/* Nav stays as the second row, but aligns perfectly with top row */
.global-nav{
  position:static !important;
  height:58px !important;
  display:flex !important;
  align-items:stretch !important;
  justify-content:stretch !important;
  overflow:hidden !important;
  border-top:1px solid #e6edf3 !important;
  border-bottom:0 !important;
  background:#fff !important;
}

.global-nav .nav-item{
  position:relative !important;
  flex:1 1 0 !important;
  width:auto !important;
  min-width:0 !important;
  height:58px !important;
  padding:6px 8px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  border-left:1px solid #e6edf3 !important;
}

.global-nav .nav-item:first-child{
  border-left:0 !important;
}

.site-header.is-scrolled{
  background:rgba(255,255,255,.95) !important;
  box-shadow:0 8px 25px rgba(0,70,150,.07) !important;
}

/* =========================================================
   Expanded strength content — same section, no extra homepage block
   ========================================================= */
.home-strength{
  padding:105px 0 92px !important;
}

.home-strength:before{
  font-size:180px !important;
}

.home-strength-head{
  display:grid;
  grid-template-columns:38% 62%;
  gap:65px;
  align-items:end;
  margin-bottom:46px;
}

.home-strength-lead{
  margin:0 0 5px;
  font-size:16px;
  line-height:1.9;
  color:#bdcfdd;
}

.strength-detail-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  border-top:1px solid rgba(255,255,255,.18);
  border-left:1px solid rgba(255,255,255,.18);
}

.strength-detail-grid article{
  min-height:260px;
  padding:34px 30px;
  border-right:1px solid rgba(255,255,255,.18);
  border-bottom:1px solid rgba(255,255,255,.18);
}

.strength-number{
  display:block;
  margin-bottom:15px;
  color:#7fb7ff;
  font-size:14px;
  font-weight:700;
}

.strength-detail-grid h3{
  margin:0 0 13px;
  color:#fff;
  font-size:20px;
  line-height:1.55;
}

.strength-detail-grid strong{
  display:block;
  margin-bottom:8px;
  color:#fff;
  font-size:16px;
  line-height:1.65;
}

.strength-detail-grid p{
  margin:0;
  color:#c2d1dd;
  font-size:15px;
  line-height:1.95;
}

.strength-value-row{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  margin-top:28px;
  border-top:1px solid rgba(255,255,255,.18);
  border-bottom:1px solid rgba(255,255,255,.18);
}

.strength-value-row>div{
  padding:28px 26px;
  border-right:1px solid rgba(255,255,255,.18);
}

.strength-value-row>div:last-child{
  border-right:0;
}

.strength-value-row span{
  display:block;
  margin-bottom:8px;
  color:#79b8ff;
  font-size:14px;
  font-weight:700;
  letter-spacing:.08em;
}

.strength-value-row strong{
  display:block;
  color:#fff;
  font-size:18px;
  margin-bottom:5px;
}

.strength-value-row p{
  margin:0;
  color:#c2d1dd;
  font-size:15px;
}

/* News empty state */
.news-empty-list,
.news-empty-page{
  min-height:110px;
  display:flex !important;
  align-items:center;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}

.news-empty-message{
  width:100%;
  padding:28px 0;
  color:#6f7d88;
  font-size:15px;
}

/* Mobile / tablet */
@media(max-width:920px){
  .header-main,
  .global-nav{
    width:calc(100% - 36px) !important;
  }

  .header-main{
    height:76px !important;
  }

  .site-header .brand{
    height:76px !important;
  }

  .site-header .brand-logo{
    height:58px !important;
    max-height:58px !important;
    max-width:205px !important;
  }

  .header-tools{
    display:none !important;
  }

  .global-nav{
    height:56px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    justify-content:flex-start !important;
    -webkit-overflow-scrolling:touch;
  }

  .global-nav .nav-item{
    flex:0 0 116px !important;
    min-width:116px !important;
    height:56px !important;
  }

  .home-strength-head{
    grid-template-columns:1fr;
    gap:22px;
  }

  .strength-detail-grid{
    grid-template-columns:1fr;
  }

  .strength-value-row{
    grid-template-columns:1fr;
  }

  .strength-value-row>div{
    border-right:0;
    border-bottom:1px solid rgba(255,255,255,.18);
  }

  .strength-value-row>div:last-child{
    border-bottom:0;
  }
}

@media(max-width:560px){
  .header-main,
  .global-nav{
    width:calc(100% - 28px) !important;
  }

  .header-main{
    height:68px !important;
  }

  .site-header .brand{
    height:68px !important;
  }

  .site-header .brand-logo{
    height:52px !important;
    max-height:52px !important;
    max-width:180px !important;
  }

  .global-nav{
    height:52px !important;
  }

  .global-nav .nav-item{
    flex-basis:112px !important;
    min-width:112px !important;
    height:52px !important;
  }

  .strength-detail-grid article{
    min-height:0;
    padding:28px 22px;
  }

  .strength-detail-grid h3{
    font-size:18px;
  }
}


/* =========================================================
   Strength section background image
   ========================================================= */
.home-strength{
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(90deg, rgba(0,71,163,.88) 0%, rgba(0,101,226,.85) 48%, rgba(0,84,188,.88) 100%),
    url("../img/strength-bg.jpg") center center / cover no-repeat !important;
}

.home-strength::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(255,255,255,.04) 0%, rgba(255,255,255,0) 22%, rgba(0,0,0,.08) 100%);
  pointer-events:none;
}

.home-strength > .container{
  position:relative;
  z-index:2;
}

.home-strength .strength-detail-grid,
.home-strength .strength-value-row{
  backdrop-filter: blur(1.5px);
}

.home-strength .strength-detail-grid article,
.home-strength .strength-value-row > div{
  background: rgba(0,0,0,.04);
}

@media(max-width:560px){
  .home-strength{
    background:
      linear-gradient(90deg, rgba(0,71,163,.90) 0%, rgba(0,101,226,.88) 48%, rgba(0,84,188,.90) 100%),
      url("../img/strength-bg.jpg") center center / cover no-repeat !important;
  }
}


/* =========================================================
   News list with thumbnails
   ========================================================= */
.news-card-list{
  display:grid;
  gap:0;
  border-top:1px solid var(--line);
}
.news-card-item{
  display:grid;
  grid-template-columns:180px 1fr;
  gap:22px;
  padding:22px 0;
  border-bottom:1px solid var(--line);
  align-items:center;
}
.news-thumb{
  width:180px;
  height:120px;
  overflow:hidden;
  background:#eef3f8;
}
.news-thumb img,
.news-image-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.news-card-body time,
.news-image-body time{
  display:inline-block;
  margin-right:10px;
  color:#5f6e79;
  font:700 14px/1 Roboto,sans-serif;
}
.news-card-body span,
.news-image-body span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:84px;
  height:26px;
  padding:0 10px;
  border:1px solid #cfdbe8;
  color:#0065E2;
  font:700 14px/1 Roboto,sans-serif;
  letter-spacing:.04em;
}
.news-card-body p{
  margin:14px 0 0;
  color:#172635;
  font-size:18px;
  line-height:1.7;
}
.news-image-list{
  display:grid;
  gap:0;
  border-top:1px solid var(--line);
}
.news-image-item{
  display:grid !important;
  grid-template-columns:240px 1fr !important;
  gap:28px;
  padding:28px 0;
  border-bottom:1px solid var(--line);
  align-items:start;
}
.news-image-thumb{
  width:240px;
  height:155px;
  overflow:hidden;
  background:#eef3f8;
}
.news-image-body p{
  margin:14px 0 10px;
  color:#172635;
  font-size:22px;
  line-height:1.6;
  font-weight:700;
}
.news-image-body b{
  display:block;
  color:#63717c;
  font-weight:500;
  font-size:15px;
  line-height:1.9;
}
.news-empty-list,
.news-empty-page{
  border:none !important;
}
@media(max-width:920px){
  .news-card-item{grid-template-columns:150px 1fr; gap:18px;}
  .news-thumb{width:150px;height:100px;}
  .news-image-item{grid-template-columns:190px 1fr !important; gap:20px;}
  .news-image-thumb{width:190px;height:126px;}
  .news-card-body p{font-size:17px;}
  .news-image-body p{font-size:20px;}
}
@media(max-width:560px){
  .news-card-item,
  .news-image-item{
    grid-template-columns:1fr !important;
    gap:14px;
  }
  .news-thumb,
  .news-image-thumb{
    width:100%;
    height:190px;
  }
  .news-card-body p{font-size:17px;}
  .news-image-body p{font-size:18px;}
  .news-image-body b{font-size:14px;}
}


/* =========================================================
   FINAL 2026-08-30: one-line header / news fix / image-only strength / bilingual
   ========================================================= */

/* ---- One-line desktop header ---- */
.site-header{
  display:block !important;
  position:sticky !important;
  top:0;
  z-index:200;
  width:100%;
  background:rgba(255,255,255,.98) !important;
  border-bottom:1px solid #e5ebf0;
  box-shadow:none !important;
}
.header-main{
  width:min(1320px,calc(100% - 40px)) !important;
  max-width:1320px !important;
  height:86px !important;
  margin:0 auto !important;
  padding:0 !important;
  display:grid !important;
  grid-template-columns:190px minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:22px !important;
  background:#fff !important;
}
.site-header .brand{
  width:190px !important;
  min-width:190px !important;
  height:86px !important;
  padding:8px 0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  overflow:hidden !important;
  border:0 !important;
}
.site-header .brand-logo{
  width:auto !important;
  height:68px !important;
  max-width:176px !important;
  max-height:68px !important;
  object-fit:contain !important;
}
.header-tools{
  grid-column:3 !important;
  height:86px !important;
  display:flex !important;
  align-items:stretch !important;
  justify-content:flex-end !important;
  border:0 !important;
  background:#fff !important;
}
.header-tools>a{
  height:86px !important;
  padding:0 18px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-left:1px solid #e5ebf0 !important;
  white-space:nowrap !important;
}
.header-tools>a:first-child{min-width:190px !important;}
.header-tools .mail-tool{
  min-width:142px !important;
  background:#0065E2 !important;
  color:#fff !important;
}
.global-nav{
  grid-column:2 !important;
  grid-row:1 !important;
  position:static !important;
  width:100% !important;
  max-width:none !important;
  height:86px !important;
  margin:0 !important;
  padding:0 !important;
  display:flex !important;
  align-items:stretch !important;
  justify-content:center !important;
  overflow:visible !important;
  border:0 !important;
  background:#fff !important;
}
.global-nav .nav-item{
  flex:1 1 0 !important;
  min-width:86px !important;
  max-width:124px !important;
  height:86px !important;
  padding:0 8px !important;
  border-left:0 !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:center !important;
  white-space:nowrap !important;
}
.global-nav .nav-item span,
.global-nav .nav-item small{
  white-space:nowrap !important;
}
.global-nav .nav-item span{font-size:14px !important;}
.global-nav .nav-item small{font-size:14px !important; margin-top:2px !important;}
.site-header.is-scrolled{box-shadow:0 6px 22px rgba(0,73,160,.07) !important;}

/* language switch */
.lang-switch{
  height:86px;
  min-width:92px;
  padding:0 12px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  border-left:1px solid #e5ebf0;
  color:#7b8994;
  background:#fff;
}
.lang-btn{
  appearance:none;border:0;background:transparent;padding:0;
  font:700 14px/1 Roboto,sans-serif;color:#7b8994;cursor:pointer;
}
.lang-btn.active{color:#0065E2;}
.lang-switch span{font-size:14px;color:#aeb9c2;}

/* ---- News layout hard reset ---- */
.home-news .news-list.news-card-list{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:0 !important;
  width:100% !important;
  border-top:1px solid var(--line) !important;
}
.home-news .news-card-item{
  display:grid !important;
  grid-template-columns:190px minmax(0,1fr) !important;
  grid-template-rows:auto !important;
  gap:24px !important;
  align-items:center !important;
  width:100% !important;
  padding:22px 0 !important;
  margin:0 !important;
  border-bottom:1px solid var(--line) !important;
  background:#fff !important;
}
.home-news .news-thumb{
  grid-column:1 !important;
  width:190px !important;
  height:126px !important;
  overflow:hidden !important;
}
.home-news .news-card-body{
  grid-column:2 !important;
  min-width:0 !important;
  display:block !important;
}
.home-news .news-card-body time,
.home-news .news-card-body span{
  display:inline-flex !important;
  vertical-align:middle !important;
}
.home-news .news-card-body p{
  display:block !important;
  width:100% !important;
  margin:14px 0 0 !important;
  font-size:17px !important;
  line-height:1.75 !important;
  color:#172635 !important;
  overflow-wrap:anywhere !important;
}

.news-page .news-image-list{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:0 !important;
  width:100% !important;
  border-top:1px solid var(--line) !important;
}
.news-page .news-image-item{
  display:grid !important;
  grid-template-columns:260px minmax(0,1fr) !important;
  gap:30px !important;
  align-items:center !important;
  width:100% !important;
  padding:28px 0 !important;
  border-bottom:1px solid var(--line) !important;
}
.news-page .news-image-thumb{
  width:260px !important;
  height:170px !important;
}
.news-page .news-image-body{
  min-width:0 !important;
  display:block !important;
}
.news-page .news-image-body p{
  display:block !important;
  width:100% !important;
  margin:14px 0 10px !important;
  font-size:20px !important;
  line-height:1.65 !important;
  overflow-wrap:anywhere !important;
}
.news-page .news-image-body b{
  display:block !important;
  font-size:15px !important;
  line-height:1.9 !important;
  color:#65737e !important;
  font-weight:500 !important;
}

/* ---- Strength: background image only, no blue overlay/background ---- */
.home-strength{
  position:relative !important;
  background:url("../img/strength-bg.jpg") center center / cover no-repeat !important;
  color:#fff !important;
}
.home-strength::after{display:none !important;}
.home-strength:before{display:none !important;}
.home-strength > .container{position:relative;z-index:2;}
.home-strength-head,
.strength-detail-grid,
.strength-value-row{
  text-shadow:0 2px 14px rgba(0,0,0,.55);
}
.strength-detail-grid,
.strength-value-row{
  border-color:rgba(255,255,255,.55) !important;
  backdrop-filter:none !important;
}
.strength-detail-grid article,
.strength-value-row>div{
  background:rgba(0,0,0,.10) !important;
  border-color:rgba(255,255,255,.45) !important;
}
.home-strength-lead,
.strength-detail-grid p,
.strength-value-row p{
  color:#fff !important;
}
.strength-number,
.strength-value-row span,
.home-strength .eyebrow{color:#fff !important;}

/* remove marquee if stale cache / old html remains */
.brand-marquee{display:none !important;}

@media(max-width:1180px){
  .header-main{grid-template-columns:165px minmax(0,1fr) auto !important;gap:10px !important;}
  .site-header .brand{width:165px !important;min-width:165px !important;}
  .site-header .brand-logo{max-width:155px !important;height:62px !important;}
  .global-nav .nav-item{min-width:74px !important;padding:0 5px !important;}
  .header-tools>a:first-child{min-width:160px !important;padding:0 12px !important;}
  .header-tools .mail-tool{min-width:126px !important;padding:0 12px !important;}
  .lang-switch{min-width:78px;padding:0 8px;}
}
@media(max-width:920px){
  .header-main{
    width:calc(100% - 28px) !important;
    height:72px !important;
    grid-template-columns:155px 1fr auto !important;
  }
  .site-header .brand{height:72px !important;width:155px !important;min-width:155px !important;}
  .site-header .brand-logo{height:56px !important;max-height:56px !important;max-width:148px !important;}
  .global-nav{
    height:72px !important;
    overflow-x:auto !important;
    justify-content:flex-start !important;
  }
  .global-nav .nav-item{flex:0 0 100px !important;height:72px !important;}
  .header-tools>a:first-child,.header-tools .mail-tool{display:none !important;}
  .lang-switch{height:72px;min-width:76px;border-left:0;}
  .home-news .news-card-item{grid-template-columns:160px minmax(0,1fr) !important;}
  .home-news .news-thumb{width:160px !important;height:106px !important;}
  .news-page .news-image-item{grid-template-columns:200px minmax(0,1fr) !important;}
  .news-page .news-image-thumb{width:200px !important;height:132px !important;}
}
@media(max-width:620px){
  .header-main{grid-template-columns:145px minmax(0,1fr) 66px !important;gap:6px !important;}
  .global-nav .nav-item{flex:0 0 94px !important;min-width:94px !important;}
  .global-nav .nav-item small{font-size:14px !important;}
  .home-news .news-card-item,
  .news-page .news-image-item{grid-template-columns:1fr !important;gap:14px !important;}
  .home-news .news-thumb,
  .news-page .news-image-thumb{width:100% !important;height:190px !important;}
}


/* =========================================================
   HOME V3 — client-priority visual redesign (homepage only)
   ========================================================= */
.home-v3{background:#fff;overflow:hidden}
.home-v3 .section{padding:110px 0}
.v3-hero{position:relative;min-height:650px;display:flex;align-items:center;color:#fff;overflow:hidden}
.v3-hero-bg{position:absolute;inset:0;background:url('../img/strength-bg.jpg') center/cover no-repeat;transform:scale(1.025)}
.v3-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,25,47,.84) 0%,rgba(0,68,155,.56) 48%,rgba(0,55,125,.16) 78%)}
.v3-hero-inner{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:flex-end;gap:40px;padding:115px 0 105px}
.v3-hero-copy{max-width:760px}.v3-kicker{display:block;font-size:14px;font-weight:800;letter-spacing:.2em;margin-bottom:20px}
.v3-hero h1{margin:0;font-size:68px;line-height:1.12;font-weight:800;letter-spacing:.01em}.v3-hero h1 em{font-style:normal;color:#c9e5ff}
.v3-hero-copy>p{font-size:18px;line-height:2;margin:28px 0 0}.v3-hero-actions{display:flex;gap:14px;margin-top:32px}.v3-btn{min-width:190px;height:54px;padding:0 24px;display:inline-flex;align-items:center;justify-content:center;font-size:15px;font-weight:700;transition:.3s ease}.v3-btn:hover{transform:translateY(-2px)}.v3-btn-white{background:#fff;color:#0d2743}.v3-btn-line{border:1px solid rgba(255,255,255,.55);color:#fff}.v3-hero-note{text-align:right;align-self:flex-end;padding-bottom:8px}.v3-hero-note span{display:block;font-size:14px;letter-spacing:.16em;color:#b9d9ff}.v3-hero-note strong{display:block;font-size:18px;line-height:1.55;margin-top:8px;letter-spacing:.05em}

.v3-values-wrap{position:relative;z-index:4;margin-top:-48px}.v3-values{background:#fff;box-shadow:0 22px 55px rgba(8,49,96,.12);display:grid;grid-template-columns:repeat(3,1fr)}.v3-values article{display:grid;grid-template-columns:64px 1fr;gap:20px;align-items:center;padding:30px 32px;border-right:1px solid #e2e9ef}.v3-values article:last-child{border-right:0}.v3-icon{width:58px;height:58px;display:grid;place-items:center;border:1px solid #cfe0f4}.v3-icon svg{width:34px;height:34px;fill:none;stroke:#0065E2;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.v3-values span,.v3-section-head>div>span,.v3-about-copy>span{display:block;font-size:14px;font-weight:800;letter-spacing:.14em;color:#0065E2}.v3-values h2{font-size:20px;margin:5px 0 2px;color:#14283d}.v3-values p{font-size:14px;margin:0;color:#74818d}

.v3-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:44px}.v3-section-head h2{font-size:40px;margin:7px 0 0;color:#12263b;line-height:1.25}.v3-section-head>p{max-width:560px;text-align:right;margin:0;color:#64727e;font-size:16px}.v3-section-head.compact{margin-bottom:34px}.v3-text-link{display:inline-flex;align-items:center;gap:14px;color:#0065E2;font-size:15px;font-weight:700}.v3-text-link b{font-size:18px}

.v3-strength{background:#f7f9fb}.v3-strength-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.v3-strength-card{display:grid;grid-template-columns:150px 1fr;min-height:310px;background:#fff;border:1px solid #e1e7ed;overflow:hidden;transition:transform .35s ease,box-shadow .35s ease}.v3-strength-card:hover{transform:translateY(-4px);box-shadow:0 16px 38px rgba(14,52,90,.09)}.v3-strength-visual{position:relative;display:flex;align-items:center;justify-content:center;background:#eef5ff;border-right:1px solid #dbe7f5}.v3-strength-visual:before{content:"";position:absolute;inset:18px;border:1px solid rgba(0,101,226,.13)}.v3-strength-visual svg{width:72px;height:72px;fill:none;stroke:#0065E2;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;position:relative;z-index:2}.v3-no{position:absolute;top:22px;left:22px;color:#0065E2;font-size:14px;font-weight:800;z-index:2}.v3-strength-content{padding:34px 34px 30px}.v3-strength-content h3{font-size:22px;line-height:1.5;margin:0 0 18px;color:#162a40}.v3-strength-content p{margin:16px 0 0;font-size:15px;line-height:1.9;color:#64727d}.v3-strength-content>strong{display:block;font-size:17px;color:#0065E2;margin-bottom:8px}.v3-chips,.v3-points{display:flex;flex-wrap:wrap;gap:8px}.v3-chips span,.v3-points span{display:inline-flex;align-items:center;height:30px;padding:0 12px;background:#f1f6fc;color:#31506e;font-size:14px;font-weight:700}.v3-mini-flow{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.v3-mini-flow span{font-size:14px;font-weight:700;color:#31506e;background:#f1f6fc;padding:7px 10px}.v3-mini-flow i{font-style:normal;color:#0065E2;font-weight:700}

.v3-products{background:#fff}.v3-product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.v3-product-card{position:relative;min-height:330px;display:flex;align-items:flex-end;overflow:hidden;background-position:center;background-size:cover}.v3-product-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,20,38,.02) 35%,rgba(4,20,38,.8) 100%);transition:.4s ease}.v3-product-card:hover:before{background:linear-gradient(180deg,rgba(0,58,132,.06) 25%,rgba(0,64,145,.84) 100%)}.v3-product-card>div{position:relative;z-index:2;padding:26px;color:#fff}.v3-product-card span{font-size:14px;letter-spacing:.1em;font-weight:700;color:#bcdcff}.v3-product-card h3{font-size:24px;margin:6px 0 0}.v3-product-card.p1{background-image:url('https://images.unsplash.com/photo-1534482421-64566f976cfa?auto=format&fit=crop&w=900&q=80')}.v3-product-card.p2{background-image:url('https://images.unsplash.com/photo-1544145945-f90425340c7e?auto=format&fit=crop&w=900&q=80')}.v3-product-card.p3{background-image:url('https://images.unsplash.com/photo-1583947581924-860bda6a26df?auto=format&fit=crop&w=900&q=80')}.v3-product-card.p4{background-image:url('https://images.unsplash.com/photo-1586023492125-27b2c045efd7?auto=format&fit=crop&w=900&q=80')}

.v3-business{position:relative;background:url('../img/flow-bg.jpg') center/cover no-repeat;color:#fff;overflow:hidden}.v3-business:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,37,70,.76),rgba(8,78,172,.48));pointer-events:none}.v3-business > .container{position:relative;z-index:2}.v3-business .v3-section-head h2{color:#fff}.v3-business .v3-section-head>div>span{color:#88bcff}.v3-business .v3-section-head>p{color:#d7e3ef}.v3-business-flow{display:grid;grid-template-columns:1fr 54px 1fr 54px 1fr;align-items:center}.v3-business-flow>a{display:block;min-height:250px;padding:30px;border:1px solid rgba(255,255,255,.17);background:rgba(6,29,53,.18);backdrop-filter:blur(1px);transition:.3s ease}.v3-business-flow>a:hover{background:rgba(255,255,255,.08)}.v3-business-flow>i{text-align:center;font-style:normal;font-size:28px;color:#b8d6ff}.v3-business-flow>a>span{font-size:14px;font-weight:800;color:#a8ccff}.flow-icon{font-size:14px;letter-spacing:.16em;color:#b9d8ff;border-bottom:1px solid rgba(255,255,255,.18);padding:25px 0 18px;margin-bottom:18px}.v3-business-flow h3{font-size:22px;margin:0 0 10px}.v3-business-flow p{font-size:15px;color:#e0ebf6;margin:0;line-height:1.8}

.v3-about{background:#f7f9fb}.v3-about-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:center}.v3-about-copy h2{font-size:38px;line-height:1.45;margin:10px 0 20px;color:#14283d}.v3-about-copy p{font-size:16px;line-height:2;color:#63717c;max-width:650px}.v3-company-facts{border-top:1px solid #dbe3ea}.v3-company-facts>div{display:grid;grid-template-columns:115px 1fr;gap:20px;padding:18px 0;border-bottom:1px solid #dbe3ea}.v3-company-facts small{font-size:14px;letter-spacing:.09em;color:#0065E2;font-weight:800}.v3-company-facts strong{font-size:16px;color:#24394d}

.v3-news{background:#fff}.v3-news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.v3-news-grid>a{border:1px solid #e0e6eb;background:#fff;transition:.35s ease;overflow:hidden}.v3-news-grid>a:hover{transform:translateY(-4px);box-shadow:0 14px 32px rgba(14,52,90,.08)}.v3-news-grid img{width:100%;height:190px;object-fit:cover}.v3-news-grid>a>div{padding:20px 20px 24px}.v3-news-grid time{font-size:14px;color:#73808b;font-weight:700}.v3-news-grid span{display:inline-block;margin-left:10px;font-size:14px;font-weight:800;color:#0065E2;border:1px solid #c7d9ed;padding:3px 7px}.v3-news-grid h3{font-size:17px;line-height:1.65;margin:14px 0 0;color:#20354a}

.v3-cta{padding:72px 0;background:#0065E2;color:#fff}.v3-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.v3-cta span{font-size:14px;letter-spacing:.16em;font-weight:800;color:#cfe5ff}.v3-cta h2{font-size:30px;line-height:1.5;margin:8px 0 0}.v3-cta-actions{display:flex;gap:12px}.v3-cta-actions a{min-width:205px;height:64px;padding:0 20px;border:1px solid rgba(255,255,255,.34);display:flex;align-items:center;justify-content:center;font-size:17px;font-weight:700}.v3-cta-actions a:last-child{background:#fff;color:#0065E2}

@media(max-width:1000px){.v3-values{grid-template-columns:1fr}.v3-values article{border-right:0;border-bottom:1px solid #e2e9ef}.v3-strength-grid{grid-template-columns:1fr}.v3-product-grid{grid-template-columns:1fr 1fr}.v3-business-flow{grid-template-columns:1fr}.v3-business-flow>i{transform:rotate(90deg);padding:8px 0}.v3-about-grid{grid-template-columns:1fr;gap:48px}.v3-news-grid{grid-template-columns:1fr 1fr}.v3-hero-note{display:none}}
@media(max-width:640px){.home-v3 .section{padding:76px 0}.v3-hero{min-height:580px}.v3-hero-inner{padding:95px 0 80px}.v3-hero h1{font-size:43px}.v3-hero-copy>p{font-size:16px}.v3-hero-actions{flex-direction:column;align-items:flex-start}.v3-values-wrap{margin-top:0}.v3-values article{grid-template-columns:52px 1fr;padding:24px 20px}.v3-icon{width:48px;height:48px}.v3-section-head{display:block}.v3-section-head h2{font-size:32px}.v3-section-head>p{text-align:left;margin-top:18px}.v3-strength-card{grid-template-columns:1fr}.v3-strength-visual{min-height:150px;border-right:0;border-bottom:1px solid #dbe7f5}.v3-strength-content{padding:26px 22px}.v3-product-grid{grid-template-columns:1fr}.v3-product-card{min-height:280px}.v3-news-grid{grid-template-columns:1fr}.v3-about-copy h2{font-size:31px}.v3-company-facts>div{grid-template-columns:95px 1fr}.v3-cta-inner{display:block}.v3-cta h2{font-size:25px}.v3-cta-actions{margin-top:26px;flex-direction:column}.v3-cta-actions a{width:100%}}

/* English mode: one-line nav labels, no duplicated English subtitle */
html.lang-en .global-nav .nav-item small{display:none !important}
html.lang-en .global-nav .nav-item{justify-content:center !important}


/* Navigation: language switch already exists, so show only one language line */
.global-nav .nav-item small{
  display:none !important;
}
.global-nav .nav-item{
  justify-content:center !important;
}
.global-nav .nav-item span{
  font-size:14px !important;
  line-height:1.2 !important;
  margin:0 !important;
}
html.lang-en .global-nav .nav-item span{
  font-size:14px !important;
}


/* homepage banner slider */
.v3-banner-slider-wrap{position:relative;z-index:4;margin-top:-56px;padding-bottom:10px}
.v3-banner-slider{position:relative;background:#fff;box-shadow:0 22px 55px rgba(8,49,96,.12);overflow:hidden}
.v3-banner-stage{position:relative;aspect-ratio:16/9;min-height:320px;background:#eef3f8}
.v3-banner-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .7s ease, visibility .7s ease;display:block}
.v3-banner-slide.is-active{opacity:1;visibility:visible;z-index:2}
.v3-banner-slide img{width:100%;height:100%;display:block;object-fit:cover}
.v3-banner-controls{position:absolute;left:32px;right:32px;bottom:24px;display:flex;align-items:center;justify-content:space-between;z-index:5;pointer-events:none}
.v3-banner-arrow,.v3-banner-dots{pointer-events:auto}
.v3-banner-arrow{width:46px;height:46px;border:0;border-radius:50%;background:rgba(255,255,255,.9);color:#0f2b49;font-size:30px;line-height:1;display:grid;place-items:center;box-shadow:0 10px 24px rgba(8,49,96,.14);cursor:pointer;transition:transform .25s ease, background .25s ease}
.v3-banner-arrow:hover{transform:translateY(-2px);background:#fff}
.v3-banner-dots{display:flex;gap:10px;align-items:center;justify-content:center}
.v3-banner-dots button{width:12px;height:12px;border-radius:50%;border:0;background:rgba(255,255,255,.55);box-shadow:0 0 0 1px rgba(0,0,0,.08) inset;cursor:pointer;transition:transform .25s ease, background .25s ease}
.v3-banner-dots button.is-active{background:#0065E2;transform:scale(1.15)}
@media(max-width:1000px){.v3-banner-stage{min-height:260px}.v3-banner-controls{left:20px;right:20px;bottom:18px}}
@media(max-width:640px){.v3-banner-slider-wrap{margin-top:0;padding-top:18px}.v3-banner-stage{min-height:180px}.v3-banner-controls{left:14px;right:14px;bottom:12px}.v3-banner-arrow{width:38px;height:38px;font-size:25px}.v3-banner-dots{gap:8px}.v3-banner-dots button{width:10px;height:10px}}


/* =========================================================
   Hero banner carousel — replaces original homepage hero
   ========================================================= */
.v3-hero-slider{
  position:relative;
  width:100%;
  overflow:hidden;
  background:#eef3f8;
}
.v3-hero-slider-stage{
  position:relative;
  width:100%;
  aspect-ratio:1672/941;
  min-height:560px;
  max-height:760px;
  overflow:hidden;
}
.v3-hero-slider-slide{
  position:absolute;
  inset:0;
  display:block;
  opacity:0;
  visibility:hidden;
  transition:opacity .8s cubic-bezier(.22,.61,.36,1), visibility .8s linear;
}
.v3-hero-slider-slide.is-active{
  opacity:1;
  visibility:visible;
  z-index:2;
}
.v3-hero-slider-slide img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
}
.v3-hero-slider-arrow{
  position:absolute;
  z-index:6;
  top:50%;
  transform:translateY(-50%);
  width:48px;
  height:48px;
  border:1px solid rgba(255,255,255,.75);
  border-radius:50%;
  background:rgba(255,255,255,.78);
  color:#12304f;
  font-size:32px;
  line-height:1;
  display:grid;
  place-items:center;
  cursor:pointer;
  box-shadow:0 8px 22px rgba(8,49,96,.14);
  transition:background .25s ease, transform .25s ease;
}
.v3-hero-slider-arrow:hover{
  background:#fff;
  transform:translateY(-50%) scale(1.04);
}
.v3-hero-slider-arrow.prev{left:28px}
.v3-hero-slider-arrow.next{right:28px}
.v3-hero-slider-dots{
  position:absolute;
  left:50%;
  bottom:26px;
  z-index:6;
  transform:translateX(-50%);
  display:flex;
  gap:10px;
}
.v3-hero-slider-dots button{
  width:11px;
  height:11px;
  padding:0;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.72);
  box-shadow:0 0 0 1px rgba(0,0,0,.08);
  cursor:pointer;
  transition:transform .25s ease, background .25s ease;
}
.v3-hero-slider-dots button.is-active{
  background:#0065E2;
  transform:scale(1.18);
}

/* restore the original three-value cards directly below hero */
.v3-values-wrap{
  margin-top:0 !important;
  padding-top:0;
}

/* hide obsolete below-hero carousel styles if any markup remains elsewhere */
.v3-banner-slider-wrap{display:none !important}

@media(max-width:1000px){
  .v3-hero-slider-stage{min-height:420px}
  .v3-hero-slider-arrow{width:44px;height:44px}
}
@media(max-width:640px){
  .v3-hero-slider-stage{min-height:260px;aspect-ratio:16/10}
  .v3-hero-slider-slide img{object-position:center}
  .v3-hero-slider-arrow{width:38px;height:38px;font-size:26px}
  .v3-hero-slider-arrow.prev{left:12px}
  .v3-hero-slider-arrow.next{right:12px}
  .v3-hero-slider-dots{bottom:14px}
}


/* Real-photo visuals for the four strength cards */
.v3-strength-photo{
  position:relative;
  min-height:100%;
  padding:0 !important;
  overflow:hidden;
  background:#edf4fb !important;
}
.v3-strength-photo .v3-no{
  position:absolute;
  top:14px;
  left:14px;
  z-index:3;
  min-width:38px;
  height:30px;
  padding:0 9px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0 !important;
  background:rgba(255,255,255,.92);
  color:#0065E2 !important;
  font-size:14px;
  font-weight:800;
  box-shadow:0 5px 16px rgba(0,48,110,.10);
}
.v3-strength-photo img{
  width:100%;
  height:100%;
  min-height:305px;
  display:block;
  object-fit:cover;
  object-position:center;
  transition:transform .75s cubic-bezier(.22,.61,.36,1);
}
.v3-strength-card:hover .v3-strength-photo img{
  transform:scale(1.035);
}
@media(max-width:1000px){
  .v3-strength-photo img{min-height:280px;}
}
@media(max-width:640px){
  .v3-strength-photo{min-height:220px !important;}
  .v3-strength-photo img{height:220px;min-height:220px;}
}

/* Sanshin inspired */
.sanshin-home{background:#fff;color:#12273d}.sanshin-home .section{padding:110px 0}.sh-hero{position:relative;min-height:690px;overflow:hidden;color:#fff;background:#0b2847}.sh-hero-track,.sh-hero-slide,.sh-hero-overlay{position:absolute;inset:0}.sh-hero-slide{background-size:cover;background-position:center;opacity:0;transition:opacity 1.1s ease}.sh-hero-slide.is-active{opacity:1}.sh-hero-overlay{background:linear-gradient(90deg,rgba(4,25,48,.72),rgba(4,39,79,.22) 55%,rgba(0,0,0,.02))}.sh-hero-inner{position:relative;z-index:2;min-height:690px;display:flex;align-items:flex-end;justify-content:space-between;padding-bottom:90px}.sh-hero-copy{max-width:780px}.sh-en{display:block;font-size:34px;line-height:1.15;font-weight:700;margin-bottom:24px;color:#d8e9ff}.sh-hero h1{font-size:62px;line-height:1.18;margin:0 0 24px}.sh-hero p{font-size:17px;line-height:1.95;margin:0}.sh-hero-index{display:flex;align-items:center;gap:12px;font-size:14px}.sh-hero-index i{width:90px;height:1px;background:rgba(255,255,255,.5)}.sh-news-strip{border-bottom:1px solid #e2e8ed}.sh-news-strip>.container{display:grid;grid-template-columns:200px 1fr;min-height:100px;align-items:center}.sh-news-label{display:flex;gap:12px;align-items:baseline}.sh-news-label span{font-weight:700;color:#0065E2}.sh-news-strip a{display:grid;grid-template-columns:115px 80px 1fr 30px;gap:12px;align-items:center;border-left:1px solid #e2e8ed;padding-left:30px}.sh-news-strip p{margin:0;font-size:14px}.sh-news-strip em{font-style:normal;color:#0065E2;font-size:14px;font-weight:700}.sh-about-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:110px}.sh-about-head span{display:block;font-size:24px;font-weight:700;color:#0065E2;margin-bottom:18px}.sh-about-head h2{font-size:44px;line-height:1.45;margin:0}.sh-about-copy p{font-size:16px;line-height:2;color:#5f6d78}.sh-more{display:inline-flex;align-items:center;gap:28px;margin-top:14px;font-size:14px;font-weight:700}.sh-more span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#0065E2;color:#fff}.sh-business{background:#f6f8fa}.sh-section-title{margin-bottom:44px}.sh-section-title>span,.sh-section-title>div>span{display:block;color:#0065E2;font-weight:700;margin-bottom:8px}.sh-section-title h2{font-size:42px;margin:0}.sh-section-title.row{display:flex;align-items:end;justify-content:space-between}.sh-section-title.row .sh-more{margin:0}.sh-business-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;grid-template-rows:310px 310px;gap:16px}.sh-business-card{position:relative;overflow:hidden;background-size:cover;background-position:center;display:flex;align-items:flex-end;color:#fff}.sh-business-card.large{grid-row:1/3}.sh-business-card.wide{grid-column:2/4}.sh-business-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.02),rgba(3,22,40,.75))}.sh-business-card>div{position:relative;z-index:2;padding:28px 30px}.sh-business-card h3{font-size:27px;margin:6px 0}.sh-business-card p{font-size:14px;margin:0}.sh-products-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.sh-products-grid>a{position:relative;overflow:hidden}.sh-products-grid>a>span{position:absolute;z-index:2;top:14px;left:14px;width:40px;height:40px;background:#fff;display:grid;place-items:center;color:#0065E2}.sh-products-grid .photo{height:310px;background-size:cover;background-position:center}.sh-products-grid h3{font-size:20px;margin:14px 0 0}.sh-strength{background:#0e2945;color:#fff}.sh-strength .sh-section-title h2{color:#fff}.sh-strength-list{border-top:1px solid rgba(255,255,255,.18)}.sh-strength-list article{display:grid;grid-template-columns:90px 330px 1fr;gap:30px;padding:32px 0;border-bottom:1px solid rgba(255,255,255,.18)}.sh-strength-list article>span{color:#83b9f8}.sh-strength-list h3{font-size:22px;margin:0}.sh-strength-list p{font-size:15px;line-height:1.9;margin:0;color:#c7d3df}.sh-latest-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.sh-latest-grid img{width:100%;height:210px;object-fit:cover;margin-bottom:18px}.sh-latest-grid h3{font-size:17px;line-height:1.7;margin:10px 0 0}.sh-latest-grid time{font-size:14px;color:#71808c}.sh-latest-grid div>span{margin-left:10px;color:#0065E2;font-size:14px}.sh-contact{padding:90px 0;background:#0065E2;color:#fff}.sh-contact-inner{display:flex;align-items:center;justify-content:space-between}.sh-contact h2{font-size:38px;line-height:1.45;margin:0}.sh-contact>div>div>span{display:block;margin-bottom:10px}.sh-contact a{width:230px;height:84px;background:#fff;color:#0065E2;display:flex;align-items:center;justify-content:center;gap:28px;font-weight:700}@media(max-width:900px){.sh-about-grid{grid-template-columns:1fr;gap:40px}.sh-business-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto}.sh-business-card,.sh-business-card.large,.sh-business-card.wide{grid-column:auto;grid-row:auto;min-height:320px}.sh-products-grid{grid-template-columns:1fr 1fr}.sh-strength-list article{grid-template-columns:70px 230px 1fr}.sh-latest-grid{grid-template-columns:1fr 1fr}}@media(max-width:640px){.sanshin-home .section{padding:80px 0}.sh-hero,.sh-hero-inner{min-height:560px}.sh-hero h1{font-size:42px}.sh-en{font-size:24px}.sh-hero-index{display:none}.sh-news-strip>.container{grid-template-columns:1fr;padding:16px 0}.sh-news-strip a{grid-template-columns:90px 60px 1fr;border-left:0;padding-left:0}.sh-news-strip a b{display:none}.sh-about-head h2,.sh-section-title h2,.sh-contact h2{font-size:31px}.sh-business-grid,.sh-products-grid,.sh-latest-grid{grid-template-columns:1fr}.sh-strength-list article{grid-template-columns:48px 1fr}.sh-strength-list p{grid-column:2}.sh-contact-inner{display:block}.sh-contact a{margin-top:25px}}


/* === 2026-09 header / hero refinements === */
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.92) !important;box-shadow:none !important;backdrop-filter:saturate(140%) blur(12px);border-bottom:1px solid rgba(225,232,238,.75)}
.header-main{max-width:1480px !important;height:108px !important;margin:0 auto !important;padding:0 28px !important;display:grid !important;grid-template-columns:220px minmax(0,1fr) 72px !important;align-items:center !important;gap:26px !important;justify-content:unset !important}
.site-header .brand{padding:0 !important;width:220px !important;min-width:220px !important;height:108px !important;display:flex !important;align-items:center !important}
.site-header .brand-logo{width:176px !important;max-width:176px !important;height:auto !important;display:block}
.header-tools{height:auto !important;display:flex !important;align-items:center !important;justify-content:flex-end !important}
.header-tools>a{display:none !important}
.header-tools .lang-switch{display:flex !important;align-items:center;justify-content:center;gap:8px;color:#667788;font:700 16px Roboto,sans-serif;white-space:nowrap}
.header-tools .lang-switch button{border:0;background:none;padding:0;color:#8a97a2;font:700 16px Roboto,sans-serif;cursor:pointer}
.header-tools .lang-switch button.active{color:#0065E2}
.global-nav{height:108px !important;border-top:0 !important;display:flex !important;align-items:center !important;justify-content:center !important;gap:38px !important;overflow:visible !important;white-space:nowrap !important}
.global-nav .nav-item{min-width:auto !important;padding:0 !important;border-left:0 !important;height:auto !important;display:flex !important;align-items:center !important;justify-content:center !important;flex:0 0 auto !important;position:relative}
.global-nav .nav-item:first-child{border-left:0 !important}
.global-nav .nav-item span{font-size:18px !important;font-weight:600 !important;line-height:1 !important;white-space:nowrap !important;transform:none !important}
.global-nav .nav-item small{display:none !important}
.global-nav .nav-item:after{height:2px !important;bottom:-18px !important}
.global-nav .nav-item:hover span{transform:none !important}
.site-header.is-scrolled{background:rgba(255,255,255,.95) !important;box-shadow:0 10px 30px rgba(0,73,160,.08) !important}
body.home-page .site-header{position:absolute !important;left:0;right:0;top:0;background:transparent !important;backdrop-filter:none !important;border-bottom:0 !important}
body.home-page .site-header.is-scrolled{position:fixed !important;background:rgba(255,255,255,.92) !important;backdrop-filter:saturate(140%) blur(12px) !important;border-bottom:1px solid rgba(225,232,238,.75) !important}
body.home-page .sh-hero{min-height:100vh !important;height:100vh !important;background:#0b2847}
body.home-page .sh-hero-track,body.home-page .sh-hero-slide,body.home-page .sh-hero-overlay{top:0;bottom:0}
body.home-page .sh-hero-inner{min-height:100vh !important;align-items:center !important;padding-top:140px !important;padding-bottom:56px !important}
body.home-page .sh-hero-copy{max-width:760px !important}
body.home-page .sh-en{font-size:44px !important;line-height:1.1 !important}
body.home-page .sh-hero h1{font-size:76px !important;line-height:1.12 !important}
body.home-page .sh-hero p{font-size:18px !important;line-height:1.9 !important}
@media (max-width:1200px){
  .header-main{grid-template-columns:180px minmax(0,1fr) 66px !important;gap:18px !important;padding:0 20px !important}
  .site-header .brand,.site-header .brand-logo{width:auto !important;max-width:158px !important}
  .global-nav{gap:26px !important}
  .global-nav .nav-item span{font-size:16px !important}
}
@media (max-width:920px){
  .header-main{grid-template-columns:156px minmax(0,1fr) 58px !important;height:86px !important}
  .site-header .brand{height:86px !important;min-width:156px !important}
  .site-header .brand-logo{max-width:136px !important}
  .global-nav{height:86px !important;gap:16px !important;overflow-x:auto !important;justify-content:flex-start !important;padding-bottom:2px !important}
  .global-nav .nav-item span{font-size:14px !important}
  body.home-page .sh-hero,body.home-page .sh-hero-inner{min-height:720px !important;height:auto !important}
  body.home-page .sh-en{font-size:30px !important}
  body.home-page .sh-hero h1{font-size:52px !important}
}
@media (max-width:640px){
  .header-main{grid-template-columns:132px minmax(0,1fr) 54px !important;padding:0 12px !important;gap:10px !important;height:78px !important}
  .site-header .brand{min-width:132px !important;height:78px !important}
  .site-header .brand-logo{max-width:118px !important}
  .global-nav{height:78px !important;gap:12px !important}
  .global-nav .nav-item span{font-size:14px !important}
  .header-tools .lang-switch,.header-tools .lang-switch button{font-size:14px !important}
  body.home-page .sh-hero,body.home-page .sh-hero-inner{min-height:620px !important}
  body.home-page .sh-hero h1{font-size:40px !important}
  body.home-page .sh-en{font-size:24px !important}
  body.home-page .sh-hero p{font-size:15px !important}
}


/* === 2026-09-01 homepage transparent header + sticky hero scroll === */
:root{--header-height-home:108px;}
.sanshin-home--scrollstage{position:relative;overflow:clip;background:transparent;}
.home-page .site-header{position:fixed !important;top:0;left:0;right:0;z-index:120;background:transparent !important;border-bottom:0 !important;box-shadow:none !important;backdrop-filter:none !important;transition:background .38s ease, box-shadow .38s ease, border-color .38s ease, backdrop-filter .38s ease;}
.home-page .site-header:before{content:none !important;}
.home-page .header-main{max-width:1480px !important;height:var(--header-height-home) !important;padding:0 34px !important;display:grid !important;grid-template-columns:220px minmax(0,1fr) 72px !important;align-items:center !important;gap:28px !important;background:transparent !important;}
.home-page .site-header .brand,.home-page .site-header .brand-logo,.home-page .global-nav,.home-page .header-tools{background:transparent !important;box-shadow:none !important;}
.home-page .site-header .brand{width:220px !important;min-width:220px !important;height:var(--header-height-home) !important;padding:0 !important;display:flex !important;align-items:center !important;}
.home-page .site-header .brand-logo{width:170px !important;max-width:170px !important;height:auto !important;display:block;}
.home-page .global-nav{height:var(--header-height-home) !important;display:flex !important;align-items:center !important;justify-content:center !important;gap:44px !important;border-top:0 !important;white-space:nowrap !important;overflow:visible !important;}
.home-page .global-nav .nav-item{min-width:auto !important;flex:0 0 auto !important;height:auto !important;padding:0 !important;border-left:0 !important;color:rgba(255,255,255,.96) !important;position:relative;display:flex !important;align-items:center !important;justify-content:center !important;transition:color .28s ease;}
.home-page .global-nav .nav-item span{font-size:17px !important;font-weight:700 !important;line-height:1 !important;white-space:nowrap !important;color:inherit !important;transition:transform .32s cubic-bezier(.22,1,.36,1), color .28s ease, letter-spacing .28s ease !important;}
.home-page .global-nav .nav-item small{display:none !important;}
.home-page .global-nav .nav-item:before{content:'';position:absolute;left:-10px;right:-10px;bottom:-18px;height:16px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.22) 50%,transparent 100%);opacity:0;transform:translateX(-24px);filter:blur(10px);pointer-events:none;transition:opacity .32s ease, transform .45s cubic-bezier(.22,1,.36,1);}
.home-page .global-nav .nav-item:after{content:'';position:absolute;left:0;right:0;bottom:-18px;height:2px;background:currentColor;transform:scaleX(0);transform-origin:left center;transition:transform .38s cubic-bezier(.22,1,.36,1), opacity .28s ease;opacity:.9;width:auto !important;}
.home-page .global-nav .nav-item:hover span,.home-page .global-nav .nav-item:focus-visible span{transform:translateY(-3px);letter-spacing:.06em;}
.home-page .global-nav .nav-item:hover:before,.home-page .global-nav .nav-item:focus-visible:before{opacity:1;transform:translateX(18px);}
.home-page .global-nav .nav-item:hover:after,.home-page .global-nav .nav-item:focus-visible:after,.home-page .global-nav .nav-item.active:after{transform:scaleX(1);}
.home-page .global-nav .nav-item.active{color:#ffffff !important;}
.home-page .header-tools{display:flex !important;align-items:center !important;justify-content:flex-end !important;height:var(--header-height-home) !important;}
.home-page .lang-switch{display:flex !important;align-items:center;gap:8px;min-width:72px;justify-content:flex-end;color:rgba(255,255,255,.72) !important;}
.home-page .lang-switch button{color:rgba(255,255,255,.72) !important;background:none !important;border:0 !important;transition:color .24s ease;}
.home-page .lang-switch button.active{color:#ffffff !important;}
.home-page .site-header.is-scrolled{background:rgba(255,255,255,.94) !important;backdrop-filter:saturate(140%) blur(12px) !important;border-bottom:1px solid rgba(225,232,238,.78) !important;box-shadow:0 10px 30px rgba(0,73,160,.08) !important;}
.home-page .site-header.is-scrolled .global-nav .nav-item,.home-page .site-header.is-scrolled .lang-switch,.home-page .site-header.is-scrolled .lang-switch button{color:#2a3e53 !important;}
.home-page .site-header.is-scrolled .global-nav .nav-item.active,.home-page .site-header.is-scrolled .lang-switch button.active{color:#0065E2 !important;}
.home-page .site-header.is-scrolled .global-nav .nav-item:before{background:linear-gradient(90deg,transparent 0%,rgba(0,101,226,.16) 50%,transparent 100%);}
.home-page .sh-hero{position:sticky;top:0;min-height:100vh !important;height:100vh !important;overflow:hidden;color:#fff;background:#0b2847;z-index:0;}
.home-page .sh-hero-track,.home-page .sh-hero-slide,.home-page .sh-hero-overlay{position:absolute;inset:0;}
.home-page .sh-hero-track{z-index:0;}
.home-page .sh-hero-slide{background-size:cover;background-position:center center;background-repeat:no-repeat;}
.home-page .sh-hero-overlay{z-index:1;background:linear-gradient(90deg,rgba(4,25,48,.62),rgba(4,39,79,.26) 55%,rgba(0,0,0,.08));}
.home-page .sh-hero-inner{position:relative;z-index:2;min-height:100vh !important;display:flex;align-items:center !important;justify-content:space-between;padding-top:var(--header-height-home) !important;padding-bottom:54px !important;}
.home-page .sh-hero-copy{max-width:760px !important;}
.home-page .sh-en{font-size:42px !important;line-height:1.08 !important;color:#e8f2ff !important;margin-bottom:28px !important;}
.home-page .sh-hero h1{font-size:82px !important;line-height:1.08 !important;margin:0 0 28px !important;}
.home-page .sh-hero p{font-size:18px !important;line-height:1.95 !important;max-width:700px;}
.home-page .sh-hero-index{align-self:flex-end;margin-bottom:14px;}
.home-page .sh-about,.home-page .sh-news-strip,.home-page .sh-business,.home-page .sh-products,.home-page .sh-strength,.home-page .sh-latest,.home-page .sh-contact{position:relative;z-index:3;background:#fff;}
.home-page .sh-about{padding-top:120px !important;padding-bottom:120px !important;box-shadow:0 -1px 0 rgba(230,236,241,.86);}
.home-page .sh-about-grid{display:grid;grid-template-columns:1fr 1.08fr;gap:120px;}
.home-page .sh-about-head span{display:block;font-size:22px;font-weight:700;color:#0065E2;letter-spacing:.08em;margin-bottom:18px;}
.home-page .sh-about-head h2{font-size:48px;line-height:1.35;margin:0;}
.home-page .sh-about-copy p{font-size:17px;line-height:2;color:#5b6975;}
.home-page .sh-news-strip>.container{min-height:96px;}
.home-page .sh-news-strip{background:#fff;border-top:1px solid #e2e8ed;border-bottom:1px solid #e2e8ed;}
.home-page .sh-news-strip a{color:#13273d;}
@media (max-width:1200px){
  .home-page .header-main{grid-template-columns:190px minmax(0,1fr) 64px !important;gap:18px !important;padding:0 22px !important;}
  .home-page .site-header .brand{width:190px !important;min-width:190px !important;}
  .home-page .site-header .brand-logo{max-width:154px !important;}
  .home-page .global-nav{gap:28px !important;}
  .home-page .global-nav .nav-item span{font-size:15px !important;}
  .home-page .sh-hero h1{font-size:64px !important;}
  .home-page .sh-en{font-size:34px !important;}
  .home-page .sh-about-grid{gap:60px;}
}
@media (max-width:920px){
  :root{--header-height-home:88px;}
  .home-page .header-main{grid-template-columns:150px minmax(0,1fr) 56px !important;padding:0 14px !important;gap:10px !important;}
  .home-page .site-header .brand{width:150px !important;min-width:150px !important;}
  .home-page .site-header .brand-logo{max-width:132px !important;}
  .home-page .global-nav{justify-content:flex-start !important;gap:18px !important;overflow-x:auto !important;scrollbar-width:none !important;}
  .home-page .global-nav::-webkit-scrollbar{display:none;}
  .home-page .global-nav .nav-item span{font-size:14px !important;}
  .home-page .sh-hero,.home-page .sh-hero-inner{min-height:100svh !important;height:100svh !important;}
  .home-page .sh-hero h1{font-size:52px !important;}
  .home-page .sh-en{font-size:28px !important;}
  .home-page .sh-hero p{font-size:16px !important;}
  .home-page .sh-about-grid{grid-template-columns:1fr;gap:36px;}
  .home-page .sh-about-head h2{font-size:38px;}
}
@media (max-width:640px){
  :root{--header-height-home:78px;}
  .home-page .header-main{grid-template-columns:126px minmax(0,1fr) 48px !important;padding:0 10px !important;gap:8px !important;}
  .home-page .site-header .brand{width:126px !important;min-width:126px !important;}
  .home-page .site-header .brand-logo{max-width:112px !important;}
  .home-page .global-nav{gap:14px !important;}
  .home-page .global-nav .nav-item span{font-size:14px !important;}
  .home-page .sh-hero h1{font-size:40px !important;}
  .home-page .sh-en{font-size:22px !important;margin-bottom:18px !important;}
  .home-page .sh-hero p{font-size:15px !important;line-height:1.8 !important;}
  .home-page .sh-about{padding-top:84px !important;padding-bottom:84px !important;}
  .home-page .sh-about-head h2{font-size:30px;}
  .home-page .sh-about-copy p{font-size:15px;}
}


/* === 2026-09-01 refined homepage glass header + sticky first screen === */
:root{--home-header-h:96px;}
html{scroll-behavior:smooth;}
.home-page .site-header{
  position:fixed !important; top:0; left:0; right:0; z-index:120;
  background:transparent !important;
  border-bottom:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  transition:background .58s cubic-bezier(.22,1,.36,1),
             border-color .58s cubic-bezier(.22,1,.36,1),
             box-shadow .58s cubic-bezier(.22,1,.36,1),
             backdrop-filter .58s cubic-bezier(.22,1,.36,1);
}
.home-page .site-header::before,
.home-page .site-header::after{content:none !important;}
.home-page .header-main{
  max-width:1500px !important; margin:0 auto !important;
  height:var(--home-header-h) !important;
  display:grid !important; grid-template-columns:220px minmax(0,1fr) 78px !important;
  align-items:center !important; gap:34px !important; padding:0 28px !important;
  background:transparent !important;
}
.home-page .site-header .brand,
.home-page .site-header .brand-logo,
.home-page .site-header .header-tools,
.home-page .site-header .lang-switch,
.home-page .site-header .lang-switch button,
.home-page .site-header .lang-switch span{
  background:transparent !important; box-shadow:none !important;
}
.home-page .site-header .brand{
  width:220px !important; min-width:220px !important; height:var(--home-header-h) !important;
  padding:0 !important; display:flex !important; align-items:center !important; justify-content:center !important;
}
.home-page .site-header .brand-logo{
  width:112px !important; max-width:112px !important; height:auto !important;
  max-height:none !important; display:block !important; transform:translateY(-2px) !important;
}
.home-page .global-nav{
  display:flex !important; align-items:center !important; justify-content:center !important;
  gap:42px !important; height:var(--home-header-h) !important;
  white-space:nowrap !important; overflow:visible !important; border:0 !important; background:transparent !important;
}
.home-page .global-nav .nav-item{
  min-width:auto !important; flex:0 0 auto !important; height:auto !important; padding:0 !important;
  border:0 !important; display:flex !important; align-items:center !important; justify-content:center !important;
  position:relative; color:rgba(255,255,255,.96) !important;
  text-shadow:0 1px 10px rgba(0,0,0,.14);
  transition:color .35s ease;
}
.home-page .global-nav .nav-item span{
  font-size:17px !important; font-weight:700 !important; line-height:1 !important; white-space:nowrap !important;
  color:inherit !important;
  transition:transform .42s cubic-bezier(.22,1,.36,1), letter-spacing .35s ease, opacity .35s ease;
}
.home-page .global-nav .nav-item small{display:none !important;}
.home-page .global-nav .nav-item::before{
  content:''; position:absolute; left:-8px; right:-8px; bottom:-16px; height:14px;
  background:linear-gradient(90deg,transparent 0%, rgba(255,255,255,.24) 50%, transparent 100%);
  filter:blur(8px); opacity:0; transform:translateX(-22px);
  transition:opacity .35s ease, transform .46s cubic-bezier(.22,1,.36,1);
}
.home-page .global-nav .nav-item::after{
  content:''; position:absolute; left:0; right:0; bottom:-15px; height:2px; width:auto !important;
  background:currentColor; opacity:.95; transform:scaleX(0); transform-origin:left center;
  transition:transform .42s cubic-bezier(.22,1,.36,1);
}
.home-page .global-nav .nav-item:hover span,
.home-page .global-nav .nav-item:focus-visible span{transform:translateY(-3px); letter-spacing:.04em;}
.home-page .global-nav .nav-item:hover::before,
.home-page .global-nav .nav-item:focus-visible::before{opacity:1; transform:translateX(18px);}
.home-page .global-nav .nav-item:hover::after,
.home-page .global-nav .nav-item:focus-visible::after,
.home-page .global-nav .nav-item.active::after{transform:scaleX(1);}
.home-page .header-tools{
  height:var(--home-header-h) !important; display:flex !important; align-items:center !important; justify-content:flex-end !important;
}
.home-page .lang-switch{
  min-width:auto !important; width:auto !important; height:auto !important; padding:0 !important; border:0 !important;
  display:flex !important; align-items:center !important; gap:8px !important; background:transparent !important;
  color:rgba(255,255,255,.78) !important;
}
.home-page .lang-switch button,
.home-page .lang-switch span{color:rgba(255,255,255,.78) !important; font-weight:700 !important;}
.home-page .lang-switch button{padding:0 !important; border:0 !important;}
.home-page .lang-switch button.active{color:#ffffff !important;}
.home-page .site-header.is-scrolled{
  background:rgba(255,255,255,.72) !important;
  border-bottom:1px solid rgba(225,232,238,.75) !important;
  box-shadow:0 10px 34px rgba(0,59,130,.09) !important;
  backdrop-filter:blur(18px) saturate(160%) !important;
  -webkit-backdrop-filter:blur(18px) saturate(160%) !important;
}
.home-page .site-header.is-scrolled .global-nav .nav-item,
.home-page .site-header.is-scrolled .lang-switch,
.home-page .site-header.is-scrolled .lang-switch button,
.home-page .site-header.is-scrolled .lang-switch span{
  color:#203346 !important; text-shadow:none !important;
}
.home-page .site-header.is-scrolled .global-nav .nav-item.active,
.home-page .site-header.is-scrolled .lang-switch button.active{color:#0065E2 !important;}
.home-page .site-header.is-scrolled .global-nav .nav-item::before{
  background:linear-gradient(90deg,transparent 0%, rgba(0,101,226,.16) 50%, transparent 100%);
}
.home-page .sh-hero{
  position:sticky; top:0; z-index:0; min-height:100vh !important; height:100vh !important; overflow:hidden; background:#0b2847;
}
.home-page .home-top{position:relative; z-index:0;}
.home-page .sh-hero-track,.home-page .sh-hero-slide,.home-page .sh-hero-overlay{position:absolute; inset:0;}
.home-page .sh-hero-track{transform:scale(1); transform-origin:center; will-change:filter,transform;}
.home-page .sh-hero-slide{background-size:cover !important; background-position:center center !important; background-repeat:no-repeat !important;}
.home-page .sh-hero-overlay{
  z-index:1;
  background:linear-gradient(90deg, rgba(9,24,43,.36), rgba(12,59,121,.16) 52%, rgba(255,255,255,.06) 100%);
}
.home-page .sh-hero-inner{
  position:relative; z-index:2; min-height:100vh !important; display:flex; align-items:center !important; justify-content:space-between;
  padding-top:calc(var(--home-header-h) + 8px) !important; padding-bottom:54px !important;
}
.home-page .sh-hero-copy{
  max-width:780px !important; padding:0 !important; border-radius:0;
  margin-left:-24px;
  background:transparent; border:0;
  backdrop-filter:none; -webkit-backdrop-filter:none;
  box-shadow:none;
  transition:opacity .4s ease, transform .55s cubic-bezier(.22,1,.36,1);
}
.home-page .sh-en{font-size:38px !important; line-height:1.12 !important; margin-bottom:24px !important; color:#edf5ff !important;}
.home-page .sh-hero h1{font-size:80px !important; line-height:1.08 !important; margin:0 0 22px !important;}
.home-page .sh-hero p{font-size:18px !important; line-height:1.95 !important; max-width:650px;}
.home-page .sh-hero-index{align-self:flex-end; margin-bottom:10px;}
.home-page .sh-news-strip,
.home-page .sh-business,
.home-page .sh-products,
.home-page .sh-strength,
.home-page .sh-latest,
.home-page .sh-contact{position:relative; z-index:3; background:#fff;}
.home-page .sh-about{
  position:relative; z-index:2; min-height:100vh;
  display:flex; align-items:center;
  padding-top:calc(var(--home-header-h) + 70px) !important;
  padding-bottom:120px !important;
  color:#fff;
  background:rgba(8,34,68,.20) !important;
  backdrop-filter:blur(24px) saturate(125%);
  -webkit-backdrop-filter:blur(24px) saturate(125%);
  overflow:hidden;
}
.home-page .sh-about>.container{position:relative;z-index:2;width:min(1180px,calc(100% - 48px));}
.home-page .sh-about-head h2{color:#fff;}
.home-page .sh-about-head span{color:#d8e9ff;}
.home-page .sh-about-copy p{color:rgba(255,255,255,.9);}
.home-page .sh-about .sh-more{color:#fff;}
.home-page .sh-brand-marquee{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  z-index:1;
  height:22vh;
  min-height:132px;
  display:flex;
  align-items:flex-end;
  overflow:hidden;
  pointer-events:none;
  opacity:.25;
  mask-image:linear-gradient(90deg,transparent,#000 13%,#000 87%,transparent);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 13%,#000 87%,transparent);
}
.home-page .sh-brand-marquee::after{
  content:"";
  position:absolute;
  inset:18% 0 8%;
  background:linear-gradient(180deg,transparent,rgba(255,255,255,.1),transparent);
  filter:blur(18px);
}
.home-page .sh-brand-marquee-track{
  position:relative;
  z-index:1;
  display:flex;
  width:max-content;
  flex:0 0 auto;
  align-items:center;
  gap:clamp(46px,7vw,112px);
  white-space:nowrap;
  will-change:transform;
  transform:translateY(18%);
  animation:brandMarqueeX 32s linear infinite;
}
.home-page .sh-brand-marquee span{
  flex:0 0 auto;
  font:800 clamp(72px,10vw,152px)/1 Arial,Helvetica,sans-serif;
  letter-spacing:.08em;
  color:transparent;
  -webkit-text-stroke:1.15px rgba(255,255,255,.72);
  text-shadow:0 0 28px rgba(91,171,255,.26);
}
@keyframes brandMarqueeX{
  from{transform:translate3d(0,18%,0);}
  to{transform:translate3d(calc(-50% - clamp(23px,3.5vw,56px)),18%,0);}
}
@media (max-width:1200px){
  :root{--home-header-h:90px;}
  .home-page .header-main{grid-template-columns:188px minmax(0,1fr) 70px !important; gap:22px !important; padding:0 22px !important;}
  .home-page .site-header .brand{width:188px !important; min-width:188px !important;}
  .home-page .site-header .brand-logo{width:104px !important; max-width:104px !important; transform:translateY(-2px) !important;}
  .home-page .global-nav{gap:30px !important;}
  .home-page .global-nav .nav-item span{font-size:15px !important;}
  .home-page .sh-en{font-size:34px !important;}
  .home-page .sh-hero h1{font-size:66px !important;}
  .home-page .sh-hero-copy{padding:0 !important; margin-left:-18px;}
}
@media (max-width:920px){
  :root{--home-header-h:78px;}
  .home-page .header-main{grid-template-columns:152px minmax(0,1fr) 56px !important; gap:12px !important; padding:0 14px !important;}
  .home-page .site-header .brand{width:152px !important; min-width:152px !important;}
  .home-page .site-header .brand-logo{width:94px !important; max-width:94px !important; transform:translateY(-1px) !important;}
  .home-page .global-nav{justify-content:flex-start !important; overflow-x:auto !important; scrollbar-width:none !important; gap:18px !important;}
  .home-page .global-nav::-webkit-scrollbar{display:none;}
  .home-page .global-nav .nav-item span{font-size:14px !important;}
  .home-page .sh-hero,.home-page .sh-hero-inner{min-height:100svh !important; height:100svh !important;}
  .home-page .sh-hero-copy{max-width:min(100%, 88vw) !important; padding:0 !important; margin-left:0; border-radius:0;}
  .home-page .sh-en{font-size:28px !important;}
  .home-page .sh-hero h1{font-size:54px !important;}
  .home-page .sh-hero p{font-size:16px !important;}
  .home-page .sh-brand-marquee{
    bottom:0;
    height:18vh;
    min-height:120px;
    opacity:.21;
  }
  .home-page .sh-brand-marquee span{
    font-size:clamp(58px,15vw,110px);
  }
}
@media (max-width:640px){
  :root{--home-header-h:70px;}
  .home-page .header-main{grid-template-columns:126px minmax(0,1fr) 48px !important; gap:8px !important; padding:0 10px !important;}
  .home-page .site-header .brand{width:126px !important; min-width:126px !important;}
  .home-page .site-header .brand-logo{width:82px !important; max-width:82px !important; transform:none !important;}
  .home-page .global-nav{gap:14px !important;}
  .home-page .global-nav .nav-item span{font-size:14px !important;}
  .home-page .sh-en{font-size:22px !important; margin-bottom:16px !important;}
  .home-page .sh-hero h1{font-size:40px !important;}
  .home-page .sh-hero p{font-size:15px !important; line-height:1.8 !important;}
  .home-page .sh-brand-marquee{
    bottom:0;
    height:15vh;
    min-height:104px;
    opacity:.18;
  }
  .home-page .sh-brand-marquee-track{
    gap:42px;
    animation-duration:24s;
  }
  .home-page .sh-brand-marquee span{
    font-size:64px;
    letter-spacing:.06em;
  }
}
@media (prefers-reduced-motion:reduce){
  .home-page .sh-brand-marquee-track{
    animation:none !important;
  }
}

/* Keep the homepage header pinned through the complete two-screen scroll stage. */
html body.home-page > .site-header,
html body.home-page > .site-header.is-top,
html body.home-page > .site-header.is-scrolled{
  position:fixed !important;
  inset:0 0 auto 0 !important;
  width:100% !important;
  z-index:9999 !important;
  transform:translateZ(0);
  will-change:background-color,backdrop-filter;
}

/* Editorial strength section */
.home-page .sh-strength{
  position:relative;
  z-index:3;
  overflow:hidden;
  padding:140px 0 !important;
  color:#fff;
  background:
    radial-gradient(circle at 12% 12%,rgba(38,130,255,.28),transparent 34%),
    radial-gradient(circle at 88% 88%,rgba(0,174,239,.12),transparent 32%),
    #071d34 !important;
}
.home-page .sh-strength::before{
  content:"";
  position:absolute;
  width:620px;
  height:620px;
  top:-280px;
  right:-170px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:50%;
  box-shadow:0 0 0 90px rgba(255,255,255,.025),0 0 0 180px rgba(255,255,255,.018);
  pointer-events:none;
}
.sh-strength-layout{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.45fr);gap:90px;align-items:start;}
.sh-strength-intro{position:sticky;top:calc(var(--home-header-h) + 54px);}
.sh-strength-kicker{display:flex;align-items:center;gap:14px;color:#73b2ff;font-size:14px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;}
.sh-strength-kicker::before{content:"";width:34px;height:1px;background:#73b2ff;}
.sh-strength-intro h2{margin:26px 0 24px;color:#fff;font-size:clamp(38px,4vw,62px);line-height:1.28;letter-spacing:.02em;}
.sh-strength-intro>p{max-width:390px;margin:0;color:rgba(224,237,250,.7);font-size:15px;line-height:2;}
.sh-strength-link{display:inline-flex;align-items:center;gap:22px;margin-top:42px;color:#fff;font-size:14px;font-weight:700;}
.sh-strength-link i{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(255,255,255,.28);border-radius:50%;font-style:normal;transition:.35s ease;}
.sh-strength-link:hover i{color:#071d34;background:#fff;transform:rotate(45deg);}
.sh-strength-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.sh-strength-cards article{position:relative;min-height:350px;padding:34px 34px 32px;overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:4px;background:linear-gradient(145deg,rgba(255,255,255,.095),rgba(255,255,255,.035));transition:transform .45s cubic-bezier(.22,1,.36,1),border-color .35s ease,background .35s ease;}
.sh-strength-cards article:nth-child(even){transform:translateY(48px);}
.sh-strength-cards article:hover{transform:translateY(-8px);border-color:rgba(116,181,255,.48);background:linear-gradient(145deg,rgba(25,111,214,.25),rgba(255,255,255,.05));}
.sh-strength-cards article:nth-child(even):hover{transform:translateY(40px);}
.sh-strength-num{position:absolute;right:26px;top:24px;color:rgba(255,255,255,.24);font-size:14px;letter-spacing:.12em;}
.sh-strength-icon{display:grid;place-items:center;width:58px;height:58px;margin-bottom:44px;border:1px solid rgba(117,183,255,.55);border-radius:50%;color:#82bdff;font-size:19px;font-weight:500;}
.sh-strength-cards small{display:block;margin-bottom:12px;color:#72adf3;font-size:14px;font-weight:700;letter-spacing:.18em;}
.sh-strength-cards h3{margin:0 0 18px;color:#fff;font-size:22px;line-height:1.45;}
.sh-strength-cards p{margin:0;color:rgba(224,237,250,.66);font-size:14px;line-height:1.9;}

/* Each strength card gets its own motion signature. */
.sh-strength-cards article{opacity:0;}
.sh-strength-cards article:nth-child(odd){transform:translate3d(-34px,36px,0);}
.sh-strength-cards article:nth-child(even){transform:translate3d(34px,84px,0);}
.sh-strength-cards article.is-revealed{opacity:1;transition:opacity .8s var(--strength-delay,0s) cubic-bezier(.22,1,.36,1),transform 1s var(--strength-delay,0s) cubic-bezier(.22,1,.36,1),border-color .35s ease,background .35s ease;}
.sh-strength-cards article.is-revealed:nth-child(odd){transform:translate3d(0,0,0);}
.sh-strength-cards article.is-revealed:nth-child(even){transform:translate3d(0,48px,0);}
.sh-strength-cards article:nth-child(1){--strength-delay:.02s;}
.sh-strength-cards article:nth-child(2){--strength-delay:.14s;}
.sh-strength-cards article:nth-child(3){--strength-delay:.10s;}
.sh-strength-cards article:nth-child(4){--strength-delay:.22s;}
.sh-strength-icon{position:relative;isolation:isolate;}
.sh-strength-icon::before,.sh-strength-icon::after{content:"";position:absolute;pointer-events:none;}
/* 01 Network: expanding connection rings */
.sh-strength-cards article:nth-child(1) .sh-strength-icon::before{inset:-1px;border:1px solid #75b7ff;border-radius:50%;opacity:0;}
.sh-strength-cards article:nth-child(1).is-revealed .sh-strength-icon::before{animation:strengthNetwork 2.8s ease-out infinite;}
/* 02 Flexibility: a route continuously changes direction */
.sh-strength-cards article:nth-child(2) .sh-strength-icon::before{width:24px;height:9px;border-top:1px solid #83bdff;border-right:1px solid #83bdff;transform:rotate(-12deg);}
.sh-strength-cards article:nth-child(2).is-revealed .sh-strength-icon::before{animation:strengthFlow 2.2s ease-in-out infinite;}
/* 03 One stop: rotating process orbit */
.sh-strength-cards article:nth-child(3) .sh-strength-icon::before{inset:5px;border:1px dashed rgba(126,188,255,.82);border-radius:50%;}
.sh-strength-cards article:nth-child(3).is-revealed .sh-strength-icon::before{animation:strengthOrbit 6s linear infinite;}
.sh-strength-cards article:nth-child(3) .sh-strength-icon::after{top:4px;left:50%;width:5px;height:5px;border-radius:50%;background:#8bc3ff;box-shadow:0 0 10px #4ba0ff;}
/* 04 Trust: calm pulse / beacon */
.sh-strength-cards article:nth-child(4) .sh-strength-icon::before{inset:10px;border-radius:50%;background:rgba(93,169,255,.18);}
.sh-strength-cards article:nth-child(4).is-revealed .sh-strength-icon::before{animation:strengthTrust 2.4s ease-in-out infinite;}
.sh-strength-cards article:nth-child(2)::after{content:"";position:absolute;inset:0 auto 0 -45%;width:34%;background:linear-gradient(90deg,transparent,rgba(99,177,255,.09),transparent);transform:skewX(-16deg);}
.sh-strength-cards article:nth-child(2).is-revealed::after{animation:strengthScan 4.8s 1s ease-in-out infinite;}
@keyframes strengthNetwork{0%{transform:scale(.75);opacity:.75}75%,100%{transform:scale(1.72);opacity:0}}
@keyframes strengthFlow{0%,100%{transform:translateX(-4px) rotate(-12deg)}50%{transform:translateX(4px) rotate(12deg)}}
@keyframes strengthOrbit{to{transform:rotate(360deg)}}
@keyframes strengthTrust{0%,100%{transform:scale(.72);opacity:.35}50%{transform:scale(1.45);opacity:.85;box-shadow:0 0 20px rgba(76,159,255,.34)}}
@keyframes strengthScan{0%,20%{left:-45%}70%,100%{left:120%}}
.sh-strength-cards article.is-revealed:nth-child(odd):hover{transform:translate3d(0,-8px,0);}
.sh-strength-cards article.is-revealed:nth-child(even):hover{transform:translate3d(0,40px,0);}
@media(max-width:960px){
  .home-page .sh-strength{padding:100px 0 130px !important;}
  .sh-strength-layout{grid-template-columns:1fr;gap:58px;}
  .sh-strength-intro{position:static;}
  .sh-strength-intro>p{max-width:620px;}
}
@media(max-width:640px){
  .home-page .sh-strength{padding:82px 0 100px !important;}
  .sh-strength-layout{gap:42px;}
  .sh-strength-cards{grid-template-columns:1fr;}
  .sh-strength-cards article,.sh-strength-cards article:nth-child(even){min-height:300px;transform:none;}
  .sh-strength-cards article:nth-child(odd),.sh-strength-cards article:nth-child(even){transform:translate3d(0,28px,0);}
  .sh-strength-cards article.is-revealed:nth-child(odd),.sh-strength-cards article.is-revealed:nth-child(even){transform:none;}
  .sh-strength-cards article:hover,.sh-strength-cards article:nth-child(even):hover{transform:translateY(-5px);}
  .sh-strength-icon{margin-bottom:34px;}
}
@media(prefers-reduced-motion:reduce){
  .sh-strength-cards article,.sh-strength-cards article:nth-child(odd),.sh-strength-cards article:nth-child(even){opacity:1;transform:none;transition:none;}
  .sh-strength-icon::before,.sh-strength-icon::after,.sh-strength-cards article::after{animation:none !important;}
}

/* Final header geometry: equal side columns keep the navigation on the page centerline. */
.home-page .header-main{
  grid-template-columns:220px minmax(0,1fr) 220px !important;
}
.home-page .site-header .brand-logo{
  transform:translate(-10px,-16px) !important;
}
.home-page .global-nav{
  transform:translateY(-2px);
}
@media(max-width:1200px){
  .home-page .header-main{grid-template-columns:188px minmax(0,1fr) 188px !important;}
  .home-page .site-header .brand-logo{transform:translate(-8px,-14px) !important;}
}
@media(max-width:920px){
  .home-page .header-main{grid-template-columns:152px minmax(0,1fr) 152px !important;}
  .home-page .site-header .brand-logo{transform:translate(-7px,-11px) !important;}
}
@media(max-width:640px){
  .home-page .header-main{grid-template-columns:126px minmax(0,1fr) 126px !important;}
  .home-page .site-header .brand-logo{transform:translate(-5px,-9px) !important;}
}

/* Light strength palette aligned with the rest of the homepage. */
.home-page .sh-strength{
  color:#132b43;
  background:
    radial-gradient(circle at 8% 15%,rgba(82,157,235,.12),transparent 30%),
    radial-gradient(circle at 92% 86%,rgba(130,190,239,.10),transparent 28%),
    linear-gradient(180deg,#f4f8fc 0%,#edf4fa 100%) !important;
}
.home-page .sh-strength::before{
  border-color:rgba(38,111,184,.10);
  box-shadow:0 0 0 90px rgba(38,111,184,.025),0 0 0 180px rgba(38,111,184,.016);
}
.sh-strength-kicker{color:#0870dc;}
.sh-strength-kicker::before{background:#0870dc;}
.sh-strength-intro h2{color:#122b43;}
.sh-strength-intro>p{color:#64778a;}
.sh-strength-link{color:#17334e;}
.sh-strength-link i{border-color:rgba(15,84,151,.25);color:#0870dc;background:rgba(255,255,255,.58);}
.sh-strength-link:hover i{color:#fff;background:#0870dc;}
.sh-strength-cards article{
  border-color:rgba(31,92,151,.13);
  background:rgba(255,255,255,.78);
  box-shadow:0 18px 50px rgba(28,73,115,.06);
}
.sh-strength-cards article:hover{
  border-color:rgba(0,112,220,.34);
  background:#fff;
  box-shadow:0 24px 60px rgba(24,91,153,.12);
}
.sh-strength-num{color:rgba(24,84,143,.28);}
.sh-strength-icon{border-color:rgba(0,112,220,.34);color:#0870dc;background:#f3f8fd;}
.sh-strength-cards small{color:#0870dc;}
.sh-strength-cards h3{color:#17314a;}
.sh-strength-cards p{color:#64778a;}
.sh-strength-cards article:nth-child(1) .sh-strength-icon::before{border-color:#4b9ae8;}
.sh-strength-cards article:nth-child(2) .sh-strength-icon::before{border-color:#4695e2;}
.sh-strength-cards article:nth-child(3) .sh-strength-icon::before{border-color:rgba(0,112,220,.64);}
.sh-strength-cards article:nth-child(3) .sh-strength-icon::after{background:#0870dc;box-shadow:0 0 10px rgba(0,112,220,.45);}
.sh-strength-cards article:nth-child(4) .sh-strength-icon::before{background:rgba(45,133,222,.14);}
.sh-strength-cards article:nth-child(2)::after{background:linear-gradient(90deg,transparent,rgba(47,139,227,.08),transparent);}

/* Strength section is the homepage's deep brand-blue visual anchor. */
.home-page .sh-strength{
  color:#fff;
  background:
    radial-gradient(circle at 10% 12%,rgba(48,142,235,.34),transparent 34%),
    radial-gradient(circle at 88% 88%,rgba(25,118,211,.20),transparent 32%),
    linear-gradient(135deg,#0d477e 0%,#0a3765 48%,#072b50 100%) !important;
}
.home-page .sh-strength::before{border-color:rgba(255,255,255,.10);box-shadow:0 0 0 90px rgba(255,255,255,.028),0 0 0 180px rgba(255,255,255,.018);}
.sh-strength-kicker{color:#89c5ff;}
.sh-strength-kicker::before{background:#89c5ff;}
.sh-strength-intro h2{color:#fff;}
.sh-strength-intro>p{color:rgba(228,240,252,.74);}
.sh-strength-link{color:#fff;}
.sh-strength-link i{border-color:rgba(255,255,255,.28);color:#fff;background:rgba(255,255,255,.07);}
.sh-strength-link:hover i{color:#0a3765;background:#fff;}
.sh-strength-cards article{border-color:rgba(255,255,255,.16);background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.065));box-shadow:0 20px 55px rgba(2,23,45,.14);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);}
.sh-strength-cards article:hover{border-color:rgba(154,209,255,.48);background:linear-gradient(145deg,rgba(255,255,255,.18),rgba(109,182,246,.10));box-shadow:0 28px 70px rgba(0,22,47,.22);}
.sh-strength-num{color:rgba(220,239,255,.34);}
.sh-strength-icon{border-color:rgba(137,197,255,.62);color:#9bd0ff;background:rgba(6,43,79,.24);}
.sh-strength-cards small{color:#8ec8ff;}
.sh-strength-cards h3{color:#fff;}
.sh-strength-cards p{color:rgba(226,239,251,.73);}
.sh-strength-cards article:nth-child(1) .sh-strength-icon::before{border-color:#91caff;}
.sh-strength-cards article:nth-child(2) .sh-strength-icon::before{border-color:#91caff;}
.sh-strength-cards article:nth-child(3) .sh-strength-icon::before{border-color:rgba(145,202,255,.82);}
.sh-strength-cards article:nth-child(3) .sh-strength-icon::after{background:#a7d7ff;box-shadow:0 0 10px #55aaff;}
.sh-strength-cards article:nth-child(4) .sh-strength-icon::before{background:rgba(111,187,255,.22);}
.sh-strength-cards article:nth-child(2)::after{background:linear-gradient(90deg,transparent,rgba(144,204,255,.10),transparent);}

/* Compact full-width flow band, keeping the strength section's blue motion language. */
.home-page .sh-flow-section{
  padding:74px 0 82px !important;
}
.sh-flow-layout{
  display:grid;
  grid-template-columns:minmax(260px,.56fr) minmax(0,1.9fr);
  gap:44px;
  align-items:center;
  width:min(100% - 72px,1560px);
}
.sh-flow-section .sh-strength-intro{
  position:relative;
  top:auto;
}
.sh-flow-section .sh-strength-intro h2{
  margin:18px 0 16px;
  font-size:clamp(34px,3.2vw,52px);
  line-height:1.2;
}
.sh-flow-section .sh-strength-intro>p{
  max-width:360px;
  font-size:14px;
  line-height:1.85;
}
.sh-flow-section .sh-strength-link{
  margin-top:28px;
}
.sh-flow-cards{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.sh-flow-cards article{
  min-height:218px;
  padding:28px 22px 24px;
}
.sh-flow-cards article:nth-child(odd),
.sh-flow-cards article:nth-child(even){
  transform:translate3d(0,30px,0);
}
.sh-flow-cards article.is-revealed:nth-child(odd),
.sh-flow-cards article.is-revealed:nth-child(even){
  transform:translate3d(0,0,0);
}
.sh-flow-cards article.is-revealed:hover,
.sh-flow-cards article.is-revealed:nth-child(even):hover{
  transform:translate3d(0,-6px,0);
}
.sh-flow-cards article+article::before{
  content:"";
  position:absolute;
  left:-15px;
  top:50%;
  width:16px;
  height:1px;
  background:linear-gradient(90deg,rgba(151,206,255,.15),rgba(151,206,255,.72));
  transform:translateY(-50%);
}
.sh-flow-cards .sh-strength-num{
  display:none;
}
.sh-flow-cards .sh-strength-icon{
  width:58px;
  height:58px;
  margin-bottom:24px;
  font-size:16px;
  color:#b8dcff;
  background:radial-gradient(circle at 50% 50%,rgba(137,197,255,.14),rgba(6,43,79,.22));
}
.sh-flow-cards .sh-flow-icon::before{
  inset:-1px;
  border:1px solid rgba(158,211,255,.74);
  border-radius:50%;
  opacity:.38;
}
.sh-flow-cards .sh-flow-icon::after{
  display:none;
}
.sh-flow-cards article.is-revealed .sh-flow-icon::before{
  animation:flowIconHalo 2.9s ease-in-out infinite;
}
.sh-flow-icon span,
.sh-flow-icon span::before,
.sh-flow-icon span::after{
  content:"";
  position:absolute;
  display:block;
  box-sizing:border-box;
}
.sh-flow-icon span{
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
}
.sh-flow-icon.inquiry span{
  width:24px;
  height:17px;
  border:2px solid currentColor;
  border-radius:3px;
}
.sh-flow-icon.inquiry span::before{
  left:3px;
  top:2px;
  width:16px;
  height:12px;
  border-left:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:rotate(-45deg);
  transform-origin:center;
}
.sh-flow-icon.check span{
  width:25px;
  height:14px;
  border-left:3px solid currentColor;
  border-bottom:3px solid currentColor;
  transform:translate(-50%,-60%) rotate(-45deg);
}
.sh-flow-icon.quote span{
  width:21px;
  height:26px;
  border:2px solid currentColor;
  border-radius:3px;
}
.sh-flow-icon.quote span::before,
.sh-flow-icon.quote span::after{
  left:5px;
  width:11px;
  height:2px;
  background:currentColor;
  border-radius:2px;
}
.sh-flow-icon.quote span::before{top:8px;}
.sh-flow-icon.quote span::after{top:15px;}
.sh-flow-icon.shipment span{
  width:26px;
  height:15px;
  border:2px solid currentColor;
  border-radius:3px;
}
.sh-flow-icon.shipment span::before{
  right:-8px;
  bottom:-2px;
  width:9px;
  height:10px;
  border:2px solid currentColor;
  border-left:0;
  border-radius:0 3px 3px 0;
}
.sh-flow-icon.shipment span::after{
  left:3px;
  bottom:-7px;
  width:5px;
  height:5px;
  border-radius:50%;
  background:currentColor;
  box-shadow:17px 0 0 currentColor,26px 0 0 currentColor;
}
@keyframes flowIconHalo{
  0%,100%{opacity:.24;transform:scale(.92)}
  50%{opacity:.58;transform:scale(1.14)}
}
.sh-flow-cards small{
  margin-bottom:8px;
  font-size:12px;
  letter-spacing:.22em;
}
.sh-flow-cards h3{
  margin-bottom:10px;
  font-size:20px;
}
.sh-flow-cards p{
  font-size:13px;
  line-height:1.65;
}
@media(max-width:1100px){
  .home-page .sh-flow-section{padding:72px 0 82px !important;}
  .sh-flow-layout{
    grid-template-columns:1fr;
    gap:34px;
    width:min(100% - 42px,860px);
  }
  .sh-flow-section .sh-strength-intro>p{max-width:680px;}
  .sh-flow-cards{grid-template-columns:repeat(2,minmax(0,1fr));}
  .sh-flow-cards article+article::before{display:none;}
}
@media(max-width:640px){
  .home-page .sh-flow-section{padding:62px 0 70px !important;}
  .sh-flow-layout{width:calc(100% - 32px);gap:28px;}
  .sh-flow-section .sh-strength-intro h2{font-size:32px;}
  .sh-flow-section .sh-strength-link{margin-top:22px;}
  .sh-flow-cards{
    display:flex;
    gap:12px;
    margin:0 -16px;
    padding:0 16px 8px;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
  }
  .sh-flow-cards::-webkit-scrollbar{display:none;}
  .sh-flow-cards article,
  .sh-flow-cards article:nth-child(even){
    flex:0 0 min(78vw,320px);
    min-height:230px;
    padding:22px 20px;
    scroll-snap-align:start;
  }
  .sh-flow-cards .sh-strength-icon{
    position:absolute;
    right:20px;
    top:22px;
    width:52px;
    height:52px;
    margin:0;
  }
  .sh-flow-cards h3{padding-right:60px;}
  .sh-flow-cards p{padding-right:34px;}
}

/* Flow redesign: top title + open horizontal process, no boxed-card stacking. */
.home-page .sh-flow-section{
  padding:84px 0 86px !important;
}
.sh-flow-layout{
  display:block;
  width:min(100% - 96px,1320px);
}
.sh-flow-section .sh-strength-intro{
  display:grid;
  grid-template-columns:minmax(280px,.72fr) minmax(320px,.9fr) auto;
  gap:34px;
  align-items:end;
  margin-bottom:56px;
}
.sh-flow-section .sh-strength-kicker{
  grid-column:1;
}
.sh-flow-section .sh-strength-intro h2{
  grid-column:1;
  margin:14px 0 0;
}
.sh-flow-section .sh-strength-intro>p{
  grid-column:2;
  max-width:520px;
  margin:0 0 4px;
  color:rgba(228,240,252,.72);
}
.sh-flow-section .sh-strength-link{
  grid-column:3;
  margin:0 0 4px;
  white-space:nowrap;
}
.sh-flow-cards{
  position:relative;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:34px;
}
.sh-flow-cards::before{
  content:"";
  position:absolute;
  left:36px;
  right:36px;
  top:31px;
  height:1px;
  background:linear-gradient(90deg,rgba(151,206,255,.16),rgba(151,206,255,.72),rgba(151,206,255,.16));
}
.sh-flow-cards article,
.sh-flow-cards article:nth-child(odd),
.sh-flow-cards article:nth-child(even){
  min-height:0;
  padding:0;
  overflow:visible;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  transform:translate3d(0,24px,0);
}
.sh-flow-cards article.is-revealed:nth-child(odd),
.sh-flow-cards article.is-revealed:nth-child(even){
  transform:translate3d(0,0,0);
}
.sh-flow-cards article.is-revealed:hover,
.sh-flow-cards article.is-revealed:nth-child(even):hover{
  transform:translate3d(0,-4px,0);
}
.sh-flow-cards article+article::before{
  display:none;
}
.sh-flow-cards .sh-strength-icon{
  width:62px;
  height:62px;
  margin:0 0 24px;
  border-color:rgba(160,213,255,.52);
  background:
    radial-gradient(circle at 50% 50%,rgba(151,206,255,.18),rgba(6,43,79,.22) 66%,rgba(255,255,255,.04));
  box-shadow:0 0 0 8px rgba(255,255,255,.035);
}
.sh-flow-cards small{
  margin-bottom:9px;
  color:#93ccff;
  font-size:12px;
  letter-spacing:.24em;
}
.sh-flow-cards h3{
  margin:0 0 8px;
  padding:0;
  font-size:21px;
  line-height:1.35;
}
.sh-flow-cards p{
  max-width:210px;
  margin:0;
  padding:0;
  color:rgba(226,239,251,.68);
  font-size:13px;
  line-height:1.7;
}
@media(max-width:1020px){
  .sh-flow-layout{width:min(100% - 44px,860px);}
  .sh-flow-section .sh-strength-intro{
    grid-template-columns:1fr auto;
    gap:22px;
    margin-bottom:42px;
  }
  .sh-flow-section .sh-strength-kicker,
  .sh-flow-section .sh-strength-intro h2,
  .sh-flow-section .sh-strength-intro>p{grid-column:1;}
  .sh-flow-section .sh-strength-link{grid-column:2;grid-row:2 / span 2;}
  .sh-flow-cards{
    gap:24px;
    overflow-x:auto;
    margin:0 -22px;
    padding:0 22px 12px;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
  }
  .sh-flow-cards::-webkit-scrollbar{display:none;}
  .sh-flow-cards article{
    min-width:210px;
    scroll-snap-align:start;
  }
  .sh-flow-cards::before{
    left:52px;
    right:-420px;
  }
}
@media(max-width:640px){
  .home-page .sh-flow-section{padding:66px 0 70px !important;}
  .sh-flow-layout{width:calc(100% - 32px);}
  .sh-flow-section .sh-strength-intro{
    display:block;
    margin-bottom:34px;
  }
  .sh-flow-section .sh-strength-intro h2{font-size:38px;}
  .sh-flow-section .sh-strength-intro>p{
    max-width:330px;
    margin-top:18px;
    font-size:14px;
    line-height:1.85;
  }
  .sh-flow-section .sh-strength-link{
    display:inline-flex;
    margin-top:24px;
  }
  .sh-flow-cards{
    display:flex;
    gap:28px;
    margin:0;
    padding:0 0 10px;
  }
  .sh-flow-cards::before{
    left:31px;
    right:-760px;
    top:31px;
  }
  .sh-flow-cards article,
  .sh-flow-cards article:nth-child(even){
    flex:0 0 190px;
    min-height:0;
    padding:0;
  }
  .sh-flow-cards .sh-strength-icon{
    position:relative;
    top:auto;
    right:auto;
    width:60px;
    height:60px;
    margin-bottom:22px;
  }
  .sh-flow-cards h3,
  .sh-flow-cards p{
    padding:0;
  }
}

/* Asymmetric editorial products mosaic. */
.home-page .sh-products{position:relative;overflow:hidden;padding:135px 0 145px !important;background:linear-gradient(180deg,#fff 0%,#f4f8fb 100%) !important;}
.home-page .sh-products::before{content:"PRODUCTS";position:absolute;right:-18px;top:35px;color:rgba(18,67,110,.035);font-size:clamp(100px,15vw,270px);font-weight:700;line-height:1;letter-spacing:-.05em;pointer-events:none;}
.sh-products .sh-section-title{position:relative;z-index:1;margin-bottom:54px;}
.sh-products-lead{margin:16px 0 0;color:#758697;font-size:14px;letter-spacing:.04em;}
.sh-products-grid{position:relative;z-index:1;display:grid !important;grid-template-columns:1.12fr .9fr .9fr !important;grid-template-rows:270px 270px !important;gap:16px !important;}
.sh-products-grid>a{position:relative;display:block;overflow:hidden;background:#0b3459;color:#fff;}
.sh-products-grid>a:nth-child(1){grid-column:1;grid-row:1/3;}
.sh-products-grid>a:nth-child(2){grid-column:2/4;grid-row:1;}
.sh-products-grid>a:nth-child(3){grid-column:2;grid-row:2;}
.sh-products-grid>a:nth-child(4){grid-column:3;grid-row:2;}
.sh-products-grid .photo{position:absolute;inset:0;width:100%;height:100% !important;margin:0;background-size:cover;background-position:center;transform:scale(1.001);transition:transform .9s cubic-bezier(.22,1,.36,1),filter .55s ease;}
.sh-products-grid>a:nth-child(2) .photo{background-position:center 48%;}
.sh-products-grid>a::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,22,39,.02) 25%,rgba(3,27,49,.82) 100%);transition:background .45s ease;}
.sh-products-grid>a>span{position:absolute;z-index:3;top:22px;left:22px;width:auto;height:auto;padding:7px 11px;border:1px solid rgba(255,255,255,.42);color:#fff;background:rgba(7,39,68,.24);backdrop-filter:blur(7px);font-size:14px;letter-spacing:.12em;}
.sh-product-label{position:absolute;z-index:3;left:28px;right:24px;bottom:25px;display:grid;grid-template-columns:1fr auto;align-items:end;}
.sh-product-label small{grid-column:1;display:block;margin-bottom:6px;color:#9dceff;font-size:14px;font-weight:700;letter-spacing:.18em;}
.sh-product-label h3{grid-column:1;margin:0 !important;color:#fff;font-size:clamp(20px,2vw,28px);line-height:1.25;transform:translateY(0);transition:transform .45s cubic-bezier(.22,1,.36,1);}
.sh-product-label i{grid-column:2;grid-row:1/3;display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(255,255,255,.42);border-radius:50%;font-style:normal;transform:translate(8px,8px);opacity:0;transition:.45s cubic-bezier(.22,1,.36,1);}
.sh-products-grid>a:hover .photo{transform:scale(1.065);filter:saturate(1.08);}
.sh-products-grid>a:hover::after{background:linear-gradient(180deg,rgba(0,72,145,.08),rgba(3,40,72,.9));}
.sh-products-grid>a:hover .sh-product-label h3{transform:translateY(-4px);}
.sh-products-grid>a:hover .sh-product-label i{transform:none;opacity:1;background:#0870dc;border-color:#0870dc;}
@media(max-width:900px){
  .sh-products-grid{grid-template-columns:1fr 1fr !important;grid-template-rows:360px 260px 260px !important;}
  .sh-products-grid>a:nth-child(1){grid-column:1;grid-row:1/3;}
  .sh-products-grid>a:nth-child(2){grid-column:2;grid-row:1;}
  .sh-products-grid>a:nth-child(3){grid-column:2;grid-row:2;}
  .sh-products-grid>a:nth-child(4){grid-column:1/3;grid-row:3;}
}

/* Business switchboard: one visual, four interactive service rows. */
.home-page .sh-business{padding:135px 0 !important;background:#fff !important;}
.sh-business .sh-section-title{align-items:end;margin-bottom:50px;}
.sh-business-lead{margin:0 0 8px;color:#6d8092;font-size:14px;letter-spacing:.05em;}
.sh-business-showcase{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(440px,.92fr);min-height:620px;border-top:1px solid #dce5ed;border-bottom:1px solid #dce5ed;}
.sh-business-visual{position:relative;overflow:hidden;background:#0a3156;}
.sh-business-visual>div{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transform:scale(1.055);transition:opacity .65s ease,transform 1.1s cubic-bezier(.22,1,.36,1);}
.sh-business-visual>div::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,27,48,.04),rgba(5,32,57,.42));}
.sh-business-visual>div.is-active{opacity:1;transform:scale(1);}
.sh-business-visual>span{position:absolute;z-index:2;left:28px;bottom:25px;color:rgba(255,255,255,.72);font-size:14px;font-weight:700;letter-spacing:.18em;}
.sh-business-menu{display:grid;grid-template-rows:repeat(4,1fr);border-left:1px solid #dce5ed;}
.sh-business-menu>[data-business-item]{position:relative;display:grid;grid-template-columns:52px 1fr 42px;gap:20px;align-items:center;padding:25px 26px;border-bottom:1px solid #dce5ed;color:#17314a;overflow:hidden;transition:background .4s ease,color .4s ease;}
.sh-business-menu>[data-business-item]:last-child{border-bottom:0;}
.sh-business-menu>[data-business-item]::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0870dc,#0b4f91);transform:scaleX(0);transform-origin:right;transition:transform .55s cubic-bezier(.22,1,.36,1);}
.sh-business-menu>[data-business-item]>*{position:relative;z-index:1;}
.sh-business-menu>[data-business-item]>span{align-self:start;color:#8da0b2;font-size:14px;letter-spacing:.12em;transition:color .35s ease;}
.sh-business-menu small{display:block;margin-bottom:5px;color:#0870dc;font-size:14px;font-weight:700;letter-spacing:.16em;transition:color .35s ease;}
.sh-business-menu h3{margin:0;font-size:21px;line-height:1.4;}
.sh-business-menu p{margin:7px 0 0;color:#718293;font-size:14px;line-height:1.65;transition:color .35s ease;}
.sh-business-link{display:grid;place-items:center;width:36px;height:36px;border:1px solid #cbd9e5;border-radius:50%;font-style:normal;transition:transform .4s ease,border-color .35s ease;}
.sh-business-menu>[data-business-item].is-active,.sh-business-menu>[data-business-item]:hover{color:#fff;}
.sh-business-menu>[data-business-item].is-active::before,.sh-business-menu>[data-business-item]:hover::before{transform:scaleX(1);transform-origin:left;}
.sh-business-menu>[data-business-item].is-active>span,.sh-business-menu>[data-business-item]:hover>span,.sh-business-menu>[data-business-item].is-active small,.sh-business-menu>[data-business-item]:hover small{color:#acd6ff;}
.sh-business-menu>[data-business-item].is-active p,.sh-business-menu>[data-business-item]:hover p{color:rgba(255,255,255,.76);}
.sh-business-menu>[data-business-item].is-active .sh-business-link,.sh-business-menu>[data-business-item]:hover .sh-business-link{border-color:rgba(255,255,255,.45);transform:rotate(45deg);}
@media(max-width:900px){
  .sh-business-showcase{grid-template-columns:1fr;min-height:0;}
  .sh-business-visual{height:440px;}
  .sh-business-menu{border-left:0;}
}
@media(max-width:640px){
  .home-page .sh-business{padding:84px 0 !important;}
  .sh-business .sh-section-title{display:block;}.sh-business-lead{margin-top:15px;}
  .sh-business-visual{height:320px;}
  .sh-business-menu>[data-business-item]{grid-template-columns:38px 1fr 34px;gap:12px;padding:21px 15px;}
  .sh-business-menu p{display:none;}.sh-business-menu h3{font-size:18px;}.sh-business-link{width:32px;height:32px;}
}
@media(max-width:640px){
  .home-page .sh-products{padding:84px 0 92px !important;}
  .sh-products-grid{grid-template-columns:1fr !important;grid-template-rows:repeat(4,300px) !important;}
  .sh-products-grid>a:nth-child(n){grid-column:1;grid-row:auto;}
  .sh-product-label i{opacity:1;transform:none;}
}

/* Vertical rolling navigation labels. */
.home-page .global-nav .nav-item span{
  display:block !important;
  height:1.15em;
  overflow:hidden;
  transform:none !important;
  line-height:1.15 !important;
}
.home-page .global-nav .nav-item span i{
  display:block;
  height:1.15em;
  color:inherit;
  font:inherit;
  font-style:normal;
  line-height:1.15;
  white-space:nowrap;
  transform:translateY(0);
  transition:transform .52s cubic-bezier(.22,1,.36,1);
}
.home-page .global-nav .nav-item:hover span,
.home-page .global-nav .nav-item:focus-visible span{
  transform:none !important;
  letter-spacing:normal;
}
.home-page .global-nav .nav-item:hover span i,
.home-page .global-nav .nav-item:focus-visible span i{
  transform:translateY(-100%);
}
@media(prefers-reduced-motion:reduce){
  .home-page .global-nav .nav-item span i{transition:none;}
  .home-page .global-nav .nav-item:hover span i,
  .home-page .global-nav .nav-item:focus-visible span i{transform:none;}
}

/* News detail */
.news-detail{width:min(920px,calc(100% - 48px));margin:0 auto;padding:110px 0 130px;}
.news-detail-head{max-width:820px;margin-bottom:54px;}
.news-detail-meta{display:flex;align-items:center;gap:22px;margin-bottom:24px;color:#718294;font-size:14px;}
.news-detail-meta span{padding:5px 13px;border-radius:999px;color:#0870dc;background:#edf6ff;font-size:14px;font-weight:700;letter-spacing:.1em;}
.news-detail-head h1{margin:0 0 24px;color:#142c43;font-size:clamp(34px,4.2vw,58px);line-height:1.38;letter-spacing:.02em;}
.news-detail-head>p{max-width:690px;margin:0;color:#718091;font-size:16px;line-height:1.9;}
.news-detail-visual{margin:0 0 64px;overflow:hidden;background:#dbe8f3;}
.news-detail-visual img{display:block;width:100%;height:500px;object-fit:cover;transition:transform 1.2s cubic-bezier(.22,1,.36,1);}
.news-detail-visual:hover img{transform:scale(1.025);}
.news-detail-body{max-width:720px;margin:0 auto;color:#53677a;}
.news-detail-body p{margin:0 0 26px;font-size:16px;line-height:2.15;}
.news-detail-body h2{position:relative;margin:70px 0 28px;padding-left:22px;color:#17324c;font-size:27px;line-height:1.55;}
.news-detail-body h2::before{content:"";position:absolute;left:0;top:.2em;bottom:.2em;width:3px;background:#0870dc;}
.news-detail-foot{max-width:720px;margin:82px auto 0;padding-top:28px;border-top:1px solid #dce5ed;}
.news-detail-foot a{display:inline-flex;align-items:center;gap:15px;color:#17324c;font-size:14px;font-weight:700;}
.news-detail-foot a span{display:grid;place-items:center;width:40px;height:40px;border:1px solid #cddbe7;border-radius:50%;color:#0870dc;transition:.3s ease;}
.news-detail-foot a:hover span{color:#fff;background:#0870dc;border-color:#0870dc;transform:translateX(-4px);}
@media(max-width:640px){
  .news-detail{width:calc(100% - 28px);padding:72px 0 90px;}
  .news-detail-head{margin-bottom:36px;}
  .news-detail-head h1 br{display:none;}
  .news-detail-visual{margin-bottom:42px;}
  .news-detail-visual img{height:240px;}
  .news-detail-body p{font-size:15px;line-height:2;}
  .news-detail-body h2{margin-top:52px;font-size:23px;}
}

/* Secondary pages share the homepage overlay header. */
html body.lower-page>.site-header,
html body.lower-page>.site-header.is-top,
html body.lower-page>.site-header.is-scrolled{position:fixed !important;inset:0 0 auto 0 !important;width:100% !important;z-index:9999 !important;box-shadow:none !important;}
.lower-page .site-header{background:transparent !important;border-bottom:0 !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important;transition:background .45s ease,border-color .45s ease,backdrop-filter .45s ease;}
.lower-page .header-main{max-width:1500px !important;height:96px !important;margin:0 auto !important;padding:0 28px !important;display:grid !important;grid-template-columns:220px minmax(0,1fr) 220px !important;align-items:center !important;gap:34px !important;background:transparent !important;}
.lower-page .site-header .brand{width:220px !important;min-width:220px !important;height:96px !important;padding:0 !important;display:flex !important;align-items:center !important;justify-content:center !important;background:transparent !important;}
.lower-page .site-header .brand-logo{width:112px !important;max-width:112px !important;height:auto !important;max-height:none !important;transform:translate(-10px,-16px) !important;}
.lower-page .global-nav{height:96px !important;display:flex !important;align-items:center !important;justify-content:center !important;gap:42px !important;border:0 !important;background:transparent !important;transform:translateY(-2px);}
.lower-page .global-nav .nav-item{position:relative;min-width:auto !important;height:auto !important;padding:0 !important;border:0 !important;color:#fff !important;text-shadow:0 1px 10px rgba(0,0,0,.16);}
.lower-page .global-nav .nav-item span{display:block !important;height:1.15em;overflow:hidden;color:inherit !important;font-size:17px !important;font-weight:700 !important;line-height:1.15 !important;}
.lower-page .global-nav .nav-item span i{display:block;height:1.15em;color:inherit;font:inherit;font-style:normal;line-height:1.15;white-space:nowrap;transition:transform .52s cubic-bezier(.22,1,.36,1);}
.lower-page .global-nav .nav-item:hover span i,.lower-page .global-nav .nav-item:focus-visible span i{transform:translateY(-100%);}
.lower-page .global-nav .nav-item::after{content:"";position:absolute;left:0;right:0;bottom:-15px;height:2px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .42s cubic-bezier(.22,1,.36,1);}
.lower-page .global-nav .nav-item:hover::after,.lower-page .global-nav .nav-item:focus-visible::after,.lower-page .global-nav .nav-item.active::after{transform:scaleX(1);}
.lower-page .header-tools{height:96px !important;display:flex !important;align-items:center !important;justify-content:flex-end !important;background:transparent !important;}
.lower-page .lang-switch,.lower-page .lang-switch button,.lower-page .lang-switch span{color:rgba(255,255,255,.82) !important;background:transparent !important;}
.lower-page .lang-switch button.active{color:#fff !important;}
.lower-page .site-header.is-scrolled{background:rgba(255,255,255,.78) !important;border-bottom:1px solid rgba(215,226,236,.8) !important;backdrop-filter:blur(18px) saturate(155%) !important;-webkit-backdrop-filter:blur(18px) saturate(155%) !important;}
.lower-page .site-header.is-scrolled .global-nav .nav-item,.lower-page .site-header.is-scrolled .lang-switch,.lower-page .site-header.is-scrolled .lang-switch button,.lower-page .site-header.is-scrolled .lang-switch span{color:#203346 !important;text-shadow:none !important;}
.lower-page .site-header.is-scrolled .global-nav .nav-item.active,.lower-page .site-header.is-scrolled .lang-switch button.active{color:#0065e2 !important;}
.sh-latest-grid>a{display:block;}
.sh-news-excerpt{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;min-height:3.6em;margin:14px 0 0;overflow:hidden;color:#718091;font-size:14px;line-height:1.8;transition:color .3s ease;}
.sh-latest-grid>a:hover .sh-news-excerpt{color:#3e5f7d;}
@media(max-width:1200px){
  .lower-page .header-main{height:90px !important;grid-template-columns:188px minmax(0,1fr) 188px !important;gap:22px !important;padding:0 22px !important;}
  .lower-page .site-header .brand,.lower-page .global-nav,.lower-page .header-tools{height:90px !important;}
  .lower-page .site-header .brand{width:188px !important;min-width:188px !important;}
  .lower-page .site-header .brand-logo{width:104px !important;max-width:104px !important;transform:translate(-8px,-14px) !important;}
  .lower-page .global-nav{gap:30px !important;}.lower-page .global-nav .nav-item span{font-size:15px !important;}
}
@media(max-width:920px){
  .lower-page .header-main{height:78px !important;grid-template-columns:152px minmax(0,1fr) 152px !important;gap:12px !important;padding:0 14px !important;}
  .lower-page .site-header .brand,.lower-page .global-nav,.lower-page .header-tools{height:78px !important;}
  .lower-page .site-header .brand{width:152px !important;min-width:152px !important;}
  .lower-page .site-header .brand-logo{width:94px !important;max-width:94px !important;transform:translate(-7px,-11px) !important;}
  .lower-page .global-nav{justify-content:flex-start !important;overflow-x:auto !important;gap:18px !important;}.lower-page .global-nav .nav-item span{font-size:14px !important;}
}

/* =========================================================
   Brand loader: handwritten W + logo orbit reveal
   ========================================================= */
.page-loader{
  position:fixed !important;
  inset:0 !important;
  z-index:99999 !important;
  display:grid !important;
  place-items:center !important;
  overflow:hidden !important;
  background:
    radial-gradient(circle at 50% 42%,rgba(0,101,226,.075),transparent 34%),
    linear-gradient(180deg,#ffffff 0%,#f7fbff 100%) !important;
  opacity:1 !important;
  visibility:visible !important;
  transition:opacity .82s cubic-bezier(.22,.61,.36,1),visibility .82s linear !important;
}
.page-loader::before{
  content:none!important;
  display:none!important;
  border:0!important;
  animation:none!important;
}
.page-loader.is-hide{
  opacity:0 !important;
  visibility:hidden !important;
}
.loader-stage{
  position:relative;
  width:min(560px,76vw);
  aspect-ratio:1223/758;
  display:grid;
  place-items:center;
  transform:translateY(8px);
  animation:loaderStageIn .75s cubic-bezier(.22,1,.36,1) both;
}
.loader-logo-full{
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:auto;
  display:block;
  object-fit:contain;
  opacity:0;
  transform:scale(.985);
  filter:drop-shadow(0 18px 36px rgba(0,41,94,.10));
  animation:loaderLogoBaseIn .72s .08s cubic-bezier(.22,1,.36,1) forwards;
}
.loader-logo-motion{
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:auto;
  transform:scale(.965);
  overflow:visible;
  animation:loaderSketchFade .72s 1.78s cubic-bezier(.22,1,.36,1) forwards;
}
.loader-logo-motion path,
.loader-logo-motion circle{
  vector-effect:none;
}
.loader-w-stroke{
  fill:none;
  stroke:#f8fbff;
  stroke-width:46;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-dasharray:1;
  stroke-dashoffset:1;
  opacity:.96;
  filter:
    drop-shadow(0 0 1px rgba(0,43,95,.44))
    drop-shadow(0 8px 16px rgba(0,43,95,.22));
  animation:loaderDraw 1.18s .5s cubic-bezier(.7,0,.2,1) forwards,loaderWSettle .72s 1.48s cubic-bezier(.22,1,.36,1) forwards;
}
.loader-red-dot{
  fill:#cc1326;
  opacity:0;
  transform:scale(.35);
  transform-origin:933px 133px;
  filter:drop-shadow(0 10px 18px rgba(204,19,38,.18));
  animation:loaderDot .48s 1.18s cubic-bezier(.18,1.35,.32,1) forwards,loaderDotPulse .8s 1.68s cubic-bezier(.22,1,.36,1) forwards;
}
.loader-caption{
  display:none;
}
.loader-caption span{
  display:block;
  font:700 14px/1 Roboto,sans-serif;
  letter-spacing:.26em;
  opacity:0;
  transform:translateY(8px);
  animation:loaderCaption .62s 1.52s cubic-bezier(.22,1,.36,1) forwards;
}
.loader-caption i{
  width:132px;
  height:1px;
  background:linear-gradient(90deg,transparent,#cc1326 18%,#002b5f 50%,#cc1326 82%,transparent);
  transform:scaleX(0);
  transform-origin:center;
  animation:loaderCaptionLine .72s 1.62s cubic-bezier(.22,1,.36,1) forwards;
}
.loader-mark,
.loader-line{
  display:none !important;
}
@keyframes loaderDraw{
  to{stroke-dashoffset:0;}
}
@keyframes loaderStageIn{
  from{opacity:0;transform:translateY(24px) scale(.985);}
  to{opacity:1;transform:translateY(8px) scale(1);}
}
@keyframes loaderFrame{
  to{transform:scaleX(1);}
}
@keyframes loaderLogoBaseIn{
  to{opacity:1;transform:scale(1);}
}
@keyframes loaderLogoResolve{
  to{opacity:1;transform:scale(1);}
}
@keyframes loaderSketchFade{
  to{opacity:0;transform:scale(1);}
}
@keyframes loaderWSettle{
  to{stroke-width:34;opacity:0;}
}
@keyframes loaderDot{
  70%{opacity:1;transform:scale(1.18);}
  to{opacity:1;transform:scale(1);}
}
@keyframes loaderDotPulse{
  45%{filter:drop-shadow(0 0 0 rgba(204,19,38,.12)) drop-shadow(0 0 26px rgba(204,19,38,.42));}
  to{filter:drop-shadow(0 10px 18px rgba(204,19,38,.18));}
}
@keyframes loaderCaption{
  to{opacity:1;transform:translateY(0);}
}
@keyframes loaderCaptionLine{
  to{transform:scaleX(1);}
}
@media(max-width:640px){
  .page-loader::before{inset:7vh 18px;}
  .loader-stage{width:min(430px,88vw);}
  .loader-logo-motion{top:0;width:100%;}
  .loader-w-stroke{stroke-width:44;}
  .loader-caption span{font-size:14px;letter-spacing:.2em;}
}
@media(prefers-reduced-motion:reduce){
  .page-loader::before,
  .loader-stage,
  .loader-logo-full,
  .loader-w-stroke,
  .loader-red-dot,
  .loader-caption span,
  .loader-caption i{
    animation:none !important;
  }
  .page-loader::before{transform:scaleX(1);}
  .loader-stage{opacity:1;transform:none;}
  .loader-logo-full{opacity:1;transform:none;}
  .loader-logo-motion{display:none;}
  .loader-w-stroke{stroke-dashoffset:0;}
  .loader-red-dot{opacity:1;transform:none;}
  .loader-caption span{opacity:1;transform:none;}
  .loader-caption i{transform:scaleX(1);}
}

/* =========================================================
   Trade story loader: partnership, warehouse, logistics, logo
   ========================================================= */
.page-loader{
  background:
    radial-gradient(circle at 18% 20%,rgba(0,101,226,.08),transparent 28%),
    radial-gradient(circle at 82% 78%,rgba(198,18,37,.06),transparent 24%),
    linear-gradient(180deg,#f8fbff 0%,#eef5fb 100%) !important;
}
.page-loader::before{
  content:none!important;
  display:none!important;
  border:0!important;
  animation:none!important;
}
.loader-stage,
.loader-logo-motion,
.loader-logo-full{
  display:none !important;
}
.loader-trade-stage{
  position:relative;
  width:min(1040px,86vw);
  height:min(520px,64vh);
  min-height:390px;
  isolation:isolate;
}
.loader-trade-stage::before{
  content:"";
  position:absolute;
  left:16%;
  right:16%;
  top:50%;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(0,71,160,.28),rgba(198,18,37,.22),transparent);
  transform:scaleX(0);
  transform-origin:left;
  animation:loaderTradeLine 1.55s .88s cubic-bezier(.22,1,.36,1) forwards,loaderTradeLineExit .5s 2.68s ease forwards;
}
.loader-trade-card{
  position:absolute;
  width:clamp(138px,18vw,210px);
  min-width:0;
  aspect-ratio:1;
  border-radius:50%;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 48%,rgba(255,255,255,.16),transparent 45%),
    #dbe8f3;
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 22px 58px rgba(13,50,86,.14),0 0 0 10px rgba(255,255,255,.5);
  opacity:0;
  transform:translate3d(0,34px,0) scale(.96);
}
.loader-trade-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(0,28,64,.02) 35%,rgba(0,31,68,.72) 100%);
  pointer-events:none;
}
.loader-trade-card::before{
  content:"";
  position:absolute;
  inset:12%;
  z-index:2;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.42);
  pointer-events:none;
}
.loader-trade-card img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
  transform:scale(1.08);
  animation:loaderImageDrift 2.8s cubic-bezier(.22,1,.36,1) forwards;
}
.loader-trade-card-b img,
.loader-trade-card-c img{
  object-fit:cover;
}
.loader-trade-card-b img{
  transform:scale(1.02);
}
.loader-trade-card-b img{
  object-position:54% 52%;
}
.loader-trade-card-c img{
  object-position:66% 57%;
  transform:scale(1.16);
  animation:loaderImageDriftShip 2.8s cubic-bezier(.22,1,.36,1) forwards;
}
.loader-trade-card-b{
  background:
    radial-gradient(circle at 50% 52%,rgba(255,255,255,.95),rgba(226,236,246,.72) 58%,rgba(196,213,229,.86) 100%);
}
.loader-trade-card-c{
  background:
    radial-gradient(circle at 50% 58%,rgba(22,62,98,.42),rgba(10,35,64,.84) 68%,rgba(7,24,47,.96) 100%);
}
.loader-trade-card span{
  position:absolute;
  left:50%;
  bottom:29px;
  z-index:2;
  color:#fff;
  font:700 12px/1 Roboto,sans-serif;
  letter-spacing:.12em;
  text-transform:uppercase;
  transform:translateX(-50%);
  white-space:nowrap;
  text-shadow:0 2px 10px rgba(0,20,48,.38);
}
.loader-trade-card-c span{
  font-size:11px;
  letter-spacing:.07em;
}
.loader-trade-card-a{
  left:10%;
  top:25%;
  animation:loaderCardIn .62s .12s cubic-bezier(.22,1,.36,1) forwards,loaderCardExit .7s 2.75s cubic-bezier(.64,0,.2,1) forwards;
}
.loader-trade-card-b{
  left:50%;
  top:9%;
  transform:translate3d(-50%,34px,0) scale(.96);
  animation:loaderCardCenterIn .62s .55s cubic-bezier(.22,1,.36,1) forwards,loaderCardCenterExit .7s 2.82s cubic-bezier(.64,0,.2,1) forwards;
}
.loader-trade-card-c{
  right:10%;
  top:25%;
  animation:loaderCardIn .62s .98s cubic-bezier(.22,1,.36,1) forwards,loaderCardExit .7s 2.89s cubic-bezier(.64,0,.2,1) forwards;
}
.loader-route{
  position:absolute;
  left:50%;
  top:50%;
  width:58%;
  height:2px;
  transform:translate(-50%,-50%);
  z-index:3;
  pointer-events:none;
  animation:loaderRouteExit .5s 2.68s ease forwards;
}
.loader-route i{
  position:absolute;
  top:50%;
  width:10px;
  height:10px;
  border-radius:50%;
  background:#c61225;
  box-shadow:0 0 0 8px rgba(198,18,37,.08);
  opacity:0;
  transform:translate(-50%,-50%) scale(.4);
  animation:loaderRouteDot .35s cubic-bezier(.18,1.35,.32,1) forwards;
}
.loader-route i:nth-child(1){left:0;animation-delay:.72s;}
.loader-route i:nth-child(2){left:50%;animation-delay:1.12s;}
.loader-route i:nth-child(3){left:100%;animation-delay:1.52s;}
.loader-logo-final{
  position:absolute;
  left:50%;
  top:50%;
  z-index:5;
  width:min(360px,48vw);
  transform:translate(-50%,-44%) scale(.9);
  opacity:0;
  filter:drop-shadow(0 22px 50px rgba(0,41,94,.13));
  animation:loaderFinalLogo .9s 3.6s cubic-bezier(.22,1,.36,1) forwards;
}
.loader-logo-final img{
  display:block;
  width:100%;
  height:auto;
}
@keyframes loaderTradeLine{
  to{transform:scaleX(1);}
}
@keyframes loaderTradeLineExit{
  to{opacity:0;filter:blur(5px);}
}
@keyframes loaderCardIn{
  to{opacity:1;transform:translate3d(0,0,0) scale(1);}
}
@keyframes loaderCardCenterIn{
  to{opacity:1;transform:translate3d(-50%,0,0) scale(1);}
}
@keyframes loaderCardExit{
  to{opacity:0;transform:translate3d(0,-22px,0) scale(.94);filter:blur(8px);}
}
@keyframes loaderCardCenterExit{
  to{opacity:0;transform:translate3d(-50%,-22px,0) scale(.94);filter:blur(8px);}
}
@keyframes loaderImageDrift{
  to{transform:scale(1.01);}
}
@keyframes loaderImageDriftShip{
  to{transform:scale(1.13);}
}
@keyframes loaderRouteDot{
  to{opacity:1;transform:translate(-50%,-50%) scale(1);}
}
@keyframes loaderRouteExit{
  to{opacity:0;filter:blur(6px);}
}
@keyframes loaderFinalLogo{
  65%{opacity:1;transform:translate(-50%,-50%) scale(1.025);}
  to{opacity:1;transform:translate(-50%,-50%) scale(1);}
}
@media(max-width:760px){
  .loader-trade-stage{
    width:min(430px,88vw);
    height:min(560px,74vh);
    min-height:0;
  }
  .loader-trade-stage::before{
    left:50%;
    right:auto;
    top:10%;
    bottom:18%;
    width:1px;
    height:auto;
    transform:scaleY(0);
    transform-origin:top;
    background:linear-gradient(180deg,transparent,rgba(0,71,160,.34),rgba(198,18,37,.28),transparent);
    animation:loaderTradeLineMobile 1.55s .88s cubic-bezier(.22,1,.36,1) forwards,loaderTradeLineExit .5s 2.68s ease forwards;
  }
  .loader-trade-card{
    width:clamp(112px,34vw,150px);
    min-width:0;
    aspect-ratio:1;
  }
  .loader-trade-card-a{
    left:8%;
    top:4%;
  }
  .loader-trade-card-b{
    left:auto;
    right:8%;
    top:28%;
    transform:translate3d(0,34px,0) scale(.96);
    animation-name:loaderCardIn,loaderCardExit;
  }
  .loader-trade-card-c{
    right:auto;
    left:8%;
    top:52%;
  }
  .loader-route{
    left:50%;
    top:12%;
    width:2px;
    height:55%;
  }
  .loader-route i:nth-child(1){left:50%;top:0;}
  .loader-route i:nth-child(2){left:50%;top:50%;}
  .loader-route i:nth-child(3){left:50%;top:100%;}
  .loader-logo-final{
    width:min(250px,64vw);
    top:82%;
  }
  .loader-trade-card span{
    bottom:22px;
    font-size:10px;
  }
  .loader-trade-card-c span{
    font-size:9px;
    letter-spacing:.04em;
  }
}
@keyframes loaderTradeLineMobile{
  to{transform:scaleY(1);}
}
@media(prefers-reduced-motion:reduce){
  .loader-trade-stage::before,
  .loader-trade-card,
  .loader-trade-card img,
  .loader-route i,
  .loader-logo-final{
    animation:none !important;
  }
  .loader-trade-card,
  .loader-route,
  .loader-trade-stage::before{
    display:none !important;
  }
  .loader-logo-final{
    opacity:1;
    transform:translate(-50%,-50%) scale(1);
  }
}

/* =========================================================
   First banner: Osaka-origin global route motion
   ========================================================= */
.home-page .sh-hero-slide-world{
  background-position:center center !important;
  filter:saturate(1.08) contrast(1.04) brightness(.86);
}
.home-page .sh-world-network{
  position:absolute;
  inset:0;
  z-index:1;
  opacity:0;
  pointer-events:none;
  transition:opacity .65s ease;
  mix-blend-mode:screen;
}
.home-page .sh-hero.is-network-active .sh-world-network{
  opacity:1;
}
.home-page .sh-world-network svg{
  width:100%;
  height:100%;
  display:block;
}
.network-line{
  fill:none;
  stroke:rgba(255,255,255,.74);
  stroke-width:1.55;
  stroke-linecap:round;
  stroke-dasharray:1;
  stroke-dashoffset:1;
  vector-effect:non-scaling-stroke;
  filter:drop-shadow(0 0 5px rgba(255,255,255,.62)) drop-shadow(0 0 12px rgba(34,167,244,.34));
  animation:networkLineDraw 3.6s cubic-bezier(.22,1,.36,1) infinite;
}
.network-line-a{animation-delay:.2s}
.network-line-b{animation-delay:.65s}
.network-line-c{animation-delay:1.1s}
.network-line-d{animation-delay:1.55s}
.network-line-e{animation-delay:2s}
.network-line-f{animation-delay:2.45s}
.network-node{
  fill:#fff;
  opacity:.9;
  filter:drop-shadow(0 0 7px rgba(255,255,255,.95)) drop-shadow(0 0 16px rgba(33,176,235,.72));
  transform-box:fill-box;
  transform-origin:center;
  animation:networkNodePulse 2.4s ease-in-out infinite;
}
.node-osaka{
  fill:#ed1b34;
  filter:drop-shadow(0 0 9px rgba(237,27,52,.95)) drop-shadow(0 0 24px rgba(237,27,52,.7));
  animation:osakaSourcePulse 1.8s ease-in-out infinite;
}
.node-a{animation-delay:.2s}
.node-b{animation-delay:.45s}
.node-c{animation-delay:.7s}
.node-d{animation-delay:.95s}
.node-e{animation-delay:1.2s}
.node-f{animation-delay:1.45s}
.network-carrier{
  fill:#fff;
  opacity:0;
  filter:drop-shadow(0 0 7px rgba(255,255,255,.95)) drop-shadow(0 0 18px rgba(0,163,255,.78));
  animation:networkCarrierVisibility 7.2s cubic-bezier(.22,1,.36,1) infinite;
}
.carrier-a{animation-delay:.2s}
.carrier-b{animation-delay:.65s}
.carrier-c{animation-delay:1.1s}
.carrier-d{animation-delay:1.55s}
.carrier-e{animation-delay:2s}
.carrier-f{animation-delay:2.45s}
.home-page .sh-hero.is-network-active .sh-hero-overlay{
  background:
    linear-gradient(90deg,rgba(2,14,31,.76) 0%,rgba(4,43,91,.34) 47%,rgba(2,14,31,.16) 100%),
    radial-gradient(circle at 65% 39%,rgba(237,27,52,.18),transparent 16%),
    radial-gradient(circle at 63% 40%,rgba(0,132,204,.22),transparent 34%) !important;
}
.home-page .sh-hero.is-network-active .sh-hero-copy{
  position:relative;
  z-index:4;
  text-shadow:0 3px 18px rgba(0,14,32,.34);
}
@keyframes networkLineDraw{
  0%{stroke-dashoffset:1;opacity:0;}
  18%{opacity:.86;}
  58%{stroke-dashoffset:0;opacity:.82;}
  100%{stroke-dashoffset:0;opacity:0;}
}
@keyframes networkCarrierVisibility{
  0%{opacity:0;}
  18%{opacity:.92;}
  58%{opacity:.92;}
  100%{opacity:0;}
}
@keyframes networkNodePulse{
  0%,100%{opacity:.52;transform:scale(.82);}
  45%{opacity:1;transform:scale(1.32);}
}
@keyframes osakaSourcePulse{
  0%,100%{opacity:.88;transform:scale(.92);}
  50%{opacity:1;transform:scale(1.42);}
}
@media(max-width:760px){
  .home-page .sh-hero-slide-world{
    background-position:72% center !important;
  }
  .network-line{
    stroke-width:1.2;
  }
  .home-page .sh-world-network{
    transform:translateX(-2%) scale(1.06);
    transform-origin:72% center;
    opacity:0;
  }
  .home-page .sh-hero.is-network-active .sh-world-network{
    opacity:.72;
  }
  .home-page .sh-hero.is-network-active .sh-hero-overlay{
    background:
      linear-gradient(90deg,rgba(2,14,31,.84) 0%,rgba(4,43,91,.45) 55%,rgba(2,14,31,.25) 100%),
      radial-gradient(circle at 66% 40%,rgba(237,27,52,.16),transparent 20%),
      radial-gradient(circle at 63% 40%,rgba(0,132,204,.18),transparent 38%) !important;
  }
}
@media(prefers-reduced-motion:reduce){
  .network-line,
  .network-node,
  .network-carrier{
    animation:none !important;
  }
  .network-line{
    stroke-dashoffset:0;
    opacity:.42;
  }
  .network-carrier{
    display:none;
  }
}

/* Product collage block inspired by the reference Recruit section. */
.home-page .sh-product-recruit{
  position:relative;
  overflow:hidden;
  padding:0 0 120px !important;
  background:#fff !important;
}
.sh-product-recruit-wrap{
  width:min(90%,1240px);
  margin:0 auto;
}
.sh-product-recruit-card{
  position:relative;
  display:block;
  min-height:680px;
  padding:70px 70px 64px;
  overflow:hidden;
  color:#fff;
  background:#2a6495;
  border-radius:6px;
  isolation:isolate;
  box-shadow:0 28px 70px rgba(15,58,98,.12);
}
.sh-product-recruit-card::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(90deg,#2a6495 0%,#2a6495 45%,rgba(42,100,149,.62) 64%,rgba(42,100,149,.08) 100%);
  pointer-events:none;
}
.sh-product-recruit-card::after{
  content:"WINI JAPAN";
  position:absolute;
  left:58px;
  bottom:34px;
  z-index:1;
  color:rgba(255,255,255,.055);
  font-size:clamp(70px,10vw,148px);
  font-weight:800;
  line-height:.8;
  white-space:nowrap;
  pointer-events:none;
}
.sh-product-recruit-title,
.sh-product-recruit-card>h3,
.sh-product-recruit-card>p{
  position:relative;
  z-index:3;
}
.sh-product-recruit-title{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:34px;
  margin-bottom:142px;
}
.sh-product-recruit-title h2{
  margin:0;
  color:#fff;
  font-size:clamp(38px,4vw,56px);
  line-height:1;
  letter-spacing:0;
}
.sh-product-recruit-title span{
  display:inline-flex;
  align-items:center;
  gap:14px;
  color:#fff;
  font-size:14px;
  font-weight:700;
  letter-spacing:.04em;
}
.sh-product-recruit-title i{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border:1px solid rgba(255,255,255,.72);
  border-radius:50%;
  font-style:normal;
  transition:transform .45s cubic-bezier(.22,1,.36,1),background .35s ease;
}
.sh-product-recruit-card>h3{
  margin:0 0 38px;
  max-width:470px;
  color:#fff;
  font-size:clamp(34px,3.4vw,52px);
  line-height:1.45;
}
.sh-product-recruit-card>p{
  margin:0;
  max-width:390px;
  color:rgba(255,255,255,.92);
  font-size:15px;
  font-weight:600;
  line-height:1.9;
}
.sh-product-recruit-photos{
  position:absolute;
  top:5%;
  right:10%;
  z-index:0;
  display:flex;
  gap:22px;
  width:48%;
  margin:0;
  padding:0;
  list-style:none;
  transform:rotate(14deg) translate3d(12px,0,0);
  transform-origin:center;
  opacity:.94;
  transition:transform 1.2s cubic-bezier(.22,1,.36,1),opacity .9s ease;
}
.sh-product-recruit-card.motion-ready .sh-product-recruit-photos{
  opacity:.25;
  transform:rotate(14deg) translate3d(48px,28px,0);
}
.sh-product-recruit-card.in-view .sh-product-recruit-photos{
  opacity:.94;
  transform:rotate(14deg) translate3d(12px,0,0);
}
.sh-product-recruit-photos>li{
  width:calc((100% - 22px) / 2);
  overflow:visible;
}
.sh-product-recruit-photos>li:nth-child(2){
  margin-top:12%;
}
.sh-product-recruit-photos ul{
  display:block;
  margin:0;
  padding:0;
  list-style:none;
  animation:productRecruitFlow 22s linear infinite;
}
.sh-product-recruit-photos>li:nth-child(2) ul{
  animation-name:productRecruitFlowReverse;
  animation-duration:26s;
}
.sh-product-recruit-photos li li{
  position:relative;
  margin-bottom:22px;
  overflow:hidden;
  border-radius:6px;
  background:#103a62;
  box-shadow:0 12px 28px rgba(7,31,55,.16);
}
.sh-product-recruit-photos img{
  display:block;
  width:100%;
  aspect-ratio:1.62/1;
  object-fit:cover;
  filter:saturate(1.04) contrast(1.02);
}
.sh-product-recruit-photos span{
  position:absolute;
  left:14px;
  bottom:12px;
  padding:5px 8px;
  color:#fff;
  background:rgba(4,30,54,.5);
  backdrop-filter:blur(7px);
  font-size:12px;
  font-weight:800;
  letter-spacing:.12em;
}
.sh-product-recruit-card:hover .sh-product-recruit-title i{
  transform:rotate(45deg);
  background:rgba(255,255,255,.16);
}
.sh-product-recruit-card:hover .sh-product-recruit-photos img{
  filter:saturate(1.12) contrast(1.04);
}
@keyframes productRecruitFlow{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(0,-50%,0)}
}
@keyframes productRecruitFlowReverse{
  from{transform:translate3d(0,-50%,0)}
  to{transform:translate3d(0,0,0)}
}
@media(max-width:980px){
  .home-page .sh-product-recruit{padding-bottom:92px !important;}
  .sh-product-recruit-wrap{width:96%;}
  .sh-product-recruit-card{
    min-height:560px;
    padding:58px 36px;
  }
  .sh-product-recruit-card::before{
    background:linear-gradient(90deg,#2a6495 0%,rgba(42,100,149,.95) 48%,rgba(42,100,149,.34) 100%);
  }
  .sh-product-recruit-title{margin-bottom:68px;}
  .sh-product-recruit-photos{
    top:10%;
    right:7%;
    width:72%;
    gap:16px;
  }
  .sh-product-recruit-photos>li{width:calc((100% - 16px) / 2);}
  .sh-product-recruit-photos li li{margin-bottom:16px;}
}
@media(max-width:640px){
  .home-page .sh-product-recruit{padding:0 0 78px !important;}
  .sh-product-recruit-card{
    min-height:500px;
    padding:44px 22px;
  }
  .sh-product-recruit-card::before{
    background:linear-gradient(90deg,#2a6495 0%,rgba(42,100,149,.96) 60%,rgba(42,100,149,.42) 100%);
  }
  .sh-product-recruit-card::after{
    left:20px;
    bottom:22px;
    font-size:58px;
  }
  .sh-product-recruit-title{
    display:block;
    margin-bottom:46px;
  }
  .sh-product-recruit-title span{margin-top:14px;}
  .sh-product-recruit-card>h3{
    margin-bottom:24px;
    font-size:30px;
  }
  .sh-product-recruit-card>p{
    max-width:250px;
    font-size:13px;
  }
  .sh-product-recruit-photos{
    top:14%;
    right:3%;
    width:72%;
    gap:12px;
    transform:rotate(12deg) translate3d(6px,0,0);
  }
  .sh-product-recruit-card.motion-ready .sh-product-recruit-photos{transform:rotate(12deg) translate3d(30px,24px,0);}
  .sh-product-recruit-card.in-view .sh-product-recruit-photos{transform:rotate(12deg) translate3d(6px,0,0);}
  .sh-product-recruit-photos>li{width:calc((100% - 12px) / 2);}
  .sh-product-recruit-photos>li:nth-child(2){margin-top:15%;}
  .sh-product-recruit-photos li li{margin-bottom:12px;}
  .sh-product-recruit-photos span{display:none;}
}
@media(prefers-reduced-motion:reduce){
  .sh-product-recruit-photos ul{
    animation:none !important;
  }
}

/* Final flow cleanup: centered, compact, no process line or scan beam. */
.home-page .sh-flow-section{
  padding:58px 0 68px !important;
}
.sh-flow-section .sh-flow-layout{
  width:min(100% - 80px,1180px);
}
.sh-flow-section .sh-strength-intro{
  display:block;
  margin:0 auto 42px;
  text-align:center;
}
.sh-flow-section .sh-strength-kicker{
  justify-content:center;
}
.sh-flow-section .sh-strength-kicker::before{
  width:30px;
}
.sh-flow-section .sh-strength-intro h2{
  margin:13px 0 0;
  font-size:clamp(36px,3.5vw,50px);
}
.sh-flow-section .sh-strength-intro>p{
  display:none !important;
}
.sh-flow-section .sh-strength-link{
  justify-content:center;
  margin-top:22px;
}
.sh-flow-section .sh-flow-cards{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:46px;
  justify-items:center;
}
.sh-flow-section .sh-flow-cards::before,
.sh-flow-section .sh-flow-cards article::after{
  display:none !important;
}
.sh-flow-section .sh-flow-cards article,
.sh-flow-section .sh-flow-cards article:nth-child(odd),
.sh-flow-section .sh-flow-cards article:nth-child(even){
  width:100%;
  max-width:230px;
  text-align:center;
}
.sh-flow-section .sh-flow-cards .sh-strength-icon{
  margin:0 auto 20px;
  box-shadow:0 0 0 8px rgba(255,255,255,.03),0 14px 42px rgba(13,88,159,.22);
}
.sh-flow-section .sh-flow-cards p{
  max-width:none;
}
@media(max-width:1020px){
  .sh-flow-section .sh-flow-layout{
    width:min(100% - 44px,860px);
  }
  .sh-flow-section .sh-flow-cards{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:34px 28px;
    margin:0;
    padding:0;
    overflow:visible;
  }
  .sh-flow-section .sh-flow-cards article{
    min-width:0;
  }
}
@media(max-width:640px){
  .home-page .sh-flow-section{
    padding:50px 0 56px !important;
  }
  .sh-flow-section .sh-flow-layout{
    width:calc(100% - 32px);
  }
  .sh-flow-section .sh-strength-intro{
    margin-bottom:32px;
  }
  .sh-flow-section .sh-strength-intro h2{
    font-size:34px;
  }
  .sh-flow-section .sh-flow-cards{
    grid-template-columns:1fr 1fr;
    gap:28px 18px;
  }
  .sh-flow-section .sh-flow-cards article,
  .sh-flow-section .sh-flow-cards article:nth-child(even){
    flex:auto;
    max-width:none;
  }
  .sh-flow-section .sh-flow-cards .sh-strength-icon{
    position:relative;
    top:auto;
    right:auto;
    margin:0 auto 16px;
  }
}

/* Keep the network hero as a true first viewport on mobile. */
@media(max-width:760px){
  body.home-page .sh-hero,
  body.home-page .sh-hero-inner,
  .home-page .sh-hero,
  .home-page .sh-hero-inner{
    min-height:calc(var(--wini-vh, 1vh) * 100) !important;
    height:calc(var(--wini-vh, 1vh) * 100) !important;
  }
  .home-page .sh-hero-copy{
    opacity:1 !important;
    transform:none !important;
    text-shadow:0 3px 18px rgba(0,12,28,.42);
  }
  .home-page .sh-en{
    color:#fff !important;
  }
  .home-page .sh-hero h1,
  .home-page .sh-hero p{
    color:#fff !important;
  }
}

/* Flow final: title removed, centered nodes, restored thin connector line. */
.home-page .sh-flow-section{
  padding:54px 0 62px !important;
}
.sh-flow-section .sh-flow-layout{
  display:block !important;
  width:min(100% - 80px,1180px) !important;
}
.sh-flow-section .sh-strength-intro{
  display:none !important;
}
.sh-flow-section .sh-flow-cards{
  position:relative !important;
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:46px !important;
  margin:0 !important;
  padding:0 !important;
  overflow:visible !important;
  justify-items:center !important;
}
.sh-flow-section .sh-flow-cards::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  left:calc(12.5% + 31px) !important;
  right:calc(12.5% + 31px) !important;
  top:31px !important;
  width:auto !important;
  height:1px !important;
  background:linear-gradient(90deg,rgba(151,206,255,.14),rgba(151,206,255,.64),rgba(151,206,255,.14)) !important;
  transform:none !important;
}
.sh-flow-section .sh-flow-cards article::after{
  display:none !important;
}
.sh-flow-section .sh-flow-cards article,
.sh-flow-section .sh-flow-cards article:nth-child(odd),
.sh-flow-section .sh-flow-cards article:nth-child(even){
  width:100% !important;
  max-width:230px !important;
  min-height:0 !important;
  padding:0 !important;
  text-align:center !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
@media(max-width:1020px){
  .sh-flow-section .sh-flow-layout{
    width:min(100% - 44px,860px) !important;
  }
  .sh-flow-section .sh-flow-cards{
    display:flex !important;
    gap:42px !important;
    margin:0 -22px !important;
    padding:0 22px 10px !important;
    overflow-x:auto !important;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
  }
  .sh-flow-section .sh-flow-cards::-webkit-scrollbar{display:none;}
  .sh-flow-section .sh-flow-cards article,
  .sh-flow-section .sh-flow-cards article:nth-child(even){
    flex:0 0 210px !important;
    min-width:210px !important;
    max-width:210px !important;
    scroll-snap-align:center;
  }
  .sh-flow-section .sh-flow-cards::before{
    left:53px !important;
    right:auto !important;
    width:calc((210px + 42px) * 3) !important;
  }
}
@media(max-width:640px){
  .home-page .sh-flow-section{
    padding:44px 0 52px !important;
  }
  .sh-flow-section .sh-flow-layout{
    width:calc(100% - 32px) !important;
  }
  .sh-flow-section .sh-flow-cards{
    gap:34px !important;
    margin:0 -16px !important;
    padding:0 16px 10px !important;
  }
  .sh-flow-section .sh-flow-cards article,
  .sh-flow-section .sh-flow-cards article:nth-child(even){
    flex-basis:180px !important;
    min-width:180px !important;
    max-width:180px !important;
  }
  .sh-flow-section .sh-flow-cards::before{
    left:47px !important;
    width:calc((180px + 34px) * 3) !important;
  }
}

/* === Renewed four-column site footer === */
.site-footer--renewed{position:relative;z-index:4;font-size:14px;}
.footer-inquiry{padding:86px 0 78px;color:#12304d;background:linear-gradient(135deg,#f7faff 0%,#edf5ff 100%);border-top:1px solid #d9e7f4;text-align:center;}
.footer-inquiry-inner{display:flex;flex-direction:column;align-items:center;}
.footer-inquiry-kicker{display:block;margin-bottom:13px;color:#0065e2;font-size:14px;font-weight:700;letter-spacing:.18em;}
.footer-inquiry h2{margin:0;color:#102b45;font-size:clamp(30px,3.1vw,48px);line-height:1.45;letter-spacing:.025em;}
.footer-inquiry>div>p{margin:14px 0 0;color:#6c7e8f;font-size:14px;}
.footer-inquiry-actions{display:grid;grid-template-columns:repeat(3,minmax(210px,1fr));gap:12px;width:min(760px,100%);margin:34px auto 22px;}
.footer-inquiry-actions a{min-height:58px;padding:0 22px;display:flex;align-items:center;justify-content:center;gap:12px;border:1px solid rgba(0,101,226,.24);border-radius:999px;color:#075cae;background:#fff;font-size:14px;transition:transform .35s cubic-bezier(.22,1,.36,1),background .3s ease,color .3s ease,box-shadow .3s ease;}
.footer-inquiry-actions a.is-primary{color:#fff;background:#0065e2;border-color:#0065e2;}
.footer-inquiry-actions a:hover{color:#fff;background:#004daf;border-color:#004daf;transform:translateY(-3px);box-shadow:0 12px 28px rgba(0,77,175,.18);}
.footer-inquiry-actions a span{font-size:16px;}.footer-inquiry-actions a b{font-weight:700;letter-spacing:.04em;}
.footer-inquiry-inner>small{color:#8a99a7;font-size:14px;letter-spacing:.025em;}
.footer-directory{padding:72px 0 22px;color:#fff;background:linear-gradient(135deg,#063f88 0%,#004daf 55%,#004293 100%);}
.footer-directory-grid{display:grid;grid-template-columns:1.35fr .72fr .8fr 1.15fr;gap:clamp(34px,5vw,78px);align-items:start;}
.footer-profile img{display:block;width:160px;height:auto;margin:0 0 28px;}
.footer-profile p{max-width:330px;margin:0;color:rgba(226,239,255,.72);font-size:14px;line-height:2;}
.footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:14px;}
.footer-column>span{display:block;margin-bottom:12px;color:#91c6ff;font-size:14px;font-weight:700;letter-spacing:.18em;}
.footer-column a{position:relative;color:rgba(255,255,255,.84);font-size:14px;transition:color .25s ease,transform .3s ease;}
.footer-column a:hover{color:#fff;transform:translateX(5px);}
.footer-address strong{margin-bottom:2px;color:#fff;font-size:15px;}.footer-address p{margin:0 0 2px;color:rgba(226,239,255,.7);font-size:14px;line-height:1.8;}
.footer-legal{display:flex;justify-content:space-between;align-items:center;margin-top:58px;padding-top:20px;border-top:1px solid rgba(255,255,255,.16);color:rgba(210,230,249,.58);font-size:14px;}
.footer-legal a{transition:color .25s ease;}.footer-legal a:hover{color:#fff;}
@media(max-width:900px){.footer-directory-grid{grid-template-columns:1.3fr 1fr 1fr;}.footer-address{grid-column:1/-1;padding-top:28px;border-top:1px solid rgba(255,255,255,.14);}.footer-inquiry-actions{grid-template-columns:1fr;max-width:460px;}}
@media(max-width:640px){.footer-inquiry{padding:64px 0 60px;}.footer-inquiry h2 br{display:none;}.footer-inquiry-actions{margin-top:28px;}.footer-directory{padding-top:54px;}.footer-directory-grid{grid-template-columns:1fr 1fr;gap:38px 24px;}.footer-profile,.footer-address{grid-column:1/-1;}.footer-profile p{max-width:none;}.footer-address{padding-top:26px;}.footer-legal{display:block;margin-top:42px;}.footer-legal a{display:block;margin-top:10px;}}.footer-inquiry-actions .is-wechat:hover{color:#fff;background:#004daf;border-color:#004daf;}
.footer-inquiry-actions .is-whatsapp:hover{color:#fff;background:#004daf;border-color:#004daf;}.footer-inquiry-actions a>span{display:grid;place-items:center;width:22px;height:22px;flex:0 0 22px;}
.footer-inquiry-actions a>span img{display:block;width:20px;height:20px;object-fit:contain;filter:none;}
.footer-inquiry-actions .is-primary>span img{filter:brightness(0) invert(1);}
.footer-inquiry-actions .is-wechat>span img{filter:invert(55%) sepia(89%) saturate(1113%) hue-rotate(92deg) brightness(91%) contrast(95%);}
.footer-inquiry-actions .is-whatsapp>span img{filter:invert(67%) sepia(67%) saturate(791%) hue-rotate(86deg) brightness(91%) contrast(91%);}
.footer-inquiry-actions .is-wechat:hover>span img,.footer-inquiry-actions .is-whatsapp:hover>span img{filter:brightness(0) invert(1);}
/* Unique generated product collage */
.home-page .sh-product-recruit-photos.sh-product-recruit-photos--unique {
  top: 9%;
  right: 0;
  width: 48%;
  height: auto;
  gap: 22px;
  overflow: visible;
  transform: rotate(14deg) translate3d(12px,0,0) !important;
}
.home-page .sh-product-recruit-card.motion-ready .sh-product-recruit-photos--unique {
  transform: rotate(14deg) translate3d(48px,28px,0) !important;
}
.home-page .sh-product-recruit-card.in-view .sh-product-recruit-photos--unique {
  transform: rotate(14deg) translate3d(12px,0,0) !important;
}
.home-page .sh-product-recruit-photos--unique > .product-photo-rail {
  width: calc((100% - 22px) / 2);
  height: auto;
  margin: 0;
  overflow: visible;
}
.home-page .sh-product-recruit-photos--unique > .product-photo-rail:nth-child(2) {
  margin-top: 12%;
}
.home-page .sh-product-recruit-photos--unique > .product-photo-rail > ul {
  display: block;
  margin: 0;
  padding: 0;
  list-style: none;
  will-change: transform;
}
.home-page .sh-product-recruit-photos--unique > .product-photo-rail--left > ul {
  animation: uniqueProductRailUp 22s linear infinite !important;
}
.home-page .sh-product-recruit-photos--unique > .product-photo-rail--right > ul {
  animation: uniqueProductRailDown 26s linear infinite !important;
}
.home-page .sh-product-recruit-photos--unique .product-photo-rail li {
  position: relative;
  width: 100%;
  margin: 0 0 22px;
  overflow: hidden;
  border-radius: 10px;
  background: #103a62;
  box-shadow: 0 12px 28px rgba(7,31,55,.16);
}
.home-page .sh-product-recruit-photos--unique .product-photo-rail img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1.62 / 1;
  object-fit: cover;
  filter: saturate(1.04) contrast(1.02);
  transition: transform .8s cubic-bezier(.2,.7,.2,1), filter .5s ease;
}
.home-page .sh-product-recruit-photos--unique .product-photo-rail li::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg,transparent 52%,rgba(3,33,63,.7));
  pointer-events: none;
}
.home-page .sh-product-recruit-photos--unique .product-photo-rail span {
  left: 14px;
  right: auto;
  bottom: 12px;
  z-index: 2;
  font-size: 14px;
}
.home-page .sh-product-recruit-card:hover .sh-product-recruit-photos--unique img {
  transform: scale(1.025);
}
@keyframes uniqueProductRailUp {
  from { transform: translate3d(0, 0, 0); }
  to { transform: translate3d(0, -50%, 0); }
}
@keyframes uniqueProductRailDown {
  from { transform: translate3d(0, -50%, 0); }
  to { transform: translate3d(0, 0, 0); }
}
  90%, 100% { transform: translate3d(0, 0, 0); }
}
@media (max-width: 980px) {
  .home-page .sh-product-recruit-photos.sh-product-recruit-photos--unique {
    top: 10%;
    right: 7%;
    width: 72%;
    gap: 16px;
  }
  .home-page .sh-product-recruit-photos--unique > .product-photo-rail {
    width: calc((100% - 16px) / 2);
  }
  .home-page .sh-product-recruit-photos--unique .product-photo-rail li { margin-bottom: 16px; }
}
@media (max-width: 640px) {
  .home-page .sh-product-recruit-photos.sh-product-recruit-photos--unique {
    top: 14%;
    right: 3%;
    width: 72%;
    gap: 12px;
    transform: rotate(12deg) translate3d(6px,0,0) !important;
  }
  .home-page .sh-product-recruit-card.motion-ready .sh-product-recruit-photos--unique { transform: rotate(12deg) translate3d(30px,24px,0) !important; }
  .home-page .sh-product-recruit-card.in-view .sh-product-recruit-photos--unique { transform: rotate(12deg) translate3d(6px,0,0) !important; }
  .home-page .sh-product-recruit-photos--unique > .product-photo-rail { width: calc((100% - 12px) / 2); }
  .home-page .sh-product-recruit-photos--unique > .product-photo-rail:nth-child(2) { margin-top: 15%; }
  .home-page .sh-product-recruit-photos--unique .product-photo-rail li { margin-bottom: 12px; }
  .home-page .sh-product-recruit-photos--unique .product-photo-rail span { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .home-page .sh-product-recruit-photos--unique > .product-photo-rail > ul { animation: none !important; }
}
/* Refined news detail with popular sidebar */
.news-detail-page .breadcrumb{margin-top:0;}
.news-detail-shell{padding:92px 0 120px;background:linear-gradient(180deg,#f7faff 0,#fff 340px);}
.news-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:clamp(54px,6vw,92px);align-items:start;}
.news-detail-layout .news-detail{width:auto;margin:0;padding:0;min-width:0;}
.news-detail-layout .news-detail-head{margin-bottom:46px;}
.news-detail-layout .news-detail-head h1{font-size:clamp(36px,3.35vw,54px);}
.news-detail-layout .news-detail-visual{margin-bottom:54px;border-radius:12px;box-shadow:0 24px 58px rgba(11,54,91,.12);}
.news-detail-layout .news-detail-visual img{height:auto;aspect-ratio:16/9;}
.news-detail-layout .news-detail-body{max-width:none;margin:0;padding:0 34px;}
.news-detail-lead{position:relative;padding:26px 28px;border-left:4px solid #0870dc;background:#f1f7fd;color:#17324c!important;font-size:18px!important;font-weight:700;}
.news-detail-note{margin:48px 0;padding:32px 34px;border:1px solid #d8e6f2;border-radius:10px;background:linear-gradient(135deg,#f7fbff,#edf6ff);}
.news-detail-note strong{display:block;margin-bottom:10px;color:#15334f;font-size:18px;}
.news-detail-note p{margin-bottom:18px;font-size:14px;line-height:1.9;}
.news-detail-note a{display:inline-flex;align-items:center;gap:12px;color:#0065e2;font-size:14px;font-weight:700;}
.news-detail-note a span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;color:#fff;background:#0065e2;transition:.3s ease;}
.news-detail-note a:hover span{transform:translate(3px,-3px);background:#004daf;}
.news-detail-layout .news-detail-foot{max-width:none;margin:72px 34px 0;}
.news-popular{position:sticky;top:120px;padding:32px 28px;border-top:4px solid #0065e2;background:#fff;box-shadow:0 18px 54px rgba(15,57,91,.1);}
.news-popular-head{margin-bottom:8px;padding-bottom:22px;border-bottom:1px solid #dce7f0;}
.news-popular-head>span{color:#0870dc;font-size:14px;font-weight:800;letter-spacing:.16em;}
.news-popular-head h2{margin:6px 0 0;color:#142e47;font-size:22px;line-height:1.5;}
.news-popular-item{display:grid;grid-template-columns:92px 1fr;gap:15px;padding:20px 0;border-bottom:1px solid #e2eaf1;transition:transform .35s cubic-bezier(.22,1,.36,1);}
.news-popular-item:hover{transform:translateX(5px);}
.news-popular-item img{display:block;width:92px;height:76px;border-radius:6px;object-fit:cover;}
.news-popular-item small{display:block;margin-bottom:5px;color:#8393a1;font-size:14px;}
.news-popular-item h3{margin:0 0 7px;color:#19334b;font-size:14px;line-height:1.65;}
.news-popular-item>div>span{color:#0870dc;font-size:14px;font-weight:700;letter-spacing:.08em;}
.news-popular-item.is-current{position:relative;}
.news-popular-item.is-current::before{content:"";position:absolute;left:-28px;top:20px;bottom:20px;width:3px;background:#0870dc;}
.news-popular-more{display:flex;justify-content:space-between;align-items:center;margin-top:24px;color:#17324c;font-size:14px;font-weight:700;}
.news-popular-more span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;color:#fff;background:#0065e2;transition:.3s ease;}
.news-popular-more:hover span{transform:rotate(45deg);background:#004daf;}
@media(max-width:980px){
  .news-detail-layout{grid-template-columns:minmax(0,1fr) 300px;gap:38px;}
  .news-detail-layout .news-detail-body{padding:0 10px;}
  .news-detail-layout .news-detail-foot{margin-left:10px;margin-right:10px;}
  .news-popular{padding:27px 22px;}
  .news-popular-item{grid-template-columns:1fr;}
  .news-popular-item img{width:100%;height:auto;aspect-ratio:16/9;}
  .news-popular-item.is-current::before{left:-22px;}
}
@media(max-width:760px){
  .news-detail-shell{padding:64px 0 86px;}
  .news-detail-layout{grid-template-columns:1fr;}
  .news-popular{position:static;margin-top:14px;}
  .news-popular-item{grid-template-columns:110px 1fr;}
  .news-popular-item img{width:110px;height:86px;aspect-ratio:auto;}
}
@media(max-width:480px){
  .news-detail-layout .news-detail-body{padding:0;}
  .news-detail-layout .news-detail-foot{margin-left:0;margin-right:0;}
  .news-detail-lead,.news-detail-note{padding:22px 20px;}
  .news-popular-item{grid-template-columns:94px 1fr;}
  .news-popular-item img{width:94px;height:78px;}
}
/* Disable entrance animations on all lower pages */
.lower-page .page-loader {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
.lower-page .motion-ready,
.lower-page .motion-ready.in-view,
.lower-page .visual-card.motion-ready,
.lower-page .visual-card.motion-ready.in-view,
.lower-page .product-tile.motion-ready,
.lower-page .product-tile.motion-ready.in-view {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
  animation: none !important;
}
/* Mobile UX final */
:root{--accent:#BC1828}.site-header .mobile-menu-toggle,.mobile-menu-phone{display:none}.sh-section-title>div>span:after,.lower-hero-inner>span:after,.footer-inquiry-kicker:after{content:"";display:inline-block;width:18px;height:2px;margin-left:10px;vertical-align:middle;border-radius:2px;background:var(--accent)}.news-detail-meta span{border-left:2px solid var(--accent)}.news-popular{border-top-color:var(--accent)}.footer-directory{border-top:3px solid var(--accent)}
@media(max-width:760px){
body.menu-open{overflow:hidden}.site-header .header-main,.home-page .header-main,.lower-page .header-main{position:relative!important;height:72px!important;min-height:72px!important;display:grid!important;grid-template-columns:128px 1fr 48px!important;gap:0!important;padding:0 16px!important;align-items:center!important}.site-header .brand,.home-page .site-header .brand,.lower-page .site-header .brand{position:relative!important;z-index:10003!important;width:128px!important;min-width:128px!important;height:72px!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:flex-start!important}.site-header .brand-logo,.home-page .site-header .brand-logo,.lower-page .site-header .brand-logo{display:block!important;width:82px!important;max-width:82px!important;height:auto!important;max-height:58px!important;margin:0!important;transform:none!important;object-fit:contain!important}
.site-header .mobile-menu-toggle{position:relative;z-index:10004;grid-column:3;display:flex;width:44px;height:44px;padding:0;border:0;color:#fff;background:transparent;align-items:center;justify-content:center;cursor:pointer}.mobile-menu-toggle span,.mobile-menu-toggle:before,.mobile-menu-toggle:after{content:"";position:absolute;width:24px;height:2px;border-radius:2px;background:currentColor;transition:transform .4s cubic-bezier(.22,1,.36,1),opacity .25s ease}.mobile-menu-toggle:before{transform:translateY(-7px)}.mobile-menu-toggle:after{transform:translateY(7px)}.menu-open .mobile-menu-toggle span{opacity:0}.menu-open .mobile-menu-toggle:before{transform:rotate(45deg)}.menu-open .mobile-menu-toggle:after{transform:rotate(-45deg)}.menu-open .site-header .mobile-menu-toggle,.site-header.is-scrolled .mobile-menu-toggle{color:#18334d!important}
.site-header .global-nav,.home-page .global-nav,.lower-page .global-nav{position:fixed!important;inset:0!important;z-index:10001!important;width:100%!important;height:100dvh!important;margin:0!important;padding:104px 34px 126px!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:0!important;overflow-y:auto!important;background:rgba(248,251,255,.98)!important;backdrop-filter:blur(18px)!important;transform:translateX(100%)!important;opacity:0!important;visibility:hidden!important;transition:transform .52s cubic-bezier(.22,1,.36,1),opacity .35s ease,visibility .52s linear!important}.menu-open .site-header .global-nav{transform:none!important;opacity:1!important;visibility:visible!important}.site-header .global-nav .nav-item,.home-page .global-nav .nav-item,.lower-page .global-nav .nav-item{width:100%!important;min-width:0!important;height:auto!important;padding:18px 4px!important;border:0!important;border-bottom:1px solid #dce6ef!important;display:flex!important;align-items:flex-start!important;color:#18334d!important;text-shadow:none!important;opacity:0;transform:translateX(28px);transition:opacity .38s ease,transform .5s cubic-bezier(.22,1,.36,1)!important}.menu-open .global-nav .nav-item{opacity:1;transform:none}.menu-open .global-nav .nav-item:nth-child(1){transition-delay:.08s!important}.menu-open .global-nav .nav-item:nth-child(2){transition-delay:.13s!important}.menu-open .global-nav .nav-item:nth-child(3){transition-delay:.18s!important}.menu-open .global-nav .nav-item:nth-child(4){transition-delay:.23s!important}.menu-open .global-nav .nav-item:nth-child(5){transition-delay:.28s!important}.menu-open .global-nav .nav-item:nth-child(6){transition-delay:.33s!important}.site-header .global-nav .nav-item span,.home-page .global-nav .nav-item span,.lower-page .global-nav .nav-item span{height:auto!important;overflow:visible!important;color:inherit!important;font-size:18px!important;line-height:1.5!important}.global-nav .nav-item span i:nth-child(2){display:none!important}.global-nav .nav-item.active{color:#0065e2!important}.global-nav .nav-item.active:before{content:"";width:7px;height:7px;margin:10px 11px 0 0;border-radius:50%;background:var(--accent)}.global-nav .nav-item:after{display:none!important}
.site-header .header-tools,.home-page .header-tools,.lower-page .header-tools{position:fixed!important;left:34px!important;right:34px!important;bottom:34px!important;z-index:10002!important;width:auto!important;height:auto!important;display:flex!important;justify-content:flex-start!important;opacity:0!important;visibility:hidden!important;transform:translateY(15px);transition:.35s ease!important}.menu-open .site-header .header-tools{opacity:1!important;visibility:visible!important;transform:none;transition-delay:.3s!important}.header-tools .lang-switch,.header-tools .lang-switch button,.header-tools .lang-switch span{color:#29445d!important;text-shadow:none!important}
.home-page .sh-hero-slide{background-position:60% center!important}.home-page .sh-hero-slide-world{background-position:64% center!important}.home-page .sh-hero-slide:nth-child(2){background-position:58% center!important}.products-hero .lower-hero-bg{background-color:#dce7ef!important;background-size:cover!important;background-position:68% center!important;background-repeat:no-repeat!important}.products-hero .lower-shade{background:linear-gradient(90deg,rgba(3,44,80,.9),rgba(3,44,80,.62) 48%,rgba(3,44,80,.16))!important}
.sh-flow-section .sh-flow-cards{display:grid!important;grid-template-columns:1fr!important;gap:0!important;margin:0!important;padding:0!important;overflow:visible!important}.sh-flow-section .sh-flow-cards:before{display:block!important;left:34px!important;right:auto!important;top:38px!important;bottom:38px!important;width:1px!important;height:auto!important;background:linear-gradient(180deg,rgba(151,206,255,.12),rgba(151,206,255,.7),rgba(188,24,40,.48),rgba(151,206,255,.12))!important}.sh-flow-section .sh-flow-cards article,.sh-flow-section .sh-flow-cards article:nth-child(n){position:relative!important;display:grid!important;grid-template-columns:70px 1fr!important;grid-template-rows:auto auto auto!important;column-gap:22px!important;width:100%!important;min-width:0!important;max-width:none!important;padding:24px 0!important;text-align:left!important}.sh-flow-section .sh-flow-cards .sh-strength-icon{grid-column:1;grid-row:1/4;margin:0!important;align-self:start;z-index:2}.sh-flow-section .sh-flow-cards small,.sh-flow-section .sh-flow-cards h3,.sh-flow-section .sh-flow-cards p{grid-column:2;text-align:left}.sh-flow-section .sh-flow-cards small{grid-row:1}.sh-flow-section .sh-flow-cards h3{grid-row:2;margin:4px 0 5px!important}.sh-flow-section .sh-flow-cards p{grid-row:3;margin:0!important}
}
/* Mobile UX screenshot corrections */
@media(max-width:760px){
  .site-header .brand-logo,.home-page .site-header .brand-logo,.lower-page .site-header .brand-logo{transform:translateY(5px)!important;}
  .site-header .global-nav,.home-page .global-nav,.lower-page .global-nav{inset:0!important;top:0!important;right:0!important;bottom:0!important;left:0!important;min-width:100vw!important;max-width:none!important;background:#f8fbff!important;transform:translate3d(100%,0,0)!important;}
  .menu-open .site-header .global-nav{transform:translate3d(0,0,0)!important;}
  .site-header .global-nav .nav-item,.home-page .global-nav .nav-item,.lower-page .global-nav .nav-item{align-items:flex-start!important;justify-content:center!important;max-width:none!important;}
  .site-header .header-tools,.home-page .header-tools,.lower-page .header-tools{inset:auto 34px 32px 34px!important;top:auto!important;right:34px!important;bottom:32px!important;left:34px!important;margin:0!important;padding:0!important;transform:translate3d(0,14px,0)!important;}
  .menu-open .site-header .header-tools{transform:none!important;}
  .header-tools .lang-switch{display:flex!important;align-items:center!important;gap:10px!important;padding:0!important;margin:0!important;}
  .header-tools .lang-switch button{min-width:44px!important;height:40px!important;padding:0!important;border:1px solid #cad8e4!important;}
  .header-tools .lang-switch button.active{color:#fff!important;background:#BC1828!important;border-color:#BC1828!important;}
  .home-page .sh-hero-slide-world{background-position:84% center!important;}
  .home-page .sh-hero-slide:nth-child(2){background-position:90% center!important;}
  .sh-flow-section .sh-flow-cards:before{background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.9),rgba(255,255,255,.12))!important;}
  .page-loader .loader-logo-final{position:fixed!important;left:50%!important;top:50%!important;right:auto!important;bottom:auto!important;transform:translate(-50%,-50%) scale(.9)!important;}
}
@media(max-width:760px) and (prefers-reduced-motion:no-preference){
  .page-loader .loader-logo-final{animation:loaderFinalLogoMobile .9s 3.6s cubic-bezier(.22,1,.36,1) forwards!important;}
}
@keyframes loaderFinalLogoMobile{65%{opacity:1;transform:translate(-50%,-50%) scale(1.025)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}
/* Mobile navigation alignment and form cleanup */
.breadcrumb .container{min-width:0;overflow:hidden;white-space:nowrap}.breadcrumb .container>a,.breadcrumb .container>b{flex:0 0 auto}.breadcrumb .container>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.contact-form>label>span{display:grid;grid-template-columns:minmax(max-content,1fr) 42px;align-items:center;gap:12px}.contact-form>label>span b,.contact-form>label>span em{display:inline-flex;width:42px;min-width:42px;height:26px;margin:0;padding:0;align-items:center;justify-content:center;line-height:1;white-space:nowrap}.privacy-check{justify-content:flex-start!important;text-align:left!important}.contact-form .privacy-check input[type="checkbox"]{flex:0 0 18px;width:18px!important;height:18px!important;margin:5px 10px 0 0;padding:0!important}.privacy-check span,.privacy-check label{flex:0 1 auto;text-align:left}
@media(max-width:760px){
  .site-header .brand,.home-page .site-header .brand,.lower-page .site-header .brand{align-items:center!important;}
  .site-header .brand-logo,.home-page .site-header .brand-logo,.lower-page .site-header .brand-logo{transform:translateY(3px)!important;}
  .site-header .mobile-menu-toggle{align-self:center!important;justify-self:end!important;margin:0!important;transform:none!important;}
  .site-header .global-nav,.home-page .global-nav,.lower-page .global-nav{padding:104px 34px 46px!important;}
  .site-header .global-nav .nav-item,.home-page .global-nav .nav-item,.lower-page .global-nav .nav-item{flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:11px!important;}
  .global-nav .nav-item.active:before{display:block!important;flex:0 0 7px;width:7px!important;height:7px!important;margin:0!important;border-radius:50%;background:#BC1828!important;}
  .global-nav>.header-tools,.home-page .global-nav>.header-tools,.lower-page .global-nav>.header-tools{position:static!important;inset:auto!important;order:99!important;width:100%!important;height:auto!important;margin:24px 0 0!important;padding:0 4px!important;display:flex!important;opacity:1!important;visibility:visible!important;transform:none!important;justify-content:flex-start!important;}
  .global-nav>.header-tools .lang-switch{display:flex!important;gap:8px!important;}
  .global-nav>.header-tools .lang-switch button{width:46px!important;min-width:46px!important;height:42px!important;}
  .site-header .global-nav>.mobile-menu-phone{display:grid!important;grid-template-columns:1fr;align-items:center;justify-content:center;gap:0;order:98;width:max-content;min-height:50px;margin:22px auto 0;padding:0 4px;border:0;border-radius:0;color:#18334d!important;background:transparent;box-shadow:none;text-decoration:none;opacity:0;transform:translateY(12px);transition:opacity .35s ease .32s,transform .45s cubic-bezier(.22,1,.36,1) .32s;}
  body.menu-open .site-header .global-nav>.mobile-menu-phone{opacity:1;transform:none;}
  .site-header .global-nav>.mobile-menu-phone span{display:none!important;}
  .site-header .global-nav>.mobile-menu-phone strong{display:block;padding:0 0 5px;color:#18334d;font-size:28px;font-weight:700;line-height:1.1;letter-spacing:.045em;white-space:nowrap;border-bottom:1px solid #aebdca;}
  .global-nav>.mobile-menu-phone+.header-tools{margin-top:14px!important;}
  .breadcrumb .container{width:calc(100% - 28px)!important;gap:10px!important;}
  .contact-form>label>span{grid-template-columns:minmax(0,1fr) 42px;width:100%;}
  .privacy-check{display:flex!important;align-items:flex-start!important;margin-left:0!important;margin-right:0!important;}
}
/* Mobile active navigation single-row fix */
@media(max-width:760px){
  body.menu-open .site-header .global-nav .nav-item,
  body.menu-open.home-page .site-header .global-nav .nav-item,
  body.menu-open.lower-page .site-header .global-nav .nav-item{display:flex!important;flex-flow:row nowrap!important;align-items:center!important;justify-content:flex-start!important;color:#18334d!important;}
  body.menu-open .site-header .global-nav .nav-item span,
  body.menu-open.home-page .site-header .global-nav .nav-item span,
  body.menu-open.lower-page .site-header .global-nav .nav-item span{display:block!important;flex:0 1 auto!important;width:auto!important;max-width:calc(100% - 20px)!important;margin:0!important;color:inherit!important;white-space:nowrap!important;}
  body.menu-open .site-header .global-nav .nav-item.active,
  body.menu-open.home-page .site-header .global-nav .nav-item.active,
  body.menu-open.lower-page .site-header .global-nav .nav-item.active{color:#0065e2!important;}
  body.menu-open .site-header .global-nav .nav-item.active:before{content:""!important;display:block!important;position:static!important;flex:0 0 7px!important;width:7px!important;height:7px!important;margin:0 11px 0 0!important;border:0!important;border-radius:50%!important;background:#BC1828!important;transform:none!important;}
  body.menu-open .site-header .global-nav .nav-item span i{color:inherit!important;white-space:nowrap!important;}
}
/* Absolute mobile menu button centering */
@media(max-width:760px){
  .site-header .header-main,.home-page .header-main,.lower-page .header-main{position:relative!important;}
  .site-header .mobile-menu-toggle,.home-page .site-header .mobile-menu-toggle,.lower-page .site-header .mobile-menu-toggle{position:absolute!important;top:50%!important;right:16px!important;bottom:auto!important;left:auto!important;margin:0!important;translate:none!important;transform:translateY(-50%)!important;align-self:auto!important;justify-self:auto!important;}
  body.menu-open .site-header .mobile-menu-toggle{top:36px!important;transform:translateY(-50%)!important;}
}

/* Give every lower-page hero more breathing room below the mobile logo. */
@media(max-width:760px){
  .lower-page .lower-hero .lower-hero-inner{transform:translateY(30px);}
  .lower-page .site-header,.lower-page .header-main,.lower-page .site-header .brand{overflow:visible!important;}
  .lower-page .site-header .brand-logo{width:78px!important;max-width:78px!important;max-height:48px!important;transform:none!important;}
  .lower-page .company-photo-wide{transform:translate3d(0,var(--parallax-y,0),0)!important;}
  .lower-page .company-table,.lower-page .company-table>div,.lower-page .company-table dd{min-width:0;max-width:100%;}
  .lower-page .company-table dd{overflow-wrap:anywhere;}
  .lower-page #logistics.service-block{padding-bottom:8px;}
  .lower-page #logistics .service-grid{min-height:0;}
  .lower-page #logistics .service-copy{padding-bottom:12px;}
  .lower-page #logistics + .flow-section{padding-top:12px;}
  .lower-page #logistics + .flow-section .section-title .eyebrow{display:block;margin-bottom:24px;}
  .lower-page .product-contact h2{font-size:30px!important;letter-spacing:-.14em;white-space:nowrap;}
}
/* Align mobile loader route with card centers */
@media(max-width:760px){
  .page-loader .loader-trade-stage::before{left:50%!important;top:17%!important;width:2px!important;height:48%!important;transform:scaleY(0);transform-origin:top;background:linear-gradient(180deg,transparent,rgba(0,71,160,.4) 8%,rgba(188,24,40,.34) 50%,rgba(0,71,160,.4) 92%,transparent)!important;}
  .page-loader .loader-route{left:50%!important;top:17%!important;width:2px!important;height:48%!important;transform:translateX(-50%)!important;}
  .page-loader .loader-route i:nth-child(1){left:50%!important;top:0!important;}
  .page-loader .loader-route i:nth-child(2){left:50%!important;top:50%!important;}
  .page-loader .loader-route i:nth-child(3){left:50%!important;top:100%!important;}
}
/* Normalize mobile menu marker column */
@media(max-width:760px){
  body.menu-open .site-header .global-nav .nav-item:before,
  body.menu-open.home-page .site-header .global-nav .nav-item:before,
  body.menu-open.lower-page .site-header .global-nav .nav-item:before{content:""!important;display:block!important;position:static!important;flex:0 0 7px!important;width:7px!important;height:7px!important;margin:0 11px 0 0!important;border:0!important;border-radius:50%!important;background:transparent!important;box-shadow:none!important;opacity:1!important;visibility:visible!important;transform:none!important;}
  body.menu-open .site-header .global-nav .nav-item.active:before,
  body.menu-open.home-page .site-header .global-nav .nav-item.active:before,
  body.menu-open.lower-page .site-header .global-nav .nav-item.active:before{background:#BC1828!important;box-shadow:0 0 0 5px rgba(188,24,40,.09)!important;}
  body.menu-open .site-header .global-nav .nav-item span{margin:0!important;padding:0!important;transform:none!important;}
  body.menu-open .site-header .global-nav .nav-item span i{display:block!important;height:auto!important;margin:0!important;padding:0!important;transform:none!important;line-height:1.5!important;}
  body.menu-open .site-header .global-nav .nav-item span i+ i{display:none!important;}
}
/* Mobile hero subjects aligned right */
@media(max-width:760px){
  .home-page .sh-hero-slide-world{background-position:55% center!important;}
  .home-page .sh-hero-slide:nth-child(2){background-position:32% center!important;}
}
/* Footer contact brand buttons */
.footer-inquiry-actions a,.footer-inquiry-actions a.is-primary,.footer-inquiry-actions a.is-wechat,.footer-inquiry-actions a.is-whatsapp{border:0!important;}
.footer-inquiry-actions a.is-wechat{color:#fff!important;background:rgb(7,193,96)!important;}
.footer-inquiry-actions a.is-whatsapp{color:#fff!important;background:rgb(37,211,102)!important;}
.footer-inquiry-actions a.is-line{color:#fff!important;background:#06c755!important;}
.footer-inquiry-actions a.is-social-combined>span{width:22px;gap:0;grid-template-columns:20px;}
.footer-inquiry-actions a.is-social-combined>span img{width:20px;height:20px;filter:brightness(0) invert(1)!important;}
.footer-inquiry-actions a.is-social-combined>span img+img{display:none!important;}
.footer-inquiry-actions a.is-line>span{width:40px;height:40px;}
.footer-inquiry-actions a.is-line>span img{width:40px;height:40px;object-fit:contain;filter:none!important;}
.footer-inquiry-actions a.is-line>span img{filter:brightness(0) invert(1)!important;}
.footer-inquiry-actions a.is-wechat>span img,.footer-inquiry-actions a.is-whatsapp>span img{filter:brightness(0) invert(1)!important;}
.footer-inquiry-actions a:hover,.footer-inquiry-actions a.is-primary:hover,.footer-inquiry-actions a.is-wechat:hover,.footer-inquiry-actions a.is-whatsapp:hover{transform:translateY(-5px)!important;}
.footer-inquiry-actions a.is-wechat:hover{color:#fff!important;background:rgb(7,193,96)!important;}
.footer-inquiry-actions a.is-whatsapp:hover{color:#fff!important;background:rgb(37,211,102)!important;}
.footer-inquiry-actions a.is-line:hover{color:#fff!important;background:#05a847!important;transform:translateY(-5px)!important;}

/* WeChat contact modal */
body.wechat-modal-open{overflow:hidden;}
.wechat-modal{position:fixed;inset:0;z-index:20000;display:grid;place-items:center;padding:24px;opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s ease;}
.wechat-modal.is-open{opacity:1;visibility:visible;}
.wechat-modal__backdrop{position:absolute;inset:0;background:rgba(12,24,34,.7);backdrop-filter:blur(4px);}
.wechat-modal__dialog{position:relative;width:min(100%,360px);max-height:calc(100dvh - 40px);overflow-x:hidden;overflow-y:auto;border-radius:20px;background:#fbfaf6;box-shadow:0 24px 70px rgba(0,0,0,.28);transform:translateY(16px) scale(.98);transition:transform .3s cubic-bezier(.22,1,.36,1);}
.wechat-modal.is-open .wechat-modal__dialog{transform:none;}
.wechat-modal__close{position:absolute;z-index:2;top:12px;right:14px;width:36px;height:36px;padding:0;border:0;background:transparent;color:#fff;font-size:30px;font-weight:200;line-height:1;cursor:pointer;}
.wechat-modal__head{padding:34px 24px 28px;text-align:center;color:#fff;background:#07c160;}
.wechat-modal__icon{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 12px;border:1px solid rgba(255,255,255,.62);border-radius:50%;}
.wechat-modal__icon img{width:34px;height:34px;filter:brightness(0) invert(1);}
.wechat-modal__head h2{margin:0 0 7px;color:#fff;font-size:21px;}
.wechat-modal__head p{margin:0;color:rgba(255,255,255,.9);font-size:12px;}
.wechat-modal__body{padding:27px 28px 25px;text-align:center;}
.wechat-modal__body small{display:block;color:#73808b;font-size:11px;letter-spacing:.25em;}
.wechat-modal__body strong{display:block;margin:10px 0 18px;color:#292e33;font-size:25px;letter-spacing:.08em;}
.wechat-modal__divider{height:1px;margin:22px 0;background:#e2e6e9;}
.wechat-modal__copy{width:100%;height:48px;border:0;border-radius:24px;color:#fff;background:#0065e2;font-family:inherit;font-size:14px;font-weight:700;cursor:pointer;transition:background .2s ease,transform .2s ease;}
.wechat-modal__copy:hover{background:#004daf;transform:translateY(-1px);}
.wechat-modal__body p{margin:16px 0 0;color:#7a858f;font-size:12px;}
@media(max-width:480px){.wechat-modal{padding:20px;}.wechat-modal__dialog{width:min(100%,330px);}.wechat-modal__head{padding-top:31px;}.wechat-modal__body{padding:25px 24px 23px;}}

/* Mobile viewport and lower-page header hardening. */
@media(max-width:760px){
  html,body{width:100%;max-width:100%;overflow-x:clip!important;}
  .lower-page .site-header,
  .lower-page .site-header.is-top,
  .lower-page .site-header.is-scrolled{
    position:fixed!important;
    top:0!important;
    right:0!important;
    bottom:auto!important;
    left:0!important;
    width:100%!important;
    height:72px!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    transform:none!important;
    clip-path:none!important;
  }
  .lower-page .header-main{
    position:relative!important;
    width:100%!important;
    max-width:none!important;
    height:72px!important;
    min-height:72px!important;
    margin:0!important;
    padding:0 16px!important;
    overflow:visible!important;
    box-sizing:border-box!important;
    transform:none!important;
  }
  .lower-page .site-header .brand{
    position:static!important;
    width:100px!important;
    min-width:0!important;
    height:72px!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    transform:none!important;
  }
  .lower-page .site-header .brand-logo{
    position:static!important;
    display:block!important;
    width:78px!important;
    height:auto!important;
    max-width:78px!important;
    max-height:48px!important;
    margin:0!important;
    padding:0!important;
    object-fit:contain!important;
    object-position:center!important;
    transform:none!important;
    clip-path:none!important;
  }
  .lower-page .global-nav{max-width:100vw!important;box-sizing:border-box!important;}
}

/* Adjustments consolidated from the September review document. */
.page-loader::before{content:none!important;display:none!important;border:0!important;animation:none!important;}
.page-loader .loader-trade-stage::before{display:block!important;}
.home-page .sh-hero-overlay{background:linear-gradient(90deg,rgba(5,24,43,.7),rgba(8,44,78,.48) 58%,rgba(5,24,43,.3))!important;}
.sh-en,.lower-hero-inner>span,.eyebrow,.sh-section-title>div>span,.sh-business-menu small{font-weight:400!important;}
.home-page .sh-product-recruit-wrap{width:min(calc(100% - 48px),1180px)!important;}
.home-page .sh-product-recruit-card{border-radius:0!important;}
.news-detail-layout .news-detail-meta span{border:0!important;border-radius:0!important;}
.news-detail-layout .news-detail-head h1{font-size:clamp(32px,2.65vw,43px)!important;line-height:1.2!important;}
.news-detail-lead{border-left:0!important;}
@media(max-width:760px){
  .lower-page .lower-hero-inner{text-align:center!important;}
  .lower-page .lower-hero-inner>span{display:block;text-align:center!important;}
  .lower-page .intro-center .eyebrow{display:block;text-align:center!important;}
  .home-page .sh-product-recruit-wrap{width:calc(100% - 32px)!important;margin-right:auto!important;margin-left:auto!important;}
  .home-page .sh-business-showcase{width:100%!important;margin-right:auto!important;margin-left:auto!important;}
  .home-page .sh-business-menu>[data-business-item]{width:100%!important;box-sizing:border-box!important;}
  .home-page .sh-business-link{position:relative!important;z-index:5!important;pointer-events:auto!important;touch-action:manipulation;}
  .news-detail-layout .news-detail-head h1{font-size:27px!important;line-height:1.22!important;}
  body.menu-open .site-header .global-nav{padding-top:96px!important;}
  body.menu-open .site-header .global-nav .nav-item::after{
    content:""!important;
    position:static!important;
    display:block!important;
    flex:0 0 auto!important;
    width:18px!important;
    height:18px!important;
    margin:0 0 0 auto!important;
    border:0!important;
    background-color:transparent!important;
    background-image:url('../img/icons/chevron-right.svg')!important;
    background-position:center!important;
    background-repeat:no-repeat!important;
    background-size:18px 18px!important;
    opacity:1!important;
    transform:none!important;
  }
  body.menu-open .site-header .global-nav>.header-tools{margin-top:30px!important;justify-content:center!important;}
}
/* Final mobile hero focal positions */
@media(max-width:760px){
  .home-page .sh-hero-slide-world{background-position:77% center!important;}
  .home-page .sh-hero-slide:nth-child(2){background-position:75% center!important;}
}
/* Preserve product collage rounded corners during hover */
.home-page .sh-product-recruit-card{border-radius:10px!important;overflow:hidden!important;isolation:isolate;transform:translateZ(0);-webkit-mask-image:-webkit-radial-gradient(white,black);}
.home-page .sh-product-recruit-photos--unique .product-photo-rail li,
.home-page .sh-product-recruit-photos--unique .product-photo-rail li:hover{border-radius:10px!important;overflow:hidden!important;isolation:isolate;transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden;-webkit-mask-image:-webkit-radial-gradient(white,black);}
.home-page .sh-product-recruit-photos--unique .product-photo-rail img,
.home-page .sh-product-recruit-card:hover .sh-product-recruit-photos--unique img{border-radius:inherit!important;backface-visibility:hidden;-webkit-backface-visibility:hidden;will-change:transform;}
.home-page .sh-product-recruit-photos--unique .product-photo-rail li:after{border-radius:inherit!important;}

/* Review-document final precedence. */
.privacy-hero .lower-hero-bg{
  background-image:url('../img/privacy-hero-security.png')!important;
  background-position:center center!important;
  background-size:cover!important;
}
@media(max-width:760px){
  .privacy-hero .lower-hero-bg{background-position:68% center!important;}
}
.contact-hero .lower-hero-bg{
  background-image:url('../img/contact-hero-inquiry-nopeople.png')!important;
  background-position:center center!important;
  background-size:cover!important;
}
@media(max-width:760px){
  .contact-hero .lower-hero-bg{background-position:70% center!important;}
}
.lower-page .lower-hero{display:flex!important;align-items:center!important;}
.lower-page .lower-hero .lower-hero-inner{
  align-self:stretch!important;
  display:flex!important;
  height:100%!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  text-align:left!important;
  transform:translateY(35px)!important;
}
.lower-page .intro-center .eyebrow{display:block!important;width:100%!important;text-align:center!important;}
.home-page .sh-product-recruit-card{border-radius:0!important;}
.privacy-content{padding-top:100px;}
.privacy-content .section-title h1{margin:8px 0 34px;font-size:40px;}
.privacy-content h2{margin:38px 0 10px;font-size:22px;}
.privacy-content p{color:#5d6d78;line-height:1.9;}
.privacy-content a{color:#0065e2;text-decoration:underline;}
.privacy-check a{color:#0065e2;text-decoration:underline;}
.lower-page .header-tools,
.lower-page .lang-switch{border:0!important;border-left:0!important;}
.lower-page .header-tools::before,
.lower-page .header-tools::after,
.lower-page .lang-switch::before,
.lower-page .lang-switch::after{display:none!important;content:none!important;}
@media(max-width:760px){
  .lower-page .lower-hero{padding-right:14px!important;padding-left:14px!important;box-sizing:border-box!important;}
  .lower-page .lower-hero .lower-hero-inner{
    align-self:center!important;
    width:100%!important;
    max-width:none!important;
    margin-right:auto!important;
    margin-left:auto!important;
    padding-right:0!important;
    padding-left:0!important;
    box-sizing:border-box!important;
    transform:translateY(28px)!important;
  }
  .lower-page .lower-hero .lower-hero-inner,
  .lower-page .lower-hero .lower-hero-inner>span,
  .lower-page .lower-hero .lower-hero-inner>h1,
  .lower-page .lower-hero .lower-hero-inner>p{
    width:100%!important;
    text-align:left!important;
  }
  .lower-page .lower-hero .lower-hero-inner>span{line-height:1.3!important;margin-bottom:2px!important;}
  .lower-page .lower-hero .lower-hero-inner>h1{margin:3px 0 7px!important;line-height:1.25!important;}
  .lower-page .lower-hero .lower-hero-inner>p{margin:0!important;line-height:1.55!important;}
  .site-header .brand,.home-page .site-header .brand,.lower-page .site-header .brand{align-items:center!important;justify-content:flex-start!important;overflow:visible!important;transform:none!important;}
  .site-header .brand-logo,.home-page .site-header .brand-logo,.lower-page .site-header .brand-logo{position:static!important;width:78px!important;height:auto!important;max-width:78px!important;max-height:48px!important;margin:0!important;transform:none!important;}
  .privacy-content{padding-top:72px;}
  .privacy-content .section-title h1{font-size:29px;}
  .lower-page .product-detail .pd-copy,
  .lower-page .product-detail.reverse .pd-copy{
    padding:26px 14px 28px!important;
  }
  .lower-page .product-detail .pd-copy h2{margin-top:5px!important;margin-bottom:10px!important;}
  .lower-page .product-detail .pd-copy p{margin-top:0!important;margin-bottom:12px!important;}
  .lower-page .product-detail .pd-copy ul{margin-top:8px!important;margin-bottom:0!important;padding-left:20px!important;}
}

/* Unified 20px mobile page gutters. */
@media(max-width:760px){
  .container,
  .home-page .sh-about>.container,
  .home-page .sh-product-recruit-wrap,
  .news-detail,
  .news-detail-layout,
  .sh-flow-layout,
  .sh-flow-section .sh-flow-layout{
    width:calc(100% - 40px)!important;
    max-width:none!important;
    margin-right:auto!important;
    margin-left:auto!important;
  }
  .lower-page .lower-hero{padding-right:20px!important;padding-left:20px!important;}
  .lower-page .product-detail .pd-copy,
  .lower-page .product-detail.reverse .pd-copy{padding-right:20px!important;padding-left:20px!important;}
  .home-page .sh-about-grid{padding-right:0!important;padding-left:0!important;}
  body.menu-open .site-header .global-nav .header-tools .lang-switch button.active,
  body.menu-open.home-page .site-header .global-nav .header-tools .lang-switch button.active,
  body.menu-open.lower-page .site-header .global-nav .header-tools .lang-switch button.active{
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
  }
  body.menu-open .site-header .global-nav .header-tools .lang-switch button:not(.active),
  body.menu-open.home-page .site-header .global-nav .header-tools .lang-switch button:not(.active),
  body.menu-open.lower-page .site-header .global-nav .header-tools .lang-switch button:not(.active){
    color:#18334d!important;
    -webkit-text-fill-color:#18334d!important;
  }
}

/* Homepage hero refinements: smaller title, calmer route motion, protected header. */
body.home-page .sh-hero h1{font-size:56px!important;line-height:1.1!important;}
.home-page .network-line{animation-duration:7.2s!important;}
.home-page .network-node{animation-duration:4.8s!important;}
.home-page .node-osaka{animation-duration:3.6s!important;}
html body.home-page>.site-header:not(.is-scrolled){
  background:rgba(3,31,67,.38)!important;
  border-bottom:1px solid rgba(255,255,255,.1)!important;
  box-shadow:0 8px 24px rgba(0,18,44,.1)!important;
  backdrop-filter:blur(12px) saturate(125%)!important;
  -webkit-backdrop-filter:blur(12px) saturate(125%)!important;
}
@media(max-width:1100px){body.home-page .sh-hero h1{font-size:48px!important;}}
@media(max-width:760px){body.home-page .sh-hero h1{font-size:34px!important;}}

/* A single banner is active, so the carousel counter is unnecessary. */
.home-page .sh-hero-index{display:none!important;}

/* Business page service photography. */
.lower-page .s-procure{background-image:url('../img/business-procurement-new.png');}
.lower-page .s-export{background-image:url('../img/business-export-new.png');}
.lower-page .s-logistics{background-image:url('../img/business-logistics-new.png');}

/* Product category photography. */
.lower-page .pd-food{background-image:url('../img/product-food-new.png');}
.lower-page .pd-beverage{background-image:url('../img/product-beverage-new.png');}
.lower-page .pd-daily{background-image:url('../img/product-daily-new.png');}
.lower-page .pd-household{background-image:url('../img/product-household-new.png');}

/* Live Google Map in the company access section. */
.company-map{height:290px;overflow:hidden;background:#eaf3ff;}
.company-map iframe{display:block;width:100%;height:100%;border:0;}

/* Footer social contacts: show WeChat, WhatsApp and LINE only. */
.footer-inquiry-actions .is-primary{display:none!important;}
.footer-inquiry-actions{grid-template-columns:repeat(3,minmax(210px,1fr))!important;}
.footer-inquiry-actions .is-wechat{background:#07c160!important;color:#fff!important;}
.footer-inquiry-actions .is-whatsapp{background:#25d366!important;color:#fff!important;}
.footer-inquiry-actions .is-line{background:#06c755!important;color:#fff!important;}
.contact-social-modal.is-whatsapp-modal .wechat-modal__head{background:#25d366;}
@media(max-width:900px){.footer-inquiry-actions{grid-template-columns:1fr!important;}}

/* Company page hero: office and reception image on desktop and mobile. */
.lower-page .company-hero .lower-hero-bg{
  background-image:url('../img/company-hero-office-cropped.png')!important;
  background-position:center center!important;
  background-size:cover!important;
}
@media(max-width:760px){
  .lower-page .company-hero .lower-hero-bg{
    background-position:65% center!important;
    background-size:auto 86%!important;
    background-repeat:no-repeat!important;
    background-color:#d9e1e6!important;
  }
  .lower-page .company-hero .lower-shade{
    background:linear-gradient(90deg,rgba(3,34,58,.88) 0%,rgba(3,34,58,.64) 48%,rgba(3,34,58,.12) 100%)!important;
  }
  .lower-page .company-hero .lower-hero-inner,
  .lower-page .company-hero .lower-hero-inner>span,
  .lower-page .company-hero .lower-hero-inner>h1,
  .lower-page .company-hero .lower-hero-inner>p{
    color:#fff!important;
    opacity:1!important;
    text-shadow:0 2px 12px rgba(0,20,40,.5)!important;
  }
}

/* Lighter homepage hero/header so the background artwork remains visible. */
html body.home-page>.site-header:not(.is-scrolled){
  background:rgba(3,31,67,.18)!important;
  border-bottom-color:rgba(255,255,255,.16)!important;
  box-shadow:0 5px 18px rgba(0,18,44,.08)!important;
  backdrop-filter:blur(6px) saturate(115%)!important;
  -webkit-backdrop-filter:blur(6px) saturate(115%)!important;
}
.home-page .sh-hero-slide-world{
  filter:saturate(1.06) contrast(1.02) brightness(.98)!important;
}
.home-page .sh-hero.is-network-active .sh-hero-overlay{
  background:
    linear-gradient(90deg,rgba(2,14,31,.58) 0%,rgba(4,43,91,.24) 47%,rgba(2,14,31,.08) 100%),
    radial-gradient(circle at 65% 39%,rgba(237,27,52,.13),transparent 16%),
    radial-gradient(circle at 63% 40%,rgba(0,132,204,.16),transparent 34%)!important;
}
.home-page .site-header:not(.is-scrolled) .brand-logo,
.home-page .site-header:not(.is-scrolled) .global-nav,
.home-page .site-header:not(.is-scrolled) .header-tools{
  filter:drop-shadow(0 2px 7px rgba(0,20,48,.42));
}

/* Keep the product statement on its intended two lines. */
.home-page .sh-product-recruit-card>h3{
  max-width:560px!important;
  white-space:nowrap;
}

/* Homepage header: permanent white navigation without language dividers. */
html body.home-page>.site-header,
html body.home-page>.site-header:not(.is-scrolled),
html body.home-page>.site-header.is-scrolled{
  background:#fff!important;
  border-bottom:1px solid #e5ebf0!important;
  box-shadow:0 4px 16px rgba(0,40,90,.06)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.home-page .site-header .brand-logo{
  content:url('/img/logo-color.png')!important;
  filter:none!important;
}
.home-page .site-header .global-nav,
.home-page .site-header .header-tools{filter:none!important;}
.home-page .site-header .global-nav .nav-item,
.home-page .site-header:not(.is-scrolled) .global-nav .nav-item{
  color:#203346!important;
  text-shadow:none!important;
}
.home-page .site-header .global-nav .nav-item.active{color:#0065e2!important;}
.home-page .site-header .lang-switch,
.home-page .site-header .lang-switch button,
.home-page .site-header .lang-switch span{
  color:#203346!important;
  border:0!important;
  border-left:0!important;
  border-right:0!important;
  box-shadow:none!important;
}
.home-page .site-header .lang-switch button.active{color:#0065e2!important;}
.home-page .site-header .header-tools::before,
.home-page .site-header .header-tools::after,
.home-page .site-header .lang-switch::before,
.home-page .site-header .lang-switch::after{
  content:none!important;
  display:none!important;
  border:0!important;
}

/* Keep both people visible when the wide company photo is cropped on phones. */
@media(max-width:760px){
  .lower-page .company-photo-wide{
    height:clamp(170px,48vw,210px)!important;
    min-height:0!important;
    background-position:40% center!important;
    background-size:auto 100%!important;
    background-repeat:no-repeat!important;
    background-color:#eef4fa;
  }
}
/* === 2026-09-16 homepage header matched to approved reference === */
@media (min-width:921px){
  :root{--header-height-home:86px;}
  body.home-page .site-header,
  body.home-page .site-header.is-scrolled{
    position:absolute !important;
    top:0 !important;
    left:0 !important;
    right:0 !important;
    height:86px !important;
    background:#fff !important;
    border-top:1px solid #dde4ea !important;
    border-bottom:1px solid #e1e7ec !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    overflow:visible !important;
  }
  body.home-page .header-main{
    position:relative !important;
    width:100% !important;
    max-width:none !important;
    height:86px !important;
    margin:0 !important;
    padding:0 0 0 240px !important;
    display:grid !important;
    grid-template-columns:112px minmax(0,1fr) !important;
    gap:0 !important;
    background:#fff !important;
  }
  body.home-page .site-header .brand{
    position:absolute !important;
    z-index:3 !important;
    top:-1px !important;
    left:0 !important;
    width:240px !important;
    min-width:240px !important;
    height:149px !important;
    padding:17px 28px 14px !important;
    display:flex !important;
    align-items:flex-start !important;
    justify-content:center !important;
    background:#fff !important;
    border-radius:0 0 22px 0 !important;
    box-shadow:0 8px 18px rgba(22,63,101,.05) !important;
  }
  body.home-page .site-header .brand-logo{
    content:url('/img/logo-color.png') !important;
    width:176px !important;
    max-width:176px !important;
    height:auto !important;
    transform:none !important;
  }
  body.home-page .header-tools{
    grid-column:1 !important;
    grid-row:1 !important;
    width:112px !important;
    min-width:112px !important;
    height:86px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    padding-left:23px !important;
    background:#fff !important;
  }
  body.home-page .header-tools .lang-switch{
    min-width:0 !important;
    justify-content:flex-start !important;
    gap:10px !important;
    color:#a1abb5 !important;
    font-size:14px !important;
  }
  body.home-page .header-tools .lang-switch a{
    display:inline-flex !important;
    padding:0 !important;
    border:0 !important;
    color:#9aa6b2 !important;
    font-size:14px !important;
    font-weight:700 !important;
  }
  body.home-page .header-tools .lang-switch a.active{color:#111820 !important;}
  body.home-page .global-nav{
    grid-column:2 !important;
    grid-row:1 !important;
    height:86px !important;
    display:flex !important;
    align-items:stretch !important;
    justify-content:flex-end !important;
    gap:0 !important;
    padding:0 !important;
    overflow:visible !important;
    background:#fff !important;
  }
  body.home-page .global-nav .nav-item{
    height:86px !important;
    padding:0 clamp(18px,2vw,28px) !important;
    color:#111820 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }
  body.home-page .global-nav .nav-item span{
    color:inherit !important;
    font-size:15px !important;
    font-weight:700 !important;
    letter-spacing:0 !important;
    transform:none !important;
  }
  body.home-page .global-nav .nav-item:before,
  body.home-page .global-nav .nav-item:after{display:none !important;}
  body.home-page .global-nav .nav-item:hover,
  body.home-page .global-nav .nav-item:focus-visible,
  body.home-page .global-nav .nav-item.active{color:#0065e2 !important;}
  body.home-page .global-nav .nav-item[href*="privacy"]{display:none !important;}
  body.home-page .global-nav .nav-item[href*="contact"]{
    width:176px !important;
    min-width:176px !important;
    padding:0 20px !important;
    margin-left:14px !important;
    color:#fff !important;
    background:#0764ad !important;
  }
  body.home-page .global-nav .nav-item[href*="contact"]:hover,
  body.home-page .global-nav .nav-item[href*="contact"]:focus-visible{background:#005596 !important;}
}

@media (min-width:921px) and (max-width:1280px){
  body.home-page .header-main{padding-left:196px !important;grid-template-columns:84px minmax(0,1fr) !important;}
  body.home-page .site-header .brand{width:196px !important;min-width:196px !important;padding-left:20px !important;padding-right:20px !important;}
  body.home-page .site-header .brand-logo{width:154px !important;max-width:154px !important;}
  body.home-page .header-tools{width:84px !important;min-width:84px !important;padding-left:12px !important;}
  body.home-page .global-nav .nav-item{padding-left:13px !important;padding-right:13px !important;}
  body.home-page .global-nav .nav-item span{font-size:14px !important;}
  body.home-page .global-nav .nav-item[href*="contact"]{width:140px !important;min-width:140px !important;margin-left:4px !important;}
}
/* Keep the homepage logo card attached to the viewport's left edge. */
@media (min-width:921px){
  body.home-page .header-main{position:static !important;}
  body.home-page .site-header .brand{left:0 !important;}
}
/* Homepage header: smoothly collapse the oversized logo card after scrolling. */
@media (min-width:921px){
  body.home-page .site-header,
  body.home-page .header-main,
  body.home-page .site-header .brand,
  body.home-page .site-header .brand-logo,
  body.home-page .header-tools,
  body.home-page .global-nav,
  body.home-page .global-nav .nav-item,
  body.home-page .global-nav .nav-item[href*="contact"]{
    transition:height .42s cubic-bezier(.22,1,.36,1),
               width .42s cubic-bezier(.22,1,.36,1),
               min-width .42s cubic-bezier(.22,1,.36,1),
               max-width .42s cubic-bezier(.22,1,.36,1),
               padding .42s cubic-bezier(.22,1,.36,1),
               margin .42s cubic-bezier(.22,1,.36,1),
               border-radius .42s cubic-bezier(.22,1,.36,1),
               background-color .32s ease,
               box-shadow .32s ease,
               transform .42s cubic-bezier(.22,1,.36,1) !important;
  }
  body.home-page .header-main{transition:height .42s cubic-bezier(.22,1,.36,1),padding .42s cubic-bezier(.22,1,.36,1) !important;}
  body.home-page .site-header.is-scrolled{
    position:fixed !important;
    height:70px !important;
    background:rgba(255,255,255,.97) !important;
    box-shadow:0 8px 26px rgba(10,47,84,.12) !important;
    backdrop-filter:saturate(140%) blur(12px) !important;
  }
  body.home-page .site-header.is-scrolled .header-main{
    height:70px !important;
    padding-left:164px !important;
    grid-template-columns:96px minmax(0,1fr) !important;
  }
  body.home-page .site-header.is-scrolled .brand{
    width:164px !important;
    min-width:164px !important;
    height:70px !important;
    padding:7px 22px !important;
    align-items:center !important;
    border-radius:0 0 12px 0 !important;
    box-shadow:none !important;
  }
  body.home-page .site-header.is-scrolled .brand-logo{
    width:116px !important;
    max-width:116px !important;
    transform:none !important;
  }
  body.home-page .site-header.is-scrolled .header-tools{
    width:96px !important;
    min-width:96px !important;
    height:70px !important;
    padding-left:18px !important;
  }
  body.home-page .site-header.is-scrolled .global-nav,
  body.home-page .site-header.is-scrolled .global-nav .nav-item{
    height:70px !important;
  }
  body.home-page .site-header.is-scrolled .global-nav .nav-item[href*="contact"]{
    height:70px !important;
  }
}

@media (prefers-reduced-motion:reduce) and (min-width:921px){
  body.home-page .site-header,
  body.home-page .header-main,
  body.home-page .site-header .brand,
  body.home-page .site-header .brand-logo,
  body.home-page .header-tools,
  body.home-page .global-nav,
  body.home-page .global-nav .nav-item{transition:none !important;}
}
/* Homepage header dimensions driven continuously by first-screen scroll progress. */
@media (min-width:921px){
  body.home-page .site-header,
  body.home-page .site-header.is-scrolled{
    position:fixed !important;
    height:var(--hp-header-height,86px) !important;
  }
  body.home-page .header-main,
  body.home-page .site-header.is-scrolled .header-main{
    height:var(--hp-header-height,86px) !important;
    padding-left:var(--hp-brand-width,240px) !important;
    grid-template-columns:var(--hp-tools-width,112px) minmax(0,1fr) !important;
  }
  body.home-page .site-header .brand,
  body.home-page .site-header.is-scrolled .brand{
    width:var(--hp-brand-width,240px) !important;
    min-width:var(--hp-brand-width,240px) !important;
    height:var(--hp-brand-height,149px) !important;
    padding:var(--hp-brand-pad-y,17px) var(--hp-brand-pad-x,28px) !important;
    border-radius:0 0 var(--hp-brand-radius,22px) 0 !important;
    box-shadow:0 var(--hp-brand-shadow-y,8px) 18px rgba(22,63,101,var(--hp-brand-shadow-alpha,.05)) !important;
  }
  body.home-page .site-header .brand-logo,
  body.home-page .site-header.is-scrolled .brand-logo{
    width:var(--hp-logo-width,176px) !important;
    max-width:var(--hp-logo-width,176px) !important;
  }
  body.home-page .header-tools,
  body.home-page .site-header.is-scrolled .header-tools{
    width:var(--hp-tools-width,112px) !important;
    min-width:var(--hp-tools-width,112px) !important;
    height:var(--hp-header-height,86px) !important;
    padding-left:var(--hp-tools-pad,23px) !important;
  }
  body.home-page .global-nav,
  body.home-page .global-nav .nav-item,
  body.home-page .site-header.is-scrolled .global-nav,
  body.home-page .site-header.is-scrolled .global-nav .nav-item,
  body.home-page .global-nav .nav-item[href*="contact"],
  body.home-page .site-header.is-scrolled .global-nav .nav-item[href*="contact"]{
    height:var(--hp-header-height,86px) !important;
  }
  body.home-page .site-header,
  body.home-page .header-main,
  body.home-page .site-header .brand,
  body.home-page .site-header .brand-logo,
  body.home-page .header-tools,
  body.home-page .global-nav,
  body.home-page .global-nav .nav-item,
  body.home-page .global-nav .nav-item[href*="contact"]{
    transition:background-color .28s ease,box-shadow .28s ease,color .2s ease !important;
  }
}
/* Keep the homepage contact navigation label white in every state. */
@media (min-width:921px){
  body.home-page .global-nav .nav-item[href*="contact"],
  body.home-page .global-nav .nav-item[href*="contact"] span,
  body.home-page .global-nav .nav-item[href*="contact"]:hover,
  body.home-page .global-nav .nav-item[href*="contact"]:hover span,
  body.home-page .global-nav .nav-item[href*="contact"]:focus-visible,
  body.home-page .global-nav .nav-item[href*="contact"]:focus-visible span{
    color:#fff !important;
  }
}
/* Keep the homepage route motion clearly visible after the loader finishes. */
@media (prefers-reduced-motion:no-preference){
  body.home-page .sh-hero.is-network-active .network-line{
    animation-duration:4.2s !important;
    animation-play-state:running !important;
  }
  body.home-page .sh-hero.is-network-active .network-node{
    animation-duration:2.4s !important;
    animation-play-state:running !important;
  }
  body.home-page .sh-hero.is-network-active .node-osaka{
    animation-duration:1.8s !important;
  }
  body.home-page .sh-hero.is-network-active .network-carrier{
    animation-duration:7.2s !important;
    animation-play-state:running !important;
  }
}
/* Explicitly requested homepage motion: override browser SVG/reduced-motion stalls. */
body.home-page .sh-hero.is-network-active .network-line{
  animation:networkLineDrawGentle 8.5s cubic-bezier(.35,0,.25,1) infinite !important;
  animation-play-state:running !important;
}
@keyframes networkLineDrawGentle{
  0%{stroke-dashoffset:1;opacity:.12;}
  12%{opacity:.72;}
  68%{stroke-dashoffset:0;opacity:.86;}
  92%{stroke-dashoffset:0;opacity:.74;}
  100%{stroke-dashoffset:0;opacity:.18;}
}
body.home-page .sh-hero.is-network-active .network-node{
  animation:networkNodePulse 2.4s ease-in-out infinite !important;
  animation-play-state:running !important;
}
body.home-page .sh-hero.is-network-active .node-osaka{
  animation:osakaSourcePulse 1.8s ease-in-out infinite !important;
}
body.home-page .sh-hero.is-network-active .network-carrier{
  display:block !important;
  opacity:1;
  animation:none !important;
}
/* Product collage motion is explicitly enabled for the homepage. */
body.home-page .sh-product-recruit-photos--unique > .product-photo-rail--left > ul{
  animation:uniqueProductRailUp 22s linear infinite !important;
  animation-play-state:running !important;
}
body.home-page .sh-product-recruit-photos--unique > .product-photo-rail--right > ul{
  animation:uniqueProductRailDown 26s linear infinite !important;
  animation-play-state:running !important;
}
/* Lower-page language switch: white over the hero, blue-grey on the scrolled header. */
@media (min-width:761px){
  body.lower-page .site-header:not(.is-scrolled) .lang-switch,
  body.lower-page .site-header:not(.is-scrolled) .lang-switch .lang-btn,
  body.lower-page .site-header:not(.is-scrolled) .lang-switch .lang-btn.active,
  body.lower-page .site-header:not(.is-scrolled) .lang-switch span{
    color:#fff!important;
  }
  body.lower-page .site-header.is-scrolled .lang-switch,
  body.lower-page .site-header.is-scrolled .lang-switch .lang-btn,
  body.lower-page .site-header.is-scrolled .lang-switch span{
    color:#7b8994!important;
  }
  body.lower-page .site-header.is-scrolled .lang-switch .lang-btn.active{
    color:#0065e2!important;
  }
}
body.lower-page .site-header .header-tools,
body.lower-page .site-header .lang-switch,
body.lower-page .site-header .lang-switch .lang-btn{
  border-left:0!important;
  border-right:0!important;
  box-shadow:none!important;
}
body.lower-page .site-header .header-tools::before,
body.lower-page .site-header .header-tools::after,
body.lower-page .site-header .lang-switch::before,
body.lower-page .site-header .lang-switch::after{
  content:none!important;
  display:none!important;
  border:0!important;
}
/* Restore a consistent desktop hover animation for navigation on every page. */
@media (min-width:921px){
  body .site-header .global-nav .nav-item{
    position:relative!important;
    overflow:visible!important;
  }
  body .site-header .global-nav .nav-item span{
    position:relative!important;
    z-index:1!important;
    transition:transform .34s cubic-bezier(.22,1,.36,1),color .28s ease!important;
  }
  body .site-header .global-nav .nav-item:hover span,
  body .site-header .global-nav .nav-item:focus-visible span{
    transform:translateY(-3px)!important;
  }
  body .site-header .global-nav .nav-item::after{
    content:""!important;
    display:block!important;
    position:absolute!important;
    right:18px!important;
    bottom:9px!important;
    left:18px!important;
    width:auto!important;
    height:2px!important;
    border:0!important;
    background:currentColor!important;
    opacity:.9!important;
    transform:scaleX(0)!important;
    transform-origin:center!important;
    transition:transform .38s cubic-bezier(.22,1,.36,1),opacity .28s ease!important;
    pointer-events:none!important;
  }
  body .site-header .global-nav .nav-item:hover::after,
  body .site-header .global-nav .nav-item:focus-visible::after,
  body .site-header .global-nav .nav-item.active::after{
    transform:scaleX(1)!important;
  }
  body.home-page .site-header .global-nav .nav-item[href*="contact"]::after{
    background:#fff!important;
  }
}
@media (prefers-reduced-motion:reduce){
  body .site-header .global-nav .nav-item span,
  body .site-header .global-nav .nav-item::after{transition:none!important;}
}
/* Desktop navigation uses two identical lines for the vertical roll interaction. */
@media (min-width:921px){
  body .site-header .global-nav .nav-item span{
    display:block!important;
    height:1.2em!important;
    overflow:hidden!important;
    transform:none!important;
    line-height:1.2!important;
  }
  body .site-header .global-nav .nav-item span i{
    display:block!important;
    height:1.2em!important;
    margin:0!important;
    padding:0!important;
    color:inherit!important;
    font:inherit!important;
    font-style:normal!important;
    line-height:1.2!important;
    white-space:nowrap!important;
    transform:translateY(0)!important;
    transition:transform .48s cubic-bezier(.22,1,.36,1)!important;
  }
  body .site-header .global-nav .nav-item:hover span,
  body .site-header .global-nav .nav-item:focus-visible span{
    transform:none!important;
  }
  body .site-header .global-nav .nav-item:hover span i,
  body .site-header .global-nav .nav-item:focus-visible span i{
    transform:translateY(-100%)!important;
  }
}
@media (prefers-reduced-motion:reduce){
  body .site-header .global-nav .nav-item span i{transition:none!important;}
}

/* Language navigation: clearer active state and a clean, borderless top edge. */
body.home-page .site-header,
body.home-page .site-header:not(.is-scrolled),
body.home-page .site-header.is-scrolled,
body.home-page .site-header .header-tools,
body.home-page .site-header .lang-switch{
  border-top:0!important;
}
@media (min-width:921px){
  body.home-page .site-header .header-tools .lang-switch{
    gap:6px!important;
    color:#b7c2cc!important;
  }
  body.home-page .site-header .header-tools .lang-switch a{
    min-width:30px!important;
    height:30px!important;
    padding:0 7px!important;
    align-items:center!important;
    justify-content:center!important;
    border:0!important;
    border-radius:6px!important;
    color:#526577!important;
    background:transparent!important;
    font-weight:700!important;
    line-height:30px!important;
    text-decoration:none!important;
    transition:color .2s ease,background-color .2s ease!important;
  }
  body.home-page .site-header .header-tools .lang-switch a:hover,
  body.home-page .site-header .header-tools .lang-switch a:focus-visible{
    color:#0065e2!important;
    background:#f0f6ff!important;
  }
  body.home-page .site-header .header-tools .lang-switch a.active{
    color:#fff!important;
    background:#0065e2!important;
  }
  body.home-page .site-header .header-tools .lang-switch span{
    color:#b7c2cc!important;
  }
}

/* Mobile footer contacts: fixed icon and label columns. */
.footer-inquiry-hours > span + span::before{
  content:"　／　";
}
@media(max-width:760px){
  .footer-inquiry-actions a{
    display:grid!important;
    grid-template-columns:32px 82px!important;
    column-gap:14px!important;
    align-items:center!important;
    justify-content:center!important;
    padding-right:20px!important;
    padding-left:56px!important;
  }
  .footer-inquiry-actions a > span{
    display:grid!important;
    width:32px!important;
    height:32px!important;
    place-items:center!important;
    justify-self:center!important;
  }
  .footer-inquiry-actions a > span img,
  .footer-inquiry-actions a.is-line > span img{
    width:26px!important;
    height:26px!important;
    object-fit:contain!important;
  }
  .footer-inquiry-actions a > b{
    width:82px!important;
    justify-self:start!important;
    text-align:left!important;
    white-space:nowrap!important;
  }
  .footer-inquiry-hours{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:4px!important;
    justify-items:center!important;
    text-align:center!important;
    line-height:1.7!important;
  }
  .footer-inquiry-hours > span{
    display:block!important;
  }
  .footer-inquiry-hours > span + span::before{
    content:none!important;
  }
}

/* Mobile navigation: crisp active marker and compact language selector. */
@media(max-width:760px){
  body.menu-open.home-page .site-header .global-nav .nav-item.active::before{
    filter:none!important;
  }

  body.menu-open .site-header .header-tools,
  body.menu-open.home-page .site-header .header-tools,
  body.menu-open.lower-page .site-header .header-tools{
    position:static!important;
    inset:auto!important;
    width:184px!important;
    height:46px!important;
    margin:28px auto 0!important;
    padding:0!important;
    align-items:center!important;
    justify-content:center!important;
    transform:none!important;
  }

  body.menu-open .site-header .header-tools .lang-switch,
  body.menu-open.home-page .site-header .header-tools .lang-switch,
  body.menu-open.lower-page .site-header .header-tools .lang-switch{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:0!important;
    width:184px!important;
    min-width:184px!important;
    height:46px!important;
    margin:0!important;
    padding:3px!important;
    border:1px solid #d4e0ea!important;
    border-radius:8px!important;
    background:#edf3f8!important;
    box-shadow:0 8px 22px rgba(23,63,102,.08)!important;
    overflow:hidden!important;
  }

  body.menu-open .site-header .header-tools .lang-switch > span,
  body.menu-open.home-page .site-header .header-tools .lang-switch > span,
  body.menu-open.lower-page .site-header .header-tools .lang-switch > span{
    display:none!important;
  }

  body.menu-open .site-header .header-tools .lang-switch > .lang-btn,
  body.menu-open.home-page .site-header .header-tools .lang-switch > .lang-btn,
  body.menu-open.lower-page .site-header .header-tools .lang-switch > .lang-btn{
    display:flex!important;
    width:auto!important;
    min-width:0!important;
    height:38px!important;
    margin:0!important;
    padding:0!important;
    align-items:center!important;
    justify-content:center!important;
    border:0!important;
    border-radius:5px!important;
    color:#29445d!important;
    -webkit-text-fill-color:#29445d!important;
    background:transparent!important;
    font-size:13px!important;
    font-weight:700!important;
    line-height:38px!important;
    letter-spacing:.08em!important;
    text-decoration:none!important;
  }

  body.menu-open .site-header .header-tools .lang-switch > .lang-btn.active,
  body.menu-open.home-page .site-header .header-tools .lang-switch > .lang-btn.active,
  body.menu-open.lower-page .site-header .header-tools .lang-switch > .lang-btn.active{
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    background:#0065e2!important;
    box-shadow:0 3px 10px rgba(0,101,226,.18)!important;
  }

  body.menu-open .site-header .header-tools .lang-switch > .lang-btn:focus-visible{
    outline:2px solid #bc1828!important;
    outline-offset:1px!important;
  }
}

/* Mobile footer brand block: smaller mark and centered copy. */
@media(max-width:640px){
  .footer-profile{
    text-align:center!important;
  }
  .footer-profile img{
    width:118px!important;
    max-width:118px!important;
    margin:0 auto 22px!important;
  }
  .footer-profile p{
    width:100%!important;
    max-width:335px!important;
    margin-right:auto!important;
    margin-left:auto!important;
    text-align:center!important;
    font-size:11.5px!important;
    line-height:1.9!important;
  }
  .footer-profile .footer-profile-break{
    display:block!important;
  }
}
.footer-profile .footer-profile-break{
  display:none;
}

/* Mobile lower pages use the same clean header treatment as the homepage. */
@media(max-width:760px){
  html body.lower-page>.site-header,
  html body.lower-page>.site-header.is-top,
  html body.lower-page>.site-header.is-scrolled{
    background:#fff!important;
    border-bottom:1px solid #e5ebf0!important;
    box-shadow:0 4px 16px rgba(0,40,90,.06)!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  .lower-page .site-header .brand-logo{
    content:url('/img/logo-color.png')!important;
    width:78px!important;
    max-width:78px!important;
    max-height:48px!important;
    filter:none!important;
  }
  .lower-page .site-header .mobile-menu-toggle{color:#173f66!important;}
}

/* Business page: tighter, phone-friendly vertical rhythm. */
@media(max-width:760px){
  .business-page .intro-center.section{padding:48px 0 42px!important;}
  .business-page .intro-center .eyebrow{margin-bottom:9px!important;}
  .business-page .intro-center h2{font-size:clamp(21px,5.7vw,22px)!important;line-height:1.5!important;}
  .business-page .intro-center p{margin-top:20px!important;font-size:16px!important;line-height:1.95!important;}
  .business-page .service-block,
  .business-page #logistics.service-block{padding:34px 0!important;}
  .business-page .service-grid,
  .business-page .service-grid.reverse{min-height:0!important;}
  .business-page .service-photo{min-height:220px!important;}
  .business-page .service-copy,
  .business-page .service-grid.reverse .service-copy,
  .business-page #logistics .service-copy{padding:23px 2px 0!important;}
  .business-page .service-copy small{margin-top:2px!important;}
  .business-page .service-copy h2{margin:5px 0 10px!important;font-size:26px!important;line-height:1.5!important;}
  .business-page .service-copy p{margin:0 0 12px!important;font-size:15px!important;line-height:1.9!important;}
  .business-page .service-copy ul{margin:7px 0 0!important;padding-left:20px!important;}
  .business-page .service-copy li{font-size:15px!important;line-height:1.9!important;}
  .business-page #logistics + .flow-section.section{padding:46px 0 52px!important;}
  .business-page .flow-section .section-title .eyebrow{margin-bottom:8px!important;}
  .business-page .flow-section .section-title h2{font-size:26px!important;line-height:1.5!important;}
  .business-page .flow-grid{margin-top:24px!important;}
  .business-page .flow-grid>div{padding:15px 14px!important;}
  .business-page .flow-grid b{margin:4px 0!important;font-size:15px!important;line-height:1.8!important;}
  .business-page .flow-grid p{font-size:14px!important;line-height:1.85!important;}
}

/* Prevent iOS from zooming the page when a contact field receives focus. */
@media(max-width:760px){
  .contact-form input:not([type="checkbox"]):not([type="radio"]),
  .contact-form select,
  .contact-form textarea{
    font-size:16px!important;
    line-height:1.45!important;
  }
}

/* Keep the Japanese product-lineup heading on one line on phones. */
@media(max-width:760px){
  html[lang="ja"] .products-hero + .breadcrumb + .section .intro-center h2{
    font-size:clamp(18px,5.1vw,20px)!important;
    line-height:1.4!important;
    letter-spacing:-.04em!important;
    white-space:nowrap!important;
  }
}

/* Mobile menu contact hierarchy: prominent phone, quieter language control. */
@media(max-width:760px){
  body.menu-open .site-header .global-nav>.mobile-menu-phone{
    grid-template-columns:1fr!important;
    justify-items:center!important;
    row-gap:8px!important;
    min-height:0!important;
    margin-top:20px!important;
    padding:0!important;
  }
  body.menu-open .site-header .global-nav>.mobile-menu-phone::before{
    content:"お電話でのお問い合わせ";
    display:block;
    color:#71869a;
    font-size:11px;
    font-weight:600;
    line-height:1;
    letter-spacing:.12em;
  }
  html[lang="en"] body.menu-open .site-header .global-nav>.mobile-menu-phone::before{
    content:"PHONE INQUIRIES";
  }
  body.menu-open .site-header .global-nav>.mobile-menu-phone strong{
    padding:0!important;
    border:0!important;
    color:#102f4b!important;
    font-size:30px!important;
    font-weight:700!important;
    line-height:1.08!important;
    letter-spacing:.045em!important;
  }
  body.menu-open .site-header .global-nav>.mobile-menu-phone + .header-tools,
  body.menu-open.home-page .site-header .global-nav>.mobile-menu-phone + .header-tools,
  body.menu-open.lower-page .site-header .global-nav>.mobile-menu-phone + .header-tools{
    width:172px!important;
    height:42px!important;
    margin:17px auto 0!important;
  }
  body.menu-open .site-header .global-nav>.mobile-menu-phone + .header-tools .lang-switch,
  body.menu-open.home-page .site-header .global-nav>.mobile-menu-phone + .header-tools .lang-switch,
  body.menu-open.lower-page .site-header .global-nav>.mobile-menu-phone + .header-tools .lang-switch{
    width:172px!important;
    min-width:172px!important;
    height:42px!important;
    padding:3px!important;
  }
  body.menu-open .site-header .global-nav>.mobile-menu-phone + .header-tools .lang-switch>.lang-btn{
    height:34px!important;
    line-height:34px!important;
    font-size:12px!important;
  }
}

/* Larger mobile menu control, balanced with the header logo. */
@media(max-width:760px){
  .site-header .mobile-menu-toggle,
  .home-page .site-header .mobile-menu-toggle,
  .lower-page .site-header .mobile-menu-toggle{
    width:50px!important;
    height:50px!important;
    right:12px!important;
  }
  .site-header .mobile-menu-toggle span,
  .site-header .mobile-menu-toggle::before,
  .site-header .mobile-menu-toggle::after{
    width:29px!important;
    height:3px!important;
    border-radius:3px!important;
  }
  .site-header .mobile-menu-toggle::before{transform:translateY(-9px)!important;}
  .site-header .mobile-menu-toggle::after{transform:translateY(9px)!important;}
  body.menu-open .site-header .mobile-menu-toggle::before{transform:rotate(45deg)!important;}
  body.menu-open .site-header .mobile-menu-toggle::after{transform:rotate(-45deg)!important;}
}

/* Match the homepage mobile header geometry to the lower-page header. */
@media(max-width:760px){
  html body.home-page>.site-header,
  html body.home-page>.site-header.is-top,
  html body.home-page>.site-header.is-scrolled{
    left:0!important;
    right:0!important;
    width:100%!important;
    height:72px!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    transform:none!important;
  }
  body.home-page .header-main,
  body.home-page .site-header.is-scrolled .header-main{
    position:relative!important;
    width:100%!important;
    max-width:none!important;
    height:72px!important;
    min-height:72px!important;
    margin:0!important;
    padding:0 16px!important;
    box-sizing:border-box!important;
    transform:none!important;
  }
  body.home-page .site-header .brand,
  body.home-page .site-header.is-scrolled .brand{
    position:static!important;
    width:100px!important;
    min-width:0!important;
    height:72px!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    transform:none!important;
  }
  body.home-page .site-header .brand-logo,
  body.home-page .site-header.is-scrolled .brand-logo{
    position:static!important;
    width:78px!important;
    max-width:78px!important;
    height:auto!important;
    max-height:48px!important;
    margin:0!important;
    padding:0!important;
    object-fit:contain!important;
    transform:none!important;
  }
}
