.avz23_block.avz23_contacts {
    margin-top: 48px;
    padding-top: 16px; /* plus 48 ps from h2 */
    padding-bottom: 64px;
    clip-path: inset(0 -1000vmax);
}

.avz23_block.avz23_contacts > * {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.avz23_block.avz23_contacts .avz23_contact_cards {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 32px;
    margin-top: 40px;
    padding-top: 5px;
}
.avz23_block.avz23_contacts .avz23_contact_cards .avz23_card {
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.15);
    display: flex;
    flex-direction: column;
    position: relative;
    text-align: center;
    padding-top: 24px;
    padding-bottom: 24px;
    transition: border-color 0.2s ease-out;
}
.avz23_block.avz23_contacts .avz23_contact_cards .avz23_card:hover {
    cursor: pointer;
}
.avz23_block.avz23_contacts .avz23_contact_cards .avz23_card .avz23_card_image {
    align-self: center;
    width: 32px;
    height: 32px;
}
.avz23_block.avz23_contacts .avz23_contact_cards .avz23_card .avz23_card_title {
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: 30px;
    color: #fff;
    margin-top: 8px;
    margin-bottom: 0px;
}
.avz23_block.avz23_contacts .avz23_contact_cards .avz23_card .avz23_card_body {
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 20px;
    color: #e3f4fc;
}
.avz23_block.avz23_contacts .avz23_contact_cards .avz23_card .avz23_card_link {
    margin-top: 8px;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 24px;
    color: #fff;
}
.avz23_block.avz23_contacts .avz23_contact_cards a.avz23_card,
.avz23_block.avz23_contacts .avz23_contact_cards a.avz23_card:hover,
.avz23_block.avz23_contacts .avz23_contact_cards a.avz23_card:active {
    color: inherit;
    text-decoration: none;
}
.avz23_block.avz23_contacts .avz23_contact_open_time {
    margin-top: 24px;
    text-align: center;
}
.avz23_block.avz23_contacts .avz23_contact_open_time .openingHours_text {
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 24px;
    color: #fff;
    display: inline;
}
.avz23_block.avz23_contacts .avz23_contact_open_time openingHours__greenDot {
    background: none;
}

/* mobile */
@media (min-width: 576px) {
    .avz23_block.avz23_contacts .avz23_contact_cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .avz23_block.avz23_contacts > * {
        max-width: min(540px - 30px);  /* other blocks have 15px left-right paddings, keep that in mind */
    }
}
@media (min-width: 768px) {
    .avz23_block.avz23_contacts > * {
        max-width: min(720px - 30px);
    }
}
@media (min-width: 992px) {
    .avz23_block.avz23_contacts .avz23_contact_cards {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
    .avz23_block.avz23_contacts > * {
        max-width: min(960px - 30px);
    }
}
@media (min-width: 1200px) {
    .avz23_block.avz23_contacts > * {
        max-width: min(1140px, 100%);
    }
    .avz23_block.avz23_contacts {
        padding-top: 48px; /* plus 48 ps from h2 */
        padding-bottom: 160px;
    }
}


/* green label */
.avz23_block.avz23_contacts section.paragraphsAndHeaders.block .paragraphsAndHeaders__body p.avz23_highlight {
    color: #fff;
    margin-top: 48px;
}


/* todo: move me */
main {
    overflow: hidden;
}
@media only screen and (min-width: 992px) {
    .the_content > .container {
        overflow: visible!important;
    }
}


/**************************************** OS Skin ****************************************/
.avz23_os .avz23_block.avz23_contacts {
    background: radial-gradient(50% 50% at 50% 50%, #0d9b73 0%, #097d56 100%);
    box-shadow: 0 0 0 1000vmax #097d56;
}

.avz23_os .avz23_block.avz23_contacts section.paragraphsAndHeaders.block .paragraphsAndHeaders__body h2 {
    color: white;
    font-size: 48px;
    line-height: 60px;
}

.avz23_os .avz23_block.avz23_contacts .avz23_block section.paragraphsAndHeaders.block .paragraphsAndHeaders__body p.avz23_paragraph_content {
    color: white;
    margin-top: 8px;
}

.avz23_os .avz23_block.avz23_contacts .avz23_contact_cards .avz23_card {
    border: 1px solid #0cbb8a;
}
.avz23_os .avz23_block.avz23_contacts .avz23_contact_cards .avz23_card:hover {
    border-color: #63f2c3;
}
.avz23_os .avz23_block.avz23_contacts section.paragraphsAndHeaders.block .paragraphsAndHeaders__body h2::before {
    color: #92F6D5;
    font-family: Gilroy;
}

.avz23_os .avz23_block.avz23_contacts .avz23_contact_cards .avz23_card .avz23_card_title {
    font-family: Gilroy;
}
.avz23_os .avz23_block.avz23_contacts .avz23_contact_cards .avz23_card .avz23_card_body {
    font-family: Gilroy;
    color: #c2fae7;
}
.avz23_os .avz23_block.avz23_contacts .avz23_contact_cards .avz23_card .avz23_card_link {
    font-family: Gilroy;
}

.avz23_os .avz23_block.avz23_contacts .avz23_contact_open_time .openingHours_text {
    font-family: Gilroy;
}


/**************************************** AVZ Skin ***************************************/
.avz23_avz .avz23_block.avz23_contacts {
    background: radial-gradient(50% 50% at 50% 50%, #03A9F4 0%, #0093E0 100%);
    box-shadow: 0 0 0 1000vmax #0093E0;
}
.avz23_avz .avz23_block.avz23_contacts section.paragraphsAndHeaders.block .paragraphsAndHeaders__body h2 {
    color: white;
    font-size: 36px;
    line-height: 44px;
}

.avz23_avz .avz23_block.avz23_contacts .avz23_block section.paragraphsAndHeaders.block .paragraphsAndHeaders__body p.avz23_paragraph_content {
    color: white;
    margin-top: 8px;
}
.avz23_block.avz23_contacts section.paragraphsAndHeaders.block .paragraphsAndHeaders__body h2 {
    margin-top: 0;
}

.avz23_avz .avz23_block.avz23_contacts .avz23_contact_cards .avz23_card {
    border: 1px solid #03a9f4;
}
.avz23_avz .avz23_block.avz23_contacts .avz23_contact_cards .avz23_card:hover {
    border-color: #5cc7ff;
}

.avz23_avz .avz23_block.avz23_contacts .avz23_contact_cards .avz23_card .avz23_card_title {
    font-family: Montserrat;
}
.avz23_avz .avz23_block.avz23_contacts .avz23_contact_cards .avz23_card .avz23_card_body {
    font-family: Lato;
}
.avz23_avz .avz23_block.avz23_contacts .avz23_contact_cards .avz23_card .avz23_card_link {
    font-family: Lato;
    font-size: 14px; /* to fit email */
}

.avz23_avz .avz23_block.avz23_contacts .avz23_contact_open_time .openingHours_text {
    font-family: Lato;
}
.avz23_avz .avz23_block.avz23_contacts .avz23_contact_cards .avz23_card .avz23_card_image {
    width: 24px;
    height: 24px;
}
