/* Adapt the existing IMAS design to Joomla 6 module markup. */
#header2 { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; }
#header2 > :last-child { justify-self: end; }
#header2 > :first-child { justify-self: start; margin-left: 0; margin-right: 0; }
#header2 .mod-languages li.lang-active { background: transparent; }
#header2 .mod-languages ul { background: transparent; }
#preMain .nkms-slider { font-size: 1.2rem; }
#preMain .nkms-slider-box { width: 100%; }
#preMain .nkms-track { align-items: stretch; }
#preMain .nkms-slide { position: relative; min-height: 25em; padding: 0; opacity: 1; }
#preMain .nkms-slide .card { box-sizing: content-box; width: 16rem; }
#preMain .nkms-slide .card img { display: block; width: 100%; height: auto; }
#preMain .nkms-dot-controls { bottom: 1.5rem; gap: .65rem; }
#preMain .nkms-dot-controls button { width: 1rem; height: 1rem; border: 0; background: #ad8ca3; }
#preMain .nkms-dot-controls button.is-active { background: #5c1947; }
@media(min-width: 64rem) { #preMain .nkms-slide .card { width: 20.5rem; } }
@media(max-width: 40rem) {
  #header2 { grid-template-columns: 1fr auto 1fr; gap: .5rem; }
  #header2 #mainlogo { max-width: 10rem; }
  #preMain .nkms-slider { font-size: 1rem; }
  #preMain .nkms-slide .card { width: 15rem; max-width: calc(100% - 2rem); }
}

/* Joomla 6 menu buttons retain the typography and separators of the IMAS menu. */
#togglemenu { font-size: 1.3rem; max-width: 100vw; overflow-y: auto; }
#togglemenu > ul { box-sizing: border-box; max-width: 100vw; margin: auto 0; padding: 2em 3em 7em; }
#togglemenu > ul > li { padding: .5em 0; border-bottom: 1px solid #fff; }
#togglemenu > ul > li:last-child { border-bottom: 0; }
#togglemenu > ul > li > a,
#togglemenu .mod-menu__toggle-sub {
  display: block; box-sizing: border-box; width: 100%; padding: .25em 0;
  border: 0; border-radius: 0; background: transparent; color: #fff;
  font: inherit; line-height: 1.4; text-align: left; text-transform: uppercase;
  cursor: pointer; text-decoration: none;
}
#togglemenu .mod-menu__toggle-sub .separator { font: inherit; padding: 0 2em 0 0; }
#togglemenu .mod-menu__toggle-sub > .icon-chevron-down { display: none; }
#togglemenu .mod-menu__toggle-sub[aria-expanded="true"] .separator::after { transform: rotate(90deg); }
#togglemenu .mod-menu__sub { margin: 0; padding: 0; font-size: 1em; }
#togglemenu .mod-menu__sub[aria-hidden="true"] { display: none; }
#togglemenu .mod-menu__sub[aria-hidden="false"] { display: block; max-height: none; }
#togglemenu .mod-menu__sub li { margin: 0; padding: 0; }
#togglemenu .mod-menu__sub li a { display: block; padding: .25em 1em; font-size: .9em; line-height: 1.4; }
#togglemenu .mod-menu__toggle-sub:hover { opacity: .4; }
#togglemenu a:focus-visible,
#togglemenu button:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
#header2 .mod-languages a { color: #ad8ca3; }
#header2 .mod-languages .lang-active a,
#header2 .mod-languages .lang-active a:hover,
#header2 .mod-languages a[aria-current="true"] { color: #fff !important; }

/* Archive headings are enhanced after the deferred template script loads. */
.toggleBox > div > a {
  position: relative; display: block; box-sizing: border-box;
  padding-left: 2.5em; padding-right: 1em; cursor: pointer;
}
.toggleBox > div > a > p { margin: 0; }
.toggleBox > div > a:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.toggleBox.jsInitiated > div > div[hidden] { display: none; }
@media (max-width: 40rem) {
  #togglemenu { font-size: 1.1rem; }
  #togglemenu > ul { padding: 3.5em 1.5em 2em; }
}
