@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Dongle:wght@300;400;700&family=Merriweather:ital,wght@0,300;0,400;0,700;0,900;1,300;1,400;1,700;1,900&family=Oswald:wght@200;300;400;500;600;700&family=Roboto+Slab:wght@100;200;300;400;500;600;700;800;900&display=swap');

/* font-family: 'Dongle', sans-serif;
font-family: 'Merriweather', serif;
font-family: 'Oswald', sans-serif;
font-family: 'Roboto Slab', serif; */
* {
    font-family: 'Montserrat', sans-serif;
}



.mobile_header {
    display: none;
}
.pc_header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background: #232f3e;
    padding: 5px 2.5%;
    display: grid;
    grid-template-columns: 1fr 2fr 4fr;
    grid-gap: 2%;
    align-items: center;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.25);
    z-index: 9999;
}
.pc_header__logo_container img {
    width: 100%;
    transition: all 0.2s ease;
}
.pc_header__links_container {
    text-align: right;
}
.pc_header__links_container ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.pc_header__links_container ul li {
    display: inline;
}
.pc_header__links_container ul li a {
    color: white;
    text-decoration: none;
    font-size: 1.25vw;
    font-weight: 600;
    transition: all 0.2s ease;
    margin: 0 1vw;
}
.pc_header__links_container ul li a:hover {
    box-shadow: 0px 2px 0px 0px white;
}

.pc_header__buttons_container {
    text-align: right;
}
.pc_header__buttons_container ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.pc_header__buttons_container ul li {
    display: inline;
}
.pc_header__buttons_container ul li a {
    color: white;
    text-decoration: none;
    font-size: 1.25vw;
    font-weight: 500;
    display: inline-block;
    margin: 0 1.25vw;
    padding: 2px 2vw;
    border: 1px solid white;
    box-shadow: inset 0px 0px 0px 1px white;
    border-radius: 50px;
    transition: all 0.2s ease;
}
.pc_header__buttons_container__btn_nofill:hover {
    border: 1px solid #f60;
    box-shadow: 0px 0px 10px 0px #f60;
}
.pc_header__buttons_container__btn_fill i {
    margin: 0px 0px 0px 7px;
}
.pc_header__buttons_container__btn_fill {
    border: 1px solid #f60;
    background: #f60;
}
.pc_header__buttons_container__btn_fill:hover {
    border: 1px solid #f60;
    background: none;
    box-shadow: 0px 0px 10px 0px #f60;
}

.pc_header_social_container {
    border: none;
    padding: 0;
}
.pc_header_social {
    color: #f60 !important;
    font-size: 2vw !important;
    border: none !important;
    padding: 0 !important;
    box-shadow: none !important;
}

.first_block {
    display: grid;
    grid-template-columns: 3fr 2fr;
    align-items: center;
    height: 100vh;
}

.first_block__about_block {
    height: 100%;
    padding: 12.5vh 2.5% 5% 5%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.first_block__about_block__header {
    font-size: 3.5vw;
    font-weight: 500;
    color: black;
}
.first_block__about_block__header b {
    font-weight: 800;
}
.first_block__about_block__separator {
    opacity: 1;
    border: none;
    width: 50%;
    height: 8px !important;
    background: #232f3e;
}
.first_block__about_block__text {
    font-size: 1.35vw;
    font-weight: 300;
    color: rgb(20, 20, 20);
    margin: 1.25% 0;
}

.first_block__about_block__cards {
    text-align: center;
}
.g-4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 10px;
    align-items: center;
}
.first_block__about_block__card {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 7px;
    border: 1px solid #397ac0;
    transition: all 0.2s ease;
}
.first_block__about_block__card:hover {
    box-shadow: 0px 0px 10px 2px rgba(0, 0, 0, 0.5);
}
.first_block__about_block__card__header {
    font-weight: 800;
    font-size: 3vw;
    color: #ff6600;
    margin: 0;
}
.first_block__about_block__card__header sub {
    font-size: 1.5vw;
}
.first_block__about_block__card__separator {
    opacity: 1;
    border: none;
    width: 50%;
    background: #397ac0;
    height: 5px !important;
    position: relative;
    left: 50%;
    transform: translate(-50%, 0);
    margin: 5px 0px;
}
.first_block__about_block__card__text {
    color: black;
    font-weight: 500;
    font-size: 1.25vw;
    margin: 0;
}

.first_block__fast_booking_form_block {
    background: #232f3e;
    padding: 12.5vh 5% 5% 5%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
}

.first_block__fast_booking_form__header {
    color: white;
    font-size: 3.5vw;
    font-weight: 800;
    margin: 0;
    text-align: center;
}
.first_block__fast_booking_form__separator {
    opacity: 1;
    width: 50%;
    border: 4px solid white;
    background: white;
    position: relative;
    left: 50%;
    transform: translate(-50%, 0);
}
.first_block__fast_booking_form {
    padding: 0 10%;
}
.first_block__fast_booking_form__input_block {
    margin: 5% 0;
}
.first_block__fast_booking_form__input_block label {
    color: rgba(255, 255, 255, 0.65);
    font-size: 1vw;
    font-weight: 300;
    margin: 0 0 1.25% 0;
}
.first_block__fast_booking_form__input_block input, .first_block__fast_booking_form__input_block select {
    background: none;
    border: none;
    border-radius: 0;
    border-bottom: 2px solid white;
    color: white;
    font-size: 1.35vw;
    font-weight: 300;
}
.first_block__fast_booking_form__input_block input::placeholder {
    color: rgba(255, 255, 255, 0.95);
    font-size: 1.35vw;
    font-weight: 300;
}
.first_block__fast_booking_form__input_block input:focus,
.first_block__fast_booking_form__input_block input:active {
    background: rgba(255, 255, 255, 0.15);
    color: white;
    box-shadow: none;
    border: none;
    border-bottom: 2px solid #ff6600;
}
.first_block__fast_booking_form__input_block select:focus,
.first_block__fast_booking_form__input_block select:active {
    color: black;
    box-shadow: none;
    border: none;
    border-bottom: 2px solid #ff6600;
    background: rgba(255, 255, 255, 0.15);
}
.first_block__fast_booking_form__button_block button {
    color: white;
    background: none;
    border: 2px solid #ff6600;
    padding: 8px 0;
    width: 75%;
    position: relative;
    left: 50%;
    font-size: 1.75vw;
    font-weight: 600;
    transform: translate(-50%, 0);
    border-radius: 50px;
    transition: all 0.2s ease;
}
.first_block__fast_booking_form__button_block button:hover {
    background: #ff6600;
}



.despre_noi {
    padding: 5%;
    position: relative;
}
.despre_noi_block {
    width: 50%;
    z-index: 2;
    position: relative;
}
.despre_noi_block__header {
    font-size: 3vw;
    font-weight: 700;
    color: #232f3e;
}
.despre_noi_block__subheader {
    font-size: 1.75vw;
    font-weight: 500;
    color: #232f3e;
}
.despre_noi_block__text {
    margin: 15vh 0 0 10vw;
}
.despre_noi_block__text__separator {
    opacity: 1;
    border: 2px solid #ff6600;
    background: #ff6600;
    width: 30%;
    margin: 1.25% 0;
}
.despre_noi_block__text__header {
    color: rgba(35, 47, 62, 1);
    font-size: 1.5vw;
    font-weight: 500;
    margin: 0 0 1.25% 0;
}
.despre_noi_block__text__subheader {
    color: rgba(35, 47, 62, 0.8);
    font-size: 1vw;
    font-weight: 400;
    margin: 0;
}
.despre_noi img {
    position: absolute;
    z-index: 1;
    display: block;
    top: 50%;
    left: 50%;
    transform: translate(0, -50%);
    opacity: 0.85;
    width: 35vw;
}



.servicii {
    padding: 5%;
}

.servicii__header {
    font-size: 2.75vw;
    font-weight: 700;
    color: #232f3e;
    text-align: center;
    margin: 0;
}
.servicii__separator {
    margin: 1% 0 2.5% 0;
    opacity: 1;
    border: 2px solid #ff6600;
    background: #ff6600;
    width: 15%;
    position: relative;
    left: 60%;
    transform: translate(-60%, 0);
}
.servicii_text {
    color: black;
    font-size: 1.25vw;
    font-weight: 400;
    margin: 0;
    font-family: 'Roboto Slab', serif;
}
.servicii_text_border {
    border: 2px solid #232f3e;
    padding: 5px;
}

.g-2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 3rem;
    align-items: center;
    margin: 2.5% 0 0 0;
    padding: 0 15%;
}

.g-3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 25px;
    align-items: center;
    margin: 2.5% 0 0 0;
}
.servicii_card {
    height: 100%;
    padding: 10% 2.5% 2.5% 2.5%;
    display: flex;
    flex-direction: column;
    text-align: center;
    justify-content: space-between;
    border: 2px solid #ff6600;
    border-radius: 10px;
    transition: all 0.2s ease;
}
.servicii_card:hover {
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.45);
}

.servicii_card__text_block__icon_block img {
    width: 25%;
}
.servicii_card__text_block__header {
    color: #ff6600;
    font-weight: 700;
    font-size: 2vw;
    margin: 2% 0 0 0;
}
.servicii_card__text_block__subheader {
    color: rgba(0, 0, 0, 0.75);
    font-weight: 300;
    font-size: 1.25vw;
    margin: 0;
    font-family: 'Roboto Slab', serif;
}
.servicii_card__button_block {
    margin: 5% 0 0 0;
}

.servicii_card__button {
    color: black;
    font-weight: 600;
    font-size: 1.5vw;
    width: 100%;
    padding: 7px 0;
    background: none;
    border: 2px solid #232f3e;
    border-radius: 3px;
    transition: all 0.2s ease;
}
.servicii_card__button:hover {
    border: 2px solid #232f3e;
    background: #232f3e;
    color: white;
}



.orasele {
    padding: 5%;
    background: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.11));
}

.orasele__header {
    font-size: 2.75vw;
    font-weight: 700;
    color: #232f3e;
}

.orasele__separator {
    border: 2px solid #ff6600;
    background: #ff6600;
    width: 35%;
    left: 20%;
    opacity: 1;
    position: relative;   
    margin: 1.25% 0 5% 0; 
}

.orasele__cards {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 25px;
    align-items: center;
}

.orasele__card {
    padding: 5%;
    border: 2px solid #232f3e;
    border-radius: 3px;
    transition: all 0.2s ease;
}
.orasele__card:hover {
    box-shadow: 0px 0px 10px 2px rgba(0, 0, 0, 0.25);
}

.orasele__card__image {
    width: 100%;
    height: 10vw;
    position: relative;
    left: 50%;
    transform: translate(-50%, 0);
    margin: 0 0 15% 0;
}
.orasele__card__image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.orasele__card__header {
    margin: 0;
    color: black;
    font-size: 2vw;
    font-weight: 800;
    text-align: center;
}



.galery {
    background: rgba(0, 0, 0, 0.11);
    padding: 5% 12.5%;
}

.galery__header {
    margin: 0;
    color: #232f3e;
    font-size: 2.75vw;
    font-weight: 700;
    text-align: center;
}

.galery__separator {
    opacity: 1;
    border: 2px solid #ff6600;
    background: #ff6600;
    width: 40%;
    position: relative;
    left: 10%;
    transform: translate(-10%, 0);
}

#galery_box .carousel-item {
    height: 40vw;
    text-align: center;
}
.d-block.w-100 {
    height: 100%;
    object-fit: contain;
}

.carousel-control-prev-icon, .carousel-control-next-icon {
    background-color: #232f3e;
    width: 3rem;
    height: 3rem;
    background-size: 1.5rem;
    border-radius: 50%;
}



.footer {
    padding: 2.5% 5% 1.25% 5%;
    background: #232f3e;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 2.5%;
    align-items: center;
    box-shadow: 0px 0px 10px 2px rgba(0, 0, 0, 0.45);
}

.footer__links_container ul {
    list-style: none;
    margin: 0;
    padding: 0;
    text-align: right;
}
.footer__links_container__social_links {
    text-align: right;
}
.footer__links_container__social_links a {
    display: inline-block;
    color: white;
    font-size: 3.25vw;
    margin: 0 7px;
    transition: all 0.2s ease;
}
.footer__links_container__social_links a:hover {
    color: #ff6600;
}
.footer__links_container__phone_link {
    margin: 1.25% 0 0 0;
}
.footer__links_container__map_link a {
    margin-left: 5%;
}
.footer__links_container__phone_link a, 
.footer__links_container__map_link a {
    font-weight: 300;
    font-size: 1.5vw;
    color: #fff;
    text-decoration: none;
    transition: all 0.2s ease;
}
.footer__links_container__phone_link a:hover, 
.footer__links_container__map_link a:hover {
    color: #ff6600;
}

.footer__form_container {
    border-left: 2px solid #ff6600;
    border-right: 2px solid #ff6600;
    padding: 0 5%;
}
.footer__form_container__header {
    font-weight: 700;
    font-size: 1.75vw;
    color: white;
    text-align: center;
}
.footer__form_container .form-group {
    margin: 10px 0px;
}
.footer__form_container input {
    background: none;
    border-radius: 0;
    border: none;
    border-bottom: 2px solid white;
    color: #ff6600;
    font-size: 1vw;
    font-weight: 400;
}
.footer__form_container input::placeholder {
    color: #fff;
}
.footer__form_container input:focus, .footer__form_container input:active {
    background: rgba(0, 0, 0, 0.1);
    border-bottom: 2px solid #ff6600;
    box-shadow: none;
    color: #ff6600;
    outline: none;
}
#footer_form__button {
    border: 2px solid #fff;
    color: white;
    font-weight: 600;
    font-size: 1.5vw;
    background: none;
    border-radius: 3px;
    transition: all 0.2s ease;
}
#footer_form__button:hover {
    color: white;
    background: #ff6600;
    border: 2px solid #ff6600;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.45);
}

.footer__logo_container {
    text-align: center;
}
.footer__logo_container img {
    width: 70%;
}



/* --- Call button --- */
.phone_button_container {
    width: 5vw;
    height: 5vw;
    background: #ff6600;
    opacity: 0.75;
    border-radius: 50%;
    position: fixed;
    left: 15px;
    bottom: 10px;
    transition: all 0.2s ease;
    animation: pulse-anim 2.3s infinite ease-in-out;
    z-index: 999;
}
.phone_button_container:hover {
    opacity: 1;
}

.phone_button__box {
    position: relative;
    width: 100%;
    height: 100%;
}
.phone_button__link {
    position: absolute;
    display: inline-block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-decoration: none;
}
.phone_button__link i {
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #232f3e;
    font-size: 2.5vw;
}

/* --- Call button --- */
.phone_button_container2 {
    width: 5vw;
    height: 5vw;
    background: #ff6600;
    opacity: 0.75;
    border-radius: 50%;
    position: fixed;
    left: 15px;
    bottom: calc(20px + 5vw);
    transition: all 0.2s ease;
    animation: pulse-anim 2.3s infinite ease-in-out;
    z-index: 999;
}
.phone_button_container2:hover {
    opacity: 1;
}

.phone_button__box2 {
    position: relative;
    width: 100%;
    height: 100%;
}
.phone_button__link2 {
    position: absolute;
    display: inline-block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-decoration: none;
}
.phone_button__link2 i {
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #232f3e;
    font-size: 2.5vw;
}
@keyframes pulse-anim {
    0% {
        transform: scale(0.85);
    }
    50% {
        transform: scale(1);
    }
    100% {
        transform: scale(0.85);
    }
}
  /* конец кнопки звонка */



.modal-content {
    border: none;
    background-color: #232f3e;
}
.modal-header {
    border: none;
}
.modal-title {
    font-weight: 700;
    font-size: 1.75rem;
    color: #ff6600;
}
.modal-body {
    padding: 1rem 5rem;
}
.modal-body .form-group {
    margin: 10px 0px;
}
.modal-body .form-group label {
    color: rgba(255, 255, 255, 0.5);
    font-weight: 400;
    font-size: 1rem;
    margin: 0px 0px 5px 0px;
}
.modal-body .form-group input {
    color: white;
    font-weight: 400;
    font-size: 1.35rem;
    background: none;
    border: none;
    border-radius: 0;
    border-bottom: 2px solid white;
    transition: all 0.2s ease;
}
.modal-body .form-group input::placeholder {
    color: white;
    font-weight: 400;
    font-size: 1.35rem;
}
.modal-body .form-group input:focus, .modal-body .form-group input:active {
    color: #ff6600;
    box-shadow: none;
    border: none;
    border-bottom: 2px solid #ff6600;
    background: rgba(255, 255, 255, 0.25);
}
.modal-body .form-group button {
    color: white;
    font-size: 1.5rem;
    font-weight: 700;
    border: 2px solid #ff6600;
    background: none;
    border-radius: 50px;
    padding: 3px 0px;
    margin: 20px 0px 0px 0px;
    width: 75%;
    position: relative;
    left: 50%;
    transform: translate(-50%, 0);
    transition: all 0.2s ease;
}
.modal-body .form-group button:hover {
    background: #ff6600;
}


/* Style the video: 100% width and height to cover the entire window */
.video_block {
    position: relative;
}
#myVideo {
    position: relative;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100vh;
    object-fit: cover;
}

/* Add some content at the bottom of the video/page */
.video-content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    color: #f1f1f1;
    padding: 20px;
}

.video-content-text {
    width: 100%;
    position: absolute;;
    top: 60%;
    left: 50%;
    transform: translate(-50%, -60%);
    text-align: center;
    padding: 0 5%;
}

.video-header {
    color: #ff6600;
    font-size: 5rem;
    font-weight: 800;
    margin: 0;
    line-height: 1;
}
.video-subheader {
    color: white;
    font-size: 2rem;
    font-weight: 400;
    margin: 0;
    line-height: 1;
}

.galery iframe {
    width: 85vw;
    height: 60vh;
    display: block;
    position: relative;
    left: 50%;
    transform: translate(-50%, 0);
    border-top: 0.5rem solid #ff6600;
    border-bottom: 0.5rem solid #ff6600;
    border-left: 2.5rem solid #ff6600;
    border-right: 2.5rem solid #ff6600;
    border-radius: 2.5rem;
}


.additional_block_2 {
    padding: 5%;
    background: #232f3e;
}

.additional_block_2 .block__header {
    color: white;
    border-bottom: 3px solid #ff5000;
    margin-bottom: 2rem;
    font-size: 2.75vw;
    font-weight: 700;
    text-align: center;
    display: inline-block;
    position: relative;
    left: 50%;
    transform: translate(-50%, 0);
}

.additional_block_2 .grid_block_4 {
    grid-gap: 2.5%;
}

.additional_block_2__grid_item {
    background: white;
    box-shadow: 0px 0px 0px 2px #ff6600;
    transition: all 0.15s ease;
}
.additional_block_2__grid_item:hover {
    box-shadow: 0px 0px 0px 5px #ff6600;
}

.additional_block_2__grid_item__image {
    position: relative;
    width: 100%;
    height: 15vw;
}
.additional_block_2__grid_item__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.additional_block_2__grid_item__image__badge {
    position: absolute;
    bottom: 0;
    left: 0;
    background: red;
    padding: 5px 10px;
    border-radius: 0px 10px 0px 0px;
}
.additional_block_2__grid_item__image__badge span {
    color: white;
    font-weight: 800;
    font-size: 20px;
    line-height: 1;
}

.additional_block_2__grid_item__text {
    padding: 10px 10px 0px 10px;
}
.additional_block_2__grid_item__text h3 {
    color: #ff6600;
    font-weight: 700;
    font-size: 2.5vw;
}
.additional_block_2__grid_item__text p {
    color: #463940;
    font-weight: 400;
    font-size: 20px;
    margin: 3px 0;
}
.additional_block_2__grid_item__text p b {
    color: #ff6600;
    font-weight: 700;
}
.additional_block_2__grid_item__text p i {
    color: black;
}

.additional_block_2__grid_item__button button {
    width: 100%;
    padding: 3px 0;
    margin: 20px 0 0 0;
    color: white;
    background: #232f3e;
    font-size: 25px;
    font-weight: 500;
    border: none;
    border-radius: 0;
    transition:  all 0.15s ease;
}
.additional_block_2__grid_item__button button:hover {
    background: #ff6600;
    color: #fff;
}