:root {

--color-default: #070707;

--color-blue: #181B39; /*R:74 G:99 B:172*/
--color-red: #D33333; /*R:212 G:52 B:51*/
--color-gray: #f7f7f7; /*R:212 G:52 B:51*/

--font-title: 'Open Sans';

}


:focus { outline: none !important; box-shadow: unset !important; border: unset !important; }
::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */ color: unset !important; opacity: 1; /* Firefox */ }
:-ms-input-placeholder { /* Internet Explorer 10-11 */ color: unset !important; }
::-ms-input-placeholder { /* Microsoft Edge */ color: unset !important; }

small, .small { font-size: 0.75em !important; }
strong, .strong, b, .bold { font-weight: 700 !important; }

body, html { height: 100%; }
body, body * { font-family: var(--font-title); font-weight: 300; color: var(--color-default); font-size: 15px; line-height: 25px; transition: all .5s !important; }


main { width: 100%; min-height: 100%; background-color: #fff; margin-top: 80px; position: relative; }

small { font-weight: 300; line-height: 200%; }

a { text-decoration: none; }


.card { border-radius: 15px; }

ol, ul { padding-left: 17px; }


.color-blue { color: var(--color-blue); }
.color-red { color: var(--color-red); }

.bg-gray { background-color: var(--color-gray); }

.bg-blue { background-color: var(--color-blue); }
.bg-red { background-color: var(--color-red); }
.bg-blue * { color: #fff; }
.bg-red * { color: #fff; }


.sitename { height: 100%; }
.sitename p { font-size: 30px; line-height: 20px; margin: 0px; text-transform: uppercase; }
.sitename img { height: 70%; }

.top { position: fixed; top: 0; z-index: 1020; }

.header { height: 80px; transition: all .5s; background-color: #181B39; }


.header a, .header a:visited { color: #fff; }
.header.scrolled { height: 60px; }
.header .nav a { font-size: 12px; text-transform: uppercase; letter-spacing: 1px; }
.header i[menu], .header i[close] { font-size: 30px; }

@media (max-width: 1200px) {

  .header .nav a {
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0px;
    font-weight: 700;
  }
}

.bx-menu { font-size: 25px; }

[data-link] { cursor: pointer; }

.full-image { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.full-image.left { object-position: left; }


h1 { font-size: 33px; line-height: 130%; font-weight: 700; }
h2 { font-size: 33px; line-height: 130%; font-weight: 700; }
h3 { font-size: 30px; line-height: 130%; }
h5 { font-size: 20px; line-height: 130%; width: 70%; font-weight: 700; }




.flag { background-position: center; background-repeat: no-repeat; background-size: 100% 100%; width: 20px; height: 20px; margin-right: 10px; border-radius: 50%; }
.flag.hu { background-image: url('../../images/flag/hu.png'); }
.flag.en { background-image: url('../../images/flag/en.png'); }
.flag.de { background-image: url('../../images/flag/de.png'); }


.indexbg { height: 50vh; min-height: 50vh; }
.indexbg img { position: absolute; top: 0px; left: 0px; z-index: 0; object-position: center; object-fit: cover; width: 100%; height: 100%; /*-webkit-filter: grayscale(100%); filter: grayscale(100%);*/ }
.indexbg .row { position: relative; z-index: 1; }
.indexbg section { padding: 100px; width: 100%; height: 50%; display: flex; justify-content: center; align-items: center; }
.indexbg section * { font-size: 40px; font-weight: 700; color: #fff; line-height: 130%; }
.indexbg section.bg-blue { background-color: rgba(74, 99, 172, 0.8); }
.indexbg section.bg-red { background-color: rgba(212, 52, 51, 0.8); }
.indexbg a { display: contents; }

.indexbg-cell { /* height: 50vh; min-height: 50vh; */ }
/*.indexbg-cell img { position: absolute; top: 0px; left: 0px; z-index: 0; object-position: center; object-fit: cover; width: 100%; height: 100%; } */ /*-webkit-filter: grayscale(100%); filter: grayscale(100%);*/  
.indexbg-cell img { } 
.indexbg-cell section { position: relative; z-index: 1; padding: 100px; width: 100%; height: 50%; display: flex; justify-content: center; align-items: center; }

.indexbg-cell section.bg-blue { background-color: rgba(74, 99, 172, 0.8); }
.indexbg-cell section.bg-red { background-color: rgba(212, 52, 51, 0.8); }
.indexbg-cell a { display: contents; }
.indexbg-cell .btn { padding: 15px; background-color: #fff; color: var(--color-blue); width: fit-content; border-radius: 60px; margin-bottom: 20px; border: 1px solid #fff; cursor: pointer; }
.indexbg-cell .btn:hover, .indexbg-cell:hover .btn { background-color: transparent; color: #fff; }

.bgcontain { background-position: right bottom; background-repeat: no-repeat; background-size: contain; background-repeat: no-repeat; }



.center { display: flex; flex-direction: column; align-items: center; }
.center * { text-align: center; }


article a { text-decoration: underline; }

article .center  { margin-top: 40px; }
article a.scroll  { padding: 15px; background-color: #fff; width: fit-content; border-radius: 60px; margin-bottom: 20px; border: 1px solid #fff; cursor: pointer; text-decoration: none; }
.bg-blue article a.scroll { color: var(--color-blue); }
.bg-blue article a.scroll:hover { color: #fff; background-color: var(--color-blue); border-color: #fff; }
.bg-red article a.scroll { color: var(--color-red); }
.bg-red article a.scroll:hover { color: #fff; background-color: var(--color-red); border-color: #fff; }
.bg-gray article a.scroll { background-color: var(--color-blue); color: #fff; }
.bg-gray article a.scroll:hover { color: var(--color-blue); background-color: transparent; border-color: var(--color-blue); }




.sticky { position: sticky; top: 100px; }

.redB { padding: 15px; background-color: var(--color-red); color: #fff; width: fit-content; border-radius: 60px; border: 1px solid var(--color-red); cursor: pointer; text-align: center; }
.redB:hover { background-color: #fff; color: var(--color-red); }

.blueB { padding: 15px; background-color: var(--color-blue); color: #fff; width: fit-content; border-radius: 60px; border: 1px solid var(--color-blue); cursor: pointer; text-align: center; }
.blueB:hover { background-color: #fff; color: var(--color-blue); }


.btn { padding: 15px; background-color: var(--color-blue); color: #fff; width: fit-content; border-radius: 60px; border: 1px solid var(--color-blue); cursor: pointer; text-align: center; }
.btn:hover { background-color: #fff; color: var(--color-blue); }


.bx { font-size: 33px; }

.icon { width: 70px; }
.icon img { width: 100%; }






.accordion-item { border: unset; }
.accordion-button:not(.collapsed), .accordion-button { color: unset; background-color: var(--color-gray); box-shadow: inset 0 -1px 0 #fff; font-weight: 700; }





.error-404 main .container-fluid { height: 100vh; }



.accordion-button[aria-expanded="false"]::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%230c63e4'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
  transform: rotate(0deg);
}
.accordion-button[aria-expanded="true"]::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%230c63e4'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
  transform: rotate(-180deg);
}



.facebook { line-height: 1px; }
.facebook i { color: #fff; font-size: 22px; }
.instagram { line-height: 1px; }
.instagram i { color: #fff; font-size: 22px; }





.headline { background-color: var(--color-red); }
.headline * { font-size: 20px; color: #fff; }
.headline *:hover { font-size: 20px; color: #fff; }

@media (max-width: 550px) {

.headline * { font-size: 18px; color: #fff; }
.headline *:hover { font-size: 18px; color: #fff; }

}




footer a { font-size: 14px; }



@media (max-width: 991px) {

header .menu { position: absolute; background-color: var(--color-blue); top: 50px; box-shadow: 0 1rem 1rem rgba(0,0,0,.15) !important; height: fit-content !important; transition: all .5s; }
header .nav a { font-size: 16px !important; color: #fff; }

.indexbg { min-height: calc( 100vh - 50px ); } 
.indexbg section * { font-size: 30px; }

h1 { font-size: 30px; }
h2 { font-size: 30px; }
h3 { font-size: 20px; }

.card { border-radius: unset; }

}


@media (max-width: 1300px) {

.header { height: 50px !important; }
main { margin-top: 50px; }


.sitename small { display: none; }
header .nav a { font-size: 11px; }

.cover h1 { font-size: 30px; }
.cover h2 { font-size: 30px; }

}


@media (max-width: 550px) {

.sitename img { height: 70%; }

.indexbg-cell section { height: 100%; }

}