/* =========================================================
   WCAG-friendly Custom CSS for Indico Conference Page
   ========================================================= */

/* ---------- Hide default Indico logo (visual only) ---------- */
.confLogoBox {
  display: none;
}

/* ---------- Conference header container ---------- */
.confTitleBox {
  background-color: #ffffff;
  border-top: 3px solid #234173;
  border-bottom: 1px solid #0f4c80;
  padding: 0;
  margin: 0;

  display: flex;
  justify-content: center;
  align-items: center;
}

/* ---------- Banner container ----------
   IMPORTANT:
   - responsive
   - scales correctly with browser zoom
   - no fixed width that breaks accessibility
-------------------------------------- */
.confTitle {
  width: 100%;
  max-width: 950px;
  margin: 0 auto;

  /* aspect-ratio keeps banner readable when zooming */
  aspect-ratio: 950 / 150;
  height: auto;

  background-image: url("https://indico.ifj.edu.pl/event/1479/images/234-new_conference%20banner_white(600dpi).png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}

/* ---------- Accessible hiding of default title text ----------
   Screen readers can still read the title
------------------------------------------------------------- */
.conference-title-link {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* ---------- Spacing below header ---------- */
#confSectionsBox {
  margin-top: 1.25rem;
}

/* =========================================================
   GLOBAL ACCESSIBILITY IMPROVEMENTS
   ========================================================= */

/* ---------- Base text contrast ---------- */
body {
  color: #1a1a1a;
  background-color: #ffffff;
  line-height: 1.5;
}

/* ---------- Links: not color-only ---------- */
a {
  color: #0f4c80;
  text-decoration: underline;
}

a:hover,
a:focus {
  color: #092f52;
}

/* ---------- Keyboard focus visibility ---------- */
a:focus,
button:focus,
input:focus,
select:focus,
textarea:focus {
  outline: 3px solid #ffbf47;
  outline-offset: 2px;
}

/* ---------- Respect user font scaling ---------- */
html {
  font-size: 100%;
}

/* =========================================================
   MOBILE & ZOOM FRIENDLY
   ========================================================= */

@media (max-width: 768px) {
  .confTitle {
    max-width: 100%;
    aspect-ratio: auto;
    min-height: 120px;
  }

  body {
    font-size: 1.1rem;
    line-height: 1.6;
  }
}

/* =========================================================
   HIGH CONTRAST MODE (Windows / forced-colors)
   ========================================================= */

@media (forced-colors: active) {
  .confTitle {
    background-image: none;
    height: auto;
  }

  .conference-title-link {
    position: static;
    width: auto;
    height: auto;
    margin: 0;
    clip: auto;
    white-space: normal;
    font-size: 1.5rem;
    font-weight: bold;
  }
}