@font-face {
    font-family: 'itc_franklin_gothic_stdbook';
    src: url('fonts/itcfranklingothicstd-book-webfont.woff2') format('woff2'),
         url('fonts/itcfranklingothicstd-book-webfont.woff') format('woff'),
         url('fonts/itcfranklingothicstd-book-webfont.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'itcfranklingothicstd-bkcd';
    src: url('fonts/itcfranklingothicstd-bkcd-webfont.woff2') format('woff2'),
         url('fonts/itcfranklingothicstd-bkcd-webfont.woff') format('woff'),
         url('fonts/itcfranklingothicstd-bkcd-webfont.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'itcfranklingothicstd-bkcp';
    src: url('fonts/itcfranklingothicstd-bkcp-webfont.woff2') format('woff2'),
         url('fonts/itcfranklingothicstd-bkcp-webfont.woff') format('woff'),
         url('fonts/itcfranklingothicstd-bkcp-webfont.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'itcfranklingothicstd-med';
    src: url('fonts/itcfranklingothicstd-med-webfont.woff2') format('woff2'),
         url('fonts/itcfranklingothicstd-med-webfont.woff') format('woff'),
         url('fonts/itcfranklingothicstd-med-webfont.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}




@font-face {
    font-family: 'Garamond Premier Pro';
    src: local('Garamond Premier Pro Medium Disp'), local('Garamond-Premier-Pro-Medium-Disp'),
        url('fonts/GaramondPremrPro-MedDisp.woff2') format('woff2'),
        url('fonts/GaramondPremrPro-MedDisp.woff') format('woff'),
        url('fonts/GaramondPremrPro-MedDisp.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
}



:root {
	--color-text-base: #141718;	
	--color-text-pale: #6C7275;
	--color-bg-site: #F3F5F7;
	--color-border: rgba(232, 236, 239, 1);
}

:root body.negative {
	--color-text-base: #FFFFFF;	
	--color-text-pale: rgba(255, 255, 255, 0.68);
	--color-bg-site: #141718;	
	--color-border: rgba(108, 114, 117, 0.4);
}


html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td, article {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-weight: inherit;
	font-style: inherit;
	font-size: 100%;
	font-family: inherit;
	vertical-align: baseline;
	box-sizing: border-box;
    }
	
html, body {
	height: 100%;
}

table, caption, tbody, tfoot, thead, tr, th, td     {
    vertical-align : top;
    }

:focus {
	outline: 0;
    }
    
.cf:before,
.cf:after {
    content:"";
    display:table;
}
.cf:after {
    clear:both;
}
/**
 * For IE 6/7 (trigger hasLayout)
 */
.cf {
    *zoom:1;
}

.desktop {
	display: block;
}
.mobile {
	display: none;
}

body {
	
	color: var(--color-text-base);
	overflow-y: scroll;
	background-color: var(--color-bg-site);
	font-family: 'itc_franklin_gothic_stdbook',Arial;
	font-size: 18px;
	line-height: 21.6px;
	
    }
body.hidden-scroll {
	overflow-y: hidden;
}
ol, ul {
	list-style: none;
    }

table {
	border-collapse: collapse;
	border-spacing: 0;
    }

td  {
    vertical-align : top;
    }

caption, th, td {
	text-align: left;
	font-weight: normal;
    }

blockquote:before, blockquote:after,
q:before, q:after {
	content: "";
    }

blockquote, q {
	quotes: "" "";
    }

strong, b {
	font-family: 'itcfranklingothicstd-med', Arial;
	font-weight: 600;
}

.highlight {
	font-family: 'Garamond Premier Pro', Arial;
	font-weight: normal;
}

a {	
	color: inherit;	
    text-decoration: none;
}

a:hover{
    text-decoration: underline;
}

p {
	margin-bottom: 20px;
}



details summary::-webkit-details-marker,
details summary::marker {
	display: none; 
	content: "";
}
details summary:after {
	content:'';
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 24px;
	height: 24px;
	display: block;
	
	background-image: url('../images/icons/select.svg');
	background-position: center;
	background-size: auto;
	background-repeat: no-repeat;

}


details[open] summary:after {
	transform: rotate(180deg);
}

h1,
.h1 {
	
}

h2,
.h2 {

}

h3,
.h3 {
	font-family: 'itcfranklingothicstd-med', Arial;	
	font-weight: 600;
	font-size: 24px;
	line-height: 28.8px;

	margin-bottom: 25px;
}

h4,
.h4 {
	font-family: 'itcfranklingothicstd-med', Arial;	
	font-weight: 600;
	font-size: 18px;
	line-height: 21.6px;
}
h4.wider,
.h4.wider {
	letter-spacing: 1px;
}

.button-black {
	width: auto;
	height: 40px;
	line-height: 38px;
	display: inline-block;
	color: white;
	background-color: rgba(38, 41, 43, 1);	
	border: solid rgba(38, 41, 43, 1) 1px;
	padding: 0px 16px 0px 16px;
	border-radius: 4px;
	margin: 0;
	text-decoration: none;
	
	font-size: 16px;
	font-family: inherit;
	cursor: pointer;
	text-align: center
}

.button-black:hover {
	text-decoration: none;
	background-color:white;
	color: rgba(38, 41, 43, 1);
}

.button-transparent {
	width: auto;
	height: 40px;
	line-height: 38px;
	display: inline-block;
	color: var(--color-text-base);
	background-color: transparent;	
	padding: 0px 16px 0px 16px;
	border-radius: 4px;
	border: solid rgba(38, 41, 43, 1) 1px;
	margin: 0;
	text-decoration: none;
	font-size: 16px;
	font-family: inherit;
	cursor: pointer;
	text-align: center
}

.button-transparent:hover {
	text-decoration: none;
	background-color: rgba(38, 41, 43, 1);
	color: white;
}

.more {
	font-size: 16px;
	line-height: 19.2px;
	font-weight: normal;
	padding-right: 24px;

	background-image: url('../images/icons/arrow-right.svg');
	background-repeat: no-repeat;
	background-position: center right; 
	background-size: 17px auto;
}


main {
	margin: 0 auto;
    position: relative;
    width: 100%;
	height: auto;
	display: inline-block;
}

main div.container{
	height: auto !important;
    min-height: 100%;	
	display: flex;
	flex-direction: column;
	
}


/* header div.container{
	width: 100%;
	height: auto;
} */

header {
	height: 250px;
	width: 100%;	
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

header .wrapper {
	border-bottom: 1px solid var(--color-border);
	width: 100%;
	height: auto;
	display: flex;
}

header .wrap {
	width: 100%;
	max-width: 1440px;
	height: auto;
	
	margin: 0 auto;
	padding: 30px 40px;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	justify-content: space-between;
	transition: all .3s ease;
	
	
}
header .wrap.infobar {
	padding: 0 40px;
}


header ul.nav-meta {
	display: flex;
	margin: 24px 0;
	height: 40px;
	align-items: center;
	
	
}

header ul.nav-meta > li {
	display: flex;
	margin-right: 24px;
	padding-right: 24px;
	font-size: 14px;
	height: 24px;
	line-height: 24px;
	position: relative;
	border-right: 1px solid var(--color-border);
}

header ul.nav-meta > li.opening-hours {
	padding-left: 30px;
	background-image: url('../images/icons/time-filled.svg');
	background-repeat: no-repeat;
	background-position: center left;
	color: var(--color-text-base);
}
body.negative header ul.nav-meta > li.opening-hours {	
	background-image: url('../images/icons/time-filled-white.svg');	
	color: var(--color-text-pale);
}

header ul.nav-meta > li.address {
	padding-left: 30px;
	background-image: url('../images/icons/pin.svg');
	background-repeat: no-repeat;
	background-position: center left;
	color: var(--color-text-base);
	text-decoration: none;
}
body.negative header ul.nav-meta > li.address {
	background-image: url('../images/icons/pin-white.svg');
	color: var(--color-text-pale);
}

header ul.nav-meta > li.phone {
	padding-left: 30px;
	background-image: url('../images/icons/phone.svg');
	background-repeat: no-repeat;
	background-position: center left;
	color: var(--color-text-base);
}
body.negative header ul.nav-meta > li.phone {
	background-image: url('../images/icons/phone-white.svg');
	color: var(--color-text-pale);
	
}

header ul.nav-actions {
	display: flex;
	margin: 24px 0;
	height: 40px;
}


header ul.nav-actions > li {
	display: inline-block;
	margin-right: 24px;
	padding-right: 24px;
	font-size: 14px;
	height: 24px;
	position: relative;
	border-right: 1px solid var(--color-border);
}

header ul.nav-actions > li.button {
	padding-left: 16px;
}


header ul.nav-meta > li,
header ul.nav-meta > li a,
header ul.nav-actions > li,
header ul.nav-actions > li a {
	font-size: 16px;

}



header div.nav-left,
header div.nav-right {	
	width: calc((100% - 338px) / 2);
	display: flex;
	
}
header div.nav-left {
	justify-content: flex-start;
}
header div.nav-right {
	justify-content: flex-end;
}


header div.logo {
	width: auto;	
	margin: 0 30px;
	
}

header div.logo a img.black { display:block; }
header div.logo a img.white { display:none; }

header ul.nav-menu{
   
}
header ul.nav-menu > li{
	display: inline-block;
	margin-right: 24px;
	padding-right: 24px;
	font-size: 14px;
	height: 24px;
	position: relative;
	border-right: 1px solid var(--color-border);
}
header ul.nav-menu li:last-child{
	margin-right: 0;
}
header ul.nav-menu li a {
	text-decoration: none;	
	color: var(--color-text-base);	
	display: inline-block;
	
	font-size: 18px;
	font-weight: 400;
	line-height: 21.6px;
	letter-spacing: 1px;
	text-align: left;
}
body.negative header ul.nav-menu li a {
	color: var(--color-text-pale);
}

header ul.nav-menu li > a:hover,
header ul.nav-menu li.active > a {	
	color: var(--color-text-pale);		
}
body.negative header ul.nav-menu li > a:hover,
body.negative header ul.nav-menu li.active > a {
	color: var(--color-text-base);
}

body.negative header div.logo a img.black { display:none; }
body.negative header div.logo a img.white { display:block; }


header div.nav-left ul.nav-menu li:last-child,
header div.nav-right ul.nav-menu li:last-child,
header ul.nav-meta > li:last-child,
header ul.nav-actions > li {
	border-right: none;
	margin-right: 0;
	padding-right: 0;
}

header ul.nav-menu > li.language-active {
	padding-right: 20px !important;

	background-image: url('../images/icons/select.svg');
	background-repeat: no-repeat;
	background-position: right center;
	
}
body.negative header ul.nav-menu > li.language-active {
	background-image: url('../images/icons/select-white.svg');
}

header ul.nav-menu > li.language-active > a {
	text-transform: uppercase;
}

header ul.nav-menu > li > ul {
	display: none;
	position: absolute;
	left: -24px;
	padding: 10px 0px;

	background-color:#ffffff;
	text-align: left;
	z-index:5;
	
	width: 230px;
	box-shadow: 0px 0px 15px 0px rgba(26, 25, 25, 0.25);


} 

header ul.nav-menu > li > ul li {
	display: block;
	color: black; 
	padding: 2px 24px;
}

header ul.nav-menu > li > ul li a {
	display: block;
	color: #141718 !important;
	text-decoration: inherit;
	padding: 4px 0px;
	
	font-size: 14px;
	font-weight: 400;
	line-height: 16.8px;
	letter-spacing: 1px;
	text-align: left;
}
header ul.nav-menu > li > ul li a:hover,
header ul.nav-menu > li > ul li.active a {
	color: #6C7275 !important;
}

header ul.nav-menu > li:hover > ul {
    display: block; 
}

header ul.nav-menu > li > ul#language_navigation {
	left: auto;	
	right: -5px;
	width: 120px;
}



main .over-title {
	font-size: 14px;
	line-height: 16.8px;
	letter-spacing: 1px;
	margin-bottom: 20px;
	
}


main h1 {	
	font-size: 60px;
	line-height: 60px;
	font-weight: 600;
	
	font-family: 'itcfranklingothicstd-med', Arial; 
	
	margin-bottom: 10px;
}
main h1 > span,
main h1 > i {	
	font-size: 65px;
	line-height: 65px;
	font-weight: 500;
	font-family: 'Garamond Premier Pro', Arial; 		
	font-style:normal;
}

main h2 {
	font-size: 40px;
	line-height: 47px;
	font-weight: 700;
	
	font-family: 'itcfranklingothicstd-med', Arial; 
	
	margin-bottom: 34px;
}

main h2 > span,
main h2 > i {
	font-size: 45px;
	line-height: 40px;
	font-weight: 500;	
	font-family: 'Garamond Premier Pro', Arial; 	
	font-style:normal;
}

main h3 {
	font-size: 32px;
	line-height: 38.4px;
	font-weight: 600;
	
	font-family: 'itcfranklingothicstd-med', Arial; 
	
	margin-bottom: 34px;
}

main h4 {
	font-size: 24px;
	line-height: 28.8px;
	font-weight: 600;
	
	font-family: 'itcfranklingothicstd-med', Arial; 
	
	margin-bottom: 15px;
}




/* Willkommen-module --- start */
.willkommen-module {
	width: 100%;
	display: inline-block;
	height: auto;
	
}
.willkommen-module .wrap {
	width: 1274px;
	height: auto;
	margin: 0 auto;
	padding: 30px 40px;
	position: relative;
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	transition: all .3s ease;
}

.willkommen-module .wrap .col {
	width: 47%;
	height: auto;
	margin: 0 auto;
	padding: 30px 12px;
	position: relative;
	display: flex;
	flex-direction: column;
	
	transition: all .3s ease;
	
}
.willkommen-module .wrap .col.left {
	width: 53%;
}


.willkommen-module .wrap .col .slimmer {
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 75px 100px;
	position: relative;
	display: flex;
	flex-direction: column;
}
.willkommen-module .wrap .col.right .slimmer {
	padding: 100px 25px 100px 100px;
}

.willkommen-module .wrap .col .slimmer ul {
	list-style: disc;
}
.willkommen-module .wrap .col .slimmer ul li {
	margin-left: 20px;
}
.willkommen-module .wrap .col .slimmer ol {
	list-style: decimal;
}
.willkommen-module .wrap .col .slimmer ol li {
	margin-left: 20px;
}

.willkommen-module .person {
	margin: 35px 0 0;
}

.person {
	width:275px;
}
.person .image-wrap {
	margin: 0 0 20px;
}

.person .image-wrap {
    width: 100%;
    height: 275px;
    display: block;
    position: relative;
    overflow: hidden;
    background-position: center;
    background-size: 100%;
}

.person .image-wrap img {
    position: absolute;
    top: 0;
    left: 0;
    /*transition: opacity .8s ease;*/
	width:100%;
	height:auto;
}

.person .image-wrap img:last-child:not(:first-child) {
    opacity: 0;
    visibility: hidden;
}

.person .image-wrap:hover img:first-child:not(:last-child) {
    opacity: 0;
    visibility: hidden;
}

.person .image-wrap:hover img:last-child {
    opacity: 1;
    visibility: visible;
}



.willkommen-module .button-black,
.willkommen-module .button-transparent {
	margin: 20px 0;
	align-self: flex-start;
	padding: 0 30px;
}

.person .title {
	font-family: 'itcfranklingothicstd-med', Arial; 
	font-weight: 600;
	max-width: 250px;
}

.person .langs {
	display: block;
	width: 100%;
	padding: 10px 0;
}

.person .langs a,
.person .langs span {
	padding-left: 26px;
	position: relative;
	display: inline-block;
	
	background-position: left center;
	background-size: 18px 18px;
	background-repeat: no-repeat;
	
	color: var(--color-text-pale);
	font-size: 14px;
	line-height: 18px;
	margin-right: 5px;
	margin-bottom:5px;
	
}
.person .langs .d {
	background-image: url('../images/icons/flag-d.png');
}
.person .langs .uk {
	background-image: url('../images/icons/flag-uk.png');
}
.person .langs .al {
	background-image: url('../images/icons/flag-al.png');
}
.person .langs .f {
	background-image: url('../images/icons/flag-f.png');
}
.person .langs .hr {
	background-image: url('../images/icons/flag-hr.png');
}
.person .langs .i {
	background-image: url('../images/icons/flag-i.png');
}
.person .langs .mk {
	background-image: url('../images/icons/flag-mk.png');
}
.person .langs .p {
	background-image: url('../images/icons/flag-p.png');
}
.person .langs .pl {
	background-image: url('../images/icons/flag-pl.png');
}
.person .langs .rus {
	background-image: url('../images/icons/flag-rus.png');
}
.person .langs .srb {
	background-image: url('../images/icons/flag-srb.png');
}
.person .langs .tr {
	background-image: url('../images/icons/flag-tr.png');
}
/* Willkommen-module --- end */


/* Banner module --- start */
.banner-module {
	position: relative;
	overflow: hidden;
	width: 100%;
	display: inline-block;
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: center;



	width: 100%;
	/* width: 1440px; */

/*** Daniel: The width could be 100% or fixed to 1440px, but not clear from figma what is required. ***/


	height: 808px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 40px auto 125px;
	
}
.banner-module .wrapper {
	width: 100%;
	max-width: 1250px;
	height: auto;
	margin: 0 auto;
	padding: 0 40px;
}
.banner-module .wrapper .wrap {
	max-width: 475px;
	height: auto;
}

sup { 
	font-size: 50%;
	line-height: normal;
	position: relative;
	top: -0.7em;
}

.banner-module .button-black,
.banner-module .button-transparent {
	margin: 20px 16px 0 0;
	align-self: flex-start;
	padding: 0 50px;
	min-width:280px;
}

/* Banner module --- end */


/* Accordion module --- start */
.accordion-module {
	position: relative;
	overflow: hidden;
	width: 100%;
	display: inline-block;
	
	width: 100%;
	
	height: auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 60px auto 100px;
	padding: 40px 0;
	
}
.accordion-module .wrapper {
	width: 100%;
	max-width: 1250px;
	height: auto;
	margin: 0 auto;
	padding: 0 40px;
}

.accordion-module .details-area {
	display: block;
	margin: 45px 0 40px;
	width: 100%;
}


.accordion-module details {
	background-color: white;
	font-size: 20px;
	line-height: 24px;

	margin-bottom: 24px;
	padding: 24px;

	cursor: pointer;
	position: relative;
}
.accordion-module details > summary {
	position: relative;
	padding-right: 100px;
}
.accordion-module details[open] > summary {	
	margin-bottom: 24px;	
}

details summary {
	position: relative;
	cursor: pointer;
}


/* Accordion module --- end */

/* Quicklinks module --- start */
.quicklinks-module {
	width: 100%;
	max-width: 1274px;
	height: auto;
	margin: 40px auto;
	padding: 60px 40px;
	position: relative;
	display: flex;
	flex-direction: column;
	
	transition: all .3s ease;	
}
.quicklinks-module .heading {
	display: block;
	width: 100%;
	padding: 0 12px;
}
.quicklinks-module .heading > * {
	max-width: 450px;
}
.quicklinks-module .wrapper {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
/* 	margin: 38px 0 45px; */
}

.quicklinks-module .wrapper .item {
	width: 50%;
	height: auto;
	padding: 36px 12px;
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: flex-start;	
	
	transition: all .3s ease;
	
}

.quicklinks-module .wrapper .item .more {
	margin-top: 8px;
}
.quicklinks-module .wrapper .item h4 {
	margin-bottom: 30px;
}
.quicklinks-module .wrapper .item .button-transparent,
.quicklinks-module .wrapper .item .button-black {
	margin-bottom: 24px;
}



/* Quicklinks module --- end */



/* Quotes module --- start */
.quotes-module {
	width: 100%;
	max-width: 1274px;
	height: auto;
	margin: 60px auto 40px;
	padding: 40px 40px;
	position: relative;
	display: flex;
	flex-direction: column;
	
	transition: all .3s ease;	
}

.quotes-module .wrapper {
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 0 12px;
}

.quotes-module .heading {
	display: block;
	width: 100%;
	position: relative;
	padding: 0;
}
.quotes-module .heading > * {
	max-width: 570px;
}

.quotes-module .rating {
	position: absolute;
	right: 0;
	bottom: 5px;	
	
	width: auto;
	height: 24px;

	display: flex;
	flex-direction: row;
}
.quotes-module .rating > span {
	font-size: 14px;
	line-height: 26px;
}
.quotes-module .rating .stars {
	width: 130px;
}

.quotes-module .rating .stars > span {
	width: 20px;
	height: 19px;
	display: inline-block;
	background-image: url('../images/icons/star-empty.svg');
	background-position: center;
	background-size: 100% auto;
	background-repeat: no-repeat;
}
.quotes-module .rating .stars > span.active {	
	background-image: url('../images/icons/star.svg');
}



.quotes-module .quotes-area {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	margin: 38px -12px 45px;
}

.quotes-module .quotes-area .item {
	width: calc(100% / 3 - 24px);
	height: auto;
	padding: 65px 24px 40px;
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: flex-start;	

	transition: all .3s ease;

	background-color: #ffffff;
	margin:	12px;
	
	background-image: url('../images/icons/icon-quote-2.svg');
	background-position: center 28px;
	background-size: auto;
	background-repeat: no-repeat;
}
.quotes-module .wrapper .item.mark1 {
	background-image: url('../images/icons/icon-quote-1.svg');
}


.quotes-module .wrapper .item .author {
	font-size: 14px;
	line-height: 16.8px;
	color: var(--color-text-pale);

	position: absolute;
	bottom: 24px;
}




/* Quotes module --- end */


























/* Footer --- start */
	
footer {
	height: auto;
	width: 100%;	
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	
	font-size: 16px;
	line-height: 19.2px;
}

footer .wrapper {
	border-top: 1px solid var(--color-border);
	width: 100%;
	height: auto;
	display: flex;
}

footer .wrap {
	width: 1384px;
	height: auto;
	
	margin: 0 auto;
	padding: 60px 95px;
	position: relative;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	transition: all .3s ease;	
}
footer .wrap > h4,
footer .wrap > .h4 {
	padding: 0 12px;
	
}

footer .wrapper.slider .wrap {
	flex-direction: column;
	padding: 60px 40px 60px 95px;
	overflow: hidden;
	
}
footer .slider .carousel-wrapper {
	overflow:hidden;
	display:block;
	position:relative;
}
footer .slider .carousel-wrapper:before,
footer .slider .carousel-wrapper:after {
	content:'';
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	width:12px;
	background-color:var(--color-bg-site);
}
footer .slider .carousel-wrapper:after {
	left:auto;
	right:0;
}
footer .slider .carousel {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	margin: 35px 0 0;
	overflow:hidden;
}
footer .slider ul.carousel li {
	margin: 0 12px;	
	width: auto;
}
footer .slider ul.carousel li img {
	width: 275px;
	height: auto;
}

.col-1-3 {
	width: calc(100% / 3);
	padding: 0 12px;
	
	font-size: 18px;
	line-height: 21.6px;
	
	order: 1;
}
.col-1-3 + .col-1-3  {
	order: 2;
}
.col-1-3 + .col-1-3  + .col-1-3  {
	order: 3;
}

.col-1-3 h4 {
	margin-bottom: 20px;
}

ul.opening-hours {
	margin-bottom: 20px;
}
ul.opening-hours li {
	width: 100%;
	padding: 3px 0;
}

ul.opening-hours li > span {
	display: inline-block;
	width: 50px;
}

.col-1-3 .button-black,
.col-1-3 .button-transparent {
	margin: 8px 0;
	width: 234px;
	
	font-size: 16px;
}

.col-1-4 {
	width: calc(100% / 4);
	padding: 0 24px 0 12px;
}
.col-1-4 h4 {
	margin-bottom: 20px;
}
footer .wrapper.navigation details {
	
}
footer .wrapper.navigation details summary {	
	pointer-events: none;
	position: relative;
}

footer .wrapper.navigation details summary:after {
	background: none;
}


footer .wrapper.navigation .wrap ul li {
	width: 100%;
	padding: 6px 0;
}

footer .wrapper.navigation .wrap a.fb,
footer .wrapper.navigation .wrap a.insta,
footer .wrapper.navigation .wrap a.linkd {
	background-size: 24px;
	background-repeat: no-repeat;
	background-position: center center;
	width: 24px;
	height: 24px;
	float: left;
	display: block; 	
	margin-right: 10px;
	margin-top: 15px;
}

footer .wrapper.navigation .wrap a.fb {
	background-image: url('../images/icons/Facebook-square.svg');	
}
footer .wrapper.navigation .wrap a.insta {
	background-image: url('../images/icons/Instagram-square.svg');	
}
footer .wrapper.navigation .wrap a.linkd {
	background-image: url('../images/icons/Linkedin-square.svg');	
}
footer .wrapper.meta .wrap {
	padding: 40px 107px;
}
footer .wrapper.meta .wrap .links a {
	margin-left: 32px;
}

/* Footer --- end */


.menu-mobile {
	display: none;
	width: 24px;
	height: 24px;	

	cursor: pointer;

	background-image: url('../images/icons/menu.svg');	
	background-size: 24px;
	background-repeat: no-repeat;
	background-position: center center; 


}
body.negative .menu-mobile {
	background-image: url('../images/icons/menu-white.svg');	
}



/*** Behandlungen page - 2 columns layout - start ***/

main div.container > .wrapper {
	width: 100%;
	max-width: 1440px;
	height: 100%;
	display: flex;
	flex-direction: row;
	
	margin: 0 auto;
	padding: 0 40px;
	
	transition: 0.3s;

}

.content-navigation {
	width: 370px;
	height: auto;
	
	padding: 100px 85px 50px 95px;
	
	font-size: 16px;
	line-height: 19.2px;
}

.content-navigation .item-active {
	font-size: 14px;
	line-height: 16.8px;
	letter-spacing: 1px;
	
	margin-bottom: 50px;
}

.content-navigation ul li {
	width: 100%;
	padding: 8px 0;
}

.content-navigation ul.level3 {
	list-style: disc outside;
	padding-left: 20px;
	margin-bottom: -8px;
	margin-top: 8px;
}

.content-navigation ul.level2 > li > a,
.content-navigation ul.level3 > li > a {
	color: var(--color-text-base);	
}

.content-navigation ul.level2 > li.active > a,
.content-navigation ul.level3 > li.active > a {
	color: var(--color-text-pale);	
}

body.negative .content-navigation ul.level2 > li > a,
body.negative .content-navigation ul.level3 > li > a {
	color: #141718;	
	color: var(--color-text-pale);
}
body.negative .content-navigation ul.level2 > li.active > a,
body.negative .content-navigation ul.level3 > li.active > a {	
	color: #6C7275;	
	color: var(--color-text-base);	
}


.content-wrapper {
	width: calc(100% - 370px);
	height: auto;
	
	padding: 100px 124px 50px 124px;
	
	border-left: 1px solid var(--color-border);
}

.content-wrapper .wrap {
	width: 100%;
	max-width: 570px;
}

.content-wrapper img {
	width: 100%;
	height: auto;
	
	margin-bottom: 20px;
	margin-top: 10px;
}
.content-wrapper .highlight-area,
article .highlight-area {
	background-color: white;
	padding: 24px;
	width: 100%;
	height: auto;
	margin: 50px 0;
}

body.negative .content-wrapper .highlight-area,
body.negative article .highlight-area {
	background-color: rgba(38, 41, 43, 1);
}


.content-wrapper .highlight-area > p,
article .highlight-area > p {
	margin: 0;
}

.content-wrapper a,
article a {
	text-decoration: underline;
}
.content-wrapper a:hover,
article a:hover {
	text-decoration: none;
}

/*** Behandlungen page - 2 columns layout - end ***/




/*** Praxis page - 1 column layout ***/
.heading {	
	width: 100%;
	max-width: 1214px;
	height: auto;
	margin: 0 auto;
	padding: 100px 20px 30px;

}



/*** Team module - start ***/
.team-module {
	margin: 20px 0;
	width: 100%;
	height: auto;
	padding: 0 !important;
}
.team-module .wrapper {
	width: 100%;
	max-width: 1220px;
	height: auto;
	margin: 0 auto;
	padding: 0 12px;
	display: flex;
	flex-wrap: wrap;
}
.team-module h3 {
	width: 100%;	
	
	font-family: 'itcfranklingothicstd-med', Arial;	
	font-weight: 600;
	font-size: 32px;
	line-height: 38.4px;
	margin: 0 12px 40px;
}
.team-module .person {
	margin: 0 12px 30px;
}

.team-module .caption a { text-decoration:underline; }
.team-module .caption a:hover { text-decoration:none; }

/*** Team module - end ***/


.bottom-link {
	padding: 0 20px;
}

.bottom-link .wrapper {
	width: 100%;
	max-width: 1170px;
	height: auto;
	margin: 80px auto 200px;
}

.bottom-link .over-title {
	margin-bottom: 10px;
}

.bottom-link a {
	font-family: 'itcfranklingothicstd-med', Arial;	
	font-weight: 600;
	font-size: 32px;
	line-height: 38.4px;
	font-weight: normal;
	padding-right: 30px;
	background-image: url('../images/icons/arrow-right.svg');
	background-repeat: no-repeat;
	background-position: center right;
	background-size: 18px auto;	
}



/***  Praxis 2 page - with text-image module ***/

/*** Text and image module - start ***/
.text-image-module {
	width: 100%;
	display: inline-block;
	height: auto;
	
}
.text-image-module .wrapper {
	width: 100%;
	max-width: 1196px;
	height: auto;
	margin: 0 auto;
}



.text-image-module .wrap {	
	width: 100%;	
	height: auto;
	margin: 0 auto;
	padding: 100px 0 40px;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	transition: all .3s ease;
	
}

.text-image-module .wrap .col {
	width: 50%;
	height: auto;
	margin: 0 auto;
	padding: 30px 12px;
	position: relative;
	display: flex;
	flex-direction: column;
	
	transition: all .3s ease;	
	
}
.text-image-module .wrap .col.left {
	padding: 150px 15px 50px 110px;	
}

.text-image-module .wrap .col.right {
	padding: 0 0 0 116px;	
}

.text-image-module .wrap .col.right img {
	width: 100%;
}
/*** Text and image module - end ***/



/*** Text-half module - start ***/
.text-half-module {
	width: 100%;
	display: inline-block;
	height: auto;
	
}
.text-half-module .wrapper {
	width: 100%;
	max-width: 1170px;
	height: auto;
	margin: 0 auto;
}


.text-half-module .wrap {
	width: 100%;
	height: auto;
	margin: 0;
	padding: 100px 0 30px 100px;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	transition: all .3s ease;
	max-width: 570px;
}



/*** Text-half module - end ***/


/*** Gallery masonry module - start ***/
.gallery-grid-module {
	width: 100%;
	max-width: 1194px;
	height: auto;	
	margin: 0 auto;
}


.gallery-grid-wrapper img {
	max-width: 100%;
	height: auto;
	vertical-align: middle;
	display: inline-block;
}

/* Main CSS */
.gallery-grid-wrapper > div {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 12px;
}
.gallery-grid-wrapper > div > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	
}

.gallery-grid-wrapper {
	width: 100%;	
	margin: 65px 0 20px;	
	display: grid;
	grid-gap: 0;
	/* grid-template-columns: repeat(auto-fit, minmax(374px, 1fr)); */
	grid-template-columns: calc(100% / 3) calc(100% / 3) calc(100% / 3);
	grid-auto-rows: auto;
	grid-auto-flow: dense;
}
.gallery-grid-wrapper .wide {
	grid-column: span 2;
}
.gallery-grid-wrapper .tall {
	grid-row: span 2;
}
.gallery-grid-wrapper .big {
	grid-column: span 2;
	grid-row: span 2;
}
/*** Gallery masonry module - end ***/



/*** Image full module - start ***/
.image-full-module {
	width: 100%;
	max-width: 1210px;
	height: auto;	
	margin: 0 auto 150px;
	padding: 0 20px;
}
.image-full-module img {
	width: 100%;
	height: auto;
	float: left;
}



/*** Image full module - end ***/



/*** Standard article page - start ***/
article {
	width: 100%;
	max-width: 1210px;
	height: auto;	
	margin: 0 auto;

}
article .wrapper {
	max-width: 1010px;
	padding: 0 20px !important;
}

article .wrapper .heading {
	padding: 100px 0 0;
}

article h4 {
	margin: 30px 0;
}

article .image-full-module {
	display: inline-block;
	padding: 0;
	margin: 0;
}

article p {
	margin-bottom: 30px;
}
article p + ul {
	margin-top: -25px;
}

article ul {
	list-style: disc outside;
	padding-left: 20px;
	margin-bottom: 30px;
	margin-top: 8px;
}

.embed { position:relative; overflow:hidden; }
.embed img { position:relative; z-index:15; width:100%; height:auto; }
.embed iframe { position:absolute; z-index:10; top:0; left:0; right:0; bottom:0; width:100%; height:100%; background:var(--color-default-bg); -webkit-box-shadow: 0px 0px 0px 3px var(--color-default-bg); -moz-box-shadow: 0px 0px 0px 3px var(--color-default-bg); box-shadow: 0px 0px 0px 3px var(--color-default-bg); }
.embed iframe[src].loaded:not([style*="display: none"]):not([style*="display:none"]) + img { z-index:1; visibility:hidden; }
.embed iframe[src]:not([style*="display: none"]):not([style*="display:none"]) + .consent,
.embed iframe[src]:not([style*="display: none"]):not([style*="display:none"]) + img + .consent { display:none; }

.embed .consent { position:absolute; font-size:0.8em; line-height:1.2em; top:50%; left:50%; transform:translate(-50%,-50%); padding:20px; width:auto; height:auto; z-index:20; text-align:center; background-color:rgba(255,255,255,0.8); color:#000; border-radius:4px; }
.embed .consent .button { display:inline-block; font-family: 'itcfranklingothicstd-med', Arial; }

/*** Standard article page - end ***/

