/* Phone layout: keep the editorial identity with a faster, more visual reading rhythm. */
@media screen and (max-width:760px) {
    :root { --mobile-card-radius:12px; --mobile-panel:#2b3227; --mobile-panel-line:#485140; }
    html { scroll-padding-top:96px; }
    .container { width:calc(100% - 40px); }
    .section-space { padding-block:60px; }
    .section-kicker { margin-bottom:26px; font-size:11px; letter-spacing:.09em; gap:14px; }
    .section-heading { margin-bottom:30px; }
    .section-heading h2,.vision-copy h2,.support h2,.why-heading h2,.profile-body-grid>h2,.profile-mentorship h2 {
        font-size:clamp(36px,10.8vw,44px); line-height:1.08; letter-spacing:-.025em; text-wrap:balance;
    }
    .section-heading>p { margin-top:18px; font-size:15px; line-height:1.75; }
    .button { min-height:52px; padding:15px 20px; border-radius:6px; font-size:14px; }
    .button:active { background:var(--olive); border-color:var(--olive); }
    .text-link { font-size:14px; }

    /* Navigation stays available throughout the longer editorial page. */
    .site-header { position:sticky; top:0; background:var(--paper); box-shadow:0 3px 16px #22271e0a; }
    body.admin-bar .site-header { top:var(--wp-admin--admin-bar--height,46px); }
    body.admin-bar .main-nav { max-height:calc(100dvh - 76px - var(--wp-admin--admin-bar--height,46px)); }
    .header-inner { min-height:76px; gap:8px; }
    .brand { gap:8px; min-height:48px; }
    .brand>img { width:29px; height:37px; }
    .brand-wordmark { font-size:28px; }
    .brand-subline { font-size:7px; letter-spacing:.32em; }
    .header-controls { gap:10px; }
    .language-switch { padding:2px; gap:0; background:var(--paper-deep); border:0; border-radius:100px; }
    .language-switch a { min-width:44px; min-height:44px; border-radius:100px; font-size:11px; }
    .language-switch a:hover { box-shadow:none; }
    .menu-toggle { min-width:44px; min-height:44px; border:1px solid var(--line); border-radius:50%; }
    .menu-toggle>span:first-child { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }
    .menu-lines { width:18px; height:11px; }
    .menu-lines::after,.menu-toggle[aria-expanded=true] .menu-lines::before { width:18px; }
    .menu-toggle:active { background:var(--paper-deep); }
    .main-nav { padding:20px 24px 26px; border-radius:0 0 16px 16px; max-height:calc(100dvh - 76px); gap:4px; }
    .main-nav>a:not(.button) { font-size:29px; min-height:52px; }
    .main-nav .nav-support { margin-top:12px; font-size:14px; }

    /* Put the image before the secondary paragraph; keep the primary action above it. */
    .hero { display:flex; flex-direction:column; align-items:stretch; gap:0; padding-block:28px 30px; }
    .hero-copy { display:contents; }
    .hero-copy>.eyebrow { order:1; margin:0 0 19px; font-size:11px; letter-spacing:.045em; line-height:1.65; gap:9px; }
    .eyebrow-line { width:18px; flex-shrink:0; }
    .hero h1 { order:2; margin:0 0 19px; font-size:clamp(36px,10.8vw,46px); line-height:1.04; letter-spacing:-.03em; }
    .hero-intro { order:3; margin:0 0 23px; font-size:16px; line-height:1.65; max-width:none; }
    .hero-actions { order:4; margin:0 0 28px; gap:18px; flex-wrap:wrap; }
    .hero-actions .button { min-height:52px; font-size:14px; padding-inline:19px; gap:22px; }
    .hero-actions .text-link { font-size:13px; gap:8px; }
    .hero-visual { order:5; margin:0 auto 24px; max-width:500px; }
    .hero-photo { height:350px; min-height:0; border-radius:175px 175px 10px 10px; }
    .hero-photo picture img { object-position:50% 100%; }
    .hero-orbit { inset:5px -4px -5px 4px; border-radius:180px 180px 10px 10px; }
    .hero-event { left:12px; right:12px; bottom:12px; padding:16px 14px; border-radius:6px; gap:13px; }
    .hero-event-date { font-size:43px; min-width:73px; padding-right:11px; }
    .hero-event-date small,.hero-event-info small { font-size:11px; line-height:1.6; }
    .hero-event-info { min-width:0; }
    .hero-event-info strong { font-size:23px; line-height:1.12; }
    .hero-event-info>span { display:block; margin-top:7px; font-size:12px; }
    .hero-event .round-arrow { display:none; }
    .hero-description { order:6; margin:0; padding:2px 0 2px 17px; border-left:2px solid var(--gold-light); max-width:none; font-size:16px; line-height:1.7; }
    .hero-signature { display:none; }
    .values-strip { grid-template-columns:repeat(2,minmax(0,1fr)); background:var(--paper-deep); border:1px solid var(--line); border-radius:var(--mobile-card-radius); padding:20px; gap:21px 18px; }
    .values-strip>p { font-size:11px; letter-spacing:.04em; line-height:1.7; }
    .values-strip>span { min-width:0; overflow-wrap:anywhere; font-size:20px; line-height:1.2; padding-left:12px; }

    .vision-grid { gap:30px; }
    .vision-copy h2 { margin-bottom:22px; }
    .vision-copy .lead { font-size:25px; line-height:1.3; }
    .vision-copy>p:not(.lead) { font-size:16px; line-height:1.75; }
    .vision-art { max-width:300px; padding-inline:12px; }
    .vision-art img { max-height:275px; }
    .mission-grid { margin-top:32px; gap:12px; }
    .mission-grid>article { padding:22px 20px 22px 64px; background:var(--white); border:1px solid var(--line); border-radius:10px; }
    .mission-number { left:20px; top:23px; font-size:29px; }
    .mission-grid h3 { font-size:28px; margin-bottom:10px; }
    .mission-grid p { font-size:16px; line-height:1.7; }
    .why-heading { gap:24px; }
    .why-heading .lead { font-size:27px; line-height:1.3; }
    .why-copy { gap:18px; }
    .why-copy p { line-height:1.75; }
    .cost-grid { grid-template-columns:1fr; gap:12px; margin-top:28px; padding-top:24px; }
    .cost-grid article { display:grid; grid-template-columns:30px minmax(0,1fr); column-gap:16px; padding:22px; background:var(--paper); border:1px solid var(--line); border-radius:10px; }
    .cost-number { display:block; grid-column:1; grid-row:1 / 3; font-family:var(--serif); font-size:29px; line-height:1; letter-spacing:0; }
    .cost-grid h3 { min-width:0; overflow-wrap:anywhere; grid-column:2; font-size:29px; margin-top:0; line-height:1.12; }
    .cost-grid p { grid-column:2; font-size:16px; line-height:1.7; margin-top:12px; }
    .why-quote { margin-top:30px; padding:3px 0 3px 20px; border-top:0; border-left:2px solid var(--gold); font-size:29px; line-height:1.22; color:var(--olive); }

    /* Compact artist portraits keep the real people present without long image-only scrolls. */
    .artist-grid { gap:18px; }
    .artist-card { display:grid; grid-template-columns:104px minmax(0,1fr); column-gap:18px; padding:18px; border:1px solid var(--mobile-panel-line); border-radius:var(--mobile-card-radius); background:var(--mobile-panel); }
    .artist-image { grid-column:1; grid-row:1 / 3; width:104px; aspect-ratio:.75; max-height:none; border-radius:6px; align-self:start; }
    .artist-image>img,.artist-card:first-child .artist-image>img { object-position:center 25%; }
    .artist-index { top:auto; bottom:7px; left:7px; padding:2px 5px; font-size:11px; }
    .artist-role { grid-column:2; grid-row:1; margin:0 0 9px; align-self:end; font-size:11px; line-height:1.55; letter-spacing:.06em; }
    .artist-card h3 { grid-column:2; grid-row:2; align-self:start; font-size:33px; line-height:1.02; letter-spacing:-.02em; }
    .artist-tagline { grid-column:1 / -1; margin:18px 0 0; min-height:0; font-size:16px; line-height:1.65; }
    .mentor-profile-link,.artist-bio { grid-column:1 / -1; margin:17px 0 0; }
    .mentor-profile-link { min-height:52px; padding-top:12px; font-size:14px; }
    .artist-bio summary { min-height:53px; font-size:14px; }
    .artist-bio>div { padding-bottom:8px; font-size:16px; line-height:1.75; }
    .artists-closing { margin-top:30px; padding-top:28px; gap:18px; }
    .artists-closing p { font-size:25px; line-height:1.2; }
    .patronage-mark { width:34px; height:34px; }

    .key-moments-list { gap:24px; }
    .featured-event { border-radius:var(--mobile-card-radius); border-color:var(--line); }
    .key-moment .event-art { aspect-ratio:1.6; border-radius:11px 11px 0 0; }
    .event-label { left:16px; top:16px; max-width:calc(100% - 32px); padding:7px 10px; border-radius:3px; font-size:11px; letter-spacing:.055em; }
    .event-copy { padding:24px; }
    .event-date-line { margin-bottom:20px; gap:12px; }
    .event-date-line>span:first-child { font-size:48px; }
    .event-date-line>p { font-size:12px; }
    .event-copy h3 { font-size:36px; line-height:1.05; margin-bottom:15px; }
    .event-location { font-size:14px; line-height:1.65; }
    .event-excerpt { font-size:16px; line-height:1.7; margin-top:15px; margin-bottom:22px; }
    .event-copy .button { width:100%; min-height:52px; justify-content:space-between; font-size:14px; padding-inline:18px; }
    .all-events-link { margin-top:24px; font-size:14px; }
    .event-row { gap:14px; padding-block:20px; }
    .event-row strong { font-size:25px; }

    .support-grid { gap:30px; }
    .support .lead { font-size:26px; line-height:1.3; }
    .support-grid>div:first-child>p:not(.lead):not(.support-note) { font-size:16px; line-height:1.75; }
    .support .button { width:100%; justify-content:space-between; min-height:52px; padding-inline:20px; font-size:14px; }
    .support-note { font-size:14px; line-height:1.7; }
    .support-options { display:grid; gap:12px; padding:0; }
    .support-options>a,.support-options>a:first-child { padding:22px 18px; border:1px solid #c4cbb9; border-radius:10px; background:var(--paper); gap:15px; }
    .support-options h3 { font-size:29px; margin-bottom:10px; }
    .support-options p { font-size:16px; line-height:1.7; }
    .support-number { font-size:27px; min-width:24px; }
    .support-options .icon { width:18px; height:18px; }
    .organization-strip { margin-top:30px; padding-top:24px; gap:8px; }
    .organization-strip>strong { font-size:26px; }
    .support-contact { margin-top:26px; padding-top:23px; }
    .support-contact>a { font-size:clamp(22px,6.5vw,27px); gap:12px; line-height:1.4; }
    .site-footer { padding-top:36px; }
    .footer-statement { font-size:27px; line-height:1.18; }
    .footer-wordmark { margin-top:26px; }
    .footer-bottom { gap:8px 18px; }
    .footer-bottom nav { gap:4px 20px; }

    /* Event pages use a clear date badge, a full cover and compact facts. */
    .event-single,.events-archive { padding-top:30px; }
    .breadcrumb { margin-bottom:24px; font-size:13px; }
    .event-single>.eyebrow { font-size:11px; }
    .event-single-heading { display:block; margin-top:18px; }
    .event-single-heading h1 { font-size:clamp(36px,10.8vw,46px); line-height:1.06; letter-spacing:-.025em; }
    .single-date { display:inline-flex; align-items:center; gap:12px; min-width:0; margin-top:22px; padding:12px 16px; background:var(--paper-deep); border:1px solid var(--line); border-radius:8px; text-align:left; }
    .event-single-heading .single-date>span { font-size:40px; }
    .single-date>p { max-width:none; font-size:12px; line-height:1.5; margin:0; }
    .single-intro { margin-top:22px; font-size:16px; line-height:1.7; }
    .event-cover { margin-block:28px 30px; }
    .event-cover .single-image { aspect-ratio:1.5; border-radius:10px; }
    .event-cover figcaption { margin-top:10px; font-size:12px; }
    .event-body-grid { gap:32px; }
    .event-facts { padding:22px; border-radius:10px; }
    .event-facts dl { display:block; margin-block:18px 24px; }
    .event-facts dl>div { display:grid; grid-template-columns:72px minmax(0,1fr); align-items:baseline; gap:14px; padding-block:12px; }
    .event-facts dt { font-size:12px; }
    .event-facts dd { margin:0; font-size:15px; line-height:1.6; }
    .event-facts .button { width:100%; font-size:14px; }
    .event-access-note { font-size:14px; line-height:1.7; }
    .event-body { font-size:16px; line-height:1.75; }
    .event-body h2 { font-size:34px; line-height:1.1; margin-top:32px; margin-bottom:18px; }
    .single-closing { margin-top:36px; padding-top:30px; }
    .single-closing h2 { font-size:34px; line-height:1.15; }
    .archive-grid { gap:32px; }
    .archive-image { border-radius:10px; aspect-ratio:1.6; }
    .archive-event h3 { font-size:34px; line-height:1.08; }

    /* Place the artist's portrait before the longer introduction on phones. */
    .profile-hero { display:flex; flex-direction:column; align-items:stretch; gap:0; padding-block:28px 48px; }
    .profile-heading { display:contents; }
    .profile-heading .breadcrumb { order:1; align-self:flex-start; margin-bottom:25px; }
    .profile-heading .eyebrow { order:2; margin:0 0 22px; font-size:11px; }
    .profile-heading h1 { order:3; margin:0 0 27px; font-size:68px; line-height:.9; }
    .profile-portrait { order:4; width:100%; max-width:390px; margin:0 auto 28px; }
    .profile-portrait>img { aspect-ratio:1; object-position:center 25%; border-radius:130px 130px 10px 10px; }
    .profile-portrait figcaption { margin-top:12px; font-size:12px; }
    .profile-heading .lead { order:5; font-size:28px; line-height:1.3; max-width:none; }
    .profile-introduction { order:6; margin-top:21px; font-size:16px; line-height:1.75; }
    .profile-heading .button { order:7; margin-top:26px; justify-content:space-between; }
    .profile-body-grid { gap:26px; }
    .profile-body { font-size:16px; line-height:1.75; }
    .profile-body h2 { font-size:32px; }
    .career-timeline { grid-template-columns:1fr; gap:12px; margin-top:32px; }
    .career-timeline article { display:grid; grid-template-columns:90px minmax(0,1fr); align-items:start; gap:16px; border:1px solid var(--line); border-radius:10px; padding:20px 18px; background:var(--white); }
    .career-timeline article>span { font-size:30px; }
    .career-timeline p { margin:0; font-size:15px; line-height:1.7; }
    .profile-mentorship .lead { font-size:27px; line-height:1.4; }
    .resource-card { padding:24px; border-radius:10px; }
    .resource-card h3 { font-size:32px; }
    .resource-card p { font-size:16px; line-height:1.7; }
}
@media screen and (min-width:560px) and (max-width:760px) {
    .cost-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
    .cost-grid article { display:block; padding:20px 17px; }
    .cost-grid h3 { font-size:28px; margin-top:14px; }
    .cost-grid p { font-size:15px; line-height:1.7; }
}
@media screen and (min-width:560px) and (max-width:760px) {
    .hero h1 { font-size:58px; }
    .hero-visual { max-width:580px; }
    .hero-photo { height:420px; }
    .hero-event-info strong { font-size:28px; }
    .hero-event .round-arrow { display:flex; width:44px; height:44px; }
    .artist-card { grid-template-columns:130px minmax(0,1fr); padding:24px; column-gap:24px; }
    .artist-image { width:130px; }
    .artist-card h3 { font-size:40px; }
    .profile-heading h1 { font-size:84px; }
    .profile-portrait { max-width:420px; }
}
@media screen and (max-width:359px) {
    .container { width:calc(100% - 32px); }
    .brand>img { width:26px; height:34px; }
    .brand-wordmark { font-size:25px; }
    .header-controls { gap:7px; }
    .hero-actions { gap:14px; }
    .hero-actions .button { gap:15px; padding-inline:15px; font-size:13px; }
    .hero-actions .text-link { font-size:12px; }
    .hero-photo { height:330px; }
    .hero-event { padding:14px 12px; gap:11px; }
    .hero-event-date { min-width:70px; }
    .hero-event-info strong { font-size:22px; }
    .values-strip { padding:18px 15px; gap:18px 14px; }
    .values-strip>span { font-size:19px; }
    .artist-card { grid-template-columns:90px minmax(0,1fr); gap:0 16px; padding:16px; }
    .artist-image { width:90px; }
    .artist-card h3 { font-size:30px; }
    .event-copy { padding:22px 20px; }
    .event-copy h3 { font-size:33px; }
    .support-options>a,.support-options>a:first-child { padding:20px 15px; gap:12px; }
    .support-options h3 { font-size:27px; }
    .profile-heading h1 { font-size:62px; }
    .career-timeline article { grid-template-columns:1fr; gap:12px; }
}
