/* TEXTOS */
body.home {
    font-family: "BasierSquare" !important;
    color: #333;
    line-height: 1.5;
}

body.home .vc_row {
    margin-bottom: 50px;
}

body.home .vc_row h2,
body.home .vc_row h3,
body.home .vc_row h4,
body.home .vc_row h5,
body.home .vc_row h6 {
    color: #222;
    margin-bottom: 15px;
	line-height: 100%;
    font-family: "BasierSquare" !important;	
	letter-spacing: -0.025rem !important;
	text-align: inherit !important;
}
body.home .vc_row h2 a,
body.home .vc_row h3 a,
body.home .vc_row h4 a,
body.home .vc_row h5 a,
body.home .vc_row h6 a{
    text-decoration: none;
	color: #000;
}

body.home .vc_row h2 {
    font-size: 80px;
}
body.home .vc_row h2 a{
    font-size: 60px;
	letter-spacing: -5%;
	letter-spacing: -0.025rem;
}
body.home .vc_row h3 {
    font-size: 25px;
}
body.home .vc_row h4 {
    font-size: 22px;
}
body.home .vc_row h5 {
    font-size: 18px;
}
body.home .vc_row h6 {
    font-size: 16px;
}

@media (max-width: 768px) {
    body.home .vc_row h2 { font-size: 28px; }
    body.home .vc_row h3 { font-size: 24px; }
    body.home .vc_row h4 { font-size: 20px; }
    body.home .vc_row h5 { font-size: 16px; }
    body.home .vc_row h6 { font-size: 14px; }
}


body.home .vc_row p,
body.home .vc_row .wpb_text_column p,
body.home .vc_row .wpb_wrapper p {
    font-size: 16px;
    line-height: 100%;
    color: #444;
    margin-bottom: 20px;
    font-family: "BasierSquare" !important;
}

/* títulos */
body.home .ozm_blocks.container_blockpostproduct .block_title,
body.home .ozm_blocks.container_blockpost .block_title {
    font-size: 25px;
    font-weight: 400;
    color: #222;
    margin-top: 10px;
    margin-bottom: 5px;
    text-transform: lowercase;
    letter-spacing: normal;
    font-family: "BasierSquare" !important;
}
body.home .ozm_blocks.container_blockpostproduct .block_title::first-letter,
body.home .ozm_blocks.container_blockpost .block_title::first-letter {
    text-transform: uppercase;
}
body.home .ozm_blocks.container_blockpostproduct .divtags span,
body.home .ozm_blocks.container_blockpost .divtags span {
    font-size: 16px;
    color: #888;
    display: inline-block;
    margin-right: 5px;
    font-family: "BasierSquare" !important;
}

/* Textos dentro de slider ou qode slider */
body.home #qode-homeslider .slider_content h2.q_slide_title {
    font-size: 82px;
    line-height: 100%;
    font-weight: 700;
    color: #ea4f2f;
    font-family: "BasierSquare" !important;
}

body.home #qode-homeslider .slider_content h3.q_slide_subtitle {
    font-size: 20px;
    font-weight: 400;
    color: #333;
    margin-bottom: 15px;
    font-family: "BasierSquare" !important;
}

/* Botóns */
body.home .qbutton,
body.home .carousel-inner .slider_content .slide_buttons_holder a,
body.home .carousel-inner .item.light .slider_content .slide_buttons_holder a,
body.home .wpb_wrapper .qbutton,
body.home .qode-ii-info-holder .qbutton {
    font-size: 20px !important;
    font-weight: 400 !important;    
	letter-spacing: 0px;
    color: rgb(255, 255, 255) !important;
    /*background-color: rgb(234, 79, 47) !important;
    border: 1px solid rgb(234, 79, 47) !important;*/
    text-transform: none;
    border-radius: 0 !important; 
    padding: 5px 14px !important; 
    text-align: center !important;
    text-decoration: none !important;
    display: inline-block !important;
    transition: all 0.3s ease !important;
    font-family: "BasierSquare" !important;
}

body.home .qbutton:hover,
body.home .carousel-inner .slider_content .slide_buttons_holder a:hover,
body.home .carousel-inner .item.light .slider_content .slide_buttons_holder a:hover,
body.home .wpb_wrapper .qbutton:hover,
body.home .qode-ii-info-holder .qbutton:hover {
    background-color: #a2a2a2;
    border-color: #a2a2a2;
    color: #fff;
}

body.home .qode-ii-title,
body.home h3.qode-ii-title {
    font-size: 60px;	
	letter-spacing: -5%;
	letter-spacing: -0.025rem;
    margin-bottom: 10px;
	color: white !important;
    text-align: left;
    font-family: "BasierSquare" !important;
}


/** BLOQUES **/
body.home .ozm_blocks.container_blockpostproduct,
body.home .ozm_blocks.container_blockpost { 
    box-sizing: border-box; 
    width: 100%; 
    padding: 0px; 
}
body.home .ozm_blocks.container_blockpostproduct{
	margin-bottom: 3%;
	min-height: 55vh;
}
body.home .ozm_blocks.container_blockpostproduct .project-img{
	min-height: 55vh;
}
body.home .ozm_blocks.container_blockpost { 
    margin-bottom: 1.5%;
	min-height: 60vh;
}
body.home .blockpostproduct.latest_post_holder,
body.home .blockpost.latest_post_holder { 
    position: relative; 
    overflow: visible; 
}
body.home .shortcode_blockpostproducts,
body.home .shortcode_blockposts { 
    display: flex; 
    gap: 12px; 
    overflow-x: auto; 
    overflow-y: hidden; 
    -webkit-overflow-scrolling: touch; 
    scroll-snap-type: x mandatory; 
    padding: 16px 6px; 
    margin: 0; 
    list-style: none; 
    align-items: stretch; 
    scrollbar-width: none; 
    width: 100%; 
}
body.home .shortcode_blockpostproducts{ 
	min-height: 55vh;
}
body.home .shortcode_blockposts { 
	min-height: 60vh;
}

body.home .shortcode_blockpostproducts,
body.home .shortcode_blockposts {
    -webkit-overflow-scrolling: touch;
    touch-action: pan-x pan-y;
    overflow-x: auto;
	scroll-behavior: smooth;
	user-select: none;
    cursor: grab;
}
.shortcode_blockpostproducts:active,
.shortcode_blockposts:active {
  cursor: grabbing;
}

body.home .shortcode_blockpostproducts::-webkit-scrollbar,
body.home .shortcode_blockposts::-webkit-scrollbar { 
    display: none; 
}

body.home .shortcode_blockpostproducts > li.element-item,
body.home .shortcode_blockposts > li.element-item { 
    /*flex: 0 0 100%; 
    max-width: 100%; */
    scroll-snap-align: center; 
    box-sizing: border-box; 
    margin: 0; 
    padding: 0; 
    list-style: none; 
}

body.home .shortcode_blockpostproducts .project-img,
body.home .shortcode_blockposts .project-img { 
    width: 100%; 
    padding-top: 5%; 
    background-position: center; 
    background-size: cover; 
    display: block; 
}

body.home .shortcode_blockpostproducts .block_title,
body.home .shortcode_blockposts .block_title { 
    margin: 10px 0 6px; 
    font-size: 14px; 
    line-height: 100%; 
    text-transform: uppercase; 
    letter-spacing: 0.02em; 
}

body.home .shortcode_blockpostproducts .divtags,
body.home .shortcode_blockposts .divtags { 
    display: flex; 
    gap: 6px; 
    flex-wrap: wrap; 
}

body.home .shortcode_blockpostproducts .divtags .taglabel,
body.home .shortcode_blockposts .divtags .taglabel { 
    font-size: 12px; 
    padding: 4px 8px 4px 0px; 
    /*background: rgba(0,0,0,0.05); */
}

/* Contedor do slider */
body.home .shortcode_blockpostproducts,
body.home .shortcode_blockposts {
    display: flex;
    gap: 12px;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    padding: 16px 6px;
    margin: 0;
    list-style: none;
    align-items: stretch;
    width: 100%;
    scroll-behavior: smooth; /* para que o scroll automático sexa suave */
}

/* Items do slider */
body.home .shortcode_blockpostproducts > li.element-item,
body.home .shortcode_blockposts > li.element-item {
    flex: 0 0 25%; 
    max-width: 25%;
    scroll-snap-align: start;
    box-sizing: border-box;
}

/* Imaxes dentro dos items */
body.home .shortcode_blockpostproducts .project-img,
body.home .shortcode_blockposts .project-img {
    width: 100%;
    height: auto;
    background-position: center;
    background-size: cover;
    display: block;
}

/* Mantemos gap visual entre imaxes */
body.home .shortcode_blockpostproducts > li.element-item:not(:last-child),
body.home .shortcode_blockposts > li.element-item:not(:last-child) {
    margin-right: 12px;
}


@media (min-width: 992px) {

    body.home .shortcode_blockpostproducts,
    body.home .shortcode_blockposts { 
        display: grid; 
        grid-template-columns: repeat(4, 1fr); 
        gap: 1%; 
        overflow: visible; 
        padding: 0; 
        align-items: start; 
        width: 100%; 
    }

    body.home .shortcode_blockpostproducts .arrows,
    body.home .shortcode_blockposts .arrows { 
        display: none !important; 
    }

    body.home .shortcode_blockpostproducts > li.element-item,
    body.home .shortcode_blockposts > li.element-item { 
        width: 100%; 
        flex: none; 
        max-width: none; 
    }

    body.home .shortcode_blockpostproducts .project-img,
    body.home .shortcode_blockposts .project-img { 
        padding-top: 5%; 
        background-position: center; 
        background-size: cover; 
    }

    body.home .shortcode_blockpostproducts .block_title,
    body.home .shortcode_blockposts .block_title { 
        font-size: 15px; 
    }
}

body.home .shortcode_blockpostproducts .product_list_thumb_link,
body.home .shortcode_blockposts .product_list_thumb_link { 
    display: block; 
    color: inherit; 
    text-decoration: none; 
    cursor: pointer; 
}

body.home .shortcode_blockpostproducts .product_list_thumb_link:focus,
body.home .shortcode_blockposts .product_list_thumb_link:focus { 
    outline: 3px solid rgba(21,156,228,0.35); 
    outline-offset: 4px; 
}

body.home  .twoimagesbkg_home {
    margin-top: 3% !important;
}

/*** SLIDER ***/
body.homeslider,
body.home .homeslider > div{
	width: 100%;	
	max-width: 100% !important;
}
body.home .homeslider{
    min-height: 80vh;
}
body.home #qode-homeslider,
body.home #qode-homeslider .item {    
    max-height: 90vh;
    height: auto;
}

body.home #qode-homeslider .slider_content .text h2,
body.home #qode-homeslider .slider_content .text h3,
body.home #qode-homeslider .slider_content .text h4,
body.home #qode-homeslider .slider_content .text h5,
body.home #qode-homeslider .slider_content .text h6 {
    font-family: "BasierSquare" !important;
    margin: 0 0 0.5em 0;
    line-height: 100%;
    color: #ea4f2f;
}

body.home #qode-homeslider .slider_content .text h2,
body.home #qode-homeslider .slider_content .text h2 span{
    font-size: 4vw !important; 
    text-transform: capitalize;
}

body.home #qode-homeslider .slider_content .text h3,
body.home #qode-homeslider .slider_content .text h3 span {
    font-size: 1.35vw !important; 
    font-weight: 400;
    color: #333;
}

body.home #qode-homeslider .slider_content .text span {
    display: inline-block;
}

@media only screen and (max-width: 1024px) {
    body.home #qode-homeslider .slider_content .text h2,
	body.home #qode-homeslider .slider_content .text h2 span {
        font-size: 5vw !important; 
    }
    body.home #qode-homeslider .slider_content .text h3,
	body.home #qode-homeslider .slider_content .text h3 span {
        font-size: 2vw !important; 
    }
	body.home .shortcode_blockpostproducts{ 
		min-height: 47vh;
	}
	body.home .shortcode_blockposts { 
		min-height: 47vh;
	}
	body.home .ozm_blocks.container_blockpostproduct{
		margin-bottom: 1%;
		min-height: 47vh;
	}	
	body.home .ozm_blocks.container_blockpost { 
		margin-bottom: 1%;
		min-height: 50vh;
	}
	body.home .ozm_blocks.container_blockpostproduct .project-img{
		min-height: 50vh;
	}
	body.home .blockpost .project-img{
		min-height: 50vh;
	}
	body.home .shortcode_blockpostproducts, 
	body.home .shortcode_blockposts{
		padding: 0px;
	}
	.twoimagesbkg_home .image_title_w {
		padding: 2rem 1.5rem;
	}
	body.home .qode-ii-title, body.home h3.qode-ii-title{
		letter-spacing: -2px;
		font-size: 44px;
	}
}

@media only screen and (max-width: 768px) {
    body.home #qode-homeslider .slider_content .text h2,
	body.home #qode-homeslider .slider_content .text h2 span {
        font-size: 8.25vw !important; 
    }
    body.home #qode-homeslider .slider_content .text h3,
	body.home #qode-homeslider .slider_content .text h3 span {
        font-size: 3vw !important; 
        line-height: 100%; 
    }
	body.home #qode-homeslider,
	body.home #qode-homeslider .item {    
		max-height: 80vh;
		height: auto;
	}
	
	body.home .shortcode_blockpostproducts > li.element-item,
	body.home .shortcode_blockposts > li.element-item {
		flex: 0 0 100%; 
		max-width: 100%;
		scroll-snap-align: start;
		box-sizing: border-box;
		margin-right: 0px;
	}
}

@media only screen and (max-width: 555px) {
    body.home #qode-homeslider .slider_content .text h2,
	body.home #qode-homeslider .slider_content .text h2 span {
        font-size: 12vw !important; 
    }
    body.home #qode-homeslider .slider_content .text h3,
	body.home #qode-homeslider .slider_content .text h3 span {
        font-size: 5.25vw !important; 
        line-height: 100%; 
    }

}

