/* Smartphone/tablet Works: normal document flow replaces legacy vw coordinates.
   All rules are restricted to this page and <=900px; desktop is untouched. */
@media(max-width:900px) {
 html body.page-works.page-works .works-hero {
  position:relative!important; display:block!important; width:100%!important;
  height:auto!important; min-height:0!important; max-height:none!important;
  aspect-ratio:auto!important; padding:0!important; margin:0!important; overflow:hidden!important;
 }
 html body.page-works.page-works .works-hero__mobile-photo-wave {
  position:relative!important; inset:auto!important; display:block!important;
  width:100%!important; height:clamp(240px,72vw,460px)!important;
  object-fit:cover!important; object-position:55% center!important; margin:0!important;
 }
 html body.page-works.page-works .works-hero__stage {
  position:relative!important; inset:auto!important; display:block!important;
  width:100%!important; height:auto!important; min-height:0!important; aspect-ratio:auto!important;
  margin:0!important; padding:0!important; overflow:visible!important; transform:none!important;
 }
 html body.page-works.page-works .works-hero__stage::before {
  position:absolute!important; top:-22px!important; bottom:auto!important; left:-10%!important;
  width:120%!important; height:24px!important; border-radius:50% 50% 0 0 / 100% 100% 0 0!important;
  background:#fff!important; pointer-events:none!important;
 }
 html body.page-works.page-works .works-hero__copy {
  position:relative!important; inset:auto!important; width:100%!important; height:auto!important;
  min-height:0!important; padding:24px 20px 32px!important; margin:0!important;
  box-sizing:border-box!important; overflow:visible!important; clip:auto!important; clip-path:none!important;
 }
 html body.page-works.page-works .works-hero__copy .works-hero__title.brand-overlay.brand-overlay {
  position:relative!important; inset:auto!important; display:grid!important; place-items:center!important;
  width:max-content!important; max-width:100%!important; height:auto!important; min-height:88px!important;
  margin:0 auto!important; padding:0!important; overflow:visible!important; clip-path:none!important;
  opacity:1!important; filter:none!important; transform:none!important; animation:none!important;
 }
 html body.page-works.page-works .works-hero__title::before,
 html body.page-works.page-works .works-hero__title::after { content:none!important; display:none!important; }
 html body.page-works.page-works .works-hero__title .brand-heading-en.brand-heading-en[data-top-type] {
  font-size:clamp(64px,18vw,86px)!important; line-height:1!important; overflow:visible!important;
 }
 html body.page-works.page-works .works-hero__title .brand-heading-jp.brand-heading-jp[data-top-type] {
  font-size:20px!important; line-height:1.5!important; white-space:nowrap!important; opacity:1!important;
 }
 html body.page-works.page-works .works-hero__divider {
  position:relative!important; inset:auto!important; width:140px!important; height:24px!important;
  margin:8px auto 16px!important; transform:none!important;
 }
 html body.page-works.page-works .works-hero__lead {
  position:relative!important; inset:auto!important; width:100%!important; max-width:none!important;
  margin:0!important; font-size:15px!important; line-height:1.9!important; letter-spacing:.035em!important;
  opacity:1!important; filter:none!important; transform:none!important;
 }
 html body.page-works.page-works .works-hero__tabs {
  position:relative!important; inset:auto!important; display:flex!important; flex-wrap:wrap!important;
  justify-content:center!important; width:100%!important; height:auto!important; min-height:0!important;
  gap:8px!important; margin:24px 0 0!important; padding:0!important; overflow:visible!important;
  opacity:1!important; filter:none!important; transform:none!important;
 }
 html body.page-works.page-works .works-hero__tabs a,
 html body.page-works.page-works .works-hero__tabs a:last-child {
  flex:0 0 auto!important; width:auto!important; height:auto!important; min-height:44px!important;
  padding:10px 16px!important; font-size:14px!important; line-height:1.5!important; letter-spacing:.02em!important;
 }
 html body.page-works.page-works .works__content {
  margin:0!important; padding:32px 16px 56px!important; width:100%!important;
 }
 html body.page-works.page-works .works__grid {
  display:grid!important; grid-template-columns:minmax(0,1fr)!important; gap:32px!important;
 }
 html body.page-works.page-works .work-card { width:100%!important; min-width:0!important; }
}

/* v49: retain the supplied leaf divider; suppress duplicate legacy CSS lines. */
@media(max-width:900px) {
 html body.page-works.page-works .works-hero__divider > span,
 html body.page-works.page-works .works-hero__divider > b {
  display:none!important;
 }
}
