/* v136: calmer, visitor-first service hero proportions */
body:not(.branding-page) .hub-hero{
  min-height:auto!important;
  padding:clamp(32px,3.5vw,52px) 24px clamp(38px,4vw,58px)!important;
  background:linear-gradient(180deg,#f8f5ee 0%,#fffefa 100%)!important;
}
body:not(.branding-page) .hub-hero>.container{
  width:100%!important;
  max-width:1140px!important;
  margin:0 auto!important;
  padding:0!important;
}
body:not(.branding-page) .hub-hero-grid{
  grid-template-columns:minmax(330px,40%) minmax(480px,60%)!important;
  gap:clamp(34px,4vw,54px)!important;
  align-items:start!important;
}
body:not(.branding-page) .hub-hero-visual{
  min-height:0!important;
  height:auto!important;
  margin-top:20px!important;
}
body:not(.branding-page) .hub-hero-photo{
  height:auto!important;
  min-height:0!important;
  aspect-ratio:4/3!important;
  border-radius:18px!important;
  border:1px solid rgba(31,36,33,.12)!important;
  box-shadow:0 20px 55px rgba(43,35,28,.10)!important;
  background:#e9e5dc!important;
}
body:not(.branding-page) .hub-hero-photo img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
body:not(.branding-page) .hub-hero-text{
  padding:20px 0!important;
  justify-content:center!important;
  background:transparent!important;
}
body:not(.branding-page) .hub-hero-title{
  font-size:clamp(34px,3.15vw,46px)!important;
  line-height:1.5!important;
  margin-bottom:18px!important;
}
body:not(.branding-page) .hub-hero-eyebrow{margin-bottom:18px!important}
body:not(.branding-page) .hub-hero-sub{margin-bottom:22px!important}
body:not(.branding-page) .hero-check{margin-top:26px!important;margin-bottom:0!important}

/* Keep the first view compact: action and proof should not create a tall empty column. */
@media(min-width:901px){
  body:not(.branding-page) .hub-hero-cta{display:grid!important;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr)!important;gap:10px!important}
  body:not(.branding-page) .hub-hero-cta .btn{width:100%!important;min-width:0!important;padding:14px 18px!important;font-size:14px!important;justify-content:center!important;white-space:nowrap!important}
  body:not(.branding-page) .hero-check{grid-template-columns:1fr 1fr!important;column-gap:22px!important;row-gap:8px!important;padding:17px 0!important}
  body:not(.branding-page) .hero-check li{font-size:12px!important;line-height:1.65!important}
}

/* A'noA header: the brand mark is a clear route back to the main site. */
.branding-page .site-header .logo{text-decoration:none!important}
.branding-page .home-link{color:var(--ink)!important;font-weight:700!important}

/* Crop deliberately per photograph; keep faces and context, not an extreme close-up. */
body:has(.hub-hero-photo img[src*="person-sakura"]) .hub-hero-photo img{object-position:52% 45%!important}
body:has(.hub-hero-photo img[src*="seminar-public"]) .hub-hero-photo img{object-position:center 48%!important}
body:has(.hub-hero-photo img[src*="komachi-camera"]) .hub-hero-photo img{object-position:50% 34%!important}
body:has(.hub-hero-photo img[src*="lesson-group-v137"]) .hub-hero-photo img{object-position:center 48%!important}
body:has(.hub-hero-photo img[src*="lesson-product-v138"]) .hub-hero-photo img{object-position:center 52%!important}
body:has(.hub-hero-photo img[src*="lesson-product-v139"]) .hub-hero-photo img{object-position:center 52%!important}

@media(max-width:900px){
  body:not(.branding-page) .hub-hero{padding:28px 20px 58px!important}
  body:not(.branding-page) .hub-hero-grid{grid-template-columns:minmax(0,1fr)!important;gap:32px!important;max-width:680px!important;margin:0 auto!important}
  body:not(.branding-page) .hub-hero-visual,
  body:not(.branding-page) .hub-hero-photo{height:auto!important;min-height:0!important}
  body:not(.branding-page) .hub-hero-visual{width:100%!important;max-width:none!important;min-width:0!important;margin:0!important}
  body:not(.branding-page) .hub-hero-photo{aspect-ratio:16/10!important;border-radius:14px!important}
  body:not(.branding-page) .hub-hero-text{padding:0 4px!important}
}
@media(max-width:640px){
  body:not(.branding-page) .hub-hero{padding:18px 16px 48px!important}
  body:not(.branding-page) .hub-hero>.container{width:calc(100vw - 32px)!important;max-width:calc(100vw - 32px)!important}
  body:not(.branding-page) .hub-hero-grid{width:calc(100vw - 32px)!important;max-width:calc(100vw - 32px)!important;gap:25px!important}
  body:not(.branding-page) .hub-hero-photo{aspect-ratio:16/9!important;border-radius:12px!important;box-shadow:0 12px 34px rgba(43,35,28,.09)!important}
  body:not(.branding-page) .hub-hero-text{width:100%!important;min-width:0!important;max-width:100%!important;padding:0!important}
  body:not(.branding-page) .hub-hero-title{max-width:100%!important;font-size:clamp(27px,7.5vw,33px)!important;line-height:1.48!important;letter-spacing:.025em!important;overflow-wrap:anywhere!important}
  body:not(.branding-page) .hub-hero-eyebrow{margin-bottom:13px!important}
  body:not(.branding-page) .hub-hero-sub{max-width:100%!important;font-size:14px!important;line-height:1.85!important;overflow-wrap:anywhere!important;word-break:break-all!important}
  body:not(.branding-page) .hero-check{margin-top:22px!important}
}
