/* Shared lower-page hero refresh — aligned with current yurumii v2 */
.subpage-eyebrow{
  display:block;
  margin:0 0 10px;
  color:#9DBDA6;
  font-size:12px;
  font-weight:700;
  line-height:1.5;
  letter-spacing:.08em;
}

/* Generic static-page hero */
body.page .page-hero{
  min-height:220px;
  padding:30px 0 48px;
  background:#F6F8F2;
  border-bottom:1px solid #E9EDE5;
}
body.page .page-hero .breadcrumbs{margin-bottom:26px}
body.page .page-hero h1{
  margin:0;
  color:#363640;
  font-size:40px;
  line-height:1.4;
  letter-spacing:.01em;
}
body.page .page-hero p{
  max-width:760px;
  margin:12px 0 0;
  color:#545F5A;
  font-size:15px;
  line-height:1.9;
}

/* About */
body.page-id-128 .page-hero{
  min-height:260px;
  display:flex;
  align-items:center;
}
body.page-id-128 .page-hero .breadcrumbs{margin-bottom:24px}
body.page-id-128 .page-hero h1{font-size:42px}

/* Salon search */
body.post-type-archive-salon .salon-page-intro{
  padding:30px 0 34px;
  background:#F6F8F2;
  border-bottom:1px solid #E9EDE5;
}
body.post-type-archive-salon .salon-page-intro .breadcrumbs{margin-bottom:24px}
body.post-type-archive-salon .salon-page-intro .salon-eyebrow{
  margin-bottom:10px;
  color:#9DBDA6;
  font-size:12px;
  letter-spacing:.08em;
}
body.post-type-archive-salon .salon-page-intro h1{
  margin:0 0 10px;
  color:#363640;
  font-size:40px;
  line-height:1.4;
}
body.post-type-archive-salon .salon-page-intro>.container>p{
  max-width:760px;
  color:#545F5A;
  font-size:15px;
  line-height:1.85;
}
body.post-type-archive-salon .salon-condition-summary{
  margin-top:28px;
  padding:18px 20px;
  background:#fff;
  border:1px solid #E2E8DE;
  border-radius:12px;
  box-shadow:0 8px 20px rgba(117,138,67,.08);
}

/* Magazine */
body.blog .journal-list-hero{
  min-height:260px;
  padding:30px 0 44px;
  background:#F6F8F2;
  border-bottom:1px solid #E9EDE5;
}
body.blog .journal-list-hero .breadcrumbs{margin-bottom:24px}
body.blog .journal-list-hero h1{
  margin:0 0 10px;
  color:#363640;
  font-size:42px;
  line-height:1.4;
}
body.blog .journal-list-hero p{
  max-width:760px;
  margin:0;
  color:#545F5A;
  font-size:15px;
  line-height:1.9;
}
body.blog .journal-list-heading h2{
  color:#363640;
  font-size:28px;
}
body.blog .journal-heading-line{
  width:44px;
  height:2px;
  background:#9DBDA6;
}

@media(max-width:900px){
  body.page .page-hero,
  body.page-id-128 .page-hero,
  body.blog .journal-list-hero{
    min-height:0;
  }
}
@media(max-width:640px){
  .subpage-eyebrow{margin-bottom:7px;font-size:10px}
  body.page .page-hero{
    padding:22px 0 30px;
  }
  body.page .page-hero .breadcrumbs,
  body.page-id-128 .page-hero .breadcrumbs,
  body.post-type-archive-salon .salon-page-intro .breadcrumbs,
  body.blog .journal-list-hero .breadcrumbs{
    margin-bottom:18px;
  }
  body.page .page-hero h1,
  body.page-id-128 .page-hero h1,
  body.blog .journal-list-hero h1{
    font-size:30px;
  }
  body.page .page-hero p,
  body.blog .journal-list-hero p{
    font-size:14px;
    line-height:1.75;
  }
  body.post-type-archive-salon .salon-page-intro{
    padding:20px 0 24px;
  }
  body.post-type-archive-salon .salon-page-intro h1{
    font-size:30px;
  }
  body.post-type-archive-salon .salon-condition-summary{
    margin-top:20px;
    padding:16px;
    border-radius:10px;
  }
  body.blog .journal-list-hero{
    padding:22px 0 30px;
  }
}


/* 404 */
body.error404 .site-main{background:#F6F8F2}
.not-found-page{min-height:560px;display:flex;align-items:center;padding:72px 0 88px;background:#F6F8F2}
.not-found-page__inner{max-width:760px;text-align:center}
.not-found-page .subpage-eyebrow{margin-bottom:8px;color:#54735D}
.not-found-page__code{margin:0;color:#9DBDA6;font-size:72px;line-height:1;font-weight:700;letter-spacing:.04em}
.not-found-page h1{margin:18px 0 14px;color:#363640;font-size:34px;line-height:1.45}
.not-found-page h1+p{margin:0 auto;max-width:620px;color:#545F5A;font-size:15px;line-height:1.9}
.not-found-page__actions{display:flex;align-items:center;justify-content:center;gap:22px;margin-top:30px}
.not-found-page__actions .button{min-width:180px}
.not-found-page__home{color:#54735D;font-weight:700;text-decoration:underline;text-underline-offset:4px}
@media(max-width:640px){
  .subpage-eyebrow{font-size:11px}
  .not-found-page{min-height:470px;padding:54px 0 68px}
  .not-found-page__code{font-size:58px}
  .not-found-page h1{font-size:25px;line-height:1.5}
  .not-found-page h1+p{font-size:14px;line-height:1.8}
  .not-found-page__pc{display:none}
  .not-found-page__actions{flex-direction:column;gap:18px;margin-top:26px}
  .not-found-page__actions .button{width:100%;max-width:320px}
}
