@font-face {
    font-family: 'DA';
    src: url('fonts/da.woff2') format('woff2'),
        url('fonts/da.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}


/* -------------------------------------------------
------------------ GENERAL STYLES ------------------
--------------------------------------------------*/


* {
	-moz-font-feature-settings: "kern" 1; 
	-ms-font-feature-settings: "kern" 1; 
	-o-font-feature-settings: "kern" 1; 
	-webkit-font-feature-settings: "kern" 1; 
	font-feature-settings: "kern" 1;
	font-kerning: normal;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}

html {
	scroll-behavior: smooth;
}

body {
    font-family: "Source Sans 3", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    font-size: 18px;
    color: #725e53;
    background-color: #ffffff;
    line-height: 1.35;
}

.mt-10 {
    margin-top: 100px;
}

header {
    padding: 75px 0 15px 0;
}

header a, header a:hover {
    text-decoration: none;
    color: #725e53;
}


@media screen and (max-width: 414px) {
    header h1 {
        font-family: 'DA', sans-serif;
        font-size: 54px;
        text-align: center;
        padding: 0;
        margin: 0;
    }
}

@media screen and (min-width: 415px) {
    header h1 {
        font-family: 'DA', sans-serif;
        font-size: 84px;
        text-align: center;
        padding: 0;
        margin: 0;
    }
}


nav {
    background-color: #aaa297;
    padding: 15px 0;
}

nav ul {
    list-style-type: none;
    text-align: center;
    padding: 0;
    margin: 0;
}

nav ul li {
    display: inline-block;
    float: none;
    padding: 0 10px;
    color: #ffffff;
}

nav ul li a {
    text-transform: uppercase;
    letter-spacing: 1px;
    text-decoration: none;
    font-size: 21px;
    color: #ffffff;
}

nav ul li a:hover {
    color: #fae8e0;
}



div.top-banner {
    background-image: url('img/woman-circle-main.webp');
    height: 720px;
    background-position: top;
    background-repeat: no-repeat;
    background-size: cover;
}

section.content {
    padding: 100px 0;
    background-color: #d1c2bb;
}

section.content-white {
    padding: 100px 0;
}

.content a {
    color: #725e53;
}

p.leader {
    font-size: 21px;
    color: #52433b;
    font-weight: 600;
    padding: 0 0 25px 0;
}

section.content-slim {
    padding: 50px 0;
    background-color: #d1c2bb;
}

section.content-slim h2 {
    font-weight: bold;
    color: #52433b;
    font-size: 18px;
    padding: 25px 0 15px 0;
}

section.content-slim h3 {
    font-weight: bold;
    font-size: 18px;
    padding: 5px 0;
}

section.content-alt {
    padding: 0;
    background-color: #d1c2bb;
}

section.content-alt-white {
    padding: 0;
}

section.content-alt h2 {
    font-family: 'DA', sans-serif;
    font-size: 54px;
    color: #ffffff;
    padding: 50px 0;
}

section.content-alt p {
    color: #ffffff;
}

section.content-slim h1 {
    font-family: 'DA', sans-serif;
    font-size: 42px;
    color: #ffffff;
    padding: 0 0 50px 0;
    margin: 0;
}

section.content h2 {
    font-family: 'DA', sans-serif;
    font-size: 48px;
    color: #52433b;
    padding: 0 0 35px 0;
    margin: 0;
}

section.content-white h2 {
    font-family: 'DA', sans-serif;
    font-size: 48px;
    color: #52433b;
    padding: 0 0 35px 0;
    margin: 0;
}

@media screen and (max-width: 414px) {
    .introduction {
        padding: 25px 35px;
        border: 4px solid #ffffff;
    }
}

@media screen and (min-width: 415px) {
    .introduction {
        padding: 75px 50px;
        margin: 0 75px;
        border: 4px solid #ffffff;
    }
}


p.script {
    font-family: 'DA', sans-serif;
    font-size: 1.8em;
    padding: 35px 0;
}


img.top-circle {
    border-radius: 200px 200px 0 0;
}

.content-banner {
    height: 540px;
    text-align: center;
    position: relative;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

@media screen and (max-width: 414px) {
    .content-banner h2 {
        font-family: 'DA', sans-serif;
        text-shadow: rgba(0, 0, 0, 0.15) 0px 19px 38px, rgba(0, 0, 0, 0.11) 0px 15px 12px;
        color: #ffffff;
        width: 100%;
        font-size: 42px;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        margin: 0;
    }
}

@media screen and (min-width: 415px) {
    .content-banner h2 {
        font-family: 'DA', sans-serif;
        text-shadow: rgba(0, 0, 0, 0.15) 0px 19px 38px, rgba(0, 0, 0, 0.11) 0px 15px 12px;
        color: #ffffff;
        width: 100%;
        font-size: 64px;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        margin: 0;
    }
}

a.button-dark {
    padding: 15px 75px;
    border: 2px solid #52433b;
    text-decoration: none;
    color: #52433b;
    font-weight: 600;
}


button.booking {
    background-color: #52433b;
    color: #ffffff;
    padding: 10px 75px;
    margin-top: 35px;
    border: none;
    border-radius: 8px;
}


.content-grid-top {
    border-top: 250px solid #aaa297;
    padding: 0;
    background-color: #d1c2bb;
}

.content-top {
    border-top: 350px solid #aaa297;
    padding: 0 0 100px 0;
    margin: -200px 0 0 0;
    background-color: #d1c2bb;
}

.content-top-white {
    border-top: 300px solid #aaa297;
    padding: 0 0 100px 0;
    margin: -150px 0 0 0;
}

.content-top-slim {
    border-top: 350px solid #aaa297;
    padding: 0 0 100px 0;
    margin: -325px 0 0 0;
    background-color: #d1c2bb;
}

section.content-top h2 {
    font-family: 'DA', sans-serif;
    color: #52433b;
    font-size: 54px;
    padding: 0 0 50px 0;
    margin: -75px 0 0 0;
}

@media screen and (max-width: 414px) {
    section.content-top-white h2 {
        font-family: 'DA', sans-serif;
        color: #ffffff;
        font-size: 28px;
        padding: 0 0 100px 0;
        margin: -235px 0 0 0;
    }
}

@media screen and (min-width: 415px) {
    section.content-top-white h2 {
        font-family: 'DA', sans-serif;
        color: #ffffff;
        font-size: 42px;
        padding: 0 0 100px 0;
        margin: -235px 0 0 0;
    }
}

.content-grid-top h3 {
    font-family: 'DA', sans-serif;
    font-size: 42px;
    text-align: center;
    color: #ffffff;
    padding: 0 0 50px 0;
    margin: -300px 0 0 0;
}

.img-grid {
    margin: -100px 0 0 0;
}

article.item {
    padding: 0 0 25px 0;
}

article.item .item-img {
    height: 300px;
    background-repeat: no-repeat;
    background-position: top;
    background-size: cover;
    margin: 0 0 15px 0;
}

article.item h2 {
    font-size: 24px;
    padding: 0;
}

.modal-header {
    padding: 25px 35px;
}

.modal-body {
    padding: 35px;
}

form.contact {
    padding: 25px 0 125px 0;
}

form.contact input[type="text"], form.contact input[type="password"], form.contact input[type="number"], form.contact input[type="email"], form.contact textarea {
    width: 100%;
    padding: 10px;
    border-radius: 8px;
    margin: 0 0 15px 0;
    border: 1px solid #725e53
}

.form-check-label {
    font-size: 15px;
}

.form-check-label a {
    color: #725e53;
}

form.contact input[type="submit"]:disabled {
    background-color: transparent;
    color: #aaaaaa;
    padding: 10px 75px;
    margin-top: 35px;
    border: 2px solid #aaaaaa;
    border-radius: 8px;
}

form.contact input[type="submit"] {
    background-color: #52433b;
    color: #ffffff;
    padding: 10px 75px;
    margin-top: 35px;
    border: none;
    border-radius: 8px;
}

form.contact button {
    background-color: #52433b;
    color: #ffffff;
    padding: 10px 75px;
    margin-top: 15px;
    border: none;
    border-radius: 8px;
}

.infobox {
    padding: 25px;
    border-radius: 8px;
    border: 2px solid #725e53;
}

.infobox h2 {
    font-size: 24px;
    color: #52433b;
    font-weight: bold;
    padding: 0 0 15px 0;
}


.pre-footer {
    background-color: #aaa297;
    text-align: center;
    padding: 35px 0;
}

.pre-footer a {
    text-transform: uppercase;
    text-decoration: none;
    font-size: 21px;
    color: #ffffff;
}



footer {
    text-align: center;
    padding: 35px 0;
}

footer ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

footer ul li {
    display: inline;
    padding: 0 10px;
}

footer ul li a {
    text-decoration: none;
    color: #725e53;
}