/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/

@font-face {
    font-family: 'Wire One';
    src: url('https://masdugrandsede.com/wp-content/themes/generatepress_child/fonts/WireOne-Regular.woff2') format('woff2'),
        url('https://masdugrandsede.com/wp-content/themes/generatepress_child/fonts/WireOne-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Aaux Pro';
    src: url('https://masdugrandsede.com/wp-content/themes/generatepress_child/fonts/AauxProRegular.woff2') format('woff2'),
        url('https://masdugrandsede.com/wp-content/themes/generatepress_child/fonts/AauxProRegular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Grenale Slab Cond';
    src: url('https://masdugrandsede.com/wp-content/themes/generatepress_child/fonts/GrnD-ConThi.woff2') format('woff2'),
        url('https://masdugrandsede.com/wp-content/themes/generatepress_child/fonts/GrnD-ConThi.woff') format('woff');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Aaux Pro';
    src: url('https://masdugrandsede.com/wp-content/themes/generatepress_child/fonts/AauxProMedium.woff2') format('woff2'),
        url('https://masdugrandsede.com/wp-content/themes/generatepress_child/fonts/AauxProMedium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Aaux Pro';
    src: url('https://masdugrandsede.com/wp-content/themes/generatepress_child/fonts/AauxProBold.woff2') format('woff2'),
        url('https://masdugrandsede.com/wp-content/themes/generatepress_child/fonts/AauxProBold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

h1{
	font-family: "Grenale Slab Cond";
	font-size: 48px;
}

h2, h3{
	font-family: "Grenale Slab Cond";
	font-size: 38px;
}

p{
	font-family: 'Aaux Pro';
	font-size: 18px;
	letter-spacing: -0.2px;
}


.wire{
	font-family: "Wire One";
	letter-spacing: 0px !important;
}

.pl{
	font-family: 'Aaux Pro';
	font-size: 20px;
}

strong{
	font-weight: 500 !important;
}

mark {
    font-size: 30px !important;
    line-height: 2px !important;
}

/* NAV */

@media (max-width: 768px) {
	.site-header .header-image {
		width: 260px !important;
	}
}

.gb-element-b0f74434 {
    order: 10;
}

.site-header{
	background-color: transparent !important;
}

.inside-navigation.grid-container a {
    font-family: "Wire One";
    font-size: 30px;
    font-weight: 400;
	line-height: 1.5em !important;
}

.inside-header{
	padding: 0px 40px 20px 40px !important;
}

.rs-icons svg{
	font-size: 18px !important;	
}

li#menu-item-16:after, li#menu-item-17:after {
    content: "";
    width: 30px;
    border-bottom: 0.5px solid var(--contrast);
    display: flex;
    text-align: center;
	margin: auto;
}
/* Carousel */

.carousel{
	position: relative;
}

.carousel { position: relative; display:grid; grid-template-columns:auto 1fr auto; align-items:center; }
.carousel-viewport { overflow:hidden; touch-action: pan-y; }
.carousel-track { display:flex; gap:20px; will-change: transform; }
.carousel-slide { flex: 0 0 auto; }

.carousel.is-3up .carousel-slide { width: calc((100% - (20px * 2)) / 3); }

@media (max-width: 1023px){
  .carousel .carousel-slide { width: 100%; }
}

.carousel-left, .carousel-right{
	width:44px; height:44px; border-radius:999px;
	background:transparent; cursor:pointer;
 	font-size:28px; line-height:1; display:grid; place-items:center; color: var(--contrast);
	position: absolute;
	bottom: 5px;
}

.carousel-left{
	right: 60px;
}

.carousel-right{
	right: 20px;
}

.carousel-left:hover, .carousel-right:hover, .carousel-left:focus, .carousel-right:focus{
	background:transparent !important;
	color: var(--accent);
}
.carousel-slide img{ 
	width:100%; 
	display:block;
}

.carousel {
    border-top: 1px solid var(--contrast);
    border-bottom: 1px solid var(--contrast);
    padding: 40px 0px 45px 0px;
}

.carousel {
    margin: 10px;
}

/* 2 par écran en 60/40 */
.carousel.is-2up .carousel-track { gap: 20px; }

.carousel.is-2up .carousel-slide{
  width: calc((100% - 20px) * 0.4); /* par défaut = 40% */
}

.carousel.is-2up .carousel-slide:first-child{
  width: calc((100% - 20px) * 0.6); /* le 1er visible = 60% */
}

.carousel.is-2up .carousel-slide {
	min-height: 500px;
	min-width: 700px;
}

@media (max-width: 768px) {
	.carousel .carousel-slide{
		width: 100% !important;
	}
	.carousel.is-2up .carousel-slide{
		min-width: 300px !important;
	}
	.carousel-track{
		gap: 0px !important;
	}
}


/* .carousel.is-2up .carousel-slide { width: calc((100% - (20px * 1)) / 2); }*/

.carousel-left:disabled,
.carousel-right:disabled{
  opacity: 0.35;
  cursor: not-allowed;
  pointer-events: none;
  filter: grayscale(100%);
}

/* Reveal text */


.split-char {
  opacity: 0.1;
  display: inline-block;
  white-space: pre;
  position: relative;
}


.split-line {
  display: block;
  overflow: hidden;
  position: relative;
}

.split-line__inner {
  display: inline-block;
  will-change: transform;
}

/* Macaron Réservation */

.reservation {
    position: fixed;
    bottom: 30px;
    right: 30px;
}
.img-reservation {
	width: 140px;
}

img.icon-reservation {
    position: absolute;
    top: 45px;
    left: 42px;
    height: 45px;
}

.img-reservation {
  animation: rotation 15s linear infinite;
  animation-play-state: running;
  transition: animation-duration 0.6s ease;
}

/* Animation de rotation */
@keyframes rotation {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

/* Quand on hover → on ralentit */
.img-reservation.hover-slow {
  transform: scale(1.2);
}

@media (max-width: 768px) {
	.reservation {
		position: fixed;
		bottom: 10px;
		right: 10px;
	}
	
	.img-reservation {
		width: 100px;
	}
	
	img.icon-reservation {
		position: absolute;
        top: 34px;
        left: 30px;
		height: 35px;
	}

}
