/* ShakeHands corporate v12: visual-first service buttons.
   Whole image card = accessible link. White high-contrast panel is the clear tap target.
   Applies only to corporate top, not hospitality landing page. */
.s5-app[data-s5-palette="brand"] .s11-home .s12-image-link{
  display:block;
  min-width:0;
  cursor:pointer;
  text-decoration:none!important;
  -webkit-tap-highlight-color:rgba(29,32,136,.1);
}
.s5-app[data-s5-palette="brand"] .s11-home .s12-image-link figure{
  position:relative;
  isolation:isolate;
  display:block;
  overflow:hidden;
  border-radius:6px;
  background:#e7eaf2;
  aspect-ratio:1.37;
}
.s5-app[data-s5-palette="brand"] .s11-home .s12-image-link figure img{
  display:block;
  width:100%;height:100%;
  object-fit:cover;
  transform:scale(1);
  transition:transform .65s cubic-bezier(.2,.8,.25,1);
}
.s5-app[data-s5-palette="brand"] .s11-home .s12-image-link figure:after{
  content:"";
  position:absolute;inset:40% 0 0;
  background:linear-gradient(transparent,rgba(9,17,45,.11));
  pointer-events:none;z-index:0;
}
.s5-app[data-s5-palette="brand"] .s11-home .s12-image-cta{
  position:absolute;
  bottom:13px;left:13px;right:13px;
  z-index:2;
  padding:17px 13px 17px 19px;
  min-height:93px;
  background:rgba(255,255,255,.97);
  border:1px solid rgba(255,255,255,.97);
  border-radius:5px;
  box-shadow:0 8px 24px rgba(11,22,49,.11);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  display:grid;
  grid-template-columns:minmax(0,1fr) 42px;
  grid-template-rows:auto auto;
  align-items:center;
  gap:3px 8px;
  color:#231916;
  transition:background .23s,border-color .23s,transform .23s;
}
.s5-app[data-s5-palette="brand"] .s11-home .s12-card-kicker{
  grid-column:1;grid-row:1;
  display:block;
  font:800 10px/1.5 "Noto Sans JP",sans-serif;
  letter-spacing:.085em;
  color:#636685;
}
.s5-app[data-s5-palette="brand"] .s11-home .s12-card-title{
  grid-column:1;grid-row:2;
  display:block;
  color:#231916;
  font:850 clamp(20px,5.7vw,25px)/1.38 "Noto Sans JP",sans-serif;
  letter-spacing:-.055em;
  overflow-wrap:anywhere;
}
.s5-app[data-s5-palette="brand"] .s11-home .s12-card-icon{
  grid-column:2;grid-row:1/3;
  display:grid;
  place-items:center;
  width:42px;height:42px;
  background:#1D2088;
  border:1px solid #1D2088;
  border-radius:50%;
  color:#fff;
  font:600 22px/1 "Noto Sans JP",sans-serif;
  transition:transform .25s,background .25s;
}
.s5-app[data-s5-palette="brand"] .s11-home .s12-image-link:is(:hover,:focus-visible) .s12-image-cta{
  border-color:#B2B5D9;background:#fff;
  transform:translateY(-2px);
}
.s5-app[data-s5-palette="brand"] .s11-home .s12-image-link:is(:hover,:focus-visible) .s12-card-icon{
  transform:translate(3px,-3px);
  background:#14165c;
}
.s5-app[data-s5-palette="brand"] .s11-home .s12-image-link:is(:hover,:focus-visible) figure img{
  transform:scale(1.04);
}
.s5-app[data-s5-palette="brand"] .s11-home .s12-image-link:focus-visible{
  outline:3px solid #1D2088;
  outline-offset:4px;
}
.s5-app[data-s5-palette="brand"] .s11-home .s12-image-link .s11-service-copy{
  padding:12px 2px 0;
}
.s5-app[data-s5-palette="brand"] .s11-home .s12-image-link .s11-service-copy p{
  color:#585967!important;
  font-size:13px!important;
  line-height:1.85!important;
  margin:0!important;
}
.s5-app[data-s5-palette="brand"] .s11-home .s12-development-link figure{
  background:linear-gradient(135deg,#e0e5f3,#f0f1fa 60%,#ccd3eb)!important;
}
.s5-app[data-s5-palette="brand"] .s11-home .s12-development-link .s11-building{
  bottom:34%;
}
.s5-app[data-s5-palette="brand"] .s11-home .s12-development-link .s11-building-floor{
  bottom:33%;
}
.s5-app[data-s5-palette="brand"] .s11-home .s12-development-link .s12-image-cta{
  background:rgba(255,255,255,.97);
}
@media(min-width:760px){
 .s5-app[data-s5-palette="brand"] .s11-home .s12-image-link.s11-service-featured{
   grid-column:1/-1;
   display:block;
 }
 .s5-app[data-s5-palette="brand"] .s11-home .s12-image-link figure{
   aspect-ratio:1.52;
 }
 .s5-app[data-s5-palette="brand"] .s11-home .s12-image-link.s11-service-featured figure{
   aspect-ratio:2.35;
   min-height:300px;
 }
 .s5-app[data-s5-palette="brand"] .s11-home .s12-image-cta{
   left:21px;right:21px;bottom:19px;
   padding:18px 17px 18px 22px;
   min-height:103px;
   grid-template-columns:minmax(0,1fr) 46px;
 }
 .s5-app[data-s5-palette="brand"] .s11-home .s12-card-title{
   font-size:clamp(22px,2.3vw,30px);
 }
 .s5-app[data-s5-palette="brand"] .s11-home .s12-card-icon{width:46px;height:46px}
 .s5-app[data-s5-palette="brand"] .s11-home .s11-service-featured .s12-image-cta{
   width:min(430px,calc(100% - 42px));
   right:auto;
 }
}
@media(max-width:370px){
 .s5-app[data-s5-palette="brand"] .s11-home .s12-image-cta{
   left:10px;right:10px;bottom:10px;
   padding:14px 11px 14px 14px;
   grid-template-columns:minmax(0,1fr) 38px;
 }
 .s5-app[data-s5-palette="brand"] .s11-home .s12-card-title{font-size:20px}
 .s5-app[data-s5-palette="brand"] .s11-home .s12-card-icon{width:38px;height:38px;font-size:19px}
}
@media(prefers-reduced-motion:reduce){
 .s5-app[data-s5-palette="brand"] .s11-home .s12-image-link figure img,
 .s5-app[data-s5-palette="brand"] .s11-home .s12-image-cta,
 .s5-app[data-s5-palette="brand"] .s11-home .s12-card-icon{transition:none!important}
}
