/*
 Theme Name:   Solution Digitale Child
 Theme URI:    http://example.com/twenty-fifteen-child/
 Description:  Solution Digitale Child
 Author:       Xavier Gerber
 Author URI:   http://example.com
 Template:     SolutionDigitale
 Version:      3.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags:         light,
dark,
two-columns,
right-sidebar,
responsive-layout,
accessibility-ready
 Text Domain:  twentyfifteenchild
*/

html body #main > div.element_tarifs_list:not(#element_tarifs_list_51_9):not(#element_tarifs_list_51_11) {
	padding-bottom: 150px !important;
}

nav #menu-item-63.nav_button_effect > a:after{
    height: 0px!important;
}

.wpcf7 .wpcf7-response-output{
    color: #fff;
}

#eapps-instagram-feed-1 > div > div.eapps-instagram-feed-content > div.eapps-instagram-feed-header-container > div > div > div.eapps-instagram-feed-header-user > div.eapps-instagram-feed-header-user-info *{
    color:black!important;
}

/**********************************************************************************************************/
/*	EXEMPLE DE VARIABLES GLOBALES	*/
:root {
    --text-color-1: #545454 !important;
    --text-color-2: #353535 !important;
    --text-color-white: white !important;
    --text-color-black: black !important;
    --anchor-offset: 80px; 
}

/*SMOOTH SCROLL*/

 
/* tous les éléments qui peuvent être ciblés par un #id */
[id] {
 scroll-margin-top: var(--anchor-offset);
}
 
/* facultatif : ajoute un défilement fluide natif */
html { 
    scroll-behavior: smooth; 
}

.navbar-top-container .builder_menu{
	width:auto!important;
}

.php-error #adminmenuback,
.php-error #adminmenuwrap {
    margin-top: 0 !important;
}

/**********************************************************************************************************/
/*	CONFIGURATION DES TABLES	*/
.table table {
    width: 100%;
}

.table thead {
    border: solid 1px gray;
}

.table thead th {
    background: darkgray;
    color: white !important;
}

.table thead th,
.table td {
    border-left: solid 1px gray;
    border-right: solid 1px gray;
}

tr td,
tr th {
    padding: 10px; /* Ajustez la valeur du padding selon vos besoins */
}

/**********************************************************************************************************/

.menu-fixed-scroll {
    position: fixed !important;;
    width: 100% !important;
}

.dropdown-item {
    color: black !important;
}

/*/////////////////////////////////////////////////////////////////////////////////*/
/*MENU CHAGEMENT DE LANGUE MASQUE*/
#container_switch_langue {
    display: none !important;
}

/*/////////////////////////////////////////////////////////////////////////////////*/
.sd-button-header p,
.sd-button-header a,
input[type=submit],
input[type=submit]:focus {
    color: white!important;
    text-decoration: none;
}

.sd-button-header,
input[type=submit],
input[type=submit]:focus {
    cursor: default;
    transition: 0.3s;
    padding: 8px 16px;
    border: solid 1.5px transparent;
    background-color: var(--sd1);
	width:fit-content!important;
	border-radius: 1px!important;
	letter-spacing: 1px!important;
	text-transform: uppercase;
}

.sd-button-header:hover p,
.sd-button-header:hover a,
input[type=submit]:hover {
    color: white!important;
}

.sd-button-header:hover,
input[type=submit]:hover {
    padding: 8px 16px;
    border: solid 1.5px white;
    background-color: transparent;
}

/*/////////////////////////////////////////////////////////////////////////////////*/
#menu-main > #menu-item-63 > a {
  display: inline-block;
  padding: 8px 16px;
  background-color: var(--sd3) !important; 
  color: white!important;
  border: 1.5px solid transparent;
  border-radius: 1px;
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 1px;
  text-transform: uppercase;
  cursor: pointer;
  transition: all 0.3s ease;
}

#menu-main > #menu-item-63 > a:focus,
#menu-main > #menu-item-63 > a:focus-visible,
#menu-main > #menu-item-63 > a:visited {
  background-color: var(--sd3) !important;
  color: white!important;
  border-color: transparent;
  outline: none;
}

#menu-main > #menu-item-63 > a:hover,
#menu-main > #menu-item-63 > a:active {
  background-color: white !important;
  border: 1.5px solid var(--sd2) !important;
  color: var(--sd2) !important;
}


/*/////////////////////////////////////////////////////////////////////////////////*/
/*STYLE DES FORMULAIRE*/

/* Reposition du Message erreur*/
.wpcf7-not-valid-tip{
    margin-top:-20px;
    margin-bottom:10px;
}
form input[type=text],
form input[type=email],
form input[type=tel],
form label,
form input,
form textarea {
    width: 100% !important;
	color: white!important;
}

form input[type=text],
form input[type=email],
form input[type=tel],
form textarea {
    width: 100% !important;
    border: solid 1px var(--sd1);
}

form input[type=submit] {
    display: inline-block !important
}

form label input,
form label textarea {
    margin-top: 15px !important;
    margin-bottom: 25px !important;
}

form * {
    font-size: 14px !important
}

input[type=text],
input[type=email],
input[type=tel],
input[type=password],
textarea,
select,
input[list] {
    width: 100%;
    padding: 12px 20px;
    margin-bottom: 20px !important;
    display: inline-block;
    border: 1px solid var(--sd1);
    border-radius: 3px;
    box-sizing: border-box;
}

/*/////////////////////////////////////////////////////////////////////////////////*/
/*SOCIAL*/

.sd_social{
	padding-bottom:1rem;
}

.sd_social i {
    color: white !important;
    transition: 0.3s;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: rgb(104, 104, 104);
    border-radius: 25px;
    width: 50px;
    height: 50px;
    text-align: center;
    margin-right: 5px;
    font-size: 25px;
}

.sd_social i:hover {
    transform: scale(1.3);
}

/*/////////////////////////////////////////////////////////////////////////////////*/
/*FOOTER*/
footer .sd_social_footer i {
    color: white !important;
    transition: 0.3s;
    padding-top: 6px;
    background-color: rgb(104, 104, 104);
    border-radius: 20px;
    width: 30px;
    height: 30px;
    text-align: center;
    margin-right: 5px;
}

footer .sd_social_footer i:hover {
    transform: scale(1.3);
}

/*/////////////////////////////////////////////////////////////////////////////////*/

nav .menu-item{
	letter-spacing: 2px!important;
}

#main .element_gal_multi_1_niveau h4{
  text-shadow: 0 4px 12px rgba(0, 0, 0, 0.35) !important;
}

.element_column_sans_fond h3,
.element_column_icone_souligne_51_18 h5,
.element_texte_titre h3,
.element_shortcode_53_3 h5,
.element_column_avec_trait h4,
.element_image_text_full_responsive h3,
.element_column_icone_souligne h3{
	padding-bottom: 15px!important;
}

#main > div.element_tarifs_list_51_9.element_tarifs_list > div > div > div:nth-child(5) > div > div > div > div.p-2.col-3.text-end,
#main > div.element_tarifs_list_51_9.element_tarifs_list > div > div > div:nth-child(4) > div > div > div > div.p-2.col-3.text-end,
footer .container.no-padding.pt-3 > div:nth-child(3){
  display: none !important;
}

#main > div.element_header_responsive h1 > span,
#main > div.element_header_responsive h2 > span{
  background: rgba(255,255,255,0.9) !important;
  padding: 6px 24px !important;
  display: inline-block !important;
}

#sortableelement_column_sans_fond_32_4 > div .sd_text_container > div{
  border: 1.5px solid white !important;
  padding: 4px 20px !important;
  display: inline-block !important;
}

.es-header-write-review-button-container button span span,
#eapps-instagram-feed-1 a {
    color: white !important;
}

.element_column_icone_souligne_32_9{
	z-index: 1!important;
}

#main .element_image_text_full_responsive_49_3_text > div,
#main .element_image_text_full_responsive_49_2_text > div{
  border-left: 1.5px solid var(--sd5) !important;
  padding-left: 20px;
}

.element_column_icone_souligne_55_27,
.element_column_avec_trait_53_23_container,
.es-carousel-inner,
.es-header-component-top{
  filter: drop-shadow(0 4px 8px rgba(0,0,0,0.10));
}

#sortableelement_column_avec_trait_53_23 > div:nth-child(1){ background: var(--sd1); }
#sortableelement_column_avec_trait_53_23 > div:nth-child(2){ background: var(--sd2); }
#sortableelement_column_avec_trait_53_23 > div:nth-child(3){ background: var(--sd3); }
#sortableelement_column_avec_trait_53_23 > div:nth-child(4){ background: var(--sd4); }
#sortableelement_column_avec_trait_53_23 > div:nth-child(5){ background: var(--sd1); }
#sortableelement_column_avec_trait_53_23 > div:nth-child(6){ background: var(--sd2); }

#sortableelement_column_avec_trait_53_23 > div:not(:nth-child(4)) :is(h4,p,a,span){
  color: white!important;
}

[class*="element_column_avec_trait_"] [class*="_item"]:not(:first-of-type) .sd_content{
  padding-left: 20px;
}

[class*="element_column_avec_trait_"] [class*="_item"]:first-of-type .sd_content{
  border-left: none !important;
}

#sortableelement_column_avec_trait_53_23 [class*="_item"]:not(:first-of-type) .sd_content{
  padding-left: 0 !important;
}

[class*="element_column_avec_trait_59_3"] [class*="_item"]:nth-child(4 of [class*="_item"]) .sd_content,
[class*="element_column_avec_trait_59_3"] [class*="_item"]:nth-child(7 of [class*="_item"]) .sd_content,
[class*="element_column_avec_trait_59_3"] [class*="_item"]:nth-child(10 of [class*="_item"]) .sd_content {
  border-left: revert !important;
  padding-left: revert !important;
}

#sortableelement_column_sans_fond_51_3{
  justify-content: center !important;
}

.element_shortcode_59_4 #wpcf7-f12-o1 {
  background: var(--sd2);
  padding: 50px 30px !important;
}


html #main > div.element_tarifs_list{
	padding-bottom:150px !important;
}

#main > div.element_tarifs_list > div{
	background-color: white;
	filter: drop-shadow(-4px 4px 15px rgba(0, 0, 0, 0.15));
	padding: 50px;
}

.sd_tarif_title {
  text-transform: uppercase;
  letter-spacing: 3px;
  font-weight: 500;
  color: var(--sd1);
  font-size: 17px!important;
}

.element_tarifs_list .col-3 > p:nth-child(1){
  font-family: 'Playfair Display', serif!important;
  font-weight: 500!important; 
  text-transform: uppercase!important;
  color: var(--sd3) !important;
}


/*/////////////////////////////////////////////////////////////////////////////////*/
/* Animation services*/

/* Images */
#sortableelement_column_sans_fond_32_4 img{
  display:block;
  width:100%;
  height:auto;
  transition:.3s ease;
  filter:brightness(90%);
}

#sortableelement_column_sans_fond_32_4 .element_column_sans_fond_32_4_item:hover img{
  filter:brightness(30%);
}

/* Flex */
	
#sortableelement_column_sans_fond_32_4 {
	display: flex;
	width: 100%;
	overflow: hidden;
}
	
#sortableelement_column_sans_fond_32_4 > div > .sd_content > .sd_image > span > .sd_image,
#sortableelement_column_sans_fond_32_4 > div > .sd_content > .sd_image{
	height:100%!important;
}
	
.element_column_sans_fond_32_4_item{
	flex:1!important;
	display:flex!important;
	transition: flex 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94)!important;
}
	
.element_column_sans_fond_32_4_item:hover{
	flex:1.25!important;
}
	
#sortableelement_column_sans_fond_32_4 .element_column_sans_fond_32_4_item:not(:hover){
	flex:0.875!important;
}

/*/////////////////////////////////////////////////////////////////////////////////*/
@media screen and (min-width: 1024px) {
	
	#home_nav:first-of-type.shadow .navbar-brand:first-of-type {
	  transform: scale(0.9);
	}

	#home_nav:first-of-type .navbar-brand:first-of-type {
	  transition: 0.3s;
	}
	
	body::after{
	  content: "";
	  position: fixed;
	  inset: 0;
	  z-index: -1;
	  pointer-events: none;
	  background: 
		url('https://cdn.solution-digitale.ch/wp-content/uploads/2026/01/Restaurant-LStadio-Logo-background.png')
		no-repeat center center;
	  background-size: 45% auto;
	}
	
	#sortableelement_column_sans_fond_49_4 > div:last-of-type {
	  width: calc((100% / 3 * 2) - 8px) !important;
	}

	#sortableelement_column_sans_fond_49_4 > div:last-of-type img {
	  aspect-ratio: 2000/982 !important;
	  width: 100%;
	  height: auto;
	}	
	
	h4 .text-small{
		font-size: 16px!important;
	}

	.element_column_icone_souligne_55_27 h5:not(:first-of-type) {
	  position: relative;
	  margin-top: 70px;
	  padding-top: 90px;
	}

	.element_column_icone_souligne_55_27 h5:not(:first-of-type)::before {
	  content: "";
	  position: absolute;
	  top: 0;
	  left: 50%;
	  transform: translateX(-50%);
	  width: 50%;
	  height: 1.5px;
	  background-color: var(--sd5);
	}

	.element_column_icone_souligne_55_27 h5,
	.element_column_icone_souligne_55_27 h4,
	.element_column_icone_souligne_55_27 p {
	  max-width: 70%;
	  margin-left: auto;
	  margin-right: auto;
	}
	
}	

/*/////////////////////////////////////////////////////////////////////////////////*/
@media screen and (min-width: 991px) {
    #menu-main {
        gap: 15px
    }
}

/*/////////////////////////////////////////////////////////////////////////////////*/
    #breadcrumbs {
        list-style: none;
        margin: 10px 0;
        overflow: hidden;
    }

    #breadcrumbs li {
        display: inline-block;
        vertical-align: middle;
        margin-right: 15px;
    }

    #breadcrumbs .separator {
        font-size: 18px;
        font-weight: 100;
        color: #ccc;
    }

    html.wp-toolbar {
        padding-top: 25px !important;
    }

    .adminmenuwrap {
        margin-top: 0 !important;
    }

    /* Header & Footer */
    @media screen and (max-width: 992px) {
        .nav-item {
            display: grid !important
        }

        footer > div > div > div > div > .navbar-nav > .nav-item {
            display: unset !important
        }

        .nav-item {
            display: flex !important
        }

        footer > div > div > div > div > .navbar-nav > .nav-item {
            display: unset !important
        }

        ul.dropdown-menu {
            top: 40px !important
        }

        /* Ajout d'une marge en dessus des options admin si menu sticky top */
        #main > div > div.builder_menu.d-flex {
            z-index: 99999 !important;
        }

        .sdg_popup_template {
            z-index: 999999 !important;
        }	
	}