/*
    menu header
*/
.menu {
    display: flex;
    align-items: center;
}

.menu__logo {
	margin-right: 30px;
    transition: all 0.3s;
    font-weight: 500;
    font-size: 20px;
    color: var(--color-primary);
}

.menu__logo:hover,
.menu__logo:focus,
.menu__logo:visited {
    text-decoration: none;
}

.menu__logo img {
    width: 100px;
    height: auto;
}

@media (min-width: 1550px) {
    .menu__logo {
        margin-right: 55px;
        margin-left: 25px;
    }
}

.menu-content {
    margin-left: auto;
}

@media (max-width: 768px) {
    .menu-content  {
        display: none;
    }
}

.menu-content__item {
    position: relative;
    font-size: 18px;
    color: var(--color-primary);
    margin-right: 20px;
}

@media (max-width: 992px) {
    .menu-content__item {
        margin-bottom: 0;
    }
}

.menu-content__item:hover,
.menu-content__item:focus,
.menu-content__item.active {
    text-decoration: none;
    color: var(--color-primary);
}

.menu-content__item:hover::after,
.menu-content__item:focus::after,
.menu-content__item.active::after {
    width: 100%;
}

@media (max-width: 768px) {
    .menu-content__item:hover::after,
    .menu-content__item:focus::after,
    .menu-content__item.active::after  {
        width: 40px;
    }
}

.menu-content__item::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -10px;
    height: 2px;
    width: 0;
    background-color: var(--color-primary);
    transition: all .3s;
}

#header.toggle .menu-content {
    background-color: var(--color-primary);
    z-index: 100;
    opacity: 1;
    padding: 30px;
    display: block;
    position: absolute;
    top: 75px;
    bottom: 0;
    right: 0;
    left: 0;
}

#header.toggle .menu-content .menu-content__item {
    display: flex;
    align-self: flex-start;
    font-size: 24px;
    font-weight: 600;
    color: var(--color-white);
    margin-bottom: 20px;
}

#header.toggle .menu-content .menu-content__item::after {
    background-color: var(--color-white);
}

#header.toggle .menu-trigger span:nth-child(1) {
    top: 18px;
    width: 0%;
    left: 50%;
}

#header.toggle .menu-trigger span:nth-child(2) {
    transform: rotate(45deg);
}

#header.toggle .menu-trigger span:nth-child(3) {
    transform: rotate(-45deg);
}

#header.toggle .menu-trigger span:nth-child(4) {
    top: 18px;
    width: 0%;
    left: 50%;
}

.menu-trigger {
    display: none;
    margin-top: 5px;
    width: 30px;
    height: 30px;
    position: relative;
    transform: rotate(0deg);
    cursor: pointer;
    margin-left: auto;
}

@media (max-width: 768px) {
    .menu-trigger {
        display: block;
    }
}

.menu-trigger span {
    display: block;
    position: absolute;
    height: 2px;
    border-radius: var(--border-radius);
    width: 100%;
    background: var(--color-primary);
    opacity: 1;
    left: 0;
    transform: rotate(0deg);
    transition: .25s ease-in-out;
}

.menu-trigger span:nth-child(1) {
    top: 4px;
}

.menu-trigger span:nth-child(2),
.menu-trigger span:nth-child(3) {
    top: 12px;
}

.menu-trigger span:nth-child(4) {
    top: 20px;
}

/*
    Menu dropdown
*/
.menu-dropdown {
    position: relative;
    margin: 0 20px;
}

.menu-dropdown .menu-content__item {
    font-weight: 800;
    font-size: 16px;
    margin-right: 15px;
    margin-bottom: 0;
}

.menu-dropdown > .menu-content__item::after {
    content: none;
}

.menu-dropdown.toggle .menu-dropdown__content,
.menu-dropdown:hover .menu-dropdown__content {
    display: block;
}

.menu-dropdown .menu-dropdown__content {
    display: none;
    position: absolute;
    left: -20px;
    padding: 5px 20px;
}

@media (max-width: 768px) {
    .menu-dropdown {
        margin-right: 0;
        margin-left: 5px;
    }

    .menu-dropdown .menu-content__item {
        margin-right: 0;
    }
}

.header-sticky .menu-dropdown:hover .menu-dropdown__content {
    background-color: var(--color-white);
}

.menu-dropdown .menu-dropdown__content .menu-content__item {
    display: block;
    line-height: 1.5;
    padding-bottom: 10px;
}

.menu-dropdown .menu-dropdown__content .menu-content__item::after {
    bottom: 5px;
}

/*
    Availability
*/
.availability {
    font-size: 10px;
    letter-spacing: 2px;
    font-weight: 800;
    text-transform: uppercase;
}

.availability i {
    font-size: 14px;
    vertical-align: sub;
    margin-right: 8px;
}


/*
    menu footer
*/
footer .menu-content {
    margin-left: 0;
}

footer .menu-content__item {
    font-size: inherit;
}


/*
    buttons
*/
button {
	background: transparent;
}

.button {
	height:38px;
	display: inline-flex;
    align-items: center;
    justify-content: center;
	min-width:148px;
	box-sizing: border-box;
	border:1px solid var(--color-primary);
	border-radius:var(--border-radius);
	color:var(--color-primary);
	text-align:center;
	font-weight:bold;
	text-transform:uppercase;
	text-decoration:none;
	padding:0 15px;
	font-size:11px;
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
	cursor:pointer;
}
.button:hover {
    text-decoration: none;
	color:var(--color-white);
	background-color:var(--color-primary);
	border-color:var(--color-primary);
}
.button * {
	color:inherit;
}
button.button {
	background-color:transparent;
}
.button + .button {
    margin-left: 10px;
}
.button.cta {
	color:var(--color-white);
	background-color:var(--color-primary);
	border-color:var(--color-primary);
}
.button.cta:hover {
	color:var(--color-primary);
	background-color:var(--color-white);
	border-color:var(--color-primary);
}
.button.disabled {
	color:var(--color-disabled) !important;
	background:var(--color-white) !important;
	border-color:var(--color-disabled) !important;
	cursor: not-allowed !important;
}
.button [class^="icon-"],
.button [class*=" icon-"] {
	margin-right:5px;
}
.button.w-auto [class^="icon-"],
.button.w-auto [class*=" icon-"] {
    margin-right: 0;
}

/*
    tables
*/
/* tabulky */
table { border-collapse:collapse; width:100%; table-layout:fixed; box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.05); margin:0 0 1rem 0; }
table * { text-decoration:none; }
table th { padding:10px 10px 10px 10px; text-align:left; vertical-align:bottom; background:var(--color-primary); color:var(--color-white); }
table td { padding: 5px 10px; text-align:left; vertical-align:top;}
table thead tr th > a,
table thead tr th > span { text-decoration:none; display:block;	white-space:nowrap;	overflow:hidden; text-overflow:ellipsis; }
table tr td > span { display:block; }
table tr td > span.maintext { }
table tr td > span.subtext { font-size:0.8rem; }
table tr:hover td { background:var(--color-white); }
table .order { display:block; position:relative; padding-right:1em; }
table .order.asc:after,
table .order.desc:after { position:absolute; top:0; right:0; width:1em; content:'˄'; font-family:'icomoon'; }
table .order.desc:after { content:'˅'; font-family:'icomoon'; }
table .input { padding:0px 0px 0px 0px; }
table.auto { table-layout:auto; }
