/* 
    Style for the frontend of the website, including the header and other elements.
    This file is part of the JEF 4 Website plugin.
*/
:root {
    --primary-website-color: #222222;
    --secondary-website-color: #4E5762;
    --text-website-color: #000000;
    --accent-website-color: #E64938;
    --grey-light-website-color: #F5F5F5;
    --grey-website-color: #f0f0ef;
    --primary-website-font: "Open Sans", sans-serif;
}
::selection {
  background-color: var(--primary-website-color);
  color: white;
}
body {
    font-family: var(--primary-website-font);
    /* background-color: var(--grey-light-website-color); */
    background-color: var(--grey-website-color);
    color: var(--text-website-color);
    margin: 0;
    padding: 0;
    overflow-x: hidden;
}
body.no-scroll
{
    overflow: hidden;
}
 
a:visited, a:link 
{
    color: inherit;
    text-decoration: none;
}
p {
    margin: 0 0 15px 0;
    padding: 0;
}
* {
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
@media screen and (max-width:1024px) {
  html
  {
    font-size: 14px;
  }
}

@media screen and (min-width:1200px) {
    .container
    {
        max-width: 1420px;
    }
}

/* Classes for elementor widgets */
/* .jef-image-shadow-yes aggiunto per il backend, .jef-image-shadow-enabled viene iniettato solo nel frontend !!*/
.elementor-widget-image.jef-image-shadow-enabled .elementor-widget-container,
.elementor-widget-image.jef-image-shadow-yes .elementor-widget-container
{
    border-radius: 20px;
    overflow: hidden;
}
.elementor-widget-image.jef-image-shadow-enabled .elementor-widget-container img,
.elementor-widget-image.jef-image-shadow-yes .elementor-widget-container img
{
    width: 100%;
    position: relative;
    z-index: 3;
}
.elementor-widget-image.jef-image-shadow-enabled .elementor-widget-container::after,
.elementor-widget-image.jef-image-shadow-enabled .elementor-widget-container::before,
.elementor-widget-image.jef-image-shadow-yes .elementor-widget-container::after,
.elementor-widget-image.jef-image-shadow-yes .elementor-widget-container::before
{
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    background-color: var(--secondary-website-color);
    z-index: 1;
    border-radius: 20px;
}

.elementor-widget-image.jef-image-shadow-enabled .elementor-widget-container::before,
.elementor-widget-image.jef-image-shadow-yes .elementor-widget-container::before
{
    bottom: -15px;
    right: -15px;
}
.elementor-widget-image.jef-image-shadow-enabled .elementor-widget-container::after,
.elementor-widget-image.jef-image-shadow-yes .elementor-widget-container::after
{
    bottom: -30px;
    right: -30px;
    opacity: 0.55;
}

/* --LAYOUT CLASSES-- */
#mainWrapper
{
    display: block;
    width: 100%;
    min-height: 55vh;
}

.bbp-user-page #mainWrapper
{
    margin-top: 80px;
}

/*TYPOGRAPHY CLASSES*/
h1, h2, h3, h4, h5, h6
{
    margin: 0;
    padding: 0;
}
.mainTitleWebsite
{
    font-size: 2.625rem;
    line-height: 1em;
    color: var(--primary-website-color);
    font-weight: 800;
    margin-bottom: 15px;
}
.mainTitleWebsite p
{
    margin: 0;
}
.mainTitleWebsite.bigger
{
    font-size: 4.375rem;
    line-height: 0.9em;
}
.mainTitleWebsite.smaller
{
    font-size: 1.825rem;
    line-height: 0.9em;
}
@media screen and (max-width: 767px) {
    .mainTitleWebsite
    {
        font-size: 2.3rem;
    }
    .mainTitleWebsite.bigger {
        font-size: 2.8rem;
        line-height: 0.9em;
    }
}
.mainTextWebsite
{
    font-size: 1rem;
    line-height: 1.8em;
    color: var(--text-website-color);
    font-weight: 400;
}
.mainTextWebsite strong, .mainTextWebsite b
{
    font-weight: 700;
}
.mainTextWebsite.smaller
{
    font-size: 0.85rem;
    line-height: 1.9em;
}

.mainTextWebsite.medium
{
    font-size: 1.25rem;
    line-height: 1.75em;
}

.mainTextWebsite.bigger
{
    font-size: 1.5rem;
    line-height: 1.75em;
}

@media screen and (max-width: 767px) {
    .mainTextWebsite.bigger,
    .mainTextWebsite.medium
    {
         font-size: 1.15rem;
        line-height: 1.55em;
    }
}

.mainTextWebsite.pre_title
{
    font-weight: 800;
    color: var(--accent-website-color);
}
.mainTextWebsite.pre_title p
{
    margin: 0;
}
.mainTextWebsite a
{
    color: var(--accent-website-color);
    font-weight: 500;
    text-decoration: underline;
}
.mainButtonWebsite
{
    display: inline-block;
    padding: 0 !important;
    background-color: transparent !important;
    border:0;
    color: white;
    font-weight: 600;    
    position: relative;
    
    cursor: pointer;
    font-size: 1rem;
    line-height: 1.1em;
    z-index: 1;
}

.mainButtonWebsite.bigger
{
    font-size: 1.35rem;
    line-height: 1.1em;
}

.mainButtonWebsite span
{
    display: flex;
    padding: 16px 32px;
    background-color: var(--accent-website-color);
    color: inherit;
    position: relative;
    z-index: 3;
    border-radius: 5px;
    border: 2px solid transparent;
}
.mainButtonWebsite.bigger span
{
    padding: 24px 48px;
}
.mainButtonWebsite.text-center span
{
    justify-content: center;
    text-align: center;
}
.mainButtonWebsite.text-right span
{
    justify-content: flex-end;
    text-align: right;
}

.mainButtonWebsite:hover span
{
    color: white !important;
    background-color: var(--accent-website-color) !important;
}

.mainButtonWebsite.width_full
{
    width: 100%;
}

a.mainButtonWebsite
{
    color: white;
}
.mainButtonWebsite::after,
.mainButtonWebsite::before
{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--accent-website-color);
    border-radius: 5px;
    opacity: 0.3;
    z-index: 1;
    transform: translateX(6px);
    transition: transform 0.6s ease;
}
.mainButtonWebsite::before
{
    transform: translateX(12px);
    opacity: 0.15;
}
.mainButtonWebsite:hover::after,
.mainButtonWebsite:hover::before
{
    transform: translateX(0);
}
.mainButtonWebsite:hover::after
{
    transition: transform 0.3s ease;
}
.mainButtonWebsite:hover::before
{
    transition: transform 0.8s ease;
}

.mainButtonWebsite.no_display_after_before::after,
.mainButtonWebsite.no_display_after_before::before
{
    display: none !important;
}

/* .mainButtonWebsite.secondary,
.mainButtonWebsite.active
{
    color: var(--accent-website-color);
} */
.mainButtonWebsite.secondary span,
.mainButtonWebsite.active span
{
    background-color: var(--grey-light-website-color);
    border-color: var(--accent-website-color);
    color: var(--accent-website-color);
}

/* HEADER */
header
{
    position: sticky;
    top: 0;
    z-index: 1000; 
    background-color: transparent;
    box-shadow: unset;
    transition: background-color 0.3s ease, box-shadow 0.3s ease;
}

header .leftNav .logo img {
	display: block;
	max-height: 110px;
	min-height: 110px;
	width: auto;
    transition: all 0.3s ease;
}


header.scrolled:not(.override_scrolled)
{
    background-color: var(--grey-website-color);
    box-shadow: 0 5px 20px rgba(0,0,0,0.1);
    transition: background-color 0.3s ease, box-shadow 0.3s ease;
}
header.override_scrolled
{
    background-color: var(--grey-website-color);
}

header.scrolled:not(.override_scrolled) .leftNav .logo img
{
    max-height: 75px;
    min-height: 75px;
    transition: all 0.3s ease;
}

@media screen and (max-width:767px) {
    header
    {
        background-color: var(--grey-website-color);
    }
    header.scrolled:not(.override_scrolled) .leftNav .logo img,
    header .leftNav .logo img {
        max-height: 60px;
        min-height: 60px;
    }
}

/* .main-navigation
{
    margin-left: 25px;
} */
.main-navigation ul
{
    display: flex;
    gap: 15px;
    list-style: none;
    margin: 0;
    padding: 0;
}
.main-navigation ul li
{
    list-style: none;
    margin: 0;
    padding: 0;
    position: relative;
}
.main-navigation > ul > li
{
    display: flex;
    align-items: center;
}

.main-navigation a
{
    color: var(--primary-website-color);
    font-weight: 700;
    padding: 10px 15px;
    display: block;

    font-size: 1rem;
    line-height: 1.275rem;
}

@media screen and (max-width:1399px) {
  .main-navigation > ul > li > a
  {
    padding-left: 0;
    padding-right: 0;
  }
}
.main-navigation a:hover,
.main-navigation .current_page_item a
{
    color: var(--accent-website-color);
}
.main-navigation a:hover svg path,
.main-navigation .current_page_item a svg path
{
    fill: var(--accent-website-color);
}

.main-navigation ul ul.sub-menu
{
    position: absolute;
    top: 100%;
    left: 0;
    background-color: var(--grey-light-website-color);
    display: none;
    flex-direction: column;
    gap: 0;
    min-width: 280px;
    border-radius: 5px;
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);

    padding-bottom: 25px;
    padding-top: 25px;
}

.main-navigation ul li:hover > ul.sub-menu
{
    display: flex;
}

.main-navigation li.menu-item-has-children > a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.main-navigation li.menu-item-has-children > a .menu-arrow {
    display: inline-flex;
    line-height: 0;
}

.main-navigation li.menu-item-has-children > a .menu-arrow svg {
    transition: transform 0.25s ease;
}

.main-navigation li.menu-item-has-children:hover > a .menu-arrow svg,
.main-navigation li.menu-item-has-children:focus-within > a .menu-arrow svg {
    transform: rotate(180deg);
}

header .rightNav .actions_buttons
{
    display: flex;
    gap: 15px;
    align-items: center;
}
header .rightNav .actions_buttons .linkUser
{
    font-size: 14px;
    line-height: 15px;
    color: var(--accent-website-color);
    font-weight: 700;
}

header .rightNav .actions_buttons .mainButtonWebsite.loginUserButton span
{
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
}

header .rightNav .actions_buttons .mainButtonWebsite.loginUserButton .userAvatar {
	border-radius: 50%;
	overflow: hidden;
	width: 30px;
	height: 30px;
}
header .rightNav .actions_buttons .mainButtonWebsite.loginUserButton .userAvatar img {
	object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%;
}
@media screen and (max-width: 767px) {
    header .rightNav .actions_buttons .linkUser,
    header .rightNav .actions_buttons .mainButtonWebsite.loginUserButton .userAvatar
    {
        display: none;
    }
}
header .rightNav .actions_buttons .mainButtonWebsite.loginUserButton .label {
	display: flex;
	white-space: nowrap;
}

/* BUTTON MENU MOBILE */
#button_nav_menu_mobile {
    display: none;
    background-color: transparent;
    border: 0;
    cursor: pointer;
    padding: 0;
    width: 40px;
    margin-left: 15px;
}
#button_nav_menu_mobile .line {
    display: block;
    width: 100%;
    height: 2px;
    background-color: var(--primary-website-color);
    border-radius: 4px;
    transition: all 0.3s ease;
}

#button_nav_menu_mobile.active .line:nth-child(1) {
    transform: translateY(12px) rotate(45deg);
}
#button_nav_menu_mobile.active .line:nth-child(2) {
    opacity: 0;
}
#button_nav_menu_mobile.active .line:nth-child(3) {
    transform: translateY(-12px) rotate(-45deg);
}

.menuMobileBox
{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--grey-website-color);
    z-index: 999;
    display: none;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    opacity: 0;
    visibility: hidden;
    padding: 200px 40px 40px 40px;
}
.menuMobileBox.active
{
    display: block;
    opacity: 1;
    visibility: visible;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}
.menuMobileBoxInner
{
    height: 100%;
    width: 100%;
    overflow-y: auto;
}
.nav-menu.menuMobile
{
    margin: 0;
    padding: 0;
}
.nav-menu.menuMobile li {
	margin-bottom: 25px;
    list-style: none;
}
.nav-menu.menuMobile li a {
	font-size: 2.1rem;
	line-height: 1em;
    font-weight: 600;
}
.nav-menu.menuMobile .sub-menu li a {
	font-size: 1.3rem;
	line-height: 1em;
    font-weight: 400;
}
.nav-menu.menuMobile li a .menu-arrow
{
    margin-left: 10px;
}
.nav-menu.menuMobile .sub-menu {
    padding-left: 25px;
    padding-top: 25px;
    padding-bottom: 25px;
    display: none;
}
.nav-menu.menuMobile .sub-menu.active {
    display: block;
}
.nav-menu.menuMobile li.menu-item-has-children > a .menu-arrow svg {
	transition: transform 0.25s ease;
    transform: translateY(-3px) rotate(0deg);
    height: 12px;
    width: auto;
}
.nav-menu.menuMobile li.menu-item-has-children > a .menu-arrow.active svg {
	transform: translateY(-3px) rotate(180deg);
}

@media screen and (min-width:1200px) {
    .menuMobileBox {
        display: none !important;
    }
}
@media screen and (max-width:1199px) {
    #button_nav_menu_mobile {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 10px;
    }
    .main-navigation {
        display: none;
    }
}
@media screen and (max-width:767px) {
    #button_nav_menu_mobile {
        width: 30px;
    }
    .menuMobileBox
    {
        padding: 120px 25px 25px 25px;
    }
    .nav-menu.menuMobile li a {
        font-size: 1.8rem;
    }
    .nav-menu.menuMobile .sub-menu li a {
        font-size: 1.2rem;
    }
}

/* PREVIEW POST */
.singlePreviewPost
{
    border-radius: 20px; 
    overflow: hidden;
}
.singlePreviewPost .hover_link
{
    z-index: 5;
}
.previewPostThumbnail
{
    width: 100%;
    aspect-ratio: 16 / 9;
    position: relative;
}
.previewPostThumbnail img.imgPostThumbnail
{
    display: block;
    transform: scale(1.0);
    transition: transform 0.3s ease;
}
.previewPostThumbnail .previewPostIcon
{
    position: absolute;
    top: 10px;
    left: 10px;
    width: 85px;
    height: 85px;
    background-color: white;
    border-radius: 8px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 5px;
    z-index: 3;
}
.previewPostThumbnail .previewPostIcon img
{
    max-width: 100%;
    max-height: 100%;
    height: auto;
    width: auto;
    display: block;

}

.previewPostThumbnail .previewPostInfos
{
    position: absolute;
    top: 10px;
    right: 10px;
    max-width: calc(100% - 115px); /* tutto tranne l'icona - left icona + right this e un po' di margine */
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    gap: 5px;
    z-index: 3;
}
.previewPostThumbnail .previewPostInfos .previewPostInfoLabel
{
    background-color: #F1F1F1;
    color: var(--secondary-website-color);
    font-size: 14px;
    line-height: 14px;
    font-weight: 700;
    padding: 5px 10px;
    border-radius: 10px;
}

.previewPostThumbnail::after
{
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    width: 0; height: 0;
    border-style: solid;
    border-width: 0px 480px 65px 0px;
    border-color: transparent transparent var(--secondary-website-color) transparent;
    z-index: 3;
    transition: border-width 0.3s ease;
}

.previewPostThumbnail .coverGradient
{
    background: rgba(34, 34, 34, 0.75);
    background: linear-gradient(0deg,rgba(34, 34, 34, 0.8) 0%, rgba(34, 34, 34, 0) 85%);
    z-index: 2;
}

.previewPostContent {
	padding: 25px 15px 40px 15px;
	background-color: var(--secondary-website-color);
	min-height: 220px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.previewPostContent .previewPostTitle
{
    font-size: 1.25rem;
    line-height: 1em;
    font-weight: 900;
    margin-bottom: 10px;
    color: white;
    text-transform: uppercase;
}
.previewPostMeta
{
    font-size: 12px;
    line-height: 13px;
    color: #F1F1F1;
    font-weight: 500;
}
.actionLinkPreview .button_link
{
    color: white;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    gap: 5px;
}
.actionLinkPreview .button_link svg
{
    height: 12px;
    width: auto;
    transform: translateX(0);
    transition: all 0.3s ease;
}

.singlePreviewPost .previewBottom.actionLinkPreview .group-button a.group-button
{
    font-size: 12px;
    line-height: 13px;
    color: #F1F1F1;
    font-weight: 500;
    padding: 8px 15px;
    border-radius: 5px;
    background-color: transparent;
    border-color: #F1F1F1;
}


.singlePreviewPost:hover  {
    box-shadow: 0 10px 20px rgba(0,0,0,0.2);
}
.singlePreviewPost:hover .previewPostThumbnail img.imgPostThumbnail
{ 
    transform: scale(1.125);
    transition: transform 0.3s ease;
}

.singlePreviewPost:hover .previewPostThumbnail::after
{
    border-width: 0px 480px 0 0px;
    transition: border-width 0.3s ease;
} 
.singlePreviewPost:hover .actionLinkPreview .button_link svg
{
    transform: translateX(5px);
    transition: transform 0.3s ease;
}


@media screen and (max-width:991px) {
  .previewPostThumbnail::after
    {
        border-width: 0px 320px 35px 0px;
    }  
    .previewPostThumbnail .previewPostIcon {
        width: 55px;
        height: 55px;
    }
}

@media screen and (max-width:580px) {
  .previewPostThumbnail::after
    {
        border-width: 0px 580px 55px 0px;
    }  
    
}



/* GROUPS - BUDDYPRESS */
body.messages .buddypress-wrap {
	max-width: 100% !important;
}

.buddypress-wrap .bp-invites-search-form::before, .buddypress-wrap form.bp-dir-search-form::before, .buddypress-wrap form.bp-messages-search-form::before
{
display: none !important;
}

.group-create-buttons.button-tabs {
	display: flex;
	padding: 0;
	/* margin: 0 !important; */
	gap: 15px;
}

.contentLoopJef #filtersGroupsByJef .load-filters {
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,.25);
	color: white;
	justify-content: center;
	display: flex;
}
.contentLoopJef #filtersGroupsByJef .load-filters.d-none {
    display: none;
}

.contentLoopJef #filtersGroupsByJef .label {
    font-weight: 700;
    color: var(--primary-website-color);
    font-size: 11px;
    line-height: 12px;
    text-transform: uppercase;
	font-family: var(--primary-website-font);	
}

.contentLoopJef #filtersGroupsByJef select {
	background-color: transparent;
	border: 2px solid #DADADA;
	color: var(--primary-website-color);
	padding: 10px 15px;
	border-radius: 6px;
	font-size: 11px;
	line-height: 12px;
	text-transform: uppercase;
	font-family: var(--primary-website-font);
	font-weight: 700;
    cursor: pointer;
}

.single-group .bp-document-listing .media-search-form
{
    float: none;
}
.single-group .bp-media-header-wrap .media-search-form
{
    display: inline-block;
    margin-top: 40px;
}

/* SINGLE HEADER */
:root {
    --drop-left: 15vh;
}
.single-headers-website {
    position: relative;
    padding: 80px 25px var(--drop-left) 40px;
}


.single-headers-website .coverPath,
.single-headers-website .coverGradient {

    background: var(--primary-website-color); 
    
    clip-path: polygon(
    0 0, /* top-left */
    100% 0, /* top-right */
    100% calc(100% - var(--drop-left)), /* bottom-right più alto */
    0 100% /* bottom-left più basso */
    );
    border-radius: 12px;
    z-index: 1;
}
.single-headers-website .coverPath
{
    background-color: var(--primary-website-color);
}

.single-headers-website .coverGradient
{
    background: rgba(34, 34, 34, 0.75);
    background: linear-gradient(0deg,rgba(34, 34, 34, 0.8) 0%, rgba(34, 34, 34, 0) 85%);
    z-index: 2;
}

.single-headers-website .single-header-content
{
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    gap: 15px;
    justify-content: space-between;
    position: relative;
    z-index: 3;
}

.single-headers-website .single-header-main-info
{
    max-width: calc(100% - 175px);
    position: relative;
}
.single-headers-website .single-header-name
{
    color: white;
    text-transform: uppercase;
}

.single-headers-website .mainIconGroup
{
    width: 125px;
    height: 125px;
    background-color: white;
    border-radius: 8px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 10px;
    z-index: 3;
    box-shadow: 0 5px 25px rgba(0,0,0,0.2);

    transform: translateY(50%);
    position: relative;
    z-index: 3;
}
.single-group-header-jef4website .mainIconGroup img
{
    max-width: 100%;
    max-height: 100%;
    height: auto;
    width: auto;
    display: block;
}

.single-headers-website .singlePostInfo
{
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 10px;
    font-size: 12px;
    line-height: 13px;
    color: #F1F1F1;
    font-weight: 500;
}
.single-headers-website .singlePostInfo .infoLabel
{
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 5px;
}
.single-headers-website .singlePostInfo .infoLabel .labelItem
{
    padding: 5px 10px;
    background-color: #FFF;
    font-size: 14px;
    line-height: 15px;
    color: var(--secondary-website-color);
    font-weight: 600;
    border-radius: 3px;
}
.single-headers-website .singlePostInfo .infoMeta
{
    font-size: 14px;
    line-height: 15px;
    color: #FFF;
    font-weight: 700;
}

/* SINGLE GROUP */
.main-content-wrap.single-group .group-description-image
{
    border-radius: 20px;
    overflow: hidden;
}
.main-content-wrap.single-group .group-description-image img
{
    max-width: 100%;
    width: 100%;
    height: auto;
}


body.buddypress .buddypress-wrap .subnav-filters
{
    margin: 0;
}

html .buddypress .buddypress-wrap .generic-button a
{
    
    border-color: #ccc;
    color: #4c4a4a;
    font-weight: 600;
    line-height: 1em;
    padding: 5px 10px;
    border-radius: 5px;
    text-transform: uppercase;
    font-size: 0.9rem;
}
/* SINGLE POST */
.breadcrumb_website
{
    font-size: 12px;
    line-height: 13px;
    color: var(--secondary-website-color);
    font-weight: 500;
}

.breadcrumb_website a
{
    opacity: 0.75;
}

.single-header-content .navigation-single-post svg path
{
    fill: white;
}
.single-header-content .navigation-single-post svg:hover
{
    opacity: 0.75;
}
.single-content .post-featured-image
{   
    width: 100%;
    position: relative;
    border-radius: 20px;
    overflow: hidden;
}

/* FOOTER */
:root {
    --drop-right: 25vh;
}
footer {
	position: relative;
	padding: var(--drop-right) 25px 0 25px;
	width: calc(100vw - 40px);
	display: block;
	margin: 80px auto 0;
	
}
footer .coverPath 
{
    background: var(--secondary-website-color); 
    /* clip-path: polygon(
    0 0, 
    100% calc(0% + var(--drop-right)), 
    100% 100%, 
    0 100% 
    ); */

    clip-path: polygon(30px 0, 100% calc(0% + var(--drop-right)), 100% 100%, 0 100%, 0 0); /* pentagono */
    border-radius: 12px;
	border-top-left-radius: 24px;
    z-index: 1;
}

/* mi consente di avere img dx absolute posizionta correttamente */
footer .logo {
	aspect-ratio: 3 / 1;
}

footer .logo svg,
footer .logo img
{
    max-width: 100%;
    height: auto;
}


footer .container-footer
{
    position: relative;
    z-index: 2;
}
footer .container-footer > .row {
	transform: translateY(-80px);
}
.copyright_website
{
    font-size: 11px;
    line-height: 12px;
    color: var(--secondary-website-color);
    font-weight: 500;
    text-align: center;
    font-family: var(--primary-website-font);
}

.footer-about .mainTextWebsite
{
    color: white;
    line-height: 1.7em;
}

footer .single-footer-menu h4,
footer .single-footer-menu ul li a
{
    color: white;
}
footer .single-footer-menu ul,
footer .single-footer-menu ul li
{
    list-style: none;
    margin: 0;
    padding: 0;
}
footer .single-footer-menu ul li
{
    margin-bottom: 10px;
}
footer .single-footer-menu ul li a
{
    font-size: 16px;
    line-height: 17px;
    font-weight: 400;
}

 

/* FORM */
/*cf7*/
form.wpcf7-form {
	max-width: 100%;
	width: 767px;
	margin: 0 auto;
	background: white;
	border-radius: 25px;
	padding: 25px;
}
form.wpcf7-form label,
form.wpcf7-form input,
form.wpcf7-form textarea,
form.wpcf7-form select {
	display: inline-block;
	margin-bottom: 8px;
	width: 100%;
    max-width: 100%;
}
form.wpcf7-form input,
form.wpcf7-form textarea,
form.wpcf7-form select {
	margin-top: 8px;
    padding: 10px 15px;
    border: 2px solid #DADADA;
    border-radius: 6px;
    font-size: 14px;
    font-family: var(--primary-website-font);
}
form.wpcf7-form label {
    font-size: 14px;
    line-height: 15px;
    color: var(--primary-website-color);
	font-weight: 600;
}

form.wpcf7-form .wpcf7-form-control-wrap > *
{
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 8px;
}
form.wpcf7-form .wpcf7-form-control-wrap > * .wpcf7-list-item
{
    margin:0;
}
form.wpcf7-form .wpcf7-form-control-wrap > * .wpcf7-list-item label
{
    display: flex;
    align-items: center;
    gap: 5px;
}
form.wpcf7-form .wpcf7-form-control-wrap > * .wpcf7-list-item label input[type="checkbox"],
form.wpcf7-form .wpcf7-form-control-wrap > * .wpcf7-list-item label input[type="radio"]
{
    margin: 0;
}


form.wpcf7-form input[type="submit"],
form.wpcf7-form button[type="submit"]
{
    background-color: var(--accent-website-color);
    color: white;
    font-weight: 700;
    border: 0;
    padding: 10px 15px;
    border-radius: 6px;
    cursor: pointer;
    margin: 40px auto 15px auto;
    width: auto;
    min-width: 250px;  
    display: block; 
}


/* BUDDY PRESS */
.website_jef .bp-navs {
	background-color: transparent !important;
	box-shadow: unset !important;
	border: 0 !important;
}
.website_jef .bp-navs ul {
	display: flex;
	gap: 10px;
	white-space: nowrap;
	overflow: auto;
	max-width: 100%;
	padding-bottom: 20px;
    padding-top: 6px;
}
.website_jef .bp-navs ul li {
    background-color: transparent !important;
    border: 0 !important;
}
.website_jef .bp-navs ul li a
{
    padding: 10px 15px !important;
    border-radius: 5px;
    background-color: transparent;
    border: 2px solid #DADADA;
    color: var(--secondary-website-color);
    text-transform: uppercase;
    font-weight: 600 !important;
    font-size: 13px;
    line-height: 13px;
    font-family: var(--primary-website-font);
}
.website_jef .bp-navs ul li a:hover
{
    background-color: var(--accent-website-color) !important;
    color: white !important;
}

.website_jef .bp-navs ul li.current.selected a,
.website_jef .bp-navs ul li.current.selected a:hover
{
    background-color: var(--secondary-website-color) !important;
    /* border-color: #DADADA !important; */
    color: white !important;
}

.website_jef .bp-navs.bp-subnavs ul.subnav
{
    margin-top: 25px;
}
#workspace nav#object-nav
{
    margin-bottom: 0;
}
#workspace #item-body nav#subnav
{
    margin: 0 !important;
}

.website_jef .bp-navs.bp-subnavs ul.subnav li a {
	padding: 5px 15px !important;
    border: 0 !important;
    background-color: transparent !important;
    color: var(--secondary-website-color) !important;
    text-transform: uppercase;
    font-weight: 600 !important;
    font-size: 13px;
    line-height: 13px;
    font-family: var(--primary-website-font);
}

.website_jef .bp-navs.bp-subnavs ul.subnav li a:hover,
.website_jef .bp-navs.bp-subnavs ul.subnav li.current a
{
    background-color: transparent !important;
    color: var(--accent-website-color) !important;
}

/* BB groups members */
.members-jef-list {
	display: flex;
	gap: 40px;
    flex-direction: column;
}

.members-jef-list li.item-entry:not(.item-entry-header)
{
	margin-bottom: 15px;
}

.members-jef-list li.item-entry.item-entry-header
{
	font-weight: 700;
    color: var(--primary-website-color);
    font-size: 1rem;
    line-height: 1.5em;
}

body .buddypress-wrap .friends-mutual-list:not(.grid) .list-wrap, 
body .buddypress-wrap .members-list:not(.grid) .list-wrap {
	background-color: white;
	border: 0;
	padding: 25px 15px;
	position: relative;
	border-radius: 24px;
}

body .members-jef-list li.item-entry .member-buttons-wrap .footer-button-wrap
{
	display: flex !important;
	/* gap: 15px; */
}
body .members-jef-list li.item-entry .member-buttons-wrap .footer-button-wrap > *
{
    width: 100%; 
}
body .members-jef-list li.item-entry .bp-member-type {
	color: var(--primary-website-color) !important;
	font-weight: 700 !important;
	background-color: transparent !important;
	margin-right: 10px;
}

.chat-content {
	width: 100%;
	max-width: 100%;
	height: 75vh;
	min-height: 50vh;
	max-height: 80vh;
}


.bp-wrap form#group-members-search-form
{
    display:none !important;
    visibility: hidden !important;
    opacity: 0 !important;
}


/* ACCORDION */
.e-n-accordion details summary.e-n-accordion-item-title:hover .e-n-accordion-item-title-icon span > svg path
{
    fill: white;
}


/* override buddyboss*/
.buddypress .buddypress-wrap .activity-state a, .buddypress .buddypress-wrap .comment-reply-link, .buddypress .buddypress-wrap .generic-button a, .buddypress .buddypress-wrap a.bp-title-button, .buddypress .buddypress-wrap a.button, .buddypress .buddypress-wrap button, .buddypress .buddypress-wrap input[type="button"], .buddypress .buddypress-wrap input[type="reset"], .buddypress .buddypress-wrap input[type="submit"], .buddypress .buddypress-wrap ul.button-nav:not(.button-tabs) li a {
	background: #fff;
	border-color: #ccc;
	border-style: solid;
	border-width: 1px;
	color: #555;
	cursor: pointer;
	font-size: inherit;
	font-weight: 600;
	outline: 0;
	line-height: 1.3;
	padding: 4px 12px;
	text-align: center;
	text-decoration: none;
	width: auto;
	border-radius: 8px;
	font-size: 16px;
	font-family: var(--primary-website-font);
}


.members-directory-content #members-dir-list #members-list li.item-entry
{
    margin-bottom: 25px;
}

/* ovvveride button wp form */

span.wpforms-page-button-group button.wpforms-page-button  {
	padding: 8px 15px;
	background-color: var(--accent-website-color);
	color: #FFF;
	border-radius: 6px;
	text-transform: uppercase;
	font-family: var(--primary-website-font);
	border: 0;
	font-weight: 600;
	cursor: pointer;
}