body {
    /* genium */
    --genium--font--principal: 'Poppins', sans-serif;
    --genium--font--secundaria: 'Roboto', sans-serif;

    --genium--color--blanc: #ffffff;
    --genium--color--negre: #000000;
    --genium--color--text: #ffffff;
    --genium--color--principal: #002FA7;
    --genium--color--secundari: #737A85;
    --genium--color--terciari: #FFD040;
    --genium--color--error: #FF0033;
    --genium--color--background--clar: #F4F4F4;
    --genium--color--borders: #AEAEAE;

    --genium--maxwidth: 1200px;
    --genium--maxwidth--narrow: 950px;
    --genium--maxwidth--wide: 1500px;

    --genium--padding--sides: 3%;
    --genium--padding--sides-big: 10%;
    --genium--padding--bottom: 10px;

    --genium--columns--margin: 2.9rem;

    --genium--sidebarpage--width: 750px;
    --genium--sidebar--width: 410px;

    --genium--logo--height: 150px;
    --genium--logo--height--slim: 35px;
    --genium--logo--width: auto;

    --genium--height--header: 210px;
    --genium--height--footer: 400px;

    --genium--fonts--h1: 2rem;
    --genium--fonts--h1--large: 3.25rem;
    --genium--fonts--h1--weight: 300;
    --genium--fonts--h1--height: 1.15em;

    --genium--fonts--h2: 2rem;
    --genium--fonts--h2--weight: 300;
    --genium--fonts--h2--height: 1.3em;

    --genium--fonts--h3: 1.6rem;
    --genium--fonts--h3--weight: 300;
    --genium--fonts--h3--height: 1.3em;

    --genium--fonts--h4: 1.25rem;
    --genium--fonts--h4--weight: bold;
    --genium--fonts--h4--height: 1.3em;

    --genium--fonts--p: 1.1rem;
    --genium--fonts--p--weight: normal;
    --genium--fonts--p--height: 1.4em;

    --genium--fonts--p--small: 0.93rem;
    --genium--fonts--p--small--height: 1.5em;

    --genium--fonts--p--medium: 1.4rem;
    --genium--fonts--p--medium--height: 1.4em;

    --genium--fonts--p--large: 2.15rem;
    --genium--fonts--p--large--height: 1.33em;

    --genium--fonts--p--xlarge: 3.2rem;
    --genium--fonts--p--xlarge--height: 1.15em;

    --genium--fonts--margins: 1.2rem;

    /* buttons */
    --genium--buttons--radius: 0;
    --genium--buttons--minwidth: 175px;
    --genium--buttons--padding: 1.2rem 2rem;

    /* effects*/
    --genium--transition: .2s;

    /* wp */
    --wp--preset--font-size--small: 13px;
    --wp--preset--font-size--medium: 19px;
    --wp--preset--font-size--large: 26px;
    --wp--preset--font-size--x-large: 36px;
}

p{
    font-family: var(--genium--font--secundaria);
}
.contact .contact-info p a{
    color: #000000 !important;
}

.black-text p,
.black-text a
{
    color: #000000 !important;
}

body, #footer, #header{
    background-color: #000000;
    color: #ffffff;
}
#footer{
    padding-bottom: 40px;
    padding-top: 40px;
    margin-top: -15px;
}
.footer-wrapper .footer-info,
.footer-wrapper .bottom-bar {
	background: none !important;
}
.footer-wrapper .footer-info ul.menu{
    text-align: right;
}
.footer-wrapper .footer-info ul.menu li {
	display: inline-block;
    font-size: 1.2rem !important;
    margin-left: 30px;
    transition: .2s;
}
.footer-wrapper .footer-info ul.menu li.current_page_item,
.footer-wrapper .footer-info ul.menu li:hover
{
    color: var(--genium--color--principal);
}
.footer-wrapper .footer-info {
	padding-bottom: 40px;
}

#header.slim{
    padding-top: 15px;
}
#header.slim .logo img,
#header.scrolled .logo img
{
    height: 90px;
}

#header.scrolled {
	transform: translateY(-100%);
}
#header.scrolled.scrollup {
	transform: translateY(0);
}

.arrow-link a{
    color: #ffffff !important;
    position: relative;
    padding-left: 25px;
}
.arrow-link a::before {
	content: '\276F';
	display: inline-block;
    color: var(--genium--color--principal);
	width: 2em;
	height: 1.2em;
	margin-right: .8em;
	background-size: contain;
	background-position: center bottom;
	background-repeat: no-repeat;
	transform: translateY(.1em);
	transition: .2s;
	position: absolute;
	left: 0;
    top: -1px;
    transition: .2s;
}
.arrow-link a:hover::before {
    left: 5px;
}

.full-height{
    height: 100vh;
}
.header-video.full-height{
    margin-bottom: 0;
    padding-top: 0;
    overflow: visible;
}
.header-video.full-height > .wp-block-group__inner-container{
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-content: flex-end;
    height: 100%;
    width: 100%;
}
.header-video.full-height > .wp-block-group__inner-container .wp-block-group{
    padding-left: var(--genium--padding--sides-big) !important;
    padding-bottom: 100px;
}
.header-video.full-height > .wp-block-group__inner-container h1{
    margin-left: 0;
    font-size: 4.5rem !important;
}
.header-video.full-height > .wp-block-group__inner-container .arrow-link{
    padding-right: var(--genium--padding--sides-big) !important;
    display: flex;
    justify-content: flex-end;
    flex-flow: column wrap;
    padding-bottom: 115px;
    margin: 0;
}

p.arrow-link.has-text-color a{
    color: inherit !important;
}
p.arrow-link a{
    font-size: 1.2rem !important;
}

#masinfo{
    scroll-margin-top: 100px;
}

h2{
    scroll-margin-top: var(--genium--height--header);
}

#header {
	padding-top: 45px;
	padding-bottom: 15px;
	padding-left: 55px;
	padding-right: 45px;
}

input[type="text"], input[type="email"], input[type="password"], input[type="tel"], textarea, select {
    background-color: transparent;
    padding: 0;
    border: none;
    border-bottom: solid 1px #000000;
}
input[type="text"]:focus, input[type="email"]:focus, input[type="password"]:focus, input[type="tel"]:focus, textarea:focus {
	border-color: var(--genium--color--principal);
}
.wpcf7-form-control-wrap{
    margin-bottom: 2em;
}
select {
    width: 100%;
    color: #ffffff;
    min-height: 30px;
}
input[type="submit"] {
	display: block;
    margin: 0 auto;
}
input[type="submit"]:hover, .button:hover, .genium-styles p.button-link a:hover, p.button-link a:hover, .wp-block-button a:hover, .comment-reply-link:hover, .woocommerce-message a.button:hover, .woocommerce .cart .button:hover, .woocommerce a.button:hover {
	background: #000000;
	border-color: var(--genium--color--principal);
	color: #ffffff;
}

input[type="submit"], .button, .genium-styles p.button-link a, p.button-link a, .wp-block-button a, .comment-reply-link, .woocommerce-message a.button, .woocommerce .cart .button, .woocommerce a.button{
    font-weight: 500;
    min-width: 250px;
}

#block-up{
    margin-top: -4px;
    margin-bottom: -4px;
}

.header-video{
    padding-top: 450px;
    overflow: hidden;
    position: relative;
    margin-bottom: 80px;
    padding-bottom: 30px;
    overflow: visible;
}
.header-video .wp-block-video{
    position: absolute;
    top: 0;
    z-index: -1;
    width: 100%;
    height: 120%;
}
.header-video .wp-block-video.darken{
    opacity: 1;
}
.header-video .wp-block-video video{
    width: 100%;
    height: 110%;
    object-fit: cover;
    object-position: center center;
}

.header-video .wp-block-video.topleft video{
    object-position: top left;
}
.header-video .wp-block-video.topcenter video{
    object-position: top center;
}
.header-video .wp-block-video.topright video{
    object-position: top right;
}
.header-video .wp-block-video.centerleft video{
    object-position: center left;
}
.header-video .wp-block-video.centercenter video{
    object-position: center center;
}
.header-video .wp-block-video.centerright video{
    object-position: center right;
}
.header-video .wp-block-video.bottomleft video{
    object-position: bottom left;
}
.header-video .wp-block-video.bottomcenter video{
    object-position: bottom center;
}
.header-video .wp-block-video.bottomright video{
    object-position: bottom right;
}

.page-template-template-transparent-header #header .logo img {
	filter: none;
}
.page-template-template-transparent-header #header.slim {
	background-color: #000000;
}
.page-template-template-transparent-header #header.slim ul.menu li a {
	color: inherit;
}
#header > .wp-block-columns {
	align-items: flex-start !important;
}
#main-menu.wp-block-columns {
	padding-top: 10px;
    padding-right: 20px;
}

#header.slim #main-menu.wp-block-columns{
    padding-top: 0;
}
#header.slim > .wp-block-columns {
	align-items: center !important;
}
 
.moving-gallery{
    width: 150%;
    transition: .1s;
}
.moving-gallery > figure{
    padding-left: 15px;
    padding-right: 15px;
}

.hover-color ul.menu li a:hover, .hover-color ul.menu li.current_page_item a{
    color: var(--genium--color--principal) !important;
}

.contact-columns{
    display: flex;
    flex-flow: row wrap;
    gap: 5%;
}
.contact-columns > p{
    flex-basis: 45%;
    margin: 0;
}

#side-menu{
    background-color: #000000;
    padding-top: 40px;
}

#side-menu ul li a{
    font-size: 1.3rem !important;
}

.alternate-images.narrow-text .wp-block-columns .wp-block-column.text-column p,
.alternate-images.narrow-text .wp-block-columns .wp-block-column.text-column h3{
    max-width: 380px;
}

.background-image-section{
    position: absolute;
    z-index: -1;
    top: 0;
    width: 100%;
    height: 100%;
}
.background-image-section img{
    width: 100%;
    height: 100%;
    object-position: center center;
    object-fit: contain;
}

.max-width-title{
    max-width: 690px;
}

.header-video.full-height > .wp-block-group__inner-container .arrow-link {
	padding-bottom: 175px;
}

.footer-wrapper .bottom-bar{
    gap: 30px;
}

.hover-linea ul.menu li a::after, .genium-styles p.hover-linea a::after {
	background: var(--genium--color--blanc);
    bottom: -8px;
    height: 2px;
}
.hover-linea ul.menu li.current_page_item a::after {
	width: calc(100% - 2rem);
}

.header-video .wp-block-video::before{
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: rgb(0,0,0);
    background: linear-gradient(0deg, rgba(0,0,0,0.7189076314119398) 0%, rgba(0,0,0,0) 43%, rgba(0,0,0,0) 83%, rgba(0,0,0,0.5060224773503151) 98%); 
}

.separador{
    width: 100%;
    height: 50px;
}

/* #menu-button {
	display: block;
} */
#menu-button .lineamenu{
    background-color: #ffffff;
}
.arrow-link a::before {
	color: #ffffff;
}
body.menu-open #menu-button .lineamenu:nth-child(1) {
	background-color: #ffffff;;
}
body.menu-open #menu-button .lineamenu:nth-child(3) {
	background-color: #ffffff;
}

.menu-open #header{
    background-color: #000000 !important;
}

#side-menu{
    background-color: #ffffff;
}
#side-menu ul li a{
    color: #000000;
    font-size: 4rem !important;
}
#side-menu ul li a:hover{
    color: #002FA7;
}
#side-menu ul li{
    margin-bottom: 60px;
    margin-top: 60px;
    display: block;
}

#side-menu{
    height: 100vh;
    top: 0;
    padding-top: var(--genium--height--header);
}

#header{
    z-index: 99;
}

.menu-open #side-menu li:nth-child(1){
    animation: appear .5s;
    animation-delay: .1s;
    animation-fill-mode: backwards;
}
.menu-open #side-menu li:nth-child(2){
    animation: appear .5s;
    animation-delay: .2s;
    animation-fill-mode: backwards;
}
.menu-open #side-menu li:nth-child(3){
    animation: appear .5s;
    animation-delay: .3s;
    animation-fill-mode: backwards;
}
.menu-open #side-menu li:nth-child(4){
    animation: appear .5s;
    animation-delay: .4s;
    animation-fill-mode: backwards;
}
.menu-open #side-menu li:nth-child(5){
    animation: appear .5s;
    animation-delay: .5s;
    animation-fill-mode: backwards;
}

.background-gradient{
    position: relative;
    background-color: transparent !important;
}
.background-gradient .wp-block-columns{
    z-index: 1;
    position: relative;
}
.background-gradient .background-image{
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 0;
    top: 0;
    left: 0;
    z-index: 0;
    display: none;
}
.background-gradient .background-image img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#header.slim{
    padding-left: 35px;
    padding-right: 35px;
}

.body-background{
    position: fixed;
    z-index: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    z-index: -1;
}
.body-background video{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.image-textil-mesgran{
    position: absolute;
    top: 5%;
    width: 60%;
    right: 0;
    z-index: -1;
}

.dropbtn {
	color: #ffffff;
    border: none;
    padding-right: 0;
}
.dropbtn::after {
	border-top: .5em solid #ffffff;
    margin-left: 30px;
}
.dropdown-content {
    padding: 10px 20px 0 20px;
}

#side-menu .dropbtn {
	color: var(--genium--color--principal);
    border: none;
    padding-right: 0;
}
#side-menu  .dropbtn::after {
	border-top: .5em solid var(--genium--color--principal);
    margin-left: 30px;
}


.wp-block-columns.big-gap{
    position: relative;
}

.wpml-ls-statics-footer{
    display: none;
}

@keyframes appear {
    0%{opacity: 0;}
    100%{opacity: 1;}
}

/* BREAKPOINTS */
@media (max-height: 750px) { 

}

@media (max-width: 1336px) {

}

@media (max-width: 781px) { 
    body{
        --genium--logo--height: 75px;
        --genium--height--header: 60px;

        --genium--fonts--h1: 2rem;
        --genium--fonts--h2: 1.7rem;
        --genium--fonts--h3: 1.4rem;
        --genium--fonts--h4: 1.15rem;
        --genium--fonts--p: 1.1rem;
        --genium--fonts--p--small: 0.93rem;
        --genium--fonts--p--medium: 1.25rem;
        --genium--fonts--p--large: 1.5rem;
        --genium--fonts--p--xlarge: 2rem;

        --genium--padding--sides: 5%;
        --genium--height--header: 100px;
    }

    #header.slim .logo img, #header.scrolled .logo img {
        height: 75px;
    }
    #header{
        padding-top: 10px;
        padding-bottom: 10px;
    }
    .footer-wrapper .footer-info ul.menu{
        text-align: left;
    }
    .footer-wrapper .footer-info ul.menu li{
        margin-left: 0;
        display: block;
    }
    .header-video {
        padding-top: 150px;
        margin-bottom: 30px;
        padding-bottom: 30px;
    }
    .header-video.full-height > .wp-block-group__inner-container h1 {
        font-size: 2.5rem !important;
    }
    .header-video.full-height > .wp-block-group__inner-container .arrow-link {
        padding-left: var(--genium--padding--sides-big) !important;
    }
    .genium-styles .full-width .max-width {
        padding-left: var(--genium--padding--sides);
        padding-right: var(--genium--padding--sides);
    }
    .genium-styles .full-width.padding-responsive
    {
        padding-left: var(--genium--padding--sides) !important;
        padding-right: var(--genium--padding--sides) !important;
    }
    .genium-styles .full-width .text-column{
        padding-left: var(--genium--padding--sides);
        padding-right: var(--genium--padding--sides);
    }
    .header-video.full-height > .wp-block-group__inner-container .wp-block-group{
        padding-left: var(--genium--padding--sides) !important;
        padding-bottom: 50px;
    }
    .header-video.full-height .max-width{
        padding: 0 !important;
    }
    .header-video.full-height > .wp-block-group__inner-container .arrow-link{
        padding-left: var(--genium--padding--sides) !important;
    }
    #header .language{
        display: none;
    }
    #header {
        padding-left: var(--genium--padding--sides);
        padding-right: var(--genium--padding--sides);
    }
    .header-video.full-height > .wp-block-group__inner-container .wp-block-group {
        padding-right: var(--genium--padding--sides) !important;
    }

    .genium-styles .full-width .max-width-narrow{
        padding-left: var(--genium--padding--sides);
        padding-right: var(--genium--padding--sides);
    }

    .contact-columns > p {
        flex-basis: 100%;
    }
    
    .max-width-text-mobile{
        max-width: 250px;
    }

    #side-menu ul li a{
        font-size: 1.8rem !important;
    }
    #side-menu ul li{
        margin-bottom: 30px;
        margin-top: 30px;
    }

    .footer-wrapper .bottom-bar ul li {
        display: block;
        margin-left: 0 !important;
    }
    
}

@media (max-width: 543px) { 

}