/* Voices: native disclosures, source-first stories, scoped to /cases/. */
.voices-main {background:#f7f2e8;color:#132238;}
.voices-wrap {width:min(1120px,calc(100% - 64px));margin-inline:auto;}
.voices-kicker {display:block;font-size:14px;line-height:1.9;font-weight:700;letter-spacing:.04em;color:#8b3b22;}
.voices-hero {padding:64px 0 88px;border-bottom:1px solid #cbc5b9;background:#f7f2e8;}
.voices-hero__layout {display:grid;grid-template-columns:1.2fr 1fr;gap:72px;align-items:center;}
body.site-shell .voices-hero h1 {font-family:var(--serif);font-size:clamp(32px,3.6vw,49px);line-height:1.65;letter-spacing:.02em;margin:22px 0 28px;}
.voices-hero h1 .jp-phrase {display:block;}
.voices-hero p {margin:0 0 28px;max-width:32em;}
.voices-text-link {display:inline-flex;gap:20px;align-items:center;min-height:48px;font-size:17px;font-weight:700;text-decoration:underline;text-underline-offset:7px;}
.voices-text-link:hover {color:#8b3b22;}
.voices-hero__quote {margin:0;padding:40px 36px;background:#132238;color:#fffdf8;box-shadow:14px 14px 0 #e6ddcd;}
.voices-hero__quote .voices-kicker {color:#edc99f;}
.voices-hero__quote blockquote {font-family:var(--serif);font-size:clamp(25px,2.7vw,36px);line-height:1.8;margin:25px 0 20px;}
.voices-hero__quote em {font-style:normal;color:#edc99f;}
.voices-hero__quote figcaption {font-size:15px;line-height:1.8;color:#d5dae1;}
.voices-hero__quote a {display:inline-flex;gap:24px;min-height:48px;align-items:center;border-bottom:1px solid #aeb8c4;margin-top:20px;font-size:16px;}
.voices-hero__quote a:hover {color:#edc99f;}
.voices-library {padding-block:88px;scroll-margin-top:110px;}
.voices-section-head {display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:end;margin-bottom:36px;}
body.site-shell main .voices-section-head h2 {font-family:var(--serif);font-size:clamp(28px,2.8vw,38px);line-height:1.65;margin:18px 0 0;}
.voices-section-head p {margin:0;}
.voices-filters {display:flex;flex-wrap:wrap;gap:10px;margin:36px 0 20px;}
.voices-filters[hidden],.voice-story[hidden],.voice-close[hidden] {display:none;}
.voices-filters button {font:inherit;font-size:15px;line-height:1.6;min-height:48px;border:1px solid #9a9c9b;border-radius:40px;background:#fffdf8;color:#132238;padding:10px 20px;cursor:pointer;}
.voices-filters button[aria-pressed="true"] {background:#132238;color:#fffdf8;border-color:#132238;}
.voices-filters button:hover {box-shadow:inset 0 0 0 1px #132238;}
body.site-shell main .voices-result {font-size:15px!important;color:#475263;margin:20px 0;}
.voices-grid {display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start;}
.voice-story {border:1px solid #cbc5b9;background:#fffdf8;scroll-margin-top:110px;min-width:0;}
.voice-story summary {display:flex;flex-direction:column;list-style:none;cursor:pointer;padding:32px;min-height:340px;}
.voice-story summary::-webkit-details-marker {display:none;}
.voice-story__meta {display:flex;flex-direction:column;gap:8px;font-size:14px;line-height:1.7;color:#475263;}
.voice-story__meta > span:first-child {font-family:var(--label);font-size:13px;letter-spacing:.12em;color:#8b3b22;font-weight:700;}
body.site-shell main .voice-story h3 {font-family:var(--serif);font-size:25px;line-height:1.65;margin:20px 0;}
.voice-story__excerpt {font-size:18px;line-height:1.9;display:block;margin-bottom:28px;}
.voice-story__toggle {display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:auto;padding-top:20px;border-top:1px solid #cbc5b9;color:#8b3b22;font-size:15px;font-weight:700;}
.voice-story__toggle i {font-style:normal;font-size:24px;line-height:1;}
.voice-story__fold {display:none;}
.voice-story[open] {grid-column:1/-1;border-color:#8b3b22;}
.voice-story[open] summary {min-height:0;max-width:864px;margin-inline:auto;}
.voice-story[open] .voice-story__read {display:none;}
.voice-story[open] .voice-story__fold {display:inline;}
.voice-story[open] .voice-story__toggle i {transform:rotate(45deg);}
.voice-story[open] .voice-story__excerpt {margin-bottom:10px;}
.voice-story__detail {max-width:864px;margin-inline:auto;padding:0 32px 40px;}
.voice-story__narrative {padding:16px 0 32px;}
.voice-story__narrative section {margin-top:28px;}
.voice-story__narrative h4 {font-size:21px;line-height:1.7;margin:0 0 12px;font-weight:700;}
.voice-story__narrative p {margin:0;}
.voice-story__original {margin:12px 0 24px;background:#f0ece2;padding:28px 32px;border-left:3px solid #b0885c;}
.voice-story__original figcaption {display:flex;flex-direction:column;gap:4px;font-size:16px;font-weight:700;line-height:1.9;}
.voice-story__original figcaption span {font-size:14px;color:#475263;font-weight:400;}
.voice-story__original blockquote {margin:24px 0 0;font-style:normal;}
.voice-story__original p {white-space:pre-line;margin:0;overflow-wrap:anywhere;}
.voice-story__actions {display:flex;flex-wrap:wrap;gap:12px 32px;justify-content:space-between;align-items:center;}
.voice-close {background:transparent;color:#475263;font:inherit;font-size:15px;min-height:48px;padding:8px 0;border:0;border-bottom:1px solid #8c969f;cursor:pointer;}
.voices-main :is(button,summary,a):focus-visible {outline:3px solid #8b3b22;outline-offset:5px;}
.voices-hero__quote a:focus-visible {outline-color:#edc99f;}
.voice-story summary:hover h3 {color:#8b3b22;}
.voices-invitation {padding:72px 0;background:#e5dfd2;}
.voices-invitation__inner {display:grid;grid-template-columns:1fr auto;gap:48px;align-items:center;}
body.site-shell main .voices-invitation h2 {font-family:var(--serif);font-size:clamp(28px,2.7vw,36px);line-height:1.65;margin:18px 0 24px;}
.voices-invitation p {margin:0;}
.voices-legacy {padding-block:72px;}
.voices-legacy > h2 {font-family:var(--serif);margin:16px 0;}
.voices-legacy__details {border-block:1px solid #bcb5a8;margin-top:28px;}
.voices-legacy__details > summary {padding:24px 0;cursor:pointer;font-size:20px;font-weight:700;display:flex;justify-content:space-between;list-style:none;}
.voices-legacy__details > summary::-webkit-details-marker {display:none;}
.voices-legacy__details .content-wide {width:100%;}
.voices-legacy .case-stories {padding-top:28px;}
@media(max-width:900px){.voices-hero__layout{gap:36px;grid-template-columns:1.1fr 1fr;}.voices-hero__quote{padding:28px;}.voices-section-head{gap:32px;}.voices-invitation__inner{grid-template-columns:1fr;gap:28px;}.voices-invitation .site-button{justify-self:start;}}
@media(max-width:760px){.voices-wrap{width:calc(100% - 40px);}.voices-hero{padding:40px 0 56px;}.voices-hero__layout,.voices-section-head{grid-template-columns:1fr;gap:32px;}body.site-shell .voices-hero h1{font-size:32px;line-height:1.7;}.voices-hero__quote{margin-right:10px;box-shadow:10px 10px 0 #e6ddcd;}.voices-hero__quote blockquote{font-size:30px;}.voices-library{padding-block:56px;}.voices-grid{grid-template-columns:1fr;gap:18px;}.voice-story summary{padding:24px;min-height:0;}body.site-shell main .voice-story h3{font-size:24px;}.voice-story__detail{padding:0 24px 28px;}.voice-story__original{padding:24px 20px;margin-inline:-4px;}.voices-filters{gap:8px;}.voices-filters button{font-size:14px;padding:10px 14px;}.voices-invitation,.voices-legacy{padding-block:56px;}.voices-invitation .site-button{width:100%;}.voice-story__actions .voices-text-link{font-size:16px;}.voice-story__narrative h4{font-size:20px;}.voices-legacy .case-story{padding-inline:0;}}
/* Respect Japanese kinsoku rules in disclosure summaries and full quotations. */
.voices-main :is(summary,h4,.voice-story__excerpt,.voice-story__original p) {line-break:strict;word-break:normal;overflow-wrap:normal;}
@media(min-width:761px) and (max-width:1000px){.voices-grid{grid-template-columns:1fr;}.voice-story summary{min-height:0;}}
@media(max-width:760px){body.site-shell main .voice-story h3{font-size:22px;}}
/* The listing now links to full pages. Native summary styles above are retained
   only for compatibility while a revision is deployed. */
.voice-story__link {display:flex;flex-direction:column;min-height:340px;padding:32px;color:#132238;text-decoration:none;}
.voice-story__link:hover h3 {color:#8b3b22;}
.voice-story__link:focus-visible {outline:3px solid #8b3b22;outline-offset:4px;}
.voice-reading {width:min(800px,calc(100% - 64px));margin-inline:auto;}
.voice-back {display:inline-flex;min-height:48px;align-items:center;font-size:15px;text-decoration:underline;text-underline-offset:5px;color:#475263;margin-bottom:24px;}
.voice-detail-hero {padding:36px 0 44px;border-bottom:1px solid #cbc5b9;}
body.site-shell .voice-detail-hero h1 {font-family:var(--serif);font-size:clamp(30px,3.1vw,44px);line-height:1.7;letter-spacing:0;margin:20px 0 24px;}
.voice-detail-industry {font-size:15px;line-height:1.8;color:#475263;display:block;}
.voice-detail-pullquote {margin:32px 0 0;padding:20px 24px;border-left:3px solid #ad895c;background:#fffdf8;}
.voice-detail-pullquote p {margin:0;}
.voice-detail-body {padding-block:12px 56px;}
.voice-detail-body > section {margin-top:36px;}
body.site-shell main .voice-detail-body h2 {font-family:var(--serif);font-size:26px;line-height:1.7;margin:0 0 16px;}
.voice-detail-body p {margin:0;}
.voice-detail-body .renew-small {margin-top:36px;}
.voice-detail-action {padding:48px 0;background:#e5dfd2;}
body.site-shell main .voice-detail-action h2 {font-family:var(--serif);font-size:30px;line-height:1.7;margin:16px 0 20px;}
.voice-detail-action p {margin:0 0 24px;}
.voice-related {padding-block:56px;}
.voice-related > h2 {font-family:var(--serif);margin:16px 0 28px;}
.voice-related__grid {display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px;}
.voice-related__grid > a {display:flex;flex-direction:column;padding:28px;border:1px solid #cbc5b9;background:#fffdf8;}
.voice-related__grid > a > span:first-child {font-size:14px;line-height:1.8;color:#475263;}
body.site-shell main .voice-related__grid h3 {font-family:var(--serif);font-size:23px;line-height:1.7;margin:16px 0 24px;}
.voice-related__grid .voices-text-link {font-size:15px;margin-top:auto;}
.voice-related__grid i {font-style:normal;}
.voice-detail-main .breadcrumb {flex-wrap:wrap;line-height:1.8;}
@media(max-width:760px){.voice-story__link{padding:24px;min-height:0;}.voice-reading{width:calc(100% - 40px);}.voice-detail-hero{padding:24px 0 32px;}body.site-shell .voice-detail-hero h1{font-size:27px;line-height:1.75;}.voice-detail-pullquote{padding:20px;}.voice-detail-body{padding-bottom:40px;}.voice-detail-body>section{margin-top:28px;}body.site-shell main .voice-detail-body h2{font-size:23px;}body.site-shell main .voice-detail-action h2{font-size:27px;}.voice-detail-action{padding:40px 0;}.voice-detail-action .site-button{width:100%;}.voice-related{padding-block:40px;}.voice-related__grid{grid-template-columns:1fr;gap:18px;}.voice-related__grid>a{padding:24px;}body.site-shell main .voice-related__grid h3{font-size:22px;}}
@media(min-width:761px) and (max-width:1000px){.voice-story__link{min-height:0;}}
