/* ShakeHands homepage v10 – distinctive photographic mobile hero, desktop editorial hero.
   Mobile & desktop use the SAME accessible H1 / URLs / document; only presentation differs. */
.s5-app[data-s5-palette="brand"] .s10-corp-hero{
  background:#fff!important;
  padding:0!important;
}
.s5-app[data-s5-palette="brand"] .s10-corp-hero .s5-hero-grid{
  width:100%;
  max-width:none;
  margin:0;
  display:grid;
  grid-template-columns:minmax(0,1fr);
  grid-template-rows:minmax(0,1fr);
  min-height:620px;
  height:calc(100svh - 72px);
  max-height:950px;
  position:relative;
  isolation:isolate;
  gap:0;
}
.s5-app[data-s5-palette="brand"] .s10-corp-hero .s5-corp-visual{
  grid-area:1/1/2/2;
  position:relative;
  display:block;
  margin:0;
  height:100%;
  min-width:0;
  width:100%;
  border-radius:0!important;
  aspect-ratio:auto!important;
  background:#1b2a4e!important;
  z-index:0;
  overflow:hidden;
}
.s5-app[data-s5-palette="brand"] .s10-corp-hero .s5-corp-visual picture{
  width:100%;
  height:100%;
  display:block;
}
.s5-app[data-s5-palette="brand"] .s10-corp-hero .s5-corp-visual img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:53% center;
  filter:saturate(.86) contrast(1.05);
}
.s5-app[data-s5-palette="brand"] .s10-corp-hero .s5-corp-visual:after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(0deg,rgba(9,17,38,.96) 0%,rgba(9,17,38,.73) 34%,rgba(9,17,38,.19) 74%,rgba(9,17,38,.09) 100%),
    linear-gradient(90deg,rgba(9,17,38,.20),rgba(9,17,38,0) 66%);
  z-index:1;
}
.s5-app[data-s5-palette="brand"] .s10-corp-hero .s5-hero-copy{
  grid-area:1/1/2/2;
  align-self:end;
  position:relative;
  z-index:2;
  padding:0 26px 43px;
  width:100%;
  min-width:0;
  max-width:720px;
  color:white!important;
}
.s5-app[data-s5-palette="brand"] .s10-corp-hero .s10-hero-eyebrow{
  font-size:10px!important;
  letter-spacing:.13em;
  color:#f2f3ff!important;
  gap:9px;
}
.s5-app[data-s5-palette="brand"] .s10-corp-hero .s10-hero-eyebrow .s5-dot{
  width:24px;height:2px;background:#fff!important;border-radius:0;
}
.s5-app[data-s5-palette="brand"] .s10-corp-hero h1{
  font-size:clamp(42px,11.4vw,60px)!important;
  letter-spacing:-.055em!important;
  line-height:1.39!important;
  font-weight:900;
  margin:18px 0 0!important;
  color:#fff!important;
  text-shadow:0 3px 22px rgba(0,0,0,.2);
  max-width:none!important;
}
.s5-app[data-s5-palette="brand"] .s10-corp-hero h1 em{
  color:#fff!important;
  font-style:normal;
  position:relative;
}
.s5-app[data-s5-palette="brand"] .s10-corp-hero h1 em:after{
  content:"";
  position:absolute;
  height:3px;
  background:#e5e8ff;
  bottom:1px;left:1px;right:0;
  opacity:.65;
}
.s5-app[data-s5-palette="brand"] .s10-corp-hero .s5-hero-desc,
.s5-app[data-s5-palette="brand"] .s10-corp-hero .s5-hero-desc strong{
  color:#fff!important;
  font-weight:500;
  font-size:14px!important;
  line-height:1.9!important;
  margin-top:23px!important;
}
.s5-app[data-s5-palette="brand"] .s10-corp-hero .s5-hero-desc strong{
  font-weight:800!important;
}
.s5-app[data-s5-palette="brand"] .s10-corp-hero .s5-hero-actions{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:13px;
  margin-top:29px;
}
.s5-app[data-s5-palette="brand"] .s10-corp-hero .s5-hero-actions .s5-button{
  width:100%;
  max-width:460px;
  background:#fff!important;
  border:1px solid white!important;
  border-radius:5px;
  color:#1D2088!important;
  font-weight:900;
  min-height:58px;
  padding:13px 20px;
}
.s5-app[data-s5-palette="brand"] .s10-corp-hero .s5-hero-actions .s5-button:hover{
  background:#eef0fc!important;
}
.s5-app[data-s5-palette="brand"] .s10-corp-hero .s5-hero-actions .s5-inline-link{
  color:#fff!important;
  width:max-content;
  border-bottom-color:rgba(255,255,255,.65)!important;
  font-size:13px;
  margin:0;
  padding-bottom:5px;
}
.s5-app[data-s5-palette="brand"] .s10-scroll-indicator{
  display:flex;align-items:center;gap:11px;
  font:700 9px/1.2 "Noto Sans JP",sans-serif;
  letter-spacing:.18em;
  color:#f8f8ff;
  margin-top:32px;
}
.s5-app[data-s5-palette="brand"] .s10-scroll-indicator span{
  display:block;
  width:1px;height:32px;
  background:rgba(255,255,255,.7);
  transform-origin:top;
  animation:s10-scroll 1.7s ease-in-out infinite alternate;
}
@keyframes s10-scroll{from{transform:scaleY(.5);opacity:.42}to{transform:scaleY(1);opacity:1}}
/* Corporate has hero CTA, avoid fixed sticky CTA covering photo/title on mobile. */
.s5-app[data-s5-palette="brand"]:has(.s10-corp-hero) .s5-mobile-cta{display:none!important}
body:has(.s10-corp-hero) .s5-app{padding-bottom:0!important}

/* Strong specific regional proof for a Tokyo visitor, not 'Nago 16 buildings' without context */
.s5-app[data-s5-palette="brand"] .s10-hero-proof{
  background:#fff!important;
  border-bottom:1px solid #e6e6f0;
  padding:59px 0 40px;
}
.s5-app[data-s5-palette="brand"] .s10-hero-proof-inner{display:grid;gap:25px;align-items:center}
.s5-app[data-s5-palette="brand"] .s10-results-intro .s5-section-id{
  color:#1D2088!important;
  letter-spacing:.09em;
  font-size:11px!important;
  margin-bottom:13px!important;
}
.s5-app[data-s5-palette="brand"] .s10-results-intro h2{
  font-size:clamp(30px,7.4vw,42px)!important;
  line-height:1.42!important;
  max-width:17em;
}
.s5-app[data-s5-palette="brand"] .s10-results-intro h2 em{color:#1D2088!important}
.s5-app[data-s5-palette="brand"] .s10-results-intro>p:last-child{
  color:#555764!important;
  font-size:13px!important;
  line-height:2.03!important;
  margin-top:16px!important;
  max-width:550px;
}
.s5-app[data-s5-palette="brand"] .s10-metrics{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.s5-app[data-s5-palette="brand"] .s10-metrics>div{
  border-top:3px solid #1D2088;
  background:#f7f7fc;
  padding:16px 11px 19px;
  min-width:0;
}
.s5-app[data-s5-palette="brand"] .s10-metrics strong{
  display:flex;align-items:baseline;
  color:#1D2088!important;
  line-height:1.1;
  letter-spacing:-.06em;
  font-weight:900;
  font-size:clamp(57px,15.3vw,80px)!important;
  white-space:nowrap;
}
.s5-app[data-s5-palette="brand"] .s10-metrics strong .s6-count{
  font-size:inherit!important;line-height:inherit!important;color:inherit!important;
  letter-spacing:inherit!important;margin:0!important;font-weight:inherit!important;display:inline!important;
}
.s5-app[data-s5-palette="brand"] .s10-metrics strong small{
  font-size:14px!important;letter-spacing:0;margin-left:6px;
}
.s5-app[data-s5-palette="brand"] .s10-metrics>div>span{
  display:block;
  color:#535263;
  font-size:11px;
  line-height:1.5;
  font-weight:700;
  margin-top:9px;
}
.s5-app[data-s5-palette="brand"] .s10-proof-link{
  font-size:13px;
  font-weight:800;
  display:inline-flex;align-items:center;gap:18px;
  width:fit-content;
  color:#1D2088!important;
  border-bottom:1px solid #1D2088;
  padding-bottom:7px;
}
.s5-app[data-s5-palette="brand"] .s10-proof-link span{font-size:19px}
.s5-app[data-s5-palette="brand"] .s10-proof-note{
  font-size:10px!important;
  color:#858592!important;
  max-width:1180px;
  width:calc(100% - 40px);
  margin:29px auto 0;
}
/* Smaller pages below: fewer words upfront / fewer unnecessary duplicated metrics */
.s5-app[data-s5-palette="brand"] .s5-businesses{padding-top:72px!important}
.s5-app[data-s5-palette="brand"] .s5-businesses .s5-section-heading{margin-bottom:25px}
.s5-app[data-s5-palette="brand"] .s5-businesses .s5-business-copy h3{font-weight:900!important}
.s5-app[data-s5-palette="brand"] .s5-corp-knowledge-grid>a{min-height:160px}

/* Desktop is intentionally editorial/two-column, mobile an immersive full-bleed cover */
@media(min-width:760px){
 .s5-app[data-s5-palette="brand"] .s10-corp-hero{padding:80px 0 78px!important}
 .s5-app[data-s5-palette="brand"] .s10-corp-hero .s5-hero-grid{
   display:grid;
   width:calc(100% - 80px);
   max-width:1200px;
   margin:auto;
   grid-template-columns:minmax(0,1fr) minmax(0,46%);
   grid-template-rows:auto;
   min-height:0;height:auto;max-height:none;
   gap:clamp(25px,4vw,80px);
   align-items:center;
 }
 .s5-app[data-s5-palette="brand"] .s10-corp-hero .s5-hero-copy{
   grid-area:1/1/2/2;
   align-self:auto;
   position:relative;
   z-index:2;
   padding:0;
   max-width:none;
   color:#231916!important;
 }
 .s5-app[data-s5-palette="brand"] .s10-corp-hero .s5-corp-visual{
   grid-area:1/2/2/3;
   width:100%;
   height:auto;
   aspect-ratio:.98!important;
   border-radius:8px!important;
 }
 .s5-app[data-s5-palette="brand"] .s10-corp-hero .s5-corp-visual:after{
   background:linear-gradient(0deg,rgba(15,26,57,.22),rgba(15,26,57,0) 55%);
 }
 .s5-app[data-s5-palette="brand"] .s10-corp-hero .s10-hero-eyebrow{color:#1D2088!important;font-size:11px!important}
 .s5-app[data-s5-palette="brand"] .s10-corp-hero .s10-hero-eyebrow .s5-dot{background:#1D2088!important}
 .s5-app[data-s5-palette="brand"] .s10-corp-hero h1{
   color:#231916!important;
   font-size:clamp(45px,5vw,70px)!important;
   line-height:1.45!important;
   text-shadow:none;
 }
 .s5-app[data-s5-palette="brand"] .s10-corp-hero h1 em{color:#1D2088!important}
 .s5-app[data-s5-palette="brand"] .s10-corp-hero h1 em:after{display:none}
 .s5-app[data-s5-palette="brand"] .s10-corp-hero .s5-hero-desc{color:#5B5967!important;font-size:14px!important}
 .s5-app[data-s5-palette="brand"] .s10-corp-hero .s5-hero-desc strong{color:#28242F!important;font-size:14px!important}
 .s5-app[data-s5-palette="brand"] .s10-corp-hero .s5-hero-actions{align-items:flex-start;gap:16px}
 .s5-app[data-s5-palette="brand"] .s10-corp-hero .s5-hero-actions .s5-button{
   width:auto;min-width:258px;background:#1D2088!important;border-color:#1D2088!important;color:#fff!important
 }
 .s5-app[data-s5-palette="brand"] .s10-corp-hero .s5-hero-actions .s5-button:hover{background:#14175D!important}
 .s5-app[data-s5-palette="brand"] .s10-corp-hero .s5-hero-actions .s5-inline-link{color:#1D2088!important;border-color:#1D2088!important}
 .s5-app[data-s5-palette="brand"] .s10-scroll-indicator{display:none}
 .s5-app[data-s5-palette="brand"] .s10-hero-proof{padding:80px 0 50px}
 .s5-app[data-s5-palette="brand"] .s10-hero-proof-inner{
   display:grid;grid-template-columns:1.18fr 1fr;
   grid-template-areas:"intro facts" "link facts";
   gap:14px 7%;
 }
 .s5-app[data-s5-palette="brand"] .s10-results-intro{grid-area:intro}
 .s5-app[data-s5-palette="brand"] .s10-metrics{grid-area:facts;align-self:center;gap:14px}
 .s5-app[data-s5-palette="brand"] .s10-proof-link{grid-area:link;align-self:start}
 .s5-app[data-s5-palette="brand"] .s10-metrics>div{padding:22px 16px}
 .s5-app[data-s5-palette="brand"] .s10-metrics strong{font-size:clamp(56px,6vw,88px)!important}
 .s5-app[data-s5-palette="brand"] .s10-results-intro h2{font-size:clamp(36px,3.9vw,51px)!important}
 .s5-app[data-s5-palette="brand"] .s10-proof-note{width:calc(100% - 80px)}
}
@media(min-width:1100px){
 .s5-app[data-s5-palette="brand"] .s10-corp-hero{padding:110px 0 100px!important}
 .s5-app[data-s5-palette="brand"] .s10-corp-hero h1{font-size:clamp(57px,5.4vw,77px)!important}
 .s5-app[data-s5-palette="brand"] .s10-corp-hero .s5-hero-actions{flex-direction:row;align-items:center}
 .s5-app[data-s5-palette="brand"] .s10-corp-hero .s5-hero-actions .s5-button{min-width:0}
}
@media(max-width:375px){
 .s5-app[data-s5-palette="brand"] .s10-corp-hero .s5-hero-copy{padding-left:19px;padding-right:19px;padding-bottom:33px}
 .s5-app[data-s5-palette="brand"] .s10-corp-hero h1{font-size:41px!important}
 .s5-app[data-s5-palette="brand"] .s10-corp-hero .s5-hero-desc{font-size:13px!important}
 .s5-app[data-s5-palette="brand"] .s10-metrics strong{font-size:56px!important}
}
@media(prefers-reduced-motion:reduce){
 .s5-app[data-s5-palette="brand"] .s10-scroll-indicator span{animation:none}
 .s5-app[data-s5-palette="brand"] .s10-corp-hero .s5-corp-visual img{animation:none!important}
}
