@charset "UTF-8";

.highlight{}
.highlight .inner{}


/* SECTION REFERENCES */
#carrousel {position:relative;background:var(--bg-color-third);padding:var(--padding-large) 0;color:#fff}
#carrousel .swiper-slide,#carrousel .swiper-slide img,.activity-details{border-radius: 25px}

@media only screen and (max-width: 768px){
	.highlight .inner{max-width:100%;padding:0 1rem}
	#carrousel {padding:4rem 1rem}
}

.activity-item{position:relative;overflow:hidden}
.activity-image img{display:block;width:100%;height:auto}
.activity-details {position:absolute;left:0;bottom:0;width:100%;padding:20px 20px 40px 20px;color:#fff;background:linear-gradient(to top, rgba(0,0,0,0.80), rgba(0,0,0,0));transform:translateY(0);transition: transform .3s ease}
.activity-details h4{font-size: 1.325rem; margin:0}

#carrousel .swiper-button-prev,#carrousel .swiper-button-next{color:#fff;cursor:pointer;background:#000;width:40px;height:40px;border-radius:50%;padding:10px;opacity:.6}
#carrousel .swiper-button-prev:hover,#carrousel .swiper-button-next:hover{opacity:1}

.carrousel-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:3rem;align-items:center}
.carrousel-stage{min-width:0}

#swiper-carrousel img{display:block;width:100%;height:auto}

/* =========================
   MENU DESKTOP
========================= */
.carrousel-menu{position:relative;display:flex;flex-direction:column;gap:.5rem;padding-left:1.25rem}
.carrousel-menu::before{content:"";position:absolute;left:0;top:0;bottom:0;width:1px;background:rgba(0,0,0,.12)}
.menu-indicator{position:absolute;left:0;top:0;width:4px;height:48px;border-radius:999px;background:var(--accent);opacity:.9;transition:transform .35s ease,height .35s ease}
.menu-item{color:#fff;display:flex;align-items:center;gap:.8rem;border:0;background:none;padding:.7rem 0;text-align:left;cursor:pointer;opacity:.45;transform:translateX(0);transition:opacity .28s ease,transform .28s ease}
.menu-item .index{font-size:1rem;opacity:.7}

.menu-item .label{font-size:1.05rem;line-height:1.25;transition:opacity .28s ease,transform .28s ease}
.menu-item:hover{opacity:.7;transform:translateX(4px)}
.menu-item:hover .label{transform:translateX(2px)}
.menu-item.is-active{opacity:1;transform:translateX(10px)}

#swiper-carrousel .swiper-slide{opacity:.55;transform:scale(.94);ransition:transform .4s ease, opacity .4s ease}
#swiper-carrousel .swiper-slide-active{opacity: 1;transform: scale(1)}
#swiper-carrousel .swiper-slide h3{opacity:0;transition:opacity .4s ease}
#swiper-carrousel .swiper-slide-active h3{opacity:1}

/* =========================
   MOBILE NAV
========================= */
.carrousel-mobile-nav{display:none;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.carrousel-mobile-title{font-size:1rem;font-weight:700;line-height:1.2;opacity:0;transform:translateY(6px);transition:opacity .28s ease,transform .28s ease}
.carrousel-mobile-title.is-visible{opacity:1;transform:translateY(0)}
.carrousel-mobile-arrows{display:flex;align-items:center;gap:.5rem}

/* =========================
   SWIPER BUTTONS
========================= */
.carrousel-stage .swiper-button-prev,.carrousel-stage .swiper-button-next{position:relative;inset:auto;width:42px;height:42px;margin:0}
.carrousel-stage .swiper-button-prev::after,.carrousel-stage .swiper-button-next::after{font-size:16px}
.swiper-button-desktop{position:absolute !important;top:50% !important;transform:translateY(-50%);z-index:10}
.swiper-button-desktop.swiper-button-prev{left:1rem}
.swiper-button-desktop.swiper-button-next{right:1rem}

/* =========================
   RESPONSIVE
========================= */
@media (max-width: 979px){
  .carrousel-layout{grid-template-columns:1fr}
  .carrousel-menu{display:none}
  .carrousel-mobile-nav{display:flex}
  .swiper-button-desktop{display:none !important}
  #swiper-carrousel .swiper-pagination{margin-top:1rem}
}



.slide-media{position: relative}
.slide-text{position:absolute;bottom:0;width:100%; height: 100%;background:rgba(0,0,0,.12)}
.slide-text{font-family:dunbar-low,sans-serif;font-weight:200;font-style: normal}

.activity-item{position:relative;overflow:hidden}
.activity-image img{display:block;width:100%;height:auto}
.activity-details {position:absolute;left:0;bottom:0;width:100%;padding:20px 20px 40px 20px;color:#fff;background:linear-gradient(to top, rgba(0,0,0,0.80), rgba(0,0,0,0))}
.activity-details h3{text-transform: inherit}

/*OK*/
.slide-content {display:grid;grid-template-columns:1.8fr 2fr;gap:3rem;align-items:center;height:100%;}
.slide-image{}
.slide-image img{width:100%;height:auto;display:block}
.slide-info{}
.slide-label{text-transform:uppercase;display:block;font-weight:700;letter-spacing:.08em;margin-bottom:1rem;color:var(--accent)}
.slide-info h3 {font-family:var(--dunbar-tall);font-weight:300;font-style:italic;max-width: 14ch; font-size:3rem;margin-bottom:1rem}
.slide-info p {margin-bottom:1rem}
a.slide-link{text-decoration:none;border-bottom: 1px solid currentColor;opacity:.8}
a.slide-link:hover{opacity:1}

@media (max-width: 980px) {
	.carrousel-layout{grid-template-columns:1fr}
    .slide-content{grid-template-columns:1fr;gap:1.5rem}
    .slide-image img{height:300px}
}

/*grid-main*/
.highlight{padding: var(--padding-large) 0;}
.grid-media{border-radius: 25px;aspect-ratio: 4 / 5;overflow: hidden;box-shadow: var(--shadow)}
.grid-media img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.grid-media{position:relative}
.grid-media .tag{text-transform:uppercase;position:absolute;top:-8px;right:5%;width:auto;padding:10px 16px;border-bottom-left-radius:20px;border-bottom-right-radius:20px;color:#fff;font-size:10px;z-index:1;background: red}
@media (max-width: 768px) {
	.grid-media{aspect-ratio:1/1}
	.grid-media img{object-position:50% 100%}
}

.highlight h2{font-size: 3rem;font-weight:200;font-style:normal; line-height: 1.1}
.highlight h2 em{display:block}
.highlight-item + .highlight-item{margin-top: var(--space-xl)}
.highlight-item p{margin-bottom: 1rem}

/*DIETETIQUE*/
.pricing-header {max-width:760px;margin:0 auto 36px;text-align:center}
.pricing-intro {max-width:620px;margin:16px auto 0;font-size:clamp(1rem, 1.4vw, 1.08rem)}

.dietetic-grid {display: grid;grid-template-columns: 1fr 130px 1fr;gap: 3rem;align-items:center;margin-bottom:var(--space-xl)}
.dietetic-logo{text-align:center}
.dietetic-logo img{width:100%;height:auto;display:block;border-radius:0;box-shadow:none; background: transparent}
.dietetic-grid .left{justify-self:end}
.dietetic-grid .right{justify-self:start}

@media (max-width: 768px) {
	.dietetic-grid{grid-template-columns:1fr;gap:1rem;text-align:center}
	.dietetic-text{text-align:left}
	.dietetic-logo{order:-1;margin-bottom:1rem;text-align:center}
	.dietetic-logo img{width:60%;height:auto;margin:0 auto}
}
.pricing-grid{display:grid;gap:22px}
.pricing-card{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;background:rgba(255,255,255,.9);backdrop-filter:blur(10px);border: 1px solid rgba(255,255,255,.55);border-radius: var(--radius);padding:3rem 1rem;box-shadow: var(--shadow);transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition);will-change: transform, box-shadow}
.pricing-card:hover {transform: translateY(-4px);box-shadow: var(--shadow-hover);border-color:rgba(201,111,60,.16)}
.pricing-card-feat{position:relative}
.pricing-card .popular{text-transform:uppercase;position:absolute;top:-8px;right:5%;width:auto;padding:10px 16px;border-bottom-left-radius:20px;border-bottom-right-radius:20px;color:#fff;font-size:10px;z-index:1}
.pricing-card .popular_red{background-color:#eb3b5a}
.pricing-card .popular_accent{background-color:var(--accent) }
.pricing-card .popular_green{background-color:#4CAF50}
.pricing-card--unit{text-align:center}
.pricing-card-head {margin-bottom:.325rem;text-align:center}
.pricing-card-title {font-family:dunbar-tall,sans-serif;font-weight: 300;font-style: italic;font-size:2rem;line-height:1.2;margin:0;text-align:center;color:inherit;}
.pricing-card-subtitle,.pricing-unit-label{margin:.3125rem 0 1rem;font-size:.97rem;text-align: center}
.pricing-unit-price{margin:0;font-size: clamp(2rem, 3vw, 2.6rem);line-height:1;letter-spacing:-.04em;font-weight:800;color:var(--accent)}
.pricing-unit-note {margin:10px 0 0;font-size:.92rem}

.pricing-list{padding:0;}
.pricing-row{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:5px 0;border-top:1px solid rgba(43,36,31,.1)}
.pricing-row:first-child{border-top:0;padding-top:0;}
.pricing-duration{font-weight:700;font-size:1rem;white-space:nowrap}
.pricing-detail{font-size:.85rem;white-space:nowrap}
.pricing-price{font-size:clamp(1.35rem, 2vw, 1.7rem);line-height:1;font-weight:800;letter-spacing:-.02em;white-space:nowrap;color:var(--accent)}
.footnote{margin:1rem auto;text-align:center;display:block;overflow:hidden}
p.pricing-footnote,p.small{max-width:70ch;margin:0 auto;text-align:center;font-size:.85rem}

.separator {margin:1rem auto;text-align:center;display:block;overflow:hidden}
.separator span{position:relative;display:inline-block;}
.separator span:before,.separator span:after{position:absolute;top:50%;width:1000px;height:1px;background:var(--text-color);content:""}
.separator span:before {left:100%;margin-left:10px}
.separator span:after {right:100%;margin-right:10px}



@media (min-width: 768px) {
	.pricing-grid{grid-template-columns:1fr 1fr 1fr;align-items:stretch}
}
@media (max-width: 580px) {
	.pricing-row{align-items:flex-start}
	.pricing-meta{display:block}
	.pricing-detail{display:inline}
	.pricing-badge{display:inline-flex;margin-bottom:6px}
}
@media (prefers-reduced-motion: reduce) {
	.pricing-card,.pricing-row,.pricing-row--featured::before,.pricing-badge{transition:none}
	.pricing-card:hover,.pricing-card:hover .pricing-row--featured,.pricing-card:hover .pricing-badge{transform:none}
}

.menu-header{margin-top: var(--space-2xl)}
.menu-header h2{font-size:3rem;font-weight: 200;font-style: italic;margin:0 0 .325em;padding:0;line-height:1.2}

.week-nav{display:flex;flex-wrap:wrap;gap:10px;margin:1rem 0}
.week-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 1rem;text-decoration:none;background:#fff;font-weight:700;font-size:.95rem;transition:transform .25s ease, border-color .25s ease, color .25s ease, background-color .25s ease;border-radius: 999px;border: 1px solid rgba(47,42,38,0.08)}
.week-nav a:hover,.week-nav a:focus-visible {transform:translateY(-2px);background:#fff}
.week-link-1{color:var(--week1-accent)}
.week-link-2{color:var(--week2-accent)}
.week-link-3{color:var(--week3-accent)}
.week-link-4{color:VAR(--accent)}
/*Ligne Semaine*/
.week{border-radius:24px;overflow:clip;border:1px solid rgba(47,42,38,0.08);background:rgba(255,255,255,0.72);scroll-margin-top:24px;box-shadow:var(--shadow)}
.week + .week{margin-top:14px}
.week.is-open{box-shadow: 0 20px 36px rgba(34, 28, 23, 0.05)}/*A VOIR*/
.week-toggle{cursor:pointer;position:relative;width:100%;display:block;text-align:left;padding:22px 62px 22px 24px;border:0;background:transparent;transition:background-color .25s ease;font:inherit;color:inherit}
.week-toggle:active{transform:scale(0.98)}
.week-toggle:hover{background:rgba(255,255,255,0.28)}
.week-toggle::after{content:"+";position:absolute;right:22px;top:50%;transform:translateY(-50%);width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,0.68);border:1px solid rgba(47,42,38,0.08);font-size:1.2rem;line-height:1;transition:transform .25s ease}
.week.is-open .week-toggle{background:rgba(255,255,255,0.5)}
.week.is-open .week-toggle::after {content:"–"}
.week-content{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .35s ease}
.week.is-open .week-content{grid-template-rows:1fr;opacity:1}
.week-content > .week-inner{overflow: hidden;}

.week-head{display:flex;flex-wrap:wrap;align-items:end;gap:10px 16px}
.week-head h3{font-size:clamp(1.35rem, 2vw, 1.9rem)}
.week-badge{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius: 999px;font-size: .8rem;font-weight: 700;letter-spacing: .08em;text-transform: uppercase;background: rgba(255,255,255,0.55);border: 1px solid rgba(47,42,38,0.08)}
.week-subtitle {margin-top: 6px;color:inherit;font-size: .96rem}

.week-inner{padding:0 20px 20px;}
.week-panels{display:flex;flex-direction:column;gap:18px}
.service-panel{background:rgba(255,255,255,0.76);border:1px solid rgba(47,42,38,.1);border-radius:20px;overflow:hidden;min-width:0}
.service-panel + .service-panel{margin-top:4px}

.service-head{padding:18px 18px 16px;border-bottom:1px solid rgba(47,42,38,0.08);background:rgba(255,255,255,0.36)}
.service-head h4{font-size:1.12rem;letter-spacing:.02em;text-transform:uppercase}

.day-head{display: grid;grid-template-columns: 115px minmax(0, 1fr) minmax(0, 1.4fr) minmax(0, 1fr);gap:0;padding:0 12px;color:rgba(47,42,38,.52);font-size:.82rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.day-head span{padding:10px}
.days{padding:0 12px 10px;display:grid;gap:0}

.day{display:grid;grid-template-columns:115px minmax(0, 1fr) minmax(0, 1.4fr) minmax(0, 1fr);gap:0;padding:0;border-radius:0;background:transparent;border:0;border-bottom:1px solid rgba(47,42,38,.05);transition:background-color .22s ease, border-color .22s ease}
.day:last-child{border-bottom:0}
.day:hover{transform:none}

.day h5,.day .dish{margin:0}
.day h5{padding: 7px 10px 0 7px;font-size:.98rem;font-weight:700;letter-spacing:0;white-space:nowrap}
.dish{position:relative;padding:7px 10px;font-size:.95rem;line-height:1.52}
.dish.main{font-weight:700}
.dish.entry,.dish.dessert{color:inherit}
.dish + .dish{margin-top:0}
.dish strong{color:inherit;display:none}
/*Semaine*/
.week-1,.week-2,.week-2{background:#fff}
.week-1 .day-head{background: rgba(127,160,137,0.08)}
.week-1 .week-toggle{border-left:4px solid var(--week1-accent)}
.week-1 .week-badge,.week-1 .week-head h3,.week-nav .week-link-1:hover,.week-nav .week-link-1:focus-visible {color: var(--week1-accent);}
.week-1 .day:hover {background: rgba(127,160,137,0.08);border-color: rgba(127,160,137,0.18)}

.week-2 .day-head{background: rgba(182,148,116,0.08)}
.week-2 .week-toggle{border-left:4px solid var(--week2-accent)}
.week-2 .week-badge,.week-2 .week-head h3,.week-nav .week-link-2:hover,.week-nav .week-link-2:focus-visible {color: var(--week2-accent);}
.week-2 .day:hover {background: rgba(182,148,116,0.08);border-color: rgba(182,148,116,0.18)}

.week-3 .day-head{background: rgba(193,139,149,0.08)}
.week-3 .week-toggle {border-left: 4px solid var(--week3-accent)}
.week-3 .week-badge,.week-3 .week-head h3,.week-nav .week-link-3:hover,.week-nav .week-link-3:focus-visible {color: var(--week3-accent);}
.week-3 .day:hover {background: rgba(193,139,149,0.08);border-color: rgba(193,139,149,0.18)}

@media (max-width: 1024px){
	.practical-grid,.pricing-grid{grid-template-columns:1fr 1fr}
	.pricing-grid{grid-template-columns:repeat(2, minmax(0, 1fr))}
	.practical-grid{grid-template-columns:1fr}
}
@media (max-width: 720px) {
	.pricing,.menus,.practical{border-radius:var(--radius)}
	.pricing-grid{grid-template-columns:1fr}
	.pricing,.menus,.practical{padding:20px}
	.week-toggle{padding:18px 54px 18px 18px}
	.week-inner{padding:0 14px 14px}
	.service-head{padding:16px}
	.day-head{display:none}
	.days{padding:0 8px 8px}
	.day{grid-template-columns:1fr;padding:12px 0}
	.day h5{padding:0 12px 8px}
	.day .dish{padding:4px 12px 4px 24px}
	.dish{font-size:.96rem}
	.dish::before{content:"";position:absolute;left:12px;top:14px;width:6px;height:6px;border-radius:50%;background:rgba(47,42,38,0.18)}
    .week-1 .dish.entry::before{background:color-mix(in srgb, var(--week1-accent) 45%, white 55%); }
    .week-1 .dish.main::before{background: ar(--week1-accent); }
    .week-1 .dish.dessert::before{background:color-mix(in srgb, var(--week1-accent) 72%, white 28%); }
    .week-2 .dish.entry::before{background:color-mix(in srgb, var(--week2-accent) 45%, white 55%); }
    .week-2 .dish.main::before{background:var(--week2-accent); }
    .week-2 .dish.dessert::before{background:color-mix(in srgb, var(--week2-accent) 72%, white 28%); }
    .week-3 .dish.entry::before{background:color-mix(in srgb, var(--week3-accent) 45%, white 55%); }
    .week-3 .dish.main::before{background:var(--week3-accent); }
    .week-3 .dish.dessert::before{background: color-mix(in srgb, var(--week3-accent) 72%, white 28%); }
	.dish strong{display:none}
}

/*Fil de Navigation*/
.main_194 .mod-breadcrumbs__wrapper{text-align:center}
.mod-breadcrumbs{list-style:none;display:flex;justify-content:center}
.mod-breadcrumbs__here{display:none}
.mod-breadcrumbs .mod-breadcrumbs__here + .breadcrumb-item{display:none}
.mod-breadcrumbs .breadcrumb-item.active{display:none}
.mod-breadcrumbs__item a{text-transform:uppercase;display:block;font-weight:700;letter-spacing:.08em;margin:0 0 1rem;color:var(--accent)}

/*Blog*/
.category-desc p a{text-decoration:none;border-bottom:none}
.com-content-category-blog .visually-hidden{display:none}
.com-content-category-blog .category-desc{margin-bottom:2rem}
.com-content-category-blog .category-desc h1{max-width: 24ch}
.com-content-category-blog__items{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:3rem}
.com-content-category-blog__item.blog-item{width:100%;}
@media (max-width: 768px) {.com-content-category-blog__items {grid-template-columns:1fr}}
.com-content-category-blog__item.blog-item .page-header h2{font-size:2rem;margin:0;padding:0 0 .325em;line-height:1.2}
.com-content-category-blog__item.blog-item .page-header a{color:inherit}
.com-content-category-blog__item.blog-item .page-header a:hover{color:var(--accent)}

.com-content-category-blog__item.blog-item dl.article-info{margin: 1rem 0 .325rem; padding: 0} 
.com-content-category-blog__item.blog-item .published{font-size:.8rem;letter-spacing:-.03em;color: rgba(0,0,0,.4);margin:0;padding:0}
.com-content-category-blog__item.blog-item .readmore a.btn{background:var(--accent);color:#fff;margin-top:1rem !important;display:inline-block;padding:.325em 1em;}
.com-content-category-blog__item.blog-item .readmore a.btn:hover{background:#eb7535}
.com-content-category-blog__item.blog-item .readmore a.btn .svg-inline--fa{margin-right:.325rem}
.com-content-category-blog__item.blog-item figure {margin:0;padding:0;border-radius:var(--radius-sm);overflow: hidden;box-shadow:var(--shadow)}
.com-content-category-blog__item.blog-item figure img{display:block;width:100%;height:auto;transition: transform .6s cubic-bezier(.25,.46,.45,.94)}
.com-content-category-blog__item.blog-item figure img:hover{transform: scale(1.02)}


/*Blog Article*/
.blogactu .visually-hidden{display:none}
.blogactu h1{max-width:30ch;font-size: clamp(2.5rem, 3vw, 5.5rem);margin:0 auto !important;text-align:center}
.article-split__grid {}
.article-split__grid .page-header{margin: 0; padding: 0}
.blogactu .article-info{margin:0 auto;padding:0;text-align: center}
.article-split__grid dl.article-info{margin:0 auto;padding:0}
/* Colonne image */
.layout-blog .com-content-article__body{margin:var(--space-xl) 0}
.layout-blog .com-content-article__body img,.option-com_content .img-raster{width:100%;height:auto;display:block;border-radius:var(--radius);box-shadow:var(--shadow)}
.article-split__media{width: 50%;}
.article-split__media figure{width:100%;margin:0;padding: 0}
.article-split__media img{width:100%;height:auto;display:block;border-radius:5px}
.article-split__content {width: 100%}
.blogactu .published{font-size: var(--fs-small);color: rgba(0,0,0,.4);margin:0 auto 1rem;padding:0}

.layout-blog .com-content-article__body p{margin-bottom:1rem}
.com-content-article__media{border:1px solid #000;margin-bottom:2rem;padding:2rem 2rem 1rem 2rem}
.com-content-article__media p{margin-top:1rem;margin-bottom:0; color: rgba(0,0,0,.5) !important}
.blogactu .list-disc{list-style-type:disc;padding-left:0;margin-left:1.2em; margin-bottom: 1rem}
@media only screen and (max-width:768px){
	.com-content-article__media{border:none;margin-bottom:2rem;padding:0 !important}
}

.layout-blog .com-content-article__body h2{font-size: clamp(1.1rem, 1.7vw, 1.4rem)}


.shape {}
.img-shape{float:left;margin:0 20px 10px 0;border:1px solid #000;padding:1em}
.img-169{width:60%;height:auto;object-fit: cover;shape-outside:inset(0)}
.shape::after{content:"";display:block;clear:both}

/*Pagination Categorie*/
.com-content-category-blog__pagination{border-top:1px double #000;margin:2rem 0 0 0;padding: 2rem 0}
.com-content-category-blog__pagination nav.pagination__wrapper{}
nav.pagination__wrapper ul.pagination {display:flex;justify-content: center;gap:0.5rem;padding:0;margin:0;list-style:none;align-items:center}
nav.pagination__wrapper ul.pagination .page-item{display:flex}
nav.pagination__wrapper ul.pagination .page-link{display:flex;align-items:center;justify-content:center;min-width:2.4rem;height:2.4rem;padding:0 .75rem;font-size:.9rem;border-radius:8px;text-decoration:none;transition: 0.2s ease-in-out}
nav.pagination__wrapper ul.pagination .page-item.active .page-link{background:#000;color:#fff}
nav.pagination__wrapper ul.pagination .page-item.disabled .page-link{opacity:.35;cursor:default;pointer-events:none}

/*¨Pagination Article*/
.article-nav{margin-top:2rem;}
.article-nav__inner{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}
.article-nav__link{display:block;flex:0 1 48%;}
.article-nav__link--next{margin-left:auto;text-align:right}
.article-nav__link--prev{margin-right:auto;text-align:left}
.article-nav__label{display:inline-flex;align-items:center;gap:.5rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;opacity:.7}
.article-nav__title{display:block;font-size:.95rem;font-weight:700}
.article-nav__link:hover .article-nav__title{color:var(--accent)}

@media only screen and (max-width:768px){
  .article-nav__inner{flex-direction:column;justify-content:flex-start;gap:0}
  .article-nav__link{max-width:100%}
  .article-nav__link--prev{margin-bottom:1rem}
  .article-nav__link--next{margin-left:0;text-align:left}
}


/*Take Away*/
.take-away{display:grid;align-items:center;column-gap:clamp(1rem,4vw,5rem);grid-template-columns:2fr 3fr}
.take-away .take-away-fa .svg-inline--fa{font-size:5rem;line-height:1;transform-origin:center}

.info-block{display:grid;grid-template-columns:80px 1fr;gap:.75rem;align-items:center;max-width:800px;padding:.75rem 0;position:relative; margin: 0 auto}
.info-block::before{content:"";position:absolute;left:80px;top:50%;transform:translateY(-50%);width:1px;height:60%;background:linear-gradient(to bottom,transparent,rgba(0,0,0,.15),transparent)}
/* Icône */
.info-block__icon{flex:0 0 90px;display:flex;align-items:flex-start;justify-content:center}
.info-block__icon .svg-inline--fa{font-size:3.5rem;color:#7a7472;opacity:.65}
/* Si image SVG */
.info-block__icon img{width:90px;height:auto;display:block}
/* Texte */
.info-block__content{flex:1}
.info-block__title{font-weight:600;margin:0 0 .4rem;letter-spacing:.02em;}
.info-block__content p{margin:0;line-height:1.55;max-width:48ch}

/*Menu Extra*/
.menu-extra-wrap{display:grid;justify-items:center}
.menu-extra{padding:1.325rem 0;position:relative;max-width:60ch;text-align:center}
.menu-extra::before{content:"";position:absolute;background:linear-gradient(to right,transparent,rgba(0,0,0,.15),transparent);left:50%;top:0;transform: translate(-50%, -50%);width:40%;height:2px;z-index: 1}
.menu-extra::after{content:"";position:absolute;background:linear-gradient(to right,transparent,rgba(0,0,0,.15),transparent);left:50%;bottom:0;transform: translate(-50%, -50%);width:40%;height:2px;z-index: 1}

/*Menu items*/
.menu__wrapper,.border__wraper{}
.menu__special{padding:1rem 2rem;border: 2px dashed var(--text-color);border-radius:var(--radius);position:relative}
.menu__special p{max-width: 40ch; margin: 0 auto}
.menu__line{margin-bottom:1rem}
.menu__header{display:flex;align-items:baseline;}
.menu__wrapper h2,.border__wraper h2{line-height:1.2;font-size:1.525rem;margin:0 0 .325rem 0;letter-spacing:1px}
.menu__wrapper h3{line-height:1.2;font-size:1em}
.menu__wrapper h3.menu__title,.menu__price{line-height:1.2;font-size:1em;font-weight:700}
.menu__wrapper h3.menu__star{font-size:1.325em }

.menu__dots {flex:1;border-bottom:1px dashed rgba(0,0,0,.3);margin:0 1em}
p.menu__description{margin:0;color:rgba(43,43,43,.8);font-size:.98rem}
.hr-text{line-height:1em;position:relative;outline:0;border:0;text-align:center;height:1.5em}
.hr-text:before{content:"";background: linear-gradient(to right, transparent, #000, transparent);position:absolute;left:0;top:50%;width:100%;height:1px}
.hr-text:after{content:attr(data-content);position:relative;display:inline-block;padding:0 0.5em;line-height:1.5em;background-color:#fcfcfa}
.menu__media img{width: 100%; height: auto; display: block}

.menu_fa{text-align:center}
.menu_fa .svg-inline--fa{font-size:1.35em;line-height:1;transform-origin:center}

.plan-cost {background-color:var(--text-color);color:#fff;border-radius:50%;width:60px;height:60px;position:absolute;top:-10px;right:-10px;display:flex;flex-direction:column;justify-content:center;align-items:center;transform: rotate(10deg);}
.plan-picto {border-radius:50%;width:40px;height:40px;position:absolute;top:0;left:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;transform: translate(-50%, -50%) rotate(10deg);z-index: 1}

.plan-picto-dark {background:var(--text-color);color:var(--bg-color) !important;border:1px solid var(--text-color)}
.plan-picto-light {background:var(--bg-color);color:var(--text-color) !important;border:1px solid rgba(0,0,0,.15)}
.plan-picto-light .svg-inline--fa{color:var(--text-color) !important}


.plan-price{font-size:1rem;line-height:1; letter-spacing: -1px}
.plan-type {opacity:.8;font-size:.7rem;line-height:1}
.plan-cost .svg-inline--fa{font-size:2rem;color:#fff}
.plan-picto .svg-inline--fa{font-size:1.325rem;color:#fff}
.menu__special p.info-block__title{width:20ch;margin: 0 auto .325rem}

/* Galerie */
.gallery{display:grid;grid-template-columns:repeat(3, 1fr);gap:0px;width:100%;margin:0 0 4rem 0}
.gallery-item {position: relative;padding:1rem 2rem;overflow:hidden;border-top:dashed 2px #000; border-left:none}

.gallery-item:nth-child(1),.gallery-item:nth-child(2),.gallery-item:nth-child(3){border-top:none}
.gallery-item:nth-child(2),.gallery-item:nth-child(3),.gallery-item:nth-child(5),.gallery-item:nth-child(6){border-left:dashed 2px #000}

 .gallery-item img {display:block;width:100%;height:100%;cursor:pointer;border-radius: 5px; transition:transform .2s ease}
.gallery-item img:hover{transform:translateY(-2px)}

.gallery-item::after{content:'+';position:absolute;top:50%;left:50%;transform:translate(-50%, -50%) scale(0);font-size:2em;opacity:0;transition:all 0.3s ease;pointer-events:none;text-align:center;background:#f8f4f3;width:2em;height:2em;line-height:2em;border-radius:100%}

.gallery-item:hover::after {transform: translate(-50%, -50%) scale(1);opacity: 1;}

.lightbox {position:fixed;top:0;left:0;width:100%;height:100%;background:#f8f4f3;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity 0.3s ease, visibility 0.3s ease;z-index:15000}
.lightbox.active {opacity: 1;visibility:visible}
.lightbox-content{position:relative;max-width:90%;max-height:80vh;animation:zoomIn 0.3s ease;padding-bottom:100px}

@keyframes zoomIn {from {transform: scale(0.8);opacity: 0;}to {transform: scale(1);opacity: 1;}}

.lightbox img{max-width:100%;max-height:70vh;border-radius:5px;user-select:none}

.lightbox-close {position:fixed;top:30px;right:40px;color: #000;font-size: 40px;cursor: pointer;background: rgba(255,255,255,0);width: 50px;height: 50px;border-radius: 50%;display: flex;align-items: center;justify-content: center;backdrop-filter: blur(10px);border: none;transition: all 0.3s ease;z-index: 1001;}

.lightbox-close:hover {transform:rotate(90deg) scale(1.1);background:rgba(255,255,255,0.2)}

.lightbox-nav {position:fixed;top:50%;transform:translateY(-50%);color: #000;font-size: 50px;cursor: pointer;padding: 20px;background: rgba(255,255,255,0.1);border-radius: 50%;transition: all 0.3s ease;backdrop-filter: blur(10px);border: none;user-select: none;z-index: 1001;}
.lightbox-nav:hover{background:rgba(255,255,255,0.2);transform:translateY(-50%) scale(1.1);}
.lightbox-nav.prev{left:30px}
.lightbox-nav.next{right:30px}

.image-title{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);color:#000;font-size:1em;text-align:center;width:100% !important}

@media (max-width: 768px) {
    .gallery{grid-template-columns:repeat(1, 1fr);gap:10px}
    .gallery-item {padding:0;border-top:none}
    .gallery-item:nth-child(2),.gallery-item:nth-child(3),.gallery-item:nth-child(5),.gallery-item:nth-child(6){border-left:none}
    .lightbox-close {top: 20px;right: 20px;font-size: 30px;width: 40px;height: 40px;}
    .lightbox-nav {font-size: 30px;padding: 10px;opacity: 0.7;}
    .lightbox-nav.prev {left: 10px;}
    .lightbox-nav.next {right: 10px;}
    .image-title {position: static;transform: none;margin-top: 15px;}
    .lightbox-content {display: flex;flex-direction: column;align-items: center;}
}

/*Maps*/
#map{display:flex;align-items: center; width:100%;height:100%;background:var(--bg-color);border-radius:var(--radius);filter: brightness(0.95) saturate(0.7) contrast(1.05);}
#map .preload {display: table;width:100%;height:100% !important;background:var(--bg-color)}
#map .preload span{display: table-cell;text-align: center;vertical-align: middle}
#map .preload .svg-inline--fa{margin-bottom:.325em}

#map .leaflet-tile {filter: grayscale(100%) brightness(1.1) contrast(0.9);}
#map .zoom-wrapper {position: absolute;top:50%;left:10px;transform:translateY(-50%);z-index:1000;display:flex;flex-direction:column;gap:4px;filter:none!important}
#map .zoom-wrapper a {display:flex;justify-content:center;align-items:center;width:40px;height:40px;text-align:center;background:var(--bg-color);color:#000;font-size: 20px;font-weight: bold;border-radius:5px;border:.063em solid #000;text-decoration: none;filter: none !important;opacity:1;transition:opacity 0.3s cubic-bezier(.22, 1, .36, 1) !important}
#map .leaflet-container img {max-height: none;}
#map .zoom-wrapper a:hover {background:var(--bg-color);opacity:.5}
#map .leaflet-popup-content {font-family:dunbar-text, sans-serif !important;font-size:15px !important;font-style:normal !important;font-weight:500 !important;line-height:1.3 !important; letter-spacing:inherit!important}
#map .leaflet-popup-content a{color:#000 !important}

.popup-26 .leaflet-popup-content-wrapper{background: #f8f4f3 !important;box-shadow: 0 12px 28px rgba(0,0,0,0.25) !important}
.popup-26 .leaflet-popup-tip{background: #f8f4f3 !important }

.leaflet-control-attribution{opacity:.2 !important}
.leaflet-control-attribution.leaflet-control a{color:#000}

.leaflet-marker-icon.pulse {background-color:var(--accent);border:4px solid white;border-radius:50%;width:20px;height:20px;box-shadow:0 0 0 rgba(245, 101, 93, 0.4);animation: pulse 2s infinite;
}

@keyframes pulse {
  0%{box-shadow:0 0 0 0 rgba(200, 109, 60, 0.4)}
  70%{box-shadow: 0 0 0 10px rgba(200, 109, 60, 0)}
  100%{box-shadow: 0 0 0 0 rgba(200, 109, 60, 0)}
}

/*Mention lagales*/
.page-legal{margin-top:2rem}
.page-legal h2:first-child{margin-top:0}
.page-legal h2{margin-top:2rem;font-size:1.525rem;color:var(--accent)}
.page-legal p{margin-bottom:1rem}


/*Contact Form Pro*/
.contact_info{margin-top:.325rem}
.contact_info p{margin-bottom:1rem}
.contact_follow{display:block;text-align:center;margin:2rem 0}
.contact_follow p{margin-bottom:0 !important}

.contact_form{padding:1rem 2rem;border: 2px dashed var(--text-color);border-radius:var(--radius)}
.formHidden{position:absolute;left:-20000px;top:-20000px;opacity:0}
.formNoError{display:none}
.formField{display:block;overflow:auto}
.formClr{clear:both;display:block}
sup.formRequired{margin-left:3px;opacity:.5;font-size:10px}
div.formCaption{display:block;width:25%;min-height:12px}
.formResponsive .formHorizontal .hide{display:none}

.rsform-block.rsform-block-lastname,.rsform-block.rsform-block-firstname,.rsform-block.rsform-block-email,.rsform-block.rsform-block-ville,.rsform-block.rsform-block-comments{position:relative;padding:1rem 0}
.rsform-block-sujet{position:relative;padding:1rem 0}
.rsform-block-lastname label,.rsform-block-firstname label,.rsform-block-email label,.rsform-block.rsform-block-ville label,.rsform-block-comments label{position:absolute;top:1.8em;left:.625em;width:auto;color:#000;opacity:1;line-height:1;pointer-events:none;transition: top .3s cubic-bezier(.22, 1, .36, 1)}

form.formResponsive input[type=text]:focus + label{top:-.2em;color:#777777;opacity:1}
form.formResponsive input[type=text]:not(:placeholder-shown) + label {top:-.2em;color:#777777;opacity:.5}
form.formResponsive input[type=text]:focus:valid + label {top: -.2em;color:#777777;opacity:1}
form.formResponsive textarea:focus + label{top: -.2em;color: #777777;opacity:1}
form.formResponsive textarea:not(:placeholder-shown) + label {top: -.2em;color: #777777;opacity:1}
form.formResponsive textarea:focus:valid + label {top: -.2em; color: #777777;opacity:1}
.formResponsive .formHorizontal .formControls{width:100%;margin:0;padding:0}
.formResponsive .formHorizontal p.formDescription{display:none}
.formResponsive .formHorizontal .formValidation,.formResponsive .formHorizontal .input-append,.formResponsive .formHorizontal .input-prepend,.formResponsive .formHorizontal .uneditable-input,.formResponsive .formHorizontal input,.formResponsive .formHorizontal textarea{border:1px solid #dedede;outline:0}
.formResponsive input,.formResponsive textarea{width:100%;display: inline-block}

.formResponsive input[type=text],.formResponsive input[type=number],.formResponsive input[type=email],.formResponsive input[type=tel],.formResponsive input[type=url],.formResponsive input[type=password]{color: #777777;height:3em;padding:.250em .625em;line-height:3em;background:#fff;box-shadow: var(--shadow); border-radius:5px}
.formResponsive .formHorizontal textarea{color:#777777;min-height:144px;padding:.250em .625em;background:#fff;resize:none;box-shadow: var(--shadow);border-radius: 5px}

.rsform-block.rsform-block-sujet label.rsform-error {background:#a0333c;color: #fff}
.rsform-block.rsform-block-sujet label.rsform-error.checked {background:#007bff}

@media only screen and (max-width: 768px){
	.getintouch_intro{padding-top:2em}
	.getintouch{padding-bottom:6em}
	.formResponsive{margin-top:1em}
	.rsform-block {padding: 1em 0}
}

.formResponsive .rsform-block-firstname input[type=text]{text-transform: uppercase}
.formResponsive input[type=radio],.formResponsive input[type=checkbox]{margin:5px 5px 0 0;line-height:normal;cursor:pointer;padding-left:18px;float:left}
.formResponsive input[type=file]:focus,.formResponsive input[type=radio]:focus,.formResponsive input[type=checkbox]:focus{outline:#333 dotted thin;outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}
.formResponsive button[type=reset],.formResponsive button[type=button],.formResponsive button[type=submit],.formResponsive input[type=reset],.formResponsive input[type=button],.formResponsive input[type=submit]{border:none;text-align:center;vertical-align:middle;cursor:pointer}
.formResponsive button[type=reset]:focus,.formResponsive button[type=button]:focus,.formResponsive button[type=submit]:focus,.formResponsive input[type=reset]:focus,.formResponsive input[type=button]:focus,.formResponsive input[type=submit]:focus{outline:#333 dotted thin;outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}

.formResponsive button[type=submit],.formResponsive input[type=submit]{font-size:1em;padding:14px 32px;margin:0 auto;background:var(--accent);color:#fff;border-radius:100px; transition:background .3s cubic-bezier(.22, 1, .36, 1)}
.formResponsive button[type=submit]:hover,.formResponsive input[type=submit]:hover{background:#eb7535}
.formResponsive .formError{color:#a0333c;padding:0;vertical-align:middle;font-size:13px;font-weight:300;margin:3px 0;height:18px;display:block}
.formResponsive input.rsform-error,.formResponsive select.rsform-error,.formResponsive textarea.rsform-error{color:#a0333c;border-color:#a0333c}
.formResponsive textarea.rsform-error {background:rgba(255,255,255,1)}

.formResponsive label.rsform-error{color:#a0333c}
form.formResponsive input[type=text]:focus + label.rsform-error{color:#a0333c}
form.formResponsive input[type=text]:not(:placeholder-shown) + label.rsform-error {color:#a0333c}

form.formResponsive textarea:focus + label.rsform-error{color:#a0333c}
form.formResponsive textarea:not(:placeholder-shown) + label.rsform-error {color:#a0333c}

.formResponsive input.rsform-error:focus,.formResponsive select.rsform-error:focus,.formResponsive textarea.rsform-error:focus{border-color:#a0333c}

/*Custom Select*/
.rsform-block-sujet .rsform-select-box{width:100%;box-sizing:border-box;padding:0.7rem 2.4rem 0.7rem 1rem;border-radius:5px;border:none;background-color:#fff;font-family:inherit;font-size:0.95rem;line-height: 1.3;color: #000;outline: none;cursor: pointer;box-shadow:var(--shadow);-webkit-appearance: none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;utf8,<svg fill='%239b8b73' height='8' width='12' xmlns='http://www.w3.org/2000/svg'><path d='M0 0 L6 6 L12 0'/></svg>");background-repeat: no-repeat;background-position:right 1rem center;background-size:12px 8px}
.rsform-block-sujet .rsform-select-box:focus {border:none}
.rsform-block-sujet .rsform-select-box::-ms-expand {display:none}
@media (min-width: 900px) {
  .rsform-block-sujet .rsform-select-box {
    width: 80%;
  }
}

p.alert{color:#a0333c}

span.formValidation,p.formDescription{display: none}
.formRed{display: inline-block;color:#fff !important;font-weight:500 !important;background:#a0333c; border-radius:1.250rem;padding: .125rem 1rem;margin: 0 0 1rem 1rem}
.formError{color:#a0333c;font-weight:300;font-size:10px}

body.itemid-195 joomla-alert[type="danger"] {border-radius:1.250rem !important}
body.itemid-195 joomla-alert[type="danger"] span.visually-hidden{display:none}

.formRed{-webkit-animation:fadeDiv 2s;-moz-animation:fadeDiv 2s;-ms-animation:fadeDiv 2s;-o-animation:fadeDiv 2s;animation:fadeDiv 2s}
@keyframes fadeDiv {from { opacity: 0; }to   { opacity: 1; }}
@-moz-keyframes fadeDiv {from { opacity: 0; }to   { opacity: 1; }}
@-webkit-keyframes fadeDiv {from { opacity: 0; }to   { opacity: 1; }}
.grecaptcha-badge { visibility: hidden; }


.thanks{padding:2em 0}
.thanks,.thanks h2{color:#000 !important}
.thanks h2{margin-top:2rem}
.thanks .svg-inline--fa{font-size:4rem; display: inline-block;
  vertical-align: middle;
  line-height: 1;overflow: visible;}

/* Style général pour le wrapper */
.rsform-block-friendlycaptcha{width:100%;margin:1em 0 2rem 0;}
.rsform-block-capchawrapper{width:100%;margin:0 auto;text-align: left !important}
.frc-captcha{display:block;margin:0 auto;min-height:80px!important; box-shadow: var(--shadow)}

/*Mention Legales*/
.page-legals h2{font-size:1em;margin:0;padding:0;line-height:1.1;text-transform: uppercase}
.page-legals h2:not(:first-child){margin:2em 0 0 0}


/* Un peu plus d’air quand une FAQ est ouverte */
.faq-accordion details {
  padding: .3rem 0;
}
.faq-accordion details[open] {
  padding-bottom: .3rem;
}

/* Espace entre question et réponse */
.faq-accordion details > p {
  margin-top: 0.6rem;
  line-height: 1.6;
}

/* Animation douce à l’ouverture */
.faq-accordion details[open] > *:not(summary) {
  animation: faqFadeSlide 0.25s ease;
}

@keyframes faqFadeSlide {
  from {
    opacity: 0;
    transform: translateY(-4px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/*Operations*/
footer{background:var(--bg-color-third);color:#fff;padding: var(--padding-large) 0;}
footer .footer-cta{margin-bottom: var(--space-m)}
h2.footer-title{font-size:3.5rem;font-style:italic;line-height:1;margin:0;text-wrap:balance}
p.footer-intro{margin:1.375em auto}
footer a{color:#fff}

footer .footer-grid{margin-bottom: var(--space-m)}
footer .footer-item{padding:2rem 0;text-align:center}
footer .footer-follow{margin-top:.8rem}
footer .footer-item-fa{margin-bottom:1rem;color:var(--accent)}

.partners{display:flex;justify-content:center;gap:2rem;padding:1rem}
.partners a img{width:100px;height:auto;display:block}
.partners a{opacity:.8}.partners a:hover{opacity:1}

/* Lang */
div.mod-languages{width:200px;margin:2rem auto 0;border-top: 1px dashed rgba(255,255,255,.5)}
div.mod-languages p.visually-hidden{display:none}
div.mod-languages ul.lang-inline{display:flex;justify-content:center;gap:1rem;margin:.325rem 0;padding:0}
div.mod-languages ul.lang-inline li{margin:0;padding:0;opacity:.8}
div.mod-languages ul.lang-inline li a{display:block;color:#ffffff;padding:0;margin:0 .325rem}
div.mod-languages ul.lang-inline li.lang-active{opacity:1}
div.mod-languages ul,div.mod-languages li{list-style:none}

@media only screen and (max-width: 768px){
	footer .inner{max-width:100%;padding:0 1rem}
	h2.footer-title{font-size:2.5rem;font-style:italic;line-height:1;margin:0;text-wrap:balance}
	p.footer-intro{max-width: 30ch; margin:1.375em auto}
	footer .footer-grid{margin-top: 3rem;margin-bottom:3rem}
	footer .footer-item{padding:1rem 0}
	footer .footer-legal-note{max-width: 30ch; margin:1rem auto}
	footer .footer-legal{margin-top:0}
}