@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');

.contact-details__cd {
    padding-top: 87px
}

.contact-details__box {
    border-radius: 20px;
    background: #1F2F28;
    padding: 30px;
    margin: 20px 0 0
}

.contact-details__box h3.title {
    margin: 0 0 20px
}

.contact-details__box a,.contact-details__box p {
    font-family: 'Inter', sans-serif;
    font-weight: 500;
    font-size: 24px;
    line-height: 1em;
    margin: 0;
    color: #fff
}

@media (min-width: 350px) {
    .contact-details__box a,.contact-details__box p {
        font-size:30px
    }
}

.contact-details__box p {
    font-size: 22px
}

.contact-details__map {
    aspect-ratio: 1/1;
    height: auto;
    overflow: hidden;
    padding: 0;
}

.contact-details__map div {
    width: auto
}

.contact-details__map .map {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%
}

@media (min-width: 768px) {
    .contact-details__cd {
        display:flex
    }

    .contact-details__form {
        width: 60%;
        padding: 0 15px 0 0;
        flex: 1
    }

    .contact-details__infos {
        width: 40%;
        flex: 0 0 40%;
        padding: 0 0 0 15px;
        display: flex;
        flex-direction: column;
        max-width: 380px
    }

    .contact-details__box:first-child {
        margin: 0
    }

    .contact-details__map {
        aspect-ratio: initial;
        flex: 1;
        height: auto;
        overflow: hidden
    }

    .contact-details__map div {
        width: auto
    }

    .contact-details__map .map {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%
    }
}

.tiles h2 {
    max-width: 320px;
    margin-left: auto;
    margin-right: auto
}

ul.tiles__list {
    display: flex;
    flex-wrap: wrap;
    margin: 30px -10px 0;
    width: calc(100% + 20px)
}

.tiles__item {
    width: 100%;
    display: flex;
    padding: 10px
}

.tiles__item .in {
    position: relative;
    z-index: 2;
    height: auto;
    border-radius: var(--box-radius);
    padding: 30px;
    background-color: #F2EDE8
}

.tiles__item .in img {
    width: 100%;
    height: 32px;
    object-fit: contain;
    object-position: left center;
    margin: 0 0 40px
}

.tiles__item .in h3 {
    margin: 0 0 24px;
    font-size: 32px;
    color: var(--brown-dark)
}

.tiles__item .in p {
    margin: 0
}

.tiles__item .dots {
    pointer-events: none;
    transform: translate(-30px,30px);
    z-index: -1
}

.tiles__item .dots:before {
    background-repeat: no-repeat;
    background-position: right top;
    background-size: initial
}

.tiles__item:nth-child(4n+1) .dots:before {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="66" height="66" viewBox="0 0 66 66" fill="none"><circle cx="63" cy="3" r="3" transform="rotate(90 63 3)" fill="%23DDC9B5"/><circle cx="63" cy="33" r="3" transform="rotate(90 63 33)" fill="%23DDC9B5"/><circle cx="63" cy="63" r="3" transform="rotate(90 63 63)" fill="%23DDC9B5"/><circle cx="33" cy="3" r="3" transform="rotate(90 33 3)" fill="%23DDC9B5"/><circle cx="33" cy="33" r="3" transform="rotate(90 33 33)" fill="%23DDC9B5"/><circle cx="3" cy="3" r="3" transform="rotate(90 3 3)" fill="%23DDC9B5"/></svg>')
}

.tiles__item:nth-child(4n+2) .dots:before {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" viewBox="0 0 36 36" fill="none"><circle cx="33" cy="3" r="3" transform="rotate(90 33 3)" fill="%23DDC9B5"/><circle cx="33" cy="33" r="3" transform="rotate(90 33 33)" fill="%23DDC9B5"/><circle cx="3" cy="3" r="3" transform="rotate(90 3 3)" fill="%23DDC9B5"/><circle cx="3" cy="33" r="3" transform="rotate(90 3 33)" fill="%23DDC9B5"/></svg>')
}

.tiles__item:nth-child(4n+3) .dots:before {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="66" height="36" viewBox="0 0 66 36" fill="none"><circle cx="63" cy="3" r="3" transform="rotate(90 63 3)" fill="%23DDC9B5"/><circle cx="63" cy="33" r="3" transform="rotate(90 63 33)" fill="%23DDC9B5"/><circle cx="33" cy="3" r="3" transform="rotate(90 33 3)" fill="%23DDC9B5"/><circle cx="3" cy="3" r="3" transform="rotate(90 3 3)" fill="%23DDC9B5"/><circle cx="33" cy="33" r="3" transform="rotate(90 33 33)" fill="%23DDC9B5"/><circle cx="3" cy="33" r="3" transform="rotate(90 3 33)" fill="%23DDC9B5"/></svg>')
}

.tiles__item:nth-child(4n+4) .dots:before {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" viewBox="0 0 36 36" fill="none"><circle cx="33" cy="3" r="3" transform="rotate(90 33 3)" fill="%23DDC9B5"/><circle cx="33" cy="33" r="3" transform="rotate(90 33 33)" fill="%23DDC9B5"/><circle cx="3" cy="3" r="3" transform="rotate(90 3 3)" fill="%23DDC9B5"/><circle cx="3" cy="33" r="3" transform="rotate(90 3 33)" fill="%23DDC9B5"/></svg>')
}

@media (min-width: 768px) {
    .tiles__item {
        width:33.33%;
        flex: 0 0 33.33%
    }

    .tiles__item .tiles__item .in {
        padding: 40px
    }

    .tiles__item .tiles__item .in img {
        margin: 0 0 80px
    }

    ul.tiles__list {
        margin: 60px -10px 0
    }
}

.formblock__in {
    border-radius: 20px;
    background: #1F2F28;
    padding: 40px 27px;
    position: relative
}

@media (min-width: 768px) {
    .formblock__in:after,.formblock__in:before {
        content:' ';
        position: absolute;
        background-repeat: no-repeat
    }

    .formblock__in:before {
        background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="96" height="96" viewBox="0 0 96 96" fill="none"><circle cx="63" cy="93" r="3" transform="rotate(-90 63 93)" fill="%23787572"/><circle cx="33" cy="93" r="3" transform="rotate(-90 33 93)" fill="%23787572"/><circle cx="3" cy="93" r="3" transform="rotate(-90 3 93)" fill="%23787572"/><circle cx="63" cy="63" r="3" transform="rotate(-90 63 63)" fill="%23787572"/><circle cx="33" cy="63" r="3" transform="rotate(-90 33 63)" fill="%23787572"/><circle cx="3" cy="63" r="3" transform="rotate(-90 3 63)" fill="%23787572"/><circle cx="33" cy="33" r="3" transform="rotate(-90 33 33)" fill="%23787572"/><circle cx="3" cy="33" r="3" transform="rotate(-90 3 33)" fill="%23787572"/><circle cx="3" cy="3" r="3" transform="rotate(-90 3 3)" fill="%23787572"/><circle cx="93" cy="93" r="3" transform="rotate(-90 93 93)" fill="%23787572"/></svg>');
        left: 60px;
        bottom: 60px;
        width: 96px;
        height: 96px
    }

    .formblock__in:after {
        background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="66" height="126" viewBox="0 0 66 126" fill="none"><circle cx="63" cy="63" r="3" transform="rotate(-180 63 63)" fill="%23787572"/><circle cx="63" cy="93" r="3" transform="rotate(-180 63 93)" fill="%23787572"/><circle cx="63" cy="123" r="3" transform="rotate(-180 63 123)" fill="%23787572"/><circle cx="33" cy="63" r="3" transform="rotate(-180 33 63)" fill="%23787572"/><circle cx="33" cy="93" r="3" transform="rotate(-180 33 93)" fill="%23787572"/><circle cx="33" cy="123" r="3" transform="rotate(-180 33 123)" fill="%23787572"/><circle cx="3" cy="63" r="3" transform="rotate(-180 3 63)" fill="%23787572"/><circle cx="3" cy="93" r="3" transform="rotate(-180 3 93)" fill="%23787572"/><circle cx="3" cy="123" r="3" transform="rotate(-180 3 123)" fill="%23787572"/><circle cx="63" cy="33" r="3" transform="rotate(-180 63 33)" fill="%23787572"/><circle cx="63" cy="3" r="3" transform="rotate(-180 63 3)" fill="%23787572"/><circle cx="33" cy="33" r="3" transform="rotate(-180 33 33)" fill="%23787572"/><circle cx="3" cy="33" r="3" transform="rotate(-180 3 33)" fill="%23787572"/><circle cx="33" cy="3" r="3" transform="rotate(-180 33 3)" fill="%23787572"/><circle cx="3" cy="3" r="3" transform="rotate(-180 3 3)" fill="%23787572"/></svg>');
        right: 60px;
        top: 60px;
        width: 66px;
        height: 126px
    }

    .formblock__incd {
        margin: 0 auto;
        max-width: 600px;
        position: relative;
        z-index: 2
    }

    .formblock__in {
        padding: 60px 30px
    }
}

.clc,.clc__bg {
    left: 0;
    top: 0;
    width: 100%;
    height: 100%
}

.clc {
    position: fixed;
    z-index: 200;
    display: flex;
    align-items: center;
    justify-content: center
}

.clc__bg {
    position: absolute;
    background: rgba(28,27,25,.8)
}

.clc__msg {
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    padding: 40px;
    max-width: 100%;
    background-color: #fff;
    font-size: 20px;
    border: 1px solid rgba(67,63,59,.25);
    box-shadow: 4px 4px 19px 0 rgba(0,0,0,.13);
    z-index: 300;
    width: 450px;
    text-align: center
}

.clc__container {
    padding: var(--margin-mt) var(--padding-mt-2);
    margin: 0 auto;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    position: relative;
    z-index: 3;
    width: calc(100% - 40px);
    max-width: 810px
}

.clc__container h1 {
    margin: 40px 0;
    width: 100%;
    text-align: center;
    font-size: 36px;
    font-weight: 300;
    line-height: 1.28em
}

.clc__dates {
    display: flex;
    flex-direction: column;
    align-items: center
}

.clc__dates .line {
    height: 1px;
    border: 1px solid rgba(67,63,59,.25)
}

.clc__dates h3 {
    margin: 0 0 30px;
    text-align: center;
    font-size: 28px;
    font-weight: 400;
    line-height: 32px
}

.clc__date,.clc__date .calc {
    line-height: 26px;
    display: flex
}

.clc__date {
    justify-content: space-between;
    align-items: center;
    font-size: 16px;
    font-weight: 400;
    margin: 20px 0
}

.clc__date .title {
    width: 70px;
    flex: 0 0 70px;
    display: flex;
    align-items: center
}

.clc__date .calc {
    flex: 1;
    font-weight: 700;
    align-items: center
}

.clc__date .calc:before {
    display: inline-block;
    content: ' ';
    width: 16px;
    height: 16px;
    margin: 0 12px;
    background-repeat: no-repeat;
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="none"><path d="M12.6667 2.66699H3.33333C2.59695 2.66699 2 3.26395 2 4.00033V13.3337C2 14.07 2.59695 14.667 3.33333 14.667H12.6667C13.403 14.667 14 14.07 14 13.3337V4.00033C14 3.26395 13.403 2.66699 12.6667 2.66699Z" stroke="%23433F3B" stroke-linecap="round" stroke-linejoin="round"/><path d="M10.667 1.33301V3.99967" stroke="%23433F3B" stroke-linecap="round" stroke-linejoin="round"/><path d="M5.33301 1.33301V3.99967" stroke="%23433F3B" stroke-linecap="round" stroke-linejoin="round"/><path d="M2 6.66699H14" stroke="%23433F3B" stroke-linecap="round" stroke-linejoin="round"/></svg>')
}

.clc__date .time {
    width: 110px;
    flex: 0 0 110px;
    font-weight: 700;
    display: flex;
    align-items: center
}

.clc__date .time:before {
    display: inline-block;
    content: ' ';
    width: 16px;
    height: 16px;
    margin: 0 12px;
    background-repeat: no-repeat;
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="none"><g clip-path="url(%23clip0_499_2496)"><path d="M8 15.5C6.51664 15.5 5.0666 15.0601 3.83323 14.236C2.59986 13.4119 1.63856 12.2406 1.07091 10.8701C0.50325 9.49968 0.354725 7.99168 0.644114 6.53683C0.933503 5.08197 1.64781 3.7456 2.6967 2.6967C3.7456 1.64781 5.08197 0.933503 6.53683 0.644114C7.99168 0.354725 9.49968 0.50325 10.8701 1.07091C12.2406 1.63856 13.4119 2.59986 14.236 3.83323C15.0601 5.0666 15.5 6.51664 15.5 8C15.5 9.98913 14.7098 11.8968 13.3033 13.3033C11.8968 14.7098 9.98913 15.5 8 15.5ZM8 1.5C6.71443 1.5 5.45772 1.88122 4.3888 2.59545C3.31988 3.30968 2.48676 4.32484 1.99479 5.51256C1.50282 6.70028 1.3741 8.00722 1.6249 9.26809C1.8757 10.529 2.49477 11.6872 3.40381 12.5962C4.31285 13.5052 5.47104 14.1243 6.73192 14.3751C7.99279 14.6259 9.29973 14.4972 10.4874 14.0052C11.6752 13.5133 12.6903 12.6801 13.4046 11.6112C14.1188 10.5423 14.5 9.28558 14.5 8C14.5 6.2761 13.8152 4.6228 12.5962 3.40381C11.3772 2.18482 9.72391 1.5 8 1.5Z" fill="%23433F3B"/><path d="M10.12 10.83L7.64501 8.355C7.59867 8.30828 7.56201 8.25287 7.53712 8.19195C7.51224 8.13103 7.49963 8.0658 7.50001 8V4H8.50001V7.795L10.83 10.12L10.12 10.83Z" fill="%23433F3B"/></g><defs><clipPath id="clip0_499_2496"><rect width="16" height="16" fill="white"/></clipPath></defs></svg>')
}

.clc__legend {
    margin: 27px 0;
    display: flex;
    flex-direction: column
}

.clc__legend .clc__legend_l {
    width: auto;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    padding: 0 20px;
    color: #fff
}

.clc__legend .clc__legend_r {
    width: auto;
    display: flex
}

.clc__legend .clc__legend_r .occupied,.clc__legend .clc__legend_r .reserved {
    width: auto;
    display: flex;
    align-items: center;
    font-size: 14px;
    margin: 0 20px;
    color: #fff
}

.clc__legend .clc__legend_r .occupied:before,.clc__legend .clc__legend_r .reserved:before {
    content: ' ';
    width: 12px;
    height: 12px;
    margin: 0 12px 0 0;
    background-color: #FFF1CC
}

.clc__legend .clc__legend_r .occupied.occupied:before,.clc__legend .clc__legend_r .reserved.occupied:before {
    background-color: #FFE2E2
}

.clc__footer__msg,.clc__footer__msgs {
    visibility: hidden;
    display: flex;
    flex: 1;
    height: auto;
    align-items: center;
    justify-content: center;
    padding: 6px 40px;
    min-height: 28px;
    margin: 5px 0 0;
    width: 100%;
    border-radius: 100px;
    background: #8a0000;
    text-align: center;
    font-size: 14px;
    line-height: 1em;
    font-weight: 500
}

.clc__footer__msg.active,.clc__footer__msgs.active {
    visibility: visible;
    display: flex
}

.clc__footer__msg span,.clc__footer__msgs span {
    text-align: left
}

.clc__footer__msg strong,.clc__footer__msgs strong {
    font-weight: 700
}

.clc__footer__msg:before,.clc__footer__msgs:before {
    flex: 0 0 20px;
    content: ' ';
    width: 20px;
    height: 20px;
    margin: 0 8px 0 0;
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="21" height="20" viewBox="0 0 21 20" fill="none"><path d="M10.5003 18.3337C15.1027 18.3337 18.8337 14.6027 18.8337 10.0003C18.8337 5.39795 15.1027 1.66699 10.5003 1.66699C5.89795 1.66699 2.16699 5.39795 2.16699 10.0003C2.16699 14.6027 5.89795 18.3337 10.5003 18.3337Z" stroke="white" stroke-linecap="round" stroke-linejoin="round"/><path d="M10.5 13.3333V10" stroke="white" stroke-linecap="round" stroke-linejoin="round"/><path d="M10.5 6.66699H10.5088" stroke="white" stroke-linecap="round" stroke-linejoin="round"/></svg>')
}

.clc__footer__msg .wt,.clc__footer__msgs .wt {
    color: #fff
}

.clc__footer__msg .wt a,.clc__footer__msgs .wt a {
    color: #fff;
    text-decoration: underline
}

.clc__footer {
    display: flex;
    padding: 0 10px
}

.clc__footer .clc__footer__m {
    flex: 1;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 6px 20px;
    min-height: 28px;
    margin: 0 20px 20px;
    border-radius: 100px;
    background: #F9F3EB;
    text-align: center;
    font-size: 14px;
    line-height: 1em;
    font-weight: 500
}

.clc__dates__footer .msg__placeholder:before,.clc__footer .clc__footer__m:before {
    margin: 0 8px 0 0;
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="21" height="20" viewBox="0 0 21 20" fill="none"><path d="M10.5003 18.3337C15.1027 18.3337 18.8337 14.6027 18.8337 10.0003C18.8337 5.39795 15.1027 1.66699 10.5003 1.66699C5.89795 1.66699 2.16699 5.39795 2.16699 10.0003C2.16699 14.6027 5.89795 18.3337 10.5003 18.3337Z" stroke="%23272322" stroke-linecap="round" stroke-linejoin="round"/><path d="M10.5 13.3333V10" stroke="%23272322" stroke-linecap="round" stroke-linejoin="round"/><path d="M10.5 6.66699H10.5088" stroke="%23272322" stroke-linecap="round" stroke-linejoin="round"/></svg>');
    content: ' '
}

.clc__footer .clc__footer__m span {
    text-align: left
}

.clc__footer .clc__footer__m strong {
    font-weight: 700
}

.clc__footer .clc__footer__m:before {
    flex: 0 0 20px;
    width: 20px;
    height: 20px
}

.clc__dates__footer {
    margin: 0 0 20px;
    padding: 0 30px;
    display: flex;
    flex-direction: column;
    align-items: center
}

.clc__dates__footer .button span {
    width: auto;
    white-space: nowrap
}

.clc__dates__footer .button.disabled {
    display: none
}

.clc__dates__footer .msg__placeholder {
    display: none;
    flex: 1;
    height: auto;
    align-items: center;
    justify-content: center;
    padding: 6px 20px;
    min-height: 28px;
    border-radius: 100px;
    background-color: #F8B0B0;
    color: #000;
    text-align: center;
    font-size: 14px;
    font-weight: 500
}

.clc__dates__footer .msg__placeholder strong {
    font-weight: 700
}

.clc__dates__footer .msg__placeholder.active {
    display: flex
}

.clc__dates__footer .msg__placeholder:before {
    width: 20px;
    height: 20px
}

.clc__close {
    position: absolute;
    right: -20px;
    top: -20px;
    width: 40px;
    height: 40px;
    background-color: var(--brown-dark);
    border-radius: 50%;
    display: block;
    z-index: 5;
    cursor: pointer;
    transition: all 150ms linear
}

.clc__close:after,.clc__close:before {
    content: ' ';
    width: 20px;
    height: 2px;
    background-color: #fff;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-50%) rotate(-45deg)
}

.clc__close:after {
    transform: translateX(-50%) translateY(-50%) rotate(45deg)
}

.clc__close:hover {
    background-color: var(--brown-light)
}

.clc__calendars {
    max-height: calc(100 * 1dvh - 40px);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch
}

.clc__calendars .calendar {
    display: flex;
    justify-content: center
}

.clc__calendars__border {
    border-radius: 20px;
    border: 1px solid rgba(67,63,59,.25);
    background: #FFF;
    padding: 0 10px
}

@media (max-width: 767px) {
    .clc__footer .clc__footer__m {
        margin:0
    }

    .clc__footer .clc__footer__m2 {
        display: none!important
    }

    .clc__legend {
        flex-direction: column
    }

    .clc__legend .clc__legend_l {
        text-align: center
    }

    .clc__legend .clc__legend_r {
        margin-top: 10px;
        justify-content: center
    }

    .clc__dates__footer {
        padding: 0 10px;
        margin: 10px 0
    }
}

@media (min-width: 768px) {
    .clc__container {
        padding:var(--margin-pc) var(--padding-pc-2);
        margin: 0 auto
    }

    .clc__container h1 {
        font-size: 56px;
        margin: 80px 0
    }

    .clc__dates {
        width: 40%;
        margin: 0 0 40px
    }

    .clc__dates h3 {
        margin: 60px 0 30px
    }

    .clc__legend .clc__legend_r {
        justify-content: center
    }

    .clc__legend {
        flex-direction: column
    }

    .clc__legend .clc__legend_l {
        text-align: center
    }

    .clc__footer__msg,.clc__footer__msgs {
        margin: 0 30px 20px;
        width: calc(100% - 60px)
    }
}

@media (max-width: 1023px) {
    .clc__footer .clc__footer__m2 {
        display:none
    }
}

@media (min-width: 1024px) {
    .clc__container {
        padding:var(--margin-pc) var(--padding-pc-2);
        margin: 0 auto;
        display: flex
    }

    .clc__container h1 {
        font-size: 56px;
        margin: 80px 0
    }

    .clc__calendars .calendar {
        display: flex;
        justify-content: space-evenly
    }

    .clc__legend {
        flex-direction: initial;
        justify-content: space-between;
        align-items: center
    }

    .clc__legend .clc__legend_r {
        justify-content: flex-end
    }

    .clc__dates {
        width: 33.33%;
        padding: 0 0 0 60px;
        margin: 0 auto
    }

    .clc__dates h3 {
        font-size: 40px;
        line-height: 1.3em;
        margin: 30px 0 60px
    }
}

