/*
	(c)2026 - visuallizard.com

	Responsive styles using Media Queries
*/

body:not(.debug)::before,
body:not(.debug)::after { transform: translateX(-999vw); }

body::before,
body::after { transform: translateX(-999vw); }

/* Larger Desktop sizes (more than 1400px): */
@media only screen and (min-width: 1400px) {
	body:before { content: 'x-large'; }

}

/* Desktop sizes (up to 1400px): */
@media only screen and (max-width: 1400px) {
	body:before { content: 'large'; }

}

/* Medium Tablet sizes (up to 800px):  usually when mobile nav mode kicks in */
@media only screen and (max-width: 800px) {
	body:before { content: 'medium'; }

	body { font-size: 16px; }

	/* 	Site Header */
	.site-header { padding-block: 1rem; }
	.site-header-container { display: flex; justify-content: space-between; }
	.site-title { padding-block: 0; max-width: 300px; }
	.site-title-img { max-height: 80px; max-width: 250px; }
    .languages { right: 4.5rem; top: 1.5rem; font-size: 130%; }
    .site-header .social { display: none; }

	.search-form { float: none; margin: 1rem; display: none; }

	/* MOBILE nav */
	.main-nav { z-index: 100; background-color: var(--color-2); color: #fff; font-size: 20px; box-shadow: none; }
	.main-nav .nav-list,
	.main-nav li > .sub-list { width: 100%; max-height: 9999px; transform: scale(1); transition: max-height .2s ease-in; background: transparent; margin: 0 0 1rem; padding: 0; position: relative; top: auto; left: auto; opacity: 1; visibility: visible; border: none; box-shadow: none; }
	.main-nav .nav-item { border-top: 1px solid rgba(255,255,255,.1); display: flex; flex-wrap: wrap; overflow: hidden; }
	.main-nav .nav-link, .main-nav .nav-1 > .nav-item > .nav-link { -webkit-tap-highlight-color: transparent; width: 100%; border: none; padding-right: 0; }
	.main-nav .nav-link:hover { opacity: .8; }
	.main-nav .nav-item:hover > .nav-link { color: inherit; border: none; }

	.main-nav .nav-1 > .nav-item[data-nav-status="has-active"] > .nav-link,
	.main-nav .nav-1 > .nav-item[data-nav-status="active"] > .nav-link,
	.main-nav .nav-1 > .nav-item:hover > .nav-link { color: rgba(255,255,255,.5); }

	.main-nav .nav-1 { display: block; }
	.main-nav .nav-1 li a { font-size: 16px; color: #fff; padding: .75rem .5rem; }
	.main-nav .nav-1 > li > a {  font-weight: bold; color: #fff; text-align: left; }

	.main-nav .has-sub > .nav-link::after { content: none; }

	.main-nav .sub-list .sub-list { left: auto; display: block; visibility: visible; opacity: 1; transform: scale(1); left: auto; position: static; top: auto; margin: 0; padding: 0; }

	.main-nav .nav-2 { /* text-align: center;  */ }
	.main-nav .nav-2 > li { padding: 0 0 0 1rem; position: relative; }
	.main-nav .nav-2 li a { border-bottom: none; }

	.main-nav li > .nav-3 > li { padding-left: 1.5em; }
	.main-nav li > .nav-4 > li { padding-left: 2.5em; }
	.main-nav li > .nav-5 {  }

	.js         .main-nav { max-height: 100vh; display: block; position: absolute; left: -100%; left: -100vw; top: -1rem; width: 100%; width: 100vw; height: auto; min-height: 100vh; padding: 5rem 1.5rem 2rem; margin: 0; overflow: hidden; transition: transform .2s ease-in;  z-index: 1000; }
	.js .nav-on .main-nav { max-height: none; transform: translateX(100%); }

	.nav-toggle { width: 32px; height: 32px; min-width: 0; margin: 2rem 0; position: absolute; right: 1rem; top: -.5rem; bottom: 0; color: var(--color-link); padding: 0; border: none; z-index: 1001; background: transparent; transition: color .2s; flex-shrink: 0; }
	.js .nav-on .nav-toggle,
	.js .nav-on .nav-toggle:hover { color: #fff; }

	.js .nav-on main,
	.js .nav-on .site-footer { max-height: 0; overflow: hidden; /* hide content when navigation is open */ }


	.footer-brand { margin-bottom: 2rem; }
	.footer-brand .site-title-img { display: block; margin-inline: auto; }
	.footer-content { max-width: 250px; margin-inline: auto; }
	.site-footer .social { display: flex; justify-content: center; }
	.footer-nav { margin-block: 2rem; margin-inline: auto; text-align: center; }
	.partners-items { align-items: center; }
	.partners-item { width: 100%; margin-inline: auto; }

	/* 	Featured banners */
	.slick-dots { bottom: 0; }
	.banner-container { padding: 2% 4%; }



	/* 	General styles */
	.section { padding-block: 3rem; }

	.cke > .c2,
	.cke > .c3,
	.cke > .c4,
	.cke > .c5,
	.cke > .c6 { float: none; margin-left: 0; width: 100%; padding-block: 1rem; }

	.region-row { display: block; }
	.region-cell { padding: 0; }

	.flex { display: block; }
	.flex > div + div { margin: 0 0 1em 0; }

	h1, .h1 { font-size: 3rem; margin-bottom: 2rem; }
	h2, .h2 { font-size: 2rem; }
	h3, .h3 { font-size: 1.5rem; }
	h4, .h4 { font-size: 1.25rem; }

	table { font-size: 12px; }

	/* Forms */
	.fm-form [type="url"],
	.fm-form [type="tel"],
	.fm-form [type="text"],
	.fm-form [type="date"],
	.fm-form [type="email"],
	.fm-form [type="number"],
	.fm-form [type="password"],
	.fm-form select,
	.fm-form textarea { -webkit-appearance: none; }

	.fm-form [type="date"] {  min-height: 46px; }
	.fm-form [class^="input-"] { width: 100%; }

	.button { font-size: 1rem; min-width: 0; }
	.button.large { font-size: 100%;  margin-left: 0; margin-right: 0; }


	.pagination-links { font-size: 16px; }
	.pagination-links li:not([class]) { display: none; }

	.img-left,
	.img-right { float: none; margin-left: 0; margin-right: 0; }
	.img-round { display: block; max-width: 300px; margin-inline: auto; margin-bottom: 0; }


	/* 	Modules */

	/* 	Toggles */
	.toggle { }
	.toggle-head { }
	.toggle-head > .toggle-title { font-size: 1.25rem;  }
	.is-toggle-on .toggle-details { }


	/* 	Documents */
	.document-item { width: 45%; }


}

/* Small Mobile sizes (up to 480px): */
@media only screen and (max-width: 480px) {
	body:before { content: 'small'; }

	/* 	News */
	.article-item  { width: 100%; }

	/* 	Events */
	.event-item { width: 100%; }

}
