/* Phone layouts: shared rhythm, compact chrome and unobstructed content.
   Loaded last so page-specific desktop treatments cannot undo these rules. */
@media (max-width: 700px) {
  body.public-design { margin: 8px 9px; padding-bottom: env(safe-area-inset-bottom, 0px); }
  .public-design .wrap { padding-inline: 20px; }
  .public-design :is(main,section,article,form,fieldset) { min-width: 0; }
  .public-design :is(h1,h2,h3,p,li,dd,a) { overflow-wrap: break-word; }
  .public-design :is(input:not([type=checkbox]):not([type=radio]),select,textarea) { font-size: 16px; max-width: 100%; }
  .public-design :is(.button,.ma-button,.chip) { min-height: 44px; }

  /* A solid, short header avoids washing out the content as it scrolls. */
  .public-design .site-header {
    width: calc(100% + 18px);
    margin: -8px -9px 0;
    padding: 8px 9px 0;
    background: #fffdf7f5;
    border-bottom: 1px solid #193d3312;
  }
  .public-design .site-header::before,.public-design .site-header .brand::before { display: none; }
  .public-design .site-header .nav { min-height: 76px; padding: 10px 16px; gap: 12px; }
  .public-design .site-header .brand { width: clamp(124px,35vw,156px); }
  .public-design .site-header .brand-subheading { height: 14px; line-height: 14px; margin-top: 0; }
  html[lang=en] .public-design .site-header .brand-subheading {
    width: 100%;
    height: 14px;
    font-size: clamp(6.5px,1.85vw,8px);
    line-height: 14px;
    white-space: nowrap;
    text-align: justify;
    text-align-last: justify;
  }
  .public-design .site-header .header-controls { border: 0; border-radius: 0; background: none; box-shadow: none; backdrop-filter: none; -webkit-backdrop-filter: none; }
  .public-design .site-header .header-controls::before,.public-design .site-header .header-controls::after { display: none; }
  .public-design .site-header .header-controls>:is(.header-account-toggle,.header-language-toggle,.menu-toggle) { width: 44px; min-width: 44px; height: 46px; min-height: 46px; padding: 7px; border: 1px solid var(--chrome-edge); background: var(--chrome-glass); box-shadow: var(--chrome-highlight),0 2px 5px #193d3309; }
  .public-design .site-header .header-controls>.header-account-toggle { border-radius: 14px 0 0 14px; }
  .public-design .site-header .header-controls>.header-language-toggle { border-left: 0; border-radius: 0 14px 14px 0; }
  .public-design .site-header .header-controls>.menu-toggle { margin-left: 10px; border-radius: 14px; background: #e8eddd; }
  .public-design .site-header .header-controls>.menu-toggle:is(:hover,[aria-expanded=true]) { background: #cedbbf; }
  .public-design .header-language-toggle svg { width: 19px; height: 19px; }
  .public-design .header-language-toggle>span { font-size: 10px; }
  .public-design .site-header .header-controls .navlinks { max-height: calc(100dvh - var(--header-height) - 24px); }
  .public-design .header-account-menu { right: 16px; max-height: calc(100dvh - var(--header-height) - 24px); overflow-y: auto; }
  .public-design :is(.header-account-menu,.discovery-menu) { background: #fffdf7; backdrop-filter: none; -webkit-backdrop-filter: none; }
  .public-design .discovery-menu { right: 16px; width: calc(100vw - 32px); max-height: calc(100dvh - var(--header-height) - 24px); }

  /* Preserve the count, but place it after the footer rather than over forms. */
  .public-design .floating-site-tools { position: static; width: fit-content; max-width: calc(100% - 40px); margin: 10px auto 0; }
  .public-design .floating-member-counter { padding: 6px 10px; box-shadow: none; background: #fffaf080; }
  .public-design .floating-member-counter .counter-caption { font-size: 11px; }
  .public-design .floating-member-counter .counter-date { font-size: 10px; }

  /* Account links fill the shorter column; branding shares one compact row. */
  .public-design .footer { margin-top: 28px; padding-bottom: 12px; }
  .public-design .footer>.wrap { width: calc(100% - 24px); padding: 20px 20px 0; border-radius: 20px; }
  .public-design .footer-top { grid-template-columns: repeat(2,minmax(0,1fr)); grid-template-rows: auto auto auto; gap: 16px 18px; align-items: start; }
  .public-design .footer-brand { display: flex; flex-direction: row; align-items: center; justify-content: space-between; gap: 12px; padding: 0 0 16px; }
  .public-design .footer a.footer-home { width: 132px; max-width: 50%; flex: none; margin: 0; gap: 3px; }
  .public-design .footer-logo { width: 100%; }
  .public-design .footer-brand-subheading { font-size: 8px; height: auto; line-height: 1.5; }
  html[lang=en] .public-design .footer-brand-subheading { font-size: 8px; white-space: normal; text-align: left; text-align-last: left; }
  .public-design .footer a.footer-contact { min-height: 40px; width: auto; padding: 8px 10px; gap: 12px; font-size: 12px; white-space: nowrap; }
  .public-design .footer-links { padding-top: 0; }
  .public-design .footer-links h3 { font-size: 12px; margin-bottom: 5px; }
  .public-design .footer-links a { display: flex; align-items: center; min-height: 36px; font-size: 12px; padding-block: 7px; line-height: 1.5; }
  .public-design .footer-links:nth-child(2) { grid-column: 1; grid-row: 2; }
  .public-design .footer-links:nth-child(3) { grid-column: 2; grid-row: 2/4; }
  .public-design .footer-links:last-child { grid-column: 1; grid-row: 3; padding-top: 0; border-top: 0; }
  .public-design .footer-links:last-child a { display: flex; margin-right: 0; }
  .public-design .footer-bottom { margin-top: 16px; padding-block: 12px; gap: 6px; }
  .public-design .footer-bottom-links { display: flex; flex-wrap: wrap; justify-content: flex-start; gap: 0 16px; }
  .public-design .footer-bottom a { min-height: 34px; font-size: 10px; gap: 6px; }
  .public-design .footer-back-top span { width: 24px; height: 24px; font-size: 14px; }

  /* The photograph becomes a compact introduction to the sign-in form. */
  .public-design .ma-login-redesign { display: flex; flex-direction: column; width: calc(100% - 32px); max-width: 480px; margin: 18px auto 36px; border-radius: 18px; }
  .public-design .ma-login-photo { width: 100%; height: 136px; min-height: 0; flex: none; }
  .public-design .ma-login-photo>img { object-position: 50% 38%; }
  .public-design .ma-login-photo figcaption { left: 20px; bottom: 15px; }
  .public-design .ma-login-photo figcaption>span { font-size: 25px; }
  .public-design .ma-login-photo figcaption p { font-size: 11px; margin-top: 2px; }
  .public-design .ma-login-redesign .ma-login-form { padding: 22px 20px 24px; }
  .public-design .ma-login-back { margin-bottom: 16px; min-height: 32px; display: flex; align-items: center; }
  .public-design .ma-login-redesign h1 { font-size: clamp(25px,7vw,30px); margin: 8px 0 12px; }
  .public-design .ma-login-redesign .ma-login-form>p { font-size: 14px; margin-bottom: 20px; line-height: 1.7; }
  .public-design .ma-login-redesign :is(input,.ma-button) { height: 48px; }
  .public-design .ma-login-redesign input { font-size: 16px; }
  .public-design .ma-login-divider { margin-block: 18px; }
  .public-design .ma-login-redesign .ma-login-form>.ma-login-existing { font-size: 12px; margin-block: 20px; }
  .public-design .ma-login-foot { gap: 8px 20px; flex-wrap: wrap; padding-top: 12px; }
  .public-design .ma-login-foot a { display: flex; align-items: center; min-height: 44px; font-size: 12px; }

  .public-design .page-heading { padding: 28px 0 22px; }
  .public-design .page-heading h1 { font-size: clamp(28px,8vw,36px); line-height: 1.25; }
  .public-design .page-heading p { font-size: 15px; line-height: 1.75; }
  .public-design .collection-page { padding-top: 24px; }
  .public-design .collection-heading { margin-bottom: 20px; }
  .public-design .collection-search { min-height: 48px; margin-top: 18px; }
  .public-design .collection-tabs { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 4px; padding: 5px; border-radius: 13px; margin-bottom: 18px; }
  .public-design .collection-tabs a { min-height: 36px; padding: 6px 3px; font-size: 11px; line-height: 1.4; border-radius: 9px; white-space: normal; }
  .public-design .collection-summary { flex-wrap: wrap; font-size: 12px; line-height: 1.6; }
  .public-design .collection-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px 12px; }
  .public-design .collection-grid .post-card h3 { font-size: 15px; }
  .public-design .collection-page .community-video-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px 12px; }
  .public-design .collection-page .community-video-title { font-size: 14px; line-height: 1.5; margin: 10px 0 6px; }
  .public-design .collection-page .community-video-icon { width: 36px; height: 36px; font-size: 14px; }
  .public-design .collection-page .community-video-duration { bottom: 5px; right: 5px; padding: 2px 4px; font-size: 10px; }
  .public-design .article-wrap .article-body { font-size: 16px; line-height: 1.85; overflow-wrap: anywhere; }
  .public-design .article-main h1 { font-size: 28px; line-height: 1.4; }
  .public-design .article-toolbar { flex-wrap: wrap; }

  /* Mobile hero leads with the introduction and a quiet gallery link. */
  .public-design .connection-home .connection-hero { position: relative; isolation: isolate; display: flex; flex-direction: column; align-items: center; gap: 30px; width: 100%; max-width: none; overflow: clip; padding: 16px 24px 12px; }
  .public-design .connection-home .connection-hero::after { content: none; }
  .public-design .connection-home .connection-hero-copy { order: 2; position: relative; z-index: 1; width: 100%; max-width: 440px; margin: 0; padding: 0; text-align: center; }
  html[lang] .public-design .connection-home .connection-hero h1 { margin: 12px 0 16px; font-size: clamp(29px,8.2vw,42px); letter-spacing: -.055em; line-height: 1.2; }
  .public-design .connection-home .connection-hero h1>span { white-space: normal; text-wrap: balance; }
  .public-design .connection-home .connection-hero-copy>.connection-kicker { display: block; min-height: 0; margin-top: 20px; font-size: 12px; line-height: 1.5; }
  .public-design .connection-home .connection-hero-copy>p { min-height: 0; max-width: none; margin: 0 0 20px; font-size: 14px; line-height: 1.8; word-break: keep-all; text-wrap: pretty; }
  .public-design .connection-home .connection-hero-copy>.connection-pill { display: flex; justify-content: space-between; width: 100%; min-height: 56px; height: auto; padding: 9px 10px 9px 18px; border: 1px solid #193d33; border-radius: 12px; background: #193d33; color: #fffdf7; box-shadow: 0 4px 0 #c6d0b7; font-size: 13px; gap: 12px; white-space: normal; transition: transform 160ms ease, box-shadow 160ms ease; }
  .public-design .connection-home .connection-hero-copy>.connection-pill>span { display: grid; place-items: center; flex: none; width: 34px; height: 34px; border-radius: 50%; background: #efd38b; color: #193d33; transform: rotate(135deg); font-size: 22px; }
  .public-design .connection-home .connection-hero-copy>.connection-pill:active { transform: translateY(3px); box-shadow: 0 1px 0 #c6d0b7; }
  .public-design .connection-home .connection-hero-copy>.connection-pill:focus-visible { outline: 3px solid #bd633d; outline-offset: 5px; }
  .public-design .connection-home .connection-hero-photos-left,
  .public-design .connection-home .connection-hero-photos-right>.connection-journey:not(.connection-journey-portrait) { display: none; }
  .public-design .connection-home .connection-hero > .connection-hero-photos-right { display: none; }
  .public-design .connection-home .connection-hero-photos-right { order: 1; position: relative; isolation: isolate; display: flex; align-items: center; width: min(68vw,250px); max-width: none; margin: 0; padding: 0; pointer-events: none; }
  .public-design .connection-home .connection-hero-photos-right::before,
  .public-design .connection-home .connection-hero-photos-right::after { content: ''; position: absolute; z-index: -1; width: 152px; height: 152px; border: 1px solid #809580; border-radius: 50%; pointer-events: none; }
  .public-design .connection-home .connection-hero-photos-right::before { left: -43px; top: 32px; box-shadow: 0 0 0 10px #faf8ef,0 0 0 11px #809580; }
  .public-design .connection-home .connection-hero-photos-right::after { right: -34px; bottom: 26px; width: 116px; height: 116px; border-color: #bd633d; }
  .public-design .connection-home .connection-hero-photos-right .connection-journey-portrait { position: relative; width: 100%; margin: 0; padding: 7px; border: 1px solid #193d33; border-radius: 12px; background: #fffdf7; opacity: 1; filter: none; transform: rotate(-3deg); transform-origin: center; animation: none; box-shadow: 9px 10px 0 #efd38b; }
  .public-design .connection-home .connection-hero-photos-right .connection-journey-portrait::after { display: none; }
  html .public-design .connection-home .connection-hero .connection-journey-portrait img { display: block; width: 100%; height: auto; aspect-ratio: 1284/1600; object-fit: contain; border-radius: 6px !important; opacity: 1; filter: none; transform: none; transition: none; }
  @media (prefers-reduced-motion: no-preference) {
    .public-design .connection-home .connection-hero-photos-right { animation: mobile-drum-arrive 600ms cubic-bezier(.2,.7,.2,1) both; }
  }
  @media (prefers-reduced-motion: reduce) {
    .public-design .connection-home .connection-hero-copy>.connection-pill { transition: none; }
  }
  .public-design .connection-home .connection-section-head { flex-wrap: wrap; align-items: flex-start; gap: 16px; margin-bottom: 24px; }
  html[lang] .public-design .connection-home .connection-section-head h2 { font-size: 30px; line-height: 1.3; }
  .public-design .connection-home .connection-programs-layout { gap: 36px; margin-top: 0; margin-bottom: 44px; }
  /* Compact homepage cards and photo spacing without trimming their content. */
  .public-design .connection-home .connection-programs-layout .connection-path-grid { gap: 10px; }
  .public-design .connection-home .connection-programs-layout .connection-path-grid>a { grid-template-columns: 58px minmax(0,1fr); gap: 5px 12px; padding: 14px; }
  .public-design .connection-home .connection-programs-layout .connection-path-photo { grid-row: 1/3; height: 58px; min-height: 0; }
  .public-design .connection-home .connection-programs-layout .connection-path-number { grid-column: 2; font-size: 10px; }
  html[lang] .public-design .connection-home .connection-programs-layout .connection-path-grid h3 { font-size: 17px; }
  html[lang] .public-design .connection-home .connection-programs-layout .connection-path-grid p { grid-column: 1/-1; font-size: 13px; margin: 3px 0 0; }
  html[lang] .public-design .connection-home .connection-programs-layout .connection-path-action { grid-column: 1/-1; margin-top: 2px; font-size: 12px; justify-self: start; white-space: nowrap; }
  .public-design .connection-home .connection-scrapbook { gap: 16px 12px; margin: 24px 6px 12px; padding-block: 4px; }
  .public-design .connection-home .connection-scrapbook .connection-story:nth-child(n) { padding: 5px 5px 9px; }
  .public-design .connection-home .connection-scrapbook .connection-story:nth-child(even) { top: 6px; }
  .public-design .connection-home .connection-scrapbook .connection-story:nth-child(5) { width: 62%; }
  html[lang] .public-design .connection-home .connection-scrapbook h3 { margin-top: 6px; }
  .public-design .connection-home .connection-support.connection-support-photos { margin-top: 30px; padding: 22px 20px; gap: 16px; }
  html[lang] .public-design .connection-home .connection-support h2 { font-size: 28px; margin: 10px 0 12px; }
  .public-design .connection-home .connection-support h2 br { display: none; }
  .public-design .connection-home .connection-support p { font-size: 14px; margin: 0; }
  .public-design .connection-home .connection-support-photos .connection-support-album { gap: 10px; padding: 0; }
  .public-design .connection-home .connection-support-album img { height: 120px; }
  .public-design .connection-home .connection-support-album img:nth-child(2) { margin-top: 16px; }
  .public-design .connection-home .connection-support-photos .connection-support-actions { gap: 8px 18px; }
  .public-design .connection-home .connection-support-actions :is(.connection-pill,.connection-text-link) { min-height: 44px; display: inline-flex; align-items: center; }
  .public-design .connection-home .connection-support-actions .connection-pill { padding: 12px 20px; }
  .public-design .connection-home .connection-filters { gap: 8px; }
  .public-design .connection-home .connection-filters a { min-height: 44px; display: inline-flex; align-items: center; }
  .public-design .connection-home .home-film-controls { gap: 8px; padding: 8px; }
  .public-design .connection-home .home-film-button { width: 44px; height: 44px; flex: none; }
  .public-design .connection-home .graphic-tv-seek { min-width: 0; }
  .public-design .connection-home .graphic-tv-time { font-size: 10px; white-space: nowrap; }

  .public-design .about-page .about-index { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px 16px; }
  .public-design .about-page .about-index a { min-height: 44px; display: flex; align-items: center; font-size: 13px; }
  .public-design .about-program-intro { margin-left: 0; }
  .public-design .about-page :is(.about-section-heading,.about-closing)>* { min-width: 0; }
  .public-design .about-page .about-section-heading { grid-template-columns: 24px minmax(0,1fr); gap: 12px; }
  html[lang] .public-design .about-page .about-section-heading h2 { font-size: 28px; overflow-wrap: anywhere; }
  .public-design .about-closing { grid-template-columns: minmax(0,1fr); }
  .public-design .about-chapter { padding-block: 42px; }
  html[lang] .public-design .about-page h1 { font-size: 36px; line-height: 1.3; }
  html[lang] .public-design .about-page .about-program-copy h2 { font-size: 28px; }
  .public-design .about-university-directory ul { gap: 12px; }
  .public-design .about-closing-actions,.public-design .involved-actions { flex-wrap: wrap; gap: 12px 20px; }
  html body .contact-page { padding-top: 28px; }
  html body .contact-heading h1 { font-size: 36px; }
  html body .contact-heading>p:not(.eyebrow) { padding-right: 0; }
  html body .contact-topics label>span { min-height: 44px; font-size: 12px; }
  html body .contact-send-row { flex-wrap: wrap; gap: 12px; }
  html body .contact-send-row .button { width: 100%; }
  .public-design .donation-context-links { flex-wrap: wrap; }
  .public-design .donation-wire-details dd { overflow-wrap: anywhere; }

  .public-design #modal { width: calc(100vw - 24px); max-height: calc(100dvh - 24px); padding: 22px 18px; }
  body.public-design .lightbox-controls { flex-wrap: wrap; }
  body.public-design .lightbox-controls :is(a,button) { min-height: 44px; }
  .public-design .toolbar button { min-width: 40px; min-height: 44px; }
  .public-design .ma-account-heading { flex-wrap: wrap; }
  .public-design .ma-file-tools { flex-wrap: wrap; }
}
@keyframes mobile-drum-arrive {
  from { transform: translateY(12px) rotate(2deg); }
  to { transform: translateY(0) rotate(0); }
}

@media (max-width: 360px) {
  .public-design .wrap { padding-inline: 16px; }
  .public-design .site-header .nav { padding-inline: 12px; gap: 8px; }
  .public-design .site-header .brand { width: 124px; }
  .public-design .footer>.wrap { padding-inline: 18px; }
  .public-design .ma-login-redesign .ma-login-form { padding-inline: 18px; }
}

/* Compact spacing across the remaining phone pages; retain full text and tap targets. */
@media (max-width: 700px) {
  .public-design .page-heading { padding: 20px 0 16px; }
  .public-design .page-heading p { margin-top: 12px; }
  .public-design #main .section { padding-top: 28px; }
  .public-design #main .panel { padding: 18px; }
  .public-design #main .spacer { height: 16px; }
  .public-design #main :is(.card-grid,.info-grid) { gap: 18px 12px; }
  .public-design #main .breadcrumb { margin-block: 16px; }
  .public-design #main .article-layout { padding-block: 16px 28px; gap: 24px; }
  .public-design #main .article-main h1 { margin-block: 12px 18px; }
  .public-design #main .article-toolbar { margin-block: 14px; gap: 8px; }
  .public-design #main .article-body :is(p,ul,ol) { margin-block: 14px; }
  .public-design #main .article-body :is(figure,.inline-photo) { margin-block: 18px; }
  .public-design #main .notice { padding: 14px; margin-block: 16px; }
  .public-design .collection-page { padding-top: 18px; padding-bottom: 28px; }
  .public-design .collection-heading { margin-bottom: 14px; }
  .public-design .collection-search { margin-top: 12px; }
  .public-design .collection-tabs { margin-bottom: 12px; }
  .public-design .collection-grid,.public-design .collection-page .community-video-grid { gap: 18px 12px; }
  .public-design .collection-grid .post-card h3 { margin-top: 10px; }

  .public-design .involved-hero { gap: 20px; padding-block: 22px 26px; }
  .public-design .involved-hero h1 { font-size: 34px; margin: 0 0 14px; }
  .public-design .involved-actions { margin-top: 16px; gap: 8px 16px; }
  .public-design .involved-page .involved-link { min-height: 44px; }
  .public-design .involved-hero-album { padding-bottom: 42px; }
  .public-design .involved-hero-main img { height: clamp(190px,52vw,280px); }
  .public-design .involved-hero-inset { padding: 5px 5px 8px; right: 4px; }
  .public-design .involved-hero-inset img { height: 95px; }
  .public-design .involved-page figcaption { margin-top: 6px; }
  .public-design .participation-paths { gap: 10px; margin-bottom: 12px; }
  .public-design .participation-paths>a { padding: 12px 8px; }
  .public-design .participation-paths h2 { font-size: 17px; margin: 10px 0 8px; }
  .public-design .involved-feature,.public-design .involved-learning-band .involved-feature { padding-block: 28px; gap: 20px; }
  .public-design .involved-page .involved-section-title { font-size: 27px; margin-bottom: 12px; }
  .public-design .involved-page .involved-section-subtitle { font-size: 21px; margin-bottom: 12px; }
  .public-design .involved-feature-photo>img { height: clamp(190px,56vw,280px); }
  .public-design .participation-roles { margin-block: 16px; }
  .public-design .participation-roles>div { padding-block: 12px; gap: 10px; }
  .public-design .involved-records { margin-top: 14px; gap: 6px 16px; }
  .public-design .involved-learning-album { gap: 10px; }
  .public-design .involved-learning-album img { height: 155px; }
  .public-design .involved-learning-album figure:last-child { margin-top: 22px; }
  .public-design .involved-learning-album figure:last-child img { height: 135px; }
  .public-design .involved-exchange { padding-block: 28px; }
  .public-design .involved-section-heading { margin-bottom: 18px; }
  .public-design .involved-exchange-grid { gap: 24px; }
  .public-design .involved-exchange-grid img { height: clamp(190px,56vw,280px); }
  .public-design .involved-exchange-grid figure { margin-bottom: 14px; }
  .public-design .involved-exchange-grid h3 { font-size: 22px; margin-block: 10px; }
  .public-design .involved-exchange-grid .involved-link { margin-top: 6px; }
  .public-design .participation-support { padding-block: 28px 22px; margin-top: 12px; }
  .public-design .participation-support>.support-layout { gap: 20px; }
  .public-design .participation-support .participation-support-heading h2 { font-size: 28px; margin-block: 12px; }
  .public-design .support-layout>.support-donation-card { padding: 20px 18px; }
  .public-design .support-layout .support-donation-top { margin-bottom: 10px; min-height: 40px; }
  .public-design .support-layout .support-donation-top img { width: 40px; height: 40px; }
  .public-design .participation-support .support-donation-card h3 { font-size: 23px; margin-bottom: 10px; }
  .public-design .participation-support .support-donation-card p { margin-bottom: 18px; }
  .public-design .support-layout .donation-currency-actions { gap: 10px; }
  .public-design .support-layout .donation-currency-actions .button.donation-raised-button { grid-template-columns: 34px minmax(0,1fr) auto; gap: 12px; min-height: 60px; padding: 12px; font-size: 14px; }
  .public-design .support-layout .donation-method-emoji { width: 34px; height: 34px; font-size: 23px; }
  .public-design .support-layout>.participation-disclosure { padding-top: 16px; }
  .public-design .involved-participate { gap: 20px; padding-block: 28px; }
  .public-design .involved-participate h2 { font-size: 27px; margin-block: 12px; }
  .public-design .involved-participate .button { margin-top: 16px; }
  .public-design .involved-steps li { gap: 12px; padding-block: 14px; }
  .public-design .involved-steps h3 { margin-bottom: 6px; }
  .public-design .involved-partner { padding-top: 26px; }
  .public-design .involved-partner>div:last-child { margin-top: 16px; flex-wrap: wrap; }

  .public-design .donation-page { padding-top: 18px; padding-bottom: 28px; }
  .public-design .donation-heading { padding: 16px 0 18px; }
  .public-design .donation-heading h1 { font-size: 32px; }
  .public-design .donation-method-nav { margin-bottom: 18px; padding-bottom: 16px; }
  .public-design .donation-method-nav a { min-height: 46px; padding: 10px 12px; }
  .public-design .donation-page .donation-layout { gap: 20px; }
  .public-design .donation-page :is(.donation-paper,.donation-wire) { padding: 20px 18px; }
  .public-design .donation-wire-details>div { padding-block: 12px; }
  .public-design .donation-card-payment>.donation-availability { margin-top: 16px; padding: 16px; }
  .public-design .donation-card-payment>.button { margin-top: 16px; }
  .public-design .donation-page .donation-context { margin-top: 22px; padding-top: 18px; gap: 12px; }
  html body.public-design .contact-page { padding-top: 22px; padding-bottom: 30px; }
  .public-design .contact-layout { gap: 20px; }
  html body.public-design .contact-heading h1 { font-size: 32px; margin-bottom: 12px; }
  html body.public-design .contact-heading .eyebrow { margin-bottom: 12px; }
  html body.public-design .contact-paper { padding: 18px; }
  .public-design .contact-paper label { margin-bottom: 14px; }
  .public-design .contact-availability { margin-bottom: 14px; }
  .public-design .contact-message-meta { margin-bottom: 16px; }
  .public-design .contact-footnote { margin-top: 18px; padding-top: 14px; }
  .public-design .contact-direct>.contact-phone-label { margin-top: 16px; }

  .public-design .ma-login-redesign { margin-block: 14px 24px; }
  .public-design .ma-login-photo { height: 112px; }
  .public-design .ma-login-redesign .ma-login-form { padding-block: 18px; }
  .public-design .ma-login-back { margin-bottom: 10px; }
  .public-design .ma-login-redesign .ma-login-form>p { margin-bottom: 14px; }
  .public-design .ma-login-divider { margin-block: 14px; }
  .public-design .ma-login-redesign .ma-login-form>.ma-login-existing { margin-block: 14px; }
  .public-design .ma-account { padding-block: 22px 28px; }
  .public-design .ma-account-heading { gap: 12px; margin-bottom: 18px; }
  .public-design .ma-main { padding: 22px 16px; }
  .public-design .ma-header { margin-bottom: 18px; gap: 12px; }
  .public-design .ma-file-grid { gap: 10px; padding: 14px; }
  .public-design .ma-file-visual { height: 115px; }
  .public-design .gallery-editor { padding-block: 18px 28px; }
  .public-design .gallery-editor .staff-heading { margin-block: 12px; }
  .public-design .bilingual-editors { gap: 16px; }
  .public-design .gallery-settings-panel { gap: 14px; margin-bottom: 28px; }
}

/* One mobile menu, using the Exit Club top bar's original glass surface. */
@media (max-width: 1119.98px) {
  .public-design .site-header .header-controls { backdrop-filter: none; -webkit-backdrop-filter: none; }
  .public-design .site-header .header-controls .navlinks {
    left: auto;
    right: 0;
    width: min(244px,calc(100vw - 48px));
    margin-top: 12px;
    padding: 4px;
    border: 1px solid rgba(80,76,70,.32);
    border-radius: 18px;
    background: radial-gradient(ellipse at 25% 45%,rgba(250,248,241,.42),rgba(246,243,233,.18) 88%);
    box-shadow: inset 1px 2px 2px #ffffffcc,inset -2px -2px 5px #ffffff4d,0 5px 10px -5px #27211826;
    backdrop-filter: blur(10px) saturate(130%);
    -webkit-backdrop-filter: blur(10px) saturate(130%);
    overscroll-behavior: contain;
    isolation: isolate;
  }
  .public-design .site-header .header-controls .navlinks::before {
    content: ''; position: absolute; inset: 2px; z-index: -1; pointer-events: none;
    border-radius: 16px;
    background: radial-gradient(ellipse at 16% 12%,rgba(255,255,255,.24),transparent 65%);
    box-shadow: inset 0 -4px 8px -6px rgba(255,255,255,.85);
  }
  .public-design .site-header .header-controls .navlinks::after {
    content: ''; position: absolute; inset: 1px; z-index: 2; padding: 1px; pointer-events: none;
    border-radius: 17px; opacity: .65;
    background: conic-gradient(from 135deg,#ffffff20,#ffffffe6 15%,#ffffff20 32%,#ffffff1a 55%,#ffffffd9 74%,#ffffff20);
    mask: linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0); mask-composite: exclude;
    -webkit-mask: linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0); -webkit-mask-composite: xor;
  }
  .public-design .site-header .nav-segments { border-radius: 13px; }
  .public-design .site-header .nav-segments .nav-about .discovery-toggle,
  .public-design .site-header .discovery-menu { display: none; }
  .public-design .site-header .header-controls .nav-segments>:is(a,.nav-about) {
    height: 54px; min-height: 54px; border-radius: 0 !important;
  }
  .public-design .site-header .header-controls .nav-segments>:is(a,.nav-about):not(.header-participate) { background: transparent !important; }
  .public-design .site-header .header-controls .nav-segments>a,
  .public-design .site-header .header-controls .nav-segments .nav-about>a { gap: 10px; padding: 8px 12px; font-size: 14px; }
  .public-design .site-header .header-controls .nav-segments>:is(a,.nav-about):not(.header-participate):is(:hover,:focus-within,[aria-current=page]),
  .public-design .site-header .header-controls .nav-segments .nav-about:has(>a[aria-current=page]) { background: #dfe7d340 !important; }
  .public-design .site-header .nav-segments :is(.nav-rendered-icon,.nav-pictureframe) { width: 32px; height: 32px; flex: none; }
  .public-design .site-header .nav-segments>:is(a,.nav-about)+a { border-top-color: #193d3317; }
}
@media (max-width: 1119.98px) and (prefers-reduced-transparency: reduce) {
  .public-design .site-header .header-controls .navlinks { background: #fffdf7; backdrop-filter: none; -webkit-backdrop-filter: none; }
}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .public-design .site-header .header-controls .navlinks.open { background: #fffdf7; }
}

/* Account icon above its label, matching the language control. */
@media (max-width: 1119.98px) {
  .public-design .site-header .header-controls>.header-account-toggle { flex-direction: column; gap: 2px; }
  .public-design .site-header .header-account-toggle svg { width: 19px; height: 19px; }
  .public-design .site-header .header-account-toggle>span {
    position: static; width: auto; height: auto; overflow: visible; clip-path: none;
    font-size: 10px; line-height: 1.1; font-weight: 800;
  }
}

/* Mobile lockup: 7.5% smaller, with a four-pixel image-to-caption gap. */
@media (max-width: 700px) {
  .public-design .site-header .nav .brand {
    width: calc(clamp(124px,35vw,156px) * .925);
    gap: 4px;
  }
  html[lang] .public-design .site-header .brand .brand-subheading {
    top: 0;
    margin-top: 0;
    height: 12.95px;
    line-height: 12.95px;
    font-size: 9.25px;
  }
  html[lang=en] .public-design .site-header .brand .brand-subheading {
    font-size: calc(clamp(6.0125px,1.71125vw,7.4px) + 2pt);
    font-weight: 400;
    width: max-content;
    overflow: visible;
    white-space: nowrap;
    letter-spacing: 0;
    text-align: left;
    text-align-last: left;
  }
}
@media (max-width: 360px) {
  .public-design .site-header .nav .brand { width: 114.7px; }
}

/* Keep both My Docs labels visible with room around the text. */
/* Tablet shares the phone lockup and controls, with even outer padding. */
@media (min-width: 701px) and (max-width: 1119.98px) {
  .public-design .site-header { background: #fffdf7f5; border-bottom: 1px solid #193d3312; box-shadow: none; backdrop-filter: none; -webkit-backdrop-filter: none; }
  .public-design .site-header::before,.public-design .site-header .brand::before { display: none; }
  .public-design .site-header .nav { min-height: 84px; padding: 14px 24px; gap: 12px; }
  .public-design .site-header .nav .brand { width: 144.3px; gap: 4px; }
  html[lang] .public-design .site-header .brand .brand-subheading { top: 0; margin-top: 0; height: 12.95px; line-height: 12.95px; font-size: 9.25px; }
  .public-design .site-header .header-controls { border: 0; border-radius: 0; background: none; box-shadow: none; backdrop-filter: none; -webkit-backdrop-filter: none; }
  .public-design .site-header .header-controls::before,.public-design .site-header .header-controls::after { display: none; }
  .public-design .site-header .header-controls>:is(.header-account-toggle,.header-language-toggle,.menu-toggle) { width: 44px; min-width: 44px; height: 46px; min-height: 46px; padding: 7px; border: 1px solid var(--chrome-edge); background: var(--chrome-glass); box-shadow: var(--chrome-highlight),0 2px 5px #193d3309; }
  .public-design .site-header .header-controls>.header-account-toggle { border-radius: 14px 0 0 14px; }
  .public-design .site-header .header-controls>.header-language-toggle { border-left: 0; border-radius: 0 14px 14px 0; }
  .public-design .site-header .header-controls>.menu-toggle { margin-left: 10px; border-radius: 14px; background: #e8eddd; }
}
.public-design .site-header .nav .header-controls>.header-account-toggle { width: 80px; min-width: 80px; }
.public-design .site-header .header-account-toggle>span { white-space: nowrap; }
@media (max-width: 1119.98px) {
  .public-design .site-header .nav .header-controls>.header-account-toggle { width: 64px; min-width: 64px; }
}
