/*
 Theme Name:   Luxury Child
 Theme URI:    https://example.com/luxury-child/
 Description:  Thème enfant pour le thème Luxury
 Author:       SF Team
 Author URI:   https://seriousfactory.com
 Template:     luxury-wp
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Text Domain:  luxury-wp-child
*/

/* Ajoutez votre CSS personnalisé ici */

.main-content p > a,  .main-content li > a{
color: #477ba7 !important
}

.offcanvas-user {
  display: none;
}

.page-breadcrumb,.heading-wrap {
  text-align: left !important;
}

h1,h2,h3,h4,h5,h6,p,li,a {
        font-family: "Open Sans", sans-serif;
        font-weight: lighter;
}

/* Police par défaut */
body {
  font-family: 'Open Sans', sans-serif;
  font-size: 1rem;
  line-height: 1.6;
  color: #333333;
}

/* Titres */
h1, h2, h3, h4, h5, h6 {
  font-weight: 600;
  margin-top: 0;

}

h1 {
  font-size: 2rem !important;
  line-height: 1.2;
  margin-bottom: 1.5rem;
  letter-spacing: -0.01em;
}

/* H2 */
h2 {
  font-size: 1.75rem !important;
  line-height: 1.3;
  margin-bottom: 1.25rem;
}

/* H3 */
h3 {
  font-size: 1.5rem !important;
  line-height: 1.4;
  margin-bottom: 1rem;
}

/* H4 */
h4 {
  font-size: 1.25rem !important;
  line-height: 1.4;
  margin-bottom: 0.75rem;
}

/* H5 */
h5 {
  font-size: 1.125rem !important;
  line-height: 1.5;
  margin-bottom: 0.5rem;
}

/* H6 */
h6 {
  font-size: 1rem !important;
  line-height: 1.5;
  margin-bottom: 0.25rem;
  text-transform: none;
}

/* Responsive (Mobile) */
@media (max-width: 768px) {
  h1 { font-size: 1.75rem !important; }
  h2 { font-size: 1.5rem !important; }
  h3 { font-size: 1.25rem !important; }
  h4 { font-size: 1.125rem !important; }
  h5 { font-size: 1rem !important; }
  h6 { font-size: 0.875rem !important; }
}

li a[aria-current="page"] {
padding:6px 10px !important;

}


:where(.wp-site-blocks *:focus){outline-width:2px;outline-style:solid}
em {
  display:block;
}
li a[aria-current="page"]  {
  background: black;
  color: white !important;
  padding: 0 10px;
  border-radius: 5px;
}
.wp-block-post-featured-image img {
  border-radius:unset;
}

#header nav a,
#header nav a:hover {
  color: #fff;
}

#header .bold {
  font-weight: 900 !important;
}

header.nav-header {
  line-height: 1.5;
  font-size: 0.9rem;
  height: 5rem;
  position: sticky;
  z-index: 100;
  top: 0;
  background: #1d3244 !important;
}

#header {
  font-family: "Open Sans", sans-serif;
  font-weight: lighter;
  max-width: 100%;
  justify-content:center;
}

#header nav {
  line-height: 1.5;
  height: 100%;
  width: max-content;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: auto;
  margin-right: auto;
}

#header nav ul {
  list-style-type: none;
  margin: unset;
}

#header nav .nav-link {
  height: 100%;
  padding: 0 1rem;
  display: flex;
  align-items: center;
  width: auto;
}

#header nav a,
.nav-link span {
  color: #fff;
  text-decoration: none;
  width: auto;
  display: flex;
}

#header nav .nav-link .submenu {
  background: #1d3244;
  position: absolute;
  width: max-content;
  top: 5rem;
  max-height: 1000px !important;
  padding: 1rem 2rem 1rem 1rem !important;
  border-bottom-left-radius: 1rem;
  border-bottom-right-radius: 1rem;
  margin-left: 0 !important;
  display: none;
  font-weight:500;
}

.submenu > li.nav-link {
  line-height: 1.5;
  font-size: .9rem;
  list-style-type: none;
  box-sizing: border-box;
  margin: 0;
  position: relative;
  font-weight: 400;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 0 1rem 0 !important;
}

#header .product-link-subtitle {
  font-weight: 200 !important;
  margin-bottom: 1rem;
  line-height: 1.4;
  font-size: small;
}

#header nav .nav-link:hover > .submenu {
  display: block;
  opacity: 1;
}

#header .submenu li a {
  display: flex;
  flex-direction: column;
  align-items: start;
  width: auto;
  font-weight: bold;
}

#header  .menu {
  display: flex;
  height: 100%;
  position: relative;
  margin: 0;
  padding-inline-start: 40px;
}

.mb-3,
.my-3 {
  margin-bottom: 1rem !important;
}

.mt-3,
.my-3 {
  margin-top: 1rem !important;
}

.mr-2,
.mx-2 {
  margin-right: 0.5rem !important;
}

.ml-4,
.mx-4 {
  margin-left: 1.5rem !important;
}

.h-100 {
  height: 100% !important;
}

.align-center {
  align-items: center !important;
}

.button {
  color: #fff;
}

.justify-center {
  justify-content: center;
}

.flex {
  display: flex;
}

.btn-rainbow {
  transition: all .3s;
  background-size: 100%;
  text-shadow: 0 0 3px #363636;
  background: linear-gradient(90deg, rgba(255, 207, 0, 1) 0%, rgba(255, 27, 0, 1) 100%) center;
}

#header .button,
#header button {
  font-size: 1rem;
  font-weight: 500!important;
  text-decoration: none!important;
  text-decoration-thickness: 0;
  border-radius: .6rem;
  border: none;
  cursor: pointer;
  color: #fff;
  transition: background-color .2s;
}

#header .btn-outline {
  border: 1px solid #fff;
  background: transparent;
  transition: border-color .2s;
}

#header .btn-outline:hover {
  border-color: #F7A01A;
  box-shadow: 0 0 10px 0 #F7A01A !important;
}

#header .nav-end {
  right: 10px;
  display: flex;
  align-items: center;
}

.toggle-animated-inner {
  content: "";
  width: 30px;
  height: 3px;
  right: 5px;
  background-color: #536779 !important;
  position: absolute;
  transition-property: transform;
  transition-duration: 0.15s;
  transition-timing-function: ease;
  border: 0 !important;
}

.toggle-animated-inner:before {
  content: "";
  display: block;
  width: 30px;
  height: 3px;
  background-color: #536779 !important;
  border-radius: 20px !important;
  position: absolute;
  top: 7px;
  transition-property: transform, opacity;
  transition-timing-function: ease;
  transition-duration: 0.15s;
}

.toggle-animated-inner:after {
  content: "";
  display: block;
  width: 30px;
  height: 3px;
  background-color: #536779 !important;
  border-radius: 20px !important;
  position: absolute;
  transition-property: transform;
  transition-duration: 0.15s;
  transition-timing-function: ease;
  top: 14px;
}

.toggle-open .toggle-animated-inner {
  transform: translate3d(0, 7px, 0) rotate(45deg);
}

.toggle-animated {
  display: none;
  padding: 0;
  border-radius: 0;
  cursor: pointer;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  align-self: center;
  background: none !important;
  border: 0 !important;
}

.toggle-animated-box {
  width: 40px;
  height: 17px;
  display: inline-block;
  position: relative;
  outline: 0;
}

.toggle-open .toggle-animated-inner:before {
  transform: rotate(-45deg) translate3d(-5.71429px, -6px, 0) !important;
  opacity: 0 !important;
}

.toggle-open .toggle-animated-inner:after {
  transform: translate3d(0, -14px, 0) rotate(-90deg) !important;
}

#header .submenu.right {
  right: 10% !important;
}

.nav-link.active > span, .nav-link ul li a.active {
  cursor: default;
  font-weight: 700 !important;
  text-decoration: underline !important;
  text-decoration-thickness: 2px !important;
  text-underline-offset: 0.3rem !important;
  text-decoration-color: #f7a01a !important;
}

.menu-title::after {
  border-style: solid;
  border-width: 0.15em 0.15em 0 0;
  content: "";
  height: 0.6em;
  right: -0.4rem;
  position: relative;
  width: 0.6em;
  transform: rotate(135deg);
  margin-top: 0;
  transition: margin-top 100ms;
}

.submenu-title::after {
  border-style: solid;
  border-width: 0.15em 0.15em 0 0;
  content: "";
  height: 0.6em;
  top: 0.1rem;
  right: -0.4rem;
  position: relative;
  width: 0.6em;
  transform: rotate(45deg);
  margin-top: 0;
  transition: margin-top 100ms;
}

.submenu-title.current,
.menu-title.current {
  font-weight: bold !important;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.3rem;
  text-decoration-color: orange;
}

nav a.router-link-active span {
  cursor: default;
}

.subsubmenu {
  background: #1d3244;
  opacity: 0;
  position: absolute;
  display: flex;
  flex-direction: column;
  width: max-content;
  left: 100%;
  max-height: 0!important;
  max-width: 0!important;
  overflow: hidden;
  top: -1rem;
}

nav .nav-link:hover > .submenu {
  opacity: 1;
  max-height: 1000px !important;
  padding-left: 2rem !important;
  padding-right: 2rem !important;
  padding-bottom: 1rem !important;
  padding-top: 1rem !important;
  border-bottom-left-radius: 1rem;
  border-bottom-right-radius: 1rem;
  overflow: unset;
}

nav .nav-link:hover > .subsubmenu {
  opacity: 1;
  max-height: 1000px !important;
  max-width: 1000px !important;
  padding-left: 2rem !important;
  padding-right: 2rem !important;
  padding-bottom: 1rem !important;
  padding-top: 1rem !important;
  border-top-right-radius-radius: 1rem;
  border-bottom-right-radius: 1rem;
}
@media (max-width: 750px) {
  .language-switcher {
    display: none;
  }
  .search-input, .search-button {display: block !important;width: auto !important; align-self: center; margin-top: 10px !important;}

  .search-content > form {
    flex-direction: column;
  }
  #footer  a {
    font-size: 0.8rem;
    padding: 0.25rem;
    color: white;
  }
}


@media (max-width: 1024px) {
  .column {
    background: #1D3244 !important;
    width: 60%;
    margin: 0 auto;
    position: relative;
    padding-top: 10px;
  }

  .column a {
    display: block;
  }
  #header nav {
    justify-content: space-between !important;
    width: 100% !important;
    padding-left: 1rem;
    padding-right: 1rem;
    font-size: 1rem;
  }

  .toggle-open,
  .toggle-animated {
    display: flex !important;
  }

  #header .menu {
    background: #1d3244;
    display: none;
    flex-direction: column;
    position: absolute;
    height: calc(100vh - 3rem);
    overflow-y: auto;
    width: 100%;
    left: 0;
    top: 5rem;
    padding-inline-start: 0;
  }

  #header .menu .nav-link,
  #header .menu .submenu {
    flex-direction: column !important;
    position: relative !important;
    padding: 0 !important;
    top: 0 !important;
  }

  #header .menu .nav-link {
    height: auto !important;
    padding-bottom: 1.5rem !important;
    padding-top: 1.5rem !important;
    border-bottom: 1px solid;
    padding-left: 1rem !important;
  }

  .submenu.right {
    left: 50%;
    transform: translateX(-50%);
  }

  .subsubmenu {
    position: unset !important;
  }
}

.search-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(29, 50, 68, 0.95);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 1000;
}

.close-search {
  position: absolute !important;
  padding: 0 2rem !important;
  top: 0;
  right: 0;
  background: none;
  border: none;
  font-size: 5rem !important;
  color: white;
  cursor: pointer;
}

.search-content {
  display: flex;
  flex-direction: row;
  align-items: center;
  width: 80%;
  max-width: 600px;
}

.search-input {
  width: 60%;
  padding: 1rem;
  font-size: 1.5rem;
  flex: 1;
  border: 1px solid #ccc;
  border-radius: 4px;
  color: #536779 !important;
}

.search-button {
  margin-left: 0.5rem; /* Add margin to create space between input and button */
  font-size: 1.2rem;
  background-color: darkorange;
  color: white;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  text-decoration: none;
  text-align: center;
}
.search-content > form {
  display: flex;
  width: 80vw;
}

.footer {
  background: #1D3244 !important;
  color: #fff;
  padding-top: 1rem;
  padding-bottom: 1rem;
  margin-top: auto;
  margin-left: 0 !important;
  position: relative;
}

.footer * {
  background: #1D3244 !important;
}
.search-menu {
  cursor:pointer;
  line-height: 1rem;
  padding-right: 15px;
}
footer div a {
  color: #fff !important;
  text-decoration: none;
}
@media (min-width: 750px) {
  .navbar-container, .topbar{
    display: none;
  }
}
@media (min-width: 1024px) {
  .navbar-container, .topbar{
    display: none;
  }

  #header .button,
  #header button {
    padding: 12px 30px;
  }

  .footer {
    width:100%;
    min-height: 10rem;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .footer div {
    margin: 0 1rem;
  }

  #footer  a {
    font-size: 0.8rem;
  }
  .footer  {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #1D3244;
    color: #fff;
    padding-top: 1rem;
    padding-bottom: 1rem;
    width: 100%;
    margin-top: auto;
    bottom: 0;
  }
  .column {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding-right: 2rem;
  }
}
.caroufredsel-wrap{
  max-height:500px;
}
