.contact-big {
    display: grid; grid-template-columns:1fr 1fr 1fr;font-size:20px;align-items:center;
}
.contact-big a:link {
    color: inherit;
    text-decoration:none;
}

.contact-big a:visited {
    color: inherit;
    text-decoration:none;
}

.contact-big a:hover {
    text-decoration:underline;
}

.contact-box-tel {
    text-align: center;
    padding-top:8px;
    padding-bottom:8px;
    color: rgb(245, 163, 41);
}
.contact-box-email {
    text-align: center;
    padding-top:8px;
    padding-bottom:8px;
    color: rgb(222, 72, 216);
}

.contact-box-appointment {
    text-align: center;
    padding-top:8px;
    padding-bottom:8px;
    color: rgb(0, 166, 166);
}

h1 {
    font-family: 'Cabin', sans-serif;
    font-size: 64px;
    color: #FFFFFF;
    text-shadow: 0px 4px 0px rgba(26, 88, 97, 0.76);
    padding-top:32px;
    margin:0;
}

h2 {
    font-family: 'Montserrat', sans-serif;
    font-size: 24px;
    color: #FFFFFF;
    z-index: 200;
}

header {
    background: linear-gradient(104.97deg, rgba(0, 166, 166, 0.8) 5.95%, rgba(222, 72, 216, 0.8) 52.74%, rgba(245, 163, 41, 0.8) 99.54%);
    margin:0;
    padding-top:16px;
    position: relative;
}

img.photo {
    display:block;
    width:100%;
    border-radius:4px;
}

img.flag-switch {
    width:32px;
    margin-left:8px;
    margin-right:8px;
    border:0;
    opacity: 50%;
}

.language-select {
    color: white;
    text-align: right;
    font-size:18px;
    padding-right:2px;
}

a.language-switch {
    color:white;
    text-decoration: none;
    font-weight:bold;
    opacity: 60%;
}

a.current-language {
    opacity: 100%;
}

header .title {
    margin-left:16px;
    grid-column: span 2;
}
.ls-title {
    position:absolute;top:150px;left:415px
}
header .intro {
    padding:16px;
    display: grid;
    grid-template-columns: 1fr 2fr;
    align-items: center;
    gap: 16px;
}

header .text-intro {
    grid-column: span 3;
    padding:16px;
    color:white;
}

.header-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap:16px;
    align-items: center;
    padding-bottom: 16px;
}

.content-width-buffer {
    max-width: 1400px;
    margin-left: auto;
    margin-right: auto;
    
}

body {
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    padding: 0;
    margin:0;
}

article section {
    display: grid;
    grid-template-columns: 1fr 2fr;
    padding-top:16px;
    padding-bottom:16px;
}

article section>div {
    margin-left: 16px;
}

article section p {
    margin-top:16px;
    margin-bottom:16px;
}
footer div {
    text-align:center;
    font-size:14px;
    padding:16px;
    color: white;
}
footer a {
    color: white;
}

hr {
    display: block;
    border: 0;
    height: 2px;
    border-radius: 1px;
    background: linear-gradient(104.97deg, rgba(0, 166, 166, 0.8) 5.95%, rgba(222, 72, 216, 0.8) 52.74%, rgba(245, 163, 41, 0.8) 99.54%);
}

.header-contacts {
    color: white;
}
.header-contacts a {
    color: white;
    text-decoration: none;
}
.header-contacts a:hover {
    text-decoration: underline;
}
.header-contacts ul {
    font-size: 20px;
    list-style-type: none;
    padding: 0;
    text-align: center;
}
.header-contacts li {
    margin:8px;
}

.content-snack {
    padding:16px;
    background-color: rgba(255,255,255,0.8);
    border-radius:4px;
    align-self: stretch;
}

header h3 {
    text-align: center;
    margin-top: 4px;
    margin-bottom: 4px;
}

.s1 h3 {
    color: rgb(0, 166, 166);
}

.s2 h3 {
    color: rgb(222, 72, 216);
}

.s3 h3 {
    color: rgb(245, 163, 41);
}

h3 {
    color: #3189A5;
    font-family: 'Cabin', sans-serif;
    font-weight: 600;
    text-align: left;
    font-size: 24px;
    margin-top: 16px;

}

dl {
    display: grid;
    grid-template-columns: 160px 1fr;
}
dt {
    color: #444444;   
}
dd {
    margin: 0;
}

.big-link {
    font-size:20px;
    text-align:center;
}

.big-link a {
    text-decoration: none;
}

.big-link a:hover {
    text-decoration: underline;
}

@media only screen and (max-width: 900px) {
    .ls-title {
        position:inherit;
        top:auto;
        left: auto;
        text-align: center;
    }
    .header-grid {
        display: block;
    }
    .header-grid>* {
        margin:8px 0px;
    }

    article section {
        display: block;
        padding:8px;
    }
    h1,h2,h3 {
        text-align:center;
    }

    header img.chameleon {
        display:none;
    }
    header .title {
        background: none;
    }
    .contact-big {
        grid-template-columns: 1fr;
    } 
    h1 {
        padding-top:16px;
    }
    .language-select {
        padding-right:16px;
    }
    article section div {
        margin-left:0;
    }
}



footer {
    background: linear-gradient(104.97deg, rgba(0, 166, 166, 0.8) 5.95%, rgba(222, 72, 216, 0.8) 52.74%, rgba(245, 163, 41, 0.8) 99.54%);
    margin:0;
    padding:16px;
    position: relative;
}