body {
    /* genium */
    --genium--font--principal: 'Aventa', sans-serif;
    --genium--font--secundaria: var(--genium--font--principal);

    --genium--color--blanc: #ffffff;
    --genium--color--negre: #000000;
    --genium--color--text: #161616;
    --genium--color--principal: #2F36CB;
    --genium--color--secundari: #737A85;
    --genium--color--terciari: #FF5043;
    --genium--color--error: #FF0033;
    --genium--color--background--clar: #F4F4F4;

    --genium--maxwidth: 1570px;
    --genium--maxwidth--narrow: 980px;
    --genium--maxwidth--wide: 1874px;
    --genium--maxwidth--blog: 675px;

    --genium--padding--sides: 3.5%;
    --genium--padding--sides-big: 10%;
    --genium--padding--bottom: 150px;

    --genium--columns--margin: 45px;

    --genium--sidebar--width: 260px;

    --genium--logo--height: 50px;
    --genium--logo--height--slim: 35px;
    --genium--logo--width: auto;

    --genium--height--header: 84px;
    --genium--height--footer: 400px;

    --genium--fonts--h1: 2.75rem;
    --genium--fonts--h1--weight: 500;
    --genium--fonts--h1--height: 1.3em;

    --genium--fonts--h2: 2.15rem;
    --genium--fonts--h2--weight: 500;
    --genium--fonts--h2--height: 1.3em;

    --genium--fonts--h3: 1.6rem;
    --genium--fonts--h3--weight: 500;
    --genium--fonts--h3--height: 1.4em;

    --genium--fonts--p: 1.14rem;
    --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.5rem;
    --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;

    /* 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;
}



html,
body {
    overflow-x: hidden;
    font-family: var(--genium--font--principal);
    color: var(--genium--color--text);
    font-size: 16px;
    margin: 0;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

a {
    outline: 0 !important;
}

a::after {
    outline: 0 !important;
}

a,
a:hover,
a:active,
a:visited,
a:focus {
    text-decoration: none !important;
    color: inherit;
}


img {
    height: auto;
    max-width: 100%;
}

.mobile {
    display: none;
}

/* plugins */
.grecaptcha-badge {
    visibility: hidden;
}

#cookie-notice .cn-button {
    background: var(--genium--color--blanc);
    color: var(--genium--color--principal);
}

/*gutenberg styles*/
h1,
.genium-styles h1 {
    font-size: var(--genium--fonts--h1) !important;
    font-weight: var(--genium--fonts--h1--weight);
    line-height: var(--genium--fonts--h1--height);
    margin-top: 1em;
}
h2,
.genium-styles h2 {
    font-size: var(--genium--fonts--h2) !important;
    font-weight: var(--genium--fonts--h2--weight);
    line-height: var(--genium--fonts--h2--height);
}
h3,
.genium-styles h3 {
    font-size: var(--genium--fonts--h3) !important;
    font-weight: var(--genium--fonts--h3--weight);
    line-height: var(--genium--fonts--h3--height);
}
p,
.genium-styles p {
    font-size: var(--genium--fonts--p) !important;
    font-weight: var(--genium--fonts--p--weight);
    line-height: var(--genium--fonts--p--height);
}
ul li,
ol li,
.genium-styles ul li,
.genium-styles ol li {
    font-size: var(--genium--fonts--p) !important;
    font-weight: var(--genium--fonts--p--weight);
    line-height: var(--genium--fonts--p--height);
    margin-bottom: 1rem;
}
.genium-styles p.has-small-font-size {
    font-size: var(--genium--fonts--p--small) !important;
    line-height: var(--genium--fonts--p--small--height);
}
.genium-styles p.has-medium-font-size,
.genium-styles .has-medium-font-size
{
    font-size: var(--genium--fonts--p--medium) !important;
    line-height: var(--genium--fonts--p--medium--height);
}
.genium-styles p.has-large-font-size {
    font-size: var(--genium--fonts--p--large) !important;
    line-height: var(--genium--fonts--p--large--height);
}
.genium-styles p.has-x-large-font-size {
    font-size: var(--genium--fonts--p--xlarge) !important;
    line-height: var(--genium--fonts--p--xlarge--height);
    margin-bottom: .7em;
}
.genium-styles p.has-giant-font-size{
    font-size: 5.5rem !important;
    margin-bottom: .6em;
}

p:not(.has-text-color) a {
    color: var(--genium--color--principal);
}
#footer p:not(.has-text-color) a {
    color: var(--genium--color--blanc);
}

.genium-styles p img {
    vertical-align: middle;
    transform: translateY(-.2em);
    margin-right: 10px;
}

.color-principal{
    color: var(--genium--color--principal);
}

/* images */
.genium-styles .wp-block-image {
    margin: 0;
}

.genium-styles .wp-block-image img {
    height: auto;
}

.genium-styles .wp-block-image.full-width img {
    width: 100%;
    height: auto;
}

.wp-block-cover-image .wp-block-cover__inner-container,
.wp-block-cover .wp-block-cover__inner-container {
    width: 100%;
}

/* WIDTH I PADDINGS */
#content {
    position: relative;
    padding-top: var(--genium--height--header);
    min-height: calc(100vh - var(--genium--height--footer));
    padding-bottom: var(--genium--padding--bottom);
}
.genium-styles > .wp-block-columns{
    gap: 8%;
}

.genium-styles .page-content>.wp-block-group,
.genium-styles .page-content>p,
.genium-styles .page-content>h1,
.genium-styles .page-content>h2,
.genium-styles .page-content>h3,
.genium-styles .page-content>h4,
.genium-styles .page-content>h5,
.genium-styles .page-content>h6,
.genium-styles .page-content>ul,
.genium-styles .page-content>ol,
.genium-styles .page-content>.wp-block-columns,
.genium-styles .page-content>.wp-block-image,
.genium-styles .page-content>.wp-block-gallery,
.genium-styles .page-content>.lwptoc,
.genium-styles .page-content>.wp-block-video,
.genium-styles .page-content>.wp-block-table,
.genium-styles .page-content>.wpcf7
{
    max-width: var(--genium--maxwidth);
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
    padding-left: var(--genium--padding--sides);
    padding-right: var(--genium--padding--sides);
}

.genium-styles>ul,
.genium-styles>ol {
    padding-left: calc(var(--genium--padding--sides) + 10px);
    padding-right: calc(var(--genium--padding--sides) + 10px);
}

.genium-styles .page-content .max-width {
    max-width: var(--genium--maxwidth);
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
}

.genium-styles .page-content .max-width-narrow,
.genium-styles .max-width-narrow 
{
    max-width: var(--genium--maxwidth--narrow);
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
}

.max-width-wide,
.genium-styles .page-content .max-width-wide,
.genium-styles>.content-area {
    max-width: var(--genium--maxwidth--wide);
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
}

.max-width-blog,
.genium-styles .page-content .max-width-blog,
.genium-styles>.content-area {
    max-width: var(--genium--maxwidth--blog);
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
}

.genium-styles .page-content .full-width,
.genium-styles .full-width
{
    max-width: none;
    margin-left: inherit;
    margin-right: inherit;
    padding-left: 0;
    padding-right: 0;
}

.genium-styles .page-content .full-width.padding-sides {
    padding-left: var(--genium--padding--sides);
    padding-right: var(--genium--padding--sides);
}

.padding-sides {
    padding-left: var(--genium--padding--sides);
    padding-right: var(--genium--padding--sides);
    box-sizing: border-box;
}

.padding-sides-big {
    padding-left: var(--genium--padding--sides-big);
    padding-right: var(--genium--padding--sides-big);
    box-sizing: border-box;
}

/*HEADER*/
#header {
    position: fixed;
    z-index: 5;
    width: 100%;
    background: var(--genium--color--blanc);
    transition: .2s;
    padding-top: 40px;
    padding-bottom: 15px;
}
#header.hide {
    position: absolute;
}

#header.show {
    animation-name: appearheader;
    animation-duration: .3s;
}

@keyframes appearheader {
    from {
        top: -100%;
    }

    to {
        top: 0;
    }
}

#header>.wp-block-columns {
    justify-content: space-between;
    align-items: center !important;
    height: 100%;
}

#header .logo {
    flex-grow: 1;
}

#header .logo img {
    height: var(--genium--logo--height);
    width: var(--genium--logo--width);
    transition: .2s;
    display: block;
}

#header ul.menu li {
    display: inline-block;
}

#header ul.menu li a {
    position: relative;
    height: 100%;
    padding: 0rem 1rem;
    display: block;
    line-height: 1.15em;
    font-weight: 500;
    transition: .2s;
    font-size: 1.2em;
}

/* #header.slim {
    padding-top: 20px;
}
#header.slim .padding-sides{
    transition: .2s;
} */

/* #header.slim .logo img {
    height: var(--genium--logo--height--slim);
    width: var(--genium--logo--width);
    transition: .2s;
} */

/* #header.slim ul.menu li a {
    padding: 1rem;
}

#header.slim .hover-linea ul.menu li a::after {
    bottom: .5rem;
} */

#header ul.menu {
    margin-right: 3rem;
}

#header .language {
    margin-right: 1.5rem;
}

#main-menu.wp-block-columns {
    width: auto;
    align-items: center !important;
    justify-content: space-between;
}

.page-template-template-headerinverted #header {
    color: var(--genium--color--blanc);
}

.page-template-template-headerinverted #header .logo img {
    filter: invert(1);
}

.page-template-template-headerinverted #header svg g {
    fill: var(--genium--color--blanc);
}

.page-template-template-headerinverted #header.slim {
    color: inherit;
}

.page-template-template-headerinverted #header.slim .logo img {
    filter: none;
}

.page-template-template-headerinverted #header.slim svg g {
    fill: var(--genium--color--negre);
}

.page-template-template-headerinverted #header #menu-button .lineamenu {
    background: var(--genium--color--blanc);
}

/* SIDEBAR */
.content-with-sidebar-wrapper {
    display: flex;
    flex-flow: row wrap;
    position: relative;
}
.content-with-sidebar-wrapper #sidebar {
    width: var(--genium--sidebar--width);
    margin-left: var(--genium--columns--margin);
}
.content-with-sidebar-wrapper #sidebar .sidebar-content {
    height: auto;
}
.content-with-sidebar-wrapper .content {
    width: calc(100% - var(--genium--sidebar--width) - var(--genium--columns--margin));
}

/*upload field*/
.upload-field {
    max-width: var(--genium--maxwidth--narrow);
    margin: 0 auto;
    display: block;
    margin-bottom: 2rem;
}

.upload-field .wpcf7-form-control-wrap {
    margin-bottom: 0;
    margin-top: 2rem;
}

.upload-field .wpcf7-form-control-wrap h3 {
    position: relative;
}

.codedropz-upload-wrapper {
    max-width: var(--genium--maxwidth--narrow);
    display: block;
    margin: 0 auto;
}

.upload-field .wpcf7-form-control-wrap h3::before {
    content: '';
    background-image: url('');
    width: 30px;
    height: 40px;
    display: block;
    background-size: contain;
    background-repeat: no-repeat;
    position: relative;
    display: inline-block;
    margin-right: 1em;
}

.codedropz-upload-inner span,
.codedropz-upload-inner .codedropz-btn-wrap,
.dnd-upload-counter {
    display: none;
}

/*chevron*/
.chevron::before {
    border-style: solid;
    border-width: 0.2em 0.2em 0 0;
    content: '';
    display: inline-block;
    height: 0.45em;
    left: 0.15em;
    position: relative;
    top: -0.15em;
    transform: rotate(-45deg);
    vertical-align: middle;
    width: 0.45em;
    margin-right: .5em;
}

.chevron.right:before {
    left: 0;
    transform: rotate(45deg);
}

.chevron.bottom:before {
    top: 0;
    transform: rotate(135deg);
}

.chevron.left:before {
    left: 0.25em;
    transform: rotate(-135deg);
}

.chevron.bottom:before {
    top: 0;
    transform: rotate(135deg);
}

.chevron.left:before {
    left: 0.25em;
    transform: rotate(-135deg);
}

.chevron a {
    transition: .2s;
}

.chevron a:hover {
    padding-left: .5em;
}

/*effects*/

/*appear*/
.appear {
    overflow: hidden;
}
.appear .move {
    display: inline-block;
    position: relative;
    transition: 1s ease;
    opacity: 0;
}
.appear.off-screen .move {
    transform: translate3d(-150%, 0, 0);
    transition: 0s ease;
    opacity: 0;
}
.appear.left .move {
    transform: translate3d(-150%, 0, 0);
}
.appear.right .move {
    transform: translate3d(150%, 0, 0);
}
.appear.top .move {
    transform: translate3d(0, -150%, 0);
}
.appear.bottom .move {
    transform: translate3d(0, 150%, 0);
}
.appear.on-screen .move {
    transform: translate3d(0, 0, 0);
    opacity: 1;
    transition: 1s ease;
}
.appear.zoom .move {
    transform: scale(0);
    transition: all 400ms cubic-bezier(.47, 1.64, .41, .8);
}
.appear.on-screen.zoom .move {
    transform: scale(1);
}
.appear .move.delay {
    transition-delay: 600ms !important;
}
.appear .move.delayx2 {
    transition-delay: 1200ms !important;
}

.appear.genium.off-screen{
    opacity: 0;
}
.appear.genium.on-screen{
    animation: .5s appear-genium;
    animation-fill-mode: backwards;
    animation-delay: .5s;
    opacity: 1;
}
.appear.genium.on-screen.delay{
    animation-delay: .7s;
}
@keyframes appear-genium{
    from {
        transform: rotate3d(1,0,0,90deg) scale(.9) translateY(80%);
        opacity: 0;
    }
    to {
        transform: rotate3d(0,0,0,0deg) scale(1) translateY(0);
        opacity: 1;
    }
}

/* arrows hover */
.arrow-hover a::before{
    content: '';
    display: inline-block;
    position: relative;
    width: 0;
    height: 1em;
    top: .17em;
    margin-right: 0px;
    background-image: url('https://geniumdigital.com/wp-content/uploads/2022/06/arrow-blue.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-size: 1em auto;
    background-position: left center;
    opacity: 0;
    transition: width .5s cubic-bezier(.19,1,.22,1), opacity .5s cubic-bezier(.19,1,.22,1), transform .5s cubic-bezier(.19,1,.22,1), margin-right .5s cubic-bezier(.19,1,.22,1);
    transform: translateX(-200%);
}
.arrow-hover a:hover::before{
    width: 1.25em;
    opacity: 1;
    transform: translateX(0);
    margin-right: 10px;
}
.arrow-hover.blau a::before{
    background-image: url('https://geniumdigital.com/wp-content/uploads/2022/06/arrow-blue.png');
}
.arrow-hover.taronja a::before{
    background-image: url('https://geniumdigital.com/wp-content/uploads/2022/06/arrow.png');
}

/* decorations */
.line-left {
    padding-left: 3.8rem;
    position: relative;
    transition: .2s;
}

.line-left::before {
    content: '';
    position: absolute;
    width: 2.86rem;
    left: 0;
    top: .6em;
    height: .25rem;
    background-color: var(--genium--color--secundari);
}

.genium-styles .line-left a {
    color: inherit;
    transition: .2s;
}

.genium-styles .line-left a:hover {
    color: var(--genium--color--secundari);
}

.line-left a:hover {
    padding-left: .4rem;
}

.line-bottom {
    position: relative;
    padding-bottom: 1em;
}

.line-bottom::after {
    content: '';
    width: 100px;
    height: 4px;
    background: var(--genium--color--principal);
    position: absolute;
    bottom: 0;
    left: 0;
}

.line-bottom.center::after {
    left: calc(50% - 50px);
}

.underline {
    border-bottom: solid 1px;
    padding-bottom: .5em;
}

.underlined {
    text-decoration: underline;
}

.box-shadow {
    box-shadow: 0 7px 23px 0 rgba(0, 0, 0, 0.18);
    display: block;
}

.list-line::before {
    content: '';
    position: relative;
    height: 1em;
    width: 6px;
    display: inline-block;
    margin-right: .7em;
    background-color: var(--genium--color--secundari);
    transform: translateY(.13em);
}

p.list-line a {
    transition: .2s;
}

.genium-styles p.list-line:not(.has-text-color) a {
    color: var(--genium--color--principal);
}

p.list-line a:hover {
    padding-left: .5em;
}

/* columns */
.wp-block-columns {
    margin-bottom: 0;
    width: 100%;
    gap: var(--genium--columns--margin) !important;
}

.wp-block-column:not(:first-child),
.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column:not(:first-child) {
    margin-left: 0;
}

.wp-block-columns.vertical {
    flex-direction: column;
}

.wp-block-columns.align-items-center {
    align-items: center;
}

.wp-block-column.no-grow {
    flex-grow: 0;
    flex-basis: auto;
}

.wp-block-columns.cols-2 {
    flex-flow: row wrap;
}

.wp-block-columns.cols-2 .wp-block-column,
.wp-block-columns.cols-2:not(.is-not-stacked-on-mobile) .wp-block-column {
    flex-basis: calc((100% / 2) - (var(--genium--columns--margin) / 2));
    flex-grow: 0;
    margin-bottom: var(--genium--columns--margin);
}

.wp-block-columns.cols-2 .wp-block-column:nth-child(2n-1),
.wp-block-columns.cols-2:not(.is-not-stacked-on-mobile) .wp-block-column:nth-child(2n-1) {
    margin-left: 0;
}

.wp-block-columns.cols-3 {
    flex-flow: row wrap;
}

.wp-block-columns.cols-3 .wp-block-column,
.wp-block-columns.cols-3:not(.is-not-stacked-on-mobile) .wp-block-column {
    flex-basis: calc((100% / 3) - (var(--genium--columns--margin) / 1.5));
    flex-grow: 0;
    margin-bottom: var(--genium--columns--margin);
    ;
}

.wp-block-columns.cols-3 .wp-block-column:nth-child(3n-2),
.wp-block-columns.cols-3:not(.is-not-stacked-on-mobile) .wp-block-column:nth-child(3n-2) {
    margin-left: 0;
}

/* margins */
.genium-styles .no-margin {
    margin: 0;
}

.genium-styles .no-margin-left {
    margin-left: 0;
}

.genium-styles .no-margin-bottom {
    margin-bottom: 0;
}

.genium-styles .no-margin-top {
    margin-top: 0;
}

/* animations */
.bounce {
    animation-name: bounce;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: ease;
}

@keyframes bounce {
    0% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-2em);
    }

    100% {
        transform: translateY(0);
    }
}

/* MENUS */
ul.menu,
.menu ul {
    padding: 0;
    margin: 0;
}

ul.menu li,
.menu ul li {
    list-style: none;
    display: block;
    margin-bottom: 0;
}

ul.menu li a,
.menu ul li a {
    font-weight: 500;
}

ul.menu li.menu-item-has-children {
    position: relative;
}

ul.menu li.menu-item-has-children .sub-menu {
    display: none;
    background: var(--genium--color--blanc);
    position: absolute;
    text-align: left;
    padding: 30px 10px 20px 10px;
    width: 200px;
    left: 0;
}

ul.menu li.menu-item-has-children:hover .sub-menu {
    display: block;
}

ul.menu li.menu-item-has-children .sub-menu li {
    display: block;
}

/* Hover canvi color*/
.hover-color ul.menu li a {
    transition: .2s;
}

.hover-color ul.menu li a:hover,
.hover-color ul.menu li.current_page_item a {
    color: var(--genium--color--principal);
}

/* Hover border*/
.hover-border ul.menu li {
    padding: 1rem;
}

#header .hover-border ul.menu li a {
    transition: color 0.25s 0.0833333333s;
    position: relative;
    padding: 1rem;
}

.hover-border ul.menu li a::before,
.hover-border ul.menu li a::after {
    border: 0 solid transparent;
    box-sizing: border-box;
    content: '';
    pointer-events: none;
    position: absolute;
    width: 0;
    height: 0;
    bottom: 0;
    right: 0;
}

.hover-border ul.menu li a::before {
    border-bottom-width: 4px;
    border-left-width: 4px;
}

.hover-border ul.menu li a::after {
    border-top-width: 4px;
    border-right-width: 4px;
}

.hover-border ul.menu li a:hover::before,
.hover-border ul.menu li a:hover::after {
    border-color: var(--genium--color--secundari);
    transition: border-color 0s, width 0.25s, height 0.25s;
    width: 100%;
    height: 100%;
}

.hover-border ul.menu li a:hover::before {
    transition-delay: 0s, 0s, 0.25s;
}

.hover-border ul.menu li a:hover::after {
    transition-delay: 0s, 0.25s, 0s;
}

/*.link-arrow*/
.link-arrow {
    font-weight: bold;
    font-size: 1.1rem;
}

.link-arrow img {
    height: 16px;
    width: auto !important;
    margin-left: 10px;
    display: inline-block;
    vertical-align: middle;
    transition: .2s;
}

.link-arrow:hover img {
    transform: translateX(10px);
}

/* Hover linea */
.hover-linea ul.menu li a::after {
    content: '';
    height: 3px;
    width: 0;
    background: var(--genium--color--principal);
    position: absolute;
    bottom: 1.5rem;
    left: 1rem;
    transition: .2s;
}

.hover-linea ul.menu li a:hover::after {
    width: calc(100% - 2rem);
}

/* Hover linea */
.genium-styles p.hover-linea a {
    position: relative;
    display: inline-block;
}

.hover-linea ul.menu li a::after,
.genium-styles p.hover-linea a::after {
    content: '';
    height: 3px;
    width: 0;
    background: var(--genium--color--principal);
    position: absolute;
    bottom: 1.5rem;
    left: 1rem;
    transition: .2s;
}

.hover-linea ul.menu li a:hover::after {
    width: calc(100% - 2rem);
}

.genium-styles p.hover-linea a::after {
    left: 0;
    bottom: 0;
}

.genium-styles p.hover-linea a:hover::after {
    width: 100%;
}

/*SIDE MENU*/
#side-menu{
    position: fixed;
    left: 0;
    top: var(--genium--height--header);
    transform: translateX(100%);
    background: var(--genium--color--blanc);
    color: var(--genium--color--text);
    height: calc(100vh - var(--genium--height--header));
    padding: var(--genium--padding--sides);
    width: 100%;
    transition: .2s;
    z-index: 9;
    box-sizing: border-box;
    overflow: auto;
}
body.menu-open #side-menu {
    transform: translateX(0);
}

#side-menu ul li {
    margin-bottom: 1.5em;
}

#side-menu form.search-form {
    margin-bottom: 1em;
}

#side-menu form.search-form input[type="search"] {
    font-size: 1.3em;
    padding: .5em .5em .5em 2em;
    background: transparent;
    color: var(--genium--color--text);
    border: solid 1px var(--genium--color--text);
}

#side-menu .search-form svg {
    height: 1.4em;
    width: 1.4em;
    left: .8em;
}

#side-menu .search-form svg g {
    fill: var(--genium--color--text);
}

#side-menu .language {
    margin-bottom: 1em;
}

#side-menu .menu-item-has-children>a::after {
    border-style: solid;
    border-width: 0.2em 0.2em 0 0;
    content: '';
    display: inline-block;
    height: 0.45em;
    position: relative;
    top: 0;
    vertical-align: middle;
    width: 0.45em;
    margin-left: .5em;
    top: -.4em;
    transform: rotate(135deg);
}

#side-menu .sub-menu {
    position: relative;
    padding: 1em 2em 0 2em;
    width: 100%;
    box-sizing: border-box;
}

#side-menu li.open .sub-menu {
    display: block;
}

#side-menu li.open .sub-menu li a {
    font-size: 1.1rem;
}

#menu-button {
    display: none;
    cursor: pointer;
    position: relative;
    height: 100%;
    flex-flow: column wrap;
    justify-content: center;
    align-items: center;
    right: 0;
    top: 0;
    padding-left: 1em;
    padding-right: 1em;
}

#menu-button .lineamenu {
    display: block;
    width: 30px;
    height: 4px;
    background: var(--genium--color--principal);
    transition: .2s;
}

#menu-button .lineamenu:not(:first-of-type) {
    margin-top: .4em;
}

/* menu open background*/
body.menu-open #menu-button .lineamenu {
    background: var(--genium--color--blanc);
}

body.menu-open #menu-button .lineamenu:nth-child(1) {
    transform: rotate(45deg) translate(7px, 8px);
    background-color: var(--genium--color--secundari);
}

body.menu-open #menu-button .lineamenu:nth-child(2) {
    opacity: 0;
}

body.menu-open #menu-button .lineamenu:nth-child(3) {
    transform: rotate(-45deg) translate(7px, -8px);
    background-color: var(--genium--color--secundari);
}

/* menu open move*/
/* #side-menu{
    width: 300px;
    height: 100vh;
    right: 0;
    left: auto;
    top: 0;
}
body.menu-open #menu-button{
    background: none;
}
body.menu-open #menu-button .lineamenu{
    background: var(--genium--color--principal);
}
#header,
#content,
#footer
{
    transition: .2s;
}
body.menu-open #header,
body.menu-open #content,
body.menu-open #footer
{
    transform: translateX(-300px);
} 
body.menu-open #menu-button .lineamenu:nth-child(even){
    transform: translateX(3px);
}
body.menu-open #menu-button .lineamenu:nth-child(odd){
    transform: translateX(-3px);
}*/

/* POP UPS */
.popup-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    z-index: 999;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    background: rgba(0, 0, 0, .6);
}

.popup-wrapper .popup {
    position: relative;
    max-width: 600px;
    max-height: 80vh;
    padding: 2rem 3rem;
    box-sizing: border-box;
}

.popup-wrapper .popup .popup-content {
    position: relative;
    z-index: 2;
    line-height: 1.4em;
    overflow: auto;
}

.popup-wrapper .popup .popup-background {
    opacity: 1;
    background: var(--genium--color--blanc);
    position: absolute;
    z-index: 0;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-size: cover;
    background-position: center center;
}

.popup-wrapper .popup .popup-background.with-image {
    opacity: 1;
}

.popup-wrapper .popup .popup-close {
    position: absolute;
    top: 0;
    right: 0;
    padding: 1rem;
    cursor: pointer;
    font-size: 1.2em;
    z-index: 1;
}

.popup-wrapper .popup figure {
    margin: 0;
}

/* Style The Dropdown Button */
.dropbtn {
    padding: .9em 1.4em .95em 0em;
    font-size: 1em;
    line-height: 1em;
    border: none;
    cursor: pointer;
}

.dropbtn::after {
    content: '';
    display: inline-block;
    position: relative;
    height: 0em;
    width: 0em;
    left: 0.15em;
    top: 0.25em;
    vertical-align: top;
    margin-left: 10px;
    border-top: 0;
    border-left: .4em solid transparent;
    border-right: .4em solid transparent;
    border-top: .5em solid var(--genium--color--principal);
}

.dropdown {
    position: relative;
    display: inline-block;
}

.dropdown-content {
    display: none;
    position: absolute;
    background-color: var(--genium--color--blanc);
    width: 100%;
    z-index: 1;
    text-align: left;
}

.dropdown-content a {
    color: var(--genium--color--principal);
    padding: 12px 16px;
    text-decoration: none;
    display: block;
}

.dropdown-content a:hover {
    background-color: var(--genium--color--principal)
}

.dropdown:hover .dropdown-content,
.dropdown.open .dropdown-content {
    display: block;
}

.dropdown.desplegable {
    border: solid 1px var(--genium--color--principal);
    width: 340px;
}

.dropdown.desplegable .dropbtn {
    padding: .9em 1.4em .95em 1.4em;
    font-size: 1.1em;
}

.desplegable .dropbtn::after {
    position: absolute;
    right: 1em;
    left: auto;
    top: 1.2em;
}

.desplegable .dropdown-content a:hover {
    background-color: var(--genium--color--principal);
    color: var(--genium--color--blanc);
}

/*SOCIAL MEDIA*/
.social-media a {
    display: inline-block;
}

.social-media a:not(:first-of-type) {
    margin-left: 2em;
}

.social-media a img {
    height: 30px;
    width: auto;
}

/* NEWSLETTER */
.newsletter {
    background-color: var(--genium--color--principal);
    color: var(--genium--color--blanc);
    padding-top: 2em;
    padding-bottom: 2em;
    text-align: center;
}

.newsletter input {
    max-width: 450px;
    border-radius: 30px;
}

.newsletter p.has-large-font-size {
    margin-top: .5em;
    margin-bottom: .5em;
}

.newsletter div.wpcf7 .ajax-loader {
    display: none;
}

/*FOOTER*/
.footer-wrapper {
    width: 100%;
    clear: left;
}

.footer-wrapper .footer-info {
    background: var(--genium--color--blanc);
    padding-top: 70px;
    padding-bottom: 0;
    position: relative;
}

.footer-wrapper .bottom-bar {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: center;
    background: var(--genium--color--principal);
    color: var(--genium--color--blanc);
    padding-top: 2em;
    padding-bottom: 2em;
}

#footer .top-bar {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    padding-top: 2rem;
}

#footer .top-bar ul li {
    display: inline-block;
}

#footer .top-bar ul li:not(:first-of-type)::before {
    content: '|';
    margin-left: 1em;
    margin-right: 1em;
}

.footer-wrapper .bottom-bar ul li {
    display: inline-block;
}

.footer-wrapper .bottom-bar ul li:not(:first-of-type) {
    margin-left: 2em;
}

#footer.footer-wrapper .bottom-bar ul.menu li a {
    font-size: .9rem;
}

.footer-wrapper .footer-info ul.menu li {
    margin-bottom: 1rem;
}

#return-to-top {
    cursor: pointer;
    margin-right: 5vw;
    padding: 1vw;
    margin-top: .75vw;
    position: absolute;
    top: 0;
    right: 0;
}

#return-to-top svg g {
    fill: var(--genium--color--principal);
}

.footer-wrapper .footer-info.alt .wp-block-column {
    flex-grow: 0;
    flex-basis: auto;
    order: 2;
}

.footer-wrapper .footer-info.alt .wp-block-column {
    margin-left: 5%;
    margin-right: 5%;
}

p.with-icon {
    padding-left: 1.5em;
    position: relative;
}

p.with-icon svg,
p.with-icon img {
    position: absolute;
    left: 0;
    top: .2em;
    width: 1em !important;
    height: auto;
    margin-right: 15px;
}

.contact-whatsapp {
    font-size: 1em;
    text-align: center;
    position: fixed;
    bottom: 2rem;
    right: 2rem;
    z-index: 3;
}

.contact-whatsapp a {
    display: flex;
    align-items: center;
    background: var(--genium--color--secundari);
    border-radius: 30px;
    padding: 1rem 1rem;
    transition: .2s;
    line-height: 1em;
    font-size: 1.2em;
    box-shadow: 3px 4px 10px rgba(0, 0, 0, .1);
}

.contact-whatsapp img {
    height: 30px;
    width: auto;
    margin-left: .6rem;
    transform: translateY(-1px);
    vertical-align: middle;
}

/* cart button */
.cart-count {
    position: absolute;
    top: -5px;
    right: -5px;
    background-color: var(--genium--color--secundari);
    border-radius: 50px;
    font-size: .8em;
    width: 20px;
    height: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
}

#cart-button {
    position: relative;
    cursor: pointer;
    height: 25px;
    width: auto;
    margin-left: 2em;
}

#search-button g {
    fill: var(--genium--color--principal);
}

#search-button svg {
    height: 100%;
    width: auto;
}

/*Search*/
#search-button {
    cursor: pointer;
    height: 25px;
    width: auto;
}

#search-button g {
    fill: var(--genium--color--principal);
}

#search-button svg {
    height: 100%;
    width: auto;
}

#search-button:hover svg g {
    transition: .2s;
}

#search-button:hover svg g {
    fill: var(--genium--color--principal);
}

.search-result {
    margin-bottom: 50px;
}

#close-search svg g {
    stroke: var(--genium--color--principal);
    stroke-width: 7;
}

#search {
    position: fixed;
    z-index: 6;
    top: -100px;
    left: 0;
    width: 100%;
    height: 100px;
    background: var(--genium--color--blanc);

    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: center;

    transition: .2s;
}

#search.open {
    top: 0;
}

#search #close-search {
    cursor: pointer;
}

#search form {
    width: calc(100% - 3em);
}

form.search-form input[type="search"] {
    width: 100%;
    font-size: 2em;
    border: none;
    border-bottom: solid 2px var(--genium--color--principal);
    padding-left: 1.5em;
    padding-bottom: .3em;
}

#search #close-search {
    width: 2em;
    height: 2em;
    margin-left: 1em;
}

#search #close-search svg {
    height: auto;
    width: 100%;
}

.search-form label {
    position: relative;
}

.search-form svg g {
    fill: var(--genium--color--principal);
}

.search-form svg {
    position: absolute;
    left: 0;
    top: auto;
    bottom: 0;
    width: 2em;
    height: 2em;

}

/* SEARCH PAGE */
#search-page {
    background: var(--genium--color--principal);
    width: 100%;
    margin-bottom: 3em;
}

#search-page input[type="submit"]:hover {
    background: var(--genium--color--blanc);
    color: var(--genium--color--principal);
}

#search-page input {
    padding: .5em .5em .5em 1.3em;
    height: auto;
    font-size: 3em;
    width: 100%;
    border: none;
    background: transparent;
}

#search-page svg {
    height: 2.5em;
    width: 2.5em;
}

/* INPUTS BUTTONS*/
input:focus, textarea:focus {
    outline: none;
}
/* clears the ‘X’ from Internet Explorer */
input[type=search]::-ms-clear { display: none; width : 0; height: 0; }
input[type=search]::-ms-reveal { display: none; width : 0; height: 0; }
/* clears the ‘X’ from Chrome */
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration { display: none; }

input[type="text"],
input[type="email"],
input[type="password"],
input[type="tel"],
textarea {
    width: 100%;
    box-sizing: border-box;
    padding: .5em 1em;
    font-size: 1em;
    border: none;
    font-family: var(--genium--font--principal);
    border: solid 1px var(--genium--color--principal);
    margin-top: .5em;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="tel"]:focus,
textarea:focus {
    border-color: var(--genium--color--secundari);
}

input[type="checkbox"] {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0;
    height: 1em;
    line-height: 1em;
    transform: scale(1.9) translateY(-1px);
    margin-right: 10px;
    vertical-align: middle;
}

input[type="submit"],
.button,
.genium-styles p.button-link a,
.wp-block-button a,
.comment-reply-link,
.woocommerce-message a.button,
.woocommerce .cart .button,
.woocommerce a.button {
    font-family: var(--genium--font--principal);
    padding: 1.2rem 2rem;
    box-sizing: border-box;
    border: solid 1px var(--genium--color--principal);
    background: var(--genium--color--principal);
    color: var(--genium--color--blanc);
    cursor: pointer;
    line-height: 1em;
    transition: .3s;
    font-size: var(--genium--fonts--p);
    border-radius: 0;
    display: inline-block;
    min-width: 220px;
    text-align: center;
}

input[type="submit"]:hover,
.button:hover,
.genium-styles 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: var(--genium--color--blanc);
    border-color: var(--genium--color--principal);
    color: var(--genium--color--principal);
}

p.button-link {
    font-size: 1em;
}

.button-link a img {
    vertical-align: middle;
    margin-right: .5em;
    transform: translateY(-1px);
}

/* Comments */
.commentlist {
    padding: 0;
    list-style: none;
}

.commentlist .children {
    list-style: none;
    padding: 0;
    background: var(--genium--color--secundari);
}

.commentlist .comment {
    background-color: var(--genium--color--background--clar);
    padding: 1.5em;
}

.commentlist .comment {
    margin-bottom: 3rem;
}

.commentlist .children .comment {
    margin-top: 3rem;
    margin-bottom: 0;
    background: var(--genium--color--background--clar);
}

.comment-reply-link {
    display: inline-block;
    padding: .5em 1em;
    font-size: 1rem;
}

.comment-author,
.comment-meta {
    opacity: .5;
}

/* PAGINATION */
.pagination .screen-reader-text {
    display: none;
}

.pagination {
    display: block;
    margin-top: 50px;
    text-align: center;
    width: 100%;
}

.pagination .page-numbers {
    display: inline-block;
    margin-bottom: 1em;
    padding: .5em 1em;
    border: solid 1px var(--genium--color--principal);
    transition: .2s;
}

.pagination .page-numbers.current,
.pagination .page-numbers:hover {
    background: var(--genium--color--principal);
    color: var(--genium--color--blanc);
}

/* HOME */
.home-intro {
    height: 100vh;
    width: 100%;
    position: relative;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
}

/* CONTACT */
.contact .contact-info p a {
    font-size: 1.2em;
    font-weight: 500;
}

/* post wrapper */
.post-wrapper {
    height: 100%;
    display: flex;
    flex-flow: column wrap;
}

.post-wrapper .wp-block-image {
    padding: 0;
    position: relative;
    padding-bottom: 56.6%;
    width: 100%;
    overflow: hidden;
    margin-bottom: 1em;
}

.post-wrapper .wp-block-image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.post-wrapper .wp-block-image .arrow {
    height: 50px;
    width: 50px;
    padding: 10px;
    box-sizing: border-box;
    background: var(--genium--color--blanc);
    position: absolute;
    z-index: 2;
    top: 0;
    right: 0;
    left: auto;
}

.post-wrapper .wp-block-image .arrow img {
    height: 30px;
    width: 30px;
    object-fit: contain;
    object-position: center;
    transition: .2s;
    margin-top: 10px;
    margin-left: 10px;
}

.post-wrapper:hover .wp-block-image .arrow img {
    transform: translateX(10px);
}

.post-wrapper img.attachment-post-thumbnail {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: .2s;
    display: block;
}

.post-wrapper:hover img.attachment-post-thumbnail {
    transform: scale(1.05);
}

.post-wrapper.box-shadow .block-text {
    flex-grow: 1;
    display: flex;
    flex-flow: column wrap;
    justify-content: flex-start;
    align-items: flex-start;
    padding: 2rem;
}

.post-wrapper .post-title {
    padding: 0;
    flex-grow: 1;
    margin: 0;
    margin-bottom: 1em;
    transition: .2s;
}

.post-wrapper:hover p.title {
    color: var(--genium--color--principal);
}

/* scroll template */
.page-template-template-scroll #header {
    position: relative;
    transition: 0ms !important;
}

/* image header template*/
.image-header {
    height: 25vw;
    background-position: center center;
    background-size: cover;
}

.image-header-template h1 {
    margin-top: -.6em;
}


/* VIDEOS embed iframe */
.wp-block-video video {
    width: 100%;
    height: auto;
}

.wp-block-embed {
    margin: 0;
    width: 100%;
}

.wp-block-embed .wp-block-embed__wrapper {
    margin: 0 auto;
    display: block;
    width: 100%;
    padding-bottom: 56.25%;
    position: relative;
}

.wp-block-embed iframe {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
}

/* Extra profile */
.form-field-wrapper {
    margin-bottom: 2em;
}

.form-field-wrapper>label {
    font-weight: bold;
    margin-bottom: .75em;
    display: block;
}

.option-group-wrapper {
    display: flex;
    flex-flow: row wrap;
}

.option-group-wrapper .option-group {
    flex-basis: 50%;
    margin-bottom: .5em;
}

/* REUSABLE BLOCKS */

/* fullsize-blocks */
.fullsize-blocks .wp-block-columns {
    margin-bottom: 0;
}

.fullsize-blocks .wp-block-columns .wp-block-column {
    margin-left: 0;
    flex-basis: 50%;
}

.fullsize-blocks .wp-block-columns .wp-block-column .wp-block-image img {
    display: block;
    width: 100%;
}

.fullsize-blocks .wp-block-columns .wp-block-column.text-column {
    padding-left: 7vw;
    padding-right: 7vw;
    box-sizing: border-box;
}

/* page-header */
.genium-styles .page-header h1 {
    margin-top: 0;
}

.page-header .wp-block-columns .wp-block-column {
    margin-left: 0;
}

.page-header .wp-block-columns .wp-block-column:first-of-type {
    position: relative;
    z-index: 2;
}

.page-header .wp-block-columns .wp-block-column .wp-block-image img {
    width: 130%;
    float: right;
    max-width: none;
}

/* Steps */
.steps .step {
    border-radius: 40px;
    background-color: var(--genium--font--principal);
    ;
    padding-top: 1rem;
    height: 100%;
}

.steps .step .text {
    padding: .1rem 2rem .5rem 2rem;
    border-radius: 0 0 40px 40px;
    background-color: var(--genium--color--blanc);
    flex-grow: 1;
}

.steps .step .numero {
    color: var(--genium--color--blanc);
    margin: 0;
    margin-bottom: .5em;
}

.steps .step .wp-block-group__inner-container {
    display: flex;
    flex-flow: column wrap;
    height: 100%;
}

/* pla preu */
.pla-preu {
    border-radius: 40px;
    padding: 2rem;
    height: 100%;
    box-sizing: border-box;
}

.pla-preu .button-link {
    margin-top: 2rem;
}

.pla-preu .line-bottom::after {
    left: 50%;
    transform: translateX(-50%);
    height: 2px;
}

.pla-preu.color-white .line-bottom::after {
    background-color: var(--genium--color--blanc);
}

.pla-preu.color-white p {
    color: var(--genium--color--blanc);
}

.pla-preu .wp-block-group__inner-container {
    display: flex;
    flex-flow: column wrap;
    height: 100%;
}

.pla-preu p.add_to_cart_inline {
    border: none !important;
    padding: 0 !important;
    text-align: center;
}

.pla-preu p.add_to_cart_inline .woocommerce-Price-amount {
    display: none;
}

/* columnes-img-text */
.columnes-img-text .wp-block-column {
    margin-left: 0;
    position: relative;
    background: var(--genium--color--negre);
    cursor: pointer;
}

.columnes-img-text .wp-block-column .text-group {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    background: rgba(0, 0, 0, .75);
    padding: 3rem;
    box-sizing: border-box;
    pointer-events: none;
    display: flex;
    flex-flow: column wrap;
}

.columnes-img-text .wp-block-column .text-group .wp-block-group__inner-container {
    display: flex;
    flex-flow: column wrap;
    height: 100%;
}

.columnes-img-text .text-group p {
    color: var(--genium--color--blanc);
    font-size: 1rem;
    font-weight: 300;
}

.columnes-img-text .text-group h2 {
    color: var(--genium--color--blanc);
    font-size: 2rem;
    margin: 0;
    flex-grow: 1;
}

.columnes-img-text .wp-block-column:hover .text-group {
    background: var(--genium--color--secundari);
}

.columnes-img-text .wp-block-column img {
    opacity: .7;
    transition: .2s;
    width: 100%;
    height: auto;
}

.columnes-img-text .wp-block-column:hover img {
    opacity: 1;
}

/* SLIDER draggable */
.slider.draggable {
    overflow: hidden;
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    cursor: grab;
}

.slider.draggable.is-grabbing {
    cursor: grabbing;
}

.slider.draggable>.wp-block-group__inner-container {
    display: flex;
    position: relative;
    top: 0;
    left: 0;
    width: 10000px;
}

.slider.draggable .wp-block-group__inner-container.shifting {
    transition: left .2s ease-out;
}

.slider.draggable .slide {
    position: relative;
    width: 100vw;
    height: 100%;
    pointer-events: none;
    transition: all 1s;
    padding-left: 2.5vw;
    padding-right: 2.5vw;
    box-sizing: border-box;
}

.slider.draggable .items-per-screen {
    display: none;
}


/* SLIDER arrows */
.slider-wrapper.arrows .wp-block-group__inner-container {
    display: flex;
    flex-flow: row wrap;
    position: relative;
}

.slider-wrapper.arrows .navigation {
    width: 5%;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    position: absolute;
    z-index: 2;
    top: 50%;
    transform: translateY(-50%);
    background-color: var(--genium--color--blanc);
    border-radius: 50%;
    width: 70px;
    height: 70px;
    padding: 15px;
    box-sizing: border-box;
}

.slider-wrapper.arrows .navigation.next {
    right: 1em;
}

.slider-wrapper.arrows .navigation.prev {
    left: 1em;
    display: none;
}

.slider-wrapper.arrows .navigation img {
    max-width: 100%;
    max-height: 100%;
    width: auto !important;
    height: auto !important;
}

.slider-wrapper.arrows .slider-container {
    overflow: hidden;
    width: 100%;
}

.slider.arrows {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    transition: .3s;
}

.slider.arrows>.wp-block-group__inner-container {
    display: flex;
    position: relative;
    top: 0;
    left: 0;
    width: 10000px;
}

.slider.arrows .wp-block-group__inner-container.shifting {
    transition: left .2s ease-out;
}

.slider.arrows .slide {
    position: relative;
    width: 100vw;
    height: 100%;
    transition: all 1s;
    padding-left: 1vw;
    padding-right: 1vw;
    box-sizing: border-box;
    padding: 0;
}

.slider.arrows .items-per-screen {
    display: none;
}


/* SLIDER buttons */
.slider-wrapper.buttons .wp-block-group__inner-container {
    display: flex;
    flex-flow: row wrap;
    position: relative;
}

.slider-wrapper.buttons .slider-container {
    overflow: hidden;
    width: 100%;
}

.slider-wrapper.buttons .slider {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    /* transition: .3s; */
}

.slider-wrapper.buttons .slider>.wp-block-group__inner-container {
    display: flex;
    position: relative;
    top: 0;
    left: 0;
    width: 10000px;
    justify-content: flex-start !important;
}

.slider-wrapper.buttons .slider .wp-block-group__inner-container.shifting {
    transition: left .2s ease-out;
}

.slider-wrapper.buttons .slider .slide {
    position: relative;
    width: 100vw;
    height: 100%;
    transition: all 1s;
    padding-left: 1vw;
    padding-right: 1vw;
    box-sizing: border-box;
    padding: 0;
}

.slider-wrapper.buttons .slider .slide {
    transform: translateX(-100%);
    transition: .5s;
    opacity: 0;
}

.slider-wrapper.buttons .slider .slide.active {
    transform: translateX(0);
    opacity: 1;
    animation: appear 1s;
}

@keyframes appear {
    0% {
        transform: translateX(100%);
        opacity: 0;
    }
    50% {
        transform: translateX(100%);
        opacity: 0;
    }
    100% {
        transform: translateX(0%);
        opacity: 1;
    }
}

.slider-wrapper.buttons .slider .items-per-screen {
    display: none;
}

.slider-wrapper.buttons .wp-block-group__inner-container .wp-block-group__inner-container .wp-block-group__inner-container .wp-block-group__inner-container {
    flex-flow: column wrap;
    justify-content: center;
    align-items: center;
}

.buttons-slider {
    text-align: right;
    position: absolute;
    bottom: 150px;
    right: 70px;
    z-index: 2;
    width: 100%;
}

.buttons-slider .wp-block-group__inner-container {
    position: relative !important;
    display: block !important;
    text-align: center;
}

.buttons-slider .button-slider {
    height: 14px;
    width: 14px;
    display: inline-block;
    margin-left: 7px;
    margin-right: 7px;
    background: var(--genium--color--blanc);
    cursor: pointer;
}

.buttons-slider .button-slider.active {
    background-color: var(--genium--font--secundaria);
}


/* STICKY CONTAINER */
.sticky-container {
    position: relative;
}
.sticky-container::after {
    content: '';
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    width: 200px;
}
.sticky-container>.wp-block-group__inner-container {
    overflow-x: hidden;
    display: flex;
    flex-flow: row;
    position: sticky;
    top: 0;
    left: 0;
}
.sticky-container .slide-scroll {
    height: 100vh;
    overflow-y: hidden;
    box-sizing: border-box;
    position: relative;
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    padding: 30px;
    min-width: 480px;
    width: 480px;
}
.sticky-container .sliderPerWidth {
    display: none;
}


/* block with background */
.block-with-background {
    position: relative;
}

.block-with-background .column-text {
    margin-left: 0;
    background: rgb(255, 255, 255);
    background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 29%);
    position: absolute;
    right: 0;
    width: 65%;
    padding-left: 15%;
    height: 100%;
    box-sizing: border-box;
    display: flex;
    flex-flow: column wrap;
    justify-content: center;
}

.block-with-background .column-image {
    width: 65%;
    flex-basis: 65%;
    flex-grow: 0;
}

.block-with-background p a {
    color: var(--genium--color--principal);
}

.block-with-background p.has-large-font-size a {
    transition: .2s;
}

.block-with-background p.has-large-font-size:hover a {
    color: var(--genium--color--secundari);
}

/* counter-animation */
.counter-animation {
    text-align: center;
}

.counter-animation p {
    margin-bottom: 0;
    margin-top: .5em;
    display: inline-block;
}

/* paragraph-square */
.paragraph-square {
    position: relative;
    padding-left: 7rem;
    box-sizing: border-box;
    min-height: 20rem;
    display: flex;
    align-items: center;
}

.paragraph-square::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    background: var(--genium--color--secundari);
    width: 20rem;
    height: 20rem;
    z-index: -1;
}

/*text-loop*/
.text-loop {
    position: relative;
}

.text-loop p a::after {
    content: attr(data-content);
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    left: 0;
    color: var(--genium--color--principal);
}

.text-loop p a:hover::after {
    opacity: 1;
}

.text-loop p a:hover {
    animation-name: text-loop;
    animation-duration: 14s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}

.text-loop p a {
    display: inline-block;
    width: 100%;
    position: relative;
    z-index: 1;
}

.text-loop .wp-block-image {
    position: absolute;
    z-index: 0;
    right: 10vw;
    top: -50%;
    transform: rotate(2deg);
    opacity: 0;
    transition: .2s;
    pointer-events: none;
}

.text-loop:hover .wp-block-image {
    transform: rotate(5deg);
    opacity: 1;
}

@keyframes text-loop {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-100%);
    }
}

/* call-to-action-big */
.call-to-action-big a {
    transition: .2s;
    display: inline-block;
}

.call-to-action-big a:hover {
    transform: scale(1.1);
}

/* home-img-background */
.home-img-background {
    position: relative;
    height: 100vh;
    width: 100%;
    display: flex;
    overflow: hidden;
}
.home-img-background .wp-block-group__inner-container,
.home-img-background .wp-block-columns,
.genium-styles .home-img-background .wp-block-image {
    width: 100%;
    height: 100%;
}
.home-img-background .wp-block-group__inner-container {
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.home-img-background .background-image {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 0;
}
.home-img-background .background-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.home-img-background .content-block {
    width: 100%;
    position: relative;
    z-index: 1;
}
.home-img-background .scroll-down {
    position: absolute;
    bottom: 0;
    z-index: 1;
    cursor: pointer;
    width: 100%;
    height: auto;
}
.home-img-background .scroll-down figure {
    position: relative;
    height: 60px;
    width: 60px;
}
.home-img-background .scroll-down img {
    object-fit: contain;
    object-position: center;
}
.home-img-background .wp-block-video.background-image {
    margin-top: 0;
    background: var(--genium--color--negre);
}
.home-img-background .wp-block-video.background-image video {
    min-height: 100%;
    min-width: 100%;
    width: auto;
    height: auto;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
    opacity: .8;
}

/* img-background */
.img-background {
    position: relative;
    height: auto;
    width: 100%;
    display: flex;
    overflow: hidden;
}
.img-background .wp-block-group__inner-container,
.img-background .wp-block-columns,
.genium-styles .img-background .wp-block-image {
    width: 100%;
    height: 100%;
}
.img-background .wp-block-group__inner-container {
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.img-background .background-image {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 0;
}
.img-background .background-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.img-background .content-block {
    width: 100%;
    position: relative;
    z-index: 1;
}
.img-background .wp-block-video.background-image {
    margin-top: 0;
    background: var(--genium--color--negre);
}
.img-background .wp-block-video.background-image video {
    min-height: 100%;
    min-width: 100%;
    width: auto;
    height: auto;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
    opacity: .8;
}

/* link-img-block */
.link-img-block {
    position: relative;
    overflow: hidden;
}

.link-img-block img {
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .2s;
}

.link-img-block:hover img {
    transform: scale(1.05);
}

.link-img-block p {
    color: var(--genium--color--blanc);
}

.link-img-block p strong {
    font-weight: 500;
}

.link-img-block .link-text {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: flex-end;
    height: 22em;
    background-color: rgba(0, 0, 0, .42);
    padding-bottom: 3em;
    padding-left: 10%;
    padding-right: 10%;
    pointer-events: none;
    transition: .2s;
}

.link-img-block:hover .link-text {
    background-color: rgba(0, 0, 0, .6);
}

.link-img-block .link-text .wp-block-group__inner-container {
    transition: .2s;
}

.link-img-block:hover .link-text .wp-block-group__inner-container {
    transform: translateY(-1em);
}

/* slide-genium */
.slideshow {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
}

.slide-genium {
    width: 100%;
    height: 100%;
    top: 0;
    position: absolute;
}

.slide-genium>.wp-block-group__inner-container {
    width: 100%;
    height: 100%;
    position: relative;
    display: grid;
    grid-template-columns: 100%;
    grid-template-rows: 100%;
    align-items: center;
    justify-items: center;
}

.slide--current {
    position: relative;
}

.slide__img-wrap {
    grid-area: 1 / 1 / 1 / 1;
    width: 100%;
    height: calc(100vh);
    max-height: 100%;
    overflow: hidden;
    position: relative;
    opacity: 0;
    outline: 3px solid transparent;
}

.slide__img-wrap img {
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background-size: cover;
    background-position: 50% 50%;
    position: absolute;
    backface-visibility: hidden;
    pointer-events: none;
}

.slide__img-wrap img::after {
    content: '';
    background: var(--genium--color--principal);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.slide__number {
    font-size: 2rem;
    position: absolute;
    bottom: 47px;
    opacity: 0;
}

.slide__title {
    margin: 0;
    grid-area: 1 / 1 / 1 / 1;
    color: var(--color-title);
    position: relative;
    margin-bottom: 1.25rem;
    opacity: 0;
}

.slide--current .slide__img-wrap,
.slide--current .slide__number,
.slide--current .slide__title {
    opacity: 1;
}

.slidenav {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

.slidenav>.wp-block-group__inner-container {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    text-transform: lowercase;
}

.slidenav p.slidenav__item {
    pointer-events: auto;
    cursor: pointer;
    border: 0;
    background: none;
    padding: 1rem;
    margin: 0.85rem;
    text-transform: inherit;
    position: relative;
    line-height: 1;
    color: var(--color-nav);
    font-size: 1rem;
}

.slidenav__item::before,
.slidenav__item::after {
    content: '';
    position: absolute;
    width: 3rem;
    height: 1px;
    background: currentColor;
    top: 50%;
}

.slidenav__item::before {
    right: 100%;
}

.slidenav__item::after {
    left: 100%;
}

.slidenav__item:hover {
    color: var(--color-link-hover);
}

.slidenav__item--prev {
    transform: rotate(-90deg) translateY(-50%);
}

.slidenav__item--next {
    transform: rotate(90deg) translateY(-60%);
}

.slide__revealer {
    height: 0;
    position: absolute;
}

/* hover-ampliacio */
.hover-ampliacio {
    overflow: hidden;
    display: block;
}

.hover-ampliacio img {
    transition: .2s;
    display: block;
}

.hover-ampliacio:hover img {
    transform: scale(1.05);
}

/* svg animations */
.svg-animation {
    margin: 0;
}

.svg-animation svg {
    width: 100%;
    height: auto;
}

/* PLUGINS */

/* table of contents */
.lwptoc-light .lwptoc_i {
    background: none;
    border: solid 1px var(--genium--color--principal);
    width: 100%;
    box-sizing: border-box;
    padding: 2rem;
}

.lwptoc_header .lwptoc_title {
    color: var(--genium--color--principal);
    font-size: 2em;
    margin: 0;
}

.lwptoc-light .lwptoc_i .lwptoc_item_label {
    color: var(--genium--color--principal);
    font-size: 1.2em;
    margin-top: .5em;
    display: block;
}

/* wpcf7 form */
span.wpcf7-list-item {
    margin: 0 1em 0 0;
}
.wpcf7-spinner {
	display: block;
}
.wpcf7-form-control-wrap {
    position: relative;
    margin-bottom: 1em;
    display: block;
}

.accept-policy .wpcf7-form-control-wrap {
    display: inline-block;
    margin: 0;
    font-size: 1rem;
}

.is-required {
    position: relative;
    display: block;
}

.is-required::after {
    content: '*';
    color: var(--genium--color--error);
    position: absolute;
    right: -1em;
    top: 3em;
}

.wpcf7 label {
    width: 100%;
    display: block;
}

.wpcf7 label.accept-policy {
    margin-bottom: 2rem;
}

.wpcf7 textarea {
    height: 150px;
}

.wpcf7-form-control-wrap {
    margin-bottom: 2rem;
}

.wpcf7 .select2-container {
    width: 100% !important;
}

.wpcf7 .select2-container--default .select2-selection--single {
    border: solid 2px var(--genium--color--principal);
    border-radius: 0;
    height: auto;
    padding-top: .5em;
    padding-bottom: .5em;
}

.wpcf7 .select2-container--default .select2-selection--single .select2-selection__arrow {
    top: .7em !important;
}

.wpcf7 .select2-container--default .select2-selection--single .select2-selection__arrow b {
    border-color: var(--genium--color--error) transparent transparent transparent;
    border-width: 8px 7px 0 7px;
    margin-left: -20px;
}

.wpcf7-form .wp-block-column:not(:first-child) {
    margin-left: 2vw;
}

.inline-field .wpcf7-form-control-wrap {
    display: inline;
}

.message-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, .15);
    width: 100%;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 99;
}

.message-wrapper .message {
    padding: 3rem;
    background: var(--genium--color--blanc);
    max-width: 600px;
    text-align: center;
}

.message-wrapper p {
    font-size: 1.1em;
    text-align: center;
    margin: 0;
}

.message-wrapper p.button-link {
    margin-bottom: 0;
    margin-top: 2em;
}

.button-tanca-popup:hover {
    background: var(--genium--color--blanc);
}

.wpcf7 form.sent .wpcf7-response-output {
    border: none;
}

/* Store locator*/
#wpsl-search-wrap .wpsl-input,
#wpsl-search-wrap .wpsl-select-wrap,
#wpsl-search-wrap #wpsl-radius,
#wpsl-search-btn,
#wpsl-search-wrap #wpsl-radius,
#wpsl-search-wrap #wpsl-results,
#wpsl-search-wrap .wpsl-input input,
#wpsl-search-wrap .wpsl-input label {
    display: flex;
    align-items: center;
}

.wpsl-search {
    background: none;
    padding: 0;
}

.wpsl-input label,
#wpsl-radius label,
#wpsl-category label {
    width: auto !important;
}

#wpsl-search-btn,
#wpsl-search-wrap input[type="submit"] {
    width: 100%;
    box-sizing: border-box;
    padding: .7em 1em;
    font-size: 1em;
    border: none;
    font-family: var(--genium--font--principal);
    border: solid 1px var(--genium--color--principal);
    background: var(--genium--color--blanc);
    color: var(--genium--color--principal);
    margin-top: .5em;
}

#wpsl-search-btn:hover,
#wpsl-search-wrap input[type="submit"]:hover {
    color: var(--genium--color--blanc);
    background: var(--genium--color--principal);
}

#wpsl-search-btn,
#wpsl-search-wrap input {
    border-radius: 0;
}

#wpsl-search-wrap form {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: center;
}

#wpsl-search-wrap form>div {
    margin-bottom: 20px;
}

.wpsl-dropdown {
    border-radius: 0px;
}

a.wpsl-directions {
    display: block;
    font-weight: bold;
    font-size: 1em;
    margin-top: 20px;
}

a#wpsl-direction-start {
    display: block;
    font-weight: bold;
    font-size: 1em;
    margin-top: 20px;
}

#wpsl-search-btn,
#wpsl-search-wrap div {
    margin: 0;
}

#wpsl-wrap #wpsl-result-list li {
    padding: 20px 0;
    margin-bottom: 50px;
}

#wpsl-search-wrap #wpsl-radius {
    margin-right: 30px;
}

#wpsl-search-input {
    margin-left: 8px;
}

/* FAQs */
.rank-math-list-item {
    overflow: hidden;
    border: solid 1px var(--genium--color--principal);
    padding: 1em;
}

.rank-math-list-item:not(:first-of-type) {
    border-top: 0;
}

.rank-math-answer {
    height: 1px;
    transition: .2s;
    opacity: 0;
}

.open .rank-math-answer {
    height: 100%;
    opacity: 1;
}

/*shortcodes*/
/*wp-query*/
.wp-block-columns.wp-query {
    flex-flow: row wrap;
}

.wp-block-columns.wp-query .wp-block-column {
    flex-grow: 0;
    flex-basis: calc(100%/3 - (5%*2)/3);
    margin-bottom: 3rem;
    display: block;
}

.wp-block-columns.wp-query .wp-block-column:not(:first-child) {
    margin-left: 0;
}

.wp-block-columns.wp-query .wp-block-column:not(:nth-child(3n+1)) {
    margin-left: 5%;
}


/* WOOCOMMERCE */
/* .woocommerce-page #content {
    margin-top: 50px;
} */

/* cart popup */
.cart-popup-wrapper {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, .5);
    z-index: 99;
    display: flex;
    justify-content: center;
    align-items: center;
}

.cart-popup {
    background: var(--genium--color--blanc);
    width: auto;
    height: auto;
    text-align: center;
    padding: 2em 2em 3em 2em;
    max-width: 700px;
    box-sizing: border-box;
}

.cart-popup-wrapper .tancar-popup.icon-tancar {
    height: 30px;
    width: 30px;
    cursor: pointer;
    float: right;
    transform: translate(10px, -10px);
}

.cart-popup-wrapper .tancar-popup.icon-tancar svg {
    height: 100%;
    width: 100%;
}

.cart-popup-wrapper button.tancar-popup {
    margin-top: 1em;
}

.cart-popup p:first-of-type {
    margin-top: 2em;
}

/* archive */
.product-category {
    position: relative;
    margin-bottom: 3rem;
    min-height: 50px;
}

.product-category .category-image {
    overflow: hidden;
}

.product-category .category-image img {
    width: 100%;
    height: auto;
    display: block;
    transition: .2s;
}

.category-name {
    position: absolute;
    bottom: 0;
    width: 100%;
    z-index: 2;
    padding: 1em;
    background: rgba(61, 78, 86, .75);
    color: var(--genium--color--blanc);
    box-sizing: border-box;
    transition: .2s;
}

.product-category:hover .category-name {
    background: var(--genium--color--secundari);
}

.product-category:hover .category-image img {
    transform: scale(1.05);
}

.products-list .wp-block-column {
    margin-bottom: 3rem;
}

.product-wrapper {
    height: 100%;
    display: flex;
    flex-flow: column wrap;
    width: 100%;
    margin-bottom: 0;
}

.product-wrapper .product-link {
    flex-grow: 1;
    display: flex;
    flex-flow: column wrap;
    width: 100%;
}

.product-wrapper .product-link .wp-block-group {
    flex-grow: 1;
    display: flex;
    flex-flow: column wrap;
    width: 100%;
}

.product-wrapper .product-link .wp-block-group .product-title {
    flex-grow: 1;
}

.products-list .wp-block-column {
    margin-bottom: 3rem;
}

.product-wrapper .product-title {
    margin-bottom: .25em;
    flex-grow: 1;
}

.product-short-description p {
    margin: 0;
    font-size: 1rem;
}

.product-wrapper .product-price {
    color: var(--genium--color--secundari);
}

.product-wrapper .wp-block-image {
    overflow: hidden;
}

.product-wrapper .wp-block-image img {
    transition: .2s;
    width: 100%;
    height: 100%;
}

.product-wrapper:hover .wp-block-image img {
    transform: scale(1.05);
}

.woocommerce form.cart {
    display: flex;
}

.woocommerce form.cart .button {
    border-radius: 0;
}

.woocommerce .quantity {
    border: solid 1px var(--genium--color--principal);
}

.woocommerce .quantity .qty {
    height: 100%;
    box-sizing: border-box;
    border: none;
}

ul.product-categories {
    padding-left: 15px;
}

ul.product-categories li {
    list-style: none;
    margin-bottom: 1em;
    margin-top: 1em;
}

ul.product-categories.main>li a {
    border-left: solid 4px var(--genium--color--secundari);
    padding-left: 10px;
    border-bottom: solid 1px #DDDDDD;
    width: 100%;
    display: block;
    padding-bottom: .3em;
    padding-top: .3em;
}

ul.product-categories.main ul.product-categories>li a {
    border-left: none;
    padding-left: 0;
    border-bottom: none;
    padding-bottom: 0;
}

ul.product-categories.main li.current>a,
ul.product-categories.main li>a:hover {
    color: var(--genium--color--secundari);
}

/*Product single*/
.woocommerce #content div.product .summary-wrapper {
    width: 100%;
    position: relative;
    display: flex;
    flex-flow: row wrap;
    height: auto;
    margin-top: 0;
    align-items: flex-start;
    margin-bottom: 50px;
}

.woocommerce #content div.product div.images,
.woocommerce div.product div.images,
.woocommerce-page #content div.product div.images,
.woocommerce-page div.product div.images {
    float: none;
    width: calc(100% - var(--genium--sidebar--width));
    padding-right: var(--genium--columns--margin);
    box-sizing: border-box;
    position: relative;
    height: 100%;
    display: flex;
    align-items: center;
    flex-flow: row wrap;
    justify-content: center;
}

.woocommerce #content div.product div.images .flex-viewport {
    height: 100% !important;
    width: 100%;
    order: 1;
}

.woocommerce #content div.product div.summary,
.woocommerce div.product div.summary,
.woocommerce-page #content div.product div.summary,
.woocommerce-page div.product div.summary {
    float: none;
    width: var(--genium--sidebar--width);
    position: relative;
    display: flex;
    flex-flow: column wrap;
    justify-content: center;
    padding-top: 50px;
}

.woocommerce #content div.product .summary-wrapper h1 {
    margin-bottom: 0;
}

.woocommerce #content div.product .summary-wrapper .product-content {
    margin: 0;
}

.woocommerce #content div.product .summary-wrapper .woocommerce-product-gallery__image img {
    max-width: 100%;
    max-height: 100%;
    width: 100%;
    height: auto;
    margin: 0 auto;
}

.woocommerce div.product div.images .woocommerce-product-gallery__wrapper,
.woocommerce-product-gallery__image,
.woocommerce-product-gallery__image a {
    display: flex;
    align-items: center;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
    color: var(--genium--color--principal);
    font-size: 2.2em;
    margin: 0;
    font-family: var(--genium--font--principal);
}

.woocommerce .summary p.tax-info {
    margin: 0;
    font-size: .8em;
}

.woocommerce div.product form.cart {
    margin-top: 2em;
}

.woocommerce div.product form.cart .button,
.woocommerce-cart #content .wc-proceed-to-checkout a.checkout-button,
.woocommerce #content button.button.alt,
.woocommerce #content button.button,
#content .woocommerce button.button.alt,
#content .woocommerce button.button {
    background: transparent;
    border: solid 1px var(--genium--color--principal);
    padding: 1.5rem 3rem;
    font-size: 1.1rem;
    text-align: center;
    font-weight: bold;
    color: var(--genium--color--principal);
    border-radius: 50px;
    display: block;
    font-family: 'Basier Square';
    transition: .2s;
    float: none;
    box-sizing: border-box;
    width: 100%;
}

.woocommerce div.product form.cart .button:hover,
.woocommerce-cart #content .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce #content button.button.alt:hover,
.woocommerce #content button.button:hover,
#content .woocommerce button.button.alt:hover,
#content .woocommerce button.button:hover {
    background: var(--genium--color--principal);
    color: var(--genium--color--blanc);
}

.woocommerce div.product div.images .flex-control-thumbs li {
    height: 150px;
    width: 150px;
    display: flex;
    align-items: center;
}

.woocommerce div.product div.images .flex-control-thumbs {
    display: flex;
    justify-content: center;
    width: 100%;
    height: 100%;
    flex-flow: row;
    order: 2;
    margin-top: var(--genium--columns--margin);
}

.woocommerce div.product div.images .flex-control-thumbs li img {
    max-height: 100%;
    max-width: 100%;
    margin: 0 auto;
    width: 100%;
    height: auto;
}

.woocommerce-error::before,
.woocommerce-info::before,
.woocommerce-message::before {
    top: 50%;
    transform: translateY(-50%);
}

.woocommerce-notices-wrapper>div {
    display: flex;
    align-items: center;
    flex-flow: row-reverse wrap;
    justify-content: space-between;
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
    border: none;
    font-size: 1.2rem;
    line-height: 1.5rem !important;
    padding-left: 3.5em !important;
    display: flex;
    align-items: center;
    flex-flow: row wrap;
    justify-content: flex-start;
}

.woocommerce-message::before,
.woocommerce-info::before {
    color: var(--genium--color--secundari);
}

#content>.woocommerce {
    max-width: var(--genium--maxwidth);
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce button.button.alt,
.woocommerce button.button {
    font-family: var(--genium--font--principal);
    border: solid 1px var(--genium--color--principal);
    background: var(--genium--color--secundari);
    color: var(--genium--color--principal);
    border-radius: 40px;
    padding: 1rem 3rem;
    font-size: 1.3rem;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce button.button.alt:hover,
.woocommerce button.button:hover {
    background: var(--genium--color--secundari);
    color: var(--genium--color--principal);
    border-color: var(--genium--color--secundari);
}

.woocommerce #content table.cart td.actions .input-text,
.woocommerce table.cart td.actions .input-text,
.woocommerce-page #content table.cart td.actions .input-text,
.woocommerce-page table.cart td.actions .input-text {
    width: auto;
}

.woocommerce #content table.cart td.actions .coupon,
.woocommerce table.cart td.actions .coupon,
.woocommerce-page #content table.cart td.actions .coupon,
.woocommerce-page table.cart td.actions .coupon {
    display: flex;
}

#add_payment_method #payment,
.woocommerce-cart #payment,
.woocommerce-checkout #payment {
    background: none;
}

.woocommerce #payment #place_order,
.woocommerce-page #payment #place_order {
    float: none;
    display: block;
    margin: 2em auto;
}

.woocommerce-MyAccount-navigation li {
    font-size: 1.2em;
    margin-bottom: 1em;
}

.woocommerce .quantity .qty {
    height: 100%;
    box-sizing: border-box;
}

.woocommerce div.product form.cart {
    display: flex;
}


/*star rating for products*/
.rating-custom div.product .woocommerce-product-rating {
    margin-bottom: 1.618em;
}

.rating-custom .woocommerce-product-rating .star-rating {
    margin: .5em 4px 0 0;
    float: left;
}

.rating-custom .woocommerce-product-rating::after,
.rating-custom .woocommerce-product-rating::before {
    content: ' ';
    display: table;
}

.rating-custom .woocommerce-product-rating {
    line-height: 2;
}

.rating-custom .star-rating {
    float: right;
    overflow: hidden;
    position: relative;
    height: 1em;
    line-height: 1;
    font-size: 1em;
    width: 5.4em;
    font-family: star;
}

.rating-custom .star-rating::before {
    content: '\73\73\73\73\73';
    color: var(--genium--color--text);
    float: left;
    top: 0;
    left: 0;
    position: absolute;
}

.rating-custom .star-rating {
    line-height: 1;
    font-size: 1em;
    font-family: star;
}

.rating-custom .star-rating span {
    overflow: hidden;
    float: left;
    top: 0;
    left: 0;
    position: absolute;
    padding-top: 1.5em;
}

.rating-custom .star-rating span::before {
    content: '\53\53\53\53\53';
    top: 0;
    position: absolute;
    left: 0;
}

.rating-custom .star-rating span {
    overflow: hidden;
    float: left;
    top: 0;
    left: 0;
    position: absolute;
    padding-top: 1.5em;
}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */
input[type=number] {
    -moz-appearance: textfield;
    font-size: 1rem;
}

/* sharing box */
.sharing-box {
    text-align: center;
    margin-top: 50px;
    margin-bottom: 50px;
}

.sharing-box .share-button:not(:first-of-type) {
    margin-left: 2em;
}

.sharing-box .share-button svg {
    max-width: 30px;
    max-height: 30px;
    width: auto;
    height: auto;
    transition: .2s;
}

.sharing-box .share-button svg g {
    fill: var(--genium--color--principal);
}

.sharing-box .share-button:hover svg {
    transform: translateY(-5px);
}

@media (max-height: 750px) {

}

/* BREAKPOINTS */
@media (max-width: 1336px) {
    body {
        --genium--height--header: 60px;
        --genium--padding--sides: 5%;
        --genium--logo--height: 35px;
    }

    .padding-sides,
    .max-width {
        padding-left: var(--genium--padding--sides);
        padding-right: var(--genium--padding--sides);
    }

    .genium-styles>.wp-block-group,
    .genium-styles>p,
    .genium-styles>h1,
    .genium-styles>h2,
    .genium-styles>h3,
    .genium-styles>h4,
    .genium-styles>h5,
    .genium-styles>h6,
    .genium-styles>.wp-block-columns,
    .genium-styles>.wp-block-image,
    .genium-styles>.wp-block-gallery,
    .genium-styles>.content-area,
    .genium-styles>.wpcf7{
        padding-left: var(--genium--padding--sides);
        padding-right: var(--genium--padding--sides);
    }

    .genium-styles>ul,
    .genium-styles>ol {
        padding-left: calc(var(--genium--padding--sides) + 10px);
        padding-right: calc(var(--genium--padding--sides) + 10px);
    }

    /* header */
    #header {
        height: var(--genium--height--header);
        padding-top: 10px;
    }

    #menu-button {
        display: flex;
    }

    #header #main-menu .menu-main-container,
	#header #main-menu .menu-main-catalan-container,
	#header #main-menu .menu-main-ingles-container,
    #header #search-button {
        display: none;
    }

    #cart-button {
        margin-right: 1rem;
        margin-left: 0;
    }

    #content {
        padding-top: var(--genium--height--header);
    }

    /* SEARCH */
    #search-page input {
        padding: .5em .5em .5em 1.3em;
        font-size: 1.5em;
    }

    #search-page svg {
        height: 1.3em;
        width: 1.3em;
    }

    /* FOOTER */
    .footer-wrapper .bottom-bar {
        flex-flow: column wrap;
        align-items: flex-start;
    }

    .footer-wrapper .bottom-bar .social-media {
        margin-top: 1em;
    }

    /* slider draggable */
    .slider.draggable .slide {
        padding-left: var(--genium--padding--sides);
        padding-right: var(--genium--padding--sides);
    }

    /* Reusable blocks */
    .genium-styles>.wp-block-group.fullsize-blocks {
        padding-left: 0;
        padding-right: 0;
    }

    /* columnes-img-text */
    .columnes-img-text.wp-block-columns {
        flex-flow: row wrap;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

@media (max-width: 991px) {

    /* block-with-background */
    .block-with-background.wp-block-columns {
        flex-flow: column wrap;
    }

    .block-with-background .column-image {
        flex-basis: 100% !important;
        width: 100% !important;
        margin-bottom: 1rem !important;
    }

    .block-with-background .column-text {
        position: relative;
        width: 100%;
        padding: 0;
        margin: 0;
        background: none;
    }

    .block-with-background .column-text p {
        margin-top: .5rem;
        margin-bottom: .5rem;
    }

    /* columnes-img-text */
    .columnes-img-text .wp-block-column {
        width: 100% !important;
        flex-basis: 100% !important;
        height: auto;
        overflow: hidden;
        margin-bottom: 0 !important;
    }

    .columnes-img-text .wp-block-column img {
        height: 100%;
        width: 100%;
        object-fit: center;
        object-fit: cover;
    }

    /* woocommerce */
    .woocommerce #content div.product div.images,
    .woocommerce div.product div.images,
    .woocommerce-page #content div.product div.images,
    .woocommerce-page div.product div.images {
        width: 100%;
        padding: 0;
    }

    .woocommerce #content div.product div.summary,
    .woocommerce div.product div.summary,
    .woocommerce-page #content div.product div.summary,
    .woocommerce-page div.product div.summary {
        width: 100%;
    }

    .woocommerce #content div.product div.images .flex-viewport {
        width: 100%;
    }

    .woocommerce div.product div.images .flex-control-thumbs {
        width: 100%;
        flex-flow: row wrap;
        order: 2;
        margin-top: 20px;
        justify-content: center;
    }

    .woocommerce div.product div.images .flex-control-thumbs li {
        width: 80px;
        height: 80px;
        margin-left: 10px;
        margin-right: 10px;
    }
}

@media (max-width: 781px) {
    body {
        --genium--padding--sides: 5%;
        --genium--fonts--h1: 2rem;
        --genium--fonts--h2: 1.7rem;
        --genium--fonts--h3: 1.3rem;
        --genium--fonts--p: 1.1rem;
        --genium--fonts--p--height: 1.4em;
        --genium--fonts--p--small: 0.9rem;
        --genium--fonts--p--medium: 1.3rem;
        --genium--fonts--p--large: 2rem;
        --genium--fonts--p--xlarge: 2.5rem;
    }

    /* hide / show */
    .mobile {
        display: block;
    }

    .desktop {
        display: none;
    }

    /* columns */
    .wp-block-columns .wp-block-column,
    .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column:not(:only-child) {
        flex-basis: 100% !important;
    }
    .wp-block-column:not(:first-child),
    .wpcf7-form .wp-block-column:not(:first-child),
    .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column:not(:first-child) {
        margin-left: 0;
    }

    .mobile-reverse {
        flex-flow: column-reverse;
    }

    /* header */
    #header>.wp-block-columns {
        padding-left: var(--genium--padding--sides);
        padding-right: var(--genium--padding--sides);
    }

    #menu-button {
        position: relative;
        padding-right: 0;
    }

    #cart-button {
        margin-right: .5rem;
    }

    /* FOOTER */
    .footer-wrapper .menu-footer {
        display: none;
    }

    #footer .top-bar ul li:not(:first-of-type)::before {
        content: '';
        display: none;
    }

    #footer .top-bar ul li {
        display: block;
        margin-bottom: 1rem;
    }

    .footer-wrapper .footer-info .wp-block-column:not(:last-of-type) {
        border: none;
    }

    .footer-wrapper .footer-info .wp-block-column:not(:first-child) {
        padding-left: 0;
        padding-right: 0;
    }

    /* ESTILS genium */
    .genium-styles .wp-block-table table tr th,
    .genium-styles .wp-block-table tr td {
        padding-top: 10px;
        padding-bottom: 10px;
    }

    /* page-header */
    .genium-styles .page-header h1 {
        margin-top: 2rem;
        margin-bottom: 2rem;
    }

    /* fullsize-blocks */
    .fullsize-blocks .wp-block-columns:nth-child(even) {
        display: flex;
        flex-flow: column-reverse wrap;
    }

    .fullsize-blocks .wp-block-columns {
        margin-bottom: 2em;
        margin-top: 2em;
    }

    /* .home-img-background */
    .home-img-background {
        height: auto;
    }

    .home-img-background .content-block {
        padding: 15vh 10vw 10vw 10vw;
        box-sizing: border-box;
    }

    .home-img-background .scroll-down {
        display: none;
    }

    /* home intro */
    .home-intro {
        height: auto;
        padding-top: 8em;
        padding-bottom: 5em;
    }

    /* text loop */
    .text-loop {
        margin-bottom: 1em;
    }

    /* slider draggable */
    .slider.draggable .slide {
        padding-left: var(--genium--padding--sides);
        padding-right: var(--genium--padding--sides);
    }

    /* slider arrows */
    .slider-wrapper.arrows .navigation {
        width: 50px;
        height: 50px;
        padding: 10px;
        top: auto;
        bottom: 0;
    }

    .slider-wrapper.arrows .slider-container {
        width: 100%;
    }
}

@media (max-width: 543px) {
    body {
        --genium--padding--sides: 10%;
    }

    .padding-sides,
    .max-width {
        padding-left: var(--genium--padding--sides);
        padding-right: var(--genium--padding--sides);
    }

    .genium-styles>.wp-block-group,
    .genium-styles>p,
    .genium-styles>h1,
    .genium-styles>h2,
    .genium-styles>h3,
    .genium-styles>h4,
    .genium-styles>h5,
    .genium-styles>h6,
    .genium-styles>.wp-block-columns,
    .genium-styles>.wp-block-image,
    .genium-styles>.wp-block-gallery,
    .genium-styles>.content-area,
    .genium-styles>.wpcf7
    {
        padding-left: var(--genium--padding--sides);
        padding-right: var(--genium--padding--sides);
    }

    .genium-styles>ul,
    .genium-styles>ol {
        padding-left: calc(var(--genium--padding--sides) + 10px);
        padding-right: calc(var(--genium--padding--sides) + 10px);
    }

    input[type="submit"],
    .button,
    .button-link a {
        min-width: 250px;
    }
}