/*
 * AMC USA design system: Liwa Monochrome.
 * Mobile-first: base rules target phones; min-width queries enhance for
 * small tablets (600px), tablets (782px, WordPress column breakpoint) and desktop (1025px).
 */
:root {
  --amc-bg: #FFFFFF;
  --amc-surface: #F5F6F4;
  --amc-ink: #121614;
  --amc-text: #2A302D;
  --amc-muted: #5A625E;
  --amc-line: #E3E6E3;
  --amc-night: #0E1110;
  --amc-night-soft: #1A1F1D;
  --amc-accent: #0B6B4B;
  --amc-accent-hover: #08553B;
  --amc-accent-tint: #E7F2ED;
  --amc-mint: #7FC8A9;
  --amc-forest: #0F3B2C;
  --amc-forest-2: #165440;
  --amc-gold: #E0B23C;
  --amc-gold-ink: #8B6914;
  --amc-content: 1192px;
  --amc-gutter: 20px;
  --amc-radius: 16px;
  --amc-radius-sm: 10px;
  --amc-section: 36px;
  --amc-tap: 48px;
  --amc-dock: 64px;
  --amc-header-h: 70px; /* Kadence sticky header height; keeps sticky sub navs below it */
  --amc-adminbar: 0px;
  --amc-shadow-hover: 0 14px 34px -18px rgba(18, 22, 20, .35);
}

/* ---------- Base ---------- */
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
/* Kadence offsets its fixed header by the admin bar at every width; match it. */
.admin-bar { --amc-adminbar: 46px; }
@media (min-width: 783px) { .admin-bar { --amc-adminbar: 32px; } }
@media (min-width: 1025px) { :root { --amc-header-h: 68px; } }
#departments, #events, #chapters, #auxiliaries, #member-services { scroll-margin-top: 80px; }
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; overflow-x: hidden; }
.entry-content p { max-width: 68ch; }
::selection { background: var(--amc-accent); color: #fff; }
a, button, .wp-element-button { -webkit-tap-highlight-color: rgba(11, 107, 75, .15); }
a:focus-visible, button:focus-visible, .wp-element-button:focus-visible, input:focus-visible, select:focus-visible { outline: 3px solid var(--amc-accent); outline-offset: 3px; border-radius: 6px; }

/* Kadence wraps group content in an inner container; layout groups pass children through. */
:is(.amc-facts, .amc-people, .amc-head-row) > .wp-block-group__inner-container { display: contents; }

/* ---------- Sections ---------- */
.amc-section { padding: var(--amc-section) var(--amc-gutter) !important; margin: 0 !important; }
.amc-section > .wp-block-group__inner-container { max-width: var(--amc-content); margin-left: auto !important; margin-right: auto !important; }
.amc-section > .wp-block-group__inner-container > .wp-block-buttons { margin-top: 20px; }
.amc-section--surface { background: var(--amc-surface); }
.amc-section--night { background: var(--amc-night); color: #D7DCD9; }
.amc-band.amc-section--night { background: radial-gradient(80% 100% at 100% 0%, rgba(224,178,60,.14) 0%, rgba(15,59,44,0) 55%), var(--amc-forest); }
.amc-band .amc-facts strong { color: var(--amc-gold) !important; }
.amc-section--night :is(h1, h2, h3, h4) { color: #fff; }
.amc-section h2 { font-size: clamp(28px, 7vw, 40px) !important; line-height: 1.12 !important; letter-spacing: -.015em; }
.amc-section h3 { font-size: 20px; line-height: 1.25; margin: 28px 0 10px; }

.amc-head { margin-bottom: 18px !important; }
.amc-head h2 { margin: 0 0 10px !important; }
.amc-head p { color: var(--amc-muted); font-size: 16px; line-height: 1.55; margin: 0 !important; }
.amc-section--night .amc-head p { color: #A9B1AD; }
.amc-head .amc-eyebrow { margin-top: 0 !important; }
.amc-eyebrow { font-size: 12px !important; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--amc-accent) !important; margin: 0 0 12px !important; }
.amc-section--night .amc-eyebrow, .amc-hero .amc-eyebrow, .amc-page-hero .amc-eyebrow { color: var(--amc-gold) !important; }
.amc-head-row { display: flex; flex-direction: column; gap: 16px; }
.amc-head-row > .wp-block-group__inner-container > .wp-block-group { margin: 0; }
.amc-head-row .wp-block-buttons { margin: 0 !important; }

/* ---------- Buttons (min 48px tap height) ---------- */
.wp-block-button__link, .wp-element-button { min-height: var(--amc-tap); display: inline-flex !important; align-items: center; justify-content: center; text-align: center; transition: background-color .2s ease, color .2s ease, border-color .2s ease, transform .15s ease; }
.wp-block-button__link:active { transform: translateY(1px); }
.wp-block-buttons { gap: 10px; }
.wp-block-button.is-style-outline > .wp-block-button__link { border: 1.5px solid var(--amc-ink) !important; color: var(--amc-ink) !important; background: transparent !important; }
.wp-block-button.is-style-outline > .wp-block-button__link:hover { background: var(--amc-ink) !important; color: #fff !important; }
.wp-block-button.amc-btn-dark > .wp-block-button__link { background: var(--amc-ink) !important; color: #fff !important; }
.wp-block-button.amc-btn-dark > .wp-block-button__link:hover { background: #2A302D !important; }
.wp-block-button.amc-btn-light > .wp-block-button__link { background: #fff !important; color: var(--amc-ink) !important; }
.wp-block-button.amc-btn-ghost > .wp-block-button__link { background: transparent !important; color: #fff !important; border: 1.5px solid rgba(255,255,255,.55) !important; }
.wp-block-button.amc-btn-ghost > .wp-block-button__link:hover { background: #fff !important; color: var(--amc-ink) !important; border-color: #fff !important; }
/* On phones, primary button pairs share the row evenly. */
.amc-hero .wp-block-buttons, .amc-band .wp-block-buttons { display: flex; flex-wrap: wrap; }
.amc-hero .wp-block-button, .amc-band .wp-block-button { flex: 1 1 140px; }
.amc-hero .wp-block-button__link, .amc-band .wp-block-button__link { width: 100%; white-space: nowrap; padding-left: 20px !important; padding-right: 20px !important; }

/* ---------- Hero ---------- */
.amc-hero.wp-block-cover { min-height: 0 !important; padding: 40px var(--amc-gutter) 28px !important; align-items: flex-end; }
.amc-hero .wp-block-cover__inner-container { max-width: var(--amc-content); width: 100%; padding: 0 !important; box-sizing: border-box; margin-left: auto !important; margin-right: auto !important; }
.amc-hero .wp-block-cover__image-background { filter: saturate(.9) contrast(1.05); object-position: 50% 60%; }
.amc-hero .wp-block-cover__background { opacity: 1 !important; background: linear-gradient(180deg, rgba(10,40,30,.72) 0%, rgba(10,40,30,.5) 30%, rgba(10,40,30,.86) 60%, rgba(8,30,23,.95) 100%) !important; }
.amc-hero h1 { color: #fff !important; font-size: clamp(34px, 9vw, 66px) !important; line-height: 1.05 !important; letter-spacing: -.025em; margin: 0 0 14px; max-width: 17ch; }
.amc-hero .amc-hero-sub { color: #D7DCD9 !important; font-size: 16px; line-height: 1.55; max-width: 46ch; margin: 0 0 22px; }
.amc-hero .amc-eyebrow { margin-bottom: 14px !important; }
.amc-hero .wp-block-columns { gap: 24px; margin-bottom: 0; }


/* ---------- Hero panel: find your mosque, up next, Friday Sermon ---------- */
.amc-hp { background: rgba(14, 17, 16, .8); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); border: 1px solid rgba(255,255,255,.14); border-radius: var(--amc-radius); overflow: hidden; color: #fff; }
.amc-hp__search { display: block; padding: 18px; margin: 0; }
.amc-hp__heading { display: block; font-size: 18px; font-weight: 800; color: #fff; letter-spacing: -.01em; }
.amc-hp__sub { display: block; font-size: 13px; color: #A9B1AD; margin: 2px 0 12px; }
.amc-hp__field { display: flex; align-items: stretch; background: #fff; border-radius: 999px; padding: 4px; }
.amc-hp__field input[type=search] { flex: 1; min-width: 0; border: 0 !important; background: transparent !important; box-shadow: none !important; padding: 0 8px 0 16px; font: inherit; font-size: 16px; color: var(--amc-ink); min-height: 44px; outline: none; }
.amc-hp__field button { flex: 0 0 44px; width: 44px; height: 44px; border: 0; border-radius: 999px; background: var(--amc-accent); color: #fff; display: grid; place-items: center; cursor: pointer; padding: 0; }
.amc-hp__field button:hover { background: var(--amc-accent-hover); }
.amc-hp__field button svg { width: 20px; height: 20px; }
.amc-hp__field:focus-within { outline: 3px solid var(--amc-mint); outline-offset: 2px; }
.amc-hp__row { display: flex; align-items: center; gap: 14px; padding: 14px 18px; min-height: 72px; border-top: 1px solid rgba(255,255,255,.1); color: #fff !important; text-decoration: none !important; transition: background-color .2s ease; }
.amc-hp__row:active { background: rgba(255,255,255,.06); }
.amc-hp__row > svg { flex: 0 0 18px; width: 18px; height: 18px; color: #8A918D; transition: transform .2s ease, color .2s ease; }
.amc-hp__date { flex: 0 0 48px; height: 48px; border-radius: 12px; background: rgba(255,255,255,.08); display: flex; flex-direction: column; align-items: center; justify-content: center; line-height: 1; }
.amc-hp__date span { font-size: 10px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--amc-mint); }
.amc-hp__date strong { font-size: 20px; font-weight: 800; margin-top: 3px; }
.amc-hp__date--icon svg { width: 22px; height: 22px; color: var(--amc-mint); }
.amc-hp__text { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.amc-hp__label { font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: #8A918D; }
.amc-hp__title { font-size: 15px; font-weight: 700; line-height: 1.3; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.amc-hp__meta { font-size: 13px; color: #A9B1AD; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* ---------- Prayer panel: compact 3x2 grid on phones, list on desktop ---------- */
.amc-prayer { background: rgba(14, 17, 16, .78); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); border: 1px solid rgba(255,255,255,.14); border-radius: var(--amc-radius); padding: 18px; color: #fff; }
.amc-prayer__top { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }
.amc-prayer__title { font-size: 12px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--amc-mint); }
.amc-prayer__date { font-size: 12px; color: #A9B1AD; }
.amc-prayer__place { font-size: 14px; color: #D7DCD9; margin: 4px 0 14px !important; }
.amc-prayer__place a { color: #fff; text-decoration: none; border-bottom: 1px solid rgba(255,255,255,.35); }
.amc-prayer__list { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.amc-prayer__list li { display: flex; flex-direction: column; gap: 2px; padding: 10px; border-radius: var(--amc-radius-sm); background: rgba(255,255,255,.06); font-size: 12px; color: #A9B1AD; }
.amc-prayer__list li span:last-child { font-size: 15px; font-weight: 700; color: #fff; font-variant-numeric: tabular-nums; line-height: 1.25; }
.amc-prayer__list li.is-jumuah { background: rgba(127, 200, 169, .14); color: var(--amc-mint); }
.amc-prayer__list li.is-jumuah span:last-child { color: var(--amc-mint); }
.amc-prayer__foot { font-size: 11px; color: #8A918D; margin: 12px 0 0 !important; }

.amc-prayer--light { background: #fff; color: var(--amc-ink); border-color: var(--amc-line); backdrop-filter: none; }
.amc-prayer--light .amc-prayer__title { color: var(--amc-accent); }
.amc-prayer--light :is(.amc-prayer__place, .amc-prayer__date) { color: var(--amc-muted); }
.amc-prayer--light .amc-prayer__place a { color: var(--amc-ink); border-color: var(--amc-line); }
.amc-prayer--light .amc-prayer__list li { background: var(--amc-surface); color: var(--amc-muted); }
.amc-prayer--light .amc-prayer__list li span:last-child { color: var(--amc-ink); }
.amc-prayer--light .amc-prayer__list li.is-jumuah { background: var(--amc-accent-tint); }
.amc-prayer--light .amc-prayer__list li.is-jumuah span { color: var(--amc-accent); }

/* ---------- Member services ---------- */
.amc-ico-wallet { --amc-icon: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Crect%20x='3'%20y='6'%20width='18'%20height='13'%20rx='2.5'/%3E%3Cpath%20d='M3%2010.5h18M16%2015h2'/%3E%3C/svg%3E"); }
.amc-ico-scroll { --amc-icon: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M8%2021h10a2%202%200%200%200%202-2V5a2%202%200%200%200-2-2H8'/%3E%3Cpath%20d='M8%203a2%202%200%200%200-2%202v14a2%202%200%200%201-2%202h4'/%3E%3Cpath%20d='M11%208h6M11%2012h6M11%2016h3'/%3E%3C/svg%3E"); }
.amc-ico-pin { --amc-icon: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M12%2021s-7-6.2-7-11.5a7%207%200%200%201%2014%200C19%2014.8%2012%2021%2012%2021Z'/%3E%3Ccircle%20cx='12'%20cy='9.5'%20r='2.5'/%3E%3C/svg%3E"); }
.amc-ico-calendar { --amc-icon: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Crect%20x='3'%20y='5'%20width='18'%20height='16'%20rx='2.5'/%3E%3Cpath%20d='M3%2010h18M8%203v4M16%203v4M8%2014h2M14%2014h2M8%2017.5h2'/%3E%3C/svg%3E"); }
.amc-ico-clock { --amc-icon: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Ccircle%20cx='12'%20cy='12'%20r='9'/%3E%3Cpath%20d='M12%207v5l3%202'/%3E%3C/svg%3E"); }
.amc-ico-heart { --amc-icon: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M12%2020s-7-4.4-7-10a4%204%200%200%201%207-2.6A4%204%200%200%201%2019%2010c0%205.6-7%2010-7%2010Z'/%3E%3C/svg%3E"); }
.amc-ico-users { --amc-icon: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Ccircle%20cx='9'%20cy='8'%20r='3.5'/%3E%3Cpath%20d='M2.5%2020a6.5%206.5%200%200%201%2013%200'/%3E%3Cpath%20d='M16%204.6a3.5%203.5%200%200%201%200%206.8M18%2014.5a6.5%206.5%200%200%201%203.5%205.5'/%3E%3C/svg%3E"); }
.amc-ico-chat { --amc-icon: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M21%2012a8%208%200%200%201-11.6%207.1L4%2020l1-4.6A8%208%200%201%201%2021%2012Z'/%3E%3Cpath%20d='M8.5%2012h.01M12%2012h.01M15.5%2012h.01'/%3E%3C/svg%3E"); }
.amc-ico-flag { --amc-icon: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M5%2021V4'/%3E%3Cpath%20d='M5%204h12l-2.5%204L17%2012H5'/%3E%3C/svg%3E"); }
.amc-ico-clipboard { --amc-icon: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Crect%20x='5'%20y='4'%20width='14'%20height='17'%20rx='2'/%3E%3Cpath%20d='M9%204V3h6v1M9%2010h6M9%2014h6M9%2018h3'/%3E%3C/svg%3E"); }
.amc-ico-coins { --amc-icon: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cellipse%20cx='9'%20cy='7'%20rx='6'%20ry='3'/%3E%3Cpath%20d='M3%207v5c0%201.7%202.7%203%206%203s6-1.3%206-3V7'/%3E%3Cpath%20d='M9%2015v2c0%201.7%202.7%203%206%203s6-1.3%206-3v-5c0-1.7-2.7-3-6-3'/%3E%3C/svg%3E"); }
.amc-ico-globe { --amc-icon: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Ccircle%20cx='12'%20cy='12'%20r='9'/%3E%3Cpath%20d='M3%2012h18M12%203a14%2014%200%200%201%200%2018M12%203a14%2014%200%200%200%200%2018'/%3E%3C/svg%3E"); }
.amc-ico-hands { --amc-icon: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M7%2011V6a1.5%201.5%200%200%201%203%200v4'/%3E%3Cpath%20d='M10%2010V4.5a1.5%201.5%200%200%201%203%200V10'/%3E%3Cpath%20d='M13%2010V6a1.5%201.5%200%200%201%203%200v6c0%204-2.5%208-7%208a6%206%200%200%201-5-3l-1.6-3a1.5%201.5%200%200%201%202.6-1.5L7%2014'/%3E%3C/svg%3E"); }
.amc-ico-house { --amc-icon: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M3%2011%2012%204l9%207'/%3E%3Cpath%20d='M5%2010v10h14V10'/%3E%3Cpath%20d='M10%2020v-6h4v6'/%3E%3C/svg%3E"); }
.amc-ico-baby { --amc-icon: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Ccircle%20cx='12'%20cy='12'%20r='9'/%3E%3Cpath%20d='M9%2010h.01M15%2010h.01M9.5%2015a3.5%203.5%200%200%200%205%200'/%3E%3Cpath%20d='M12%203c-1.5%201.5-1%203%200%203'/%3E%3C/svg%3E"); }
.amc-ico-pledge { --amc-icon: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M12%203%204%206v6c0%204.5%203.4%208%208%209%204.6-1%208-4.5%208-9V6l-8-3Z'/%3E%3Cpath%20d='m9%2012%202%202%204-4'/%3E%3C/svg%3E"); }
.amc-ico-idcard { --amc-icon: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Crect%20x='3'%20y='5'%20width='18'%20height='14'%20rx='2'/%3E%3Ccircle%20cx='9'%20cy='11'%20r='2'/%3E%3Cpath%20d='M6%2016a3%203%200%200%201%206%200M14%2010h4M14%2014h3'/%3E%3C/svg%3E"); }
.amc-ico-userplus { --amc-icon: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Ccircle%20cx='9'%20cy='8'%20r='3.5'/%3E%3Cpath%20d='M2.5%2020a6.5%206.5%200%200%201%2013%200'/%3E%3Cpath%20d='M19%208v6M16%2011h6'/%3E%3C/svg%3E"); }
.amc-ico-login { --amc-icon: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M15%203h4a2%202%200%200%201%202%202v14a2%202%200%200%201-2%202h-4'/%3E%3Cpath%20d='M10%2017l5-5-5-5M15%2012H3'/%3E%3C/svg%3E"); }
.amc-ico-grad { --amc-icon: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='m2%209%2010-5%2010%205-10%205L2%209Z'/%3E%3Cpath%20d='M6%2011v5c3%202.5%209%202.5%2012%200v-5'/%3E%3C/svg%3E"); }
.amc-ico-play { --amc-icon: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Crect%20x='3'%20y='5'%20width='18'%20height='14'%20rx='2'/%3E%3Cpath%20d='m10%209%205%203-5%203V9Z'/%3E%3C/svg%3E"); }
.amc-ico-book { --amc-icon: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M4%205.5A2.5%202.5%200%200%201%206.5%203H20v15H6.5A2.5%202.5%200%200%200%204%2020.5v-15Z'/%3E%3Cpath%20d='M4%2020.5A2.5%202.5%200%200%201%206.5%2018H20v3H6.5'/%3E%3C/svg%3E"); }
/* Icon: a tinted square (h3::before) with the glyph masked on top (h3 a::before). */
:is(.amc-svc, .amc-fcard) { position: relative; }
:is(.amc-svc, .amc-fcard) h3 a { color: inherit; text-decoration: none; }
:is(.amc-svc, .amc-fcard) h3 a::after { content: ""; position: absolute; inset: 0; border-radius: inherit; z-index: 2; }
:is(.amc-svc, .amc-fcard) h3::before { content: ""; position: absolute; border-radius: 14px; background: var(--amc-accent-tint); transition: background-color .2s ease; }
:is(.amc-svc, .amc-fcard) h3 a::before { content: ""; position: absolute; background: currentColor; -webkit-mask: var(--amc-icon) center / contain no-repeat; mask: var(--amc-icon) center / contain no-repeat; z-index: 1; }

/* Feature cards: Chanda and Wasiyyat */
.amc-fcards { display: grid; grid-template-columns: 1fr; gap: 12px; margin-bottom: 12px; }
.amc-fcards > .wp-block-group__inner-container { display: contents; }
.amc-fcard { margin: 0 !important; border-radius: var(--amc-radius); padding: 64px 18px 18px !important; min-height: 176px; display: flex; flex-direction: column; justify-content: flex-end; color: #fff; overflow: hidden; isolation: isolate; transition: transform .2s ease, box-shadow .2s ease; }
.amc-fcard > .wp-block-group__inner-container { display: contents; }
.amc-fcard h3 { color: #fff !important; font-size: 24px !important; line-height: 1.15 !important; margin: 0 0 6px !important; letter-spacing: -.015em; }
.amc-fcard h3::before { top: 16px; left: 18px; width: 40px; height: 40px; background: rgba(255,255,255,.14); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); }
.amc-fcard h3 a::before { top: 26px; left: 28px; width: 20px; height: 20px; color: #fff; }
.amc-fcard p { color: rgba(255,255,255,.82); font-size: 15px; line-height: 1.5; margin: 0 !important; max-width: 40ch; }
.amc-fcard .amc-fcard__cta { margin-top: 12px !important; display: inline-flex; align-self: flex-start; align-items: center; gap: 8px; min-height: 44px; padding: 0 18px; border-radius: 999px; background: #fff; color: var(--amc-ink) !important; font-size: 15px; font-weight: 700; }
.amc-fcard .amc-fcard__cta::after { content: "\2192"; transition: transform .2s ease; }
.amc-fcard--chanda { background: radial-gradient(90% 120% at 100% 0%, rgba(224,178,60,.14) 0%, rgba(14,17,16,0) 55%), var(--amc-night); }
.amc-fcard--wasiyyat { background: radial-gradient(90% 120% at 100% 0%, rgba(127,200,169,.28) 0%, rgba(11,107,75,0) 55%), var(--amc-accent); }
.amc-fcard--wasiyyat .amc-fcard__cta { color: var(--amc-accent) !important; }
.amc-fcard:active { transform: scale(.99); }

/* Service rows on phones, icon cards on larger screens */
.amc-svcs { display: grid; grid-template-columns: 1fr; background: #fff; border: 1px solid var(--amc-line); border-radius: var(--amc-radius); overflow: hidden; }
.amc-svcs > .wp-block-group__inner-container { display: contents; }
.amc-svc { margin: 0 !important; min-height: 72px; padding: 14px 44px 14px 72px !important; display: flex; flex-direction: column; justify-content: center; border-bottom: 1px solid var(--amc-line); background: #fff; transition: background-color .2s ease; }
.amc-svc:last-child { border-bottom: 0; }
.amc-svc > .wp-block-group__inner-container { display: contents; }
.amc-svc h3 { font-size: 16px !important; line-height: 1.3 !important; margin: 0 !important; color: var(--amc-ink); }
.amc-svc h3::before { left: 16px; top: 50%; width: 44px; height: 44px; margin-top: -22px; border-radius: 12px; }
.amc-svc h3 a::before { left: 27px; top: 50%; width: 22px; height: 22px; margin-top: -11px; color: var(--amc-accent); }
.amc-svc p { font-size: 13px; color: var(--amc-muted); margin: 2px 0 0 !important; line-height: 1.4; }
.amc-svc::after { content: ""; position: absolute; right: 18px; top: 50%; width: 8px; height: 8px; margin-top: -4px; border-right: 2px solid #A9B1AD; border-top: 2px solid #A9B1AD; transform: rotate(45deg); transition: transform .2s ease, border-color .2s ease; }
.amc-svc:active { background: var(--amc-surface); }

/* ---------- Wasiyyat band ---------- */
.amc-band .wp-block-columns { gap: 28px; }
.amc-band figure { margin: 0; }
.amc-band figure img { border-radius: var(--amc-radius); width: 100%; height: auto; aspect-ratio: 16 / 10; object-fit: cover; object-position: 60% 30%; }
.amc-band p { font-size: 16px; line-height: 1.6; }
.amc-band .amc-facts { display: grid; grid-template-columns: 1fr; margin: 4px 0 24px !important; border-top: 1px solid rgba(255,255,255,.14); }
.amc-band .amc-facts p { margin: 0 !important; padding: 14px 0; border-bottom: 1px solid rgba(255,255,255,.08); display: flex; justify-content: space-between; align-items: baseline; gap: 16px; line-height: 1.4; }
.amc-band .amc-facts strong { color: #fff; font-size: 16px; white-space: nowrap; }
.amc-band .amc-facts span { font-size: 13px; color: #A9B1AD; text-align: right; }

/* ---------- Events ---------- */
.amc-events { display: grid; grid-template-columns: 1fr; gap: 10px; }
.amc-event { position: relative; display: grid; grid-template-columns: 56px 1fr; gap: 14px; align-items: start; background: #fff; border: 1px solid var(--amc-line); border-radius: var(--amc-radius); padding: 16px; text-decoration: none !important; color: inherit; transition: transform .2s ease, box-shadow .2s ease; }
.amc-event:active { transform: scale(.99); }
.amc-event__date { text-align: center; border-right: 1px solid var(--amc-line); padding-right: 12px; }
.amc-event__month { display: block; font-size: 11px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--amc-accent); }
.amc-event__day { display: block; font-size: 30px; font-weight: 800; line-height: 1; color: var(--amc-ink); letter-spacing: -.03em; margin-top: 4px; }
.amc-event__title { font-size: 16px; font-weight: 700; color: var(--amc-ink); line-height: 1.3; margin: 0 0 4px; }
.amc-event__meta { font-size: 13px; color: var(--amc-muted); line-height: 1.5; }
.amc-event__meta span { display: block; }
.amc-event--feature { grid-template-columns: 1fr; padding: 0; overflow: hidden; background: var(--amc-night); border-color: var(--amc-night); }
.amc-event--feature .amc-event__img { aspect-ratio: 16 / 9; background-size: cover; background-position: center; }
.amc-event--feature .amc-event__body { padding: 16px; display: grid; grid-template-columns: 56px 1fr; gap: 14px; }
.amc-event--feature .amc-event__date { border-color: rgba(255,255,255,.16); }
.amc-event--feature :is(.amc-event__day, .amc-event__title) { color: #fff; }
.amc-event--feature .amc-event__month { color: var(--amc-mint); }
.amc-event--feature .amc-event__title { font-size: 19px; }
.amc-event--feature .amc-event__meta { color: #A9B1AD; }
.amc-events-empty { padding: 32px; border: 1px dashed var(--amc-line); border-radius: var(--amc-radius); text-align: center; color: var(--amc-muted); }

/* ---------- Khilafat split ---------- */
.amc-split .wp-block-columns { gap: 24px; }
.amc-split figure { margin: 0; }
.amc-split figure img { border-radius: var(--amc-radius); width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: cover; object-position: 50% 6%; background: #E9ECEA; }
.amc-split h2 { margin-bottom: 12px; }
.amc-split .amc-meta { font-size: 12px; color: var(--amc-muted); margin-top: 16px; }

/* ---------- Chapters: swipeable row on phones, grid on desktop ---------- */
.amc-chapter-search { display: grid; grid-template-columns: 1fr; gap: 10px; margin-bottom: 20px; }
.amc-chapter-search :is(select, input) { width: 100%; min-height: var(--amc-tap); border: 1px solid var(--amc-line); border-radius: var(--amc-radius-sm); padding: 12px 14px; font: inherit; font-size: 16px; background: #fff; color: var(--amc-ink); }
.amc-chapter-search button { min-height: var(--amc-tap); border-radius: 999px; width: 100%; }
.amc-chapters { display: grid; grid-auto-flow: column; grid-auto-columns: 78%; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; overscroll-behavior-x: contain; margin: 0 calc(var(--amc-gutter) * -1); padding: 0 var(--amc-gutter) 8px; scroll-padding-left: var(--amc-gutter); scrollbar-width: none; }
.amc-chapters::-webkit-scrollbar { display: none; }
.amc-chapter { scroll-snap-align: start; isolation: isolate; position: relative; display: flex; flex-direction: column; background: #fff; border: 1px solid var(--amc-line); border-radius: var(--amc-radius); overflow: hidden; text-decoration: none !important; color: inherit; transition: transform .2s ease, box-shadow .2s ease; }
.amc-chapter__img { aspect-ratio: 16 / 9; background: var(--amc-night-soft) center / cover no-repeat; transition: transform .4s ease; }
.amc-chapter__body { padding: 14px 16px 16px; }
.amc-chapter__state { font-size: 11px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--amc-accent); }
.amc-chapter__name { font-size: 18px; font-weight: 700; color: var(--amc-ink); margin: 4px 0 2px; line-height: 1.25; }
.amc-chapter__mosque { font-size: 14px; color: var(--amc-muted); }

/* ---------- Departments ---------- */
.amc-aux { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-bottom: 8px; }
.amc-aux a:last-child:nth-child(odd) { grid-column: span 2; }
.amc-aux a { display: flex; flex-direction: column; justify-content: space-between; gap: 12px; min-height: 104px; padding: 16px; border-radius: var(--amc-radius); background: var(--amc-forest); color: #fff !important; text-decoration: none !important; transition: background-color .2s ease, transform .2s ease; }
.amc-aux a:active { background: var(--amc-accent); }
.amc-aux__name { font-size: 18px; font-weight: 800; letter-spacing: -.01em; }
.amc-aux__desc { font-size: 12px; color: #A9B1AD; line-height: 1.4; }
.amc-depts { display: grid; grid-template-columns: minmax(0, 1fr); column-gap: 40px; border-top: 1px solid var(--amc-line); }
.amc-dept { display: flex; align-items: center; gap: 12px; min-height: 56px; padding: 8px 0; border-bottom: 1px solid var(--amc-line); text-decoration: none !important; color: var(--amc-ink) !important; }
.amc-dept__icon { flex: 0 0 40px; height: 40px; border-radius: 12px; background: var(--amc-accent-tint); display: grid; place-items: center; color: var(--amc-accent); transition: background-color .2s ease, color .2s ease; }
.amc-dept__icon svg { width: 20px; height: 20px; }
.amc-dept:active .amc-dept__icon { background: var(--amc-accent); color: #fff; }
.amc-dept__text { flex: 1; min-width: 0; }
.amc-dept__name { display: block; font-weight: 700; font-size: 16px; line-height: 1.3; }
.amc-dept__tag { display: block; font-size: 13px; color: var(--amc-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.amc-dept__ext { font-size: 14px; color: var(--amc-muted); }

/* ---------- Office of the Ameer ---------- */
.amc-ameer .wp-block-columns { gap: 24px; flex-direction: column-reverse; }
.amc-ameer figure { margin: 0; }
.amc-ameer figure img { border-radius: var(--amc-radius); aspect-ratio: 4 / 3; object-fit: cover; object-position: 50% 20%; width: 100%; height: auto; }
.amc-people { display: grid; grid-template-columns: 1fr; gap: 0; margin: 20px 0 0 !important; border-top: 2px solid var(--amc-ink); }
.amc-people p { margin: 0 !important; padding: 12px 0; border-bottom: 1px solid var(--amc-line); line-height: 1.4; }
.amc-people strong { display: block; font-size: 16px; color: var(--amc-ink); }
.amc-people span { font-size: 14px; color: var(--amc-muted); }

/* ---------- Mobile dock (bottom action bar) ---------- */
.amc-dock { position: fixed; left: 0; right: 0; bottom: 0; z-index: 999; display: grid; grid-template-columns: repeat(5, 1fr); height: calc(var(--amc-dock) + env(safe-area-inset-bottom)); padding-bottom: env(safe-area-inset-bottom); background: rgba(14, 17, 16, .96); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border-top: 1px solid rgba(255,255,255,.08); }
.amc-dock a { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; color: #C3CAC6; text-decoration: none; font-size: 11px; font-weight: 600; letter-spacing: .01em; }
.amc-dock a svg { width: 22px; height: 22px; }
.amc-dock a:active, .amc-dock a[aria-current="page"] { color: #fff; }
.amc-dock a.amc-dock__primary { color: #fff; }
.amc-dock a.amc-dock__primary svg { background: var(--amc-accent); border-radius: 10px; padding: 4px; width: 30px; height: 30px; margin-top: -4px; }
body.amc-has-dock { padding-bottom: calc(var(--amc-dock) + env(safe-area-inset-bottom)); }
body.amc-has-dock #kt-scroll-up, body.amc-has-dock .scroll-up-wrap { bottom: calc(var(--amc-dock) + 16px) !important; }

/* ---------- Kadence header, mobile drawer and footer ---------- */
.site-header .site-branding .site-title { font-weight: 800; letter-spacing: -.01em; }
.site-top-header-wrap { font-size: 13px; color: var(--amc-muted); }
.site-top-header-wrap .site-header-row-container-inner { background: var(--amc-surface) !important; border-bottom: 1px solid var(--amc-line); }
.transparent-header .site-top-header-wrap .site-header-row-container-inner { background: rgba(14,17,16,.35) !important; border-bottom: 1px solid rgba(255,255,255,.08); }
.site-top-header-wrap .header-html p { margin: 0; letter-spacing: .02em; }
.site-top-header-wrap a { color: var(--amc-ink) !important; text-decoration: none; }
.site-top-header-wrap a:hover { color: var(--amc-accent) !important; }
.transparent-header .site-top-header-wrap { color: #A9B1AD; }
.transparent-header .site-top-header-wrap a { color: #E3E6E3 !important; }
.transparent-header .site-top-header-wrap a:hover { color: #fff !important; }
.header-navigation .menu > li > a { font-weight: 600; }
.mobile-toggle-open-container .menu-toggle-open { min-width: var(--amc-tap); min-height: var(--amc-tap); }
#mobile-drawer .drawer-inner { background: var(--amc-night) !important; }
#mobile-drawer .mobile-navigation ul li > a, #mobile-drawer .mobile-navigation ul li .drawer-nav-drop-wrap > a { color: #fff !important; font-size: 18px; font-weight: 600; padding-top: 14px !important; padding-bottom: 14px !important; }
#mobile-drawer .mobile-navigation ul li .sub-menu a { font-size: 16px !important; font-weight: 500; color: #C3CAC6 !important; }
#mobile-drawer .mobile-navigation ul li, #mobile-drawer .mobile-navigation ul li .drawer-nav-drop-wrap { border-color: rgba(255,255,255,.1) !important; }
#mobile-drawer .drawer-sub-toggle { color: #fff !important; min-width: var(--amc-tap); }
#mobile-drawer .menu-toggle-close { color: #fff !important; min-width: var(--amc-tap); min-height: var(--amc-tap); }
#mobile-drawer .mobile-header-button-wrap .button { background: var(--amc-accent) !important; color: #fff !important; border-radius: 999px; width: 100%; min-height: var(--amc-tap); justify-content: center; }
.site-footer { font-size: 15px; }
.site-footer a { text-decoration: none; color: #D7DCD9 !important; transition: color .2s ease; }
.site-footer a:hover { color: #fff !important; }
.site-footer .widget-title { font-size: 12px !important; letter-spacing: .14em; text-transform: uppercase; color: #fff !important; }
.site-footer .widget_nav_menu ul { list-style: none; margin: 0; padding: 0; }
.site-footer .widget_nav_menu li { margin: 0; }
.site-footer .widget_nav_menu li a { display: inline-block; padding: 8px 0; }
.site-footer .amc-footer-brand { font-size: 20px !important; margin: 0 0 12px; color: #fff; }
.site-footer .amc-footer-contact strong { color: #fff; }

/* ---------- ≥600px: small tablets ---------- */
@media (min-width: 600px) {
  .amc-fcards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .amc-svcs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .amc-svc:nth-child(odd) { border-right: 1px solid var(--amc-line); }
  .amc-svc:nth-last-child(-n+2) { border-bottom: 0; }
  :root { --amc-gutter: 28px; --amc-section: 44px; }
  .amc-head p { font-size: 17px; }
  .amc-hero .wp-block-button, .amc-band .wp-block-button { flex: 0 0 auto; }
  .amc-hero .wp-block-button__link, .amc-band .wp-block-button__link { width: auto; }
  .amc-hero .amc-hero-sub { font-size: 18px; }
  .amc-prayer__list { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .amc-chapter-search { grid-template-columns: 1fr 1fr auto; }
  .amc-chapter-search button { width: auto; padding: 0 24px; }
  .amc-chapters { grid-auto-columns: 46%; }
  .amc-aux { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .amc-aux a:last-child:nth-child(odd) { grid-column: auto; }
  .amc-depts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .amc-people { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; border-top: 0; }
  .amc-people p { border-top: 2px solid var(--amc-ink); border-bottom: 0; }
  .amc-band .amc-facts { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .amc-band .amc-facts p { display: block; padding: 16px 16px 0 0; border-bottom: 0; }
  .amc-band .amc-facts strong { display: block; font-size: 17px; }
  .amc-band .amc-facts span { text-align: left; font-size: 14px; }
  .amc-head-row { flex-direction: row; align-items: flex-end; justify-content: space-between; gap: 24px; }
  .amc-head-row > .wp-block-group__inner-container > .wp-block-group { flex: 1 1 auto; }
  .amc-head-row .wp-block-buttons { flex: 0 0 auto; }
}

/* ---------- ≥782px: tablets ---------- */
@media (min-width: 782px) {
  .amc-hero.wp-block-cover { min-height: min(520px, 70vh) !important; padding: 56px var(--amc-gutter) 48px !important; }
  .amc-hero .wp-block-columns { gap: 40px; align-items: flex-end !important; }
  .amc-hero .wp-block-cover__background { background: linear-gradient(90deg, rgba(8,34,26,.92) 0%, rgba(12,48,36,.66) 55%, rgba(12,48,36,.4) 100%) !important; }
  .amc-prayer { padding: 24px; }
  .amc-hp { max-width: 440px; margin-left: auto; }
  .amc-hp__search { padding: 24px 24px 20px; }
  .amc-hp__heading { font-size: 20px; }
  .amc-hp__row { padding: 16px 24px; }
  .amc-prayer__list { display: block; }
  .amc-prayer__list li { flex-direction: row; justify-content: space-between; background: none !important; border-radius: 0; padding: 9px 0; border-top: 1px solid rgba(255,255,255,.1); font-size: 15px; color: #D7DCD9; }
  .amc-prayer--light .amc-prayer__list li { border-color: var(--amc-line); color: var(--amc-text); }
  .amc-band .wp-block-columns, .amc-split .wp-block-columns, .amc-ameer .wp-block-columns { gap: clamp(32px, 5vw, 72px); align-items: center !important; }
  .amc-ameer .wp-block-columns { flex-direction: row; }
  .amc-band figure img { aspect-ratio: 1 / 1; max-height: 420px; }
  .amc-split figure { max-width: 400px; margin: 0 auto; }
  .amc-split figure img { aspect-ratio: 4 / 5; max-height: none; object-position: 50% 0%; }
  .amc-ameer figure img { aspect-ratio: 4 / 5; }
  .amc-events { grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 16px; }
  .amc-event--feature { grid-row: span 3; grid-template-columns: 1fr; padding: 0; }
  .amc-event--feature .amc-event__img { aspect-ratio: auto; min-height: 200px; flex: 1; }
  .amc-event--feature { display: flex; flex-direction: column; align-items: stretch; }
  .amc-event { grid-template-columns: 72px 1fr; gap: 18px; padding: 20px; }
  .amc-event__day { font-size: 38px; }
  .amc-event--feature .amc-event__body { grid-template-columns: 72px 1fr; padding: 24px 26px 28px; }
  .amc-event--feature .amc-event__title { font-size: 23px; }
  .amc-chapters { grid-auto-flow: row; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-columns: auto; overflow: visible; margin: 0; padding: 0; gap: 20px; }
}

/* ---------- ≥1025px: desktop ---------- */
@media (min-width: 1025px) {
  .amc-fcard { min-height: 172px; padding: 68px 24px 20px !important; }
  .amc-fcard h3 { font-size: 26px !important; }
  .amc-fcard h3::before { top: 20px; left: 24px; width: 44px; height: 44px; }
  .amc-fcard h3 a::before { top: 31px; left: 35px; width: 22px; height: 22px; }
  .amc-fcard p { font-size: 16px; }
  .amc-svcs { grid-template-columns: repeat(4, minmax(0, 1fr)); background: transparent; border: 0; border-radius: 0; overflow: visible; gap: 12px; }
  .amc-svc { border: 1px solid var(--amc-line) !important; border-radius: 14px; padding: 12px 34px 12px 66px !important; min-height: 74px; justify-content: center; }
  .amc-svc h3 { font-size: 15px !important; }
  .amc-svc h3::before { left: 14px; top: 50%; margin-top: -19px; width: 38px; height: 38px; border-radius: 11px; }
  .amc-svc h3 a::before { left: 23px; top: 50%; margin-top: -10px; width: 20px; height: 20px; }
  .amc-svc::after { top: 50%; right: 16px; margin-top: -4px; }
  .amc-svc p { font-size: 12.5px; margin-top: 1px !important; }
  :root { --amc-gutter: 24px; --amc-section: clamp(44px, 4.5vw, 60px); --amc-radius: 18px; }
  .amc-section h3 { font-size: 24px; }
  .amc-chapters { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .amc-aux { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; }
  .amc-aux a { min-height: 118px; padding: 18px; }
  .amc-aux__name { font-size: 20px; }
  .amc-depts { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .amc-dock { display: none; }
  body.amc-has-dock { padding-bottom: 0; }
  body.amc-has-dock #kt-scroll-up, body.amc-has-dock .scroll-up-wrap { bottom: 30px !important; }
}

/* Hover effects only where a real pointer exists. */
@media (hover: hover) and (pointer: fine) {
  .amc-hp__row:hover { background: rgba(255,255,255,.06); }
  .amc-hp__row:hover > svg { transform: translateX(3px); color: #fff; }
  .amc-svc:hover { background: var(--amc-surface); }
  .amc-svc:hover h3::before { background: var(--amc-accent); }
  .amc-svc:hover h3 a::before { color: #fff; }
  .amc-svc:hover::after { border-color: var(--amc-ink); transform: translateX(2px) rotate(45deg); }
  .amc-fcard:hover { transform: translateY(-3px); box-shadow: 0 22px 44px -24px rgba(14,17,16,.55); }
  .amc-fcard:hover .amc-fcard__cta::after { transform: translateX(3px); }
  .amc-event:hover, .amc-chapter:hover { transform: translateY(-2px); box-shadow: var(--amc-shadow-hover); }
  .amc-chapter:hover .amc-chapter__img { transform: scale(1.04); }
  .amc-aux a:hover { background: var(--amc-accent); transform: translateY(-2px); }
  .amc-aux a:hover .amc-aux__desc { color: var(--amc-accent-tint); }
  .amc-dept:hover .amc-dept__icon { background: var(--amc-accent); color: #fff; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition: none !important; scroll-behavior: auto !important; }
}

/* ---------- Khilafat media: latest Friday Sermon and MTA live ---------- */
.amc-media { display: grid; grid-template-columns: 1fr; gap: 12px; margin: 20px 0 8px; }
.amc-media a { text-decoration: none !important; color: inherit; border-radius: var(--amc-radius); transition: transform .2s ease, box-shadow .2s ease; }
.amc-media a:active { transform: scale(.99); }
.amc-media__sermon { display: grid; grid-template-columns: 132px 1fr; gap: 14px; align-items: center; padding: 10px; border: 1px solid var(--amc-line); background: #fff; }
.amc-media__thumb { position: relative; aspect-ratio: 16 / 9; border-radius: 10px; background: var(--amc-night) center / cover no-repeat; overflow: hidden; }
.amc-media__thumb::after { content: ""; position: absolute; inset: 0; background: rgba(14,17,16,.25); }
.amc-media__play { position: absolute; z-index: 1; left: 50%; top: 50%; width: 38px; height: 38px; margin: -19px 0 0 -19px; border-radius: 50%; background: rgba(255,255,255,.95); color: var(--amc-ink); display: grid; place-items: center; }
.amc-media__play svg { width: 18px; height: 18px; margin-left: 2px; }
.amc-media__body { display: flex; flex-direction: column; min-width: 0; }
.amc-media__label { font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--amc-accent); }
.amc-media__title { font-size: 16px; font-weight: 700; line-height: 1.3; color: var(--amc-ink); margin: 2px 0; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.amc-media__meta { font-size: 13px; color: var(--amc-muted); line-height: 1.45; }
.amc-media__live { display: flex; flex-direction: column; gap: 4px; padding: 18px; background: var(--amc-night); }
.amc-media__live .amc-media__title { color: #fff; }
.amc-media__live .amc-media__meta { color: #A9B1AD; }
.amc-media__badge { align-self: flex-start; display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border-radius: 999px; background: rgba(229, 72, 77, .16); color: #FF8A8E; font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; margin-bottom: 6px; }
.amc-media__dot { width: 7px; height: 7px; border-radius: 50%; background: #E5484D; box-shadow: 0 0 0 0 rgba(229,72,77,.6); animation: amc-pulse 1.8s infinite; }
.amc-media__cta { margin-top: 10px; align-self: flex-start; display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 0 16px; border-radius: 999px; background: #fff; color: var(--amc-ink); font-size: 14px; font-weight: 700; }
.amc-media__cta::after { content: "\2192"; }
@keyframes amc-pulse { 0% { box-shadow: 0 0 0 0 rgba(229,72,77,.55); } 70% { box-shadow: 0 0 0 8px rgba(229,72,77,0); } 100% { box-shadow: 0 0 0 0 rgba(229,72,77,0); } }
@media (min-width: 600px) {
  .amc-media { grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); }
  .amc-media__sermon { grid-template-columns: 1fr; align-content: start; padding: 10px 10px 16px; }
  .amc-media__body { padding: 0 6px; }
}
@media (hover: hover) and (pointer: fine) {
  .amc-media a:hover { transform: translateY(-2px); box-shadow: var(--amc-shadow-hover); }
}
@media (prefers-reduced-motion: reduce) { .amc-media__dot { animation: none; } }

/* =====================================================================
   Page templates: chapters, departments, directory, content pages
   ===================================================================== */

/* Breadcrumb */
.amc-crumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; font-size: 13px; margin-bottom: 14px; }
.amc-crumbs a { color: inherit; opacity: .8; text-decoration: none; }
.amc-crumbs a:hover { opacity: 1; text-decoration: underline; }
.amc-crumbs span { opacity: .5; }

/* Quick action pills */
.amc-actions { display: grid; grid-template-columns: repeat(auto-fit, minmax(0, 1fr)); gap: 8px; margin-top: 20px; }
.amc-act { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; min-height: 64px; padding: 8px; border-radius: 14px; background: rgba(255,255,255,.12); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); color: #fff !important; text-decoration: none !important; font-size: 13px; font-weight: 700; transition: background-color .2s ease; }
.amc-act svg { width: 22px; height: 22px; }
.amc-act--primary { background: var(--amc-accent); }
.amc-act:active { background: rgba(255,255,255,.22); }

/* Chapter header */
.amc-ch-hero { position: relative; color: #fff; background: var(--amc-night) var(--amc-hero-img, none) center 40% / cover no-repeat; padding: 32px var(--amc-gutter) 24px; isolation: isolate; }
.amc-ch-hero::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(14,17,16,.45) 0%, rgba(14,17,16,.92) 85%); }
.amc-ch-hero__inner { max-width: var(--amc-content); margin: 0 auto; padding-top: 120px; }
.amc-ch-hero__title { color: #fff !important; font-size: clamp(32px, 8vw, 56px) !important; line-height: 1.05 !important; letter-spacing: -.025em; margin: 0 0 6px !important; }
.amc-ch-hero__sub { color: #D7DCD9; font-size: 16px; margin: 0 !important; }
.amc-ch-hero--compact .amc-ch-hero__inner { padding-top: 40px; }
.amc-ch-hero--compact .amc-ch-hero__title { font-size: clamp(28px, 7vw, 44px) !important; }

/* Department header (no photo; icon and dark ground) */
.amc-dp-hero { position: relative; color: #fff; padding: 32px var(--amc-gutter) 28px; background: radial-gradient(90% 120% at 100% 0%, rgba(224,178,60,.16) 0%, rgba(15,59,44,0) 60%), var(--amc-forest); }
.amc-dp-hero__inner { max-width: var(--amc-content); margin: 0 auto; }
.amc-dp-hero__icon { display: grid; place-items: center; width: 56px; height: 56px; border-radius: 16px; background: rgba(255,255,255,.1); color: #fff; margin: 20px 0 16px; }
.amc-dp-hero__icon svg { width: 28px; height: 28px; }
.amc-dp-hero__type { font-size: 12px !important; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--amc-gold) !important; margin: 0 0 8px !important; }
.amc-dp-hero__title { color: #fff !important; font-size: clamp(32px, 8vw, 54px) !important; line-height: 1.05 !important; letter-spacing: -.025em; margin: 0 0 8px !important; }
.amc-dp-hero__sub { color: #C3CAC6; font-size: 17px; line-height: 1.5; margin: 0 !important; max-width: 52ch; }
.amc-dp-hero--compact .amc-dp-hero__icon { display: none; }
.amc-dp-hero .amc-actions { grid-template-columns: repeat(auto-fit, minmax(120px, max-content)); }
.amc-dp-hero .amc-act { flex-direction: row; min-height: 48px; padding: 0 18px; border-radius: 999px; }
.amc-dp-hero .amc-act svg { width: 18px; height: 18px; }

/* Section sub navigation: horizontal scroll on phones, sticks under the header */
.amc-subnav { position: sticky; top: calc(var(--amc-header-h) + var(--amc-adminbar)); z-index: 20; background: rgba(255,255,255,.96); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-bottom: 1px solid var(--amc-line); }
.amc-subnav__inner { max-width: var(--amc-content); margin: 0 auto; display: flex; gap: 4px; overflow-x: auto; padding: 8px var(--amc-gutter); scrollbar-width: none; scroll-snap-type: x proximity; }
.amc-subnav__inner::-webkit-scrollbar { display: none; }
.amc-subnav a { flex: 0 0 auto; scroll-snap-align: start; display: inline-flex; align-items: center; min-height: 40px; padding: 0 14px; border-radius: 999px; color: var(--amc-text); font-size: 14px; font-weight: 600; text-decoration: none; white-space: nowrap; transition: background-color .2s ease, color .2s ease; }
.amc-subnav a[aria-current="page"] { background: var(--amc-ink); color: #fff; }

/* Body: single column on phones, main plus sidebar on desktop */
.amc-ch-body { max-width: var(--amc-content); margin: 0 auto; padding: 24px var(--amc-gutter) 56px; display: grid; grid-template-columns: minmax(0, 1fr); gap: 20px; }
.amc-ch-body--single { max-width: 820px; }
.amc-ch-main { display: grid; gap: 20px; align-content: start; }
.amc-ch-side { display: grid; gap: 16px; align-content: start; }
.amc-prose { font-size: 17px; line-height: 1.7; color: var(--amc-text); }
.amc-prose > *:first-child { margin-top: 0; }
.amc-prose h2 { font-size: 26px; line-height: 1.2; margin: 32px 0 12px; }
.amc-prose h3 { font-size: 20px; line-height: 1.25; margin: 24px 0 10px; }
.amc-prose img { border-radius: var(--amc-radius); height: auto; }
.amc-ch-intro { font-size: 18px; }
.amc-card { background: #fff; border: 1px solid var(--amc-line); border-radius: var(--amc-radius); padding: 20px; }
.amc-card h2 { font-size: 20px !important; line-height: 1.25 !important; margin: 0 0 12px !important; }
.amc-card p { font-size: 15px; line-height: 1.65; color: var(--amc-text); margin: 0; }
.amc-visit { background: var(--amc-surface); border-color: var(--amc-surface); }
.amc-ch-events h2 { font-size: 22px; margin: 8px 0 12px; }
.amc-events--list { grid-template-columns: 1fr !important; }

/* Contact card */
.amc-contact__list { list-style: none; margin: 0 !important; padding: 0 !important; }
.amc-contact__list li { display: flex; gap: 12px; align-items: flex-start; padding: 12px 0; border-top: 1px solid var(--amc-line); font-size: 15px; line-height: 1.5; }
.amc-contact__list li:first-child { border-top: 0; padding-top: 0; }
.amc-contact__list svg { flex: 0 0 20px; width: 20px; height: 20px; color: var(--amc-accent); margin-top: 2px; }
.amc-contact__list a { color: var(--amc-ink); font-weight: 600; text-decoration: none; word-break: break-word; }
.amc-contact__list strong { color: var(--amc-ink); }
.amc-map { margin-top: 14px; border-radius: 12px; overflow: hidden; aspect-ratio: 4 / 3; background: var(--amc-surface); }
.amc-map iframe { width: 100%; height: 100%; border: 0; display: block; filter: grayscale(1) contrast(1.05); }
.amc-callout { margin-top: 24px; padding: 20px; border-radius: var(--amc-radius); background: var(--amc-accent-tint); display: grid; gap: 14px; }
.amc-callout p { margin: 0; font-size: 16px; color: var(--amc-ink); }
.amc-callout .wp-element-button { justify-self: start; }

/* Chapter directory */
.amc-chapter-search--page { position: sticky; top: calc(var(--amc-header-h) + var(--amc-adminbar)); z-index: 15; background: var(--amc-bg); padding: 12px 0; margin-bottom: 8px; }
.amc-dir-status { font-size: 14px; color: var(--amc-muted); margin: 0 0 16px; }
.amc-dir-status a { color: var(--amc-accent); font-weight: 600; }
.amc-dir-group { margin-top: 28px; }
.amc-section .amc-dir-group__title, .amc-dir-group__title { font-size: 13px !important; line-height: 1.3 !important; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--amc-muted) !important; margin: 0 0 10px !important; display: flex; align-items: center; gap: 8px; }
.amc-dir-group__title span { font-size: 12px; letter-spacing: 0; padding: 2px 8px; border-radius: 999px; background: var(--amc-surface); color: var(--amc-ink); }
.amc-dir { display: grid; grid-template-columns: 1fr; border: 1px solid var(--amc-line); border-radius: var(--amc-radius); overflow: hidden; background: #fff; }
.amc-dir-item { display: flex; align-items: center; gap: 14px; min-height: 76px; padding: 10px 40px 10px 12px; border-bottom: 1px solid var(--amc-line); color: inherit !important; text-decoration: none !important; position: relative; transition: background-color .2s ease; }
.amc-dir-item::after { content: ""; position: absolute; right: 18px; top: 50%; width: 8px; height: 8px; margin-top: -4px; border-right: 2px solid #A9B1AD; border-top: 2px solid #A9B1AD; transform: rotate(45deg); }
.amc-dir-item:last-child { border-bottom: 0; }
.amc-dir-item:active { background: var(--amc-surface); }
.amc-dir-item__img { flex: 0 0 56px; height: 56px; border-radius: 12px; background: var(--amc-surface) center / cover no-repeat; }
.amc-dir-item__img:not([style]) { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238A918D' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.2-7-11.5a7 7 0 0 1 14 0C19 14.8 12 21 12 21Z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E"); background-size: 24px; filter: none; }
.amc-dir-item__text { display: flex; flex-direction: column; min-width: 0; }
.amc-dir-item__name { font-size: 16px; font-weight: 700; color: var(--amc-ink); line-height: 1.3; }
.amc-dir-item__meta { font-size: 13px; color: var(--amc-muted); line-height: 1.4; }

/* Content page header */
.amc-page-hero { background: radial-gradient(70% 120% at 100% 0%, rgba(224,178,60,.16) 0%, rgba(15,59,44,0) 60%), var(--amc-forest); color: #D7DCD9; padding: 48px var(--amc-gutter) 40px !important; margin: 0 !important; }
.amc-page-hero > .wp-block-group__inner-container { max-width: var(--amc-content); margin: 0 auto; }
.amc-page-hero h1 { color: #fff !important; font-size: clamp(34px, 8.5vw, 60px) !important; line-height: 1.05 !important; letter-spacing: -.025em; margin: 0 0 14px !important; max-width: 16ch; }
.amc-page-hero p { font-size: 17px; line-height: 1.6; color: #C3CAC6; max-width: 56ch; margin: 0 !important; }
.amc-page-hero .amc-eyebrow { color: var(--amc-mint) !important; margin-bottom: 12px !important; }

/* Two-column text sections */
.amc-text-grid { display: grid; grid-template-columns: 1fr; gap: 24px; }
.amc-text-grid > .wp-block-group__inner-container { display: contents; }
.amc-text-block { margin: 0 !important; padding-top: 18px !important; border-top: 2px solid var(--amc-ink); }
.amc-text-block > .wp-block-group__inner-container > * { margin-top: 0; }
.amc-text-block h3 { font-size: 20px !important; margin: 0 0 8px !important; }
.amc-text-block p { font-size: 16px; line-height: 1.65; color: var(--amc-text); margin: 0 !important; }

/* Stats band */
.amc-stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; }
.amc-stats > .wp-block-group__inner-container { display: contents; }
.amc-stats p { margin: 0 !important; padding: 18px 12px 18px 0; border-top: 1px solid rgba(255,255,255,.14); }
.amc-stats strong { display: block; font-size: clamp(32px, 8vw, 52px); line-height: 1; font-weight: 800; color: #fff; letter-spacing: -.03em; margin-bottom: 6px; }
.amc-stats span { font-size: 14px; color: #A9B1AD; }

/* Leader profile */
.amc-profile .wp-block-columns { gap: 24px; }
.amc-profile figure { margin: 0; }
.amc-profile figure img { border-radius: var(--amc-radius); width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; object-position: 50% 20%; }
.amc-leaders { display: grid; grid-template-columns: 1fr; gap: 12px; }
.amc-leaders > .wp-block-group__inner-container { display: contents; }
.amc-leader { margin: 0 !important; background: #fff; border: 1px solid var(--amc-line); border-radius: var(--amc-radius); padding: 20px !important; }
.amc-leader > .wp-block-group__inner-container > * { margin-top: 0; }
.amc-leader h3 { font-size: 18px !important; margin: 0 0 4px !important; }
.amc-leader p { font-size: 14px; color: var(--amc-muted); margin: 0 !important; line-height: 1.5; }

/* Contact page */
.amc-contact-grid { display: grid; grid-template-columns: 1fr; gap: 16px; }
.amc-contact-grid > .wp-block-group__inner-container { display: contents; }
.amc-ctile { margin: 0 !important; background: #fff; border: 1px solid var(--amc-line); border-radius: var(--amc-radius); padding: 20px !important; }
.amc-ctile > .wp-block-group__inner-container > * { margin-top: 0; }
.amc-ctile h3 { font-size: 13px !important; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--amc-muted) !important; margin: 0 0 8px !important; }
.amc-ctile p { font-size: 17px; line-height: 1.55; color: var(--amc-ink); margin: 0 !important; }
.amc-ctile a { color: var(--amc-ink); font-weight: 700; text-decoration: none; border-bottom: 1.5px solid var(--amc-line); }
.amc-form-card { background: var(--amc-surface); border-radius: var(--amc-radius); padding: 20px !important; margin: 0 !important; }
.amc-form-card h2 { font-size: 24px !important; margin: 0 0 6px !important; }
.amc-form-card > .wp-block-group__inner-container > p { color: var(--amc-muted); margin: 0 0 16px !important; font-size: 15px; }
/* Fluent Forms in the design system */
.amc-form-card .ff-el-input--label label { font-weight: 600; font-size: 14px; color: var(--amc-ink); }
.amc-form-card .ff-el-form-control { min-height: var(--amc-tap); border: 1px solid var(--amc-line) !important; border-radius: var(--amc-radius-sm) !important; font-size: 16px !important; padding: 12px 14px !important; background: #fff !important; box-shadow: none !important; }
.amc-form-card textarea.ff-el-form-control { min-height: 140px; }
.amc-form-card .ff-el-form-control:focus { border-color: var(--amc-accent) !important; outline: 3px solid var(--amc-accent-tint); }
.amc-form-card .ff-btn-submit { min-height: var(--amc-tap); border-radius: 999px !important; background: var(--amc-accent) !important; color: #fff !important; font-weight: 700 !important; padding: 0 28px !important; border: 0 !important; width: 100%; }
.amc-form-card .ff-btn-submit:hover { background: var(--amc-accent-hover) !important; }

@media (min-width: 600px) {
  .amc-actions { grid-template-columns: repeat(auto-fit, minmax(110px, max-content)); }
  .amc-act { flex-direction: row; min-height: 48px; padding: 0 18px; border-radius: 999px; gap: 8px; font-size: 14px; }
  .amc-act svg { width: 18px; height: 18px; }
  .amc-text-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 40px; }
  .amc-stats { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .amc-leaders { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .amc-contact-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .amc-dir { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .amc-dir-item:nth-child(odd) { border-right: 1px solid var(--amc-line); }
  .amc-form-card .ff-btn-submit { width: auto; }
}
@media (min-width: 782px) {
  .amc-ch-hero { padding: 40px var(--amc-gutter) 36px; }
  .amc-ch-hero__inner { padding-top: 200px; }
  .amc-ch-hero--compact .amc-ch-hero__inner { padding-top: 64px; }
  .amc-dp-hero { padding: 56px var(--amc-gutter) 48px; }
  .amc-page-hero { padding: 88px var(--amc-gutter) 72px !important; }
  .amc-profile figure img { aspect-ratio: 4 / 5; }
  .amc-profile .wp-block-columns { gap: 56px; align-items: center !important; }
  .amc-form-card, .amc-card { padding: 28px !important; }
}
@media (min-width: 1025px) {
  .amc-ch-body { grid-template-columns: minmax(0, 1fr) 380px; gap: 40px; padding-top: 40px; padding-bottom: 96px; }
  .amc-ch-body--single { grid-template-columns: minmax(0, 1fr); }
  .amc-ch-side { position: sticky; top: calc(var(--amc-header-h) + var(--amc-adminbar) + 72px); }
  .amc-leaders { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .amc-contact-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .amc-dir { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .amc-dir-item:nth-child(odd) { border-right: 0; }
  .amc-dir-item:not(:nth-child(3n)) { border-right: 1px solid var(--amc-line); }
}
@media (hover: hover) and (pointer: fine) {
  .amc-act:hover { background: rgba(255,255,255,.22); }
  .amc-act--primary:hover { background: var(--amc-accent-hover); }
  .amc-subnav a:hover:not([aria-current]) { background: var(--amc-surface); }
  .amc-dir-item:hover { background: var(--amc-surface); }
}

/* Content page details */
.amc-lead-muted { color: var(--amc-muted); font-size: 16px; margin: -4px 0 20px !important; }
.amc-contact-form-section h3 { font-size: 20px !important; margin: 0 0 8px !important; }
.amc-contact-form-section .wp-block-column > p { color: var(--amc-text); font-size: 16px; }
.amc-contact-form-section .wp-block-column > .wp-block-buttons { margin: 14px 0 32px; }
.amc-directory { padding-top: 8px !important; }
.amc-about-cta .wp-block-buttons { display: flex; flex-wrap: wrap; }

/* Member Services page */
.amc-ms-jump { position: sticky; top: calc(var(--amc-header-h) + var(--amc-adminbar)); z-index: 15; margin: 0 !important; background: rgba(255,255,255,.96); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-bottom: 1px solid var(--amc-line); }
.amc-ms-jump p { max-width: var(--amc-content) !important; margin: 0 auto !important; display: flex; gap: 4px; overflow-x: auto; padding: 8px var(--amc-gutter); scrollbar-width: none; }
.amc-ms-jump p::-webkit-scrollbar { display: none; }
.amc-ms-jump a { flex: 0 0 auto; display: inline-flex; align-items: center; min-height: 40px; padding: 0 14px; border-radius: 999px; background: var(--amc-surface); color: var(--amc-ink); font-size: 14px; font-weight: 600; text-decoration: none; white-space: nowrap; }
.amc-ms-group { scroll-margin-top: 130px; }
.amc-ms-group .amc-svcs { margin-top: 4px; }
.amc-section--surface .amc-svc { background: #fff; }
.amc-ms-help .wp-block-buttons { display: flex; flex-wrap: wrap; }
@media (hover: hover) and (pointer: fine) { .amc-ms-jump a:hover { background: var(--amc-ink); color: #fff; } }

/* ---------- Header logo (official AMC USA lockup, black on transparent) ---------- */
.site-branding .custom-logo { height: auto; max-height: 52px; width: auto; }
/* The logo is always shown in its original colors; the header stays solid white on every page. */
@media (max-width: 1024px) { .site-branding .custom-logo { max-height: 44px; } }

/* ---------- Kicker: gold rule + label (chapter template and sections) ---------- */
.amc-kicker { display: inline-flex; align-items: center; gap: 10px; font-size: 12px !important; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--amc-accent) !important; margin: 0 0 10px !important; }
.amc-kicker::before { content: ""; width: 28px; height: 2px; background: var(--amc-gold); border-radius: 2px; }
.amc-kicker--gold { color: var(--amc-gold) !important; }

/* ---------- Buttons used inside templates (anchors, not blocks) ---------- */
.amc-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: var(--amc-tap); padding: 0 22px; border-radius: 999px; font-size: 15px; font-weight: 700; text-decoration: none !important; transition: background-color .2s ease, color .2s ease, transform .15s ease; white-space: nowrap; }
.amc-btn svg { width: 18px; height: 18px; }
.amc-btn:active { transform: translateY(1px); }
.amc-btn--gold { background: var(--amc-gold); color: #1B1606 !important; }
.amc-btn--green { background: var(--amc-accent); color: #fff !important; }
.amc-btn--ghost { background: rgba(255,255,255,.08); color: #fff !important; border: 1.5px solid rgba(255,255,255,.5); }
.amc-btn--outline { background: transparent; color: var(--amc-accent) !important; border: 1.5px solid var(--amc-accent); }

/* ---------- Chapter page (Seattle-inspired) ---------- */
.amc-cx-wrap { max-width: var(--amc-content); margin: 0 auto; padding: 0 var(--amc-gutter); }
.amc-cx-hero { position: relative; isolation: isolate; color: #fff; background: var(--amc-forest) var(--amc-hero-img, none) center 45% / cover no-repeat; padding: 96px var(--amc-gutter) 28px; }
.amc-cx-hero::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(8,34,26,.7) 0%, rgba(8,34,26,.82) 45%, rgba(8,30,23,.95) 100%); }
.amc-cx-hero__inner { max-width: var(--amc-content); margin: 0 auto; display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; }
.amc-chip { display: inline-flex; align-items: center; gap: 8px; padding: 6px 12px; border-radius: 999px; background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.18); font-size: 11px !important; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: #E7F2ED; margin: 0 0 16px !important; }
.amc-chip svg { width: 14px; height: 14px; color: var(--amc-gold); }
.amc-cx-hero__title { color: #fff !important; font-size: clamp(36px, 9vw, 64px) !important; line-height: 1.04 !important; letter-spacing: -.025em; margin: 0 !important; }
.amc-cx-hero__org { color: var(--amc-gold) !important; font-size: clamp(18px, 4vw, 24px); font-weight: 600; margin: 6px 0 14px !important; }
.amc-cx-hero__lead { color: #D7E2DC; font-size: 16px; line-height: 1.6; max-width: 52ch; margin: 0 0 20px !important; }
.amc-cx-hero__ctas { display: flex; flex-wrap: wrap; gap: 10px; }
.amc-cx-hero__ctas .amc-btn { flex: 1 1 150px; }
.amc-cx-facts { list-style: none; margin: 24px 0 0 !important; padding: 18px 0 0 !important; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; border-top: 1px solid rgba(255,255,255,.14); }
.amc-cx-facts strong { display: block; font-size: 22px; font-weight: 800; color: #fff; letter-spacing: -.01em; line-height: 1.1; }
.amc-cx-facts span { font-size: 12px; color: #A9C2B7; }
.amc-cx-hero--sub { padding: 88px var(--amc-gutter) 28px; }
.amc-cx-hero--sub .amc-cx-hero__inner { display: block; }
.amc-cx-hero--sub .amc-cx-hero__title { font-size: clamp(30px, 7.5vw, 48px) !important; }
.amc-cx-hero--sub .amc-cx-hero__lead { margin: 10px 0 0 !important; }

/* Prayer card */
.amc-pc { background: #fff; color: var(--amc-ink); border-radius: var(--amc-radius); overflow: hidden; box-shadow: 0 24px 48px -28px rgba(0,0,0,.6); }
.amc-pc__head { background: var(--amc-forest-2); color: #fff; padding: 14px 18px; display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 6px 12px; }
.amc-pc__title { display: inline-flex; align-items: center; gap: 8px; font-weight: 700; font-size: 15px; }
.amc-pc__title svg, .amc-pc__next svg { width: 18px; height: 18px; }
.amc-pc__date { font-size: 12px; color: #BFD3CA; }
.amc-pc__next { grid-column: 1 / -1; display: inline-flex; align-items: center; gap: 6px; margin: 0 !important; font-size: 13px; color: var(--amc-gold); }
.amc-pc__next strong { color: #fff; }
.amc-pc__list { list-style: none; margin: 0 !important; padding: 0 !important; }
.amc-pc__list li { display: flex; justify-content: space-between; align-items: center; padding: 10px 18px; border-top: 1px solid var(--amc-line); position: relative; }
.amc-pc__list li:first-child { border-top: 0; }
.amc-pc__name { display: flex; flex-direction: column; font-weight: 700; font-size: 15px; line-height: 1.2; }
.amc-pc__ar { font-family: Amiri, "Geeza Pro", "Times New Roman", serif; font-weight: 400; font-size: 14px; color: var(--amc-muted); margin-top: 2px; }
.amc-pc__time { font-weight: 700; font-size: 15px; font-variant-numeric: tabular-nums; }
.amc-pc__list li.is-next { background: var(--amc-accent-tint); color: var(--amc-accent); }
.amc-pc__list li.is-next::before { content: ""; position: absolute; left: 7px; top: 50%; width: 6px; height: 6px; margin-top: -3px; border-radius: 50%; background: var(--amc-accent); }
.amc-pc__list li.is-jumuah { background: #FBF5E3; color: var(--amc-gold-ink); }
.amc-pc__foot { margin: 0 !important; padding: 10px 18px 14px; font-size: 12px; color: var(--amc-muted); border-top: 1px solid var(--amc-line); }
.amc-pc--compact .amc-pc__list li { padding: 8px 18px; }
.amc-cx-directions { margin-top: 10px; display: flex; align-items: center; gap: 12px; padding: 14px 16px; border-radius: 14px; background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.16); color: #fff !important; text-decoration: none !important; }
.amc-cx-directions > svg { flex: 0 0 20px; width: 20px; height: 20px; color: var(--amc-gold); }
.amc-cx-directions > svg:last-child { color: #A9C2B7; width: 18px; height: 18px; flex-basis: 18px; }
.amc-cx-directions span { flex: 1; display: flex; flex-direction: column; font-size: 12px; color: #BFD3CA; min-width: 0; }
.amc-cx-directions strong { font-size: 14px; color: #fff; }

/* Chapter sub navigation becomes a forest bar on chapter pages */
.amc-cx .amc-subnav { background: var(--amc-forest); border-bottom: 0; }
.amc-cx .amc-subnav a { color: #D7E2DC; background: rgba(255,255,255,.06); }
.amc-cx .amc-subnav a[aria-current="page"] { background: #fff; color: var(--amc-forest); }

/* Sections */
.amc-cx-sec { padding: 44px 0; }
.amc-cx-sec--surface { background: var(--amc-surface); }
.amc-cx-sec--tint { background: var(--amc-surface); }
.amc-cx-sec h2 { font-size: clamp(26px, 6.5vw, 38px) !important; line-height: 1.12 !important; letter-spacing: -.015em; margin: 0 0 12px !important; }
.amc-cx-head { margin-bottom: 20px; }
.amc-cx-head p:not(.amc-kicker) { color: var(--amc-muted); font-size: 16px; margin: 0 !important; max-width: 60ch; }
.amc-cx-head--row { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 12px; }
.amc-cx-about .amc-cx-wrap { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; }
.amc-cx-btns { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.amc-values { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.amc-value { background: #fff; border: 1px solid var(--amc-line); border-radius: var(--amc-radius); padding: 16px; }
.amc-value__icon { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: var(--amc-accent-tint); color: var(--amc-accent); margin-bottom: 10px; }
.amc-value__icon svg { width: 20px; height: 20px; }
.amc-value h3 { font-size: 15px !important; margin: 0 0 4px !important; line-height: 1.25 !important; }
.amc-value p { font-size: 13px; color: var(--amc-muted); margin: 0 !important; line-height: 1.45; }

/* Jumu'ah card */
.amc-jm { display: grid; grid-template-columns: 1fr; border-radius: 20px; overflow: hidden; color: #fff; background: radial-gradient(90% 120% at 0% 0%, rgba(224,178,60,.12) 0%, rgba(15,59,44,0) 55%), var(--amc-forest); }
.amc-jm__main { padding: 24px 20px; }
.amc-jm__main h2 { color: #fff !important; }
.amc-jm__main > p:not(.amc-kicker) { color: #D7E2DC; font-size: 16px; line-height: 1.6; margin: 0 0 18px !important; }
.amc-jm__cal { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.amc-jm__cal a { display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 0 14px; border-radius: 10px; background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.18); color: #fff !important; font-size: 13px; font-weight: 600; text-decoration: none !important; }
.amc-jm__cal svg { width: 16px; height: 16px; }
.amc-jm__side { padding: 20px; background: rgba(0,0,0,.18); display: grid; gap: 14px; align-content: center; }
.amc-jm__time { display: flex; align-items: center; gap: 14px; }
.amc-jm__time > svg { flex: 0 0 44px; width: 44px; height: 44px; padding: 11px; border-radius: 12px; background: rgba(224,178,60,.18); color: var(--amc-gold); }
.amc-jm__time small { display: block; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: #A9C2B7; }
.amc-jm__time strong { font-size: 20px; color: #fff; }
.amc-jm__note { margin: 0 !important; padding: 12px 14px; border-radius: 12px; background: rgba(255,255,255,.08); font-size: 13px; color: #D7E2DC; line-height: 1.5; }

/* Offer cards */
.amc-offers { display: grid; grid-template-columns: 1fr; gap: 10px; }
.amc-offer { display: grid; grid-template-columns: 44px 1fr; column-gap: 14px; align-items: start; padding: 16px; border: 1px solid var(--amc-line); border-radius: var(--amc-radius); background: #fff; color: inherit !important; text-decoration: none !important; transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.amc-offer__icon { grid-row: span 3; display: grid; place-items: center; width: 44px; height: 44px; border-radius: 12px; background: var(--amc-accent-tint); color: var(--amc-accent); }
.amc-offer__icon svg { width: 22px; height: 22px; }
.amc-offer h3 { font-size: 16px !important; margin: 0 0 4px !important; line-height: 1.25 !important; }
.amc-offer p { font-size: 14px; color: var(--amc-muted); margin: 0 0 8px !important; line-height: 1.5; }
.amc-offer__cta { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; font-weight: 700; color: var(--amc-accent); }
.amc-offer__cta svg { width: 16px; height: 16px; transition: transform .2s ease; }

/* Visit + FAQ */
.amc-cx-visit { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; }
.amc-cx-visit__lead { color: var(--amc-text); font-size: 16px; line-height: 1.65; margin: 0 0 18px !important; }
.amc-faq details { border-top: 1px solid var(--amc-line); }
.amc-faq details:last-child { border-bottom: 1px solid var(--amc-line); }
.amc-faq summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 12px; min-height: 56px; font-weight: 700; font-size: 16px; color: var(--amc-ink); }
.amc-faq summary::-webkit-details-marker { display: none; }
.amc-faq summary::after { content: "+"; flex: 0 0 28px; height: 28px; border-radius: 50%; display: grid; place-items: center; background: var(--amc-accent-tint); color: var(--amc-accent); font-size: 18px; font-weight: 600; transition: transform .2s ease; }
.amc-faq details[open] summary::after { content: "\2212"; }
.amc-faq details p { margin: 0 0 16px !important; color: var(--amc-text); font-size: 15px; line-height: 1.6; }

@media (min-width: 600px) {
  .amc-cx-hero__ctas .amc-btn { flex: 0 0 auto; }
  .amc-values { gap: 14px; }
  .amc-offers { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .amc-jm__main { padding: 32px; }
  .amc-jm__side { padding: 28px 32px; }
}
@media (min-width: 782px) {
  .amc-cx-sec { padding: 64px 0; }
  .amc-cx-hero { padding: 140px var(--amc-gutter) 48px; }
  .amc-cx-hero__inner { grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: 48px; align-items: center; }
  .amc-cx-hero--sub { padding: 120px var(--amc-gutter) 40px; }
  .amc-cx-about .amc-cx-wrap { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 48px; align-items: center; }
  .amc-jm { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); }
  .amc-jm__side { background: rgba(0,0,0,.18); }
  .amc-cx-visit { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 48px; align-items: start; }
}
@media (min-width: 1025px) {
  .amc-cx-hero__side { max-width: 420px; justify-self: end; width: 100%; }
  .amc-offers { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
  .amc-offer { grid-template-columns: 1fr; padding: 22px; }
  .amc-offer__icon { grid-row: auto; margin-bottom: 14px; }
  .amc-value { padding: 20px; }
}
@media (hover: hover) and (pointer: fine) {
  .amc-btn--gold:hover { background: #ECC459; }
  .amc-btn--green:hover { background: var(--amc-accent-hover); }
  .amc-btn--ghost:hover { background: #fff; color: var(--amc-forest) !important; }
  .amc-btn--outline:hover { background: var(--amc-accent); color: #fff !important; }
  .amc-offer:hover { transform: translateY(-2px); box-shadow: var(--amc-shadow-hover); border-color: #CBD0CC; }
  .amc-offer:hover .amc-offer__cta svg { transform: translateX(3px); }
  .amc-jm__cal a:hover, .amc-cx-directions:hover { background: rgba(255,255,255,.18); }
  .amc-cx .amc-subnav a:hover:not([aria-current]) { background: rgba(255,255,255,.14); }
}
.amc-cx-sec .amc-card h2, .amc-cx .amc-card h2 { font-size: 20px !important; line-height: 1.25 !important; margin: 0 0 12px !important; letter-spacing: 0; }

/* Tables inside chapter and department content */
.amc-prose .wp-block-table { margin: 16px 0 24px; overflow-x: auto; border: 1px solid var(--amc-line); border-radius: var(--amc-radius); }
.amc-prose .wp-block-table table { width: 100%; border-collapse: collapse; font-size: 15px; min-width: 480px; }
.amc-prose .wp-block-table :is(th, td) { border: 0 !important; border-bottom: 1px solid var(--amc-line) !important; padding: 12px 16px; text-align: left; }
.amc-prose .wp-block-table thead { border: 0; }
.amc-prose .wp-block-table th { background: var(--amc-accent-tint); color: var(--amc-forest); font-size: 13px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.amc-prose .wp-block-table tr:last-child td { border-bottom: 0 !important; }
.amc-prose figure.wp-block-image figcaption { font-size: 13px; color: var(--amc-muted); text-align: center; }
.transparent-header #masthead .menu-toggle-open { color: #fff !important; }
#masthead .item-is-stuck .menu-toggle-open, body:not(.transparent-header) #masthead .menu-toggle-open { color: var(--amc-ink) !important; }

/* Auxiliary flags: black tiles with the full flag clearly visible; a dark fade only behind the text. */
.amc-aux a.has-flag { position: relative; overflow: hidden; isolation: isolate; background: #0B0D0C; justify-content: flex-end; min-height: 132px; }
.amc-aux a.has-flag::before { content: ""; position: absolute; z-index: -2; inset: 0; background: var(--amc-flag) center / cover no-repeat; transition: transform .4s ease; }
.amc-aux a.has-flag::after { content: ""; position: absolute; z-index: -1; inset: 0; background: linear-gradient(0deg, rgba(8,9,9,.94) 0%, rgba(8,9,9,.78) 48%, rgba(8,9,9,0) 82%); }
.amc-aux a.has-flag .amc-aux__desc { color: #E3E6E3; }
.amc-aux a.has-flag .amc-aux__name { text-shadow: 0 1px 8px rgba(0,0,0,.6); }
.amc-dp-hero.has-flag { overflow: hidden; isolation: isolate; background: #0B0D0C; }
.amc-dp-hero.has-flag::before { content: ""; position: absolute; z-index: -2; top: 0; right: 0; bottom: 0; width: 72%; background: var(--amc-flag) center / cover no-repeat; }
.amc-dp-hero.has-flag::after { content: ""; position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, #0B0D0C 30%, rgba(11,13,12,.75) 52%, rgba(11,13,12,0) 80%); }
@media (min-width: 1025px) { .amc-aux a.has-flag { min-height: 150px; } }
@media (hover: hover) and (pointer: fine) {
  .amc-aux a.has-flag:hover { background: #0B0D0C; }
  .amc-aux a.has-flag:hover::before { transform: scale(1.05); }
}

.amc-departments.amc-section--surface .amc-depts { background: transparent; }
.amc-section--surface .amc-dept__icon { background: #fff; }

/* Homepage departments: medium rows with a one-line description */
.amc-home-depts .amc-depts { grid-template-columns: minmax(0, 1fr); column-gap: 24px; }
.amc-home-depts .amc-dept { min-height: 62px; padding: 8px 0; gap: 12px; }
.amc-home-depts .amc-dept__icon { flex-basis: 40px; height: 40px; border-radius: 12px; }
.amc-home-depts .amc-dept__icon svg { width: 20px; height: 20px; }
.amc-home-depts .amc-dept__name { font-size: 16px; }
.amc-home-depts .amc-dept__tag { font-size: 13px; }
.amc-home-depts h3 { margin-top: 24px !important; }
@media (min-width: 600px) { .amc-home-depts .amc-depts { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1025px) { .amc-home-depts .amc-depts { grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: 36px; } }

/* =====================================================================
   Chapters vs mosques
   ===================================================================== */
/* Chapter hero: glance card instead of prayer times */
.amc-cx-hero--chapter .amc-crumbs { color: #D7E2DC; }
.amc-cx-hero .amc-crumbs { margin-bottom: 12px; }
.amc-glance { background: rgba(255,255,255,.96); color: var(--amc-ink); border-radius: var(--amc-radius); padding: 18px; box-shadow: 0 24px 48px -28px rgba(0,0,0,.6); }
.amc-glance__title { font-size: 12px !important; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--amc-accent) !important; margin: 0 0 6px !important; }
.amc-glance ul { list-style: none; margin: 0 !important; padding: 0 !important; }
.amc-glance li { display: flex; gap: 12px; align-items: flex-start; padding: 10px 0; border-top: 1px solid var(--amc-line); }
.amc-glance li:first-child { border-top: 0; }
.amc-glance li > svg { flex: 0 0 20px; width: 20px; height: 20px; color: var(--amc-accent); margin-top: 2px; }
.amc-glance small { display: block; font-size: 12px; color: var(--amc-muted); }
.amc-glance strong, .amc-glance a { font-size: 15px; font-weight: 700; color: var(--amc-ink); text-decoration: none; word-break: break-word; }
.amc-glance__cta { display: inline-flex !important; align-items: center; gap: 6px; margin-top: 10px; color: var(--amc-accent) !important; font-size: 14px !important; }
.amc-glance__cta svg { width: 16px; height: 16px; }

/* Mosque cards (chapter page, mosque page "other mosques") */
.amc-mqs { display: grid; grid-template-columns: 1fr; gap: 12px; }
.amc-mq { display: grid; grid-template-columns: 96px 1fr; background: #fff; border: 1px solid var(--amc-line); border-radius: var(--amc-radius); overflow: hidden; }
.amc-mq__img { display: block; background: var(--amc-forest) center / cover no-repeat; min-height: 100%; }
.amc-mq__body { padding: 14px 16px; min-width: 0; }
.amc-mq h3 { font-size: 17px !important; margin: 0 0 4px !important; line-height: 1.25 !important; }
.amc-mq h3 a { color: var(--amc-ink); text-decoration: none; }
.amc-mq__addr { font-size: 13px; color: var(--amc-muted); margin: 0 0 6px !important; line-height: 1.45; }
.amc-mq__jumuah { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 700; color: var(--amc-gold-ink); background: #FBF5E3; padding: 4px 10px; border-radius: 999px; margin: 0 0 8px !important; }
.amc-mq__jumuah svg { width: 14px; height: 14px; }
.amc-mq__links { display: flex; flex-wrap: wrap; gap: 6px 16px; }
.amc-mq__links a { display: inline-flex; align-items: center; gap: 6px; min-height: 32px; font-size: 14px; font-weight: 700; color: var(--amc-accent); text-decoration: none; }
.amc-mq__links svg { width: 15px; height: 15px; }

/* Mosque page bits */
.amc-facilities { list-style: none; margin: 0 0 20px !important; padding: 0 !important; display: flex; flex-wrap: wrap; gap: 8px; }
.amc-facilities li { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border-radius: 999px; background: var(--amc-accent-tint); color: var(--amc-forest); font-size: 13px; font-weight: 600; }
.amc-facilities svg { width: 15px; height: 15px; }
.amc-mq-content { margin-bottom: 18px; }
.amc-chapter-band { display: flex; flex-direction: column; gap: 16px; padding: 22px; border-radius: 20px; background: #fff; border: 1px solid var(--amc-line); }
.amc-chapter-band h2 { margin-bottom: 6px !important; }
.amc-chapter-band p:not(.amc-kicker) { color: var(--amc-muted); margin: 0 !important; }
.amc-chapter-band .amc-btn { align-self: flex-start; }
.amc-other-title { font-size: 18px !important; margin: 28px 0 12px !important; }
.amc-dir-item__extra { font-size: 12px; font-weight: 700; color: var(--amc-gold-ink); margin-top: 2px; }

@media (min-width: 600px) {
  .amc-mqs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .amc-mq { grid-template-columns: 120px 1fr; }
  .amc-chapter-band { flex-direction: row; align-items: center; justify-content: space-between; padding: 28px 32px; }
  .amc-chapter-band .amc-btn { align-self: center; flex: 0 0 auto; }
}
@media (min-width: 1025px) {
  .amc-mqs { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
  .amc-mq { grid-template-columns: 1fr; }
  .amc-mq__img { aspect-ratio: 16 / 9; min-height: 0; }
  .amc-mq__body { padding: 16px 18px 18px; }
  .amc-cx-hero__side .amc-glance { max-width: 400px; margin-left: auto; }
}
@media (hover: hover) and (pointer: fine) {
  .amc-mq__links a:hover { text-decoration: underline; }
}

/* Homepage "Find your chapter" cards: smaller */
.amc-chapter__img { aspect-ratio: 2 / 1; }
.amc-chapter__body { padding: 12px 14px 14px; }
.amc-chapter__name { font-size: 17px; }
.amc-chapter__mosque { font-size: 13px; }
@media (min-width: 1025px) {
  .amc-chapters { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
}

/* Auxiliary tiles carry full official names; the description is the website address. */
.amc-aux__name { font-size: 16px; line-height: 1.2; }
.amc-aux__desc { font-size: 12.5px; letter-spacing: .01em; }
@media (min-width: 1025px) { .amc-aux__name { font-size: 17px; } }

.amc-section h3.amc-first-sub { margin-top: 0 !important; }
.amc-aux { margin-bottom: 4px; }

/* Hero panel: three upcoming events */
.amc-hp__events { border-top: 1px solid rgba(255,255,255,.1); }
.amc-hp__events-head { display: flex; justify-content: space-between; align-items: center; padding: 12px 18px 2px; }
.amc-hp__events-head a { font-size: 13px; font-weight: 700; color: var(--amc-gold) !important; text-decoration: none; }
.amc-hp__events .amc-hp__row { border-top: 0; min-height: 60px; padding-top: 8px; padding-bottom: 8px; }
.amc-hp__events .amc-hp__row + .amc-hp__row { border-top: 1px solid rgba(255,255,255,.06); }
.amc-hp__events .amc-hp__date { flex-basis: 44px; height: 44px; }
.amc-hp__events .amc-hp__date strong { font-size: 18px; }
@media (min-width: 782px) { .amc-hp__events-head { padding: 14px 24px 2px; } }
@media (hover: hover) and (pointer: fine) { .amc-hp__events-head a:hover { text-decoration: underline; } }

/* ---------- Spotlight strip (top of homepage) ---------- */
.amc-spotlight-sec { padding: 14px var(--amc-gutter) 16px !important; margin: 0 !important; background: var(--amc-surface); border-bottom: 1px solid var(--amc-line); }
.amc-spotlight-sec > .wp-block-group__inner-container { max-width: var(--amc-content); margin: 0 auto; }
.amc-spotlight__head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px; }
.amc-spotlight__label { display: inline-flex; align-items: center; gap: 8px; font-size: 12px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--amc-accent); }
.amc-spotlight__label::before { content: ""; width: 22px; height: 2px; border-radius: 2px; background: var(--amc-gold); }
.amc-spotlight__nav { display: none; gap: 6px; }
.amc-spotlight.is-scrollable .amc-spotlight__nav { display: flex; }
.amc-spotlight__btn { width: 36px; height: 36px; border-radius: 50%; border: 1px solid var(--amc-line); background: #fff; color: var(--amc-ink); display: grid; place-items: center; cursor: pointer; padding: 0; }
.amc-spotlight__btn svg { width: 18px; height: 18px; }
.amc-spotlight__track { display: grid; grid-auto-flow: column; grid-auto-columns: 86%; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; overscroll-behavior-x: contain; scrollbar-width: none; padding: 2px; margin: -2px; }
.amc-spotlight__track::-webkit-scrollbar { display: none; }
.amc-spotlight__track:focus-visible { outline: 3px solid var(--amc-accent); outline-offset: 3px; border-radius: var(--amc-radius); }
.amc-spot { scroll-snap-align: start; position: relative; display: grid; grid-template-columns: 96px 1fr; min-height: 112px; border-radius: 14px; overflow: hidden; background: #fff; border: 1px solid var(--amc-line); color: var(--amc-ink) !important; text-decoration: none !important; isolation: isolate; transition: transform .2s ease, box-shadow .2s ease; }
.amc-spot__media { position: relative; background: var(--amc-forest) center / cover no-repeat; }
.amc-spot__play { position: absolute; left: 50%; top: 50%; width: 34px; height: 34px; margin: -17px 0 0 -17px; border-radius: 50%; background: rgba(255,255,255,.95); color: var(--amc-ink); display: grid; place-items: center; box-shadow: 0 4px 14px rgba(0,0,0,.25); }
.amc-spot__play svg { width: 16px; height: 16px; margin-left: 2px; }
.amc-spot__body { display: flex; flex-direction: column; justify-content: center; gap: 2px; padding: 10px 14px; min-width: 0; }
.amc-spot__kicker { font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--amc-accent); }
.amc-spot__title { font-size: 15px; font-weight: 800; line-height: 1.25; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.amc-spot__text { font-size: 12.5px; color: var(--amc-muted); line-height: 1.4; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; }
.amc-spot__cta { display: inline-flex; align-items: center; gap: 5px; margin-top: 4px; font-size: 13px; font-weight: 700; color: var(--amc-accent); }
.amc-spot__cta svg { width: 14px; height: 14px; transition: transform .2s ease; }
.amc-spot--sermon { background: var(--amc-night); border-color: var(--amc-night); color: #fff !important; }
.amc-spot--sermon .amc-spot__kicker { color: var(--amc-gold); }
.amc-spot--sermon .amc-spot__text { color: #A9B1AD; }
.amc-spot--sermon .amc-spot__cta { color: #fff; }
.amc-spot--forest, .amc-spot--emerald, .amc-spot--night { grid-template-columns: 1fr; color: #fff !important; border: 0; }
.amc-spot--forest { background: radial-gradient(90% 140% at 100% 0%, rgba(224,178,60,.18) 0%, rgba(15,59,44,0) 55%), var(--amc-forest); }
.amc-spot--emerald { background: var(--amc-accent); }
.amc-spot--night { background: var(--amc-night); }
:is(.amc-spot--forest, .amc-spot--emerald, .amc-spot--night) .amc-spot__body { padding: 14px 18px; }
:is(.amc-spot--forest, .amc-spot--emerald, .amc-spot--night) .amc-spot__kicker { color: var(--amc-gold); }
:is(.amc-spot--forest, .amc-spot--emerald, .amc-spot--night) .amc-spot__text { color: #D7E2DC; }
:is(.amc-spot--forest, .amc-spot--emerald, .amc-spot--night) .amc-spot__cta { color: #fff; }
.amc-spot:active { transform: scale(.99); }
@media (min-width: 600px) { .amc-spotlight__track { grid-auto-columns: calc((100% - 12px) / 2); } }
@media (min-width: 1025px) {
  .amc-spotlight-sec { padding: 16px var(--amc-gutter) 18px !important; }
  .amc-spotlight__track { grid-auto-columns: calc((100% - 36px) / 4); }
  .amc-spot { grid-template-columns: 1fr; grid-template-rows: 96px auto; min-height: 0; }
  .amc-spot--sermon .amc-spot__media, .amc-spot--photo .amc-spot__media { min-height: 96px; }
  :is(.amc-spot--forest, .amc-spot--emerald, .amc-spot--night) { grid-template-rows: 1fr; }
  :is(.amc-spot--forest, .amc-spot--emerald, .amc-spot--night) .amc-spot__body { justify-content: flex-end; }
}
@media (hover: hover) and (pointer: fine) {
  .amc-spot:hover { transform: translateY(-2px); box-shadow: var(--amc-shadow-hover); }
  .amc-spot:hover .amc-spot__cta svg { transform: translateX(3px); }
  .amc-spotlight__btn:hover { background: var(--amc-ink); color: #fff; border-color: var(--amc-ink); }
}
/* Long, single-line titles in the hero panel must truncate, not widen the hero on phones. */
.amc-hero .wp-block-cover__inner-container { min-width: 0; flex: 1 1 auto; }
.amc-hero .wp-block-columns, .amc-hero .wp-block-column, .amc-hp, .amc-hp__events, .amc-hp__row, .amc-hp__text { min-width: 0; max-width: 100%; }
/* Hero panel: latest Friday Sermon row */
.amc-hp__sermon { border-top: 1px solid rgba(255,255,255,.1); }
.amc-hp__thumb { flex: 0 0 64px; height: 44px; border-radius: 10px; background: var(--amc-night-soft) center / cover no-repeat; display: grid; place-items: center; position: relative; overflow: hidden; }
.amc-hp__thumb::before { content: ""; position: absolute; inset: 0; background: rgba(0,0,0,.25); }
.amc-hp__thumb svg { position: relative; width: 18px; height: 18px; color: #fff; }
.amc-hp__sermon .amc-hp__label { color: var(--amc-gold); }

/* ---------- Footer: Affiliated Websites (ahmadiya.ca style) and site search ---------- */
.amc-aff { list-style: none; margin: 0 !important; padding: 0 !important; }
.amc-aff li { margin: 0; }
.amc-aff a { display: flex; align-items: center; gap: 12px; padding: 8px 0; font-size: 15px; }
.amc-aff a::before { content: ""; flex: 0 0 24px; height: 24px; background: center / contain no-repeat; }
.amc-aff--alislam a::before { background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNDMuMTEgMTQzLjExIj48ZGVmcz48c3R5bGU+LmNscy0xLC5jbHMtMntmaWxsOiNmZmY7fS5jbHMtMntzdHJva2U6IzAwMDt9PC9zdHlsZT48L2RlZnM+PHRpdGxlPkFzc2V0IDE8L3RpdGxlPjxnIGlkPSJMYXllcl8yIiBkYXRhLW5hbWU9IkxheWVyIDIiPjxnIGlkPSJMYXllcl8xLTIiIGRhdGEtbmFtZT0iTGF5ZXIgMSI+PGNpcmNsZSBjbGFzcz0iY2xzLTEiIGN4PSI3MS41NiIgY3k9IjcxLjU1IiByPSI3MS4wNSIvPjxjaXJjbGUgY2xhc3M9ImNscy0yIiBjeD0iNzEuNTYiIGN5PSI3MS41NSIgcj0iNzEuMDUiLz48Y2lyY2xlIGN4PSI3MS41NiIgY3k9IjcxLjU2IiByPSI2NS45MyIvPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTcxLjU1LDU0LjkySDg3LjI4YzIuODQtMTQuMzctNC44OS0xOS4yNy0xMi4zNC0yMWwuMjYsMGE1LjY0LDUuNjQsMCwwLDAtMi42NS00LjQ2LDEuODMsMS44MywwLDAsMCwuNi0xLjQ3LDEuNTcsMS41NywwLDAsMC0uNzYtMS41MVYyNC4yNWExLDEsMCwwLDAsLjMxLS43Ny45LjksMCwwLDAtLjMxLS43NFYyMC40aC0uMWExLDEsMCwwLDAsLjQxLS44NSw4Ljc0LDguNzQsMCwwLDAtMS4xNS0zLDguNzUsOC43NSwwLDAsMC0xLjE1LDMsMSwxLDAsMCwwLC40Ljg1aC0uMXYyLjM1YS45MS45MSwwLDAsMC0uMzEuNzQsMSwxLDAsMCwwLC4zMS43N3YyLjI4QTEuNTcsMS41NywwLDAsMCw3MCwyOGExLjgxLDEuODEsMCwwLDAsLjYsMS40N0E1LjY0LDUuNjQsMCwwLDAsNjcuOTEsMzRsLjI2LDBjLTcuNzMsMS43Ni0xNS4xOCw5LjQ0LTEyLjM0LDIxWiIvPjxwb2x5Z29uIGNsYXNzPSJjbHMtMSIgcG9pbnRzPSI1My4zNiA3OS43IDUzLjE5IDc5LjcgNTEuOTIgODAuNDMgNTEuOTIgODMuMSA1My4xOSA4My44MyA1My4zNiA4My44MyA1NC44NSA4My44MyA3MS41NiA4My44MyA4OC4yNiA4My44MyA4OS43NSA4My44MyA4OS45MSA4My44MyA5MS4xOSA4My4xIDkxLjE5IDgwLjQzIDg5LjkxIDc5LjcgODkuNzUgNzkuNyA4OC4yMiA3OS43IDcxLjU2IDc5LjcgNTQuODggNzkuNyA1My4zNiA3OS43Ii8+PHBvbHlnb24gY2xhc3M9ImNscy0xIiBwb2ludHM9IjkyLjkzIDEwMi4wNiA5MC4wNSAxMDIuMDYgODguNDIgMTAyLjA2IDg1LjQ1IDEwMi4wNiA3OC4xMyAxMDIuMDYgNzUuMjIgMTAyLjA2IDcxLjU2IDEwMi4wNiA2Ny44OSAxMDIuMDYgNjQuOTggMTAyLjA2IDU3LjY1IDEwMi4wNiA1NC42OSAxMDIuMDYgNTMuMDYgMTAyLjA2IDUwLjE3IDEwMi4wNiA1MC4xNyAxMDAuMTQgNDguMzYgMTAwLjE0IDQ4LjM2IDExNS40OCA1MC4xNyAxMTUuNDggNTMuMDYgMTE1LjQ4IDU0LjU3IDExNS40OCA3MS41NiAxMTUuNDggODguNTQgMTE1LjQ4IDkwLjA1IDExNS40OCA5Mi45MyAxMTUuNDggOTQuNzUgMTE1LjQ4IDk0Ljc1IDEwMC4xNCA5Mi45MyAxMDAuMTQgOTIuOTMgMTAyLjA2Ii8+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNODguNCwxMDAuMjdsLS4xNC0xNS4zM0g1NC44NGwtLjEzLDE1LjMzaDNWOTMuMjJjMC0yLjE2LDMuNjYtNi4wNiwzLjY2LTYuMDZTNjUsOTEuMDUsNjUsOTMuMjJ2Ny4wNWgyLjkxVjkzLjIyYzAtMi4xNiwzLjY3LTYuMDYsMy42Ny02LjA2czMuNjYsMy44OSwzLjY2LDYuMDZ2Ny4wNWgyLjkxVjkzLjIyYzAtMi4xNiwzLjY2LTYuMDYsMy42Ni02LjA2czMuNjYsMy44OSwzLjY2LDYuMDZ2Ny4wNVoiLz48cG9seWdvbiBjbGFzcz0iY2xzLTEiIHBvaW50cz0iNzEuNTYgMTE3LjI3IDU0LjU1IDExNy4yNyA1NC4zMiAxMzguMzggODguNzkgMTM4LjM4IDg4LjU1IDExNy4yNyA3MS41NiAxMTcuMjciLz48cG9seWdvbiBjbGFzcz0iY2xzLTEiIHBvaW50cz0iODcuOTggNTYuNzEgNzEuNTYgNTYuNzEgNTUuMTMgNTYuNzEgNDguMzYgNjAuMDUgNDguMzYgNjIuNjEgNTMuMzYgNjIuNjEgNTUuMDQgNjIuNjEgNzEuNTYgNjIuNjEgODguMDcgNjIuNjEgODkuNzUgNjIuNjEgOTQuNzUgNjIuNjEgOTQuNzUgNjAuMDUgODcuOTggNTYuNzEiLz48cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik04OC4wOSw2NC41SDU1TDU0LjksNzguNTlIODguMjFaTTcxLjU2LDc2Ljk0YTUuMzksNS4zOSwwLDEsMSw1LjM5LTUuMzlBNS4zOSw1LjM5LDAsMCwxLDcxLjU2LDc2Ljk0WiIvPjxwb2x5Z29uIGNsYXNzPSJjbHMtMSIgcG9pbnRzPSI3MS4wMyA3MS43NyA3MS41NSA2Ny4xMiA3Mi4wOCA3MS4zNCA3My44MSA3My44MiA3MS4wMyA3MS43NyA3MS4wMyA3MS43NyA3MS4wMyA3MS43NyIvPjwvZz48L2c+PC9zdmc+"); }
.amc-aff--mta a::before { background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMDNtbSIgaGVpZ2h0PSI5Nm1tIiB2aWV3Qm94PSIwIDAgNTc3IDI3MiI+CiAgPHRpdGxlPkFydGJvYXJkIDE8L3RpdGxlPgogIDxwYXRoIGQ9Ik01NzcsMjcySDQzM2MtMzAtMi01MC0xMy02MS0zNHMtOC0yNC02LTM5LDctMjUsOS0zOEgzNTdMMzI3LDI3MkgyNjFsMzAtMTEySDI3MGMtOSwzOC0yMCw3NC0yOSwxMTJIMTc1bDIyLTgyLDQtMTRjMS01LDMtMTMsMC0xNnMtOS0xLTEyLDAtMTEsMjEtMTQsMzJsLTIxLDgwSDg4YzgtMzIsMTgtNjQsMjYtOTcsMS02LDQtMTQtMS0xNnMtOC0xLTExLDEtMTAsMTYtMTIsMjVjLTgsMjktMTYsNTktMjMsODdIMEwyOSwxNjRjNi0yNCwyMC00MSwzOC01NFM4Niw5OCw5OCw5NXMyOC0zLDM5LDIsMTgsMTIsMjUsMjFjMTYtMTEsMzMtMjUsNjEtMjVoODZjMS01LDMtOSw0LTE0cy01LTE2LTEzLTE4LDEtNSwyLTZoMjFjLTQtNi0yLTE1LDEtMjBhMzcsMzcsMCwwLDEsMTQtMTJjNS0zLDEzLTUsMTgtOGEyOCwyOCwwLDAsMCw5LTExYzEtMiwxLTQsMi00aDFjLTEsNCwwLDksMSwxMmExOCwxOCwwLDAsMCw2LDZsOSw0YzQsMyw5LDksOCwxOHMtNSwxMC04LDE0LTEsMS0xLDFoMjFsLTIsNmMtMTYsMy0yNCwxNS0yNiwzMUg0NzhjMTgsMCwzMywyLDQ1LDdzMzAsMjMsMzIsNDUtNSw0NC0xMCw2NGMtMiw3LTQsMTQtNSwyMXMxLDE1LDQsMjFTNTYxLDI3MCw1NzcsMjcyWk00ODMsMTY3Yy0zLTQtOS04LTE3LTdzLTIxLDgtMjYsMTUtNywxNC01LDIxYTE4LDE4LDAsMCwwLDE2LDE0aDI4QzQ4MSwxOTgsNDkxLDE3OSw0ODMsMTY3WiIgZmlsbD0iIzVjODE1OCIgZmlsbC1ydWxlPSJldmVub2RkIi8+Cjwvc3ZnPgo="); filter: brightness(0) invert(1); }
.amc-aff--books a::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='white'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M2%205.5C4.5%204%208%204%2012%206c4-2%207.5-2%2010-.5V19c-2.5-1.5-6-1.5-10%20.5-4-2-7.5-2-10-.5V5.5Z'/%3E%3Cpath%20d='M12%206v13.5'/%3E%3C/svg%3E"); }
.amc-aff--hf a::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='white'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M12%2020s-7-4.4-7-10a4%204%200%200%201%207-2.6A4%204%200%200%201%2019%2010c0%205.6-7%2010-7%2010Z'/%3E%3C/svg%3E"); }
.amc-footer-search { margin-top: 18px; max-width: 320px; }
.amc-footer-search .wp-block-search__inside-wrapper { background: rgba(255,255,255,.08) !important; border: 1px solid rgba(255,255,255,.16) !important; border-radius: 999px !important; padding: 4px !important; }
.amc-footer-search input.wp-block-search__input { background: transparent !important; border: 0 !important; color: #fff !important; font-size: 15px; padding: 8px 14px !important; min-height: 40px; box-shadow: none !important; }
.amc-footer-search input.wp-block-search__input::placeholder { color: #A9B1AD; }
.amc-footer-search .wp-block-search__button { background: var(--amc-accent) !important; color: #fff !important; border: 0 !important; border-radius: 999px !important; width: 40px; min-width: 40px; height: 40px; min-height: 40px !important; padding: 0 !important; display: grid !important; place-items: center; margin: 0 !important; }
.amc-footer-search .wp-block-search__button svg { width: 20px; height: 20px; fill: currentColor; }
.amc-footer-search:focus-within .wp-block-search__inside-wrapper { border-color: var(--amc-mint) !important; }

/* ---------- Homepage consistency pass: shared section header, Wasiyyat card ---------- */
.amc-sec-head { margin-bottom: 20px !important; }
.amc-sec-head .amc-kicker { margin-bottom: 8px !important; }
.amc-sec-head h2 { margin-bottom: 8px !important; }
.amc-see-all-wrap { margin: 0 !important; }
.amc-see-all { display: inline-flex; align-items: center; gap: 6px; min-height: 40px; font-size: 15px; font-weight: 700; color: var(--amc-accent) !important; text-decoration: none !important; white-space: nowrap; }
.amc-see-all::after { content: "\2192"; transition: transform .2s ease; }
@media (hover: hover) and (pointer: fine) { .amc-see-all:hover::after { transform: translateX(3px); } }
.amc-chapters-sec .amc-chapters { margin-top: 0; }

/* Wasiyyat as a contained card before the footer */
.amc-wasiyyat-sec { background: var(--amc-bg); }
.amc-band--card { margin: 0 !important; border-radius: 24px; padding: 20px !important; color: #D7DCD9; background: radial-gradient(80% 100% at 100% 0%, rgba(224,178,60,.16) 0%, rgba(15,59,44,0) 55%), var(--amc-forest); overflow: hidden; }
.amc-band--card > .wp-block-group__inner-container > .wp-block-columns { margin: 0; }
.amc-band--card h2 { color: #fff !important; }
.amc-band--card p { color: #D7E2DC; }
.amc-band--card .amc-facts { border-top-color: rgba(255,255,255,.16); }
.amc-band--card .amc-facts strong { color: var(--amc-gold) !important; }
.amc-band--card .amc-facts span { color: #BFD3CA; }
@media (min-width: 782px) {
  .amc-band--card { padding: 36px !important; }
  .amc-band--card figure img { aspect-ratio: 4 / 5 !important; max-height: 380px; }
}

/* Footer social icons (Public Affairs handles): "Follow us" label, filled round buttons, brand color on hover */
.site-footer .footer-social-wrap { margin-top: 28px !important; }
.site-footer .footer-social-wrap::before { content: "Follow us"; display: block; margin-bottom: 10px; font-size: 12px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: #fff; }
.site-footer .footer-social-inner-wrap { display: flex; gap: 10px; }
.site-footer .footer-social-wrap .footer-social-inner-wrap .social-button { width: 42px; height: 42px; border-radius: 12px !important; display: inline-grid !important; place-items: center; border: 0 !important; background: rgba(255,255,255,.08) !important; color: #E3E6E3 !important; transition: background .2s ease, color .2s ease, transform .2s ease, box-shadow .2s ease; }
.site-footer .footer-social-wrap .social-button svg { width: 19px; height: 19px; }
.site-footer .footer-social-wrap .social-button:focus-visible { outline: 3px solid var(--amc-mint); outline-offset: 2px; }
@media (hover: hover) and (pointer: fine) {
  .site-footer .footer-social-wrap .footer-social-inner-wrap .social-button:hover { color: #fff !important; transform: translateY(-2px); box-shadow: 0 10px 20px -10px rgba(0,0,0,.6); }
  .site-footer .footer-social-wrap .footer-social-inner-wrap .social-link-twitter:hover { background: #000 !important; box-shadow: 0 0 0 1px rgba(255,255,255,.35), 0 10px 20px -10px rgba(0,0,0,.6); }
  .site-footer .footer-social-wrap .footer-social-inner-wrap .social-link-instagram:hover { background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fd5949 45%, #d6249f 60%, #285AEB 90%) !important; }
  .site-footer .footer-social-wrap .footer-social-inner-wrap .social-link-facebook:hover { background: #1877F2 !important; }
}

/* Footer: wider first column (brand, search, social) on desktop; items stack within a column. */
@media (min-width: 1025px) {
  .site-middle-footer-inner-wrap.site-footer-row-columns-5 { grid-template-columns: 1.5fr 1fr 1.1fr 1.1fr 1.2fr !important; column-gap: 40px; }
}
.site-footer-middle-section-1 { flex-direction: column; align-items: flex-start !important; }
.site-footer-middle-section-1 .footer-social-wrap { margin-top: 4px; }

/* Tighter space between the hero and Member services */
.amc-hero.wp-block-cover { padding-bottom: 24px !important; }
.amc-section.amc-services { padding-top: 28px !important; }
@media (min-width: 782px) {
  .amc-hero.wp-block-cover { min-height: min(480px, 64vh) !important; padding-top: 44px !important; padding-bottom: 40px !important; }
  .amc-section.amc-services { padding-top: 36px !important; }
}
/* The header top bar was removed at the user's request; hide any empty wrapper Kadence still prints. */
.site-top-header-wrap { display: none !important; }

/* Compact Pay Chanda / Apply for Wasiyyat cards: icon left, text middle, button right */
.amc-fcard { min-height: 0 !important; padding: 16px 16px 16px 68px !important; justify-content: center; display: grid !important; grid-template-columns: 1fr; align-items: center; column-gap: 16px; }
.amc-fcard h3 { font-size: 19px !important; margin: 0 0 2px !important; }
.amc-fcard h3::before { top: 50% !important; left: 16px !important; width: 40px !important; height: 40px !important; margin-top: -20px; }
.amc-fcard h3 a::before { top: 50% !important; left: 26px !important; width: 20px !important; height: 20px !important; margin-top: -10px; }
.amc-fcard p { font-size: 13.5px !important; line-height: 1.45 !important; }
.amc-fcard .amc-fcard__cta { margin-top: 10px !important; min-height: 38px; padding: 0 14px; font-size: 14px; }
@media (min-width: 1025px) {
  .amc-fcard { grid-template-columns: minmax(0, 1fr) auto; grid-template-rows: auto auto; padding: 18px 20px 18px 80px !important; }
  .amc-fcard h3 { font-size: 21px !important; grid-column: 1; }
  .amc-fcard > .wp-block-group__inner-container > p:not(.amc-fcard__cta) { grid-column: 1; }
  .amc-fcard .amc-fcard__cta { grid-column: 2; grid-row: 1 / span 2; margin-top: 0 !important; align-self: center; }
  .amc-fcard h3::before { left: 20px !important; width: 44px !important; height: 44px !important; margin-top: -22px; }
  .amc-fcard h3 a::before { left: 31px !important; margin-top: -10px; }
}
.amc-fcard .amc-fcard__cta { justify-self: start; width: auto; }
/* Less empty space between Member services and Upcoming events */
.amc-section.amc-services { padding-bottom: 28px !important; }
.amc-section.amc-events-section { padding-top: 28px !important; }
@media (min-width: 782px) {
  .amc-section.amc-services { padding-bottom: 36px !important; }
  .amc-section.amc-events-section { padding-top: 36px !important; }
}

/* Headings: capitalize every word, site-wide (labels that are already uppercase keep their own style). */
h1, h2, h3, h4, .amc-cx-hero__title, .amc-dp-hero__title, .amc-chapter__name, .amc-mq h3, .amc-offer h3 { text-transform: capitalize; }

/* ---------- Hero slider: banner + active Spotlight slides ---------- */
.amc-hs { position: relative; margin: 0 !important; max-width: none !important; background: var(--amc-forest); }
.amc-hs__track { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; overscroll-behavior-x: contain; }
.amc-hs__track::-webkit-scrollbar { display: none; }
.amc-hs__track:focus-visible { outline: 3px solid var(--amc-mint); outline-offset: -3px; }
.amc-hs__slide { flex: 0 0 100%; scroll-snap-align: start; display: flex; min-width: 0; }
.amc-hs__slide--main > .amc-hero { flex: 1; margin: 0 !important; }
.amc-hs__slide:not(.amc-hs__slide--main) { position: relative; isolation: isolate; color: #fff; padding: 40px var(--amc-gutter) 72px; align-items: center; }
.amc-hs__slide--photo { background: var(--amc-forest) var(--amc-slide-img, none) center / cover no-repeat; }
.amc-hs__slide--photo::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(8,34,26,.92) 0%, rgba(8,34,26,.72) 50%, rgba(8,34,26,.35) 100%); }
.amc-hs__slide--forest { background: radial-gradient(70% 120% at 100% 0%, rgba(224,178,60,.2) 0%, rgba(15,59,44,0) 60%), var(--amc-forest); }
.amc-hs__slide--emerald { background: radial-gradient(70% 120% at 100% 0%, rgba(127,200,169,.3) 0%, rgba(11,107,75,0) 60%), var(--amc-accent); }
.amc-hs__slide--night { background: radial-gradient(70% 120% at 100% 0%, rgba(224,178,60,.14) 0%, rgba(14,17,16,0) 60%), var(--amc-night); }
.amc-hs__inner { max-width: var(--amc-content); width: 100%; margin: 0 auto; }
.amc-hs__inner .amc-eyebrow { color: var(--amc-gold) !important; }
.amc-hs__title { color: #fff !important; font-size: clamp(32px, 7.5vw, 58px) !important; line-height: 1.06 !important; letter-spacing: -.025em; margin: 0 0 14px !important; max-width: 16ch; }
.amc-hs__text { color: #D7E2DC; font-size: 17px; line-height: 1.55; max-width: 48ch; margin: 0 0 22px !important; }
.amc-hs__controls { position: absolute; left: 50%; bottom: 14px; transform: translateX(-50%); display: flex; align-items: center; gap: 10px; padding: 6px 8px; border-radius: 999px; background: rgba(8,20,16,.55); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); z-index: 5; }
.amc-hs__btn { width: 34px; height: 34px; border-radius: 50%; border: 0; background: rgba(255,255,255,.12); color: #fff; display: grid; place-items: center; cursor: pointer; padding: 0; }
.amc-hs__btn svg { width: 18px; height: 18px; }
.amc-hs__dots { display: flex; gap: 6px; }
.amc-hs__dot { width: 8px; height: 8px; border-radius: 999px; border: 0; padding: 0; background: rgba(255,255,255,.45); cursor: pointer; transition: width .25s ease, background-color .25s ease; }
.amc-hs__dot[aria-current] { width: 24px; background: var(--amc-gold); }
.amc-hs .amc-hero.wp-block-cover { padding-bottom: 64px !important; }
@media (min-width: 782px) {
  .amc-hs__slide:not(.amc-hs__slide--main) { padding: 56px var(--amc-gutter) 80px; }
  .amc-hs .amc-hero.wp-block-cover { padding-bottom: 72px !important; }
}
@media (hover: hover) and (pointer: fine) {
  .amc-hs__btn:hover { background: #fff; color: var(--amc-forest); }
  .amc-hs__dot:hover { background: #fff; }
}
.amc-hs__ctas { display: flex; flex-wrap: wrap; gap: 10px; }
/* Hero panel order: search, latest sermon, upcoming events */
.amc-hp__sermon + .amc-hp__events { border-top: 1px solid rgba(255,255,255,.1); }
.amc-hp__search { padding-bottom: 16px !important; } .amc-hp__search .amc-hp__field { margin-bottom: 0; }

/* ---------- Compact hero / spotlight area (about 25% shorter) ---------- */
.amc-hp__search { padding: 14px 16px 10px !important; }
.amc-hp__heading { font-size: 16px !important; }
.amc-hp__sub { font-size: 12px !important; margin: 1px 0 8px !important; }
.amc-hp__field { padding: 3px !important; }
.amc-hp__field input[type=search] { min-height: 38px !important; font-size: 15px !important; }
.amc-hp__field button { flex-basis: 38px !important; width: 38px !important; height: 38px !important; }
.amc-hp__row { min-height: 0 !important; padding: 8px 16px !important; gap: 12px !important; }
.amc-hp__thumb { flex-basis: 56px !important; height: 38px !important; }
.amc-hp__events-head { padding: 8px 16px 0 !important; }
.amc-hp__events .amc-hp__row { padding-top: 6px !important; padding-bottom: 6px !important; }
.amc-hp__events .amc-hp__date { flex-basis: 40px !important; height: 40px !important; }
.amc-hp__events .amc-hp__date strong { font-size: 16px !important; }
.amc-hp__title { font-size: 14px !important; }
.amc-hp__meta { font-size: 12px !important; }
.amc-hs .amc-hero.wp-block-cover { padding-bottom: 56px !important; }
.amc-hs__slide:not(.amc-hs__slide--main) { padding-top: 28px !important; padding-bottom: 60px !important; }
.amc-hs__controls { bottom: 10px; }
@media (min-width: 782px) {
  .amc-hs .amc-hero.wp-block-cover { min-height: 0 !important; padding-top: 28px !important; padding-bottom: 56px !important; }
  .amc-hp__search { padding: 16px 20px 12px !important; }
  .amc-hp__row, .amc-hp__events-head { padding-left: 20px !important; padding-right: 20px !important; }
  .amc-hp__sub { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .amc-hero h1 { font-size: clamp(38px, 4.2vw, 56px) !important; margin-bottom: 12px !important; }
  .amc-hero .amc-hero-sub { margin-bottom: 18px !important; }
  .amc-hs__title { font-size: clamp(32px, 4.2vw, 52px) !important; }
}
.amc-hs .amc-hero.wp-block-cover { padding-top: 24px !important; padding-bottom: 50px !important; }
.amc-hp__events .amc-hp__row { padding-top: 5px !important; padding-bottom: 5px !important; }
.amc-hp__events-head { padding-top: 6px !important; }
@media (max-width: 781px) {
  .amc-hp__sub { display: none; }
  .amc-hero h1 { font-size: 32px !important; margin-bottom: 10px !important; }
  .amc-hero .amc-hero-sub { font-size: 15px; margin-bottom: 16px !important; }
  .amc-hero .amc-eyebrow { margin-bottom: 10px !important; }
}
@media (min-width: 782px) {
  .amc-hs .amc-hero.wp-block-cover { padding-top: 22px !important; padding-bottom: 50px !important; }
}

/* ---------- Fit Pay Chanda / Apply for Wasiyyat on common laptop screens (1366x768+) ---------- */
@media (min-width: 782px) {
  .amc-hp__sub { display: none; }
  .amc-hp__search { padding: 14px 20px 10px !important; }
  .amc-hp__heading { margin-bottom: 8px; }
  .amc-hp__sermon { padding-top: 7px !important; padding-bottom: 7px !important; }
  .amc-hp__events .amc-hp__row { padding-top: 4px !important; padding-bottom: 4px !important; }
  .amc-hp__events .amc-hp__date { flex-basis: 36px !important; height: 36px !important; }
  .amc-hp__events .amc-hp__date strong { font-size: 15px !important; margin-top: 1px; }
  .amc-hp__events-head { padding-top: 6px !important; padding-bottom: 2px !important; }
  .amc-hs .amc-hero.wp-block-cover { padding-top: 20px !important; padding-bottom: 44px !important; }
  .amc-hs__controls { bottom: 8px; padding: 4px 6px; }
  .amc-hs__btn { width: 30px; height: 30px; }
  .amc-section.amc-services { padding-top: 22px !important; }
  .amc-services .amc-sec-head { margin-bottom: 14px !important; }
  .amc-services .amc-sec-head h2 { font-size: clamp(28px, 2.6vw, 36px) !important; margin-bottom: 4px !important; }
  .amc-services .amc-sec-head .amc-kicker { margin-bottom: 4px !important; }
}
@media (min-width: 782px) {
  .amc-hs .amc-hero .wp-block-columns { margin-bottom: 0 !important; }
  .amc-hp .amc-hp__search { margin-bottom: 0 !important; padding: 12px 18px 10px !important; }
  .amc-hp__heading { margin-bottom: 6px !important; }
  .amc-hero h1 { margin-top: 0 !important; }
  .amc-hs .amc-hero.wp-block-cover { padding-top: 18px !important; padding-bottom: 42px !important; }
  .amc-hp__sermon { padding-top: 6px !important; padding-bottom: 6px !important; }
  .amc-hp__sermon .amc-hp__thumb { flex-basis: 50px !important; height: 34px !important; }
  .amc-hp__events-head { padding-top: 4px !important; }
  /* Member services: lead line hidden on desktop, compact feature cards */
  .amc-section.amc-services { padding-top: 16px !important; }
  .amc-services .amc-sec-head p:not(.amc-kicker):not(.amc-see-all-wrap) { display: none; }
  .amc-services .amc-sec-head { margin-bottom: 12px !important; }
  .amc-fcard { padding-top: 12px !important; padding-bottom: 12px !important; min-height: 0 !important; }
}
@media (min-width: 782px) and (max-height: 700px) {
  .amc-hero h1 { font-size: clamp(36px, 3.3vw, 46px) !important; margin-bottom: 10px !important; }
  .amc-hero .amc-eyebrow { margin-bottom: 8px !important; }
  .amc-hero .amc-hero-sub { font-size: 15px !important; margin-bottom: 14px !important; }
}
/* Hero fills the screen down to the Pay Chanda / Wasiyyat cards: the cards end just above the
   fold and the member service tiles start below it (visible on scroll). 73px header + ~214px
   for the services heading and cards + 12px breathing room. Capped for very tall monitors. */
@media (min-width: 782px) {
  .amc-hs .amc-hero.wp-block-cover { min-height: min(720px, calc(100vh - 299px)) !important; }
  .admin-bar .amc-hs .amc-hero.wp-block-cover { min-height: min(720px, calc(100vh - 331px)) !important; }
}

/* ---------- Hero "Jama'at at a glance" strip (AMC Hero Glance snippet) ----------
   Hidden by default (phones and short screens); shown on desktop screens tall enough to have
   an empty band above the hero copy, so it never pushes the member service cards below the fold. */
.amc-hglance { display: none; }
.amc-hglance [hidden], .amc-hglance__cell[hidden] { display: none !important; }
@media (min-width: 782px) and (min-height: 840px) {
  .amc-hero.has-amc-hglance .wp-block-cover__inner-container { align-self: stretch; display: flex !important; flex-direction: column; justify-content: space-between; gap: 28px; }
  .amc-hglance {
    display: flex; align-items: stretch; width: 100%; margin: 0 !important; padding: 0 !important;
    background: linear-gradient(135deg, rgba(255,255,255,.12), rgba(255,255,255,.04));
    -webkit-backdrop-filter: blur(14px) saturate(140%); backdrop-filter: blur(14px) saturate(140%);
    border: 1px solid rgba(255,255,255,.16); border-radius: 18px;
    box-shadow: 0 18px 40px -24px rgba(0,0,0,.6), inset 0 1px 0 rgba(255,255,255,.12);
    position: relative; overflow: hidden;
  }
  .amc-hglance::before { content: ""; position: absolute; left: 0; top: 0; right: 0; height: 2px; background: linear-gradient(90deg, transparent, var(--amc-gold, #E0B23C) 20%, var(--amc-gold, #E0B23C) 80%, transparent); opacity: .85; }
  .amc-hglance__cell { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 3px; padding: 14px 20px 13px !important; margin: 0 !important; color: #fff; text-decoration: none; position: relative; }
  .amc-hglance__cell + .amc-hglance__cell::before { content: ""; position: absolute; left: 0; top: 18px; bottom: 18px; width: 1px; background: rgba(255,255,255,.14); }
  .amc-hglance__label { display: inline-flex; align-items: center; gap: 6px; font-size: 11px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--amc-gold, #E0B23C); }
  .amc-hglance__label svg { width: 14px; height: 14px; }
  .amc-hglance__value { font-size: clamp(20px, 1.7vw, 26px); font-weight: 800; line-height: 1.15; letter-spacing: -.01em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-variant-numeric: tabular-nums; color: #fff !important; }
  .amc-hglance__value small { font-size: .62em; font-weight: 600; opacity: .8; letter-spacing: 0; }
  .amc-hglance__cap { font-size: 12.5px; color: rgba(255,255,255,.72) !important; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: inline-flex; align-items: center; gap: 6px; }
  .amc-hglance__cap svg { width: 14px; height: 14px; flex: none; transition: transform .2s ease; }
  .amc-hglance__cell--link { background: rgba(224,178,60,.10); transition: background .2s ease; }
  .amc-hglance__cell--link:hover, .amc-hglance__cell--link:focus-visible { background: rgba(224,178,60,.2); }
  .amc-hglance__cell--link:hover .amc-hglance__cap svg { transform: translateX(3px); }
  .amc-hglance__cell--link:focus-visible { outline: 2px solid var(--amc-gold, #E0B23C); outline-offset: -2px; }
}
/* Main tile: hero copy and panel sit at the top (right under the glance strip when it shows);
   any spare height collects below them instead of above. */
@media (min-width: 782px) {
  .amc-hs .amc-hero.wp-block-cover { align-items: flex-start !important; }
  .amc-hero.has-amc-hglance .wp-block-cover__inner-container { justify-content: flex-start !important; }
}
/* Main tile on its own (no active Spotlight items): no slider controls, so less bottom padding. */
@media (min-width: 782px) {
  .amc-hs--single .amc-hero.wp-block-cover { padding-bottom: 22px !important; }
}
/* Mosques and prayer times panel runs to the bottom of the main tile (desktop). Spare height goes to
   the Friday Sermon row (larger share) and the three event rows; it never makes the hero taller. */
@media (min-width: 782px) {
  .amc-hs .amc-hero .wp-block-cover__inner-container { align-self: stretch; display: flex !important; flex-direction: column; }
  .amc-hs .amc-hero .wp-block-columns { flex: 1 1 auto; align-items: stretch !important; }
  .amc-hs .amc-hero .wp-block-column:first-child { align-self: flex-start !important; }
  .amc-hs .amc-hero .wp-block-column:last-child { align-self: stretch !important; display: flex; flex-direction: column; }
  .amc-hs .amc-hero .amc-hp { flex: 1 1 auto; display: flex; flex-direction: column; }
  .amc-hs .amc-hero .amc-hp__events { flex: 3 1 auto; display: flex; flex-direction: column; }
  .amc-hs .amc-hero .amc-hp__sermon { flex: 2 1 auto; }
  .amc-hs .amc-hero .amc-hp__events .amc-hp__row { flex: 1 1 auto; }
  .amc-hs .amc-hero .amc-hp__events-head { flex: none; }
}
/* Tall desktop screens: a bigger sermon thumbnail and roomier event rows. */
@media (min-width: 782px) and (min-height: 840px) {
  .amc-hs .amc-hero .amc-hp__sermon .amc-hp__thumb { flex-basis: 120px !important; height: 68px !important; border-radius: 10px; }
  .amc-hs .amc-hero .amc-hp__sermon .amc-hp__title { font-size: 15.5px !important; white-space: normal !important; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
  .amc-hs .amc-hero .amc-hp__events .amc-hp__date { flex-basis: 44px !important; height: 44px !important; }
  .amc-hs .amc-hero .amc-hp__events .amc-hp__title { font-size: 15px !important; }
  .amc-hs .amc-hero .amc-hp__events .amc-hp__meta { font-size: 12.5px !important; }
}
/* Homepage: auxiliaries are their own section, divided from National departments by a hairline. */
.amc-section.amc-home-aux { border-top: 1px solid var(--amc-line, rgba(0,0,0,.08)); }
.amc-home-depts .amc-sec-head + .amc-depts, .amc-home-depts .amc-sec-head + * { margin-top: 0; }
/* Gold primary button (main tile: Member360). */
.wp-block-button.amc-btn-gold > .wp-block-button__link { background: var(--amc-gold, #E0B23C) !important; color: #14110a !important; border: 1.5px solid var(--amc-gold, #E0B23C) !important; font-weight: 700; }
.wp-block-button.amc-btn-gold > .wp-block-button__link:hover { background: #ebc35c !important; border-color: #ebc35c !important; }
/* Header Login button with a sign-in icon (desktop header and mobile drawer). */
.header-button-wrap .header-button, .mobile-header-button-wrap .mobile-header-button { display: inline-flex !important; align-items: center; gap: 8px; }
.header-button-wrap .header-button::before, .mobile-header-button-wrap .mobile-header-button::before {
  content: ""; width: 18px; height: 18px; flex: none; background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 3h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4'/%3E%3Cpath d='m10 17 5-5-5-5'/%3E%3Cpath d='M15 12H3'/%3E%3C/svg%3E") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 3h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4'/%3E%3Cpath d='m10 17 5-5-5-5'/%3E%3Cpath d='M15 12H3'/%3E%3C/svg%3E") center / contain no-repeat;
}
/* Main tile buttons use only gold and white: gold primary (Member360), solid white (Chapters),
   white outline (Departments). */
.amc-hero .wp-block-button.amc-btn-light > .wp-block-button__link { background: #fff !important; color: var(--amc-ink, #121614) !important; border: 1.5px solid #fff !important; }
.amc-hero .wp-block-button.amc-btn-light > .wp-block-button__link:hover { background: rgba(255,255,255,.88) !important; border-color: rgba(255,255,255,.88) !important; }

/* ---------- Mosque locator [amc_mosque_locator] (AMC Mosque Locator snippet) ----------
   One-screen tool. Phone: panel (title, search, filters, List/Map tabs) + list or map.
   Desktop (>=960px): left panel with scrolling list, map fills the right; whole tool fits the viewport. */
.amc-locator-sec { padding: 12px var(--amc-gutter) 20px !important; }
.amc-locator-sec > .wp-block-group__inner-container { max-width: 1440px !important; }
.amc-ml { --ml-line: rgba(18,22,20,.1); --ml-tint: #f2f5f3; display: grid; gap: 12px; }
.amc-ml__panel { display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.amc-ml__head { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; }
.amc-ml__title { margin: 0 !important; font-size: 22px !important; line-height: 1.2 !important; letter-spacing: -.01em; text-transform: none !important; color: var(--amc-ink) !important; }
.amc-ml__sub { margin: 0 !important; font-size: 13px; color: var(--amc-muted, #5b635f); }
.amc-ml__bar { display: grid; gap: 8px; }
.amc-ml__search { display: flex; align-items: center; gap: 10px; min-height: 46px; padding: 0 14px; border-radius: 12px; background: #fff; border: 1px solid var(--ml-line); transition: border-color .15s ease, box-shadow .15s ease; }
.amc-ml__search:focus-within { border-color: var(--amc-forest, #0F3B2C); box-shadow: 0 0 0 3px rgba(15,59,44,.12); }
.amc-ml__search svg { width: 18px; height: 18px; flex: none; color: var(--amc-muted, #5b635f); }
.amc-ml__search input { flex: 1; min-width: 0; border: 0 !important; background: transparent !important; box-shadow: none !important; font-size: 16px; padding: 10px 0 !important; color: var(--amc-ink); outline: none; }
.amc-ml__actions { display: grid; grid-template-columns: minmax(0, 1fr) auto 44px; gap: 8px; }
.amc-ml__state select { width: 100%; min-height: 44px; border-radius: 12px; border: 1px solid var(--ml-line); background-color: #fff; padding: 0 34px 0 12px; font-size: 15px; color: var(--amc-ink); }
.amc-ml__near, .amc-ml__reset { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 44px; border-radius: 12px; font-size: 14px; font-weight: 700; cursor: pointer; transition: background .15s ease, color .15s ease, border-color .15s ease; }
.amc-ml__near { padding: 0 14px; background: var(--amc-ink, #121614); color: #fff; border: 0; }
.amc-ml__near svg, .amc-ml__reset svg { width: 18px; height: 18px; }
.amc-ml__near:hover, .amc-ml__near.is-active { background: var(--amc-forest, #0F3B2C); }
.amc-ml__near.is-active { box-shadow: inset 0 0 0 2px var(--amc-gold, #E0B23C); }
.amc-ml__near:disabled { opacity: .6; cursor: progress; }
.amc-ml__reset { padding: 0; background: #fff; color: var(--amc-muted, #5b635f); border: 1px solid var(--ml-line); }
.amc-ml__reset:hover { color: var(--amc-ink); border-color: rgba(18,22,20,.3); }
.amc-ml__status { margin: 0 !important; padding: 8px 12px; border-radius: 10px; font-size: 13.5px; background: var(--ml-tint); color: var(--amc-ink); }
.amc-ml__status[hidden] { display: none; }
.amc-ml__status.is-ok { background: rgba(11,107,75,.1); color: #0b5a40; }
.amc-ml__status.is-error { background: rgba(176,52,40,.09); color: #8a2a20; }
.amc-ml__tabs { display: grid; grid-template-columns: 1fr 1fr; padding: 3px; border-radius: 999px; background: #eceeed; }
.amc-ml__tabs button { min-height: 38px; border: 0; border-radius: 999px; background: transparent; font-weight: 700; font-size: 14px; color: var(--amc-muted, #5b635f); cursor: pointer; }
.amc-ml__tabs button[aria-selected="true"] { background: #fff; color: var(--amc-ink); box-shadow: 0 1px 4px rgba(0,0,0,.1); }
.amc-ml[data-view="list"] .amc-ml__mapwrap, .amc-ml[data-view="map"] .amc-ml__list { display: none; }
.amc-ml__summary { margin: 0 2px 8px; font-size: 13px; color: var(--amc-muted, #5b635f); }
.amc-ml__summary strong { color: var(--amc-ink); }
.amc-ml__results { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; gap: 8px; }
.amc-ml__item { position: relative; background: #fff; border: 1px solid var(--ml-line); border-radius: 14px; transition: border-color .15s ease, box-shadow .15s ease; }
.amc-ml__item:hover { border-color: rgba(18,22,20,.22); }
.amc-ml__item.is-active { border-color: var(--amc-forest, #0F3B2C); box-shadow: 0 0 0 1px var(--amc-forest, #0F3B2C), 0 8px 20px -14px rgba(15,59,44,.5); }
.amc-ml__card { display: grid; grid-template-columns: 64px minmax(0, 1fr) auto; gap: 12px; align-items: start; width: 100%; padding: 10px 10px 4px; border: 0; background: transparent; text-align: left; cursor: pointer; color: inherit; font: inherit; border-radius: 14px; }
.amc-ml__photo { width: 64px; height: 64px; border-radius: 10px; background: var(--ml-tint) center / cover no-repeat; display: flex; align-items: center; justify-content: center; }
.amc-ml__photo.is-empty { background: linear-gradient(160deg, #f4f7f5, #e6ede9); color: var(--amc-forest, #0F3B2C); border: 1px solid rgba(15,59,44,.08); }
.amc-ml__photo .amc-ml__glyph { width: 34px; height: 34px; opacity: .75; }
.amc-ml__info { display: flex; flex-direction: column; gap: 2px; min-width: 0; padding-top: 1px; }
.amc-ml__info strong { font-size: 15px; line-height: 1.25; color: var(--amc-ink); }
.amc-ml__meta { font-size: 12px; font-weight: 600; color: var(--amc-emerald, #0B6B4B); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.amc-ml__addr { font-size: 13px; color: var(--amc-muted, #5b635f); line-height: 1.4; }
.amc-ml__jumuah { display: inline-flex; align-items: center; gap: 3px; white-space: nowrap; color: var(--amc-ink); font-weight: 600; }
.amc-ml__jumuah svg { width: 12px; height: 12px; color: var(--amc-gold, #E0B23C); }
.amc-ml__dist { align-self: start; padding: 3px 8px; border-radius: 999px; background: var(--amc-ink, #121614); color: #fff; font-size: 12px; font-weight: 700; white-space: nowrap; }
.amc-ml__links { display: flex; gap: 4px; padding: 0 10px 8px 86px; }
.amc-ml__links a { display: inline-flex; align-items: center; gap: 5px; min-height: 32px; padding: 0 10px; border-radius: 8px; font-size: 13px; font-weight: 700; color: var(--amc-forest, #0F3B2C) !important; text-decoration: none !important; background: var(--ml-tint); }
.amc-ml__links a:hover { background: #e4ebe7; }
.amc-ml__links svg { width: 14px; height: 14px; }
.amc-ml__empty { display: grid; gap: 4px; padding: 24px 16px; text-align: center; border: 1px dashed rgba(18,22,20,.2); border-radius: 14px; color: var(--amc-muted, #5b635f); font-size: 14px; }
.amc-ml__empty[hidden] { display: none; }
.amc-ml__empty strong { color: var(--amc-ink); }
.amc-ml__mapwrap { border-radius: 16px; overflow: hidden; border: 1px solid var(--ml-line); background: var(--ml-tint); }
.amc-ml__map { height: calc(100svh - 260px); min-height: 380px; }
/* Pins (Leaflet fallback) and popups (both map engines) */
.amc-ml__pin span { display: block; width: 30px; height: 38px; background: var(--amc-forest, #0F3B2C); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 38'%3E%3Cpath d='M15 0C6.7 0 0 6.6 0 14.8 0 25.9 15 38 15 38s15-12.1 15-23.2C30 6.6 23.3 0 15 0Zm0 20.5a5.7 5.7 0 1 1 0-11.4 5.7 5.7 0 0 1 0 11.4Z'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 38'%3E%3Cpath d='M15 0C6.7 0 0 6.6 0 14.8 0 25.9 15 38 15 38s15-12.1 15-23.2C30 6.6 23.3 0 15 0Zm0 20.5a5.7 5.7 0 1 1 0-11.4 5.7 5.7 0 0 1 0 11.4Z'/%3E%3C/svg%3E") center / contain no-repeat; filter: drop-shadow(0 3px 4px rgba(0,0,0,.3)); transition: transform .15s ease; transform-origin: 50% 100%; }
.amc-ml__pin.is-active span { background: var(--amc-gold, #E0B23C); transform: scale(1.2); }
.amc-ml__me span { display: block; width: 20px; height: 20px; border-radius: 50%; background: #2a7de1; border: 3px solid #fff; box-shadow: 0 0 0 6px rgba(42,125,225,.22); }
.amc-ml__popup .leaflet-popup-content-wrapper { padding: 0; border-radius: 14px; overflow: hidden; }
.amc-ml__popup .leaflet-popup-content { margin: 0; width: 250px !important; }
.amc-ml__pop { width: 250px; font-family: inherit; }
.amc-ml__pop img { display: block; width: 100%; height: 120px; object-fit: cover; }
.amc-ml__pop-ph { display: flex; align-items: center; justify-content: center; height: 84px; background: linear-gradient(160deg, #f4f7f5, #e6ede9); color: var(--amc-forest, #0F3B2C); }
.amc-ml__pop-ph .amc-ml__glyph { width: 40px; height: 40px; opacity: .7; }
.amc-ml__pop-body { display: grid; gap: 3px; padding: 10px 14px 14px; }
.amc-ml__pop-body strong { font-size: 15px; color: var(--amc-ink); }
.amc-ml__pop-body span { font-size: 13px; color: var(--amc-muted, #5b635f); line-height: 1.4; }
.amc-ml__pop-links { display: flex; gap: 6px; margin-top: 8px; }
.amc-ml__pop-links a { flex: 1; text-align: center; padding: 7px 6px; border-radius: 8px; font-size: 13px; font-weight: 700; text-decoration: none !important; background: var(--ml-tint, #f2f5f3); color: var(--amc-forest, #0F3B2C) !important; }
.amc-ml__pop-links a:last-child { background: var(--amc-ink, #121614); color: #fff !important; }
.amc-ml .leaflet-container { font-family: inherit; }
.amc-ml .gm-style .gm-style-iw-c { padding: 0 !important; border-radius: 14px !important; box-shadow: 0 18px 40px -12px rgba(0,0,0,.35) !important; }
.amc-ml .gm-style .gm-style-iw-d { overflow: hidden !important; padding: 0 !important; max-height: none !important; }
.amc-ml .gm-style .gm-style-iw-chr { position: absolute; top: 0; right: 0; z-index: 2; }
.amc-ml .gm-style .gm-style-iw-chr button { background: rgba(255,255,255,.92) !important; border-radius: 0 14px 0 10px; }
@media (min-width: 600px) {
  .amc-ml__actions { grid-template-columns: minmax(0, 1fr) auto 44px; }
}
@media (min-width: 960px) {
  /* Whole tool in one screen: header 73px, page padding, admin bar when logged in. */
  .amc-ml { --ml-h: calc(100vh - 73px - 32px); grid-template-columns: 400px minmax(0, 1fr); gap: 16px; height: var(--ml-h); min-height: 560px; }
  .admin-bar .amc-ml { --ml-h: calc(100vh - 73px - 32px - 32px); }
  .amc-ml__panel { height: 100%; overflow: hidden; }
  .amc-ml__tabs { display: none; }
  .amc-ml[data-view] .amc-ml__list, .amc-ml[data-view] .amc-ml__mapwrap { display: block; }
  .amc-ml__list { flex: 1 1 auto; min-height: 0; overflow-y: auto; margin-right: -6px; padding-right: 6px; scrollbar-width: thin; }
  .amc-ml__mapwrap { height: 100%; }
  .amc-ml__map { height: 100%; min-height: 0; }
  .amc-ml__title { font-size: 24px !important; }
}

/* ---------- Compact page headings (all pages except Home) ----------
   Simple page hero: one-line title on desktop, tighter spacing, thin gold accent along the bottom. */
.amc-page-hero { position: relative; padding: 28px var(--amc-gutter) 26px !important; }
.amc-page-hero::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: linear-gradient(90deg, var(--amc-gold, #E0B23C) 0%, rgba(224,178,60,.35) 45%, rgba(224,178,60,0) 100%); }
.amc-page-hero .amc-eyebrow { margin-bottom: 6px !important; font-size: 12px !important; }
.amc-page-hero h1 { font-size: clamp(28px, 7vw, 36px) !important; line-height: 1.12 !important; margin: 0 0 8px !important; max-width: 28ch; }
.amc-page-hero p:not(.amc-eyebrow) { font-size: 15px; line-height: 1.55; max-width: 70ch; }
@media (min-width: 782px) {
  .amc-page-hero { padding: 40px var(--amc-gutter) 36px !important; }
  .amc-page-hero h1 { font-size: clamp(34px, 3.2vw, 44px) !important; margin-bottom: 10px !important; }
  .amc-page-hero p:not(.amc-eyebrow) { font-size: 16.5px; }
}
/* Chapter and mosque photo heroes: drop the oversized top padding and scale the title down. */
.amc-cx-hero { padding: 36px var(--amc-gutter) 24px; }
.amc-cx-hero__title { font-size: clamp(32px, 8vw, 44px) !important; }
.amc-cx-hero--sub { padding: 32px var(--amc-gutter) 24px; }
.amc-cx-hero--sub .amc-cx-hero__title { font-size: clamp(28px, 7vw, 38px) !important; }
@media (min-width: 782px) {
  .amc-cx-hero { padding: 56px var(--amc-gutter) 40px; }
  .amc-cx-hero__title { font-size: clamp(40px, 4vw, 54px) !important; }
  .amc-cx-hero--sub { padding: 48px var(--amc-gutter) 36px; }
}
/* Mosque locator badges: location (city, state) and chapter, on list cards and map popups. */
.amc-ml__badges { display: flex; flex-wrap: wrap; gap: 4px; margin: 3px 0 2px; }
.amc-ml__badge { display: inline-flex; align-items: center; gap: 4px; max-width: 100%; padding: 2px 8px 2px 6px; border-radius: 999px; font-size: 11.5px; font-weight: 700; line-height: 1.5; color: var(--amc-ink, #121614); background: #eef1ef; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.amc-ml__badge svg { width: 12px; height: 12px; flex: none; color: var(--amc-forest, #0F3B2C); }
.amc-ml__badge--chapter { color: #0b5a40; background: rgba(11,107,75,.1); }
.amc-ml__badge--chapter svg { color: #0b5a40; }
.amc-ml__pop-body .amc-ml__badges { margin: 4px 0; }
.amc-ml__pop-body .amc-ml__pop-addr { font-size: 13px; color: var(--amc-muted, #5b635f); line-height: 1.4; }
.amc-ml__pop-jm { display: inline-flex; align-items: center; gap: 4px; font-size: 12.5px; font-weight: 600; color: var(--amc-ink, #121614); }
.amc-ml__pop-jm svg { width: 13px; height: 13px; color: var(--amc-gold, #E0B23C); }
/* Mosque locator: neutral highlight (no green outline/badges), height set by script on desktop. */
.amc-ml__item.is-active { border-color: var(--amc-ink, #121614); box-shadow: 0 6px 18px -12px rgba(0,0,0,.45); background: #fafbfa; }
.amc-ml__badge--chapter, .amc-ml__badge--chapter svg { color: var(--amc-ink, #121614); }
.amc-ml__badge--chapter { background: #eef1ef; }
.amc-ml__badge svg { color: var(--amc-muted, #5b635f); }
.amc-ml__photo.is-empty { background: linear-gradient(160deg, #f6f7f6, #eceeed); color: #6b736f; border-color: rgba(18,22,20,.07); }
.amc-ml__pop-ph { background: linear-gradient(160deg, #f6f7f6, #eceeed); color: #6b736f; }
.amc-locator-sec { padding-top: 14px !important; padding-bottom: 14px !important; }
@media (min-width: 960px) {
  .amc-ml, .admin-bar .amc-ml { height: auto; min-height: 520px; }
  .amc-ml:not([style*="height"]) { height: calc(100vh - 300px); }
}
/* Mosque locator page on short desktop screens (e.g. 1366x768 laptops): slimmer page heading so the
   whole tool still fits without scrolling. */
@media (min-width: 960px) {
  .amc-ml, .admin-bar .amc-ml { min-height: 380px; }
}
@media (min-width: 960px) and (max-height: 860px) {
  body:has(.amc-ml) .amc-page-hero { padding-top: 18px !important; padding-bottom: 16px !important; }
  body:has(.amc-ml) .amc-page-hero h1 { font-size: 30px !important; margin-bottom: 0 !important; }
  body:has(.amc-ml) .amc-page-hero p:not(.amc-eyebrow) { display: none; }
  body:has(.amc-ml) .amc-locator-sec { padding-top: 10px !important; padding-bottom: 10px !important; }
}

/* ---------- Page header (all pages except Home): light, compact, professional ----------
   Replaces the green bar. White band + hairline, gold-ruled kicker, dark title; on desktop the
   description sits beside the title so the header stays short. */
.amc-page-hero { background: #fff !important; color: var(--amc-ink) !important; border-bottom: 1px solid rgba(18,22,20,.09); padding: 22px var(--amc-gutter) 20px !important; }
.amc-page-hero::after { content: none !important; }
.amc-page-hero > .wp-block-group__inner-container { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0 32px; align-items: end; }
.amc-page-hero .amc-eyebrow { grid-column: 1 / -1; display: inline-flex; align-items: center; gap: 10px; color: var(--amc-emerald, #0B6B4B) !important; font-size: 11.5px !important; letter-spacing: .14em; margin: 0 0 6px !important; }
.amc-page-hero .amc-eyebrow::before { content: ""; width: 22px; height: 2px; border-radius: 2px; background: var(--amc-gold, #E0B23C); }
.amc-page-hero h1 { color: var(--amc-ink) !important; font-size: clamp(26px, 6.5vw, 32px) !important; line-height: 1.15 !important; letter-spacing: -.02em; margin: 0 !important; max-width: none; }
.amc-page-hero p:not(.amc-eyebrow) { color: var(--amc-muted, #5b635f) !important; font-size: 14.5px; line-height: 1.5; max-width: 60ch; margin: 6px 0 0 !important; }
@media (min-width: 782px) {
  .amc-page-hero { padding: 26px var(--amc-gutter) 22px !important; }
  .amc-page-hero > .wp-block-group__inner-container { grid-template-columns: auto minmax(0, 1fr); }
  .amc-page-hero h1 { font-size: clamp(30px, 2.6vw, 38px) !important; grid-column: 1; }
  .amc-page-hero p:not(.amc-eyebrow) { grid-column: 2; justify-self: end; text-align: right; margin: 0 0 4px !important; max-width: 52ch; font-size: 14.5px; }
}
/* Pages whose header is followed by a sticky sub-menu: keep the hairline only once. */
.amc-page-hero + .amc-subnav, .amc-page-hero + * .amc-subnav { border-top: 0; }
/* Mosque locator cards: cancel the theme's button hover fill; hover = elegant green border on the
   whole tile, selected = slightly stronger green border. Same reset for the other locator buttons. */
.amc-ml .amc-ml__card, .amc-ml .amc-ml__card:hover, .amc-ml .amc-ml__card:focus, .amc-ml .amc-ml__card:active { background: transparent !important; color: inherit !important; box-shadow: none !important; border: 0 !important; }
.amc-ml .amc-ml__card:focus-visible { outline: 2px solid var(--amc-emerald, #0B6B4B); outline-offset: -2px; }
.amc-ml__item { transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.amc-ml__item:hover { border-color: rgba(11,107,75,.55); box-shadow: 0 0 0 1px rgba(11,107,75,.18), 0 10px 22px -16px rgba(15,59,44,.55); }
.amc-ml__item.is-active, .amc-ml__item.is-active:hover { background: #fff; border-color: var(--amc-emerald, #0B6B4B); box-shadow: 0 0 0 1px var(--amc-emerald, #0B6B4B), 0 12px 26px -18px rgba(15,59,44,.6); }
.amc-ml__item:hover .amc-ml__info strong, .amc-ml__item.is-active .amc-ml__info strong { color: var(--amc-forest, #0F3B2C); }
.amc-ml .amc-ml__reset:hover, .amc-ml .amc-ml__reset:focus { background: #fff !important; color: var(--amc-ink) !important; }
.amc-ml .amc-ml__tabs button:hover { background: rgba(255,255,255,.6) !important; color: var(--amc-ink) !important; }
.amc-ml .amc-ml__tabs button[aria-selected="true"]:hover { background: #fff !important; }

/* ---------- Mosque locator: refined look ----------
   Panel = one white card (soft shadow) holding search, filters and a clean list of rows. */
@media (min-width: 960px) {
  .amc-ml__panel { background: #fff; border: 1px solid rgba(18,22,20,.08); border-radius: 18px; box-shadow: 0 18px 40px -30px rgba(15,59,44,.45); padding: 14px 12px 6px; gap: 10px; }
  .amc-ml__mapwrap { border: 1px solid rgba(18,22,20,.08); border-radius: 18px; box-shadow: 0 18px 40px -30px rgba(15,59,44,.45); }
}
.amc-ml__search { min-height: 44px; border-radius: 12px; background: #f6f7f6; border-color: transparent; }
.amc-ml__search:focus-within { background: #fff; border-color: rgba(11,107,75,.5); box-shadow: 0 0 0 3px rgba(11,107,75,.1); }
.amc-ml__state select { min-height: 40px; border-radius: 10px; font-size: 14px; background-color: #fff; border-color: rgba(18,22,20,.12); }
.amc-ml .amc-ml__near { min-height: 40px; padding: 0 14px; border-radius: 10px; background: #fff !important; color: var(--amc-ink) !important; border: 1px solid rgba(18,22,20,.14) !important; font-weight: 600; }
.amc-ml .amc-ml__near svg { color: var(--amc-emerald, #0B6B4B); }
.amc-ml .amc-ml__near:hover { border-color: rgba(11,107,75,.55) !important; color: var(--amc-forest, #0F3B2C) !important; }
.amc-ml .amc-ml__near.is-active { border-color: var(--amc-emerald, #0B6B4B) !important; box-shadow: 0 0 0 1px var(--amc-emerald, #0B6B4B) !important; color: var(--amc-forest, #0F3B2C) !important; }
.amc-ml .amc-ml__reset { min-height: 40px; border-radius: 10px; border-color: rgba(18,22,20,.14); }
.amc-ml__actions { grid-template-columns: minmax(0, 1fr) auto 40px; gap: 6px; }
.amc-ml__summary { display: flex; justify-content: space-between; align-items: center; margin: 2px 4px 6px; padding-bottom: 8px; border-bottom: 1px solid rgba(18,22,20,.07); font-size: 12.5px; letter-spacing: .01em; }
.amc-ml__results { gap: 2px; }
.amc-ml__item { border: 1px solid transparent; border-radius: 12px; background: transparent; }
.amc-ml__item + .amc-ml__item::before { content: ""; position: absolute; left: 12px; right: 12px; top: -2px; height: 1px; background: rgba(18,22,20,.07); }
.amc-ml__item:hover::before, .amc-ml__item:hover + .amc-ml__item::before, .amc-ml__item.is-active::before, .amc-ml__item.is-active + .amc-ml__item::before { opacity: 0; }
.amc-ml__item:hover { background: #fff; border-color: rgba(11,107,75,.45); box-shadow: 0 8px 20px -16px rgba(15,59,44,.55); }
.amc-ml__item.is-active, .amc-ml__item.is-active:hover { background: #fff; border-color: var(--amc-emerald, #0B6B4B); box-shadow: inset 3px 0 0 var(--amc-emerald, #0B6B4B), 0 10px 24px -18px rgba(15,59,44,.6); }
.amc-ml__card { grid-template-columns: 56px minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 10px; }
.amc-ml__photo { width: 56px; height: 56px; border-radius: 12px; }
.amc-ml__photo .amc-ml__glyph { width: 30px; height: 30px; }
.amc-ml__info strong { font-size: 14.5px; font-weight: 700; }
.amc-ml__badges { margin: 4px 0 3px; }
.amc-ml__badge { font-size: 11px; font-weight: 600; padding: 1px 8px 1px 6px; background: #f2f4f3; color: #3b423f; }
.amc-ml__addr { font-size: 12.5px; color: #7a827e; }
.amc-ml__dist { background: #f2f4f3; color: var(--amc-ink); }
/* Page header: description sits under the title, left-aligned (not beside it like a quote). */
@media (min-width: 782px) {
  .amc-page-hero > .wp-block-group__inner-container { grid-template-columns: minmax(0, 1fr); }
  .amc-page-hero h1 { grid-column: 1; }
  .amc-page-hero p:not(.amc-eyebrow) { grid-column: 1; justify-self: start; text-align: left; margin: 6px 0 0 !important; max-width: 72ch; font-size: 15px; }
}
/* Sub-menus line up with the page content edge (gutter on the bar, not inside the centered row). */
.amc-subnav { padding-left: var(--amc-gutter); padding-right: var(--amc-gutter); }
.amc-subnav__inner { padding-left: 0; padding-right: 0; }
.amc-ms-jump { padding-left: var(--amc-gutter) !important; padding-right: var(--amc-gutter) !important; }
.amc-ms-jump p { padding-left: 0 !important; padding-right: 0 !important; }
/* Mosque locator uses the same content width as every other page. */
.amc-locator-sec > .wp-block-group__inner-container { max-width: var(--amc-content) !important; margin-left: auto !important; margin-right: auto !important; }
@media (min-width: 960px) {
  .amc-ml { grid-template-columns: 360px minmax(0, 1fr); }
}
/* Mosque locator list: text-only rows (photos appear in the map popup). */
.amc-ml__card { grid-template-columns: minmax(0, 1fr) auto; padding: 10px 12px; }

/* ---------- Mosques page finder [amc_mosque_finder] ----------
   Phones: directory list only (no map loaded). Desktop: Map / List switch, right of the page heading. */
.amc-mf-sec { padding-top: 0 !important; }
.amc-mf__bar, .amc-mf__map { display: none; }
.amc-mf__list { display: block; padding-top: 16px; }
@media (min-width: 960px) {
  .amc-mf__bar { display: flex; justify-content: flex-end; position: relative; z-index: 3; height: 0; }
  .amc-mf__switch { display: inline-flex; gap: 2px; padding: 3px; border-radius: 12px; background: #fff; border: 1px solid rgba(18,22,20,.12); box-shadow: 0 6px 16px -12px rgba(0,0,0,.35); transform: translateY(calc(-100% - 22px)); }
  .amc-mf__switch button { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; padding: 0 14px; border: 0; border-radius: 9px; background: transparent !important; color: var(--amc-muted, #5b635f) !important; font-size: 14px; font-weight: 600; cursor: pointer; }
  .amc-mf__switch button svg { width: 16px; height: 16px; }
  .amc-mf__switch button:hover { color: var(--amc-ink) !important; }
  .amc-mf__switch button[aria-selected="true"] { background: var(--amc-ink) !important; color: #fff !important; }
  .amc-mf[data-view="map"] .amc-mf__map { display: block; padding-top: 14px; }
  .amc-mf[data-view="map"] .amc-mf__list { display: none; }
  .amc-mf[data-view="list"] .amc-mf__map { display: none; }
}
@media (min-width: 960px) {
  .amc-mf__bar { align-items: flex-start; }
  .amc-mf__switch { transform: translateY(calc(-100% - 26px)); }
}
/* Main tile without the glance strip: panel keeps its natural (compact) height; copy and panel are
   centered vertically in the tile so spare height is balanced above and below. */
@media (min-width: 782px) {
  .amc-hs .amc-hero.wp-block-cover { align-items: center !important; }
  .amc-hs .amc-hero .wp-block-cover__inner-container { justify-content: center !important; }
  .amc-hs .amc-hero .wp-block-columns { flex: 0 0 auto; align-items: center !important; }
  .amc-hs .amc-hero .wp-block-column:first-child, .amc-hs .amc-hero .wp-block-column:last-child { align-self: center !important; }
  .amc-hs .amc-hero .amc-hp, .amc-hs .amc-hero .amc-hp__events, .amc-hs .amc-hero .amc-hp__sermon, .amc-hs .amc-hero .amc-hp__events .amc-hp__row { flex: 0 0 auto !important; }
  .amc-hs .amc-hero .amc-hp__sermon { padding-top: 10px !important; padding-bottom: 10px !important; }
  .amc-hs .amc-hero .amc-hp__events .amc-hp__row { padding-top: 7px !important; padding-bottom: 7px !important; }
}
/* Main tile: content height only (no longer stretched to the viewport), modest padding. */
@media (min-width: 782px) {
  .amc-hs .amc-hero.wp-block-cover, .admin-bar .amc-hs .amc-hero.wp-block-cover { min-height: 0 !important; padding-top: 36px !important; padding-bottom: 36px !important; }
}
/* Hero panel: the mosques and prayer times search is the last item (below the events). */
.amc-hp > .amc-hp__search:last-child { margin: 0 !important; border-top: 1px solid rgba(255,255,255,.1); padding: 12px 18px 14px !important; }
.amc-hp > .amc-hp__search:last-child .amc-hp__heading { font-size: 14px !important; margin-bottom: 8px !important; }
.amc-hp > .amc-hp__search:last-child .amc-hp__sub { display: none; }
/* Main tile: Member360 button and the "Love for All, Hatred for None" motto in green
   (the button keeps the amc-btn-gold class in the page content; restyled here). */
.amc-hero .wp-block-button.amc-btn-gold > .wp-block-button__link { background: #12805A !important; border-color: #12805A !important; color: #fff !important; }
.amc-hero .wp-block-button.amc-btn-gold > .wp-block-button__link:hover { background: #0B6B4B !important; border-color: #0B6B4B !important; }
.amc-hero .amc-eyebrow { color: #7FD4A6 !important; }
/* Hero panel: search sits between the Friday Sermon and Upcoming events. */
.amc-hp > .amc-hp__search:not(:first-child) { margin: 0 !important; border-top: 1px solid rgba(255,255,255,.1); padding: 12px 18px 14px !important; }
.amc-hp > .amc-hp__search:not(:first-child) .amc-hp__heading { font-size: 14px !important; margin-bottom: 8px !important; }
.amc-hp > .amc-hp__search:not(:first-child) .amc-hp__sub { display: none; }
/* Main tile motto: black text on a small white badge (plain black would disappear on the dark photo). */
.amc-hero .amc-eyebrow { display: inline-flex !important; align-items: center; width: fit-content; color: var(--amc-ink, #121614) !important; background: rgba(255,255,255,.92); padding: 5px 12px; border-radius: 999px; letter-spacing: .12em; }
/* Main tile motto: plain black text, no background (user choice). */
.amc-hero .amc-eyebrow { display: block !important; width: auto; background: none !important; padding: 0 !important; border-radius: 0; color: #000 !important; }
/* Main tile motto: back to light green, no background (final). */
.amc-hero .amc-eyebrow { color: #7FD4A6 !important; background: none !important; padding: 0 !important; }
/* Main tile: right box a bit wider (columns 53% / 47%). */
@media (min-width: 782px) {
  .amc-hs .amc-hero .wp-block-columns > .wp-block-column:first-child { flex-basis: 53% !important; }
  .amc-hs .amc-hero .wp-block-columns > .wp-block-column:last-child { flex-basis: 47% !important; }
}
/* Chapters directly under the main tile: compact top spacing so the first row of chapter tiles shows
   without scrolling; the "Chapters" heading lead line is hidden on desktop. */
.amc-section.amc-chapters-sec { padding-top: 22px !important; padding-bottom: 32px !important; }
.amc-chapters-sec .amc-sec-head { margin-bottom: 14px !important; }
@media (min-width: 782px) {
  .amc-chapters-sec .amc-sec-head p:not(.amc-kicker):not(.amc-see-all-wrap) { display: none; }
  .amc-chapters-sec .amc-sec-head h2 { margin-bottom: 0 !important; }
  .amc-chapters-sec .amc-sec-head .amc-kicker { margin-bottom: 4px !important; }
}
@media (min-width: 782px) {
  .home .amc-hs .amc-hero.wp-block-cover { padding-top: 26px !important; padding-bottom: 26px !important; }
}
/* Homepage: alternating section backgrounds (white / light grey) after the main tile. */
.home .amc-section.amc-chapters-sec,
.home .amc-section.amc-services,
.home .amc-section.amc-home-aux { background: #fff !important; }
.home .amc-section.amc-events-section,
.home .amc-section.amc-home-depts:not(.amc-home-aux),
.home .amc-section.amc-wasiyyat-sec { background: var(--amc-surface, #F4F5F4) !important; }
.home .amc-section.amc-home-aux { border-top: 0 !important; }
.home .amc-section.amc-services .amc-svc { background: #fff; }
.home .amc-section.amc-home-depts:not(.amc-home-aux) .amc-dept__icon { background: #fff; }
@media (min-width: 782px) {
  .home .amc-hs .amc-hero.wp-block-cover { padding-top: 20px !important; padding-bottom: 20px !important; }
  .home .amc-section.amc-chapters-sec { padding-top: 14px !important; }
  .home .amc-chapters-sec .amc-sec-head { margin-bottom: 10px !important; }
  .home .amc-chapters-sec .amc-sec-head h2 { font-size: clamp(28px, 2.4vw, 34px) !important; }
}
/* Laptop-height screens: compact main tile so the first row of chapter cards fits above the fold. */
@media (min-width: 782px) and (max-height: 860px) {
  .home .amc-hs .amc-hero.wp-block-cover { padding-top: 16px !important; padding-bottom: 16px !important; }
  .home .amc-hero .amc-eyebrow { margin-bottom: 6px !important; font-size: 11.5px !important; }
  .home .amc-hero h1 { font-size: clamp(34px, 3vw, 42px) !important; margin-bottom: 8px !important; }
  .home .amc-hero .amc-hero-sub { font-size: 15px !important; line-height: 1.5 !important; margin-bottom: 14px !important; }
  .home .amc-hero .wp-block-button__link { padding-top: 9px !important; padding-bottom: 9px !important; }
  .home .amc-hp__sermon { padding-top: 7px !important; padding-bottom: 7px !important; }
  .home .amc-hp__events .amc-hp__row { padding-top: 5px !important; padding-bottom: 5px !important; }
  .home .amc-hp__events .amc-hp__row:nth-of-type(n+3) { display: none; }
  .home .amc-hp > .amc-hp__search:last-child { padding: 8px 18px 10px !important; }
  .home .amc-hp > .amc-hp__search:last-child .amc-hp__heading { margin-bottom: 6px !important; }
  .home .amc-hp__field input[type=search] { min-height: 36px !important; }
  .home .amc-section.amc-chapters-sec { padding-top: 12px !important; }
}
/* Homepage chapters: compact horizontal tiles (small photo left, name right), 4 per row. */
@media (min-width: 782px) {
  .home .amc-chapters { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: 12px !important; }
  .home .amc-chapters-sec .amc-chapter { flex-direction: row; align-items: center; }
  .home .amc-chapters-sec .amc-chapter__img { flex: 0 0 96px; width: 96px; height: auto; aspect-ratio: auto; align-self: stretch; min-height: 76px; }
  .home .amc-chapters-sec .amc-chapter__body { padding: 10px 14px; min-width: 0; }
  .home .amc-chapters-sec .amc-chapter__name { font-size: 16px; margin: 2px 0 1px; }
  .home .amc-chapters-sec .amc-chapter__mosque { font-size: 13px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: block; }
}
/* Main tile: less green — near-neutral charcoal overlay with a slight green hint, softer photo color. */
.amc-hs .amc-hero .wp-block-cover__background { opacity: 1 !important; background: linear-gradient(180deg, rgba(22,28,26,.74) 0%, rgba(22,28,26,.52) 30%, rgba(22,28,26,.86) 60%, rgba(18,23,21,.95) 100%) !important; }
@media (min-width: 782px) {
  .amc-hs .amc-hero .wp-block-cover__background { background: linear-gradient(90deg, rgba(18,24,22,.9) 0%, rgba(26,33,30,.64) 55%, rgba(26,33,30,.4) 100%) !important; }
}
.amc-hs .amc-hero .wp-block-cover__image-background { filter: saturate(.55) contrast(1.05) !important; }
.amc-hs .amc-hero.wp-block-cover { background-color: #1d2421; }
/* Main tile: light green overlay at lower opacity (more photo visible); a touch stronger behind the text. */
.amc-hs .amc-hero .wp-block-cover__background { opacity: 1 !important; background: linear-gradient(180deg, rgba(34,96,72,.55) 0%, rgba(34,96,72,.38) 35%, rgba(28,82,62,.62) 70%, rgba(24,70,54,.75) 100%) !important; }
@media (min-width: 782px) {
  .amc-hs .amc-hero .wp-block-cover__background { background: linear-gradient(90deg, rgba(26,78,59,.72) 0%, rgba(38,104,79,.45) 55%, rgba(44,116,88,.28) 100%) !important; }
}
.amc-hs .amc-hero .wp-block-cover__image-background { filter: saturate(.8) contrast(1.05) !important; }
.amc-hs .amc-hero.wp-block-cover { background-color: #2a5c49; }
/* Main tile text on the lighter green overlay: crisp white with soft shadows, brighter motto,
   clearer outline buttons, and a gentle extra shade only behind the text column. */
.amc-hs .amc-hero h1 { color: #fff !important; text-shadow: 0 2px 18px rgba(0,0,0,.35), 0 1px 2px rgba(0,0,0,.25); }
.amc-hs .amc-hero .amc-hero-sub { color: #fff !important; font-weight: 500; text-shadow: 0 1px 10px rgba(0,0,0,.45), 0 1px 2px rgba(0,0,0,.3); }
.amc-hs .amc-hero .amc-eyebrow { color: #B9F5D4 !important; font-weight: 700; text-shadow: 0 1px 8px rgba(0,0,0,.45); }
.amc-hs .amc-hero .wp-block-button.amc-btn-ghost > .wp-block-button__link { background: rgba(10,30,22,.28) !important; border-color: rgba(255,255,255,.85) !important; color: #fff !important; }
.amc-hs .amc-hero .wp-block-button.amc-btn-ghost > .wp-block-button__link:hover { background: #fff !important; color: var(--amc-ink) !important; }
.amc-hs .amc-hero .amc-hp { box-shadow: 0 16px 40px -18px rgba(0,0,0,.5); }
@media (min-width: 782px) {
  .amc-hs .amc-hero .wp-block-cover__background { background: radial-gradient(60% 90% at 18% 55%, rgba(12,40,30,.45) 0%, rgba(12,40,30,0) 70%), linear-gradient(90deg, rgba(26,78,59,.72) 0%, rgba(38,104,79,.45) 55%, rgba(44,116,88,.28) 100%) !important; }
}
@media (max-width: 781px) {
  .amc-hs .amc-hero .wp-block-cover__background { background: linear-gradient(180deg, rgba(24,70,54,.66) 0%, rgba(30,86,65,.5) 35%, rgba(24,70,54,.7) 70%, rgba(20,60,46,.82) 100%) !important; }
}
/* Al-Wasiyyat card: photo fills the left side top to bottom, label sits right above the heading,
   tidier heading, white primary button. */
.amc-wasiyyat-sec .amc-band .amc-wasiyyat-photo { position: relative; margin: 0 !important; }
.amc-wasiyyat-sec .amc-band .amc-wasiyyat-photo img { aspect-ratio: 16 / 10; object-position: 50% 45%; border-radius: 16px; }
.amc-wasiyyat-sec .amc-band .amc-wasiyyat-photo figcaption { position: absolute; left: 12px; bottom: 12px; margin: 0; padding: 4px 10px; border-radius: 999px; background: rgba(0,0,0,.55); color: #fff; font-size: 12px; font-weight: 600; }
.amc-wasiyyat-sec .amc-band .amc-kicker { margin: 0 0 8px !important; }
.amc-wasiyyat-sec .amc-band h2 { margin-top: 0 !important; margin-bottom: 12px !important; font-size: clamp(28px, 3vw, 40px) !important; line-height: 1.12 !important; }
.amc-wasiyyat-sec .amc-band .amc-facts { margin-bottom: 20px !important; }
.amc-wasiyyat-sec .amc-band .wp-block-button:not(.amc-btn-ghost) > .wp-block-button__link { background: #fff !important; color: var(--amc-forest, #0F3B2C) !important; border: 1.5px solid #fff !important; }
.amc-wasiyyat-sec .amc-band .wp-block-button:not(.amc-btn-ghost) > .wp-block-button__link:hover { background: rgba(255,255,255,.9) !important; }
@media (min-width: 782px) {
  .amc-wasiyyat-sec .amc-band .wp-block-columns { align-items: stretch !important; }
  .amc-wasiyyat-sec .amc-band .wp-block-column:first-child { display: flex; }
  .amc-wasiyyat-sec .amc-band .amc-wasiyyat-photo { flex: 1; display: flex; }
  .amc-wasiyyat-sec .amc-band .amc-wasiyyat-photo img { aspect-ratio: auto; height: 100%; min-height: 320px; }
  .amc-wasiyyat-sec .amc-band .wp-block-column:last-child { align-self: center !important; }
}
/* Al-Wasiyyat: text column top-aligned with the photo; photo softly blurred. */
.amc-wasiyyat-sec .amc-band .amc-wasiyyat-photo { overflow: hidden; border-radius: 16px; }
.amc-wasiyyat-sec .amc-band .amc-wasiyyat-photo img { filter: blur(2px) saturate(.9); transform: scale(1.04); }
@media (min-width: 782px) {
  .amc-wasiyyat-sec .amc-band .wp-block-column:last-child { align-self: flex-start !important; }
  .amc-wasiyyat-sec .amc-band .wp-block-column:last-child > *:first-child, .amc-wasiyyat-sec .amc-band .wp-block-column:last-child .amc-kicker { margin-top: 0 !important; }
}
/* Al-Wasiyyat photo: no blur — a light green overlay on top (same treatment as the main tile). */
.amc-wasiyyat-sec .amc-band .amc-wasiyyat-photo img { filter: saturate(.8) contrast(1.05) !important; transform: none !important; }
.amc-wasiyyat-sec .amc-band .amc-wasiyyat-photo::after { content: ""; position: absolute; inset: 0; border-radius: inherit; pointer-events: none; background: linear-gradient(180deg, rgba(38,104,79,.28) 0%, rgba(30,86,65,.42) 60%, rgba(24,70,54,.62) 100%); }
.amc-wasiyyat-sec .amc-band .amc-wasiyyat-photo figcaption { z-index: 1; }
/* Al-Wasiyyat card, book cover: shown whole like a book on a soft panel (no overlay, no crop). */
.amc-wasiyyat-sec .amc-band .amc-wasiyyat-book { background: radial-gradient(70% 70% at 50% 45%, rgba(255,255,255,.12) 0%, rgba(255,255,255,.03) 70%), rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.1); align-items: center; justify-content: center; padding: 22px; }
.amc-wasiyyat-sec .amc-band .amc-wasiyyat-book::after { content: none !important; }
.amc-wasiyyat-sec .amc-band .amc-wasiyyat-book img { width: auto !important; max-width: 100%; height: auto !important; max-height: 340px; min-height: 0 !important; aspect-ratio: auto !important; object-fit: contain !important; border-radius: 4px !important; filter: none !important; box-shadow: 0 22px 40px -16px rgba(0,0,0,.6), 0 2px 6px rgba(0,0,0,.25); }
/* Book cover: image box hugs the cover so the shadow follows the book (no dark rectangle). */
.amc-wasiyyat-sec .amc-band .amc-wasiyyat-book img { flex: none !important; align-self: center !important; width: auto !important; height: 340px !important; max-height: none !important; max-width: 100% !important; object-fit: fill !important; }
@media (max-width: 781px) { .amc-wasiyyat-sec .amc-band .amc-wasiyyat-book img { height: 280px !important; } }
.amc-wasiyyat-sec .amc-band .amc-wasiyyat-book img { aspect-ratio: 731 / 1024 !important; width: auto !important; max-width: none !important; }
/* Department rows: hover/active always shows a green icon square with a white icon (the white
   square override for grey sections no longer hides the icon). */
.amc-dept:hover .amc-dept__icon, .amc-dept:focus-visible .amc-dept__icon, .amc-dept:active .amc-dept__icon,
.home .amc-section.amc-home-depts .amc-dept:hover .amc-dept__icon, .amc-section--surface .amc-dept:hover .amc-dept__icon { background: var(--amc-accent, #0B6B4B) !important; color: #fff !important; }
/* Auxiliary tiles: no gradient — flag shown clean, name on a flat solid band at the bottom. */
.amc-aux a.has-flag::after { background: rgba(10,11,11,.88) !important; top: auto !important; height: 52% !important; }
.amc-aux a.has-flag .amc-aux__name { text-shadow: none !important; }
.amc-aux a.has-flag::after { height: 64% !important; }
@media (min-width: 1025px) { .amc-aux a.has-flag { min-height: 168px; } }
/* Main tile coloring (final): deep forest green behind the text fading to clear on the right, photo in
   natural color slightly darkened — no even wash (an even green over the grey sky looked muddy). */
.amc-hs .amc-hero.wp-block-cover { background-color: #0F3B2C !important; }
.amc-hs .amc-hero .wp-block-cover__image-background { filter: brightness(.86) saturate(1.05) contrast(1.04) !important; }
.amc-hs .amc-hero .wp-block-cover__background { opacity: 1 !important; background: linear-gradient(180deg, rgba(15,59,44,.82) 0%, rgba(15,59,44,.62) 40%, rgba(12,48,36,.82) 75%, rgba(10,40,30,.92) 100%) !important; }
@media (min-width: 782px) {
  .amc-hs .amc-hero .wp-block-cover__background { background: linear-gradient(90deg, rgba(12,48,36,.95) 0%, rgba(15,59,44,.88) 30%, rgba(15,59,44,.55) 52%, rgba(15,59,44,.18) 72%, rgba(15,59,44,.08) 100%) !important; }
}
.amc-hs .amc-hero .amc-eyebrow { color: #9FE3BE !important; }
/* Auxiliary tiles (redesign): white card, the whole flag as a banner on top (3:2, never cropped),
   name + website below, subtle external-link arrow; hover lifts with a green border. */
.amc-aux a.has-flag { position: relative; overflow: hidden; isolation: auto; display: flex; flex-direction: column; justify-content: flex-start; gap: 3px; min-height: 0 !important; padding: 0 16px 14px !important; background: #fff !important; color: var(--amc-ink, #121614) !important; border: 1px solid var(--amc-line, rgba(18,22,20,.1)); border-radius: 14px; text-decoration: none !important; transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.amc-aux a.has-flag::before { content: ""; position: static !important; inset: auto; z-index: auto; display: block; flex: none; width: calc(100% + 32px); margin: 0 -16px 12px; aspect-ratio: 3 / 2; background: #111 var(--amc-flag) center / cover no-repeat !important; border-bottom: 1px solid var(--amc-line, rgba(18,22,20,.1)); transform: none !important; }
.amc-aux a.has-flag::after { content: "\2197" !important; position: absolute; inset: auto 12px 12px auto !important; height: auto !important; top: auto !important; width: auto; background: none !important; color: #A9B1AD; font-size: 14px; line-height: 1; }
.amc-aux a.has-flag .amc-aux__name { color: var(--amc-ink, #121614) !important; font-size: 15.5px !important; line-height: 1.25; font-weight: 700; letter-spacing: -.005em; padding-right: 16px; text-shadow: none !important; }
.amc-aux a.has-flag .amc-aux__desc { color: var(--amc-muted, #5b635f) !important; font-size: 12.5px; }
@media (hover: hover) and (pointer: fine) {
  .amc-aux a.has-flag:hover { background: #fff !important; border-color: rgba(11,107,75,.55); box-shadow: 0 14px 28px -20px rgba(15,59,44,.55); transform: translateY(-2px); }
  .amc-aux a.has-flag:hover::after { color: var(--amc-accent, #0B6B4B); }
  .amc-aux a.has-flag:hover .amc-aux__desc { color: var(--amc-accent, #0B6B4B) !important; }
}
@media (min-width: 1025px) { .amc-aux a.has-flag { min-height: 0 !important; } }
/* Main tile: Departments button solid white (Member Services stays outline). */
.amc-hs .amc-hero .wp-block-button.amc-btn-ghost > .wp-block-button__link[href="#departments"] { background: #fff !important; color: var(--amc-ink, #121614) !important; border-color: #fff !important; }
.amc-hs .amc-hero .wp-block-button.amc-btn-ghost > .wp-block-button__link[href="#departments"]:hover { background: rgba(255,255,255,.88) !important; border-color: rgba(255,255,255,.88) !important; }
/* Auxiliary tiles, compact and elegant: flag as a small square badge beside the name (row layout),
   about half the previous height. */
@media (min-width: 600px) {
  .amc-aux a.has-flag { display: grid !important; grid-template-columns: 52px minmax(0, 1fr); grid-template-rows: auto auto; column-gap: 12px; row-gap: 1px; align-content: center; align-items: center; padding: 12px 30px 12px 12px !important; min-height: 76px !important; }
  .amc-aux a.has-flag::before { grid-row: 1 / 3; grid-column: 1; width: 52px !important; height: 52px; margin: 0 !important; aspect-ratio: 1 / 1 !important; border-radius: 10px; border: 1px solid var(--amc-line, rgba(18,22,20,.1)) !important; background-size: cover !important; background-position: 22% center !important; }
  .amc-aux a.has-flag .amc-aux__name { grid-column: 2; align-self: end; font-size: 14.5px !important; padding-right: 0; }
  .amc-aux a.has-flag .amc-aux__desc { grid-column: 2; align-self: start; font-size: 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .amc-aux a.has-flag::after { inset: 50% 12px auto auto !important; transform: translateY(-50%); }
}

/* ---------- Al-Wasiyyat "path" section (homepage) ----------
   Standard section header + book card + three numbered steps + slim CTA strip. Mobile-first. */
.amc-wpath { display: grid; gap: 12px; }
.amc-wpath__book { display: flex; align-items: center; gap: 16px; padding: 14px; background: #fff; border: 1px solid var(--amc-line, rgba(18,22,20,.1)); border-radius: 16px; text-decoration: none !important; color: var(--amc-ink) !important; transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.amc-wpath__book img { flex: none; width: 74px; aspect-ratio: 731 / 1024; height: auto; border-radius: 3px; box-shadow: 0 12px 22px -12px rgba(0,0,0,.55), 0 1px 3px rgba(0,0,0,.2); }
.amc-wpath__book-text { display: grid; gap: 3px; }
.amc-wpath__book-text strong { font-size: 17px; }
.amc-wpath__book-text span { font-size: 13px; color: var(--amc-muted, #5b635f); }
.amc-wpath__steps { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; gap: 12px; counter-reset: none; }
.amc-wpath__step { display: flex; gap: 14px; align-items: flex-start; padding: 16px; background: #fff; border: 1px solid var(--amc-line, rgba(18,22,20,.1)); border-radius: 16px; }
.amc-wpath__num { flex: none; display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: var(--amc-accent-tint, #E6F2EC); color: var(--amc-accent, #0B6B4B); font-weight: 800; font-size: 15px; }
.amc-wpath__step h3 { margin: 4px 0 4px !important; font-size: 16px !important; line-height: 1.25 !important; color: var(--amc-ink) !important; }
.amc-wpath__step p { margin: 0 !important; font-size: 13.5px; line-height: 1.5; color: var(--amc-muted, #5b635f); }
.amc-wpath__cta { display: flex; flex-direction: column; gap: 12px; padding: 16px 18px; border-radius: 16px; background: var(--amc-forest, #0F3B2C); color: #fff; }
.amc-wpath__cta p { margin: 0 !important; font-size: 14px; line-height: 1.5; color: rgba(255,255,255,.82); }
.amc-wpath__cta strong { color: #fff; }
.amc-wpath__btn { align-self: flex-start; display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 20px; border-radius: 999px; background: #fff; color: var(--amc-forest, #0F3B2C) !important; font-weight: 700; font-size: 15px; text-decoration: none !important; white-space: nowrap; }
.amc-wpath__btn::after { content: "\2192"; transition: transform .2s ease; }
@media (min-width: 782px) {
  .amc-wpath { grid-template-columns: 250px minmax(0, 1fr); grid-template-areas: "book steps" "cta cta"; gap: 16px; }
  .amc-wpath__book { grid-area: book; flex-direction: column; align-items: flex-start; justify-content: space-between; padding: 22px; }
  .amc-wpath__book img { width: 118px; }
  .amc-wpath__steps { grid-area: steps; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
  .amc-wpath__step { flex-direction: column; gap: 12px; padding: 22px; }
  .amc-wpath__step h3 { font-size: 17px !important; margin-top: 0 !important; }
  .amc-wpath__cta { grid-area: cta; flex-direction: row; align-items: center; justify-content: space-between; padding: 16px 22px; }
}
@media (hover: hover) and (pointer: fine) {
  .amc-wpath__book:hover { border-color: rgba(11,107,75,.55); box-shadow: 0 14px 28px -20px rgba(15,59,44,.55); transform: translateY(-2px); }
  .amc-wpath__btn:hover::after { transform: translateX(3px); }
}

/* ---------- Top menu (desktop): animated underline, active state, refined dropdowns ---------- */
#masthead .site-main-header-wrap { border-bottom: 1px solid rgba(18,22,20,.07); }
.header-navigation .menu > li > a { position: relative; padding: 10px 12px !important; font-size: 15px !important; font-weight: 600 !important; color: #2a302d !important; letter-spacing: -.005em; transition: color .18s ease; }
.header-navigation .menu > li > a::after { content: ""; position: absolute; left: 12px; right: 12px; bottom: 2px; height: 2px; border-radius: 2px; background: var(--amc-accent, #0B6B4B); transform: scaleX(0); transform-origin: center; transition: transform .22s ease; }
.header-navigation .menu > li:hover > a, .header-navigation .menu > li:focus-within > a,
.header-navigation .menu > li.current-menu-item > a, .header-navigation .menu > li.current-menu-ancestor > a, .header-navigation .menu > li.current_page_item > a { color: var(--amc-forest, #0F3B2C) !important; }
.header-navigation .menu > li:hover > a::after, .header-navigation .menu > li:focus-within > a::after { transform: scaleX(1); }
.header-navigation .menu > li.current-menu-item > a::after, .header-navigation .menu > li.current-menu-ancestor > a::after, .header-navigation .menu > li.current_page_item > a::after { transform: scaleX(1); background: var(--amc-gold, #E0B23C); }
.header-navigation .menu > li > a .dropdown-nav-toggle svg { transition: transform .2s ease; opacity: .7; }
.header-navigation .menu > li:hover > a .dropdown-nav-toggle svg { transform: rotate(180deg); opacity: 1; }
/* Dropdown panel */
.header-navigation .menu .sub-menu { min-width: 220px; padding: 8px !important; background: #fff !important; border: 1px solid rgba(18,22,20,.08); border-radius: 14px; box-shadow: 0 22px 44px -18px rgba(15,30,24,.35), 0 2px 6px rgba(0,0,0,.05); margin-top: 6px; }
.header-navigation .menu .sub-menu li { border: 0 !important; }
.header-navigation .menu .sub-menu li a { padding: 10px 12px !important; border-radius: 9px; font-size: 14.5px !important; font-weight: 500 !important; color: #2a302d !important; background: transparent !important; transition: background .15s ease, color .15s ease; }
.header-navigation .menu .sub-menu li a:hover, .header-navigation .menu .sub-menu li.current-menu-item a { background: var(--amc-accent-tint, #E6F2EC) !important; color: var(--amc-forest, #0F3B2C) !important; }
.header-navigation .menu .sub-menu li a::after { content: none !important; }
/* Dropdowns always sit above page sticky bars (Member Services jump menu, chapter sub-nav). */
#masthead .site-main-header-wrap, #masthead .kadence-sticky-header, #masthead .kadence-sticky-header.item-is-fixed { z-index: 60 !important; }
.header-navigation .menu .sub-menu { z-index: 61; }
/* External links in dropdowns get a small ↗. */
.header-navigation .menu .sub-menu li a[target="_blank"]::after { content: "\2197" !important; margin-left: 6px; font-size: 12px; opacity: .45; }
#masthead.site-header { z-index: 60 !important; }
/* Dropdown hover gap fix: no margin gap; an invisible bridge keeps hover while moving into the panel. */
.header-navigation .menu .sub-menu { margin-top: 0 !important; top: calc(100% + 6px) !important; }
.header-navigation .menu .sub-menu::before { content: ""; position: absolute; left: 0; right: 0; top: -12px; height: 12px; }
.header-navigation .menu > li.menu-item-has-children { position: relative; }
/* Feature cards: description never more than two lines. */
.amc-fcard p:not(.amc-fcard__cta) { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
/* Top menu: current-page underline uses the same green as the hover underline. */
.header-navigation .menu > li.current-menu-item > a::after, .header-navigation .menu > li.current-menu-ancestor > a::after, .header-navigation .menu > li.current_page_item > a::after { background: var(--amc-accent, #0B6B4B) !important; }
/* Footer: National Headquarters column aligned with the other columns — heading styled like the
   widget titles (small uppercase) at the top, address lines and links in the same rhythm as menus. */
.site-footer .amc-footer-contact { margin: 0 !important; font-size: 15px; line-height: 1.7 !important; color: rgb(215,220,217); }
.site-footer .amc-footer-contact strong:first-child { display: block; margin: 0 0 14px; font-size: 12px; font-weight: 700; letter-spacing: 1.68px; text-transform: uppercase; color: #fff; line-height: 1.4; }
.site-footer .amc-footer-contact strong:first-child + br { display: none; }
.site-footer .amc-footer-contact a { display: inline-block; margin-top: 4px; color: rgb(215,220,217) !important; text-decoration: none; }
.site-footer .amc-footer-contact a:hover { color: #fff !important; text-decoration: underline; }
/* Departments page: Affiliated Sites on a light grey band so it is distinct from National Departments. */
#affiliated-sites.amc-section { background: var(--amc-surface, #F4F5F4) !important; }
#affiliated-sites .amc-dept__icon { background: #fff; }

/* ---------- Request a Mulaqat page (amc-mlq*) ---------- */
.amc-mlq-top { padding-top: 28px !important; padding-bottom: 36px !important; }
.amc-mlq__hero { display: grid; gap: 22px; align-items: center; }
.amc-mlq__photo { margin: 0; justify-self: center; width: min(260px, 70vw); aspect-ratio: 4 / 5; border-radius: 22px; overflow: hidden; background: #e9ecea; box-shadow: 0 26px 50px -28px rgba(15,59,44,.6); border: 6px solid #fff; outline: 1px solid rgba(18,22,20,.08); }
.amc-mlq__photo img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 12%; display: block; }
.amc-mlq__intro h1 { font-size: clamp(30px, 6vw, 44px) !important; line-height: 1.1 !important; margin: 4px 0 8px !important; color: var(--amc-ink) !important; }
.amc-mlq__full { margin: 0 0 14px !important; font-size: 15px; font-weight: 600; color: var(--amc-accent, #0B6B4B); }
.amc-mlq__intro p { font-size: 16px; line-height: 1.65; color: #3d4441; margin: 0 0 12px; max-width: 62ch; }
.amc-mlq__actions { margin: 18px 0 10px; }
.amc-mlq__btn { display: inline-flex; align-items: center; gap: 10px; min-height: 50px; padding: 0 24px; border-radius: 999px; background: var(--amc-accent, #0B6B4B); color: #fff !important; font-weight: 700; font-size: 16px; text-decoration: none !important; box-shadow: 0 14px 26px -16px rgba(11,107,75,.8); transition: background .18s ease, transform .18s ease; }
.amc-mlq__btn::after { content: "\2197"; font-size: 15px; }
.amc-mlq__btn:hover { background: var(--amc-forest, #0F3B2C); transform: translateY(-1px); }
.amc-mlq__intro .amc-mlq__note { font-size: 13.5px; color: var(--amc-muted, #5b635f); margin: 0; }
.amc-mlq__process h2 { margin: 2px 0 20px !important; }
.amc-mlq__steps { list-style: none; margin: 0 !important; padding: 0 !important; position: relative; display: grid; gap: 14px; }
.amc-mlq__step { position: relative; display: flex; gap: 16px; align-items: flex-start; padding: 18px; background: #fff; border: 1px solid var(--amc-line, rgba(18,22,20,.1)); border-radius: 16px; }
.amc-mlq__num { flex: none; display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: var(--amc-accent, #0B6B4B); color: #fff; font-weight: 800; font-size: 16px; box-shadow: 0 0 0 5px var(--amc-accent-tint, #E6F2EC); }
.amc-mlq__step h3 { margin: 6px 0 4px !important; font-size: 17px !important; color: var(--amc-ink) !important; }
.amc-mlq__step p { margin: 0 !important; font-size: 14.5px; line-height: 1.6; color: #4c5450; }
/* connecting line between the numbers */
.amc-mlq__step:not(:last-child)::after { content: ""; position: absolute; left: 37px; top: 62px; bottom: -16px; width: 2px; background: rgba(11,107,75,.25); }
@media (min-width: 782px) {
  .amc-mlq-top { padding-top: 44px !important; padding-bottom: 52px !important; }
  .amc-mlq__hero { grid-template-columns: 300px minmax(0, 1fr); gap: 48px; }
  .amc-mlq__photo { width: 100%; }
  .amc-mlq__process { max-width: 860px; }
}
.amc-mlq__intro h1, .amc-mlq__step h3 { text-transform: none !important; }

/* ---------- Mosque photo gallery (#photos) ----------
   Phone: swipeable row. Desktop: lead photo large + up to 4 smaller; one photo = single wide image.
   Click/tap opens the zoomable PhotoSwipe lightbox (snippet 24, bundled locally). */
.amc-gal-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; margin-bottom: 14px; }
.amc-gal-head h2 { margin: 2px 0 0 !important; }
.amc-gal-hint { margin: 0 !important; font-size: 13px; color: var(--amc-muted, #5b635f); white-space: nowrap; }
.amc-gal { display: grid; grid-auto-flow: column; grid-auto-columns: 82%; gap: 10px; overflow-x: auto; scroll-snap-type: x mandatory; margin: 0 calc(var(--amc-gutter) * -1); padding: 0 var(--amc-gutter) 6px; scrollbar-width: none; }
.amc-gal::-webkit-scrollbar { display: none; }
.amc-gal--n1 { grid-auto-columns: 100%; }
.amc-gal__item { position: relative; display: block; overflow: hidden; border-radius: 14px; aspect-ratio: 4 / 3; background: #e9ecea; scroll-snap-align: start; cursor: zoom-in; }
.amc-gal__item img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .35s ease; }
.amc-gal__zoom { position: absolute; right: 10px; bottom: 10px; display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: rgba(0,0,0,.55); color: #fff; opacity: .9; transition: opacity .2s ease, transform .2s ease; }
.amc-gal__zoom svg { width: 18px; height: 18px; }
@media (min-width: 782px) {
  .amc-gal { grid-auto-flow: row; grid-auto-columns: auto; overflow: visible; margin: 0; padding: 0; gap: 12px; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-rows: 170px; }
  .amc-gal__item { aspect-ratio: auto; height: 100%; }
  .amc-gal__item--lead { grid-column: span 2; grid-row: span 2; }
  .amc-gal--n1 { grid-template-columns: 1fr; grid-auto-rows: 420px; }
  .amc-gal--n1 .amc-gal__item--lead { grid-column: auto; grid-row: auto; }
  .amc-gal--n2 { grid-template-columns: 2fr 1fr; grid-auto-rows: 340px; }
  .amc-gal--n2 .amc-gal__item--lead { grid-column: auto; grid-row: auto; }
  .amc-gal--n3 .amc-gal__item:not(.amc-gal__item--lead) { grid-column: span 2; }
  .amc-gal__zoom { opacity: 0; transform: scale(.9); }
  .amc-gal__item:hover img { transform: scale(1.04); }
  .amc-gal__item:hover .amc-gal__zoom, .amc-gal__item:focus-visible .amc-gal__zoom { opacity: 1; transform: none; }
}
/* PhotoSwipe sits above the sticky header and mobile dock. */
.pswp { z-index: 100000 !important; }

/* ---------- Mosque page photo thumbnails ("Inside and around the mosque") ---------- */
.amc-gal__zoom svg { width: 17px; height: 17px; }
.amc-cx-sec--photos { padding-top: 28px !important; padding-bottom: 8px !important; }
.amc-gal-thumbs { display: flex; flex-wrap: wrap; gap: 10px; }
.amc-gal__thumb { position: relative; display: block; width: 120px; height: 90px; border-radius: 10px; overflow: hidden; background: #e9ecea; cursor: zoom-in; border: 1px solid rgba(18,22,20,.1); }
.amc-gal__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .3s ease; }
.amc-gal-thumbs .amc-gal__zoom { width: 26px; height: 26px; right: 6px; bottom: 6px; opacity: 0; transition: opacity .2s ease; }
.amc-gal-thumbs .amc-gal__zoom svg { width: 13px; height: 13px; }
.amc-gal__thumb:hover img { transform: scale(1.06); }
.amc-gal__thumb:hover .amc-gal__zoom { opacity: 1; }
@media (min-width: 782px) {
  .amc-gal__thumb { width: 160px; height: 112px; }
}

/* ---------- Login page [amc_login] ---------- */
.amc-login-sec { padding-top: 40px !important; padding-bottom: 56px !important; background: var(--amc-surface, #F4F5F4); }
.amc-login { display: grid; gap: 18px; max-width: 980px; margin: 0 auto; }
.amc-login__card { background: #fff; border: 1px solid rgba(18,22,20,.08); border-radius: 20px; padding: 28px 24px; box-shadow: 0 20px 44px -30px rgba(15,59,44,.45); }
.amc-login__card h1 { font-size: clamp(28px, 4vw, 36px) !important; margin: 4px 0 8px !important; text-transform: none !important; }
.amc-login__lead, .amc-login__email { color: var(--amc-muted, #5b635f); margin: 0 0 20px !important; font-size: 15.5px; }
.amc-login__google { display: inline-flex; align-items: center; justify-content: center; gap: 12px; width: 100%; max-width: 360px; min-height: 52px; padding: 0 22px; border-radius: 12px; background: #fff; color: #1f1f1f !important; border: 1px solid #dadce0; font-weight: 600; font-size: 16px; text-decoration: none !important; box-shadow: 0 1px 2px rgba(0,0,0,.08); transition: box-shadow .18s ease, background .18s ease; }
.amc-login__google:hover { background: #f8f9fa; box-shadow: 0 4px 12px rgba(0,0,0,.12); }
.amc-login__google svg { width: 22px; height: 22px; flex: none; }
.amc-login__alt { margin: 12px 0 0 !important; font-size: 13.5px; color: var(--amc-muted, #5b635f); }
.amc-login__alt a { color: var(--amc-muted, #5b635f); }
.amc-login__error { padding: 10px 14px; border-radius: 10px; background: rgba(176,52,40,.08); color: #8a2a20; font-size: 14px; margin: 0 0 16px !important; }
.amc-login__side { background: var(--amc-forest, #0F3B2C); color: rgba(255,255,255,.85); border-radius: 20px; padding: 26px 24px; }
.amc-login__side h2 { color: #fff !important; font-size: 20px !important; margin: 0 0 8px !important; text-transform: none !important; }
.amc-login__side p { font-size: 14.5px; margin: 0 0 16px !important; }
.amc-login__btn { display: inline-flex; align-items: center; min-height: 44px; padding: 0 18px; border-radius: 999px; border: 1px solid rgba(18,22,20,.15); color: var(--amc-ink) !important; font-weight: 600; text-decoration: none !important; background: #fff; }
.amc-login__btn--primary { background: var(--amc-gold, #E0B23C); border-color: var(--amc-gold, #E0B23C); color: #14110a !important; }
.amc-login__actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.amc-login__map { list-style: none; margin: 0 !important; padding: 0 !important; border-top: 1px solid rgba(18,22,20,.08); }
.amc-login__map li { display: flex; justify-content: space-between; gap: 12px; padding: 10px 0; border-bottom: 1px solid rgba(18,22,20,.08); font-size: 15px; }
.amc-login__map span { color: var(--amc-muted, #5b635f); }
.amc-login__map code { margin-left: 6px; padding: 1px 6px; border-radius: 6px; background: #eef1ef; font-size: 12.5px; }
@media (min-width: 860px) {
  .amc-login { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); align-items: start; }
  .amc-login__card { padding: 40px 40px 34px; }
  .amc-login > .amc-login__card:only-child { grid-column: 1 / -1; max-width: 640px; margin: 0 auto; width: 100%; }
}
/* Signed-in users: header button is a blue "Sign out" with a sign-out icon. */
body.logged-in .header-button-wrap .header-button, body.logged-in .mobile-header-button-wrap .mobile-header-button { background: #1F5FBF !important; border-color: #1F5FBF !important; color: #fff !important; }
body.logged-in .header-button-wrap .header-button:hover, body.logged-in .mobile-header-button-wrap .mobile-header-button:hover { background: #184C99 !important; border-color: #184C99 !important; }
body.logged-in .header-button-wrap .header-button::before, body.logged-in .mobile-header-button-wrap .mobile-header-button::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4'/%3E%3Cpath d='m16 17 5-5-5-5'/%3E%3Cpath d='M21 12H9'/%3E%3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4'/%3E%3Cpath d='m16 17 5-5-5-5'/%3E%3Cpath d='M21 12H9'/%3E%3C/svg%3E");
}
/* Sign-in card (style after the Wasiyyat portal): centered card, label + title + lock tile, full-width
   Google button, grey note, back link. */
.amc-login-sec { background: linear-gradient(180deg, #f7f8f8 0%, #fff 100%) !important; padding-top: 56px !important; padding-bottom: 72px !important; }
.amc-login { grid-template-columns: minmax(0, 1fr) !important; }
.amc-login__card { max-width: 460px; width: 100%; margin: 0 auto; padding: 32px 30px 26px !important; border: 1px solid #e3e6ea; border-radius: 18px; box-shadow: 0 24px 50px -32px rgba(20,30,45,.35); }
.amc-login__top { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; margin-bottom: 22px; }
.amc-login__label { margin: 0 0 6px !important; font-size: 13px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: #6b7280; }
.amc-login__card h1 { margin: 0 !important; font-size: 34px !important; line-height: 1.1 !important; color: #2f3b52 !important; }
.amc-login__lock { flex: none; display: grid; place-items: center; width: 52px; height: 52px; border-radius: 12px; background: #eef1f6; color: #2f4370; }
.amc-login__lock svg { width: 20px; height: 20px; }
.amc-login .amc-login__google { max-width: none; width: 100%; min-height: 56px; border-radius: 12px; border: 1.5px solid #dfe3e8; box-shadow: none; font-size: 17px; font-weight: 700; color: #2f3b52 !important; }
.amc-login .amc-login__google:hover { background: #f8fafc; border-color: #c9d0d9; box-shadow: none; }
.amc-login__note { display: grid; gap: 4px; margin-top: 18px; padding: 16px 18px; border-radius: 12px; background: #f5f7f9; border: 1px solid #e8ebef; }
.amc-login__note strong { font-size: 15.5px; color: #2f3b52; }
.amc-login__note span { font-size: 14.5px; line-height: 1.5; color: #6b7280; }
.amc-login__foot { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: 22px; }
.amc-login__back, .amc-login__portal { display: inline-flex; align-items: center; gap: 8px; font-size: 15px; font-weight: 600; color: #5b6475 !important; text-decoration: none !important; }
.amc-login__back svg { width: 17px; height: 17px; }
.amc-login__back:hover, .amc-login__portal:hover { color: var(--amc-forest, #0F3B2C) !important; }
.amc-login__portal { font-weight: 500; font-size: 14px; }
.amc-login__error { margin: 0 0 14px !important; }
.amc-login > .amc-login__card, .amc-login > .amc-login__card:only-child { max-width: 480px !important; }
/* Sign-in page: card + Member360 box side by side (desktop); Google button black & white. */
.amc-login { max-width: 860px !important; }
@media (min-width: 860px) {
  .amc-login { grid-template-columns: minmax(0, 480px) minmax(0, 320px) !important; justify-content: center; align-items: start; gap: 24px; }
  .amc-login > .amc-login__card { margin: 0 !important; }
}
.amc-login__side { max-width: 480px; width: 100%; margin: 0 auto; }
.amc-login .amc-login__google { color: #111 !important; border-color: #111 !important; background: #fff !important; }
.amc-login .amc-login__google svg { color: #111; }
.amc-login .amc-login__google:hover { background: #111 !important; color: #fff !important; }
.amc-login .amc-login__google:hover svg { color: #fff; }

/* ---------- Contact Us page (amc-ct*) ---------- */
.amc-ct-sec { padding-top: 32px !important; }
.amc-ct { display: grid; gap: 40px; }
.amc-ct-cards { display: grid; grid-template-columns: 1fr; gap: 12px; }
.amc-ct-card { display: grid; grid-template-columns: 48px minmax(0, 1fr); grid-template-rows: auto auto auto; column-gap: 14px; align-items: center; padding: 18px; background: #fff; border: 1px solid var(--amc-line, rgba(18,22,20,.1)); border-radius: 16px; text-decoration: none !important; color: var(--amc-ink) !important; transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.amc-ct-card__icon { grid-row: 1 / 4; display: grid; place-items: center; width: 48px; height: 48px; border-radius: 14px; background: var(--amc-accent-tint, #E6F2EC); color: var(--amc-accent, #0B6B4B); }
.amc-ct-card__icon svg { width: 22px; height: 22px; }
.amc-ct-card__label { font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--amc-accent, #0B6B4B); }
.amc-ct-card__value { font-size: 17px; line-height: 1.3; font-weight: 700; color: var(--amc-ink); overflow-wrap: anywhere; }
.amc-ct-card__sub { font-size: 13.5px; color: var(--amc-muted, #5b635f); }
.amc-ct-guide { display: grid; gap: 18px; }
.amc-ct-guide__head h2 { margin: 2px 0 6px !important; }
.amc-ct-guide__head p:not(.amc-kicker) { margin: 0 !important; color: var(--amc-muted, #5b635f); }
.amc-ct-topics { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; grid-template-columns: 1fr; border-top: 1px solid var(--amc-line, rgba(18,22,20,.1)); }
.amc-ct-topic { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 2px; border-bottom: 1px solid var(--amc-line, rgba(18,22,20,.1)); }
.amc-ct-topic h3 { margin: 0 0 2px !important; font-size: 16px !important; }
.amc-ct-topic p { margin: 0 !important; font-size: 14px; color: var(--amc-muted, #5b635f); }
.amc-ct-topic a { flex: none; display: inline-flex; align-items: center; gap: 6px; padding: 8px 14px; border-radius: 999px; background: #f2f4f3; font-size: 14px; font-weight: 600; color: var(--amc-forest, #0F3B2C) !important; text-decoration: none !important; white-space: nowrap; transition: background .18s ease, color .18s ease; }
.amc-ct-topic a svg { width: 15px; height: 15px; }
.amc-ct-topic a:hover { background: var(--amc-forest, #0F3B2C); color: #fff !important; }
.amc-ct-visit-sec { padding-top: 48px !important; padding-bottom: 56px !important; }
.amc-ct-visit { display: grid; gap: 24px; }
.amc-ct-visit__info h2 { margin: 2px 0 8px !important; }
.amc-ct-visit__lead { color: var(--amc-muted, #5b635f); margin: 0 0 18px !important; }
.amc-ct-visit__list { list-style: none; margin: 0 0 16px !important; padding: 0 !important; display: grid; gap: 12px; }
.amc-ct-visit__list li { display: flex; gap: 12px; align-items: flex-start; font-size: 15.5px; }
.amc-ct-visit__list svg { flex: none; width: 20px; height: 20px; margin-top: 2px; color: var(--amc-accent, #0B6B4B); }
.amc-ct-visit__list a { color: var(--amc-ink) !important; text-decoration: none !important; font-weight: 600; }
.amc-ct-visit__note { padding: 12px 14px; border-radius: 12px; background: #fff; border: 1px solid var(--amc-line, rgba(18,22,20,.1)); font-size: 14px; color: var(--amc-muted, #5b635f); margin: 0 0 18px !important; }
.amc-ct-btn { display: inline-flex; align-items: center; gap: 8px; min-height: 46px; padding: 0 22px; border-radius: 999px; background: var(--amc-forest, #0F3B2C); color: #fff !important; font-weight: 700; text-decoration: none !important; }
.amc-ct-btn svg { width: 16px; height: 16px; }
.amc-ct-btn:hover { background: var(--amc-accent, #0B6B4B); }
.amc-ct-visit__map { border-radius: 18px; overflow: hidden; border: 1px solid var(--amc-line, rgba(18,22,20,.1)); min-height: 300px; background: #e9ecea; }
.amc-ct-visit__map iframe { display: block; width: 100%; height: 100%; min-height: 300px; border: 0; }
@media (min-width: 640px) { .amc-ct-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1025px) {
  .amc-ct-cards { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .amc-ct-card { grid-template-columns: 1fr; grid-template-rows: none; row-gap: 6px; padding: 22px; }
  .amc-ct-card__icon { grid-row: auto; margin-bottom: 8px; }
  .amc-ct-guide { grid-template-columns: 320px minmax(0, 1fr); gap: 48px; align-items: start; }
  .amc-ct-visit { grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr); gap: 48px; align-items: stretch; }
  .amc-ct-visit__map, .amc-ct-visit__map iframe { min-height: 420px; }
}
@media (hover: hover) and (pointer: fine) {
  .amc-ct-card:hover { border-color: rgba(11,107,75,.45); box-shadow: 0 14px 28px -20px rgba(15,59,44,.55); transform: translateY(-2px); }
}

/* ---------- About Us page (amc-ab*) ---------- */
.amc-ab-sec { padding-top: 48px !important; padding-bottom: 52px !important; }
.amc-ab-sec p { max-width: none; }
.amc-ab-sec h2 { margin: 0 0 12px !important; }
.amc-ab-head { max-width: 720px; margin-bottom: 28px; }
.amc-ab-head p:not(.amc-kicker) { margin: 0 !important; color: var(--amc-muted); font-size: 16.5px; line-height: 1.6; }
.amc-section--night .amc-ab-head p:not(.amc-kicker) { color: #A9B1AD; }
.amc-section--night .amc-kicker { color: var(--amc-gold) !important; }
.amc-ab-lead { font-size: 18px; line-height: 1.6; color: var(--amc-ink); }
.amc-ab-sec p { line-height: 1.7; }
.amc-ab-meta { font-size: 14px; font-weight: 600; letter-spacing: .02em; color: var(--amc-gold-ink); margin: -4px 0 18px !important; }
.amc-ab-ico { display: grid; place-items: center; flex: none; width: 44px; height: 44px; border-radius: 12px; background: var(--amc-accent-tint); color: var(--amc-accent); }
.amc-ab-ico svg { width: 21px; height: 21px; }
.amc-ab-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 22px; }
.amc-ab-btn { display: inline-flex; align-items: center; gap: 8px; min-height: 46px; padding: 0 20px; border-radius: 999px; background: var(--amc-forest); border: 1px solid var(--amc-forest); color: #fff !important; font-weight: 700; font-size: 15px; text-decoration: none !important; transition: background .18s ease, color .18s ease, border-color .18s ease; }
.amc-ab-btn svg { width: 16px; height: 16px; }
.amc-ab-btn:hover { background: var(--amc-accent); border-color: var(--amc-accent); }
.amc-ab-btn--outline { background: transparent; color: var(--amc-forest) !important; border-color: rgba(15,59,44,.3); }
.amc-ab-btn--outline:hover { background: var(--amc-forest); color: #fff !important; }
.amc-ab-btn--light { background: #fff; border-color: #fff; color: var(--amc-forest) !important; }
.amc-ab-btn--light:hover { background: var(--amc-gold); border-color: var(--amc-gold); color: var(--amc-ink) !important; }
.amc-ab-btn--ghost { background: transparent; border-color: rgba(255,255,255,.35); color: #fff !important; }
.amc-ab-btn--ghost:hover { background: rgba(255,255,255,.1); border-color: #fff; }

/* Intro + facts */
.amc-ab-intro { display: grid; gap: 28px; }
.amc-ab-intro__text p:last-child { margin-bottom: 0 !important; color: var(--amc-text); }
.amc-ab-facts { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border: 1px solid var(--amc-line); border-radius: var(--amc-radius); overflow: hidden; background: #fff; align-self: start; }
.amc-ab-facts li { display: grid; gap: 4px; padding: 20px 18px; border-bottom: 1px solid var(--amc-line); }
.amc-ab-facts li:nth-child(odd) { border-right: 1px solid var(--amc-line); }
.amc-ab-facts li:nth-last-child(-n+2) { border-bottom: 0; }
.amc-ab-facts strong { font-size: 32px; line-height: 1; font-weight: 800; letter-spacing: -.02em; color: var(--amc-forest); }
.amc-ab-facts span { font-size: 13.5px; color: var(--amc-muted); }

/* Promised Messiah */
.amc-ab-pm { display: grid; gap: 28px; }
.amc-ab-pm__photo { margin: 0; max-width: 360px; }
.amc-ab-pm__photo img { display: block; width: 100%; aspect-ratio: 4 / 5; object-fit: cover; object-position: center top; border-radius: 20px; filter: grayscale(1) contrast(1.04); box-shadow: 0 30px 60px -36px rgba(15,59,44,.6); }
.amc-ab-pm__photo figcaption, .amc-ab-us figcaption { margin-top: 10px; font-size: 13px; color: var(--amc-muted); }
.amc-ab-points { list-style: none; margin: 26px 0 0 !important; padding: 0 !important; display: grid; gap: 18px; }
.amc-ab-points li { display: flex; gap: 16px; align-items: flex-start; }
.amc-ab-points h3 { margin: 2px 0 4px !important; font-size: 17px !important; }
.amc-ab-points p { margin: 0 !important; font-size: 15px; line-height: 1.6; color: var(--amc-muted); }
.amc-ab-points .amc-ab-ico { background: #fff; border: 1px solid var(--amc-line); }

/* Khilafat */
.amc-ab-k5 { display: grid; overflow: hidden; border-radius: 22px; background: radial-gradient(90% 120% at 100% 0%, rgba(224,178,60,.16) 0%, rgba(15,59,44,0) 55%), var(--amc-forest); color: #D7DCD9; margin-bottom: 18px; }
.amc-ab-k5 figure { margin: 0; }
.amc-ab-k5 img { display: block; width: 100%; height: 100%; aspect-ratio: 4 / 4; object-fit: cover; object-position: center 12%; }
.amc-ab-k5__body { padding: 26px 22px 28px; }
.amc-ab-k5 h3 { color: #fff; font-size: clamp(24px, 5.5vw, 32px) !important; line-height: 1.15; margin: 6px 0 12px !important; }
.amc-ab-k5 p { margin: 0 !important; color: #C9D1CD; font-size: 16px; }
.amc-ab-k5 .amc-ab-k__title { color: var(--amc-gold); }
.amc-ab-k__title { font-size: 12px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--amc-accent); }
.amc-ab-klist { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.amc-ab-k { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--amc-line); border-radius: 18px; overflow: hidden; }
.amc-ab-k figure { margin: 0; background: var(--amc-surface); }
.amc-ab-k img { display: block; width: 100%; aspect-ratio: 4 / 5; object-fit: cover; object-position: center top; }
.amc-ab-k__body { padding: 14px 14px 18px; display: flex; flex-direction: column; gap: 4px; }
.amc-ab-k__body .amc-ab-k__title { font-size: 10.5px; letter-spacing: .12em; }
.amc-ab-k h3 { margin: 0 !important; font-size: 15px !important; line-height: 1.3; }
.amc-ab-k__years { font-size: 13px; font-weight: 600; color: var(--amc-gold-ink); }
.amc-ab-k p { margin: 6px 0 0 !important; font-size: 13.5px; line-height: 1.55; color: var(--amc-muted); display: none; }

/* Values (night) */
.amc-ab-vgrid { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; gap: 1px; background: rgba(255,255,255,.08); border-radius: 18px; overflow: hidden; }
.amc-ab-vgrid li { padding: 24px 20px; background: var(--amc-night); }
.amc-ab-vgrid .amc-ab-ico { background: rgba(127,200,169,.12); color: var(--amc-mint); margin-bottom: 16px; }
.amc-ab-vgrid h3 { margin: 0 0 6px !important; font-size: 18px !important; }
.amc-ab-vgrid p { margin: 0 !important; font-size: 15px; line-height: 1.6; color: #A9B1AD; }

/* Worldwide */
.amc-ab-wstats { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.amc-ab-wstats li { display: grid; gap: 6px; padding: 20px 18px; background: #fff; border: 1px solid var(--amc-line); border-radius: 16px; }
.amc-ab-wstats li:last-child { grid-column: 1 / -1; }
.amc-ab-wstats strong { font-size: 30px; line-height: 1; font-weight: 800; letter-spacing: -.02em; color: var(--amc-forest); }
.amc-ab-wstats span { font-size: 14px; color: var(--amc-muted); }

/* America */
.amc-ab-us { display: grid; gap: 28px; }
.amc-ab-us__photos { position: relative; }
.amc-ab-us figure { margin: 0; }
.amc-ab-us__main img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 20px; }
.amc-ab-us__inset { display: none; }
.amc-ab-us__text p:not(.amc-kicker):not(.amc-ab-lead) { color: var(--amc-text); }

/* Salutations */
.amc-ab-slist { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; border-top: 1px solid var(--amc-line); }
.amc-ab-slist li { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 14px; padding: 16px 0; border-bottom: 1px solid var(--amc-line); }
.amc-ab-slist abbr { font-size: 18px; font-weight: 800; color: var(--amc-forest); text-decoration: none; }
.amc-ab-slist em { display: block; font-style: italic; font-size: 15px; color: var(--amc-ink); margin-bottom: 2px; }
.amc-ab-slist p { margin: 0 !important; font-size: 14.5px; line-height: 1.55; color: var(--amc-muted); }

/* CTA */
.amc-ab-sec--cta { padding-top: 40px !important; padding-bottom: 48px !important; }
.amc-ab-cta { padding: 30px 22px; border-radius: 22px; background: radial-gradient(90% 140% at 100% 0%, rgba(224,178,60,.18) 0%, rgba(15,59,44,0) 55%), var(--amc-forest); color: #C9D1CD; }
.amc-ab-cta h2 { color: #fff; }
.amc-ab-cta p { margin: 0 !important; font-size: 16px; max-width: 620px; }

@media (min-width: 640px) {
  .amc-ab-facts { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .amc-ab-facts li { border-bottom: 0; border-right: 1px solid var(--amc-line); }
  .amc-ab-facts li:last-child { border-right: 0; }
  .amc-ab-k5 { grid-template-columns: 280px minmax(0, 1fr); }
  .amc-ab-k5 img { aspect-ratio: auto; min-height: 100%; }
  .amc-ab-k5__body { padding: 32px 30px; align-self: center; }
  .amc-ab-k p { display: block; }
  .amc-ab-vgrid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .amc-ab-wstats { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .amc-ab-wstats li:last-child { grid-column: auto; }
  .amc-ab-slist { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 40px; }
}
@media (min-width: 1025px) {
  .amc-ab-sec { padding-top: 80px !important; padding-bottom: 84px !important; }
  .amc-ab-sec--intro { padding-top: 56px !important; }
  .amc-ab-head { margin-bottom: 40px; }
  .amc-ab-intro { grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); gap: 64px; align-items: center; }
  .amc-ab-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .amc-ab-facts li { padding: 28px 24px; border-right: 0; border-bottom: 1px solid var(--amc-line); }
  .amc-ab-facts li:nth-child(odd) { border-right: 1px solid var(--amc-line); }
  .amc-ab-facts li:nth-last-child(-n+2) { border-bottom: 0; }
  .amc-ab-facts strong { font-size: 40px; }
  .amc-ab-pm { grid-template-columns: 400px minmax(0, 1fr); gap: 72px; align-items: start; }
  .amc-ab-pm__photo { max-width: none; position: sticky; top: calc(var(--amc-header-h) + var(--amc-adminbar) + 24px); }
  .amc-ab-k5 { grid-template-columns: 380px minmax(0, 1fr); margin-bottom: 20px; }
  .amc-ab-k5__body { padding: 44px 48px; }
  .amc-ab-k5 p { font-size: 17px; max-width: 640px; }
  .amc-ab-klist { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
  .amc-ab-k__body { padding: 18px 18px 22px; }
  .amc-ab-k h3 { font-size: 16.5px !important; }
  .amc-ab-vgrid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .amc-ab-vgrid li { padding: 32px 28px; }
  .amc-ab-wstats { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 16px; }
  .amc-ab-wstats li { padding: 26px 22px; }
  .amc-ab-wstats strong { font-size: 38px; }
  .amc-ab-us { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 72px; align-items: center; }
  .amc-ab-us__photos { padding: 0 0 56px 0; }
  .amc-ab-us__main figcaption { display: none; }
  .amc-ab-us__inset { display: block; position: absolute; right: -24px; bottom: 0; width: 46%; padding: 8px; background: #fff; border-radius: 16px; box-shadow: 0 24px 48px -28px rgba(18,22,20,.5); }
  .amc-ab-us__inset img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 10px; filter: grayscale(.2); }
  .amc-ab-us__inset figcaption { margin: 8px 4px 2px; font-size: 12.5px; }
  .amc-ab-cta { display: flex; align-items: center; justify-content: space-between; gap: 40px; padding: 48px 52px; }
  .amc-ab-cta .amc-ab-actions { margin-top: 0; flex: none; }
}
@media (hover: hover) and (pointer: fine) {
  .amc-ab-k { transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
  .amc-ab-k:hover { transform: translateY(-3px); box-shadow: var(--amc-shadow-hover); border-color: rgba(11,107,75,.3); }
}
/* Honorifics (as), (aba), Noor-ud-Din must keep their case: no theme Title Case on this page. */
.amc-ab-sec :is(h2, h3) { text-transform: none !important; }
.amc-ab-sec figure { margin: 0 !important; }
.amc-ab-sec .amc-ab-pm__photo figcaption { margin-top: 10px; }

/* ---------- Mosque editor for chapter office bearers (amc-me*) ---------- */
.amc-me-bar { background: #FFF8E6; border-bottom: 1px solid #F0DFAE; padding: 10px var(--amc-gutter); }
.amc-me-bar__in { max-width: var(--amc-content); margin: 0 auto; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px; font-size: 14.5px; color: #5C4A12; }
.amc-me-bar__btn { display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 0 16px; border-radius: 999px; background: var(--amc-forest); color: #fff !important; font-weight: 700; font-size: 14px; text-decoration: none !important; }
.amc-me-bar__btn svg { width: 16px; height: 16px; }
.amc-me-bar__btn:hover { background: var(--amc-accent); }
.amc-me { background: var(--amc-surface); padding: 20px var(--amc-gutter) 32px; }
.amc-me__form { max-width: 880px; margin: 0 auto; display: grid; gap: 16px; }
.amc-me__head h1 { font-size: clamp(26px, 6vw, 36px) !important; line-height: 1.15; margin: 0 0 8px !important; text-transform: none !important; }
.amc-me__head .amc-kicker { margin-top: 14px !important; }
.amc-me__sub { margin: 0 !important; color: var(--amc-muted); font-size: 15.5px; max-width: 60ch; }
.amc-me__back { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; font-weight: 600; color: var(--amc-forest) !important; text-decoration: none !important; }
.amc-me__back svg { width: 16px; height: 16px; }
.amc-me-note { padding: 12px 16px; border-radius: 12px; background: #fff; border: 1px solid var(--amc-line); font-size: 15px; }
.amc-me-note--ok { background: var(--amc-accent-tint); border-color: rgba(11,107,75,.25); color: var(--amc-forest); font-weight: 600; }
.amc-me-note--ok a { color: var(--amc-forest) !important; text-decoration: underline; margin-left: 6px; }
.amc-me-note--err { background: #FDECEC; border-color: #F3C2C2; color: #8A1F1F; }
.amc-me-card { background: #fff; border: 1px solid var(--amc-line); border-radius: 18px; padding: 20px 16px; }
.amc-me-card__head { margin-bottom: 16px; }
.amc-me-card__head h2 { font-size: 20px !important; margin: 0 0 4px !important; text-transform: none !important; }
.amc-me-card__head p { margin: 0 !important; font-size: 14.5px; color: var(--amc-muted); max-width: none; }
.amc-me-hint { margin: 14px 0 0 !important; font-size: 13.5px; color: var(--amc-muted); }
.amc-me-times { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.amc-me-time { display: grid; gap: 6px; }
.amc-me-time span { font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--amc-forest); }
.amc-me-time input { width: 100%; min-height: 52px; padding: 0 14px; border: 1.5px solid #CFD5D2; border-radius: 12px; font-size: 18px; font-weight: 600; color: var(--amc-ink); background: #fff; font-variant-numeric: tabular-nums; }
.amc-me-time input:focus { outline: none; border-color: var(--amc-accent); box-shadow: 0 0 0 4px rgba(11,107,75,.12); }
.amc-me-time--jm input { background: #FFFBEF; border-color: #EAD7A0; }
.amc-me-photos { list-style: none; margin: 0 0 14px !important; padding: 0 !important; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.amc-me-photo { position: relative; border-radius: 12px; overflow: hidden; border: 1px solid var(--amc-line); background: var(--amc-surface); }
.amc-me-photo.is-main { border: 2px solid var(--amc-accent); }
.amc-me-photo img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.amc-me-photo__badge { position: absolute; top: 8px; left: 8px; padding: 3px 9px; border-radius: 999px; background: var(--amc-accent); color: #fff; font-size: 11.5px; font-weight: 700; }
.amc-me-photo__acts { display: flex; gap: 6px; padding: 8px; }
.amc-me-photo__acts button { flex: 1; min-height: 36px; border: 1px solid var(--amc-line); border-radius: 8px; background: #fff; font-size: 13px; font-weight: 600; color: var(--amc-forest); cursor: pointer; }
.amc-me-photo__acts button:hover { border-color: var(--amc-forest); }
.amc-me-photo__acts button.is-danger { color: #A12626; }
.amc-me-photo__acts button.is-danger:hover { border-color: #A12626; background: #FDECEC; }
.amc-me-upload { position: relative; display: flex; align-items: center; gap: 14px; padding: 16px; border: 2px dashed #C9D2CE; border-radius: 14px; background: #FAFBFA; cursor: pointer; }
.amc-me-upload:hover, .amc-me-upload:focus-within { border-color: var(--amc-accent); background: var(--amc-accent-tint); }
.amc-me-upload input { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
.amc-me-upload__icon { display: grid; place-items: center; flex: none; width: 44px; height: 44px; border-radius: 12px; background: var(--amc-forest); color: #fff; font-size: 26px; line-height: 1; }
.amc-me-upload strong { display: block; font-size: 16px; color: var(--amc-ink); }
.amc-me-upload small { font-size: 13.5px; color: var(--amc-muted); }
.amc-me .wp-editor-wrap { border: 1px solid #CFD5D2; border-radius: 12px; overflow: hidden; }
.amc-me .wp-editor-container { border: 0; }
.amc-me-save { position: sticky; bottom: calc(var(--amc-dock) + 10px); z-index: 20; display: flex; align-items: center; gap: 16px; padding: 12px; border-radius: 16px; background: rgba(255,255,255,.96); border: 1px solid var(--amc-line); box-shadow: 0 16px 36px -18px rgba(18,22,20,.45); }
.amc-me-save__btn { flex: 1; min-height: 52px; border: 0; border-radius: 12px; background: var(--amc-forest); color: #fff; font-size: 17px; font-weight: 700; cursor: pointer; }
.amc-me-save__btn:hover { background: var(--amc-accent); }
.amc-me-save a { font-weight: 600; color: var(--amc-muted) !important; text-decoration: none !important; padding: 0 8px; }
.amc-me-mine { margin: 18px 0 4px; text-align: left; }
.amc-me-mine__label { font-size: 12px !important; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--amc-accent); margin: 0 0 8px !important; }
.amc-me-mine ul { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; gap: 8px; }
.amc-me-mine a { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 14px; border: 1px solid var(--amc-line); border-radius: 12px; background: #fff; font-weight: 600; color: var(--amc-ink) !important; text-decoration: none !important; }
.amc-me-mine a em { font-style: normal; font-size: 13px; font-weight: 700; color: var(--amc-accent); }
.amc-me-mine a:hover { border-color: var(--amc-accent); }
@media (min-width: 640px) {
  .amc-me-times { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .amc-me-photos { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .amc-me-card { padding: 26px 26px; }
  .amc-me-save__btn { flex: none; padding: 0 40px; }
}
@media (min-width: 1025px) {
  .amc-me { padding: 32px var(--amc-gutter) 56px; }
  .amc-me-photos { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .amc-me-save { bottom: 16px; }
}
.amc-me__back { display: flex; width: max-content; margin-bottom: 4px; }
.amc-me-photo__acts { flex-wrap: wrap; }
.amc-me-photo__acts button { min-width: 0; padding: 0 8px !important; white-space: nowrap; letter-spacing: normal; text-transform: none; line-height: 1; }
.amc-me-sched { margin-top: 18px; padding-top: 18px; border-top: 1px dashed #D5DBD8; }
.amc-me-sched__toggle { display: flex; gap: 12px; align-items: flex-start; cursor: pointer; }
.amc-me-sched__toggle input { flex: none; width: 22px; height: 22px; margin-top: 2px; accent-color: var(--amc-forest); }
.amc-me-sched__toggle strong { display: block; font-size: 16px; color: var(--amc-ink); }
.amc-me-sched__toggle small { display: block; font-size: 13.5px; color: var(--amc-muted); line-height: 1.5; }
.amc-me-sched__status { margin: 12px 0 0 !important; padding: 10px 14px; border-radius: 10px; background: #FFF8E6; border: 1px solid #F0DFAE; color: #5C4A12; font-size: 14px; font-weight: 600; }
.amc-me-sched__body { display: none; margin-top: 16px; padding: 16px; border-radius: 14px; background: #FAFBFA; border: 1px solid var(--amc-line); }
.amc-me-sched.is-on .amc-me-sched__body { display: block; }
.amc-me-sched__date { display: grid; gap: 6px; max-width: 260px; }
.amc-me-sched__date span { font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--amc-forest); }
.amc-me-sched__date input { min-height: 52px; padding: 0 14px; border: 1.5px solid #CFD5D2; border-radius: 12px; font-size: 17px; font-weight: 600; background: #fff; }
.amc-me-sched .amc-me-hint { margin: 14px 0 10px !important; }
/* Mosque page: "About the mosque" main text above the photos. */
.amc-cx-sec--about { padding-bottom: 8px; }
.amc-cx-sec--about + .amc-cx-sec--photos { padding-top: 28px; }
.amc-mq-about { max-width: 780px; }
.amc-mq-about h2 { margin: 2px 0 14px !important; text-transform: none !important; }
.amc-mq-about .amc-prose { font-size: 17px; line-height: 1.75; color: var(--amc-text); }
.amc-mq-about .amc-prose p { margin: 0 0 14px; max-width: none; }
.amc-mq-about .amc-prose > :last-child { margin-bottom: 0; }
@media (min-width: 1025px) { .amc-cx-sec--about { padding-bottom: 8px; } .amc-mq-about .amc-prose { font-size: 18px; } }
.amc-me-field { display: grid; gap: 8px; margin-top: 16px; }
.amc-me-field > span { font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--amc-forest); }
.amc-me-field textarea { width: 100%; padding: 12px 14px; border: 1.5px solid #CFD5D2; border-radius: 12px; font-size: 16px; line-height: 1.55; color: var(--amc-ink); background: #fff; resize: vertical; }
.amc-me-field textarea:focus { outline: none; border-color: var(--amc-accent); box-shadow: 0 0 0 4px rgba(11,107,75,.12); }
.amc-me-field small { font-size: 13px; color: var(--amc-muted); }
/* Mosque page: About text left, photos right (stacked on phones); smaller photos heading. */
.amc-mq-split { display: grid; gap: 28px; }
.amc-cx-sec--about { padding-bottom: 44px; }
.amc-mq-split .amc-gal-block { align-self: start; }
.amc-mq-split .amc-gal-head { margin-bottom: 12px; }
.amc-mq-split .amc-gal-head h2 { font-size: 19px !important; line-height: 1.3 !important; letter-spacing: 0; text-transform: none !important; }
.amc-mq-split .amc-gal-head .amc-kicker { font-size: 11px !important; margin-bottom: 2px !important; }
.amc-mq-split .amc-gal-thumbs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.amc-mq-split .amc-gal__thumb { width: auto; height: auto; aspect-ratio: 4 / 3; }
.amc-mq-split .amc-gal__thumb:first-child:nth-last-child(1) { grid-column: 1 / -1; aspect-ratio: 16 / 9; }
@media (min-width: 1025px) {
  .amc-cx-sec--about { padding-bottom: 64px; }
  .amc-mq-split { grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); gap: 64px; align-items: start; }
  .amc-mq-split--solo { grid-template-columns: minmax(0, 1fr); }
  .amc-mq-split .amc-gal-block { padding: 20px; border-radius: 18px; background: var(--amc-surface); border: 1px solid var(--amc-line); margin-top: 6px; }
}
.amc-me-field input[type="text"] { width: 100%; min-height: 50px; padding: 0 14px; border: 1.5px solid #CFD5D2; border-radius: 12px; font-size: 16px; color: var(--amc-ink); background: #fff; }
.amc-me-field input[type="text"]:focus { outline: none; border-color: var(--amc-accent); box-shadow: 0 0 0 4px rgba(11,107,75,.12); }
.amc-mq-split .amc-gal-head { flex-wrap: wrap; }
.amc-me-field select { width: 100%; min-height: 50px; padding: 0 40px 0 14px; border: 1.5px solid #CFD5D2; border-radius: 12px; font-size: 16px; color: var(--amc-ink); background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230F3B2C' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center / 18px; -webkit-appearance: none; appearance: none; }
.amc-me-field select:focus { outline: none; border-color: var(--amc-accent); box-shadow: 0 0 0 4px rgba(11,107,75,.12); }
/* Mosque prayer card: PDF timetable variant. */
.amc-pc__pdf { display: flex; align-items: center; gap: 14px; padding: 18px; text-decoration: none !important; color: var(--amc-ink) !important; transition: background .18s ease; }
.amc-pc__pdf:hover { background: var(--amc-accent-tint); }
.amc-pc__pdf-icon { display: grid; place-items: center; flex: none; width: 48px; height: 48px; border-radius: 12px; background: #FDECEC; color: #B42318; }
.amc-pc__pdf-icon svg { width: 24px; height: 24px; }
.amc-pc__pdf-text { flex: 1; min-width: 0; display: grid; gap: 2px; }
.amc-pc__pdf-text strong { font-size: 16px; line-height: 1.3; }
.amc-pc__pdf-text small { font-size: 13px; color: var(--amc-muted); }
.amc-pc__pdf-btn { flex: none; padding: 9px 14px; border-radius: 999px; background: var(--amc-forest); color: #fff; font-size: 13.5px; font-weight: 700; }
.amc-pc--pdf .amc-pc__list li:first-child { border-top: 1px solid var(--amc-line); }
/* Mosque editor: times source (entered / PDF / Google Calendar). */
.amc-me-src { margin-bottom: 18px; }
.amc-me-src__label { margin: 0 0 8px !important; font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--amc-forest); }
.amc-me-mode { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 4px; padding: 4px; border-radius: 14px; background: var(--amc-surface); border: 1px solid var(--amc-line); }
.amc-me-mode__opt { position: relative; cursor: pointer; }
.amc-me-mode__opt input { position: absolute; opacity: 0; inset: 0; cursor: pointer; }
.amc-me-mode__opt span { display: grid; place-items: center; min-height: 44px; padding: 0 6px; border-radius: 10px; font-size: 14px; font-weight: 700; color: var(--amc-muted); text-align: center; line-height: 1.2; }
.amc-me-mode__opt input:checked + span { background: var(--amc-forest); color: #fff; box-shadow: 0 6px 14px -8px rgba(15,59,44,.6); }
.amc-me-mode__opt input:focus-visible + span { outline: 3px solid var(--amc-accent); outline-offset: 2px; }
.amc-me-src__panel { display: none; margin-top: 14px; padding: 16px; border-radius: 14px; background: #FAFBFA; border: 1px solid var(--amc-line); }
.amc-me-src[data-mode="pdf"] .amc-me-src__panel--pdf, .amc-me-src[data-mode="gcal"] .amc-me-src__panel--gcal { display: block; }
.amc-me-src__panel .amc-me-field:first-child { margin-top: 0; }
.amc-me-src__times-note { display: none; margin: 14px 0 0 !important; font-size: 13.5px; color: var(--amc-muted); }
.amc-me-src:not([data-mode="times"]) .amc-me-src__times-note { display: block; }
.amc-me-row { display: grid; gap: 0 12px; }
.amc-me-field input[type="date"] { width: 100%; min-height: 50px; padding: 0 14px; border: 1.5px solid #CFD5D2; border-radius: 12px; font-size: 16px; background: #fff; }
.amc-me-file { display: flex; align-items: center; gap: 12px; padding: 10px 12px; margin-bottom: 12px; border-radius: 12px; background: #fff; border: 1px solid var(--amc-line); }
.amc-me-file__icon { flex: none; padding: 6px 8px; border-radius: 8px; background: #FDECEC; color: #B42318; font-size: 11px; font-weight: 800; }
.amc-me-file a { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 600; color: var(--amc-forest) !important; }
.amc-me-file button { flex: none; min-height: 34px; padding: 0 12px; border: 1px solid var(--amc-line); border-radius: 8px; background: #fff; color: #A12626; font-size: 13px; font-weight: 600; cursor: pointer; }
.amc-me-preview { margin-top: 14px; padding: 12px 14px; border-radius: 12px; background: var(--amc-accent-tint); border: 1px solid rgba(11,107,75,.2); }
.amc-me-preview p { margin: 0 0 8px !important; font-size: 13.5px; font-weight: 600; color: var(--amc-forest); }
.amc-me-preview ul { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px 12px; }
.amc-me-preview li { display: flex; justify-content: space-between; gap: 8px; font-size: 14px; }
.amc-me-preview li span { color: var(--amc-muted); }
.amc-me-help { margin-top: 14px; border-radius: 12px; background: #fff; border: 1px solid var(--amc-line); }
.amc-me-help summary { cursor: pointer; padding: 12px 14px; font-size: 14.5px; font-weight: 700; color: var(--amc-forest); }
.amc-me-help ol { margin: 0 !important; padding: 0 18px 0 34px !important; display: grid; gap: 8px; font-size: 14px; line-height: 1.55; color: var(--amc-text); }
.amc-me-help p { margin: 10px 14px 14px !important; font-size: 13px; color: var(--amc-muted); }
@media (min-width: 640px) { .amc-me-row { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); } }
@media (max-width: 639px) { .amc-me-preview ul { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px 16px; } }
.amc-pc__foot a { color: var(--amc-accent) !important; font-weight: 600; text-decoration: underline; }
/* Mosque page "Edit" buttons (only for people who can edit the mosque) + highlight of the target field. */
.amc-me-chip { display: inline-flex; align-items: center; gap: 5px; padding: 4px 10px; border-radius: 999px; background: #FFE7A3; border: 1px solid #E8C35A; color: #4A3A0A !important; font-size: 12.5px; font-weight: 700; line-height: 1.3; letter-spacing: 0; text-transform: none; text-decoration: none !important; white-space: nowrap; vertical-align: middle; box-shadow: 0 4px 10px -6px rgba(0,0,0,.4); transition: background .15s ease, transform .15s ease; }
.amc-me-chip svg { width: 13px; height: 13px; flex: none; }
.amc-me-chip:hover { background: #FFD45C; transform: translateY(-1px); }
.amc-me-chip--inline { margin-left: 6px; padding: 2px 8px; font-size: 11.5px; }
.amc-me-chip--block { display: flex; width: max-content; margin: 0 0 10px auto; }
.amc-contact .amc-me-chip--block { margin: -4px 0 12px; }
.amc-mq-about { position: relative; }
.amc-me-chip--corner { position: absolute; top: 0; right: 0; }
.amc-mq-split > .amc-me-chip--block { margin: 0; align-self: start; }
.amc-gal-head .amc-me-chip { margin-left: auto; }
.amc-me [id^="me-"], .amc-me #photos-edit { scroll-margin-top: calc(var(--amc-header-h) + var(--amc-adminbar) + 16px); }
.amc-me .amc-me-field:target, .amc-me .amc-me-card:target { animation: amc-me-flash 2.4s ease; border-radius: 14px; }
.amc-me .amc-me-field:target { outline: 3px solid #E8C35A; outline-offset: 6px; }
@keyframes amc-me-flash { 0%, 30% { background: #FFF4D1; box-shadow: 0 0 0 6px #FFF4D1; } 100% { background: transparent; box-shadow: none; } }
.amc-me .amc-me-card:target { outline: 3px solid #E8C35A; outline-offset: 2px; }
/* Mosque editor: prayer time controls. */
.amc-me-time > label { display: grid; gap: 6px; }
.amc-me-time input[type="time"] { width: 100%; min-height: 52px; padding: 0 12px; border: 1.5px solid #CFD5D2; border-radius: 12px; font-size: 18px; font-weight: 600; color: var(--amc-ink); background: #fff; font-variant-numeric: tabular-nums; font-family: inherit; }
.amc-me-time input[type="time"]:focus { outline: none; border-color: var(--amc-accent); box-shadow: 0 0 0 4px rgba(11,107,75,.12); }
.amc-me-time--jm input[type="time"] { background: #FFFBEF; border-color: #EAD7A0; }
.amc-me-time.is-sun input[type="time"] { opacity: .35; }
.amc-me-time.is-bad input[type="time"] { border-color: #D14343; background: #FFF6F6; }
.amc-me-time__bad { display: block; margin-top: 6px; font-size: 12.5px; line-height: 1.4; color: #A12626; }
.amc-me-sun { display: flex; align-items: center; gap: 8px; margin-top: 8px; font-size: 14px; }
.amc-me-sun label { display: inline-flex; align-items: center; gap: 6px; font-weight: 600; color: var(--amc-ink); cursor: pointer; }
.amc-me-sun input[type="checkbox"] { width: 18px; height: 18px; accent-color: var(--amc-forest); }
.amc-me-sun select { min-height: 34px; padding: 0 8px; border: 1px solid #CFD5D2; border-radius: 8px; background: #fff; font-size: 13.5px; }
.amc-me-time:not(.is-sun) .amc-me-sun select { opacity: .5; }
.amc-me-help__intro { margin: 14px 0 0 !important; font-size: 14px; line-height: 1.55; color: var(--amc-text); }
.amc-me-help + .amc-me-help { margin-top: 8px; }
.amc-me-help ul, .amc-me-help ol { margin: 0 !important; padding: 0 16px 14px 34px !important; display: grid; gap: 8px; font-size: 14px; line-height: 1.6; color: var(--amc-text); }
.amc-me-help li strong { color: var(--amc-ink); }
.amc-me-help[open] summary { border-bottom: 1px solid var(--amc-line); margin-bottom: 12px; }

/* ----------------------------------------------------------------------
   Hero prayer card, in the style of the homepage hero panel (amc-hp):
   green-tinted glass, small uppercase labels, rows with a square badge
   (the Arabic name) on the left. Markup unchanged; chapter + mosque heroes.
   ---------------------------------------------------------------------- */
.amc-cx-hero .amc-pc { background: rgba(14, 17, 16, .8); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); border: 1px solid rgba(255,255,255,.14); color: #fff; box-shadow: 0 28px 56px -30px rgba(0,0,0,.7); }
.amc-cx-hero .amc-pc__head { background: transparent; padding: 16px 18px 12px; gap: 4px 12px; }
.amc-cx-hero .amc-pc__title { gap: 8px; font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--amc-gold); }
.amc-cx-hero .amc-pc__title svg { width: 15px; height: 15px; }
.amc-cx-hero .amc-pc__date { font-size: 12px; color: #A9B1AD; }
.amc-cx-hero .amc-pc__next { font-size: 15px; font-weight: 600; color: #A9B1AD; margin-top: 4px !important; }
.amc-cx-hero .amc-pc__next svg { display: none; }
.amc-cx-hero .amc-pc__next strong { color: #fff; font-weight: 800; }
.amc-cx-hero .amc-pc__list li { gap: 14px; padding: 8px 18px; border-top: 1px solid rgba(255,255,255,.08); color: #fff; transition: background-color .2s ease; }
.amc-cx-hero .amc-pc__list li:first-child { border-top: 1px solid rgba(255,255,255,.1); }
.amc-cx-hero .amc-pc__name { flex-direction: row; align-items: center; gap: 14px; font-size: 15px; }
.amc-cx-hero .amc-pc__ar { order: -1; flex: 0 0 46px; display: grid; place-items: center; width: 46px; height: 40px; margin: 0; border-radius: 12px; background: rgba(255,255,255,.08); color: #C9CFCC; font-size: 14px; line-height: 1; }
.amc-cx-hero .amc-pc__time { font-size: 16px; color: #fff; }
.amc-cx-hero .amc-pc__list li.is-next { background: rgba(255,255,255,.08); color: #fff; }
.amc-cx-hero .amc-pc__list li.is-next::before { left: 0; top: 8px; bottom: 8px; width: 3px; height: auto; margin: 0; border-radius: 0 3px 3px 0; background: var(--amc-mint); }
.amc-cx-hero .amc-pc__list li.is-next .amc-pc__ar { background: #fff; color: var(--amc-ink); }
.amc-cx-hero .amc-pc__list li.is-next .amc-pc__time { color: #fff; font-weight: 800; }
.amc-cx-hero .amc-pc__list li.is-jumuah { background: transparent; color: #fff; }
.amc-cx-hero .amc-pc__list li.is-jumuah .amc-pc__ar { background: rgba(224,178,60,.16); color: var(--amc-gold); }
.amc-cx-hero .amc-pc__list li.is-jumuah .amc-pc__time { color: var(--amc-gold); }
.amc-cx-hero .amc-pc__foot { padding: 12px 18px 14px; font-size: 12px; color: #8A918D; border-top: 1px solid rgba(255,255,255,.1); }
.amc-cx-hero .amc-pc__foot a { color: var(--amc-gold) !important; }
.amc-cx-hero .amc-pc .amc-pc__pdf { color: #fff !important; }
.amc-cx-hero .amc-pc .amc-pc__pdf:hover { background: rgba(255,255,255,.06); }
.amc-cx-hero .amc-pc .amc-pc__pdf-text small { color: #A9B1AD; }
@media (min-width: 782px) {
  .amc-cx-hero .amc-pc__head { padding: 18px 24px 12px; }
  .amc-cx-hero .amc-pc__list li { padding: 8px 24px; }
  .amc-cx-hero .amc-pc__foot { padding: 12px 24px 16px; }
}
@media (hover: hover) and (pointer: fine) { .amc-cx-hero .amc-pc__list li:not(.is-next):not(.is-jumuah):hover { background: rgba(255,255,255,.05); } }

/* Mosque + chapter page top: same treatment as the Home hero (photo slightly darkened, green that fades out to the
   right on desktop, so the photo shows through behind the prayer card). Neutral black glass for the side boxes. */
.amc-cx-hero::before { background: linear-gradient(180deg, rgba(15,59,44,.82) 0%, rgba(15,59,44,.62) 40%, rgba(12,48,36,.82) 75%, rgba(10,40,30,.92) 100%), rgba(0,0,0,.12); }
@media (min-width: 782px) {
  .amc-cx-hero::before { background: linear-gradient(90deg, rgba(12,48,36,.95) 0%, rgba(15,59,44,.88) 30%, rgba(15,59,44,.55) 52%, rgba(15,59,44,.18) 72%, rgba(15,59,44,.08) 100%), rgba(0,0,0,.14); }
}
.amc-cx-hero .amc-pc__list li.is-next::before { background: var(--amc-mint); }
.amc-cx-hero .amc-pc__list li.is-jumuah .amc-pc__time { color: var(--amc-gold); }
/* Same muted green as the Home hero whatever the photo's own colours: the photo is shown in near-greyscale
   (luminosity over a grey-green), then the Home overlay adds the green. */
.amc-cx-hero { background-color: #3A4641; background-blend-mode: luminosity; }
/* Mosque page top ~25% shorter: less padding, compact prayer rows. */
.amc-cx--mosque .amc-cx-hero { padding-top: 26px; padding-bottom: 22px; }
.amc-cx--mosque .amc-cx-hero .amc-pc__head { padding-top: 12px; padding-bottom: 8px; }
.amc-cx--mosque .amc-cx-hero .amc-pc__next { margin-top: 2px !important; font-size: 14px; }
.amc-cx--mosque .amc-cx-hero .amc-pc__list li { padding-top: 5px; padding-bottom: 5px; }
.amc-cx--mosque .amc-cx-hero .amc-pc__ar { height: 32px; flex-basis: 42px; width: 42px; border-radius: 10px; font-size: 13px; }
.amc-cx--mosque .amc-cx-hero .amc-pc__foot { padding-top: 9px; padding-bottom: 10px; }
.amc-cx--mosque .amc-cx-hero .amc-cx-directions { padding-top: 10px; padding-bottom: 10px; }
.amc-cx--mosque .amc-cx-hero .amc-crumbs { margin-bottom: 8px; }
@media (min-width: 1025px) { .amc-cx--mosque .amc-cx-hero { padding-top: 32px; padding-bottom: 28px; } }
/* Get directions on the hero: a little darker, still see-through, so the text reads over light photos. */
.amc-cx-hero .amc-cx-directions { background: rgba(14,17,16,.45); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); border-color: rgba(255,255,255,.22); }
.amc-cx-hero .amc-cx-directions span { color: #E4EAE7; }
.amc-cx-hero .amc-cx-directions strong { color: #fff; }
.amc-cx-hero .amc-cx-directions > svg:last-child { color: #E4EAE7; }
.amc-cx-hero .amc-cx-directions:hover { background: rgba(14,17,16,.58); }
/* Chapter + mosque in-page links bar: near-black instead of green (black/white theme, green only as an accent). */
.amc-cx .amc-subnav { background: #2B302E; border-bottom: 1px solid rgba(255,255,255,.08); }
.amc-cx .amc-subnav a { color: #D9DDDB; background: rgba(255,255,255,.07); }
.amc-cx .amc-subnav a[aria-current="page"] { background: #fff; color: var(--amc-ink); }
@media (hover: hover) and (pointer: fine) { .amc-cx .amc-subnav a:hover:not([aria-current]) { background: rgba(255,255,255,.15); color: #fff; } }

/* ======================================================================
   Chapter pages (amc-ch*): compact header band, chapter menu (side on desktop,
   chips on phones), main column with intro, events tile, mosques, articles, photos.
   ====================================================================== */
.amc-ch .amc-ch-hero { padding: 26px var(--amc-gutter) 24px !important; }
.amc-ch-hero__copy { max-width: 760px; }
.amc-ch-hero .amc-crumbs { margin-bottom: 10px; }
.amc-ch-hero .amc-chip { margin-bottom: 10px !important; }
.amc-ch-hero .amc-cx-hero__title { margin: 0 0 6px !important; font-size: clamp(30px, 7vw, 46px) !important; }
.amc-ch-hero .amc-cx-hero__title a { color: #fff !important; text-decoration: none !important; }
.amc-ch-hero__meta { display: flex; flex-wrap: wrap; gap: 6px 10px; margin: 0 !important; font-size: 14px; color: #D7DCD9; }
.amc-ch-hero__meta span { opacity: .6; }
.amc-ch-layout { max-width: var(--amc-content); margin: 0 auto; padding: 0 var(--amc-gutter) 56px; display: grid; gap: 0; }
.amc-ch-side { position: sticky; top: calc(var(--amc-header-h) + var(--amc-adminbar)); z-index: 15; margin: 0 calc(var(--amc-gutter) * -1); background: #fff; border-bottom: 1px solid var(--amc-line); }
.amc-ch-nav { display: flex; align-items: center; gap: 6px; overflow-x: auto; padding: 10px var(--amc-gutter); scrollbar-width: none; }
.amc-ch-nav::-webkit-scrollbar { display: none; }
.amc-ch-nav ul { display: contents; list-style: none; margin: 0; padding: 0; }
.amc-ch-nav li { flex: 0 0 auto; }
.amc-ch-nav a { display: inline-flex; align-items: center; gap: 8px; min-height: 38px; padding: 0 14px; border-radius: 999px; background: var(--amc-surface); color: var(--amc-text) !important; font-size: 14px; font-weight: 600; text-decoration: none !important; white-space: nowrap; }
.amc-ch-nav a[aria-current="page"] { background: var(--amc-ink); color: #fff !important; }
.amc-ch-nav em { font-style: normal; font-size: 11.5px; font-weight: 700; padding: 1px 7px; border-radius: 999px; background: rgba(18,22,20,.08); color: var(--amc-muted); }
.amc-ch-nav a[aria-current="page"] em { background: rgba(255,255,255,.18); color: #fff; }
.amc-ch-nav__title, .amc-ch-nav__group { display: none; }
.amc-ch-nav .amc-me-chip { flex: 0 0 auto; }
.amc-ch-main { min-width: 0; padding-top: 24px; }
.amc-ch-block { padding: 26px 0; border-bottom: 1px solid var(--amc-line); }
.amc-ch-block:first-child { padding-top: 6px; }
.amc-ch-block__head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 16px; }
.amc-ch-block__head h1, .amc-ch-block__head h2 { margin: 2px 0 0 !important; font-size: clamp(24px, 5.5vw, 32px) !important; line-height: 1.15 !important; text-transform: none !important; }
.amc-ch-block__head .amc-kicker { margin-bottom: 4px !important; }
.amc-ch-intro .amc-prose { font-size: 17px; line-height: 1.75; }
.amc-ch-intro .amc-prose p { max-width: none; }
.amc-ch-empty { margin: 0 !important; padding: 16px; border-radius: 12px; background: var(--amc-surface); color: var(--amc-muted); font-size: 15px; }
.amc-ch-more { margin: 14px 0 0 !important; }
.amc-ch-more a { display: inline-flex; align-items: center; gap: 6px; font-weight: 700; color: var(--amc-accent) !important; text-decoration: none !important; }
.amc-ch-more a svg { width: 16px; height: 16px; }
.amc-ch-evs { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; gap: 8px; }
.amc-ch-ev { position: relative; display: flex; align-items: center; gap: 10px; }
.amc-ch-ev__link { flex: 1; min-width: 0; display: flex; align-items: center; gap: 14px; padding: 10px 14px 10px 10px; border-radius: 14px; border: 1px solid var(--amc-line); background: #fff; color: var(--amc-ink) !important; text-decoration: none !important; transition: border-color .18s ease; }
.amc-ch-ev__link:hover { border-color: var(--amc-ink); }
.amc-ch-ev__date { flex: 0 0 50px; height: 50px; display: grid; align-content: center; justify-items: center; border-radius: 12px; background: #1F2422; color: #fff; line-height: 1; }
.amc-ch-ev__date span { font-size: 10.5px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--amc-mint); }
.amc-ch-ev__date strong { font-size: 20px; font-weight: 800; margin-top: 3px; }
.amc-ch-ev__text { min-width: 0; display: grid; gap: 2px; }
.amc-ch-ev__text strong { font-size: 15.5px; line-height: 1.3; }
.amc-ch-ev__text small { font-size: 13px; color: var(--amc-muted); }
.amc-ch-past summary { cursor: pointer; font-weight: 700; color: var(--amc-ink); margin-bottom: 12px; }
.amc-ch-cards { display: grid; gap: 12px; }
.amc-ch-card { display: flex; gap: 14px; align-items: stretch; padding: 10px; border-radius: 16px; border: 1px solid var(--amc-line); background: #fff; color: var(--amc-ink) !important; text-decoration: none !important; transition: border-color .18s ease, box-shadow .18s ease; }
.amc-ch-card:hover { border-color: var(--amc-ink); box-shadow: var(--amc-shadow-hover); }
.amc-ch-card__img { flex: 0 0 96px; min-height: 80px; border-radius: 10px; background: var(--amc-surface) center / cover no-repeat; }
.amc-ch-card__icon { flex: 0 0 56px; height: 56px; display: grid; place-items: center; border-radius: 12px; background: var(--amc-surface); color: var(--amc-ink); }
.amc-ch-card__icon svg { width: 24px; height: 24px; }
.amc-ch-card__body { min-width: 0; display: grid; align-content: center; gap: 4px; }
.amc-ch-card__body strong { font-size: 16px; line-height: 1.3; }
.amc-ch-card__body small { font-size: 13.5px; line-height: 1.5; color: var(--amc-muted); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.amc-ch-photos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.amc-ch-photo { position: relative; display: block; overflow: hidden; border-radius: 12px; aspect-ratio: 4 / 3; background: var(--amc-surface); cursor: zoom-in; }
.amc-ch-photo[hidden] { display: none; }
.amc-ch-photo img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .3s ease; }
.amc-ch-photo:hover img { transform: scale(1.04); }
.amc-ch-photo .amc-gal__zoom { opacity: 0; }
.amc-ch-photo:hover .amc-gal__zoom { opacity: 1; }
.amc-ch-contact { margin-top: 26px; }
.amc-ch-article__lead { font-size: 18px; line-height: 1.6; color: var(--amc-text); margin: 0 0 18px !important; }
.amc-ch-article__fig { margin: 0 0 22px !important; }
.amc-ch-article__img { display: block; width: 100%; height: auto; max-height: 460px; object-fit: cover; border-radius: 16px; }
.amc-ch-article .amc-prose { font-size: 17px; line-height: 1.75; }
.amc-ch-article__date { margin: 22px 0 0 !important; font-size: 13px; color: var(--amc-muted); }
.amc-me-chip--add { background: var(--amc-ink); border-color: var(--amc-ink); color: #fff !important; }
.amc-me-chip--add:hover { background: #2B302E; }
.amc-me-thumb { display: flex; align-items: center; gap: 12px; margin-bottom: 10px; }
.amc-me-thumb img { width: 120px; height: 84px; object-fit: cover; border-radius: 10px; }
.amc-me-check { display: inline-flex; align-items: center; gap: 8px; font-weight: 600; margin-top: 24px; }
.amc-me-check input { width: 18px; height: 18px; accent-color: var(--amc-forest); }
.amc-me-row--3 { grid-template-columns: 1fr; }
.amc-me-danger { margin-top: 10px; }
.amc-me-danger button { border: 1px solid #E4B4B4; background: #fff; color: #A12626; border-radius: 10px; padding: 10px 16px; font-weight: 600; cursor: pointer; }
.amc-me-danger button:hover { background: #FDECEC; }
@media (min-width: 640px) {
  .amc-ch-photos { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .amc-ch-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .amc-me-row--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (min-width: 1025px) {
  .amc-ch .amc-ch-hero { padding: 34px var(--amc-gutter) 30px !important; }
  .amc-ch-layout { grid-template-columns: 240px minmax(0, 1fr); gap: 48px; padding-top: 32px; }
  .amc-ch-side { position: static; margin: 0; background: transparent; border: 0; }
  .amc-ch-nav { position: sticky; top: calc(var(--amc-header-h) + var(--amc-adminbar) + 20px); display: block; overflow: visible; padding: 0; }
  .amc-ch-nav ul { display: grid; gap: 2px; }
  .amc-ch-nav a { display: flex; justify-content: space-between; width: 100%; min-height: 40px; padding: 0 12px; border-radius: 10px; background: transparent; white-space: normal; line-height: 1.3; }
  .amc-ch-nav a:hover { background: var(--amc-surface); }
  .amc-ch-nav__title { display: block; margin: 0 0 10px 12px !important; font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--amc-muted); }
  .amc-ch-nav__group { display: block; margin: 20px 0 6px 12px !important; padding-top: 16px; border-top: 1px solid var(--amc-line); font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--amc-muted); }
  .amc-ch-nav .amc-me-chip { margin: 12px 0 0 12px; }
  .amc-ch-main { padding-top: 0; }
  .amc-ch-block { padding: 34px 0; }
  .amc-ch-block:first-child { padding-top: 0; }
  .amc-ch-photos { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
}
.amc-ch-nav ul { padding: 0 !important; margin: 0 !important; }
.amc-ch-hero p.amc-cx-hero__title { font-weight: 800; letter-spacing: -.02em; line-height: 1.1; }
.amc-ch-nav a.amc-me-chip { display: inline-flex; width: auto; min-height: 0; padding: 6px 12px; border-radius: 999px; background: var(--amc-ink); border: 1px solid var(--amc-ink); color: #fff !important; font-size: 12.5px; font-weight: 700; }
.amc-ch-nav a.amc-me-chip:hover { background: #2B302E; }
/* Chapter header v2: name + tagline + pills + buttons, glass "At a glance" card on the right. */
.amc-ch .amc-ch-hero { padding: 26px var(--amc-gutter) 28px !important; }
.amc-ch-hero__grid { display: grid; gap: 20px; }
.amc-ch-hero__copy { max-width: 680px; }
.amc-ch-hero__tagline { margin: 0 0 14px !important; font-size: 18px; line-height: 1.45; color: #E4EAE7; }
.amc-ch-hero__pills { list-style: none; margin: 0 0 18px !important; padding: 0 !important; display: flex; flex-wrap: wrap; gap: 8px; }
.amc-ch-hero__pills li { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border-radius: 999px; background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.16); font-size: 13px; font-weight: 600; color: #fff; }
.amc-ch-hero__pills svg { width: 14px; height: 14px; color: var(--amc-gold); }
.amc-ch-hero__ctas { display: flex; flex-wrap: wrap; gap: 10px; }
.amc-ch-hero__ctas .amc-btn svg { width: 16px; height: 16px; }
.amc-ch-hero__card { align-self: end; padding: 16px 18px; border-radius: var(--amc-radius); background: rgba(14,17,16,.72); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); border: 1px solid rgba(255,255,255,.14); color: #fff; }
.amc-ch-hero__card-title { margin: 0 0 8px !important; font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--amc-gold); }
.amc-ch-hero__card ul { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; }
.amc-ch-hero__card li { display: flex; gap: 12px; align-items: flex-start; padding: 10px 0; border-top: 1px solid rgba(255,255,255,.1); }
.amc-ch-hero__card li:first-child { border-top: 0; padding-top: 4px; }
.amc-ch-hero__card li > svg { flex: none; width: 18px; height: 18px; margin-top: 2px; color: #C9CFCC; }
.amc-ch-hero__card li span { min-width: 0; display: grid; gap: 1px; }
.amc-ch-hero__card small { font-size: 12px; color: #A9B1AD; }
.amc-ch-hero__card strong { font-size: 15px; color: #fff; overflow-wrap: anywhere; }
.amc-ch-hero__card em { font-style: normal; font-size: 12.5px; color: #C9CFCC; }
.amc-ch-hero__card a { color: #fff !important; text-decoration: none !important; }
.amc-ch-hero__card a:hover strong { text-decoration: underline; }
@media (min-width: 1025px) {
  .amc-ch .amc-ch-hero { padding: 38px var(--amc-gutter) 36px !important; }
  .amc-ch-hero__grid { grid-template-columns: minmax(0, 1fr) 360px; gap: 48px; align-items: end; }
  .amc-ch-hero .amc-cx-hero__title { font-size: clamp(40px, 4vw, 54px) !important; }
}
/* Edit pencils in the chapter menu, edit buttons under mosque cards and in the contact box. */
.amc-ch-nav li { position: relative; display: flex; align-items: center; gap: 4px; }
.amc-ch-nav li > a:first-child { flex: 1; }
.amc-ch-nav__edit { flex: none; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 8px; background: #FFE7A3; border: 1px solid #E8C35A; color: #4A3A0A !important; }
.amc-ch-nav__edit svg { width: 14px; height: 14px; }
.amc-ch-nav__edit:hover { background: #FFD45C; }
.amc-ch-nav a.amc-ch-nav__edit { display: grid; width: 30px; min-height: 30px; padding: 0; justify-content: center; background: #FFE7A3; }
.amc-ch-mq { display: grid; gap: 8px; align-content: start; }
.amc-ch-mq > .amc-me-chip { justify-self: start; }
.amc-ch-contact__head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.amc-ch-contact__head h2 { margin: 0 !important; text-transform: none !important; }
.amc-ch-hero__tagline { color: var(--amc-gold); font-weight: 600; font-size: 17px; }
/* Chapter v3: fixed sections in the links bar (as on mosque pages); articles as the side menu. */
.amc-ch-bar { margin: 0; }
.amc-ch-bar .amc-subnav__inner { list-style: none; margin: 0 auto !important; align-items: center; }
.amc-ch-bar li { flex: 0 0 auto; display: flex; align-items: center; gap: 4px; }
.amc-ch-bar a em { margin-left: 6px; font-style: normal; font-size: 11.5px; font-weight: 700; padding: 1px 7px; border-radius: 999px; background: rgba(255,255,255,.14); color: #fff; }
.amc-ch-bar a[aria-current="page"] em { background: rgba(18,22,20,.1); color: var(--amc-ink); }
.amc-ch-bar .amc-ch-nav__edit { width: 28px; height: 28px; min-height: 28px !important; padding: 0 !important; border-radius: 8px; display: grid; place-items: center; background: #FFE7A3 !important; border: 1px solid #E8C35A; color: #4A3A0A !important; }
.amc-ch-bar .amc-ch-nav__edit svg { width: 13px; height: 13px; }
.amc-ch-bar__add .amc-me-chip { margin-left: 8px; }
.amc-ch-layout { padding-top: 24px; }
.amc-ch-side { position: static; margin: 0 0 8px; background: transparent; border: 0; }
.amc-ch-nav { display: block; overflow: visible; padding: 0; }
.amc-ch-nav ul { display: grid !important; gap: 8px; }
.amc-ch-nav li { display: block; }
.amc-ch-nav a { display: flex !important; align-items: center; gap: 12px; width: 100%; min-height: 0 !important; padding: 10px 12px 10px 10px !important; border-radius: 14px !important; background: #fff !important; border: 1px solid var(--amc-line); color: var(--amc-ink) !important; font-size: 15px; font-weight: 600; white-space: normal !important; line-height: 1.3; transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.amc-ch-nav a > svg { flex: none; width: 15px; height: 15px; margin-left: auto; color: #A3AAA6; transition: transform .18s ease, color .18s ease; }
.amc-ch-nav__ico { flex: none; display: grid; place-items: center; width: 38px; height: 38px; border-radius: 10px; background: var(--amc-surface); color: var(--amc-ink); }
.amc-ch-nav__ico svg { width: 18px; height: 18px; }
.amc-ch-nav a:hover { border-color: var(--amc-ink); box-shadow: 0 10px 22px -16px rgba(18,22,20,.45); }
.amc-ch-nav a:hover > svg { transform: translateX(3px); color: var(--amc-ink); }
.amc-ch-nav a[aria-current="page"] { background: var(--amc-ink) !important; border-color: var(--amc-ink); color: #fff !important; }
.amc-ch-nav a[aria-current="page"] .amc-ch-nav__ico { background: rgba(255,255,255,.12); color: #fff; }
.amc-ch-nav a[aria-current="page"] > svg { color: #fff; }
.amc-ch-nav > .amc-me-chip { margin: 12px 0 0 !important; }
@media (min-width: 1025px) {
  .amc-ch-layout { grid-template-columns: 260px minmax(0, 1fr); gap: 48px; padding-top: 36px; }
  .amc-ch-layout--full { grid-template-columns: minmax(0, 1fr); }
  .amc-ch-nav { position: sticky; top: calc(var(--amc-header-h) + var(--amc-adminbar) + 72px); }
}
@media (max-width: 1024px) {
  .amc-ch-nav ul { grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); }
}
.amc-ch-bar ul.amc-subnav__inner { padding-left: 0 !important; padding-right: 0 !important; }
/* "+ New article" under the article menu: keep the black chip (not the white article-card style). */
.amc-ch-nav > a.amc-me-chip { display: inline-flex !important; width: auto; gap: 6px; padding: 8px 14px !important; border-radius: 999px !important; background: var(--amc-ink) !important; border: 1px solid var(--amc-ink); color: #fff !important; font-size: 13px; font-weight: 700; box-shadow: none; }
.amc-ch-nav > a.amc-me-chip:hover { background: #2B302E !important; transform: none; }
/* Chapter contacts: list on the page + repeatable rows in the editor. */
.amc-ch-person > span { display: grid; gap: 1px; }
.amc-ch-person small, .amc-ch-contact li small { display: block; font-size: 13px; color: var(--amc-muted); }
.amc-ch-person__links { display: flex; flex-wrap: wrap; gap: 4px 14px; margin-top: 3px; }
.amc-ch-person__links a { font-weight: 600; }
.amc-ct-rows { display: grid; gap: 12px; }
.amc-ct-row { position: relative; padding: 14px; border-radius: 14px; border: 1px solid var(--amc-line); background: #FAFBFA; }
.amc-ct-row__grid { display: grid; gap: 0 12px; }
.amc-ct-row .amc-me-field { margin-top: 0; margin-bottom: 10px; }
.amc-ct-row__email { font-weight: 600; color: var(--amc-accent) !important; min-height: 1em; }
.amc-ct-row__remove { border: 1px solid #E4B4B4; background: #fff; color: #A12626; border-radius: 8px; padding: 6px 12px; font-size: 13px; font-weight: 600; cursor: pointer; }
.amc-ct-row__remove:hover { background: #FDECEC; }
.amc-ct-add { margin-top: 12px; border: 1.5px dashed #C9D2CE; background: #fff; border-radius: 12px; padding: 12px 16px; width: 100%; font-weight: 700; color: var(--amc-forest); cursor: pointer; }
.amc-ct-add:hover { border-color: var(--amc-forest); background: var(--amc-accent-tint); }
@media (min-width: 782px) {
  .amc-ct-row { display: flex; align-items: flex-start; gap: 12px; }
  .amc-ct-row__grid { flex: 1; grid-template-columns: 1.3fr 1fr .8fr; }
  .amc-ct-row__remove { margin-top: 28px; }
}
.amc-ct-row .amc-me-field input[type="text"], .amc-ct-row .amc-me-field input[type="tel"], .amc-ct-row .amc-me-field select, .amc-me-field input[type="tel"] { width: 100%; height: 50px; min-height: 50px; padding: 0 14px; border: 1.5px solid #CFD5D2; border-radius: 12px; font-size: 16px; color: var(--amc-ink); background-color: #fff; box-sizing: border-box; }
.amc-ct-row .amc-me-field select { padding-right: 40px; }
/* Contact rows v2: one aligned line of fields, remove icon, email badge below. */
.amc-ct-row { display: grid !important; grid-template-columns: 1fr auto; gap: 12px; padding: 16px !important; align-items: end; }
.amc-ct-f { display: grid; gap: 6px; margin: 0 !important; min-width: 0; }
.amc-ct-f > span { font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--amc-forest); }
.amc-ct-f select, .amc-ct-f input { display: block; width: 100%; height: 48px !important; min-height: 48px !important; margin: 0 !important; padding: 0 14px !important; border: 1.5px solid #CFD5D2 !important; border-radius: 12px !important; font-size: 16px !important; line-height: normal !important; color: var(--amc-ink); background-color: #fff; box-shadow: none !important; box-sizing: border-box; }
.amc-ct-f select { padding-right: 40px !important; -webkit-appearance: none; appearance: none; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230F3B2C' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center / 18px; }
.amc-ct-f select:focus, .amc-ct-f input:focus { outline: none; border-color: var(--amc-accent) !important; box-shadow: 0 0 0 4px rgba(11,107,75,.12) !important; }
.amc-ct-f--office { grid-column: 1 / 2; }
.amc-ct-row > .amc-ct-f:not(.amc-ct-f--office) { grid-column: 1 / -1; }
.amc-ct-row__remove { grid-column: 2; grid-row: 1; display: grid !important; place-items: center; width: 48px; height: 48px; margin: 0 !important; padding: 0 !important; border-radius: 12px !important; border: 1.5px solid #E4C6C6 !important; background: #fff; color: #A12626; cursor: pointer; }
.amc-ct-row__remove svg { width: 18px; height: 18px; }
.amc-ct-row__remove:hover { background: #FDECEC; border-color: #A12626 !important; }
.amc-ct-row__email { grid-column: 1 / -1; display: inline-flex; align-items: center; gap: 8px; justify-self: start; margin: 0 !important; padding: 6px 12px; border-radius: 999px; background: var(--amc-accent-tint); color: var(--amc-forest); font-size: 14px; font-weight: 600; }
.amc-ct-row__email[hidden] { display: none; }
.amc-ct-row__email svg { width: 15px; height: 15px; }
@media (min-width: 782px) {
  .amc-ct-row { grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr) minmax(0, .8fr) 48px; }
  .amc-ct-row > .amc-ct-f, .amc-ct-f--office { grid-column: auto !important; }
  .amc-ct-row__remove { grid-column: 4; grid-row: 1; }
  .amc-ct-row__email { grid-column: 1 / -1; }
}
.amc-ct-f input, .amc-ct-f select { color: var(--amc-ink) !important; font-weight: 500; }
.amc-ct-f input::placeholder { color: #9AA19D; font-weight: 400; }

/* ---------- Rich text content (chapter/mosque editors): buttons, images, carousel ---------- */
.amc-prose .amc-cbtn { display: inline-flex; align-items: center; min-height: 46px; padding: 0 22px; border-radius: 999px; background: var(--amc-accent); border: 1.5px solid var(--amc-accent); color: #fff !important; font-weight: 700; text-decoration: none !important; transition: background .18s ease, color .18s ease; }
.amc-prose .amc-cbtn:hover { background: var(--amc-accent-hover); border-color: var(--amc-accent-hover); }
.amc-prose .amc-cbtn--outline { background: transparent; color: var(--amc-accent) !important; }
.amc-prose .amc-cbtn--outline:hover { background: var(--amc-accent); color: #fff !important; }
.amc-prose .amc-rt-img { margin: 20px 0 !important; }
.amc-prose .amc-rt-img img { display: block; width: 100%; height: auto; border-radius: var(--amc-radius); }
.amc-prose blockquote { margin: 20px 0; padding: 4px 0 4px 18px; border-left: 3px solid var(--amc-gold); color: var(--amc-muted); font-size: 1.05em; }
.amc-carousel { position: relative; margin: 22px 0; }
.amc-carousel:not(:has(.amc-carousel__track)) { display: flex; gap: 8px; overflow-x: auto; }
.amc-carousel:not(:has(.amc-carousel__track)) img { width: 70%; flex: none; border-radius: var(--amc-radius); }
.amc-carousel__track { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; border-radius: var(--amc-radius); scrollbar-width: none; background: var(--amc-surface); }
.amc-carousel__track::-webkit-scrollbar { display: none; }
.amc-carousel__slide { flex: 0 0 100%; scroll-snap-align: start; aspect-ratio: 16 / 10; }
.amc-carousel__slide img { width: 100%; height: 100%; object-fit: cover; display: block; border-radius: 0 !important; }
.amc-carousel__nav { display: flex; align-items: center; justify-content: center; gap: 12px; margin-top: 10px; }
.amc-carousel__btn { width: 38px; height: 38px; border-radius: 50%; border: 1px solid var(--amc-line); background: #fff; color: var(--amc-ink); font-size: 22px; line-height: 1; cursor: pointer; }
.amc-carousel__btn:hover { border-color: var(--amc-ink); }
.amc-carousel__dots { display: flex; gap: 6px; }
.amc-carousel__dots button { width: 8px; height: 8px; padding: 0; border: 0; border-radius: 999px; background: #C9CFCC; cursor: pointer; transition: width .2s ease; }
.amc-carousel__dots button.is-on { width: 22px; background: var(--amc-ink); }

/* Image library dialog (editor). */
.amc-lib { position: fixed; inset: 0; z-index: 100100; display: grid; place-items: center; padding: 16px; background: rgba(14,17,16,.55); }
.amc-lib__box { width: min(880px, 100%); max-height: calc(100vh - 32px); display: flex; flex-direction: column; gap: 12px; padding: 18px; border-radius: 18px; background: #fff; box-shadow: 0 30px 70px -30px rgba(0,0,0,.6); }
.amc-lib__head { display: flex; align-items: center; justify-content: space-between; font-size: 18px; }
.amc-lib__x { width: 36px; height: 36px; border: 0; border-radius: 10px; background: var(--amc-surface); font-size: 22px; cursor: pointer; }
.amc-lib__hint { margin: 0 !important; font-size: 14px; color: var(--amc-muted); }
.amc-lib__up { position: relative; display: flex; align-items: center; justify-content: center; min-height: 48px; border: 2px dashed #C9D2CE; border-radius: 12px; font-weight: 700; color: var(--amc-forest); cursor: pointer; }
.amc-lib__up:hover { border-color: var(--amc-forest); background: var(--amc-accent-tint); }
.amc-lib__up input { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
.amc-lib__grid { flex: 1; overflow-y: auto; display: grid; grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); gap: 8px; min-height: 140px; }
.amc-lib__grid button { position: relative; padding: 0; border: 3px solid transparent; border-radius: 12px; background: var(--amc-surface); cursor: pointer; overflow: hidden; aspect-ratio: 4 / 3; }
.amc-lib__grid button img { width: 100%; height: 100%; object-fit: cover; display: block; }
.amc-lib__grid button.is-on { border-color: var(--amc-accent); }
.amc-lib__grid button em { position: absolute; top: 6px; right: 6px; min-width: 22px; height: 22px; border-radius: 999px; background: var(--amc-accent); color: #fff; font-style: normal; font-size: 12px; font-weight: 700; display: none; place-items: center; }
.amc-lib__grid button.is-on em { display: grid; }
.amc-lib__grid button.is-on em:empty::before { content: "✓"; }
.amc-lib__empty { grid-column: 1 / -1; margin: 30px 0 !important; text-align: center; color: var(--amc-muted); }
.amc-lib__msg { margin: 0 !important; font-size: 14px; color: #A12626; }
.amc-lib__foot { display: flex; justify-content: flex-end; gap: 10px; }
.amc-lib__foot button { min-height: 44px; padding: 0 20px; border-radius: 12px; font-weight: 700; cursor: pointer; }
.amc-lib__cancel { border: 1px solid var(--amc-line); background: #fff; }
.amc-lib__ok { border: 0; background: var(--amc-forest); color: #fff; }
.amc-lib__ok:disabled { opacity: .4; cursor: not-allowed; }
.amc-prose .amc-rt-img img { width: auto; max-width: 100%; max-height: 560px; margin: 0 auto; }
.amc-prose .amc-rt-img { text-align: center; }
.amc-carousel__btn { display: grid; place-items: center; padding: 0 0 3px; }
/* Image library dialog: own button styles (the theme's button colours must not apply). */
.amc-lib button { font-family: inherit; text-transform: none !important; letter-spacing: normal !important; box-shadow: none !important; }
.amc-lib .amc-lib__x { display: grid !important; place-items: center; width: 40px !important; height: 40px !important; min-height: 0 !important; padding: 0 !important; border: 1px solid var(--amc-line) !important; border-radius: 10px !important; background: #fff !important; color: var(--amc-ink) !important; font-size: 24px !important; line-height: 1 !important; }
.amc-lib .amc-lib__x:hover { background: var(--amc-surface) !important; }
.amc-lib .amc-lib__cancel { min-height: 46px !important; padding: 0 22px !important; border: 1.5px solid #CFD5D2 !important; border-radius: 12px !important; background: #fff !important; color: var(--amc-ink) !important; font-size: 16px !important; font-weight: 700 !important; }
.amc-lib .amc-lib__cancel:hover { border-color: var(--amc-ink) !important; }
.amc-lib .amc-lib__ok { min-height: 46px !important; padding: 0 22px !important; border: 0 !important; border-radius: 12px !important; background: var(--amc-forest) !important; color: #fff !important; font-size: 16px !important; font-weight: 700 !important; }
.amc-lib .amc-lib__ok:hover:not(:disabled) { background: var(--amc-accent) !important; }
.amc-lib .amc-lib__grid button { min-height: 0 !important; padding: 0 !important; background: var(--amc-surface) !important; border: 3px solid transparent !important; border-radius: 12px !important; color: inherit !important; }
.amc-lib .amc-lib__grid button.is-on { border-color: var(--amc-accent) !important; }
/* Carousel arrows and dots on the page, same protection. */
.amc-carousel .amc-carousel__btn { min-height: 0 !important; padding: 0 0 3px !important; width: 40px; height: 40px; border: 1px solid var(--amc-line) !important; border-radius: 50% !important; background: #fff !important; color: var(--amc-ink) !important; font-size: 24px !important; line-height: 1 !important; box-shadow: none !important; }
.amc-carousel .amc-carousel__btn:hover { border-color: var(--amc-ink) !important; }
.amc-carousel .amc-carousel__dots button { min-height: 0 !important; width: 8px; height: 8px; padding: 0 !important; border: 0 !important; border-radius: 999px !important; background: #C9CFCC !important; box-shadow: none !important; }
.amc-carousel .amc-carousel__dots button.is-on { width: 22px; background: var(--amc-ink) !important; }
/* Editor (TinyMCE) toolbar, menus and dialogs: neutral controls, never the theme's green button style. */
.mce-container button, .mce-container button:hover, .mce-container button:focus, .mce-container button:active { background: transparent !important; color: #333 !important; box-shadow: none !important; border-radius: 3px !important; text-transform: none !important; letter-spacing: normal !important; min-height: 0 !important; font-weight: 400 !important; }
.mce-container .mce-btn:hover, .mce-container .mce-btn.mce-active, .mce-container .mce-btn:focus-within { background: #E8ECEA !important; border-color: transparent !important; }
.mce-container .mce-btn .mce-txt { color: #333 !important; font-size: 13px !important; }
.mce-container .mce-ico { color: #333 !important; }
.mce-window .mce-primary, .mce-window .mce-primary button { background: var(--amc-forest) !important; color: #fff !important; border-radius: 6px !important; }
.mce-window .mce-primary .mce-txt { color: #fff !important; }
.mce-window .mce-btn:not(.mce-primary) { border: 1px solid #CFD5D2 !important; border-radius: 6px !important; }
.amc-lib__item { position: relative; }
.amc-lib .amc-lib__pick { width: 100%; }
.amc-lib .amc-lib__del { position: absolute; left: 6px; top: 6px; display: grid !important; place-items: center; width: 30px !important; height: 30px !important; min-height: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 8px !important; background: rgba(255,255,255,.92) !important; color: #A12626 !important; opacity: 0; transition: opacity .15s ease; }
.amc-lib .amc-lib__del svg { width: 16px; height: 16px; }
.amc-lib__item:hover .amc-lib__del, .amc-lib .amc-lib__del:focus { opacity: 1; }
.amc-lib .amc-lib__del:hover { background: #FDECEC !important; }
@media (hover: none) { .amc-lib .amc-lib__del { opacity: 1; } }
/* ---------- Media manager v2 (images + documents, carousel tray, details panel) ---------- */
.amc-lib__box { width: min(1040px, 100%) !important; max-height: calc(100vh - 32px); overflow: hidden; }
.amc-lib .amc-lib__x svg { width: 18px; height: 18px; }
.amc-lib__body { flex: 1; min-height: 0; display: grid; gap: 14px; }
.amc-lib__main { min-height: 0; display: flex; flex-direction: column; gap: 10px; overflow: hidden; }
.amc-lib__up { flex-direction: column; gap: 2px; min-height: 58px !important; }
.amc-lib__up small { font-size: 12px; font-weight: 500; color: var(--amc-muted); }
.amc-lib__grid { overflow-y: auto; align-content: start; }
.amc-lib__msg { padding: 8px 12px; border-radius: 10px; background: #FFF6E5; color: #6B4E0A !important; }
.amc-lib .amc-lib__pick.is-focus { outline: 2px solid var(--amc-gold); outline-offset: 1px; }
.amc-lib__grid--docs { grid-template-columns: 1fr !important; gap: 6px !important; }
.amc-lib .amc-lib__doc { position: relative; display: flex !important; align-items: center; gap: 12px; width: 100%; padding: 10px 40px 10px 10px !important; border: 1.5px solid var(--amc-line) !important; border-radius: 12px !important; background: #fff !important; color: var(--amc-ink) !important; text-align: left; cursor: pointer; aspect-ratio: auto !important; }
.amc-lib .amc-lib__doc.is-on { border-color: var(--amc-accent) !important; background: var(--amc-accent-tint) !important; }
.amc-lib__ext, .amc-lib__docicon { flex: none; display: grid; place-items: center; width: 44px; height: 52px; border-radius: 8px; background: #EEF1EF; color: var(--amc-ink); font-size: 11px; font-weight: 800; letter-spacing: .04em; }
.amc-lib__ext[data-ext="PDF"], .amc-lib__docicon[data-ext="PDF"] { background: #FDECEC; color: #B42318; }
.amc-lib__ext[data-ext^="DOC"], .amc-lib__docicon[data-ext^="DOC"] { background: #E8F0FD; color: #1F5FBF; }
.amc-lib__ext[data-ext^="XLS"], .amc-lib__docicon[data-ext^="XLS"] { background: #E7F2ED; color: #0B6B4B; }
.amc-lib__dt { min-width: 0; display: grid; gap: 2px; }
.amc-lib__dt strong { font-size: 15px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.amc-lib__dt small { font-size: 12.5px; color: var(--amc-muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.amc-lib__doc em { position: absolute; right: 12px; top: 50%; transform: translateY(-50%); display: none; place-items: center; width: 22px; height: 22px; border-radius: 999px; background: var(--amc-accent); color: #fff; font-style: normal; font-size: 12px; font-weight: 700; }
.amc-lib__doc.is-on em { display: grid; }
.amc-lib__side { display: none; }
.amc-lib__none { margin: 0 !important; font-size: 14px; color: var(--amc-muted); }
.amc-lib__preview { display: block; width: 100%; max-height: 180px; object-fit: contain; border-radius: 10px; background: var(--amc-surface); }
.amc-lib__docicon { width: 64px; height: 76px; font-size: 14px; }
.amc-lib__meta { display: grid; grid-template-columns: auto 1fr; gap: 4px 10px; margin: 12px 0 !important; font-size: 13px; }
.amc-lib__meta dt { color: var(--amc-muted); }
.amc-lib__meta dd { margin: 0; color: var(--amc-ink); overflow-wrap: anywhere; }
.amc-lib__field { display: grid; gap: 5px; margin-bottom: 8px; }
.amc-lib__field span { font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--amc-forest); }
.amc-lib__field input { height: 42px; padding: 0 12px; border: 1.5px solid #CFD5D2; border-radius: 10px; font-size: 15px; color: var(--amc-ink); }
.amc-lib .amc-lib__save, .amc-lib .amc-lib__delete { display: inline-flex !important; align-items: center; justify-content: center; gap: 6px; width: 100%; min-height: 40px !important; margin-top: 6px; padding: 0 12px !important; border-radius: 10px !important; font-weight: 700 !important; font-size: 14px !important; cursor: pointer; }
.amc-lib .amc-lib__save { border: 1.5px solid var(--amc-forest) !important; background: #fff !important; color: var(--amc-forest) !important; }
.amc-lib .amc-lib__delete { border: 1.5px solid #E4C6C6 !important; background: #fff !important; color: #A12626 !important; }
.amc-lib .amc-lib__delete svg { width: 16px; height: 16px; }
.amc-lib .amc-lib__delete:hover { background: #FDECEC !important; }
.amc-lib__open { display: block; margin-top: 8px; text-align: center; font-weight: 600; color: var(--amc-accent) !important; }
.amc-lib__tray-wrap { padding: 10px 12px; border-radius: 12px; background: var(--amc-surface); }
.amc-lib__label { margin: 0 0 8px !important; font-size: 12.5px; font-weight: 700; color: var(--amc-forest); }
.amc-lib__tray { list-style: none; margin: 0 !important; padding: 0 0 4px !important; display: flex; gap: 8px; overflow-x: auto; min-height: 86px; }
.amc-lib__tray li { position: relative; flex: 0 0 120px; height: 86px; border-radius: 10px; overflow: hidden; background: #fff; cursor: grab; border: 2px solid #fff; }
.amc-lib__tray li img { width: 100%; height: 100%; object-fit: cover; display: block; pointer-events: none; }
.amc-lib__n { position: absolute; top: 5px; left: 5px; min-width: 20px; height: 20px; padding: 0 5px; border-radius: 999px; background: var(--amc-ink); color: #fff; font-size: 11px; font-weight: 700; display: grid; place-items: center; }
.amc-lib__tray-acts { position: absolute; left: 0; right: 0; bottom: 0; display: flex; justify-content: space-between; padding: 4px; background: linear-gradient(transparent, rgba(0,0,0,.55)); }
.amc-lib .amc-lib__tray-acts button { display: grid !important; place-items: center; width: 26px !important; height: 26px !important; min-height: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 7px !important; background: rgba(255,255,255,.92) !important; color: var(--amc-ink) !important; font-size: 17px !important; line-height: 1 !important; cursor: pointer; }
.amc-lib .amc-lib__tray-acts button[data-rm] { color: #A12626 !important; }
.amc-lib .amc-lib__tray-acts button svg { width: 13px; height: 13px; }
.amc-lib .amc-lib__tray-acts button:disabled { opacity: .35; }
.amc-lib__tray-empty { flex: 1 !important; display: grid; place-items: center; height: 86px; border: 1.5px dashed #C9D2CE !important; background: transparent !important; color: var(--amc-muted); font-size: 13.5px; cursor: default !important; }
.amc-lib__foot { align-items: center; }
.amc-lib__count { margin-right: auto; font-size: 14px; font-weight: 600; color: var(--amc-muted); }
@media (min-width: 782px) {
  .amc-lib__body { grid-template-columns: minmax(0, 1fr) 260px; }
  .amc-lib__side { display: block; overflow-y: auto; padding: 14px; border-radius: 14px; background: var(--amc-surface); }
}
/* Document links in content. */
.amc-prose a.amc-doc { display: inline-flex; align-items: center; gap: 6px; font-weight: 600; }
.amc-prose a.amc-doc::before { content: ""; flex: none; width: 16px; height: 16px; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8l-5-5Z'/%3E%3Cpath d='M14 3v5h5M12 12v6M9 15l3 3 3-3'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8l-5-5Z'/%3E%3Cpath d='M14 3v5h5M12 12v6M9 15l3 3 3-3'/%3E%3C/svg%3E") center / contain no-repeat; }
.mce-container .mce-container-body .mce-btn button { padding: 4px 8px !important; }
/* Steady dialog height (no jumping as images are picked). */
@media (min-width: 782px) { .amc-lib__box { height: min(720px, calc(100vh - 32px)); } .amc-lib--docs .amc-lib__box { height: min(560px, calc(100vh - 32px)); } }
.amc-lib__main { flex: 1; }
/* Editor context bar for carousels and images (Edit carousel / Replace image / Alt text / Remove). */
.mce-tinymce-inline.mce-floatpanel, .mce-inline-toolbar-grp { background: #fff !important; border: 1px solid #CFD5D2 !important; border-radius: 10px !important; box-shadow: 0 10px 24px -12px rgba(18,22,20,.4) !important; padding: 2px !important; }
.mce-tinymce-inline .mce-btn button, .mce-inline-toolbar-grp .mce-btn button { padding: 6px 10px !important; }
.mce-tinymce-inline .mce-btn .mce-txt, .mce-inline-toolbar-grp .mce-btn .mce-txt { font-weight: 600 !important; color: var(--amc-forest) !important; }
.mce-tinymce-inline .mce-btn:hover, .mce-inline-toolbar-grp .mce-btn:hover { background: var(--amc-accent-tint) !important; }
/* Chapter event page + national calendar box (kept apart from the chapter's own events). */
.amc-ch-back { margin: 0 0 14px !important; }
.amc-ch-back a { font-weight: 600; color: var(--amc-accent) !important; text-decoration: none !important; }
.amc-ch-event__title { display: flex; align-items: center; gap: 16px; }
.amc-ch-ev__date--lg { flex: 0 0 64px !important; height: 68px !important; border-radius: 14px !important; }
.amc-ch-ev__date--lg strong { font-size: 26px !important; }
.amc-ch-event__facts { list-style: none; margin: 0 0 18px !important; padding: 0 !important; display: grid; gap: 10px; }
.amc-ch-event__facts li { display: flex; gap: 12px; align-items: flex-start; padding: 12px 14px; border-radius: 14px; background: var(--amc-surface); }
.amc-ch-event__facts li > svg { flex: none; width: 20px; height: 20px; margin-top: 2px; color: var(--amc-accent); }
.amc-ch-event__facts span { display: grid; gap: 2px; }
.amc-ch-event__facts small { font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--amc-muted); }
.amc-ch-event__facts strong { font-size: 16px; color: var(--amc-ink); }
.amc-ch-event__facts em { font-style: normal; font-size: 14px; color: var(--amc-muted); }
.amc-ch-event__acts { margin-bottom: 22px; }
.amc-ch-event__acts .amc-btn svg { width: 16px; height: 16px; }
.amc-ch-national { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 16px; margin-top: 36px; padding: 18px 20px; border-radius: 16px; border: 1.5px dashed #C9D2CE; background: #fff; }
.amc-ch-national__icon { flex: none; display: grid; place-items: center; width: 44px; height: 44px; border-radius: 12px; background: var(--amc-surface); color: var(--amc-ink); }
.amc-ch-national__icon svg { width: 22px; height: 22px; }
.amc-ch-national > div { flex: 1 1 260px; min-width: 0; }
.amc-ch-national strong { display: block; font-size: 16px; color: var(--amc-ink); }
.amc-ch-national p { margin: 2px 0 0 !important; font-size: 14px; color: var(--amc-muted); max-width: none; }
@media (min-width: 640px) { .amc-ch-event__facts { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
/* Online events: form section + event page card. */
.amc-ev-online { margin-top: 16px; padding: 14px 16px; border-radius: 14px; border: 1.5px solid var(--amc-line); background: #FAFBFA; }
.amc-ev-online.is-on { border-color: rgba(11,107,75,.35); background: var(--amc-accent-tint); }
.amc-ev-online__toggle { margin-top: 0 !important; align-items: flex-start !important; }
.amc-ev-online__toggle span { display: grid; gap: 2px; }
.amc-ev-online__toggle small { font-size: 13px; font-weight: 400; color: var(--amc-muted); }
.amc-ev-online__body { display: none; margin-top: 10px; }
.amc-ev-online.is-on .amc-ev-online__body { display: block; }
.amc-me-field input[type="url"] { width: 100%; min-height: 50px; padding: 0 14px; border: 1.5px solid #CFD5D2; border-radius: 12px; font-size: 16px; background: #fff; }
.amc-ch-event__online { grid-column: 1 / -1; background: var(--amc-accent-tint) !important; }
.amc-ch-event__join { margin-top: 10px; justify-self: start; min-height: 42px !important; }
.amc-ch-event__details { margin-top: 8px; padding: 10px 12px; border-radius: 10px; background: #fff; font-size: 14px !important; color: var(--amc-text) !important; line-height: 1.6; }
/* Rich text: three heading levels (Heading 1-3 = h2-h4) and the link dialog. */
.amc-ch .amc-prose h2, .amc-mq-about .amc-prose h2, .amc-cx-visit .amc-prose h2 { font-size: clamp(24px, 4vw, 30px) !important; line-height: 1.2 !important; margin: 30px 0 12px !important; text-transform: none !important; }
.amc-ch .amc-prose h3, .amc-mq-about .amc-prose h3 { font-size: clamp(20px, 3vw, 23px) !important; line-height: 1.25 !important; margin: 24px 0 10px !important; text-transform: none !important; }
.amc-ch .amc-prose h4, .amc-mq-about .amc-prose h4 { font-size: 15px !important; font-weight: 800; letter-spacing: .06em; text-transform: uppercase !important; color: var(--amc-forest); margin: 22px 0 8px !important; }
.amc-link__box { width: min(640px, 100%) !important; height: auto !important; max-height: calc(100vh - 32px); overflow-y: auto; }
.amc-link__tabs { display: flex; gap: 4px; padding: 4px; border-radius: 12px; background: var(--amc-surface); }
.amc-lib .amc-link__tabs button { flex: 1; min-height: 40px !important; padding: 0 12px !important; border: 0 !important; border-radius: 9px !important; background: transparent !important; color: var(--amc-muted) !important; font-weight: 700 !important; font-size: 14.5px !important; cursor: pointer; }
.amc-lib .amc-link__tabs button.is-on { background: #fff !important; color: var(--amc-ink) !important; box-shadow: 0 2px 8px -4px rgba(0,0,0,.25) !important; }
.amc-link .amc-lib__field input { width: 100%; }
.amc-link__check { display: inline-flex; align-items: center; gap: 8px; font-size: 14.5px; font-weight: 600; cursor: pointer; }
.amc-link__check input { width: 18px; height: 18px; accent-color: var(--amc-forest); }
.amc-link__tools { display: flex; gap: 8px; margin-bottom: 10px; }
.amc-link__tools input[type="search"] { flex: 1; min-width: 0; height: 42px; padding: 0 12px; border: 1.5px solid #CFD5D2; border-radius: 10px; font-size: 15px; }
.amc-link__up { position: relative; flex: none; display: inline-flex; align-items: center; height: 42px; padding: 0 14px; border: 1.5px dashed #C9D2CE; border-radius: 10px; font-weight: 700; font-size: 14px; color: var(--amc-forest); cursor: pointer; }
.amc-link__up:hover { border-color: var(--amc-forest); background: var(--amc-accent-tint); }
.amc-link__up input { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
.amc-link__docs { max-height: 300px; overflow-y: auto; }
.amc-lib .amc-link__remove { margin-right: auto; color: #A12626 !important; border-color: #E4C6C6 !important; }
/* YouTube videos in rich text (click to load the no-cookie player). */
.amc-prose figure.amc-video { position: relative; margin: 22px 0 !important; aspect-ratio: 16 / 9; border-radius: var(--amc-radius); overflow: hidden; background: #121614; }
.amc-prose figure.amc-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.amc-prose figure.amc-video > a { display: grid; place-items: center; height: 100%; color: #fff !important; font-weight: 700; }
.amc-prose .amc-video__play { position: absolute; inset: 0; width: 100%; height: 100%; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: #121614 center / cover no-repeat !important; cursor: pointer; display: grid !important; place-items: center; min-height: 0 !important; }
.amc-prose .amc-video__play::after { content: ""; position: absolute; inset: 0; background: linear-gradient(transparent 55%, rgba(0,0,0,.6)); }
.amc-video__icon { position: relative; z-index: 1; width: 72px; height: 50px; border-radius: 14px; background: #E62117 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 7v10l8-5z' fill='white'/%3E%3C/svg%3E") center / 30px no-repeat; transition: transform .18s ease; }
.amc-prose .amc-video__play:hover .amc-video__icon { transform: scale(1.08); }
.amc-video__title { position: absolute; z-index: 1; left: 16px; right: 16px; bottom: 12px; color: #fff; font-weight: 700; font-size: 16px; text-align: left; text-shadow: 0 1px 6px rgba(0,0,0,.5); }
/* Editor pop-ups (TinyMCE windows): plain inputs that fit inside the dialog. */
.mce-window input.mce-textbox, .mce-window textarea.mce-textbox { box-sizing: border-box !important; height: 30px !important; min-height: 0 !important; margin: 0 !important; padding: 0 6px !important; border: 1px solid #CFD5D2 !important; border-radius: 4px !important; font-size: 14px !important; line-height: 28px !important; background: #fff !important; box-shadow: none !important; color: #121614 !important; }
.mce-window input.mce-textbox:focus { border-color: var(--amc-accent) !important; }
.mce-window .mce-label { white-space: normal !important; font-size: 13px !important; color: #5A625E !important; }
.mce-window .mce-listbox button { height: 30px !important; }
/* Media/link pickers always open above whatever opened them (TinyMCE dialogs use z-index ~65536+). */
.amc-lib { z-index: 2147483000 !important; }
/* Article form: icon picker + shown switch; Manage articles list; photo credits. */
.amc-icon-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(78px, 1fr)); gap: 8px; }
.amc-icon-pick { position: relative; display: grid; justify-items: center; gap: 4px; padding: 10px 4px 8px; border: 1.5px solid var(--amc-line); border-radius: 12px; background: #fff; cursor: pointer; }
.amc-icon-pick input { position: absolute; opacity: 0; pointer-events: none; }
.amc-icon-pick span { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 10px; background: var(--amc-surface); color: var(--amc-ink); }
.amc-icon-pick span svg { width: 20px; height: 20px; }
.amc-icon-pick small { font-size: 11.5px; color: var(--amc-muted); }
.amc-icon-pick:hover { border-color: var(--amc-ink); }
.amc-icon-pick:has(input:checked) { border-color: var(--amc-accent); background: var(--amc-accent-tint); }
.amc-icon-pick:has(input:checked) span { background: var(--amc-forest); color: #fff; }
.amc-icon-pick:has(input:focus-visible) { outline: 3px solid var(--amc-accent); outline-offset: 2px; }
.amc-shown { display: flex !important; align-items: flex-start !important; margin-top: 16px !important; padding: 12px 14px; border-radius: 12px; background: var(--amc-surface); }
.amc-shown span { display: grid; gap: 2px; }
.amc-shown small { font-weight: 400; font-size: 13px; color: var(--amc-muted); }
.amc-arts { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; gap: 8px; }
.amc-art { display: flex; align-items: center; gap: 12px; padding: 10px 12px; border: 1.5px solid var(--amc-line); border-radius: 14px; background: #fff; }
.amc-art.is-drag { opacity: .5; }
.amc-art.is-hidden { background: var(--amc-surface); }
.amc-art.is-hidden .amc-art__title strong { color: var(--amc-muted); text-decoration: line-through; text-decoration-color: rgba(0,0,0,.25); }
.amc-art__grip { cursor: grab; color: #A3AAA6; font-size: 14px; letter-spacing: -2px; user-select: none; }
.amc-art__icon { flex: none; display: grid; place-items: center; width: 38px; height: 38px; border-radius: 10px; background: var(--amc-surface); color: var(--amc-ink); }
.amc-art__icon svg { width: 19px; height: 19px; }
.amc-art__title { flex: 1; min-width: 0; display: grid; gap: 1px; }
.amc-art__title strong { font-size: 15.5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.amc-art__title small { font-size: 12.5px; color: var(--amc-muted); }
.amc-art__show { display: inline-flex; align-items: center; gap: 6px; font-size: 13.5px; font-weight: 600; cursor: pointer; }
.amc-art__show input { width: 18px; height: 18px; accent-color: var(--amc-forest); }
.amc-art__move { display: inline-flex; gap: 4px; }
.amc-me .amc-art__move button { display: grid !important; place-items: center; width: 32px !important; height: 32px !important; min-height: 0 !important; padding: 0 !important; border: 1px solid var(--amc-line) !important; border-radius: 8px !important; background: #fff !important; color: var(--amc-ink) !important; font-size: 15px !important; cursor: pointer; box-shadow: none !important; }
.amc-me .amc-art__move button:hover { border-color: var(--amc-ink) !important; }
.amc-art__edit { font-weight: 700; color: var(--amc-accent) !important; text-decoration: none !important; padding: 0 4px; }
.amc-arts__new { display: block; text-align: center; text-decoration: none !important; }
.amc-ch-nav__acts { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.amc-ch-nav__acts .amc-me-chip { margin: 0 !important; }
.amc-ch-nav > .amc-ch-nav__acts > a.amc-me-chip, .amc-ch-nav__acts a.amc-me-chip { display: inline-flex !important; width: auto !important; padding: 8px 14px !important; border-radius: 999px !important; background: var(--amc-ink) !important; border: 1px solid var(--amc-ink) !important; color: #fff !important; font-size: 13px; font-weight: 700; }
.amc-ch-nav__acts a.amc-me-chip:not(.amc-me-chip--add) { background: #fff !important; color: var(--amc-ink) !important; border-color: #CFD5D2 !important; }
.amc-ch-credits { margin-top: 16px; font-size: 13px; color: var(--amc-muted); }
.amc-ch-credits summary { cursor: pointer; font-weight: 600; }
.amc-ch-credits ul { margin: 8px 0 0 !important; padding-left: 18px !important; display: grid; gap: 4px; }
@media (max-width: 639px) { .amc-art { flex-wrap: wrap; } .amc-art__title { flex-basis: calc(100% - 80px); } }
/* Article visibility: Everyone / Members only / Hidden. */
.amc-vis { display: grid; gap: 8px; }
.amc-vis-opt { display: flex; gap: 10px; align-items: flex-start; padding: 10px 12px; border: 1.5px solid var(--amc-line); border-radius: 12px; background: #fff; cursor: pointer; }
.amc-vis-opt input { width: 18px; height: 18px; margin-top: 2px; accent-color: var(--amc-forest); }
.amc-vis-opt span { display: grid; gap: 1px; }
.amc-vis-opt small { font-size: 13px; color: var(--amc-muted); }
.amc-vis-opt:has(input:checked) { border-color: var(--amc-accent); background: var(--amc-accent-tint); }
@media (min-width: 640px) { .amc-vis { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.amc-art__vis select { height: 34px; padding: 0 30px 0 10px; border: 1.5px solid #CFD5D2; border-radius: 8px; font-size: 13.5px; font-weight: 600; background: #fff; color: var(--amc-ink); }
.amc-art.is-members .amc-art__vis select { border-color: #E8C35A; background: #FFF8E6; }
.amc-art.is-hidden .amc-art__vis select { color: var(--amc-muted); }
.amc-ch-nav__lock { display: inline-grid; place-items: center; width: 18px; height: 18px; margin-left: 6px; border-radius: 5px; background: #FFF4D6; color: var(--amc-gold-ink); vertical-align: -3px; }
.amc-ch-nav__lock svg { width: 11px; height: 11px; }
.amc-ch-nav a[aria-current="page"] .amc-ch-nav__lock { background: rgba(255,255,255,.18); color: var(--amc-gold); }
.amc-ch-locked { display: grid; justify-items: center; gap: 10px; padding: 50px 20px !important; text-align: center; }
.amc-ch-locked__icon { display: grid; place-items: center; width: 56px; height: 56px; border-radius: 16px; background: #FFF4D6; color: var(--amc-gold-ink); }
.amc-ch-locked__icon svg { width: 26px; height: 26px; }
.amc-ch-locked h1 { margin: 0 !important; font-size: 28px !important; text-transform: none !important; }
.amc-ch-locked p { margin: 0 0 6px !important; color: var(--amc-muted); max-width: 44ch; }
/* Mosque page links bar: the chapter link stands out in the site's button green. */
.amc-cx .amc-subnav a.amc-subnav__chapter { gap: 6px; background: var(--amc-accent) !important; color: #fff !important; }
.amc-cx .amc-subnav a.amc-subnav__chapter svg { width: 15px; height: 15px; }
.amc-cx .amc-subnav a.amc-subnav__chapter:hover { background: var(--amc-accent-hover) !important; }
/* In-page links (Contact, Events, Photos, Jumu'ah, Visit…) stop just below the sticky header + links bar. */
.amc-cx [id], .amc-ch [id] { scroll-margin-top: calc(var(--amc-header-h) + var(--amc-adminbar) + 72px); }
.amc-cx #prayer-times { scroll-margin-top: calc(var(--amc-header-h) + var(--amc-adminbar) + 72px); }
.amc-ch #events, .amc-ch #photos, .amc-ch #mosques, .amc-ch #contact, .amc-cx #visit, .amc-cx #contact, .amc-cx #jumuah, .amc-cx #about { scroll-margin-top: calc(var(--amc-header-h) + var(--amc-adminbar) + 72px); }
/* Chapter events: List | Month switch and month calendar (phones: list of days with events). */
.amc-ch-evhead { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.amc-ch-evtabs { display: inline-flex; gap: 4px; padding: 4px; border-radius: 12px; background: var(--amc-surface); }
.amc-ch-evtabs a { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; padding: 0 14px; border-radius: 9px; font-size: 14px; font-weight: 700; color: var(--amc-muted) !important; text-decoration: none !important; }
.amc-ch-evtabs a svg { width: 15px; height: 15px; }
.amc-ch-evtabs a[aria-current="page"] { background: #fff; color: var(--amc-ink) !important; box-shadow: 0 2px 8px -4px rgba(0,0,0,.25); }
.amc-cal__bar { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; }
.amc-cal__bar h2 { margin: 0 !important; min-width: 0; font-size: 22px !important; text-transform: none !important; }
.amc-cal__nav { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 10px; border: 1px solid var(--amc-line); background: #fff; color: var(--amc-ink) !important; font-size: 22px; line-height: 1; text-decoration: none !important; }
.amc-cal__nav:hover { border-color: var(--amc-ink); }
.amc-cal__today { margin-left: auto; font-size: 14px; font-weight: 700; color: var(--amc-accent) !important; text-decoration: none !important; }
.amc-cal__grid { border: 1px solid var(--amc-line); border-radius: 14px; overflow: hidden; background: #fff; }
.amc-cal__dow { display: none; }
.amc-cal__days { display: grid; }
.amc-cal__day { display: none; padding: 10px 12px; border-top: 1px solid var(--amc-line); }
.amc-cal__day.has-events:not(.is-out) { display: grid; grid-template-columns: 52px 1fr; gap: 4px 10px; align-items: start; }
.amc-cal__day.has-events:not(.is-out) > a { grid-column: 2; }
.amc-cal__days > .amc-cal__day.has-events:not(.is-out):first-of-type { border-top: 0; }
.amc-cal__num { grid-row: span 9; display: grid; justify-items: center; align-content: start; width: 46px; padding: 4px 0; border-radius: 10px; background: #1F2422; color: #fff; font-size: 18px; font-weight: 800; line-height: 1.1; }
.amc-cal__wd { font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--amc-mint); }
.amc-cal__ev { display: block; padding: 6px 10px; border-radius: 8px; background: var(--amc-accent-tint); color: var(--amc-forest) !important; font-size: 14px; font-weight: 600; line-height: 1.35; text-decoration: none !important; }
.amc-cal__ev b { font-weight: 800; }
.amc-cal__ev:hover { background: var(--amc-forest); color: #fff !important; }
.amc-cal__ev.is-allday { background: #FFF4D6; color: #5C4A12 !important; }
.amc-cal__ev.is-cont { opacity: .75; }
.amc-cal__none { margin-top: 12px !important; }
@media (min-width: 782px) {
  .amc-cal__dow { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); background: var(--amc-surface); border-bottom: 1px solid var(--amc-line); }
  .amc-cal__dow span { padding: 8px 10px; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--amc-muted); }
  .amc-cal__days { grid-template-columns: repeat(7, minmax(0, 1fr)); }
  .amc-cal__day, .amc-cal__day.has-events:not(.is-out) { display: flex; flex-direction: column; gap: 4px; min-height: 108px; padding: 6px; border-top: 0; border-right: 1px solid var(--amc-line); border-bottom: 1px solid var(--amc-line); }
  .amc-cal__day:nth-child(7n) { border-right: 0; }
  .amc-cal__day.is-out { background: #FAFBFA; }
  .amc-cal__day.is-out .amc-cal__num, .amc-cal__day.is-out .amc-cal__ev { opacity: .45; }
  .amc-cal__num { display: block; width: auto; padding: 2px 4px; background: transparent; color: var(--amc-ink); font-size: 14px; font-weight: 700; }
  .amc-cal__wd { display: none; }
  .amc-cal__day.is-today .amc-cal__num { display: inline-grid; place-items: center; width: 28px; height: 28px; padding: 0; border-radius: 999px; background: var(--amc-forest); color: #fff; }
  .amc-cal__ev { padding: 4px 6px; font-size: 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
}
.amc-cal__grid, .amc-cal__days { min-width: 0; }
.amc-cal__day { min-width: 0; overflow: hidden; }
.amc-cal__ev { max-width: 100%; box-sizing: border-box; }
/* FAQ +/− drawn with lines (always centred; text glyphs sat low). */
.amc-faq summary::after { content: "" !important; font-size: 0 !important; background: linear-gradient(var(--amc-accent), var(--amc-accent)) center / 12px 2px no-repeat, linear-gradient(var(--amc-accent), var(--amc-accent)) center / 2px 12px no-repeat, var(--amc-accent-tint) !important; transition: background-size .18s ease; }
.amc-faq details[open] summary::after { content: "" !important; background: linear-gradient(var(--amc-accent), var(--amc-accent)) center / 12px 2px no-repeat, linear-gradient(var(--amc-accent), var(--amc-accent)) center / 2px 0 no-repeat, var(--amc-accent-tint) !important; }
/* Locked articles in the side menu. */
.amc-ch-nav__label { display: grid; gap: 2px; }
.amc-ch-nav__locknote { display: inline-flex; align-items: center; gap: 4px; width: max-content; padding: 1px 7px; border-radius: 999px; background: #FFF4D6; color: #6B4E0A; font-size: 11px; font-weight: 700; letter-spacing: .02em; }
.amc-ch-nav__locknote svg { width: 10px; height: 10px; }
.amc-ch-nav__locknote.is-open { background: var(--amc-accent-tint); color: var(--amc-forest); }
.amc-ch-nav a.is-locked .amc-ch-nav__label { color: var(--amc-muted); }
.amc-ch-nav a.is-locked .amc-ch-nav__ico { opacity: .6; }
.amc-ch-nav a[aria-current="page"] .amc-ch-nav__locknote { background: rgba(255,255,255,.16); color: #fff; }
.amc-ch-locked .amc-kicker { margin: 4px 0 -4px !important; }
.amc-art.is-amla .amc-art__vis select { border-color: #1F5FBF; background: #EEF3FC; }
@media (min-width: 640px) { .amc-vis { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.amc-ch-nav a.is-locked[aria-current="page"] .amc-ch-nav__label { color: #fff; } .amc-ch-nav a.is-locked[aria-current="page"] .amc-ch-nav__ico { opacity: 1; }
.amc-ch-nav__label { display: flex; flex-wrap: wrap; align-items: center; gap: 2px 8px; }
.amc-ch-nav__locknote.is-icon { display: inline-grid; place-items: center; width: 20px; height: 20px; padding: 0; }
.amc-ch-nav__locknote.is-icon svg { width: 11px; height: 11px; }
/* Mosque editor: Visitor questions (FAQ) rows. */
.amc-faq-rows { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; gap: 10px; }
.amc-faq-row { display: flex; gap: 10px; align-items: flex-start; padding: 12px; border: 1.5px solid var(--amc-line); border-radius: 14px; background: #FAFBFA; }
.amc-faq-row.is-drag { opacity: .5; }
.amc-faq-row .amc-art__grip { margin-top: 30px; cursor: grab; }
.amc-faq-row__fields { flex: 1; min-width: 0; display: grid; gap: 8px; }
.amc-faq-row__fields textarea { width: 100%; padding: 10px 14px; border: 1.5px solid #CFD5D2; border-radius: 12px; font-size: 15px; line-height: 1.5; color: var(--amc-ink); background: #fff; resize: vertical; box-sizing: border-box; }
.amc-faq-row__acts { display: grid; gap: 4px; margin-top: 26px; }
.amc-me .amc-faq-row__acts button { display: grid !important; place-items: center; width: 32px !important; height: 32px !important; min-height: 0 !important; padding: 0 !important; border: 1px solid var(--amc-line) !important; border-radius: 8px !important; background: #fff !important; color: var(--amc-ink) !important; font-size: 15px !important; cursor: pointer; box-shadow: none !important; }
.amc-me .amc-faq-row__acts button.is-danger { color: #A12626 !important; border-color: #E4C6C6 !important; }
.amc-faq-reset { margin-top: 12px !important; font-weight: 500; font-size: 14px; }
.amc-me-chip--faq { margin: 10px 0 0 auto; }
/* ---------- My chapter (cookie): chapter button, Chapters tile, home hero row, picker dialog ---------- */
.amc-mych-set { display: inline-flex; align-items: center; gap: 8px; min-height: var(--amc-tap); padding: 0 18px; border-radius: 999px; border: 1.5px solid rgba(255,255,255,.4); background: rgba(255,255,255,.06); color: #fff; font: inherit; font-size: 15px; font-weight: 700; cursor: pointer; }
.amc-mych-set svg { width: 17px; height: 17px; color: var(--amc-gold); }
button.amc-mych-set:hover { border-color: #fff; background: rgba(255,255,255,.12); }
.amc-mych-set.is-on { padding: 0 6px 0 16px; border-color: var(--amc-gold); background: rgba(224,178,60,.14); cursor: default; }
.amc-mych-set__label { display: inline-flex; align-items: center; gap: 8px; }
.amc-mych-set.is-on button { min-height: 32px !important; padding: 0 10px !important; border: 0 !important; border-radius: 999px !important; background: rgba(255,255,255,.12) !important; color: #fff !important; font-size: 13px !important; font-weight: 600 !important; cursor: pointer; box-shadow: none !important; }
.amc-mych-set.is-on button:hover { background: rgba(255,255,255,.22) !important; }
.amc-mych-cta { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 16px; margin-bottom: 22px; padding: 16px 18px; border-radius: 16px; border: 1.5px dashed #C9D2CE; background: #fff; }
.amc-mych-cta__icon { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 12px; background: #FFF4D6; color: var(--amc-gold-ink); }
.amc-mych-cta__icon svg { width: 22px; height: 22px; }
.amc-mych-cta > div { flex: 1 1 240px; }
.amc-mych-cta p { margin: 2px 0 0 !important; font-size: 14px; color: var(--amc-muted); }
.amc-mych-tile { display: grid; grid-template-columns: 1fr; margin-bottom: 26px; border-radius: 18px; overflow: hidden; border: 2px solid var(--amc-gold); background: #fff; box-shadow: 0 18px 40px -28px rgba(15,59,44,.5); }
.amc-mych-tile__img { min-height: 150px; background: var(--amc-surface) center / cover no-repeat; }
.amc-mych-tile__body { padding: 16px 18px 6px; }
.amc-mych-tile__kicker { display: inline-flex; align-items: center; gap: 6px; margin: 0 0 4px !important; font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: var(--amc-gold-ink); }
.amc-mych-tile__kicker svg { width: 15px; height: 15px; color: var(--amc-gold); }
.amc-mych-tile h2 { margin: 0 0 8px !important; font-size: 26px !important; text-transform: none !important; }
.amc-mych-tile h2 a { color: var(--amc-ink) !important; text-decoration: none !important; }
.amc-mych-tile ul { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; gap: 6px; font-size: 14.5px; }
.amc-mych-tile li { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; }
.amc-mych-tile li svg { width: 16px; height: 16px; color: var(--amc-accent); }
.amc-mych-tile li a { font-weight: 600; color: var(--amc-ink) !important; }
.amc-mych-tile li em { font-style: normal; color: var(--amc-muted); }
.amc-mych-tile__acts { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; padding: 12px 18px 16px; }
.amc-mych-tile__acts button { min-height: 0 !important; padding: 4px 2px !important; border: 0 !important; background: transparent !important; color: var(--amc-accent) !important; font: inherit; font-size: 14.5px !important; font-weight: 700 !important; cursor: pointer; box-shadow: none !important; text-decoration: underline; text-underline-offset: 3px; }
.amc-mych-tile__acts button[data-amc-mych="clear"] { color: var(--amc-muted) !important; }
@media (min-width: 782px) {
  .amc-mych-tile { grid-template-columns: 220px minmax(0, 1fr) auto; align-items: center; }
  .amc-mych-tile__img { height: 100%; min-height: 140px; }
  .amc-mych-tile__body { padding: 16px 20px; }
  .amc-mych-tile__acts { padding: 16px 22px; }
}
/* Home hero panel. */
.amc-hp__mych { position: relative; align-items: center; }
.amc-hp__mych-link { flex: 1; min-width: 0; display: flex; align-items: center; gap: 14px; color: #fff !important; text-decoration: none !important; }
.amc-hp__mych .amc-hp__date--icon svg { color: var(--amc-gold); }
.amc-hp__mych .amc-hp__label { color: var(--amc-gold); }
.amc-hp__mych-acts { display: flex; gap: 4px; }
.amc-hp__mych-acts button { min-height: 0 !important; padding: 5px 9px !important; border: 1px solid rgba(255,255,255,.2) !important; border-radius: 999px !important; background: transparent !important; color: #D7DCD9 !important; font: inherit; font-size: 12px !important; font-weight: 600 !important; line-height: 1 !important; cursor: pointer; box-shadow: none !important; }
.amc-hp__mych-acts button:hover { border-color: #fff !important; color: #fff !important; }
.amc-hp__mych--empty { width: 100%; display: flex; gap: 14px; text-align: left; font: inherit; color: #fff !important; background: rgba(201,162,39,.07) !important; border: 0 !important; border-bottom: 1px solid rgba(255,255,255,.1) !important; border-radius: 0 !important; min-height: 0 !important; cursor: pointer; box-shadow: none !important; transition: background .15s; }
.amc-hp__mych--empty:hover, .amc-hp__mych--empty:focus-visible { background: rgba(201,162,39,.14) !important; }
.amc-hp__mych--empty .amc-hp__date--icon { border: 1px dashed rgba(201,162,39,.6); background: transparent; }
.amc-hp__mych--empty .amc-hp__text { flex: 1; min-width: 0; }
.amc-hp__mych-go { flex: none; padding: 7px 14px; border-radius: 999px; background: var(--amc-gold); color: #1B1B1B; font-size: 13px; font-weight: 700; line-height: 1; }
/* Picker dialog. */
.amc-mych-dlg { position: fixed; inset: 0; z-index: 100200; display: grid; place-items: center; padding: 16px; background: rgba(14,17,16,.55); }
.amc-mych-dlg__box { width: min(520px, 100%); max-height: calc(100vh - 32px); display: flex; flex-direction: column; gap: 12px; padding: 18px; border-radius: 18px; background: #fff; box-shadow: 0 30px 70px -30px rgba(0,0,0,.6); }
.amc-mych-dlg__head { display: flex; align-items: center; justify-content: space-between; font-size: 18px; }
.amc-mych-dlg__head button { display: grid !important; place-items: center; width: 38px !important; height: 38px !important; min-height: 0 !important; padding: 0 !important; border: 1px solid var(--amc-line) !important; border-radius: 10px !important; background: #fff !important; color: var(--amc-ink) !important; font-size: 22px !important; line-height: 1 !important; cursor: pointer; box-shadow: none !important; }
.amc-mych-dlg__body { min-height: 0; display: flex; flex-direction: column; gap: 10px; overflow: hidden; }
.amc-mych-dlg__q { height: 46px; padding: 0 14px; border: 1.5px solid #CFD5D2; border-radius: 12px; font-size: 16px; }
.amc-mych-dlg__list { list-style: none; margin: 0 !important; padding: 0 !important; overflow-y: auto; max-height: 52vh; display: grid; gap: 4px; }
.amc-mych-dlg__list button { display: grid !important; gap: 1px; width: 100%; min-height: 0 !important; padding: 10px 12px !important; border: 1px solid transparent !important; border-radius: 10px !important; background: transparent !important; color: var(--amc-ink) !important; text-align: left; cursor: pointer; box-shadow: none !important; font: inherit; text-transform: none !important; letter-spacing: normal !important; }
.amc-mych-dlg__list button:hover { background: var(--amc-surface) !important; }
.amc-mych-dlg__list button.is-on { border-color: var(--amc-gold) !important; background: #FFF8E6 !important; }
.amc-mych-dlg__list strong { font-size: 15.5px; }
.amc-mych-dlg__list small { font-size: 13px; color: var(--amc-muted); }
.amc-mych-dlg__none { padding: 20px; text-align: center; color: var(--amc-muted); }
.amc-mych-dlg__ask { margin: 0 !important; font-weight: 700; }
.amc-mych-dlg__mosques { display: grid; gap: 8px; }
.amc-mych-dlg__mosques label { display: flex; gap: 10px; align-items: flex-start; padding: 12px; border: 1.5px solid var(--amc-line); border-radius: 12px; cursor: pointer; }
.amc-mych-dlg__mosques input { width: 18px; height: 18px; margin-top: 2px; accent-color: var(--amc-forest); }
.amc-mych-dlg__mosques label:has(input:checked) { border-color: var(--amc-accent); background: var(--amc-accent-tint); }
.amc-mych-dlg__mosques span { display: grid; }
.amc-mych-dlg__mosques small { color: var(--amc-muted); font-size: 13px; }
.amc-mych-dlg__foot { display: flex; justify-content: flex-end; gap: 8px; margin-top: 4px; }
.amc-mych-dlg__foot button { min-height: 44px !important; padding: 0 18px !important; border-radius: 12px !important; font: inherit; font-weight: 700 !important; font-size: 15px !important; cursor: pointer; box-shadow: none !important; border: 1.5px solid #CFD5D2 !important; background: #fff !important; color: var(--amc-ink) !important; }
.amc-mych-dlg__foot .amc-mych-dlg__save { border: 0 !important; background: var(--amc-forest) !important; color: #fff !important; }
.amc-mych-dlg__foot .amc-mych-dlg__save:disabled { opacity: .4; cursor: not-allowed; }
.amc-mych-dlg__note { margin: 0 !important; font-size: 12.5px; color: var(--amc-muted); }

/* Home hero card with a chosen chapter: "{Chapter}" / "National" tabs */
.amc-hp__tabs { display: flex; align-items: center; gap: 10px; padding: 12px 14px; border-bottom: 1px solid rgba(255,255,255,.1); }
.amc-hp__seg { flex: 1 1 auto; min-width: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 3px; padding: 3px; border-radius: 999px; background: rgba(255,255,255,.08); box-shadow: inset 0 0 0 1px rgba(255,255,255,.1); }
.amc-hp__seg [role="tab"] { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-width: 0; min-height: 36px !important; padding: 7px 12px !important; border: 0 !important; border-radius: 999px !important; background: transparent !important; color: #C9CFCC !important; font: inherit; font-size: 14px !important; font-weight: 700 !important; line-height: 1.2 !important; cursor: pointer; box-shadow: none !important; transition: background .15s, color .15s; }
.amc-hp__seg [role="tab"] span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.amc-hp__seg [role="tab"] svg { flex: none; width: 14px; height: 14px; color: var(--amc-gold); }
.amc-hp__seg [role="tab"]:hover { color: #fff !important; background: rgba(255,255,255,.06) !important; }
.amc-hp__seg [role="tab"][aria-selected="true"] { background: #fff !important; color: #141716 !important; box-shadow: 0 2px 8px rgba(0,0,0,.25) !important; }
.amc-hp__seg [role="tab"][aria-selected="true"] svg { color: #B8901C; }
.amc-hp__seg [role="tab"]:focus-visible { outline: 2px solid var(--amc-gold); outline-offset: 1px; }
.amc-hp__pane[data-amc-hp-pane="mine"] { display: flex; flex-direction: column; }
.amc-hp__go { margin-top: auto; display: flex; align-items: center; gap: 8px; padding: 6px 18px 16px; }
.amc-hp__go .amc-hp__mych-acts { flex: none; }
.amc-hp__go .amc-hp__mych-acts button { padding: 9px 12px !important; font-size: 13px !important; }
.amc-hp__go a { flex: 1; min-width: 0; display: flex; align-items: center; justify-content: center; gap: 8px; padding: 11px 16px; border-radius: 999px; border: 1px solid rgba(201,162,39,.6); color: var(--amc-gold) !important; font-size: 14px; font-weight: 700; text-decoration: none !important; transition: background .15s, color .15s; }
.amc-hp__go a svg { width: 16px; height: 16px; }
.amc-hp__go a:hover { background: var(--amc-gold); color: #141716 !important; }
.amc-hp__pane > .amc-hp__search { margin: 0 !important; border-top: 1px solid rgba(255,255,255,.1); padding: 12px 18px 14px !important; }
.amc-hp__pane > .amc-hp__search .amc-hp__heading { font-size: 14px !important; margin-bottom: 8px !important; }
.amc-hp__pane > .amc-hp__search .amc-hp__sub { display: none; }
.amc-hp__panes { display: grid; }
.amc-hp__pane { grid-area: 1 / 1; min-width: 0; }
.amc-hp__pane.is-off { visibility: hidden; pointer-events: none; }
.amc-hp__pane > .amc-hp__row:first-child, .amc-hp__pane > .amc-hp__events:first-child .amc-hp__events-head { border-top: 0; }
.amc-hp--tabs .amc-hp__events-head a { color: var(--amc-gold) !important; font-size: 13px; font-weight: 700; text-decoration: none !important; }
.amc-hp__pt { list-style: none; display: grid; grid-auto-columns: minmax(0, 1fr); grid-auto-flow: column; gap: 4px; margin: 6px 0 0 !important; padding: 0 12px 12px !important; }
.amc-hp__pt li { display: flex; flex-direction: column; align-items: center; gap: 3px; padding: 8px 2px; border-radius: 10px; background: rgba(255,255,255,.06); text-align: center; }
.amc-hp__pt span { font-size: 11px; font-weight: 600; letter-spacing: .02em; color: #A9B0AC; }
.amc-hp__pt strong { font-size: 15px; font-weight: 700; color: #fff; font-variant-numeric: tabular-nums; }
.amc-hp__pt li.is-next { background: var(--amc-gold); }
.amc-hp__pt li.is-next span, .amc-hp__pt li.is-next strong { color: #1B1B1B; }
.amc-hp__pt li.is-jumuah { background: transparent; box-shadow: inset 0 0 0 1px rgba(201,162,39,.55); }
.amc-hp__pt li.is-jumuah span { color: var(--amc-gold); }
.amc-hp__empty { margin: 0 !important; padding: 10px 18px 16px; font-size: 13.5px; color: #A9B0AC; }
.amc-hp__empty a { color: #fff !important; font-weight: 600; }
@media (min-width: 768px) {
  .amc-hp__tabs { padding: 12px 20px 12px 16px; }
  .amc-hp__go { padding: 6px 20px 18px; }
  .amc-hp__pt { padding: 0 20px 14px !important; gap: 6px; }
  .amc-hp__pt strong { font-size: 16px; }
}

/* "Other" contact email: type the name, the @ahmadiyya.us part is fixed. */
.amc-em-prefix { display: flex; align-items: stretch; width: 100%; height: 48px; border: 1.5px solid #CFD5D2; border-radius: 12px; background: #fff; overflow: hidden; box-sizing: border-box; text-transform: none !important; letter-spacing: normal !important; }
.amc-em-prefix[hidden] { display: none !important; }
.amc-em-prefix:focus-within { border-color: var(--amc-accent); box-shadow: 0 0 0 4px rgba(11,107,75,.12); }
.amc-em-prefix input, .amc-ct-f .amc-em-prefix input, .amc-me-field .amc-em-prefix input[type="text"] { flex: 1 1 auto; min-width: 0; width: auto !important; height: 100% !important; min-height: 0 !important; margin: 0 !important; padding: 0 4px 0 14px !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; font-size: 16px !important; text-align: right; }
.amc-em-prefix input:focus { outline: none; box-shadow: none !important; }
.amc-em-prefix > span { flex: none; display: flex; align-items: center; padding: 0 14px 0 2px; font-size: 16px; font-weight: 600; color: var(--amc-muted); background: #F4F6F5; border-left: 1px solid #E3E8E5; padding-left: 10px; }
.amc-me-field .amc-em-prefix { margin-top: 8px; }
.amc-ct-other { grid-column: 1 / -1; display: grid; gap: 12px; }
.amc-ct-other[hidden] { display: none; }
@media (min-width: 782px) {
  .amc-ct-other { grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); }
}

/* Chapter social media: the chapter's own pages (hero card icons, Contact section links, editor fields). */
.amc-ch-socs, .amc-ch-hero__card li span.amc-ch-socs { display: flex !important; flex-wrap: wrap; gap: 10px !important; margin-top: 6px; }
.amc-ch-socs .amc-ch-soc { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.18); color: #fff !important; transition: background .15s, color .15s; }
.amc-ch-socs .amc-ch-soc:hover { background: #fff; color: #141716 !important; }
.amc-ch-soc svg { width: 17px; height: 17px; }
.amc-ch-social { margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--amc-line); }
.amc-ch-social h3 { margin: 0 0 2px !important; font-size: 17px !important; text-transform: none !important; letter-spacing: 0 !important; }
.amc-ch-social p { margin: 0 0 12px !important; font-size: 14px; color: var(--amc-muted); }
.amc-ch-social ul { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; gap: 10px; }
.amc-ch-soclink { display: flex; align-items: center; gap: 12px; padding: 10px 14px; border-radius: 14px; border: 1px solid var(--amc-line); background: #fff; color: var(--amc-ink) !important; text-decoration: none !important; transition: border-color .15s, box-shadow .15s; }
.amc-ch-soclink:hover { border-color: var(--amc-ink); box-shadow: 0 6px 18px -12px rgba(0,0,0,.4); }
.amc-ch-soclink .amc-ch-soc { flex: none; display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: #141716; color: #fff; }
.amc-ch-soclink > span:last-child { display: grid; min-width: 0; }
.amc-ch-soclink small { font-size: 12px; color: var(--amc-muted); }
.amc-ch-soclink strong { font-size: 15px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
@media (min-width: 600px) { .amc-ch-social ul { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.amc-soc-grid { display: grid; gap: 4px 16px; }
@media (min-width: 782px) { .amc-soc-grid { grid-template-columns: 1fr 1fr; } }
.amc-soc-field > span { display: inline-flex; align-items: center; gap: 8px; }
.amc-soc-field > span svg { width: 16px; height: 16px; color: var(--amc-ink); }


/* ==== EXPERIMENT 2026-10-07: simple chapter side menu (plain text list, no icons, no cards) + plain chapter top bar.
   To undo, delete this block; the menu markup and each article's saved icon are unchanged. ==== */
.amc-ch-nav ul { gap: 0 !important; grid-template-columns: 1fr !important; border-top: 1px solid var(--amc-line); }
.amc-ch-nav li { border-bottom: 1px solid var(--amc-line); }
.amc-ch-nav a { gap: 8px; padding: 12px 4px 12px 14px !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; font-size: 15px; font-weight: 500; color: var(--amc-text) !important; position: relative; }
.amc-ch-nav__ico, .amc-ch-nav a > svg { display: none !important; }
.amc-ch-nav a { transition: background-color .15s ease, color .15s ease; }
.amc-ch-nav a:hover { color: var(--amc-accent) !important; background: #F3F6F4 !important; box-shadow: none !important; text-decoration: none !important; }
.amc-ch-nav a:hover::before { content: ""; position: absolute; left: 0; top: 10px; bottom: 10px; width: 3px; border-radius: 2px; background: #C9D6CF; }
.amc-ch-nav a[aria-current="page"]:hover { background: #F3F6F4 !important; color: var(--amc-ink) !important; }
.amc-ch-nav a:focus-visible { outline: 2px solid var(--amc-accent); outline-offset: -2px; }
.amc-ch-nav a[aria-current="page"] { background: transparent !important; color: var(--amc-ink) !important; font-weight: 700; }
.amc-ch-nav a[aria-current="page"]::before { content: ""; position: absolute; left: 0; top: 10px; bottom: 10px; width: 3px; border-radius: 2px; background: var(--amc-accent); }
.amc-ch-nav__label { display: flex !important; flex-wrap: wrap; align-items: center; gap: 6px; }
.amc-ch-nav__locknote, .amc-ch-nav__locknote.is-open, .amc-ch-nav a[aria-current="page"] .amc-ch-nav__locknote { padding: 0; background: transparent !important; color: var(--amc-muted) !important; font-weight: 600; }
.amc-ch-nav a.is-locked .amc-ch-nav__label, .amc-ch-nav a.is-locked[aria-current="page"] .amc-ch-nav__label { color: var(--amc-muted); }
.amc-ch-nav a.is-locked[aria-current="page"] .amc-ch-nav__label { color: var(--amc-ink); }
/* Chapter top bar: plain text tabs on a white bar, the current one underlined (mosque page bar unchanged). */
.amc-cx .amc-subnav.amc-ch-bar { background: #fff; border-bottom: 1px solid var(--amc-line); -webkit-backdrop-filter: none; backdrop-filter: none; }
.amc-ch-bar .amc-subnav__inner { gap: 4px 22px !important; }
.amc-cx .amc-ch-bar a, .amc-cx .amc-ch-bar a:hover:not([aria-current]) { min-height: 52px; padding: 0 2px !important; border-radius: 0 !important; background: transparent !important; color: var(--amc-muted) !important; font-size: 15px; font-weight: 600; box-shadow: inset 0 -2px 0 transparent; }
.amc-cx .amc-ch-bar a:hover:not([aria-current]) { color: var(--amc-ink) !important; }
.amc-cx .amc-ch-bar a[aria-current="page"] { background: transparent !important; color: var(--amc-ink) !important; box-shadow: inset 0 -2px 0 var(--amc-accent); }
/* Centered tabs; auto margins (not justify-content) so a bar that scrolls on phones never cuts off the first tab. */
.amc-ch-bar .amc-subnav__inner > li:first-child { margin-left: auto; }
.amc-ch-bar .amc-subnav__inner > li:last-child { margin-right: auto; }
/* Chapter anchors land below the header AND the tab bar (about 70px), with a little air above the heading. */
.amc-ch #events, .amc-ch #photos, .amc-ch #mosques, .amc-ch #contact { scroll-margin-top: calc(var(--amc-header-h) + var(--amc-adminbar) + 100px); }
/* Mosque page uses the same tab bar (nav.amc-ch-bar.amc-me-bar, links directly inside the inner div). */
.amc-ch-bar .amc-subnav__inner > a:first-child { margin-left: auto; }
.amc-ch-bar .amc-subnav__inner > a:last-child { margin-right: auto; }
.amc-cx .amc-ch-bar a.amc-subnav__chapter, .amc-cx .amc-ch-bar a.amc-subnav__chapter:hover { gap: 6px; background: transparent !important; color: var(--amc-accent) !important; font-weight: 700; box-shadow: none; }
.amc-cx .amc-ch-bar a.amc-subnav__chapter:hover { text-decoration: underline !important; text-underline-offset: 4px; }
/* ==== end EXPERIMENT ==== */

/* Chapter Contact section v3: plain section, people list on the left, "Follow the {chapter}" on the right. */
.amc-ch-contact { margin-top: 40px; }
.amc-ch-contact__head { margin-bottom: 16px; }
.amc-ch-contact__head h2 { font-size: clamp(24px, 5.5vw, 32px) !important; line-height: 1.15 !important; }
.amc-ch-contact__grid { display: grid; gap: 24px; }
.amc-ch-people { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; }
.amc-ch-person { display: grid; gap: 4px; padding: 14px 0; border-top: 1px solid var(--amc-line); }
.amc-ch-person:first-child { border-top: 0; padding-top: 0; }
.amc-ch-person p { margin: 0 !important; }
.amc-ch-person__who { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 10px; }
.amc-ch-person__who strong { font-size: 16px; color: var(--amc-ink); }
.amc-ch-person__who span { font-size: 14px; color: var(--amc-muted); }
.amc-ch-person__links { display: flex; flex-wrap: wrap; gap: 4px 18px; }
.amc-ch-person__links a { display: inline-flex; align-items: center; gap: 6px; font-size: 15px; font-weight: 500; color: var(--amc-text) !important; text-decoration: none !important; }
.amc-ch-person__links a:hover { color: var(--amc-accent) !important; text-decoration: underline !important; text-underline-offset: 3px; }
.amc-ch-person__links svg { flex: none; width: 15px; height: 15px; color: var(--amc-muted); }
.amc-ch-person--note p { font-size: 15px; color: var(--amc-muted); }
.amc-ch-follow h3 { margin: 0 0 10px !important; font-size: 13px !important; font-weight: 700; letter-spacing: .1em !important; text-transform: uppercase !important; color: var(--amc-muted); }
.amc-ch-follow ul { list-style: none; margin: 0 !important; padding: 0 !important; display: flex; flex-wrap: wrap; gap: 8px; }
.amc-ch-follow .amc-ch-soclink { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px 8px 10px; border: 1px solid var(--amc-line); border-radius: 999px; background: #fff; color: var(--amc-ink) !important; font-size: 14px; font-weight: 600; text-decoration: none !important; box-shadow: none; transition: border-color .15s, background .15s; }
.amc-ch-follow .amc-ch-soclink:hover { border-color: var(--amc-ink); background: var(--amc-surface); box-shadow: none; }
.amc-ch-follow .amc-ch-soclink svg { flex: none; width: 16px; height: 16px; }
@media (min-width: 900px) {
  .amc-ch-contact__grid { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 40px; }
  .amc-ch-contact__grid.is-single { grid-template-columns: 1fr; }
  .amc-ch-follow { padding-left: 32px; border-left: 1px solid var(--amc-line); }
}


/* Image picker fields (amc_rich_image_field): "+ Add" opens the image library popup; picked images wait here until Save. */
.amc-pick { display: grid; gap: 10px; }
.amc-pick__list { list-style: none; margin: 0 !important; padding: 0 !important; display: flex; flex-wrap: wrap; gap: 10px; }
.amc-pick__list:empty { display: none; }
.amc-pick__list li { position: relative; width: 112px; height: 84px; border-radius: 10px; overflow: hidden; background: var(--amc-surface); box-shadow: inset 0 0 0 1px var(--amc-line); }
.amc-pick:not(.amc-pick--multi) .amc-pick__list li { width: 240px; height: 150px; max-width: 100%; }
.amc-pick__list img { width: 100%; height: 100%; object-fit: cover; display: block; }
.amc-pick__list button { position: absolute; top: 6px; right: 6px; display: grid !important; place-items: center; width: 28px; height: 28px; min-height: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 50% !important; background: rgba(18,22,20,.75) !important; color: #fff !important; cursor: pointer; box-shadow: none !important; }
.amc-pick__list button svg { width: 14px; height: 14px; }
.amc-pick__list button:hover { background: #A12626 !important; }
button.amc-pick__add { width: 100%; text-align: left; font: inherit; cursor: pointer; }
.amc-pick--multi.has-items .amc-pick__list::before { content: none; }

/* Chapter Events list (overview): plain date (green month over the day), thin divider, title / time / place on their own lines. */
.amc-ch-evlist .amc-ch-ev__link { align-items: flex-start; gap: 14px; padding: 14px 2px !important; }
.amc-ch-evlist .amc-ch-ev__date { flex: 0 0 38px; width: 38px; height: auto; padding: 2px 12px 2px 0; box-sizing: content-box; border-radius: 0 !important; background: transparent !important; border-right: 1px solid var(--amc-line); display: flex; flex-direction: column; align-items: center; justify-content: flex-start; line-height: 1; }
.amc-ch-evlist .amc-ch-ev__date span { font-size: 10.5px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--amc-accent) !important; }
.amc-ch-evlist .amc-ch-ev__date strong { margin-top: 3px; font-size: 24px; font-weight: 800; letter-spacing: -.02em; color: var(--amc-ink) !important; }
.amc-ch-evlist .amc-ch-ev__text { display: grid; gap: 2px; min-width: 0; }
.amc-ch-evlist .amc-ch-ev__text strong { font-size: 14.5px; font-weight: 700; line-height: 1.3; color: var(--amc-ink); }
.amc-ch-evlist .amc-ch-ev__text small { display: block; font-size: 13px; line-height: 1.45; color: var(--amc-muted); }
.amc-ch-evlist .amc-ch-ev__sep { display: none; }
.amc-ch-evlist .amc-ch-ev__where { display: block; }
.amc-ch-evlist .amc-ch-ev__link:hover .amc-ch-ev__text strong { color: var(--amc-accent); }

/* Chapter pages on phones/tablets: the articles menu folds into a "Chapter Pages" row; desktop keeps the open list. */
.amc-ch-navd > summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 16px; border: 1px solid var(--amc-line); border-radius: 12px; background: #fff; }
.amc-ch-navd > summary::-webkit-details-marker { display: none; }
.amc-ch-navd > summary span { display: grid; gap: 1px; min-width: 0; }
.amc-ch-navd > summary small { font-size: 11.5px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--amc-muted); }
.amc-ch-navd > summary strong { font-size: 15.5px; color: var(--amc-ink); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.amc-ch-navd > summary svg { flex: none; width: 20px; height: 20px; color: var(--amc-ink); transition: transform .2s ease; }
.amc-ch-navd[open] > summary svg { transform: rotate(180deg); }
@media (max-width: 1024px) {
  .amc-ch-navd[open] > summary { border-bottom-left-radius: 0; border-bottom-right-radius: 0; }
  .amc-ch-navd[open] > .amc-ch-nav { padding: 4px 16px 12px !important; border: 1px solid var(--amc-line); border-top: 0; border-radius: 0 0 12px 12px; }
  .amc-ch-navd[open] > .amc-ch-nav ul { border-top: 0 !important; }
  .amc-ch-navd[open] > .amc-ch-nav li:last-child { border-bottom: 0 !important; }
}
@media (min-width: 1025px) {
  .amc-ch-navd > summary { display: none; }
  .amc-ch-navd > .amc-ch-nav { padding: 0 !important; border: 0 !important; }
  .amc-ch-navd > .amc-ch-nav ul { border-top: 1px solid var(--amc-line) !important; }
  .amc-ch-navd > .amc-ch-nav li:last-child { border-bottom: 1px solid var(--amc-line) !important; }
}

/* Chapter overview events list: base rules that the side-column version used to inherit. */
.amc-ch-evlist .amc-ch-evs { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; gap: 0; border-top: 1px solid var(--amc-line); }
.amc-ch-evlist .amc-ch-ev { border-bottom: 1px solid var(--amc-line); }
.amc-ch-evlist .amc-ch-ev__link { border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; }
.amc-ch-evlist .amc-ch-ev__text strong { font-size: 16px; }
.amc-ch-evlist .amc-ch-ev__text small { font-size: 14px; }
@media (min-width: 1025px) {
  .amc-ch-layout.has-side > .amc-ch-side--menu .amc-ch-navd { position: sticky; top: calc(var(--amc-header-h) + var(--amc-adminbar) + 96px); }
}


/* Events page header on phones: the List / Month switch keeps its words whole and drops below the title when needed. */
.amc-ch-block__head { flex-wrap: wrap; row-gap: 12px; }
.amc-ch-block__head > div { min-width: 0; }
.amc-ch-evtabs { flex: none; }
.amc-ch-evtabs a { white-space: nowrap; }

/* Photo editors: action buttons keep their full label; they share a row when they fit and stack when they do not. */
.amc-me-photo__acts button { flex: 1 1 auto !important; white-space: nowrap; overflow: visible; text-overflow: clip; }


/* Embedded PDF (rich editor "PDF"): title bar + inline viewer about one page tall; phones get a card with "Open PDF". */
figure.amc-pdf { margin: 24px 0 !important; border: 1px solid var(--amc-line); border-radius: 14px; overflow: hidden; background: #fff; }
.amc-pdf__bar { display: flex; align-items: center; gap: 12px; padding: 12px 16px; border-bottom: 1px solid var(--amc-line); background: #F7F8F7; }
.amc-pdf__ico { flex: none; width: 30px; height: 36px; border-radius: 6px; background: #B3261E; position: relative; }
.amc-pdf__ico::after { content: "PDF"; position: absolute; inset: 0; display: grid; place-items: center; color: #fff; font-size: 10px; font-weight: 800; letter-spacing: .04em; }
.amc-pdf__bar strong { flex: 1; min-width: 0; font-size: 15.5px; color: var(--amc-ink); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.amc-pdf__open { flex: none; font-size: 14px; font-weight: 700; color: var(--amc-accent) !important; text-decoration: none !important; }
.amc-pdf__open:hover { text-decoration: underline !important; }
.amc-pdf__frame { aspect-ratio: 8.5 / 11; max-height: 85vh; min-height: 420px; width: 100%; background: #525659; }
.amc-pdf__frame iframe { display: block; width: 100%; height: 100%; border: 0; }
figure.amc-pdf.is-card .amc-pdf__bar { border-bottom: 0; background: #fff; padding: 16px; }
figure.amc-pdf.is-card .amc-pdf__open { padding: 9px 16px; border-radius: 999px; background: var(--amc-accent); color: #fff !important; }
figure.amc-pdf.is-card .amc-pdf__bar strong { white-space: normal; }
figure.amc-pdf > a.amc-pdf__link { display: block; padding: 16px; font-weight: 700; } /* Before the script runs. */

/* Department titles are proper names ("Umoor-e-Aama"): no automatic capitals after hyphens. */
.amc-dp-hero__title { text-transform: none !important; }
/* Carousels of portrait images (posters, flyers): whole image on a soft background, about one screen tall. */
.amc-carousel.is-portrait .amc-carousel__slide { aspect-ratio: 4 / 5; max-height: 85vh; background: var(--amc-surface); }
.amc-carousel.is-portrait .amc-carousel__slide img { object-fit: contain; }

/* Department pages use the plain page header; its label links back up (departments list, or the department). */
.amc-dp-head .amc-eyebrow a { color: inherit !important; text-decoration: none !important; }
.amc-dp-head .amc-eyebrow a:hover { text-decoration: underline !important; text-underline-offset: 3px; }
.amc-dp-head .amc-actions { margin-top: 14px; }
.amc-dp-head h1 { text-transform: none !important; } /* "Umoor-e-Aama", not "Umoor-E-Aama". */

/* Side menu rows stay inside the column (the hover background showed past the divider lines). */
.amc-ch-nav li, .amc-ch-nav a { box-sizing: border-box; max-width: 100%; }
.amc-ch-nav a { width: 100% !important; padding-right: 12px !important; }

/* Department pages: Edit buttons (editors only). */
.amc-dp-edit:empty { display: none; }
.amc-dp-edit { margin-bottom: 14px; }

/* Department "Our Team": round photos (or initials), name, office, bio. */
.amc-team__grid { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 28px 24px; }
.amc-team__card { display: flex; flex-direction: column; align-items: center; text-align: center; }
.amc-team__img { width: 132px; height: 132px; border-radius: 50%; object-fit: cover; display: block; margin-bottom: 14px; box-shadow: 0 0 0 4px #fff, 0 0 0 5px var(--amc-line); }
.amc-team__img--initials { display: grid; place-items: center; background: var(--amc-accent-tint); color: var(--amc-forest); font-size: 40px; font-weight: 800; letter-spacing: .02em; }
.amc-team__card h3 { margin: 0 !important; font-size: 18px !important; text-transform: none !important; color: var(--amc-ink); }
.amc-team__role { margin: 2px 0 0 !important; font-size: 14px; font-weight: 600; color: var(--amc-accent); }
.amc-team__bio { margin: 10px 0 0 !important; font-size: 14.5px; line-height: 1.6; color: var(--amc-muted); }
.amc-team__bio a { color: var(--amc-ink) !important; font-weight: 600; }
/* Team editor rows. */
.amc-team-rows { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; gap: 14px; }
.amc-team-row { display: grid; gap: 14px; padding: 16px; border: 1px solid var(--amc-line); border-radius: 14px; background: #FAFBFA; }
.amc-team-row__fields { display: grid; gap: 12px; }
.amc-team-row__fields textarea { width: 100%; padding: 12px 14px !important; border: 1.5px solid #CFD5D2 !important; border-radius: 12px !important; font: inherit; font-size: 16px !important; }
.amc-team-row__acts { display: flex; gap: 6px; }
.amc-team-row__acts button { width: 40px; height: 40px; min-height: 0 !important; padding: 0 !important; display: grid !important; place-items: center; border: 1px solid var(--amc-line) !important; border-radius: 10px !important; background: #fff !important; color: var(--amc-ink) !important; cursor: pointer; box-shadow: none !important; }
.amc-team-row__acts button.is-danger { color: #A12626 !important; }
.amc-team-row__acts svg { width: 16px; height: 16px; }
.amc-team-row .amc-pick:not(.amc-pick--multi) .amc-pick__list li { width: 120px; height: 120px; border-radius: 50%; }
@media (min-width: 782px) {
  .amc-team-row { grid-template-columns: 220px minmax(0, 1fr) auto; align-items: start; }
  .amc-team-row__fields { grid-template-columns: 1fr 1fr; }
  .amc-team-row__bio { grid-column: 1 / -1; }
  .amc-team-row__acts { flex-direction: column; }
}
.amc-team__mail { margin: 6px 0 0 !important; font-size: 14px; }
.amc-team__mail a { display: inline-flex; align-items: center; gap: 6px; color: var(--amc-ink) !important; font-weight: 600; text-decoration: none !important; }
.amc-team__mail a:hover { color: var(--amc-accent) !important; text-decoration: underline !important; }
.amc-team__mail svg { width: 15px; height: 15px; color: var(--amc-muted); }
.amc-team-row__fixed { margin: 0 !important; display: flex; align-items: center; min-height: 48px; padding: 0 14px; border-radius: 12px; background: #EEF2F0; font-size: 16px; font-weight: 600; color: var(--amc-ink); }

/* Arabic / Urdu lines in page text take their own direction (right-aligned) next to English. */
.amc-prose p, .amc-prose li, .amc-prose h2, .amc-prose h3, .amc-prose h4 { unicode-bidi: plaintext; text-align: start; }

/* Carousels show every image whole: the frame follows the first image's shape (set by the carousel script). */
.amc-carousel__slide { aspect-ratio: var(--amc-car-ratio, 16 / 10) !important; max-height: 85vh; background: var(--amc-surface); }
.amc-carousel__slide img { object-fit: contain !important; }

/* National events editing (snippet 33): Edit / Add buttons, the Manage Events list, and event banners. */
.amc-evedit-bar { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 18px; }
.amc-evedit-bar--list { margin: 0 0 14px; }
.amc-evm { list-style: none; margin: 14px 0 0 !important; padding: 0 !important; border-top: 1px solid var(--amc-line); }
.amc-evm__row { display: flex; align-items: center; gap: 14px; padding: 12px 2px; border-bottom: 1px solid var(--amc-line); }
.amc-evm__date { flex: 0 0 46px; display: flex; flex-direction: column; align-items: center; line-height: 1; padding-right: 12px; border-right: 1px solid var(--amc-line); }
.amc-evm__date span { font-size: 10.5px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--amc-accent); }
.amc-evm__date strong { margin-top: 3px; font-size: 22px; font-weight: 800; color: var(--amc-ink); }
.amc-evm__date em { margin-top: 3px; font-style: normal; font-size: 11px; color: var(--amc-muted); }
.amc-evm__text { flex: 1; min-width: 0; display: grid; gap: 2px; }
.amc-evm__text a { font-weight: 700; color: var(--amc-ink) !important; text-decoration: none !important; }
.amc-evm__text a:hover { color: var(--amc-accent) !important; }
.amc-evm__text small { font-size: 13px; color: var(--amc-muted); }
.amc-evm__tabs { display: inline-flex; gap: 4px; padding: 4px; margin-bottom: 14px; border-radius: 12px; background: var(--amc-surface); }
.amc-evm__tabs a { padding: 8px 16px; border-radius: 9px; font-size: 14px; font-weight: 700; color: var(--amc-muted) !important; text-decoration: none !important; }
.amc-evm__tabs a[aria-current="page"] { background: #fff; color: var(--amc-ink) !important; box-shadow: 0 1px 3px rgba(0,0,0,.08); }
.amc-evm__cats { display: flex; flex-wrap: wrap; gap: 8px 18px; }
.amc-evm__banner { margin: 0 0 10px !important; padding: 10px 14px; border-radius: 10px; background: var(--amc-accent-tint); font-weight: 600; color: var(--amc-forest); }
.amc-evm__banner-acts { display: grid; gap: 10px; }
.amc-evm__banner-rm { justify-self: start; min-height: 0 !important; padding: 8px 14px !important; border: 1px solid #E4C6C6 !important; border-radius: 10px !important; background: #fff !important; color: #A12626 !important; font-weight: 600; cursor: pointer; box-shadow: none !important; }
.amc-evbanner { margin: 0 0 24px !important; width: 100%; aspect-ratio: var(--amc-evbanner-ratio, 1.2941); max-height: 90vh; border-radius: 12px; overflow: hidden; background: #fff; box-shadow: 0 0 0 1px var(--amc-line); }
.amc-evbanner iframe { display: block; width: 100%; height: 100%; border: 0; pointer-events: none; }
.amc-evbanner.is-link, .amc-evbanner:not(:has(iframe)) { aspect-ratio: auto; max-height: none; box-shadow: none; }
.amc-evbanner__link { display: inline-flex; align-items: center; gap: 8px; padding: 12px 16px; border-radius: 12px; border: 1px solid var(--amc-line); font-weight: 700; color: var(--amc-accent) !important; text-decoration: none !important; }
/* The Events Calendar resets link styles inside its views: keep the edit buttons visible there. */
.amc-evedit-bar a.amc-me-chip { display: inline-flex !important; align-items: center; gap: 6px; padding: 6px 12px !important; border-radius: 999px !important; background: #FFE7A3 !important; border: 1px solid #E8C35A !important; color: #4A3A0A !important; font-size: 13px !important; font-weight: 700 !important; line-height: 1.2 !important; text-decoration: none !important; opacity: 1 !important; }
.amc-evedit-bar a.amc-me-chip--add { background: var(--amc-ink) !important; border-color: var(--amc-ink) !important; color: #fff !important; }
.amc-evedit-bar a.amc-me-chip svg { width: 13px; height: 13px; }
.page .amc-me { padding: 0 !important; background: transparent !important; } /* Manage Events sits inside a page: no second card. */

.amc-me-note--info { background: var(--amc-accent-tint); border: 1px solid #BFD8CB; color: var(--amc-forest); }

/* Chapter events list: one week at a time (‹ week ›). */
.amc-ch-week { margin: 4px 0 14px; }
.amc-ch-week h2 { font-size: 20px !important; text-transform: none !important; }
.amc-ch-evlist .amc-ch-empty a { font-weight: 700; color: var(--amc-accent) !important; }

/* Mosque finder: place / distance search (List view) */
.amc-mq-form { grid-template-columns: 1fr 1fr; }
.amc-mq-form > input[type="search"] { grid-column: 1 / -1; }
.amc-mq-form .amc-mq-near { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: var(--amc-tap); padding: 0 10px; white-space: nowrap; border: 1.5px solid var(--amc-ink); border-radius: 999px; background: #fff; color: var(--amc-ink); font: inherit; font-size: 15px; font-weight: 700; cursor: pointer; }
.amc-mq-form .amc-mq-near:hover, .amc-mq-form .amc-mq-near:focus-visible { background: var(--amc-ink); color: #fff; }
.amc-mq-form .amc-mq-near:disabled { opacity: .6; cursor: progress; }
.amc-mq-msg.is-error { color: #A12C2C; }
.amc-dir-item__dist { align-self: flex-start; margin-top: 4px; padding: 2px 9px; border-radius: 999px; background: var(--amc-surface); color: var(--amc-ink); font-size: 12px; font-weight: 700; white-space: nowrap; }
@media (min-width: 1000px) {
  .amc-mq-form { grid-template-columns: minmax(0, 1fr) auto auto; }
  .amc-mq-form > input[type="search"] { grid-column: auto; }
}
.amc-ml__actions { grid-template-columns: minmax(0, 1fr) 40px; }
.amc-ml__actions .amc-ml__near { justify-content: center; }
.amc-hp__locate, .amc-hp__locate:visited { display: inline-flex; align-items: center; gap: 6px; margin-top: 10px; font-size: 13px; font-weight: 600; color: #fff; text-decoration: none; opacity: .85; }
.amc-hp__locate:hover, .amc-hp__locate:focus { color: var(--amc-mint, #fff); opacity: 1; text-decoration: none; }
/* Chapter pages: the main column never grows wider than the screen (wide tables scroll inside their box). */
.amc-ch-main > * { min-width: 0; }
/* Two-column tables fit the phone width; wider tables keep a minimum width and scroll. */
.amc-prose .wp-block-table table { min-width: 0; }
.amc-prose .wp-block-table table:has(:is(th, td):nth-child(3)) { min-width: 480px; }
/* Content buttons that wrap onto a second line keep a small gap. */
.amc-prose .amc-cbtn { margin: 0 8px 10px 0; }
/* Event banner: clickable spots over the PDF's own links (e.g. "Join now"); buttons when shown as a link. */
.amc-evbanner { position: relative; }
.amc-evbanner__spot { position: absolute; z-index: 2; display: block; border-radius: 6px; cursor: pointer; }
.amc-evbanner__spot:hover, .amc-evbanner__spot:focus-visible { outline: 2px solid var(--amc-accent); outline-offset: 2px; background: rgba(11, 107, 75, .08); }
.amc-evbanner__btns { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.amc-evbanner:has(iframe) .amc-evbanner__btns { display: none; }
.amc-evbanner__btn, .amc-evbanner__btn:visited { display: inline-flex; align-items: center; min-height: 44px; padding: 0 18px; border-radius: 999px; background: var(--amc-accent); color: #fff !important; font-weight: 700; text-decoration: none !important; }
/* My chapter on a chapter page, phones: a round star next to Contact (outline = set, gold = your chapter). */
.amc-mych-star { display: none; }
@media (max-width: 599px) {
  .amc-ch-hero__ctas .amc-mych-set, .amc-ch-hero__ctas .amc-mych-star { display: none; }
  .amc-mych-star { display: inline-grid; place-items: center; flex: none; width: var(--amc-tap); height: var(--amc-tap); min-height: 0; padding: 0; border-radius: 50%; border: 1.5px solid rgba(255,255,255,.4); background: rgba(255,255,255,.06); color: var(--amc-gold); cursor: pointer; }
  .amc-mych-star svg { width: 22px; height: 22px; }
  .amc-mych-star.is-on { border-color: var(--amc-gold); background: rgba(224,178,60,.18); }
  .amc-mych-star:hover, .amc-mych-star:focus-visible { border-color: #fff; background: rgba(255,255,255,.12); color: var(--amc-gold); }
}
/* Home, phones: hide the hero buttons (Member360, Departments, Member Services) so the hero card fits on screen.
   The same links stay in the menu, the dock and the sections below. */
@media (max-width: 767px) {
  .home .amc-hero .wp-block-buttons { display: none; }
}

/* Chapter name: the "my chapter" star sits in front of it on phones only. */
.amc-mych-slot--title .amc-mych-star { display: none; }
@media (max-width: 599px) {
  .amc-cx-hero__title .amc-mych-slot--title .amc-mych-star { display: inline-grid; width: 38px; height: 38px; margin: 0 10px 0 0; vertical-align: 0.12em; }
  .amc-cx-hero__title .amc-mych-star svg { width: 19px; height: 19px; }
}
/* Phones: hide the hero descriptions (home, chapter, mosque) so the content starts higher.
   A mosque intro that holds an editor's Edit button stays visible for editors. */
@media (max-width: 767px) {
  .home .amc-hero .amc-hero-sub { display: none; }
  .amc-ch-hero__tagline { display: none; }
  .amc-cx-hero__lead:not(:has(.amc-me-chip)) { display: none; }
}
/* Home, phones: tighter hero top (motto → title → card) so the whole hero card fits above the bottom bar. */
@media (max-width: 767px) {
  .home .amc-hero { padding-top: 14px !important; }
  .home .amc-hero .amc-eyebrow { margin-bottom: 4px; }
  .home .amc-hero h1.wp-block-heading { margin-top: 0 !important; margin-bottom: 0; }
  .home .amc-hero .wp-block-columns { row-gap: 16px; gap: 16px; }
}
/* Mosque pages, phones: prayer times right under the name, then the Get Directions link, so today's times
   show on the first screen. */
@media (max-width: 781px) {
  .amc-cx-hero__inner:has(.amc-pc) { display: flex; flex-direction: column; gap: 0; }
  .amc-cx-hero__inner:has(.amc-pc) > .amc-cx-hero__copy,
  .amc-cx-hero__inner:has(.amc-pc) > .amc-cx-hero__side { display: contents; }
  .amc-cx-hero__inner:has(.amc-pc) .amc-pc { order: 1; margin-top: 12px; }
  .amc-cx-hero__inner:has(.amc-pc) .amc-cx-hero__org { margin-bottom: 0 !important; }
  .amc-cx-hero__inner:has(.amc-pc) .amc-chip { margin-bottom: 10px; }
  .amc-cx-hero:has(.amc-pc) { padding-top: 16px !important; }
  .amc-cx-hero__inner:has(.amc-pc) .amc-cx-directions { order: 2; margin-top: 10px; }
  /* Only the essentials on phones: no Plan a Visit / Directions buttons (the Get Directions link stays under the
     times) and no Jumu'ah / Murabbi / All welcome facts (Jumu'ah is in the times card). */
  .amc-cx-hero__inner:has(.amc-pc) .amc-cx-hero__ctas,
  .amc-cx-hero__inner:has(.amc-pc) .amc-cx-facts { display: none; }
  .amc-cx-hero__inner:has(.amc-pc) .amc-cx-hero__side > .amc-me-chip { order: 1; align-self: flex-start; margin-top: 12px; }
}
/* Narrow phones (under 400px, e.g. Galaxy S8 at 360px): prayer times as a 3 × 2 grid of simple tiles
   ("Fajr  5:45" side by side) so names such as Maghrib and Jumu'ah never break; "Go to My Chapter" on one line. */
@media (max-width: 399px) {
  .amc-hp__pt { grid-auto-flow: row; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 5px; }
  .amc-hp__pt li { flex-direction: row; justify-content: space-between; align-items: baseline; gap: 4px; padding: 7px 8px; }
  .amc-hp__pt span { font-size: 11px; letter-spacing: 0; white-space: nowrap; }
  .amc-hp__pt strong { font-size: 14px; white-space: nowrap; }
  .amc-hp__go { gap: 6px; padding: 6px 14px 14px; }
  .amc-hp__go a { padding: 10px 12px; font-size: 13px; white-space: nowrap; gap: 6px; }
  .amc-hp__go .amc-hp__mych-acts button { padding: 8px 10px !important; font-size: 12px !important; }
}
/* Very small phones (under 350px): name above the time inside each tile. */
@media (max-width: 349px) {
  .amc-hp__pt li { flex-direction: column; align-items: center; justify-content: center; gap: 1px; padding: 6px 4px; }
}
/* Short screens (phones in landscape): the search bar scrolls with the page instead of staying pinned, so it does
   not cover the results. Portrait phones and desktops keep it pinned. */
@media (max-height: 500px) {
  .amc-chapter-search--page { position: static; }
}
/* Mosque map: "Show the closest mosques" (no mosque within 150 miles). */
.amc-ml__showfar { display: inline; margin: 0; padding: 0; border: 0; background: none; color: var(--amc-accent); font: inherit; font-weight: 700; text-decoration: underline; cursor: pointer; }
/* Featured event without a picture: key details instead of an empty dark box. */
.amc-event--details { position: relative; display: flex; flex-direction: column; isolation: isolate; }
.amc-event--details::after { content: ""; position: absolute; right: -40px; bottom: -40px; z-index: -1; width: 240px; height: 240px; background: var(--amc-emblem) center / contain no-repeat; opacity: .06; filter: invert(1); pointer-events: none; }
.amc-event--details .amc-event__title { color: #fff; }
.amc-event__more { display: flex; flex-direction: column; gap: 12px; margin-top: auto; padding: 0 16px 18px; }
.amc-event__when { align-self: flex-start; padding: 4px 11px; border-radius: 999px; background: var(--amc-gold); color: #1B1B1B; font-size: 12px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.amc-event__desc { margin: 0 !important; font-size: 15px; line-height: 1.55; color: #C9D0CC; }
.amc-event__org { display: flex; align-items: center; gap: 8px; margin: 0 !important; font-size: 14px; color: #A9B1AD; }
.amc-event__org svg { flex: none; color: var(--amc-mint); }
.amc-event__acts { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 4px; }
.amc-event__btn, .amc-event__btn:visited { display: inline-flex; align-items: center; gap: 8px; min-height: 42px; padding: 0 18px; border-radius: 999px; background: var(--amc-gold); color: #1B1B1B !important; font-size: 14px; font-weight: 700; text-decoration: none !important; }
.amc-event__btn:hover { background: #fff; }
.amc-event__btn--ghost, .amc-event__btn--ghost:visited { background: transparent; border: 1px solid rgba(255,255,255,.3); color: #fff !important; }
.amc-event__btn--ghost:hover { background: rgba(255,255,255,.1); border-color: #fff; }
@media (min-width: 782px) {
  .amc-event__more { padding: 0 26px 28px 116px; gap: 14px; }
  .amc-event__desc { font-size: 16px; max-width: 46ch; }
  .amc-event--details::after { width: 300px; height: 300px; right: -50px; bottom: -50px; }
}
/* Featured event photo: crop toward the upper part (faces in group photos), not the exact middle. */
.amc-event--feature .amc-event__img { background-position: center 22%; }
/* Phone dock: steady while scrolling. Android browsers (Firefox, Chrome) change the bottom "safe area" value while
   their toolbar slides in and out, which made the bar grow and shrink, and a blurred see-through background repaints
   on every scroll frame (flicker). The bar now has a fixed height and a solid background, sits on its own layer,
   and only iPhones/iPads (home indicator) add the safe-area space. */
.amc-dock { height: var(--amc-dock); padding-bottom: 0; background: #0E1110; -webkit-backdrop-filter: none; backdrop-filter: none; transform: translate3d(0, 0, 0); will-change: transform; contain: layout paint; }
body.amc-has-dock { padding-bottom: var(--amc-dock); }
@supports (-webkit-touch-callout: none) {
  .amc-dock { height: calc(var(--amc-dock) + env(safe-area-inset-bottom, 0px)); padding-bottom: env(safe-area-inset-bottom, 0px); }
  body.amc-has-dock { padding-bottom: calc(var(--amc-dock) + env(safe-area-inset-bottom, 0px)); }
}
/* Phone dock, highlight = the section you are in (no permanently highlighted item). Flat and quiet: muted icons,
   the current one in white on a soft pill, with a slim green line at the top edge of the bar. */
.amc-dock a { position: relative; gap: 3px; color: #8B938F; transition: color .2s ease; -webkit-tap-highlight-color: transparent; }
.amc-dock a svg, .amc-dock a.amc-dock__primary svg { width: 44px; height: 28px; padding: 3px 11px; margin: 0; border-radius: 999px; background: transparent; transition: background-color .2s ease; }
.amc-dock a span { font-size: 10.5px; font-weight: 600; letter-spacing: .02em; }
.amc-dock a.amc-dock__primary { color: #8B938F; }
.amc-dock a[aria-current="page"] { color: #fff; }
.amc-dock a[aria-current="page"] svg { background: rgba(255, 255, 255, .1); }
.amc-dock a[aria-current="page"]::before { content: ""; position: absolute; top: 0; left: 50%; width: 28px; height: 2px; margin-left: -14px; border-radius: 0 0 2px 2px; background: var(--amc-mint, #6FCF97); }
.amc-dock a:active svg { background: rgba(255, 255, 255, .06); }
/* Phones and tablets: CSS-only sticky header (the theme's scroll script is off below 1025px, see Navigation tweaks). */
@media (max-width: 1024px) {
  #masthead.site-header { position: -webkit-sticky !important; position: sticky !important; top: var(--amc-adminbar, 0px) !important; z-index: 1000; }
}

/* Phones and tablets: page controls (chapter / mosque search, section menus, Member Services links) scroll with the
   page like everything else; only the site header stays at the top. */
@media (max-width: 1024px) {
  .amc-subnav, .amc-chapter-search--page, .amc-ms-jump, .amc-ch-side,
  .amc-ch-layout.has-side > .amc-ch-side--menu .amc-ch-navd { position: static !important; top: auto !important; }
}
/* Without the phone dock, the editor's Save bar sits just above the bottom edge. */
body:not(.amc-has-dock) .amc-me-save { bottom: 10px; }

/* Phones and tablets, after scrolling down: a slimmer header with just the round emblem, centred (Navigation tweaks
   adds body.amc-scrolled). The logo image is cropped to its left square, which is the emblem. */
@media (max-width: 1024px) {
  #mobile-header .site-main-header-inner-wrap { transition: min-height .2s ease; }
  #mobile-header .site-container { position: relative; }
  #mobile-header .site-branding img { transition: height .2s ease, width .2s ease; }
  body.amc-scrolled #mobile-header .site-main-header-inner-wrap { min-height: 52px !important; }
  body.amc-scrolled #mobile-header .site-branding { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); padding: 0; margin: 0; }
  body.amc-scrolled #mobile-header .site-branding a.brand { display: block; line-height: 0; }
  body.amc-scrolled #mobile-header .site-branding img { width: 38px !important; height: 38px !important; max-height: none !important; max-width: none; object-fit: cover; object-position: left center; }
}

/* Mosque contact box: president and Murabbi rows with their email / phone underneath. */
.amc-contact__links { display: flex; flex-direction: column; gap: 4px; margin-top: 6px; }
.amc-contact__links a { display: inline-flex; align-items: center; gap: 8px; font-weight: 600; font-size: 14.5px; }
.amc-contact__list .amc-contact__links svg { flex: 0 0 16px; width: 16px; height: 16px; margin-top: 0; color: var(--amc-muted); }
