/* Preserve the supplied portrait's proportions on desktop and mobile. */
#team-section div:has(> img[src$="/irfan-kaymaz-v2.png"]) { height: auto; align-self: flex-start; }
#team-section img[src$="/irfan-kaymaz-v2.png"] { height: auto; object-fit: contain; }
#team-section div:has(> img[src$="/irfan-kaymaz-v2.png"]) > .inset-0 {
  background: linear-gradient(to top, rgba(0,0,0,.75), transparent 40%);
}

.mobile-nav-panel[hidden] { display: none !important; }
@media (max-width: 767px) {
  html.mobile-nav-open { overflow: hidden; }
  #main-header.mobile-menu-open { background: #f8f9fa !important; color: #153747 !important; }
  #main-header.mobile-menu-open img[alt="Add4Bio Logo White"] { display: none !important; }
  #main-header.mobile-menu-open img[alt="Add4Bio Logo Blue"] { display: block !important; }
  #mobile-menu-button { min-width: 44px; min-height: 44px; display: grid; place-items: center; }
  #main-header.mobile-menu-open #mobile-menu-button { color: #153747 !important; }
  #mobile-menu {
    position: absolute; top: 100%; left: 0; width: 100%;
    max-height: calc(100dvh - 81px); overflow-y: auto; overscroll-behavior: contain;
    padding: 12px 24px max(20px, env(safe-area-inset-bottom));
    background: #f8f9fa; color: #153747; border-top: 1px solid #dce3e7;
    border-bottom: 1px solid #dce3e7; box-shadow: 0 14px 24px rgba(21,55,71,.1);
    font-size: 15px; line-height: 1.5;
  }
  #mobile-menu a, #mobile-menu summary, #mobile-menu button {
    min-height: 44px; padding: 12px 0; display: block; color: #153747 !important;
    text-align: left; cursor: pointer; border-radius: 4px;
  }
  #mobile-menu > a, #mobile-menu > details { border-bottom: 1px solid #e2e7ea; }
  #mobile-menu summary { list-style: none; display: flex; align-items: center; justify-content: space-between; }
  #mobile-menu summary::-webkit-details-marker { display: none; }
  #mobile-menu summary::after { content: '+'; font-size: 21px; line-height: 1; }
  #mobile-menu details[open] > summary::after { content: '−'; }
  #mobile-menu .mobile-nav-submenu { padding: 0 0 8px 16px; }
  #mobile-menu [aria-current], #mobile-menu a:hover, #mobile-menu summary:hover { color: #14768b !important; }
  #mobile-menu :focus-visible, #mobile-menu-button:focus-visible { outline: 2px solid #14768b; outline-offset: 3px; }
  #mobile-menu .mobile-nav-languages { display: flex; gap: 12px; padding-top: 16px; }
  #mobile-menu .mobile-nav-languages button { min-width: 56px; padding: 10px 16px; text-align: center; border: 1px solid #c6d2d9; }
  #mobile-menu .mobile-nav-languages [aria-current] { background: #e7eff2; border-color: #14768b; }
}
@media (min-width: 768px) { #mobile-menu, #mobile-menu-button { display: none !important; } }
