/* Client revisions from EO修正依頼20260930.xlsx. */
body.eo-home:not(.eo-subpage) .eo-brand { position:relative; }
body.eo-home:not(.eo-subpage) .eo-brand > img { transition:opacity .2s ease; }
body.eo-home:not(.eo-subpage) .eo-brand-scrolled { position:absolute;inset:0;opacity:0; }
body.eo-home:not(.eo-subpage).eo-header-scrolled .eo-header {
  background:#fff!important;color:var(--navy)!important;
  box-shadow:0 2px 12px rgb(12 12 49 / .1)!important;
}
body.eo-home:not(.eo-subpage).eo-header-scrolled .eo-brand > img:first-child { opacity:0; }
body.eo-home:not(.eo-subpage).eo-header-scrolled .eo-brand-scrolled { opacity:1; }
body.eo-home:not(.eo-subpage).eo-header-scrolled .eo-japan,
body.eo-home:not(.eo-subpage).eo-header-scrolled .eo-menu-toggle {
  border-color:#9292a5!important;color:var(--navy)!important;
}

/* Run the gray field through the lower half of the second statistics row. */
.eo-numbers { background:linear-gradient(to bottom,#fff 0 76%,var(--gray) 76% 100%)!important; }
.eo-numbers .eo-stat-grid {
  grid-template-columns:repeat(4,minmax(0,1fr));column-gap:0;row-gap:1.25vw;
}
.eo-numbers .eo-stat-grid > div,
.eo-numbers .eo-stat-grid > div:last-child {
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  min-width:0;min-height:clamp(150px,14vw,268px);padding:1.25vw .7vw;
  background:transparent;border:0;border-left:1px solid #9292a5;text-align:center;
}
.eo-numbers .eo-stat-grid > div:nth-child(4n) { border-right:1px solid #9292a5; }
.eo-numbers .eo-stat-grid dt { font-size:clamp(12px,1.15vw,22px);line-height:1.4; }
.eo-numbers .eo-stat-grid dt span { font-size:clamp(11px,.95vw,18px);color:#8b8b9b; }
.eo-numbers .eo-stat-grid dd {
  max-width:100%;font-size:clamp(48px,5.5vw,106px);line-height:1.1;margin-top:1vw!important;
  font-variant-numeric:tabular-nums;
}
.eo-numbers .eo-stat-grid dd small { font-size:.26em; }
.eo-numbers .eo-stat-grid dd.eo-stat-pending { font-family:inherit;font-size:clamp(22px,2.4vw,46px);letter-spacing:0; }

/* The supplied Forum image has bright edge pixels; keep them outside the crop. */
.eo-activity-card-forum .eo-activity-image img { transform:scale(1.025); }
.eo-activity-card-forum:hover .eo-activity-image img { transform:scale(1.07); }

/* Keep the faces in the MyEO group photo within the wide card crop. */
.eo-activity-card-myeo .eo-activity-image img { object-position:center top; }

/* Align the visible last line with the portrait; the 40px line box has bottom leading. */
.eo-message-page .eo-message-columns { align-items:end; }
.eo-message-page .eo-message-text { margin-top:0;transform:translateY(10px); }
.eo-message-page .eo-message-text h2 { margin-bottom:clamp(24px,2.0833vw,40px); }
.eo-message-page .eo-message-rest { margin-top:clamp(24px,2.0833vw,40px); }

/* Keep icons crisp at their intended smaller display size. */
.eo-global-stat-grid img { width:3.5vw;height:3.25vw; }

/* Match each benefit pointer to the box directly above it. */
.eo-mentor-benefits article:first-child h3::after { border-top-color:var(--gray); }
.eo-mentor-benefits article:nth-child(2) h3::after { border-top-color:#dcdce6; }
.eo-chapters span { color:#bcbccf; }

/* The contact-page anchor target sits below the measured fixed header. */
body.eo-home.eo-subpage .eo-contact-guide #howto,
body.eo-home.eo-subpage .eo-contact-guide #fees,
body.eo-home.eo-subpage #contact-form {
  scroll-margin-top:calc(var(--eo-header-height, 90px) + var(--eo-admin-offset, 0px) + 16px)!important;
}

@media (prefers-reduced-motion:no-preference) {
  .eo-hero h1 span { display:block;opacity:0;animation:eo-hero-copy-enter .8s ease-out forwards; }
  .eo-hero h1 span:nth-child(2) { animation-delay:.18s; }
  @keyframes eo-hero-copy-enter { from { opacity:0;transform:translateY(.4em); } to { opacity:1;transform:translateY(0); } }
}
@media (prefers-reduced-motion:reduce) {
  body.eo-home:not(.eo-subpage) .eo-brand > img { transition:none; }
  .eo-hero h1 span { animation:none;opacity:1; }
}
@media (max-width:1100px) {
  .eo-numbers { background:linear-gradient(to bottom,#fff 0 48%,var(--gray) 48% 100%)!important; }
  .eo-numbers .eo-stat-grid { grid-template-columns:repeat(2,minmax(0,1fr));row-gap:18px; }
  .eo-numbers .eo-stat-grid > div:nth-child(4n) { border-right:0; }
  .eo-numbers .eo-stat-grid > div:nth-child(2n) { border-right:1px solid #9292a5; }
}
@media (max-width:800px) {
  .eo-hero h1 { left:50%;width:calc(100% - 24px);padding:0;transform:translateX(calc(-50% + 6px));text-align:center;letter-spacing:.1em; }
  .eo-message-page .eo-message-columns { row-gap:24px;align-items:start; }
  .eo-message-page .eo-message-text { transform:none; }
  .eo-numbers .eo-stat-grid { row-gap:12px; }
  .eo-numbers .eo-stat-grid > div,
  .eo-numbers .eo-stat-grid > div:last-child { min-height:145px;padding:16px 6px; }
  .eo-numbers .eo-stat-grid dt { font-size:12px; }
  .eo-numbers .eo-stat-grid dt span { font-size:11px; }
  .eo-numbers .eo-stat-grid dd { font-size:clamp(42px,11vw,72px);margin-top:8px!important; }
  .eo-numbers .eo-stat-grid dd.eo-stat-pending { font-size:20px; }
  .eo-global-stat-grid img { width:43px;height:41px; }
}

@media (min-width:801px) {
  .eo-hero h1 span { display:inline; }
}
