/* Disclosure reveals content below, without reflowing the two intro columns. */
body.homepage-refresh-page #about.homepage-about .homepage-about__intro,
body.homepage-refresh-page #about.homepage-about--expanded .homepage-about__intro { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-column: 1 / -1; gap: 0 48px; }
body.homepage-refresh-page #about.homepage-about .homepage-about__intro > .homepage-about__text-label { display: none; }
body.homepage-refresh-page #about.homepage-about .homepage-about__capabilities { grid-column: 1 / -1; padding-top: 24px; border-top: 1px solid #3b417326; }
body.homepage-refresh-page #about.homepage-about .homepage-about__capabilities::before { display: none; }

/* Category composition and photographs from the approved Vercel reference. */
body.homepage-refresh-page .homepage-voice-categories { padding: 54px 0; color: #3b4173; background: var(--homepage-canvas, #f6f6f7); scroll-margin-top: 110px; font-family: Roboto, sans-serif; }
.homepage-voice-categories__inner { width: min(1480px, calc(100% - 64px)); margin-inline: auto; }
.homepage-voice-categories__heading { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); align-items: end; gap: 48px; margin-bottom: 34px; }
body.homepage-refresh-page .homepage-voice-categories__kicker { margin: 0 0 16px; color: #c1492e; font-size: 12px; font-weight: 700; line-height: 1.4; letter-spacing: .15em; text-transform: uppercase; }
body.homepage-refresh-page #voice-categories h2 { margin: 0; color: #3b4173; font: 700 clamp(32px, 3.2vw, 50px)/1.08 Roboto, sans-serif; letter-spacing: -.04em; text-transform: none; }
body.homepage-refresh-page .homepage-voice-categories__lead { max-width: 420px; margin: 0 0 3px; justify-self: end; color: #737b96; font-size: 17px; line-height: 1.55; }
.homepage-voice-categories__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
body.homepage-refresh-page .voice-category-card { position: relative; display: block; min-width: 0; min-height: 360px; padding: 28px; overflow: hidden; isolation: isolate; border: 1px solid #3b41730c; border-radius: 24px; background: #fbfaf7; box-shadow: 0 13px 34px #2737780d; color: #3b4173; text-decoration: none; transition: transform .25s ease, box-shadow .25s ease; }
.voice-category-card::before { position: absolute; z-index: 1; inset: 0; background: linear-gradient(90deg, #fbfaf7 0 35%, #fbfaf7f0 47%, #fbfaf77a 59%, #fbfaf700 72%); content: ''; pointer-events: none; }
.voice-category-card > img { position: absolute; z-index: 0; inset: auto -3% -1% auto; width: 76%; height: 78%; object-fit: contain; object-position: right bottom; mix-blend-mode: multiply; filter: contrast(1.035) saturate(.94); }
.voice-category-card--male > img { right: -5%; width: 97%; height: 72%; }
.voice-category-card--female > img { right: -4%; width: 59%; height: 89%; }
.voice-category-card--parody > img { right: -5%; width: 74%; height: 82%; }
.voice-category-card--foreign > img { right: -6%; width: 66%; height: 88%; }
.voice-category-card--children > img { right: -5%; width: 70%; height: 86%; }
.voice-category-card__copy { position: relative; z-index: 2; max-width: 61%; }
body.homepage-refresh-page #voice-categories .voice-category-card h3 { margin: 0; color: #3b4173; font: 600 clamp(28px, 2.5vw, 38px)/1.02 Roboto, sans-serif; letter-spacing: -.025em; text-transform: none; }
body.homepage-refresh-page #voice-categories .voice-category-card p { max-width: 24ch; margin: 15px 0 0; color: #66718b; font-size: 16px; font-weight: 400; line-height: 1.5; }
body.homepage-refresh-page .voice-category-card__action { position: absolute; z-index: 3; left: 28px; bottom: 24px; display: inline-flex; align-items: center; gap: 12px; padding: 5px 8px 5px 0; border-radius: 20px; background: #fbfaf7; box-shadow: 12px 0 22px 10px #fbfaf7; color: #c1492e; font-size: 13px; font-weight: 700; line-height: 1.4; }
.voice-category-card__action::before { order: 1; width: 26px; height: 1px; background: currentColor; opacity: .45; content: ''; }
.voice-category-card__action i { order: 2; display: grid; width: 24px; height: 24px; place-items: center; border: 1px solid currentColor; border-radius: 50%; }
.voice-category-card--children { background: #fdf7f3; }
.voice-category-card--children::before { background: linear-gradient(90deg, #fdf7f3 0 35%, #fdf7f3ef 47%, #fdf7f378 60%, #fdf7f300 74%); }
body.homepage-refresh-page .voice-category-card--famous { background: #3b4173; }
.voice-category-card--famous::before { background: radial-gradient(circle at 85% 20%, #505b86, #3b4173 65%); }
.voice-category-card__famous-art { position: absolute; z-index: 1; inset: 22% 0 0; display: grid; place-items: center; color: #ffffff26; pointer-events: none; }
.voice-category-card__famous-art strong { position: absolute; font-size: clamp(90px, 8vw, 140px); font-weight: 800; letter-spacing: -.08em; }
.voice-category-card__famous-art svg { width: 48%; }
body.homepage-refresh-page #voice-categories .voice-category-card--famous h3 { color: #fff; }
body.homepage-refresh-page #voice-categories .voice-category-card--famous p { color: #ffffffb8; }
body.homepage-refresh-page .voice-category-card--famous .voice-category-card__action { background: #3b4173; box-shadow: 12px 0 22px 10px #3b4173; color: #f2a18f; }
.voice-category-card:hover { transform: translateY(-4px); box-shadow: 0 18px 38px #27377819; }
.voice-category-card:focus-visible { outline: 2px solid #c1492e; outline-offset: 5px; }
.homepage-voice-categories__parody { display: grid; grid-template-columns: minmax(140px, .4fr) minmax(0, 1fr); gap: 32px; margin-top: 32px; padding-top: 26px; border-top: 1px solid #3b417326; }
.homepage-voice-categories__parody .homepage-voice-categories__kicker { margin-top: 4px; }
body.homepage-refresh-page .homepage-voice-categories__parody p { margin: 0; color: #3b4173; font-size: 17px; line-height: 1.6; }
@media (max-width: 1100px) {
    .homepage-voice-categories__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body.homepage-refresh-page .voice-category-card { min-height: 330px; }
}
@media (max-width: 900px) {
    .homepage-voice-categories__inner { width: calc(100% - 48px); }
    .homepage-voice-categories__heading { grid-template-columns: minmax(0, 1fr); gap: 18px; }
    body.homepage-refresh-page .homepage-voice-categories__lead { justify-self: start; max-width: 580px; }
}
@media (max-width: 760px) {
    body.homepage-refresh-page #about.homepage-about .homepage-about__intro { grid-template-columns: minmax(0, 1fr); gap: 0; }
}
@media (max-width: 600px) {
    body.homepage-refresh-page .homepage-voice-categories { padding-block: 40px; }
    .homepage-voice-categories__grid { grid-template-columns: minmax(0, 1fr); gap: 16px; }
    body.homepage-refresh-page .voice-category-card { min-height: 310px; padding: 24px; }
    .voice-category-card__copy { max-width: 58%; }
    body.homepage-refresh-page .voice-category-card__action { left: 24px; bottom: 21px; }
    .homepage-voice-categories__parody { grid-template-columns: minmax(0, 1fr); gap: 0; }
    body.homepage-refresh-page .homepage-voice-categories__parody p { font-size: 16px; }
}
/* Keep both desktop rows visible on laptop-height screens, without scaling text
 * or clipping the category descriptions. Mobile keeps its comfortable cards. */
@media (min-width: 901px) {
    body.homepage-refresh-page .homepage-voice-categories { padding-block: 24px; }
    .homepage-voice-categories__inner { width: var(--homepage-responsive-shell, min(1268px, calc(100% - 48px))); }
    .homepage-voice-categories__heading { gap: 32px; margin-bottom: 20px; }
    body.homepage-refresh-page .homepage-voice-categories__kicker { margin-bottom: 10px; font-size: 11px; }
    body.homepage-refresh-page #voice-categories h2 { font-size: clamp(30px, 2.8vw, 42px); }
    body.homepage-refresh-page .homepage-voice-categories__lead { font-size: 14px; line-height: 1.45; }
    .homepage-voice-categories__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
    body.homepage-refresh-page .voice-category-card {
        box-sizing: border-box;
        min-height: clamp(200px, calc((100svh - 360px) / 2), 250px);
        padding: 18px 20px 56px;
        border-radius: 20px;
    }
    .voice-category-card__copy { max-width: 72%; }
    body.homepage-refresh-page #voice-categories .voice-category-card h3 { font-size: clamp(24px, 2.1vw, 30px); line-height: 1.05; }
    body.homepage-refresh-page #voice-categories .voice-category-card p { margin-top: 10px; font-size: 14px; line-height: 1.4; }
    .voice-category-card--famous .voice-category-card__copy { max-width: 90%; }
    body.homepage-refresh-page .voice-category-card__action { left: 20px; bottom: 14px; gap: 9px; font-size: 12px; }
    .voice-category-card__action::before { width: 20px; }
    .voice-category-card__famous-art strong { font-size: 100px; }
    .homepage-voice-categories__parody { gap: 24px; margin-top: 20px; padding-top: 18px; }
    body.homepage-refresh-page .homepage-voice-categories__parody p { font-size: 14px; line-height: 1.5; }
}

@media (prefers-reduced-motion: reduce) {
    .voice-category-card { transition: none; }
    .voice-category-card:hover { transform: none; }
}
