/* Shared narrow-screen refinements; loaded after each page's own styles. */
.site-menu-toggle{display:none}
main,article,.event>*,.video-grid>*,.teaching-grid>*,.book-feature>*{min-width:0}
img,video,audio,iframe{max-width:100%}
audio{width:100%}
@media(max-width:900px){
  body{padding-inline:clamp(16px,4vw,32px)}
  header:has(nav[aria-label="Site navigation"]){flex-direction:row;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-block:16px}
  header .brand{min-width:0;margin:0;gap:8px}
  header .brand-mark{width:40px;height:40px;object-fit:contain}
  header .brand-name{font-size:25px}
  .site-menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 14px;border:1px solid var(--rule);border-radius:4px;background:transparent;color:var(--ink);font:600 14px/1.4 var(--sans);cursor:pointer}
  .site-menu-toggle::after{content:"+";font-size:20px;line-height:1}
  .site-menu-toggle[aria-expanded="true"]::after{content:"−"}
  header nav[aria-label="Site navigation"]{width:100%;flex:0 0 100%;max-width:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px;align-items:stretch;justify-content:start;padding-top:8px}
  header nav.site-nav-ready:not(.is-open){display:none}
  header nav[aria-label="Site navigation"] a,header .site-more>summary{display:flex;align-items:center;min-height:48px;padding:12px 8px;font:500 15px/1.4 var(--sans);overflow-wrap:anywhere;text-decoration:none}
  header nav a[aria-current]{box-shadow:none;background:var(--surface);border-radius:4px}
  header .site-more{grid-column:1/-1;position:static;min-width:0}
  header .site-more>summary{justify-content:space-between;border-top:1px solid var(--rule)}
  header .site-more-links{position:static;width:100%;max-width:none;min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px;padding:4px 0;box-shadow:none;border:0;background:transparent}
  header .site-more-links a{padding:12px 8px}
  .resource-jumps,.directory-jumps{gap:4px 16px}
  .resource-jumps a,.directory-jumps a,.calendar-jumps a{display:inline-flex;align-items:center;min-height:44px;line-height:1.45}
  .format-heading{flex-wrap:wrap;gap:8px 16px}
  .format-heading>a{display:inline-flex;align-items:center;min-height:44px}
  .reading iframe[src*="youtube"],iframe.video{height:auto;aspect-ratio:16/9}
}
@media(max-width:650px){
  body{font-size:17px;line-height:1.65}
  h1,.hero h1,.reading h1,.video-intro h1{font-size:clamp(32px,8.8vw,44px);line-height:1.12;overflow-wrap:anywhere}
  h2,h3,p,a,.meta,.event strong{overflow-wrap:anywhere}
  .hero{grid-template-columns:minmax(0,1fr);padding:28px 0;gap:24px}
  .hero figure{max-width:100%;margin:0}
  .hero .intro{margin-top:16px}
  .video-intro,.reading,.directory,.policy{padding-top:28px}
  .calendar-tools{padding:16px;margin-top:24px}
  .calendar-tools select,.directory input,input[type="search"]{font-size:16px;min-height:48px;width:100%;margin-inline:0}
  .calendar-jumps{display:grid;grid-template-columns:minmax(0,1fr);gap:4px;margin-bottom:20px}
  .calendar-jumps a{padding:10px 0}
  .filters{gap:8px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .filters button{min-height:48px;font-size:14px;padding:10px;white-space:normal}
  .event{grid-template-columns:minmax(0,1fr);gap:12px;padding:24px 0}
  .event>a{grid-column:1;min-height:44px;display:inline-flex;align-items:center;font-size:14px;white-space:normal}
  .event .category,.event .eligibility,.event .meta,.event time{font-size:14px;line-height:1.6}
  .video-grid,.teaching-grid,.resource-list,.format-grid,.center-list,.prayer-grid{grid-template-columns:minmax(0,1fr);gap:0}
  .video-grid article,.teaching-grid article{padding:20px 0}
  .video-grid h3,.teaching-grid h3{font-size:23px}
  .teaching-grid .meta,.resource-card .meta{font-size:14px}
  .video-grid article>a,.teaching-grid article>a,.prayer-grid article>a:not(:first-child){display:inline-block;min-height:44px;padding:10px 0;font-size:14px}
  .book-feature{grid-template-columns:minmax(0,1fr);gap:20px}
  .book-feature>img{max-width:160px}
  .resource-card.featured-book{padding:16px}
  .prayer-opening{grid-template-columns:minmax(0,1fr);gap:28px}
  .prayer-feature{padding:32px 0}
  footer nav a{display:inline-flex;align-items:center;min-height:44px;font-size:14px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

@media(max-width:360px){header .brand-name{font-size:22px}header .brand-mark{width:32px;height:32px}.site-menu-toggle{padding-inline:10px}}
