/* V10: consistent softly varied backgrounds for transparent consultant portraits */
.profile-modern-image.profile-cutout-image{background:linear-gradient(145deg,#f3ece7 0%,#f4f0e5 55%,#e6eee6 100%)}
.profile-modern-image.profile-cutout-image img{display:block;width:100%;height:100%;object-fit:contain;object-position:center bottom}
.featured-photo:has(.consultant-cutout),.scholar-avatar:has(.consultant-cutout){background:linear-gradient(145deg,#f3e7dc 0%,#e7eee6 100%)}
.featured-photo img.consultant-cutout,.scholar-avatar img.consultant-cutout{object-fit:contain;object-position:center bottom}
/* Editorial media maintains the same warm, soft tones on desktop and mobile */
.resource-list-section .article-card-visual img,.learning-preview-section .article-card-visual img{mix-blend-mode:normal!important;filter:none!important;opacity:1!important}
.resources-hero .page-hero-art{background:#f8e9dd}
.resources-hero .page-hero-art img{object-fit:cover}
@media(max-width:720px){.profile-modern-image.profile-cutout-image img{object-position:center bottom}}


/* V12 mobile header: compact sticky bar and Tazkiyo-colour vertical-dot menu.
   Keeps existing menu markup, links, and JavaScript interactions unchanged. */
@media (max-width: 1100px) {
  body .site-header {
    position: sticky;
    top: 0;
    z-index: 1000;
  }
  body .site-header,
  body .site-header .nav-wrap {
    height: 72px;
    min-height: 72px;
  }
  body .site-header .menu-btn {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    padding: 0;
    margin-left: auto;
  }
  body .site-header .menu-btn span {
    display: block;
    flex: 0 0 5px;
    width: 5px;
    height: 5px;
    margin: 0;
    border-radius: 50%;
    background: #42544a; /* matches the official Tazkiyo SVG wordmark */
  }
  body .site-header .mobile-nav {
    top: 72px;
    max-height: calc(100vh - 80px);
    max-height: calc(100dvh - 80px);
  }
}
@media (max-width: 720px) {
  body .site-header,
  body .site-header .nav-wrap {
    height: 62px;
    min-height: 62px;
  }
  body .site-header .brand img {
    width: 120px !important;
    max-height: 40px !important;
  }
  body .site-header .mobile-nav {
    top: 62px;
    max-height: calc(100vh - 70px);
    max-height: calc(100dvh - 70px);
  }
  html { scroll-padding-top: 70px; }
}

/* V11 had a tablet-width gap where the dots appeared but the menu could not open. */
@media (min-width: 1021px) and (max-width: 1100px) {
  body .site-header .mobile-nav {
    display: none;
    position: fixed;
    left: 20px;
    right: 20px;
    background: #fffdfa;
    border: 1px solid var(--line);
    border-radius: 18px;
    padding: 18px;
    box-shadow: 0 18px 35px #1d372516;
  }
  body .site-header .mobile-nav.open {
    display: grid;
    gap: 8px;
  }
  body .site-header .mobile-nav a {
    padding: 11px 10px;
    font-size: 16px;
    font-weight: 500;
  }
}
