/* English typography and language navigation; approved artwork remains unchanged. */
.language-utility{display:flex;justify-content:space-between;align-items:center;padding:var(--s1) var(--s4);border-bottom:1px solid var(--line);background:var(--white);color:var(--muted);font:500 11px/1.5 var(--sans);letter-spacing:.08em}
.language-utility nav{display:flex;align-items:center;gap:var(--s2)}
.language-utility a{color:var(--navy);text-decoration:underline;text-underline-offset:4px;padding:4px 0}
.language-utility [aria-current]{color:var(--navy);font-weight:700}
html[lang=en]{scroll-padding-top:120px}
html[lang=en] body{letter-spacing:0}
html[lang=en] body.review-site :is(h1,h2,h3,h4,p,li,td,th,a,span,div){word-break:normal;overflow-wrap:normal}
html[lang=en] body.review-site :is(h1,h2,h3,h4){letter-spacing:0;line-height:1.25;text-wrap:pretty}
html[lang=en] body.review-site p{letter-spacing:0;line-height:1.85}
html[lang=en] body.review-site .r-header-inner{gap:var(--s3)}
html[lang=en] body.review-site #r-site-nav{gap:var(--s3)}
html[lang=en] body.review-site #r-site-nav a{font-size:13px;letter-spacing:0;white-space:nowrap}
html[lang=en] body.review-site .r-companies small{font-size:11px;letter-spacing:0}
html[lang=en] body.review-site .r-company-name small{font-size:11px;letter-spacing:0}
html[lang=en] body.review-site .r-unified-hero h1{font-family:var(--en);font-weight:500;font-size:clamp(44px,4.8vw,76px);line-height:1.12;letter-spacing:-.025em;white-space:normal;text-wrap:pretty;max-width:720px;margin:var(--s3) 0}
html[lang=en] body.review-site .r-unified-hero :is(.eyebrow,.hero-label,.en){font-family:var(--sans);font-size:12px;letter-spacing:.1em;line-height:1.7;color:var(--navy)}
html[lang=en] body.review-site .r-unified-hero .u-copy{width:58%;padding-top:var(--s5);padding-bottom:var(--s5)}
html[lang=en] body.review-site .r-unified-hero .u-body{min-height:0;max-width:560px}
html[lang=en] body.review-site .r-unified-hero .u-body p{font-size:17px;line-height:1.8}
html[lang=en] body.review-site .r-unified-hero .u-body .lead{font-size:15px;line-height:1.75}
html[lang=en] body.review-site .r-unified-hero .u-actions>a{font-size:14px;letter-spacing:0;min-width:0;gap:var(--s2);padding:var(--s2) var(--s3)}
html[lang=en] body.review-site .r-unified-hero .u-actions>.u-secondary{padding-inline:0}
html[lang=en] body.review-site .r-unified-hero .u-actions{gap:var(--s3)}
html[lang=en] body.review-site .english-title-line{display:block;white-space:normal}
html[lang=en] body.review-site :is(.story-copy,.message-text,.philosophy-text) p{max-width:68ch;line-height:1.8}
html[lang=en] body.review-site :is(.svc-card,.risk-card,.reason-card) p{line-height:1.75}
html[lang=en] body.review-site .hero .hero-copy h1{font-family:var(--en);font-size:clamp(44px,4.8vw,76px);line-height:1.12;letter-spacing:-.025em;white-space:normal}
html[lang=en] body.review-site .hero .hero-kicker{font-family:var(--sans);font-size:14px;line-height:1.7;letter-spacing:0;max-width:540px}
html[lang=en] body.review-site.review-amrc .hero .hero-kicker{font-size:12px;letter-spacing:.1em}
html[lang=en] body.review-site .hero .hero-sub{font-family:var(--sans);font-size:17px;line-height:1.8;max-width:540px}
html[lang=en] body.review-site .hero-actions{display:flex;gap:var(--s3);align-items:center;flex-wrap:wrap}
html[lang=en] body.review-site .hero-actions a{font-family:var(--sans);font-size:14px;letter-spacing:0;gap:var(--s2)}
html[lang=en] body.review-site :is(.sec-head h2,.section-heading h2,.symbol-heading h2){font-family:var(--en);font-size:clamp(32px,3.4vw,48px);line-height:1.2}
html[lang=en] body.review-site .brand-story .story-copy :is(h2,h3){font-family:var(--en);font-size:clamp(30px,3vw,44px);line-height:1.25}
html[lang=en] body.review-site :is(.story-phrase,.story-ending,.keep-phrase,.r-phrase){white-space:normal;display:inline}
html[lang=en] body.review-site :is(.co-card h3,.co-card h3 span){font-size:22px;line-height:1.45;letter-spacing:0}
html[lang=en] body.review-site .co-card p{font-size:15px}
html[lang=en] body.review-site :is(.th,.dt){line-height:1.6;letter-spacing:0;white-space:normal}
html[lang=en] body.review-site :is(.td,.dd){line-height:1.8;min-width:0}
html[lang=en] body.review-site :is(.cmp-row,.row){min-width:0}
html[lang=en] body.review-site .english-book-note{grid-column:1/-1;font-size:12px;color:var(--muted);margin-top:var(--s2)}
html[lang=en] body.review-site .room-gallery button{font-size:12px;letter-spacing:0}
html[lang=en] body.review-site .room-gallery [data-play]{min-width:56px}
html[lang=en] body.review-site :is(.stats,.numbers,.stat-grid){gap:var(--s3)}
html[lang=en] body.review-site :is(.stat-value,.stat-num,.num) small{font-size:14px}
@media(max-width:1200px){html[lang=en] body.review-site #r-site-nav{gap:var(--s2)}html[lang=en] body.review-site #r-site-nav a{font-size:12px}}
@media(max-width:1100px){
 html[lang=en] body.review-site .r-unified-hero .u-copy{width:100%;padding:var(--s4) var(--s3)}
 html[lang=en] body.review-site .r-unified-hero h1{font-size:clamp(36px,7vw,56px);max-width:780px;line-height:1.12}
 html[lang=en] body.review-site .hero .hero-copy h1{font-size:clamp(36px,7vw,56px);line-height:1.12}
 html[lang=en] body.review-site .r-unified-hero .u-body{max-width:760px}
 html[lang=en] body.review-site .r-unified-hero .u-body p{font-size:16px}
 html[lang=en] body.review-site .r-unified-hero .u-body .lead{font-size:14px}
 html[lang=en] body.review-site .r-unified-hero .u-actions{gap:var(--s2)}
 html[lang=en] body.review-site .r-unified-hero .u-actions>a{font-size:13px;min-height:48px;padding:var(--s2);white-space:normal}
 html[lang=en] body.review-site .r-unified-hero .u-actions>.u-secondary{padding-inline:0}
}
@media(max-width:760px){
 .language-utility{padding:var(--s1) var(--s2);font-size:10px}
 html[lang=en] body.review-site .r-companies a{padding-inline:4px;min-width:0}
 html[lang=en] body.review-site .r-companies small{font-size:9px;line-height:1.25;white-space:normal}
 html[lang=en] body.review-site .r-companies b{font-size:11px;white-space:nowrap}
 html[lang=en] body.review-site .r-company-name small{font-size:10px}
 html[lang=en] body.review-site .r-header-inner{gap:var(--s1)}
 html[lang=en] body.review-site .r-brand{min-width:0;flex:1}
 html[lang=en] body.review-site.review-hd .r-company-name span{font-size:14px;white-space:normal}
 html[lang=en] body.review-site .hero .hero-sub{font-size:16px}
 html[lang=en] body.review-site .hero-actions{gap:var(--s2)}
 html[lang=en] body.review-site .hero-actions a{font-size:13px}
 html[lang=en] body.review-site :is(.sec-head h2,.section-heading h2,.symbol-heading h2){font-size:34px}
 html[lang=en] body.review-site .r-unified-hero .hero-label{letter-spacing:.06em;font-size:12px}
 html[lang=en] body.review-site .r-unified-hero :is(.eyebrow,.hero-label,.en){font-size:11px;letter-spacing:.06em}
 html[lang=en] body.review-site .co-card h3{font-size:21px}
 html[lang=en] body.review-site .u-actions{flex-wrap:wrap}
 html[lang=en] body.review-site :is(.th,.dt,td,th){overflow-wrap:anywhere}
 html[lang=en] body.review-hd .co-table,html[lang=en] body.review-hd .co-table tbody{display:block;width:100%}
 html[lang=en] body.review-hd .co-table tr{display:block;border-bottom:1px solid var(--line);padding:var(--s3) 0}
 html[lang=en] body.review-hd .co-table th,html[lang=en] body.review-hd .co-table td{display:block;width:100%;border:0;padding:0;overflow-wrap:normal}
 html[lang=en] body.review-hd .co-table th{margin-bottom:var(--s1)}
 /* English headings need a full row; Japanese's narrow label column cannot fit Philosophy. */
 html[lang=en] body.review-group .thinking .tcard{grid-template-columns:minmax(0,1fr);gap:0;min-width:0}
 html[lang=en] body.review-group .thinking .tcard .en{grid-column:1;grid-row:auto;margin-bottom:var(--s1)}
 html[lang=en] body.review-group .thinking .tcard h3{grid-column:1;grid-row:auto;margin-bottom:var(--s2);min-width:0}
 html[lang=en] body.review-group .thinking .tcard p{grid-column:1;grid-row:auto;min-width:0}
}

/* Consolidated English review: fit full terms without shortening their meaning. */
html[lang=en] body.review-group .conduct .cd-item{min-width:0}
html[lang=en] body.review-group .conduct .cd-item h3{white-space:normal;overflow-wrap:normal;max-width:100%}
@media(max-width:760px){html[lang=en] body.review-site .r-companies .holdings-name{display:block}html[lang=en] body.review-group .thinking .tcard h3{grid-row:1}html[lang=en] body.review-group .thinking .tcard p{grid-row:2}}
@media(max-width:600px){html[lang=en] body.review-group .conduct .cd-grid{grid-template-columns:minmax(0,1fr)}}
