/**
 * Theme Name:     OceanWP Child
 * Author:         OceanWP
 * Template:       oceanwp
 * Text Domain:	   oceanwp-child
 * Description:    OceanWP is the perfect theme for your project. Lightweight and highly extendable, it will enable you to create almost any type of website such a blog, portfolio, business website and WooCommerce storefront with a beautiful &amp; professional design. Very fast, responsive, RTL &amp; translation ready, best SEO practices, unique WooCommerce features to increase conversion and much more. You can even edit the settings on tablet &amp; mobile so your site looks good on every device. Work with the most popular page builders as Elementor, Beaver Builder, Brizy, Visual Composer, Divi, SiteOrigin, etc... Developers will love his extensible codebase making it a joy to customize and extend. Best friend of Elementor &amp; WooCommerce. Looking for a Multi-Purpose theme? Look no further! Check the demos to realize that it
 */
.elementor-slideshow__footer .elementor-slideshow__title { display: none; }
#page, #main { overflow-x: hidden; }
.elementor-section.mainbanner { min-height: 80vh; align-items: center; align-content: center; }
.nostriservizi_row { display: flex ; flex-wrap: wrap; margin: 0 -10px; }
.nostriservizi_row .col-6 { width: 50%; padding: 10px; }
.servizimgslider.slider { display: flex; gap: 15px; margin: 0; padding: 0; list-style: none; border-radius: 16px; overflow: hidden;}
.servizidatacol { display: flex; flex-direction: column; height: 100%; justify-content: space-between; padding: 15px 20px; border-radius: 16px; background: rgba(242,246,242,0.5); }
.servizimgbox .img-fluid { width: 100%; height: 450px; object-fit: cover; border-radius: 16px; }
.servizidatabox h2 { font-size: 36px; font-weight: 800; line-height: 1.2em; color: #1E1E1E; font-family: "Univers Next Pro Black", Sans-serif; margin: 0 0 15px; }
.servizidatabox p { text-align: left; font-size: 16px; color: #000000; line-height: 26px; margin: 0 0 13px; font-family: "Univers Next Pro Regular", Sans-serif; }
.servizibtn { text-align: right; }
.btn.greenbgbtn { display: inline-block; font-size: 16px; font-weight: 700; color: #FFFFFF; background-color: #008400; border-radius: 8px; padding: 8px 20px; font-family: "Univers Next Pro Bold", Sans-serif; }
.servizimgslider.slick-slider { display: block; gap: 0; }
.servizimgslider.slick-slider .slick-list { padding: 0px 40px; }
.servizimgslider.slick-slider .slick-slide { padding: 0 7px; }
.servizimgslider .slick-slide .item { display: block !important; }
.nostriservizi_row:nth-child(even) { flex-direction: row-reverse; }
.galleryslider .elementor-main-swiper { padding: 0 10% 45px; overflow: hidden; }
.galleryslider .elementor-main-swiper .swiper-slide { height: 80%; margin: auto; padding: 0 10px; transition: all .5s;}
.galleryslider .elementor-main-swiper .swiper-slide.swiper-slide-active { height: 100%; }
.galleryslider .elementor-main-swiper .elementor-carousel-image { border-radius: 16px; }
.galleryslider .elementor-main-swiper .swiper-pagination { position: relative; bottom: 0; margin-top: 18px; }
.galleryslider .elementor-main-swiper .elementor-swiper-button { position: absolute; left: calc(50% - 100px); top: auto !important; bottom: -2px; z-index: 99; transform: translateX(-50%); }
.galleryslider .elementor-main-swiper .elementor-swiper-button.elementor-swiper-button-next { left: calc(50% - -100px); right: auto; }
.contactsection .elementor-background-overlay { width: 30%; left: auto; right: 0; }
.wpcf7-form .contactiform { margin: 0; } 
.contactiform .form-group { margin: 0 0 15px; } 
.contactiform p { margin: 0; padding: 0; position: relative; } 
.contactiform .form-group .form-control { width: 100%; background: #fff; border: 1px solid #949494; border-radius: 8px; padding: 15px 15px; font-size: 16px; font-family: "Univers Next Pro Regular", Sans-serif; color: #000; }
.contactiform .contactibtn { width: 100%; background-color: #008400 !important; font-family: "Univers Next Pro Bold", Sans-serif; font-size: 16px; font-weight: 700; fill: #FFFFFF; color: #FFFFFF; border-radius: 8px; padding: 12px 20px; line-height: inherit; text-transform: capitalize; border: 0; transition: all .4s; }
.contactiform .contactibtn:hover { background-color: #004e00 !important; }
.contactiform .wpcf7-spinner { position: absolute; top: 15px; right: 0; }
body .wpcf7 form.invalid .wpcf7-response-output, body .wpcf7 form.failed .wpcf7-response-output { background: #dc3232; color: #fff; border-color: #DC3231; font-size: 15px; margin: 15px 0 0; text-align: center; border-radius: 8px; }
body .wpcf7 form.sent .wpcf7-response-output { background: #46b450; color: #fff; border-color: #46b450; font-size: 15px; margin: 15px 0 0; text-align: center; border-radius: 8px; }
/**/
.footertoprow > .elementor-container { justify-content: space-between; }
.footertoprow > .elementor-container > .elementor-column { width: auto; }
/**/
.categorierow { width: 100%; display: inline-block; margin: 15px 0; }
.categoriedata { width: 100%; display: flex; gap: 20px; align-items: flex-end; justify-content: space-between; border-radius: 16px; background: rgba(255,255,255,0.5); padding: 15px 40px; margin: 0 0 10px; }
.categorieleftdata { width: 100%; max-width: 600px; }
.categorieleftdata h2 { font-size: 36px; font-weight: 800; line-height: 1.2em; color: #1E1E1E; font-family: "Univers Next Pro Black", Sans-serif; margin: 0 0 15px; }
.categorieleftdata p { text-align: left; font-size: 16px; color: #000000; line-height: 26px; margin: 0; font-family: "Univers Next Pro Regular", Sans-serif; }
.categorierightbtn { text-align: right; min-width: 200px; }
.categoryimgslider { width: 100%; margin: 20px auto; display: flex; gap: 20px; justify-content: space-between; } 
.categoryimgcolumn { width: 50%; display: flex; gap: 20px; } 
.catimgbox { width: 100%; height: 300px; overflow: hidden; border-radius: 20px; transition: all 1s ease; flex: 1; }
.catimgbox img { width: 100%; height: 100%; object-fit: cover; } 
.catimgbox.catsmall { flex: 0.07; cursor: pointer; } 
/**/
#main .mainbloglist .elementor-post .elementor-post__card { padding: 20px 20px; }
#main .mainbloglist .elementor-post .elementor-post__card .elementor-post__thumbnail__link { border-radius: 16px; overflow: hidden; }
#main .mainbloglist .elementor-post .elementor-post__card .elementor-post__read-more-wrapper { text-align: right; }
#main .mainbloglist .elementor-post .elementor-post__card a { outline: none !important; }
#main .mainbloglist .elementor-post .elementor-post__card .elementor-post__title a:hover, #main .mainbloglist .elementor-post .elementor-post__card:hover .elementor-post__read-more { color: #008400; }
.blogdetails p { margin: 0 0 15px; }
.blogdetails .wp-block-heading { color: #000; font-family: "Univers Next Pro Bold", Sans-serif; margin: 0 0 12px; line-height: 1.3em; }
.blogdetails .wp-block-image img { width: 100%; }
.servizibtn { display: none;}
.dialog-lightbox-widget .elementor-swiper-button { position: absolute; top: 0; bottom: 0; z-index: 5; cursor: pointer; }


/*Responsive Media Query*/
@media (max-width: 1024px) {
.galleryslider .elementor-main-swiper { padding: 0 5% 45px; }

	
}


@media (max-width: 991px) {
.elementor-section.mainbanner { min-height: 100%; }
.galleryslider .elementor-main-swiper .swiper-slide { padding: 0 5px; }
.servizidatabox h2 { font-size: 30px; }
.servizimgbox .img-fluid { height: 350px; }
.categoriedata { padding: 15px 20px; align-items: center; gap: 10px; }
.categorieleftdata h2 { font-size: 30px; margin: 0 0 10px; }
.categoryimgcolumn { gap: 10px; } 
.catimgbox.catsmall { flex: 0.1; }


}


@media (max-width: 767px) {
.nostriservizi_row { padding: 15px 0; }
.nostriservizi_row .col-6 { width: 100%; }
.servizidatabox h2 { font-size: 24px; margin: 0 0 10px; }
.servizibtn { text-align: left; }
.contactsection .elementor-background-overlay { display: none; }
.galleryslider .elementor-main-swiper .swiper-slide { height: 100%; }
.galleryslider .elementor-main-swiper { padding: 0 0 45px; }
/**/
.footertoprow > .elementor-container > .elementor-column { width: 100%; }
/**/
.categorierow { margin: 5px 0; }
.categoryimgslider { gap: 10px; }
.categoriedata { padding: 10px 15px; display: block; }
.categorieleftdata h2 { font-size: 24px; }
.categorierightbtn { text-align: left; min-width: 100%; margin: 10px 0 0; }
.catimgbox { height: 200px; }
.blogdetails .wp-block-heading { font-size: 18px; }

}


@media (max-width: 480px) {
.servizimgslider.slick-slider .slick-list { padding: 0 20px; }
.servizimgslider.slick-slider .slick-slide { padding: 0 4px; }
.servizimgbox .img-fluid { height: 270px; }
.catimgbox.catsmall { flex: 0.2; }
.catimgbox { height: 150px; }


}

/* =========================
   GALLERY FILTER
   ========================= */
.filttergallery {
    position: relative;
}

.filttergallery .form-select {
    display: inline-block;
    width: auto;
    padding: 10px;
    position: absolute;
    top: -210px;
    right: 0;
    z-index: 9;
    color: #fff;
    background: transparent;
    border: 1px solid #fff;
    font-size: 16px;
    font-weight: 300;
    cursor: pointer;
    box-shadow: none;
    outline: none;
}

.filttergallery .form-select option {
    color: #000000;
}

/* =========================
   GALLERY GRID
   ========================= */
.galleryimglist {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -10px;
    padding: 0;
    list-style: none;
}

.galleryimglist .item {
    width: 50%;
    padding: 10px;
}

.galleryimglist .item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Layout irregolare */
.galleryimglist .item:nth-child(1),
.galleryimglist .item:nth-child(5),
.galleryimglist .item:nth-child(8),
.galleryimglist .item:nth-child(12),
.galleryimglist .item:nth-child(16),
.galleryimglist .item:nth-child(20),
.galleryimglist .item:nth-child(23),
.galleryimglist .item:nth-child(27),
.galleryimglist .item:nth-child(30),
.galleryimglist .item:nth-child(34),
.galleryimglist .item:nth-child(37),
.galleryimglist .item:nth-child(41),
.galleryimglist .item:nth-child(44),
.galleryimglist .item:nth-child(48),
.galleryimglist .item:nth-child(51),
.galleryimglist .item:nth-child(55) {
    width: 35%;
}

.galleryimglist .item:nth-child(2),
.galleryimglist .item:nth-child(4),
.galleryimglist .item:nth-child(9),
.galleryimglist .item:nth-child(11),
.galleryimglist .item:nth-child(17),
.galleryimglist .item:nth-child(19),
.galleryimglist .item:nth-child(24),
.galleryimglist .item:nth-child(26),
.galleryimglist .item:nth-child(31),
.galleryimglist .item:nth-child(33),
.galleryimglist .item:nth-child(38),
.galleryimglist .item:nth-child(40),
.galleryimglist .item:nth-child(45),
.galleryimglist .item:nth-child(47),
.galleryimglist .item:nth-child(52),
.galleryimglist .item:nth-child(54) {
    width: 65%;
}

.galleryimglist .item:nth-child(3),
.galleryimglist .item:nth-child(10),
.galleryimglist .item:nth-child(13),
.galleryimglist .item:nth-child(18),
.galleryimglist .item:nth-child(25),
.galleryimglist .item:nth-child(32),
.galleryimglist .item:nth-child(39),
.galleryimglist .item:nth-child(46),
.galleryimglist .item:nth-child(53) {
    width: 100%;
}

/* =========================
   RESPONSIVE
   ========================= */
@media (max-width: 1024px) {
    .filttergallery .form-select {
        left: 50%;
        right: auto;
        transform: translateX(-50%);
        top: -140px;
    }
}

@media (max-width: 767px) {
    .galleryimglist {
        margin: 0 -5px;
    }

    .galleryimglist .item {
        padding: 5px;
    }

    .filttergallery .form-select {
        top: -130px;
        font-size: 15px;
        min-width: 200px;
    }
}
