/* Reference: index.psd. Preserve compact header padding and mobile layout. */
@media(min-width:801px){
 body.eo-home .eo-header-nav{font-family:"Noto Sans JP",sans-serif;font-weight:500;font-size:clamp(11px,.9375vw,18px);letter-spacing:.05em}
 body.eo-home .eo-header .eo-japan{font-family:Roboto,sans-serif;font-size:16px;font-weight:500;letter-spacing:.05em}
 .eo-header-nav .eo-header-dropdown a{letter-spacing:0}
 .eo-home .eo-heading{letter-spacing:0}
 .eo-activity-image span{font-family:Roboto,sans-serif;letter-spacing:0}
}
@media(min-width:1200px){
 .eo-about-copy{width:33.66%}
 .eo-about-lead{line-height:1.428571;white-space:nowrap}
 .eo-about-text{max-width:26.354167cqw;line-height:2.222222}
 .eo-about .eo-pill{margin-right:1cqw}
 .eo-activities-intro{margin-top:1.72cqw}
 .eo-activities-intro .eo-section-lead{line-height:1.428571}
 .eo-activity-track{margin-top:2.45cqw;padding-left:9.84375cqw;padding-bottom:0}
 .eo-activity-card{box-shadow:none}
 .eo-activity-body{min-height:15.208333cqw;padding:1.3cqw 1.93cqw 2.8125cqw}
 .eo-activity-body p{font-size:18px;line-height:1.666667}
 .eo-activity-body .eo-small-button{min-height:2.65625cqw;font-size:20px;font-weight:500}
 .eo-wide-cta{margin-top:6.979167cqw;min-height:4.479167cqw;font-size:28px;padding-block:.8cqw}
 .eo-numbers{padding-bottom:5.2cqw;background:linear-gradient(to bottom,#fff 0 30.625cqw,var(--gray) 30.625cqw 100%)}
 .eo-stat-grid{margin-top:3.9cqw!important}
 .eo-stat-grid dt span{margin-bottom:.5cqw}
 .eo-stat-grid dd{margin-top:1.1cqw!important;letter-spacing:0}
 .eo-members{padding-top:8.333333cqw}
 .eo-members .eo-section-toolbar{margin-top:2.7cqw}
 .eo-members .eo-member-grid{margin-top:3.05cqw}
}

@media(min-width:1200px){
 /* Absolute PSD landmarks at 1920px: 2209 / 3010 / 4034 / 4221 / 5023. */
 .eo-about-label{margin-top:1.25cqw!important}
 .eo-about-lead{margin-top:1.25cqw!important}
 .eo-about-text{margin-top:2cqw!important}
 .eo-about{padding-bottom:10.677083cqw}
 .eo-activities{padding-top:8.489583cqw}
 .eo-activities-intro{margin-top:1.354167cqw}
 .eo-activity-track{margin-top:3.229167cqw}
 .eo-numbers{padding-top:6.145833cqw;padding-bottom:4.366667cqw}
 .eo-stat-grid{margin-top:2.702083cqw!important}
}

@media(min-width:1200px){
 body.eo-home:not(.eo-subpage) main{container-type:inline-size}
 .eo-about{padding-top:9.895833cqw;min-height:58.802083cqw;background:linear-gradient(to bottom,#fff 0 37.5cqw,var(--gray) 37.5cqw 100%)}
 .eo-about-photo{top:9.947917cqw;height:39.0625cqw}
 .eo-about .eo-pill{margin-top:1.2cqw}
 .eo-activities{background:linear-gradient(to bottom,var(--navy) 0 41.71875cqw,#fff 41.71875cqw 100%)}
 .eo-activity-track{gap:2.916667cqw}
 .eo-activity-card{flex-basis:28.802083cqw}
 .eo-numbers .eo-section-lead{margin-top:2cqw}
 .eo-members{padding-bottom:4.4cqw;background:linear-gradient(to bottom,var(--navy) 0 41.770833cqw,#fff 41.770833cqw 100%)}
 .eo-members .eo-section-lead{margin-top:2cqw}
 .eo-members .eo-member-grid{column-gap:1.666667cqw;row-gap:3.7cqw}
 .eo-home:not(.eo-subpage) .eo-news{padding-top:7.45cqw}
}

@media(min-width:1200px){
 /* The numbers background overlaps the members layer by 69px in the flattened PSD. */
 .eo-members{background:linear-gradient(to bottom,var(--gray) 0 3.59375cqw,var(--navy) 3.59375cqw 41.770833cqw,#fff 41.770833cqw 100%)}
 .eo-activities .eo-carousel-controls{transform:translateX(6.354167cqw)}
 .eo-members .eo-section-toolbar{margin-right:-5.208333cqw}
}

/* Match the two 144px-spaced text rows and crop the bottom row at the FV edge. */
.eo-hero .eo-marquees{bottom:-.08em;letter-spacing:.05em}
.eo-hero .eo-marquee{padding-block:.03em}

/* Final shared corrections measured from the flattened 1920px PSDs. */
body.eo-home{--gray:#ebecec}
.eo-page-title h1{letter-spacing:0}
@media(min-width:1200px){
 .eo-subpage main,.eo-footer{container-type:inline-size}
 .eo-statement-cards p{font-size:18px;line-height:2.222222}
 .eo-detail-copy p+p{margin-top:2.222222em}
 .eo-join h2{letter-spacing:0}
 .eo-subpage .eo-join{padding-block:7.395833cqw}
 .eo-join>p{line-height:1.5;margin-top:.520833cqw}
 .eo-subpage .eo-join-buttons{margin-top:2.604167cqw;gap:3.4375cqw}
 .eo-subpage .eo-button{font-size:26px;width:22.760417cqw;min-height:4.375cqw}
 .eo-footer-sitemap{padding:4.375cqw 14.895833cqw 1.614583cqw}
 .eo-footer-sitemap .eo-nav-column h3{font-size:20px}
 .eo-footer-sitemap .eo-nav-column li{font-size:16px;line-height:1.5;margin-bottom:.625cqw}
 .eo-footer-logo{margin-bottom:3.802083cqw}
 .eo-chapters{font-family:Roboto,sans-serif;font-size:16px;line-height:1.5;margin:2.447917cqw 0 3.75cqw}
 .eo-global-footer{padding:4.166667cqw 9.375% 5.104167cqw}
 .eo-global-map span{font-family:Roboto,sans-serif;font-size:30px;line-height:1.2;margin-bottom:2.864583cqw}
 .eo-global-map{width:60.769231%;max-width:948px}
 .eo-gsea{margin-top:4.166667cqw}
 .eo-gsea span{font-size:14px;line-height:1.5;margin-top:.9375cqw}
 .eo-copyright{font-size:12px;line-height:1.5;padding:2.760417cqw 15px}
 /* Tabs begin at y=571; the approved sticky state has its own compact dimensions. */
 main:has(.eo-activity-tabs) .eo-page-title,main:has(.eo-contact-tabs) .eo-page-title{padding-bottom:5.013333cqw}
 .eo-activity-tabs:not(.is-compact) a{min-height:4.270833cqw;padding-block:.8cqw;line-height:1.5}
 .eo-activity-intro{padding-top:4.635417cqw}
 .eo-activity-english{font-size:80px;line-height:1.15;margin-bottom:3.020833cqw!important}
 .eo-detail-copy{margin-top:3.229167cqw}
 .eo-detail-gallery{margin-top:2.760417cqw}
 .eo-detail-section{padding-top:5.520833cqw}
 main:has(.eo-forum-training)>.eo-detail-section{padding-top:6.510417cqw}
 main:has(.eo-forum-training)>.eo-detail-section+.eo-detail-section{padding-top:5.416667cqw}
 .eo-forum-training{margin-top:3.333333cqw;gap:4.427083cqw;grid-template-columns:40.448718% 1fr}
 main:has(.eo-mentor-flow) .eo-activity-intro .eo-detail-lead{margin-top:3.229167cqw!important}
 main:has(.eo-mentor-flow) .eo-activity-intro .eo-detail-gallery{margin-top:.625cqw}
 .eo-mentor-flow{padding-top:5.9375cqw;padding-bottom:3.072917cqw}
 .eo-flow-steps{width:64.871795%;grid-template-rows:repeat(5,minmax(3.59375cqw,auto));gap:.572917cqw .416667cqw;margin-top:2.552083cqw!important}
 .eo-flow-steps li{padding:.546875cqw 1.041667cqw}
 .eo-flow-steps span{line-height:1}
 .eo-mentor-flow::after{height:21.822917cqw}
 .eo-mentor-flow+.eo-detail-section{padding-top:6.875cqw}
 .eo-mentor-benefits{margin-top:3.333333cqw}
 .eo-mentor-benefits h3{padding:1.848958cqw;font-size:60px}
 .eo-mentor-benefits ul{font-size:18px;line-height:2.222222;margin-top:2.395833cqw}
 /* The greeting uses 20px text; it is not the 18px activity body style. */
 .eo-message-columns{grid-template-columns:50.128205% 1fr;gap:3.020833cqw}
 .eo-message-text{margin-top:-.625cqw}
 .eo-chairman-role{font-size:25px;line-height:1.5}
 .eo-message-text h2{margin-top:.807292cqw}
 .eo-message-intro .eo-detail-copy{font-size:20px;line-height:2}
 .eo-message-intro .eo-detail-copy p+p{margin-top:2em}
 .eo-message-text .eo-detail-copy{margin-top:0}
 .eo-message-rest{margin-top:.885417cqw}
 .eo-message-intro{padding-bottom:4.322917cqw}
 .eo-message-statements{padding-top:5.833333cqw;padding-bottom:5.208333cqw}
 .eo-message-statements .eo-statement-cards{margin-top:4.427083cqw!important}
 .eo-people-section.eo-history{padding-top:6.666667cqw;background:linear-gradient(to bottom,#fff 0 25cqw,var(--gray) 25cqw)}
 .eo-history .eo-people-grid{margin-top:6.40625cqw}
 /* Contact: remove inherited heading margins and match the 18px copy / 28px subheads. */
 .eo-contact-tabs{font-size:28px;padding-bottom:3.90625cqw}
 .eo-contact-tabs a{min-height:4.427083cqw}
 .eo-contact-guide p,.eo-contact-guide li,.eo-contact-form p,.eo-contact-form li{font-size:18px;line-height:2.222222}
 .eo-contact-guide h3{font-size:28px;line-height:1.5;margin:2.708333cqw 0 1.041667cqw}
 .eo-contact-guide #howto>h3:first-of-type{margin-top:4.010417cqw}
 .eo-join-flow{margin-top:1.979167cqw!important}
 .eo-join-flow li{min-height:3.541667cqw;margin-bottom:1.145833cqw}
 .eo-join-flow li span{font-family:Roboto,sans-serif;font-weight:500}
 .eo-fee-card{padding:1.5625cqw;min-height:12.1875cqw}
 .eo-contact-guide .eo-fee-card h4{font-size:28px;line-height:1.5;margin:0 0 1.041667cqw;padding-bottom:1.041667cqw}
 .eo-contact-guide .eo-fee-card p{font-size:24px;line-height:2}
 .eo-guide-notes li{margin-bottom:0}
 .eo-guide-notes-gray{background:var(--gray);padding:2.083333cqw}
 .eo-contact-guide .eo-guide-notes-gray h3{margin-top:0}
 .eo-contact-form th,.eo-contact-form td{font-size:18px}
 .eo-contact-form .attention::after{font-size:14px}
}
@media(min-width:1200px){
 .eo-message-rest p:nth-last-child(-n+2){margin-top:0!important}
 .eo-message-statements .eo-statement-cards{margin-top:4.21875cqw!important}
 .eo-message-statements{padding-bottom:3.385417cqw}
 .eo-person-card h3{font-size:26px;line-height:1.5}
 .eo-person-en{font-family:Roboto,sans-serif;font-weight:700;font-size:24px}
 .eo-person-company,.eo-person-url{font-size:18px;line-height:1.666667}
 .eo-footer-sitemap .eo-nav-column ul{padding-top:.572917cqw}
 .eo-global-footer{padding-bottom:4.114583cqw}
 .eo-activity-tabs:not(.is-compact) a{min-height:4.53125cqw}
 .eo-mentor-flow{padding-bottom:2.135417cqw}
}
@media(min-width:1200px){
 main:has(.eo-monthly-chapters)>.eo-detail-section{padding-top:6.5625cqw}
 main:has(.eo-monthly-chapters)>.eo-detail-section .eo-detail-gallery{margin-top:2.96875cqw}
 main:has(.eo-monthly-chapters)>.eo-monthly-chapters{padding-top:7.239583cqw}
 .eo-forum-training{margin-top:3.697917cqw}
 #fees>h3:last-of-type{margin-top:4.166667cqw}
 #fees>.eo-guide-notes-gray{margin-top:42px}
 .eo-contact-guide #fees{margin-bottom:6.354167cqw}
 .eo-contact-form>.eo-page-heading{margin-bottom:50px}
 .eo-contact-form td{padding-block:12px}
 .eo-contact-form .mailform-tbl tr:first-child td{padding-top:50px}
 .eo-contact-form input[type=text],.eo-contact-form input[type=email],.eo-contact-form input[type=url],.eo-contact-form input[type=tel]{height:65px}
 .eo-contact-form textarea{display:block}
 .eo-contact-form #submit-button{margin-top:70px}
 .eo-contact-form input[type=submit],.eo-contact-form input[type=button]{font-size:28px;font-weight:700;line-height:1.5;min-height:84px;padding-block:18px}
}
@media(min-width:1200px){
 /* Preserve page-specific section spacing when applying the shared detail rules. */
 .eo-global-intro{padding-top:.260417cqw}
 .eo-global-stats{padding-top:4.791667cqw;padding-bottom:4.535417cqw}
 .eo-global-values{padding-top:4.583333cqw}
 .eo-global-purpose{padding-top:5.9375cqw}
 .eo-global-entry{padding-top:7.916667cqw}
 .eo-japan-origin{padding-bottom:4.135417cqw}
 .eo-japan-network{padding-bottom:5.066667cqw}
 .eo-west-origin{padding-bottom:4.914583cqw}
 .eo-west-data{padding-bottom:6.079167cqw}
 .eo-west-statements{padding-top:5.239583cqw}
 .eo-people-section:not(.eo-history){background:linear-gradient(to bottom,#fff 0 18.90625cqw,var(--gray) 18.90625cqw)}
 .eo-people-section:not(.eo-history) .eo-people-grid{margin-top:7.041667cqw}
}

@font-face{font-family:Roboto;src:url('../home/roboto-300.woff2') format('woff2');font-weight:300;font-style:normal;font-display:swap}
.eo-chapters,.eo-global-map span,.eo-network-links span{font-family:Roboto,sans-serif;font-weight:300}
@media(min-width:801px){.eo-japan-chapters li{font-size:clamp(12px,1.145833vw,22px)}}

/* Homepage Read more: PSD pill dimensions and independently centered label. */
.eo-about .eo-pill{position:relative;gap:0;height:40px;min-height:40px;width:186px;font-size:16px;line-height:1;border-radius:999px;}
.eo-about .eo-pill span{position:absolute;right:13px;top:50%;display:flex;transform:translateY(-50%);}
.eo-about .eo-pill .eo-icon-arrow{width:16px;height:16px;}
.eo-about .eo-pill:hover span{transform:translate(4px,-50%);}
@media(min-width:1200px){.eo-about .eo-pill{width:9.6875cqw;height:2.083333cqw;min-height:2.083333cqw;font-size:.833333cqw;}.eo-about .eo-pill span{right:.677083cqw;}.eo-about .eo-pill .eo-icon-arrow{width:.833333cqw;height:.833333cqw;}}

@media(min-width:1200px){.eo-about{padding-bottom:10.198568cqw;}}
/* NEWS category controls and pagination measured from PSD. */
@media(min-width:1200px){
.eo-blog-list .eo-news-tabs{gap:.416667cqw;margin:0 0 2.604167cqw;}
.eo-blog-list .eo-news-tabs a{box-sizing:border-box;display:flex;align-items:center;justify-content:center;width:9.479167cqw;height:3.229167cqw;padding:0;font-size:1.041667cqw;}
.eo-blog-list .eo-news-grid{margin-top:2.604167cqw;}
.eo-blog-list .eo-pagination,.eo-people-pagination{gap:.364583cqw;}
.eo-blog-list .eo-pagination .page-numbers,.eo-people-pagination .page-numbers{box-sizing:border-box;width:3.28125cqw;min-width:3.28125cqw;height:3.28125cqw;min-height:3.28125cqw;padding:0;font-family:"Noto Sans JP",sans-serif;font-size:1.354167cqw;font-weight:700;line-height:1;}
}

/* Article detail: supplied NEWS detail PSD; shared by both post collections. */
.eo-news-detail .eo-article-image{aspect-ratio:7/4;object-fit:cover;}
@media(min-width:1200px){
.eo-news-detail{margin-top:-.625cqw;}
.eo-news-detail>.eo-news-meta{margin-top:0;height:2.34375cqw;font-size:1.105521cqw;gap:.78125cqw;}
.eo-news-detail>.eo-news-meta span{font-size:.967292cqw;min-height:2.34375cqw;display:inline-flex;align-items:center;padding:0 .833333cqw;}
.eo-news-detail .eo-article-title{font-size:2.083333cqw;line-height:1.6;padding:1.25cqw 0 0;margin-bottom:5cqw;}
.eo-news-detail .eo-article-title::after{margin-top:2.5cqw;width:5.364583cqw;height:.208333cqw;}
.eo-news-detail .eo-article-body{width:40.104167cqw;font-size:.9375cqw;line-height:2.222222;}
.eo-news-detail .eo-article-image{margin-bottom:0;}
.eo-news-detail .eo-article-body h2{font-size:1.458333cqw;line-height:1.6;margin:2.604167cqw 0 1.666667cqw;}
}

@media(min-width:1200px){.eo-news-detail .eo-article-body p{margin-block:2.083333cqw;}}

/* Archive titles use h2, unlike homepage cards (h3). Keep their hover treatment consistent. */
.eo-news-card a:hover h2{text-decoration:underline;text-underline-offset:4px;}

/* PSD text audit: preserve the supplied type sizes and single-line statistic. */
@media(min-width:1200px){
 .eo-japan-description{font-size:.9375cqw;line-height:2.222222;}
 .eo-global-stat-grid li{gap:.979167cqw;}
 .eo-purpose-grid .eo-detail-copy p{font-size:1.041667cqw;line-height:2;}
 .eo-purpose-grid .eo-detail-copy strong{font-weight:700;}
}

/* Activity policy numbers: independent line box, vertically centered in each row. */
.eo-policies li::before{font-family:Roboto,sans-serif;font-weight:500;line-height:1;top:50%;transform:translateY(-50%);}
@media(min-width:1200px){
 .eo-policies{padding-top:0;}
 .eo-policies li{box-sizing:border-box;min-height:3.59375cqw;padding:.755208cqw 1.2cqw .755208cqw 4.21875cqw;margin:.572917cqw 0;}
 .eo-policies li::before{font-size:2.083333cqw;left:.989583cqw;}
}

@media(min-width:1200px){.eo-subpage main:has(.eo-monthly-chapters)>.eo-join{padding-top:5.3125cqw;}}

/* PSD uses drawn circles rather than the browser's small disc marker. */
.eo-mentor-benefits ul{list-style:none;padding-inline:1.666667em;}
.eo-mentor-benefits li{position:relative;padding-left:1.444444em;}
.eo-mentor-benefits li::before{content:"";position:absolute;left:0;top:calc(.5lh - .527778em);width:1.055556em;height:1.055556em;border-radius:50%;background:currentColor;}

/* Board PSD: English names use the supplied light gray. */
.eo-board .eo-person-en{color:#bfbfbf;}
/* Archive tab pointer: 27 x 20px, overlapping the tab by 6px at 1920px. */
@media(min-width:1200px){
 .eo-blog-list .eo-news-tabs a[aria-current]::after{left:50%;top:calc(100% - .3125cqw);transform:translateX(-50%);border-style:solid;border-width:1.041667cqw .703125cqw 0;border-color:var(--navy) transparent transparent;}
}

/* Homepage NEWS typography from index02 PSD (1920px canvas). */
@media(min-width:1200px){
 .eo-news .eo-section-toolbar>p{font-size:1.5625cqw;}
 .eo-news .eo-small-button{font-size:1.041667cqw;height:2.083333cqw;min-height:2.083333cqw;padding-block:0;}
}

/* JOIN US already supplies the space below archive pagination. */
.eo-blog-list{padding-bottom:0;}

/* Contact lists: match the drawn full-size bullets and PSD text spacing. */
.eo-guide-notes ul{list-style:none;padding-left:0;}
.eo-guide-notes li{position:relative;padding-left:1em;}
.eo-guide-notes li::before{content:"";position:absolute;left:.055556em;top:calc(.5lh - .444444em);width:.888889em;height:.888889em;background:currentColor;border-radius:50%;}
@media(min-width:1200px){
 .eo-policies{display:grid;gap:.572917cqw;margin:1.666667cqw 0 0;}
 .eo-policies li{margin:0;}
 #fees>.eo-guide-notes-gray{margin-top:2.916667cqw;}
 .eo-contact-guide .eo-guide-notes-gray h3{margin-bottom:.78125cqw;}
}

/* Homepage news cards: type sizes and weights from index02 PSD. */
.eo-news .eo-news-meta time{font-family:Roboto,sans-serif;font-weight:500;}
.eo-news .eo-news-meta>span{font-weight:500;}
@media(min-width:1200px){
 .eo-news .eo-news-card h3{font-size:1.145833cqw;}
 .eo-news .eo-news-card p{font-size:.833333cqw;line-height:1.75;}
 .eo-news .eo-news-meta{font-size:.833333cqw;}
 .eo-news .eo-news-meta>span{font-size:.729167cqw;}
}

/* Cross-page final typography audit: shared variants must retain PSD values. */
.eo-news-meta time{font-family:Roboto,sans-serif;font-weight:500;}
.eo-news-meta>span{font-weight:500;}
.eo-news-tabs a{font-weight:400;}
.eo-person-en{color:#bfbfbf;}
.eo-flow-steps span{font-family:Roboto,sans-serif;font-weight:500;}
.eo-mentor-benefits small{font-family:"Noto Sans JP",sans-serif;font-weight:700;}
@media(min-width:1200px){
 .eo-members .eo-small-button{font-size:1.041667cqw;}
 .eo-network-links h3{font-size:3.645833cqw;}
 .eo-blog-list .eo-news-card h2{font-size:1.145833cqw;line-height:1.5;}
 .eo-blog-list .eo-news-card p{font-size:.833333cqw;line-height:1.75;}
 .eo-blog-list .eo-news-meta{font-size:.833333cqw;}
 .eo-blog-list .eo-news-meta>span{font-size:.729167cqw;}
 .eo-rich-content h2.eo-page-heading{font-size:2.083333cqw;}
}

/* Long names and captions must stay inside their responsive card. */
.eo-person-card h3{overflow-wrap:anywhere;}
