
/* Fonts */
@font-face {
    font-family: 'BricolageGrotesque24pt-Regular';
    src: url('../fonts/BricolageGrotesque24pt-Regular.woff2') format('woff2'), 
    url('../fonts/BricolageGrotesque24pt-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'BricolageGrotesque24pt-SemiBold';
    src: url('../fonts/BricolageGrotesque24pt-SemiBold.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'BricolageGrotesque24pt-Bold-Light';
    src: url('../fonts/BricolageGrotesque24pt-Bold-Light.woff2') format('woff2'), 
    url('../fonts/BricolageGrotesque24pt-Bold-Light.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'BricolageGrotesque24pt-Light';
    src: url('../fonts/BricolageGrotesque24pt-Light.woff2') format('woff2'), 
    url('../fonts/BricolageGrotesque24pt-Light.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'JeanLuc-Bold';
    src: url('../fonts/JeanLuc-Bold.woff2') format('woff2'), 
    url('../fonts/JeanLuc-Bold.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'JeanLuc-Thin';
    src: url('../fonts/JeanLuc-Thin.woff2') format('woff2'), 
    url('../fonts/JeanLuc-Thin.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'BBBReadMe-Regular';
    src: url('../fonts/BBBReadMe-Regular.woff2') format('woff2'), 
    url('../fonts/BBBReadMe-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'BBBReadMe-Black';
    src: url('../fonts/BBBReadMe-Black.woff2') format('woff2'), 
    url('../fonts/BBBReadMe-Black.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'BBBReadMe-Italic';
    src: url('../fonts/BBBReadMe-Italic.woff2') format('woff2'), 
    url('../fonts/BBBReadMe-Italic.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'PicNic-Regular';
    src: url('../fonts/PicNic-Regular.woff2') format('woff2'), 
    url('../fonts/PicNic-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Abordage-Regular';
    src: url('../fonts/Abordage-Regular.woff2') format('woff2'), 
    url('../fonts/Abordage-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
	font-family: 'flexslider-icon';
	src:url('../fonts/flexslider-icon.eot');
	src:url('../fonts/flexslider-icon.eot?#iefix') format('embedded-opentype'),
		url('../fonts/flexslider-icon.woff') format('woff'),
		url('../fonts/flexslider-icon.ttf') format('truetype'),
		url('../fonts/flexslider-icon.svg#flexslider-icon') format('svg');
	font-weight: normal;
	font-style: normal;
}

:root {
    --text-default-color: #000;
    --text-link-default-color: #000;
    --text-link-hover-color: #0000ff;
    --text-main-nav-default-color: #000;
    --text-main-nav-hover-color: #0000ff;
    --text-main-nav-active-color: #0000ff;
    --text-main-subnav-default-color: #000;
    --text-main-subnav-hover-color: #0000ff;
    --text-main-subnav-active-color: #0000ff;
    --header-default-color: #0000ff;
}

/* Reset and general Layout */
body, html {font-family: "BricolageGrotesque24pt-Regular", Arial, "sans-serif"; margin:0; padding:0;}
body {overflow-x: clip;}
/* body.admin-bar #page {margin-top:32px;} */
.post, .page {margin: 0!important;}
.flex-container {display: flex; min-height: 100vh; flex-direction: column;}
.flex-container-main {flex: 1;}

/* Standard tags hacks */
h1, h2, h3, h4, h5 {line-height:1.2em; font-weight:100;}
h1, h2, h3 {font-family: 'BBBReadMe-Regular';}
h4 {margin:3px 0 5px 0; padding:0; font-family: "BricolageGrotesque24pt-SemiBold"; font-size: 1.2em; color: #2a247e;}
h4 + p {margin-top:0; padding-top:0; }
ul, ol, .wp-block-list {margin:0 0 1.5em 0;}
a, a:visited {color:var(--text-link-default-color)!important; text-decoration:none; font-family:'BricolageGrotesque24pt-SemiBold';}
a:hover {color:var(--text-link-hover-color)!important; }
a, a:focus {outline:none;}
p.wp-block-paragraph, p {margin: 0.5em 0; padding: 0;}
strong {font-family: 'BricolageGrotesque24pt-SemiBold'; font-weight: 100!important;}
#page {position: relative;}
.wp-block-quote {font-family: 'BBBReadMe-Regular'; margin:0; font-size: 1.2em;}
.wp-block-pullquote {padding:2em 0!important; text-align: center;justify-content: center; display: flex; align-content: center;}
.wp-block-pullquote blockquote { position: relative; z-index: 0; line-height: 1.2em !important; padding: 50px; color: #000 !important; font-family: 'BricolageGrotesque24pt-SemiBold'; width: 55%;}
.wp-block-pullquote blockquote p {color:#000; }
.wp-block-pullquote blockquote::before { content: ""; position: absolute; inset: -20px; /* déborde légèrement pour que le flou ne soit pas coupé net */ background: url("../images/shape-bkg-01.svg"); background-position: center; background-repeat: no-repeat; background-size: auto; filter: blur(8px); z-index: -1;}
.full-bleed { --vw: calc(100vw - var(--sbw, 0px)); width: var(--vw); margin-inline: calc(50% - var(--vw) / 2);}
.croix-close {background-image: url(../images/croix.svg); background-repeat:no-repeat; background-size:contain; display:flex; width:40px; height:40px; justify-content:center; align-items:center; margin: 0 auto;}
.croix-close:hover {background-image: url(../images/croix-hover.svg); background-repeat:no-repeat; background-size: contain; }

.masked-image-shape-01 { width:500px; height:500px; -webkit-mask-image:url('../images/shape-01.svg');  mask-image:url('../images/shape-01.svg'); -webkit-mask-size: contain; mask-size: contain; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-position: center; mask-position: center;}
.masked-image-shape-02 { width:500px; height:500px; -webkit-mask-image:url('../images/shape-02.svg');  mask-image:url('../images/shape-02.svg'); -webkit-mask-size: contain; mask-size: contain; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-position: center; mask-position: center;}
.masked-image-shape-03 { width:500px; height:500px; -webkit-mask-image:url('../images/shape-03.svg');  mask-image:url('../images/shape-03.svg'); -webkit-mask-size: contain; mask-size: contain; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-position: center; mask-position: center;}
.masked-image-shape-04 { width:500px; height:500px; -webkit-mask-image:url('../images/shape-04.svg');  mask-image:url('../images/shape-04.svg'); -webkit-mask-size: contain; mask-size: contain; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-position: center; mask-position: center;}
.masked-image-shape-05 { width:500px; height:500px; -webkit-mask-image:url('../images/shape-05.svg');  mask-image:url('../images/shape-05.svg'); -webkit-mask-size: contain; mask-size: contain; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-position: center; mask-position: center;}
.masked-image-shape-06 { width:500px; height:500px; -webkit-mask-image:url('../images/shape-06.svg');  mask-image:url('../images/shape-06.svg'); -webkit-mask-size: contain; mask-size: contain; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-position: center; mask-position: center;}
.masked-image-shape-01 img, .masked-image-shape-02 img, .masked-image-shape-03 img, .masked-image-shape-04 img, .masked-image-shape-05 img, .masked-image-shape-06 img {object-fit: cover; width: 100%; height: 100%!important;}

/* Overlay Crédits (footer) */
#footer-credits-backdrop {position:fixed; inset:0; background: rgba(0, 0, 255, 0.75); z-index:1100; display:none;}
#footer-credits {position:fixed; left:0; right:0; bottom:0; z-index: 1200; background: #fff; max-height:85vh; overflow-y:auto; box-sizing:border-box; padding:80px 0; display: none; }
#footer-credits .footer-credits-inner {display:flex; flex-wrap:wrap; gap:40px 80px;}
#footer-credits .footer-credits-column {flex: 1 1 300px; box-sizing: border-box;}
#footer-credits .footer-credits-close {position:absolute; top:20px; left:0; right:0;}
#footer-credits h3 {margin: 1.8em 0 0.4em 0;}
#footer-credits h3:first-of-type {margin-top: 0;}
#footer-credits .footer-credits-logos {height:55px; display:flex; flex-direction:row; margin: 0 0 45px 0;}
#footer-credits .footer-credits-logos a:first-child {margin-right:30px;}
#footer-credits .footer-credits-logos img {height:100%; width:auto;}
#footer-credits .footer-credits-links {list-style: none; margin: 0; padding: 0;}
#footer-credits .footer-credits-links li {margin: 0 0 6px 0;}
#footer-credits .footer-credits-links a {text-decoration: none; color: var(--text-default-color); font-family: 'BricolageGrotesque24pt-SemiBold'; }
#footer-credits .footer-credits-links a:hover {color: var(--text-link-hover-color);}
#footer-credits .footer-credits-social {display: flex; gap: 10px; margin-top: 10px;}
body.footer-credits-is-open {overflow: hidden; /* empêche le scroll de la page pendant que l'overlay est ouvert */}

/* Header banner */
#header {position: relative; overflow: visible; background-color: #fff;}
#header-banner {display:flex; align-items:center; padding:40px 0 12px 0;  position: relative; }
body.header-is-stuck #header-banner {display:flex; align-items:center; min-height:60px; padding: 0;}
.header-banner-column {display:flex; flex-direction:column; flex:0 0 33.3333%; width:33.3333%; box-sizing:border-box;}
.header-banner-column:nth-child(2) {align-items:center; justify-content:center;}
#logo-container {width:162px; position:absolute; top:23px; left:50%; transform: translate(-50%, 0%); z-index: 600; /* > panel (500) et backdrop (400) */}
.sticky #logo-container {top:8px; width:120px;}
#logo-container img {filter: drop-shadow(0 2px 5px rgba(255,255,255,0.1)) drop-shadow(0 2px 5px rgba(255,255,255,0.1)) drop-shadow(0 2px 10px rgba(255,255,255,0.1)); }
#primary-menu-left li:nth-child(n+4), #primary-menu-right li:nth-child(-n+3) {display:none;}
.menu {padding:0; margin:0; text-decoration:none; display:flex; list-style:none; width:100%; flex-wrap:wrap; justify-content:space-between;}
.menu li {padding:0; margin:0;}
.menu a {display:inline-flex; font-family: 'BricolageGrotesque24pt-SemiBold'; color:#000; font-size: 1.1em; text-decoration:none;}
.menu a:visited {color:var(--text-main-nav-default-color);}
li.current-menu-item a, li.current-menu-item a:visited {color:var(--text-main-nav-active-color);} 

/* Sous-menus (niveau 2) - cachés par défaut */
.main-navigation .sub-menu, .menu-item .sub-menu {display:none;}
.header-banner-column:first-child .main-navigation > ul, 
.header-banner-column:last-child .main-navigation > ul { display:flex; flex-direction:row; flex-wrap: wrap;  justify-content:space-between; width:100%; margin: 0; padding: 0; list-style: none;}
#header { position: relative; } /* déjà en place normalement */
#mega-menu-panel {position:absolute; top: 100%; left: 0; width: 100%; background: #fff; box-shadow: 0 10px 25px rgba(0,0,0,0.08); z-index: 500; display: none; /* piloté en JS via slideDown/slideUp */  padding:60px; box-sizing: border-box; text-align: center;}
#mega-menu-close {position:absolute; bottom:10px; right:0; left:0; border:none; font-size:3em; line-height:1; cursor:pointer; padding:0; margin: 0 auto; background-color:transparent;}
#mega-menu-content h2 a {color:#000; text-decoration:none; font-family: 'BBBReadMe-Regular'; font-size: 1.6em; display:none; }
#mega-menu-content ul.sub-menu {display:flex; flex-direction:column; list-style:none; margin: 0; padding: 0;}
#mega-menu-content ul.sub-menu li {margin:0 0 10px 0; }
#mega-menu-content ul.sub-menu a {text-decoration:none; color:var(--text-main-subnav-default-color); font-family:'BricolageGrotesque24pt-SemiBold'; font-size:1.1em;}
#mega-menu-content ul.sub-menu a:hover {color:var(--text-main-subnav-hover-color);}
.menu-item a:hover, .menu-item a:visited:hover, .mega-menu-item-open a, .mega-menu-item-open a:visited, .current-menu-parent a, .current-menu-parent a:visited {color:var(--text-main-subnav-active-color);}

/* Fond assombri optionnel derrière le panneau */
#mega-menu-backdrop {position: fixed; left: 0; right: 0; bottom: 0; background: rgba(0,0,0,0.25); z-index: 400; display: none;}
body.mega-menu-is-open #mega-menu-backdrop { display: block; }

#header.sticky { z-index:1000;}
.main-navigation { z-index:999;}

/* Footer */
.site-footer { color: #6c6c6c; padding:40px 0 10px;  font-size:.8em;} 
.site-footer a, .site-footer a:visited {color:#333; text-decoration:none; font-family: 'BricolageGrotesque24pt-Regular'; color:var(--text-main-nav-active-color); font-size: 1.2em;}
.site-footer a:hover {color:#000}
.footer-row {display:flex; width: 100%; margin: 0 0 20px 0; flex-direction:row; flex-wrap:wrap; justify-content: center;}
.footer-row-columns {justify-content: space-between;}
.site-footer ul {display:flex; margin:0; padding:0; flex-wrap:wrap; list-style-type: none;}
.site-footer ul li {margin:0 30px 0 0; padding:0; font-size: 1.2em;}
.site-footer ul li:last-child {margin:0; }
.site-footer ul li:after {content: ''; display:block; margin:0 auto; height:2px; width:0px; background:transparent; transition: width .2s ease,background-color .2s ease;}
.site-footer ul li:hover:after {width:100%; background: #0f1113;}
.social-facebook {background-image: url(../images/social-logo-facebook.svg); background-repeat:no-repeat; background-size: contain; display:flex; width:40px; height:40px; justify-content: center; align-items: center;}
.social-instagram {background-image: url(../images/social-logo-instagram.svg); background-repeat:no-repeat; background-size: contain; display:flex; width:40px; height:40px; justify-content: center; align-items: center;}

/* Templates Layout */
.display-columns {display:flex; width:100%; justify-content:space-between; flex-wrap: wrap;}
.side-column {display:flex; flex-direction:column; width:30%;}
.main-column {display:flex; flex-direction:column; width:60%;}
.main-column.main-column-alone {width:100%;}

/* The sticky class is added to the header with JS when it reaches its scroll position */
.sticky { position:fixed!important; top:0; width:100%; z-index:30; transition:all 1s ease-out; animation:slide-down 1s;}
@keyframes slide-down {
	0% 	 { opacity: 0; transform: translateY(-100%);} 
    100% { opacity: 1; transform: translateY(0);} 
}
#header.sticky {height:60px; background-color:rgb(231, 231, 231); box-shadow: 0 3px 8px rgba(0, 0, 0, 0.10);;}
body.admin-bar #header.sticky {margin-top:32px;}

/* Mobile navigation slicknav */
#mainmenu-mobile, #mobile-homelink-area, #mobile-language-area, .formmobile {display:none;}
.notformobile {display:inline-block;}
#wpadminbar.nojq {position: fixed;}

/* Buttons and links */
.button-std, .button-std:visited { border-radius:20px; background-color: #666; color: #fff; padding:5px 15px; font-weight:100; margin:10px 0; display: inline-flex; min-width: 100px; justify-content: center; font-family: 'BricolageGrotesque24pt-SemiBold'; text-decoration: none;}
.post-edit-link, .post-edit-link:visited { text-decoration:none; border-radius:20px; background-color: #e5e5e5; color: #716868; padding:5px 15px; font-weight:100; margin:10px 0; display: inline-flex; min-width: 100px; justify-content: center; font-family: 'BricolageGrotesque24pt-SemiBold';}
.button-std:hover { background-color:#05104e; color:#fff}
.post-edit-link:hover { background-color:#999; color:#fff;}
.edit-link {margin:30px 0; position:relative; display:inline-block;}
.edit-button {margin: 0 0 20px 0;}
.button-blue, .button-blue:visited {background-color: #002bb0; color: #fff;}
.button-blue:hover { background-color:#05104e; color:#fff}
.buttons-holder {margin:15px 0 ;}
.page-cta-button-holder {display:flex; width:100%; flex-direction:row; justify-content:center;}

.back-link-holder {margin-top:30px;}
a.back-link {display:inline-flex; align-items:center; padding:1px 10px 1px 24px; background:url("../images/arrow-left.svg"); background-position:9px 6px ; background-repeat:no-repeat; background-size: 9px; text-decoration: none; border: 2px solid #ccc; border-radius: 15px;}
a.back-link span { font-size:1em; position:relative; font-family: 'BricolageGrotesque24pt-SemiBold'; }
a.back-link:hover { color:#2a247e; background:url("../images/arrow-left.svg"); background-position:9px 6px ; background-repeat:no-repeat; background-size: 9px; text-decoration: none; background-color: #f0f0f0}

/* Lecteur video html5 embarqué */
.wp-block-embed__wrapper iframe {width:100%; aspect-ratio:16/9; height: auto;}
.video-container {position:relative; width:100%; max-width:800px; margin:0 auto;}
.video-container-banner {position:relative; width:100%; margin:0 auto; display:flex;}
.video-container video, .video-container-banner video { width:100%; height:auto; border-radius:8px;}
.video-container-banner video { border-radius:0;}
.home-slider-slide.video .home-slider-slide-text, .home-slider-slide.video .cta-button-holder {display:none;}

/* Pagination */
.pagination {display: flex; justify-content: center; gap: 10px; margin: 0 0 40px 0; flex-wrap: wrap;}
.pagination a, .pagination span { padding: 8px 12px; border: 2px solid #ccc; text-decoration: none; color: #333; display: flex; justify-content: center; align-items: center;}
.pagination .current {background-color: #002bb0; color: #fff; border-color: #002bb0;}
.pagination a:hover {background-color: #f0f0f0;}
.pagination a:visited {color: #333;}
.pagination a.page-numbers, .pagination span {border-radius:360px; aspect-ratio:1 / 1; width:30px; height:30px;}
.pagination a.prev.page-numbers, .pagination a.next.page-numbers {border-radius:15px; aspect-ratio:auto; width:auto; height:30px;}
.pagination a.prev.page-numbers {padding:1px 10px 1px 24px; background:url(../images/arrow-left.svg); background-position:10px 7px; background-repeat:no-repeat; background-size:7px; text-decoration:none;}
.pagination a.next.page-numbers {padding:1px 24px 1px 10px; background:url(../images/arrow-right.svg); background-position: 88% 7px; background-repeat:no-repeat; background-size:7px; text-decoration:none;}
.pagination a.prev.page-numbers:hover, .pagination a.next.page-numbers:hover { background-color: #f0f0f0}

/* Main */
.site-main {margin-top:100px;}

/* Home */
#home-slideshow .slides {position:relative; margin:0; padding:0; list-style:none; aspect-ratio:1360/705; overflow:hidden;}
#home-slideshow .slides li {position: absolute; top:0; left:0; width:100%; height:100%;}
#home-slideshow .slides img { width:100%; height:100%; object-fit:cover; object-position:center;}
.hero-image-wrapper {position:relative; overflow:hidden;}
.hero-image-wrapper::before, .hero-image-wrapper::after {content: ''; position:absolute; left:0; right:0; height:20px; background-color: #fff; z-index:5; pointer-events:none; background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>"); background-size: 150px 150px;}
.hero-image-wrapper::before {top: 0; mask-image: linear-gradient(to bottom, white 0%, white 5%, transparent 100%); -webkit-mask-image: linear-gradient(to bottom, white 0%, white 30%, transparent 100%); border-top: 4px solid #fff;}
.hero-image-wrapper::after {bottom: 0; mask-image: linear-gradient(to top, white 0%, white 30%, transparent 100%); -webkit-mask-image: linear-gradient(to top, white 0%, white 30%, transparent 100%); border-bottom: 4px solid #fff;}
#mega-menu-panel::after {content: ""; background:url(../images/bordure-image-top.png); background-position:bottom; background-repeat: repeat-x; width:100%; position:absolute; bottom:-25px; left:0; right:0; z-index:10; display:inline-flex; height:50px; background-size:100% 25px;}


/* Page */
#page-banner-picture {position:relative; aspect-ratio:1360/405; overflow:hidden;}
#page-banner img {width:100%; height:100%; object-fit:cover; object-position:center;}
#page-banner-picture-soft-top-border {background:url(../images/bordure-image-top.png); background-position:top; background-repeat: repeat-x; width:100%; position:absolute; top:-10px; z-index:10; display:inline-flex; height:50px; background-size:100%;}
#page-banner-picture-soft-bottom-border {background:url(../images/bordure-image-bottom.png); background-position:bottom; background-repeat: repeat-x; width:100%; position:absolute; bottom:-10px; z-index:10; display:inline-flex; height:50px; background-size:100%;}
#page-banner-picture {
	animation: page-banner-fade-in 0.4s ease-out;
}
@keyframes page-banner-fade-in {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

/* Articles */
.articles-template-default .site-main {margin-top:20px;}
.articles-template-default h1 {line-height:1em;}
.articles-template-default h1 span {font-size:60%; line-height:1em; font-family: 'BricolageGrotesque24pt-SemiBold';}
.article-links-list, .article-files-list {margin:0; padding:0; list-style:none;}
.article-links-list li, .article-files-list li {margin:0 0 10px 0; padding:0; line-height:1.2em;}
.article-links-list li a, .article-files-list li a {color:var(--text-link-default-color); text-decoration:none; font-family: "BricolageGrotesque24pt-SemiBold"; }
.article-links-list li a:hover, .article-files-list li a:hover {color:var(--text-link-hover-color); }

.articles-columns-wide {width:90%; margin:0 auto}
.articles-columns-header {display:flex; margin:0 auto 50px;}
.articles-columns {display:flex; width:100%; justify-content:space-between; flex-wrap:wrap; flex-direction: row;}
.article-column {display:flex; flex-direction:column; width:50%;}
.article-column-picture, .article-column-text {display:flex; width:90%; flex-direction:column;}
.article-column-picture .edit-button {text-align: right;}
.article-column h2 {margin: 0 0 4px 0;}
.article-body-text, .article-agenda, .article-links, .article-files {margin:0 0 20px 0}
.article-agenda h3,.article-links h3, .article-files h3 {margin:5px 0}
.article-body-text p:last-child, .article-agenda p:last-child {margin-bottom:0;}
.article-agenda p:first-of-type {margin-top:0;}
.articles-columns-separator {background:url(../images/separateur.png); background-position:center center; background-repeat:repeat; height:5px; margin-top:40px; margin-bottom:40px;}
.articles-columns-separator:last-child {display: none;}
.articles-columns.is-even {flex-direction: row-reverse;}
.articles-columns.is-even .article-column-picture, .articles-columns.is-even .article-column-text {margin-left: 10%;}

.article-agenda-table {margin-top: 10px;}
.article-agenda-row {border-bottom: 1px solid #000; display: flex; flex-direction: row; width: 100%;  justify-content: space-between;}
.article-agenda-row__day {font-family: 'BricolageGrotesque24pt-SemiBold'; }
.article-agenda-row__day, .article-agenda-row__date, .article-agenda-row__time {width:15%;}
.article-agenda-row__city {width:35%;}
.article-agenda-row__action {width:20%;}
a.article-agenda-row__book, a.article-agenda-row__book:visited {font-family: 'BricolageGrotesque24pt-SemiBold'; color: var(--text-main-nav-active-color); text-decoration: none; font-size: 1em;}

/* Spectacles */
.spectacles-template-default .site-main {margin-top:60px;}
.spectacles-template-default  #page-banner-picture {aspect-ratio: 1360/605;}
.spectacles-template-default h1 {line-height:1.2em; color:var(--header-default-color); font-size:3em; display: inline-flex; flex-direction: column; margin:0 0 30px 0}
.spectacles-template-default h1 span {font-size:60%; line-height:1.2em; padding-top:10px;}
.spectacles-template-default h2 {margin: 40px 0 0 0; padding: 0; line-height: 1em;}
.spectacles-files-list {margin:10px 0 0; padding:0; list-style:none;}
.spectacles-files-list li {margin:0 0 10px 0; padding:0; line-height:1.2em;}
.spectacles-files-list li a {color:var(--text-link-default-color); text-decoration:none; font-family: "BricolageGrotesque24pt-SemiBold"; }
.spectacles-files-list li a:hover {color:var(--text-link-hover-color); }
.spectacles-template-default .spectacle-separator {background:url(../images/separateur.png); background-position:center center; background-repeat:repeat; height:5px; margin-top:20px; margin-bottom:0px; width:100%;}
.spectacles-template-default #spectacle-citation {margin:50px 0;}
.spectacles-template-default .spectacle-quote {font-family: 'BricolageGrotesque24pt-SemiBold'; font-size: 1.6em; margin: 0 35% 10px 0; line-height: 1.2em;}
.spectacles-template-default .spectacle-author {color:var(--header-default-color); font-family: 'BBBReadMe-Regular';}
.spectacle-agenda-table {margin-top: 10px;}
.spectacle-agenda-row {border-bottom: 1px solid #000; display: flex; flex-direction: row; width: 100%;  justify-content: space-between;}
.spectacle-agenda-row td {display: flex; align-items: center;}
.spectacle-agenda-row__day {font-family:'BricolageGrotesque24pt-SemiBold'; }
.spectacle-agenda-row__day, .spectacle-agenda-row__time {width:14%;}
.spectacle-agenda-row__date {width:20%;}
.spectacle-agenda-row__city {width:34%;}
.spectacle-agenda-row__action {width:18%;}
a.spectacle-agenda-row__book, a.spectacle-agenda-row__book:visited {font-family: 'BricolageGrotesque24pt-SemiBold'; color: var(--text-main-nav-active-color); text-decoration: none; font-size: 1em;}

#spectacle-gallery-carousel {margin:50px 0; --carousel-h: 500px; max-height: 500px;}
#spectacle-gallery-carousel .owl-carousel-item {display:flex; flex-direction:column; justify-content:center; align-items:center; /*height:100%; width:100%; aspect-ratio:15/13;*/ position:relative; overflow:hidden;}
#spectacle-gallery-carousel .owl-carousel-item img {display:block; width:auto; max-width:none; height: var(--carousel-h); /*height:100%; object-fit:cover;*/}
#spectacle-gallery-carousel .owl-carousel-item .credits-photo {position: absolute; bottom: 2px; text-shadow: #000 1px 0 10px; color: rgba(255,255,255,0.5); text-align: left; left: 6px; font-size: .9em;}
#spectacle-gallery-carousel .owl-carousel-item .picture-zoom {position: absolute; bottom: 2px; text-shadow: #000 1px 0 10px; color: rgba(255,255,255,0.5); text-align: right; right: 6px; font-size: .9em;}
#spectacle-gallery-carousel .owl-carousel-item .picture-zoom a {color: rgba(255,255,255,0.5); text-decoration: none;}
#spectacle-gallery-carousel .owl-carousel-item .picture-zoom a:hover {color: rgba(255,255,255,1);}
#spectacle-gallery-carousel .owl-prev span, #spectacle-gallery-carousel .owl-next span {display:none;}
#spectacle-gallery-carousel .owl-nav { font-size: 4em; position: absolute; top: 45%; display: flex; width: 100%; justify-content: space-between;}
#spectacle-gallery-carousel .owl-nav button.owl-prev { display: inline-flex; align-items: center; justify-content: flex-start; font-size: 30px; line-height: .8em; padding-left: 1em !important; font-family: 'NewTitle-Regular'; background: url("../images/arrow-grotesque-white-left.svg"); background-position:50% 50%; background-size:40%; background-repeat: no-repeat; height:32px; width: 90px; text-transform:uppercase;}
#spectacle-gallery-carousel .owl-nav button.owl-next { display: inline-flex; align-items: center; justify-content: flex-end; font-size: 30px; line-height: .8em; padding-right: 1em !important; font-family: 'NewTitle-Regular'; background: url("../images/arrow-grotesque-white-right.svg"); background-position:50% 50%; background-size:40%; background-repeat: no-repeat; height:32px; width: 90px; text-transform:uppercase;}
#spectacle-gallery-carousel .owl-nav button.owl-prev:hover { background: url("../images/arrow-grotesque-left.svg"); background-position:50% 50%; background-size:40%; background-repeat: no-repeat; }
#spectacle-gallery-carousel .owl-nav button.owl-next:hover { background: url("../images/arrow-grotesque-right.svg"); background-position:50% 50%; background-size:40%; background-repeat: no-repeat; }
#spectacle-gallery-carousel .owl-nav button.owl-prev span, #programmation-carousel.owl-carousel .owl-nav button.owl-next span {display: none;}
#spectacle-gallery-carousel .owl-nav button.owl-prev.disabled, #programmation-carousel.owl-carousel .owl-nav button.owl-next.disabled {opacity: 0; cursor:default}
#spectacle-gallery-carousel .owl-nav button.owl-prev::after { content: " ";}
#spectacle-gallery-carousel .owl-nav button.owl-next::after { content: " ";}
#spectacle-gallery-carousel .owl-nav button.owl-prev:hover {color:rgb(0,0,255);}

#spectacle-press {margin: 50px 0;}
#spectacle-press .owl-carousel-item {display:flex; flex-direction:column; justify-content:center; align-items:center; position: relative; overflow: hidden; margin: 0 100px; text-align: center;}
#spectacle-press .spectacle-press-excerpt {font-family: 'BricolageGrotesque24pt-SemiBold'; font-size: 1.4em; margin-bottom: 10px; line-height: 1.2em;}
#spectacle-press .spectacle-press-media {color:var(--header-default-color); font-family: 'BBBReadMe-Regular';}
#spectacle-press .owl-prev span, #spectacle-press .owl-next span {display:none;}
#spectacle-press .owl-nav { font-size: 4em; position: absolute; top:38%; display: flex; width: 100%; justify-content: space-between;}
#spectacle-press .owl-nav button.owl-prev { display: inline-flex; align-items: center; justify-content: flex-start; font-size: 30px; line-height: .8em; padding-left: 1em !important; font-family: 'NewTitle-Regular'; background: url("../images/arrow-grotesque-left.svg"); background-position:50% 50%; background-size:40%; background-repeat: no-repeat; height:32px; width: 90px; text-transform:uppercase;}
#spectacle-press .owl-nav button.owl-next { display: inline-flex; align-items: center; justify-content: flex-end; font-size: 30px; line-height: .8em; padding-right: 1em !important; font-family: 'NewTitle-Regular'; background: url("../images/arrow-grotesque-right.svg"); background-position:50% 50%; background-size:40%; background-repeat: no-repeat; height:32px; width: 90px; text-transform:uppercase;}
#spectacle-press .owl-nav button.owl-prev:hover { background: url("../images/arrow-grotesque-left.svg"); background-position:50% 50%; background-size:40%; background-repeat: no-repeat; }
#spectacle-press .owl-nav button.owl-next:hover { background: url("../images/arrow-grotesque-right.svg"); background-position:50% 50%; background-size:40%; background-repeat: no-repeat; }
#spectacle-press .owl-nav button.owl-prev span, #programmation-carousel.owl-carousel .owl-nav button.owl-next span {display: none;}
#spectacle-press .owl-nav button.owl-prev.disabled, #programmation-carousel.owl-carousel .owl-nav button.owl-next.disabled {opacity: 0; cursor:default}
#spectacle-press .owl-nav button.owl-prev::after { content: " ";}
#spectacle-press .owl-nav button.owl-next::after { content: " ";}
#spectacle-press .owl-nav button.owl-prev:hover {color:rgb(0,0,255);}

/* Agenda */
#agenda-page {margin-top:100px;}
table.agenda-table { margin:0 auto; width:90%; line-height:1.2em;}
table.agenda-table tbody {width:100%; display:flex; flex-direction:column;}
table.agenda-table tr.agenda-row, table.agenda-table tr.agenda-row-details {display:flex; width:100%; flex-direction:row;}
table.agenda-table tr.agenda-row  {border-top:1px solid #000; padding:16px 0 0 0; margin:11px 0 0;}
table.agenda-table tr.agenda-row:first-child  {border-top:0;}
table.agenda-table td {display:flex; justify-content: space-between;
  width: 100%;}

.agenda-date {width:15%; display:flex; justify-content: space-between;}
.agenda-row__date {font-family: 'BricolageGrotesque24pt-SemiBold'; font-size: .9em; width: 55%; padding-right:20px;}
.agenda-row__time {font-family: 'BricolageGrotesque24pt-SemiBold'; font-size: 1.2em; width: 45%; padding-right:20px;}

.agenda-event {width:75%; display: flex; flex-direction: column;}
.agenda-row-data{display:flex;flex-direction:row;}
.agenda-row-details__inner .agenda-row__address, .agenda-row-details__inner .agenda-row__summary {margin: 10px 0;}
.agenda-row__toggle {margin-left:8px;}
.agenda-row__toggle-icon {width: 20px;}
.agenda-row__city {padding-right:20px; width:15%;}
.agenda-row__content {width:70%;}
.agenda-row-details {display:flex;flex-direction:row;}
.agenda-row-details .agenda-row__content {width:70%}
a.agenda-row__title-link {font-family: 'BBBReadMe-Italic'; color:var(--text-link-default-color); text-decoration:none; }
a.agenda-row__title-link:visited {color:var(--text-link-default-color); }
a.agenda-row__title-link:hover, a.agenda-row__title-link.is-open {color:var(--text-link-hover-color); }
.agenda-row__summary { font-family: 'BBBReadMe-Italic'; font-size: .8em;}
.agenda-row__type {width:15%;}

.agenda-row__action {width:10%; text-align:right;}
a.agenda-row__book, a.agenda-row__book:visited, .agenda-row__free {font-family: 'BricolageGrotesque24pt-SemiBold'; color: var(--text-main-nav-active-color); text-decoration: none; font-size: 1.2em;}

/* Page SARA - Ligne du temps */
.page-template-page-sara .site-main {margin-top:0px;}
.page-template-page-sara h1 {margin:50px 0 10px;}
#sara-timeline {border-left:1px solid var(--header-default-color); padding:140px 0 0 20px; width:80%; margin:0 auto; }
.sara-timeline-item {margin-bottom:2rem; position:relative;}
.sara-timeline-item-bullet {display:block; width:9px; height:9px; border-radius:50%; background-color: var(--header-default-color); position:absolute; left:-25px; top:5px;}
.sara-timeline-item-header {display:flex; align-items:baseline; gap:0 .5rem; flex-wrap:wrap; font-family: 'BricolageGrotesque24pt-SemiBold'; line-height:1.2rem;}
.sara-timeline-item-date {white-space:nowrap;}
.sara-timeline-item-title {font-size:1em;}
.sara-timeline-item-text {margin-top:0.2rem; line-height:1.1rem; font-size:.9em;}
.sara-timeline-item-picture {left:-60px; position:relative; margin:20px 0 0 0; background-size:cover; background-position:center; width:300px; height:auto; aspect-ratio:1/1;}

/* Fichiers pro */
#pro-files-grid {display:grid; width:90%; margin:0 auto; justify-content: space-between; grid-template-columns: repeat(3, 1fr); gap: 2% 10%; }
.pro-files-item {width:100%; display:flex; flex-direction:column; justify-content:flex-start; align-content:center; text-align:center;}
.pro-files-item-picture {background-size:cover; background-position:center; width:100%; height:auto; aspect-ratio:1/1;}
.pro-files-item-title {font-family: 'BBBReadMe-Regular'; font-size:1.4em; margin:20px 0 0;}


/* Responsive breakpoints */
/* Media queries */
@media (max-width: 1599px) {
}
@media (max-width:1399px) {
    .menu a {font-size:1em;}
    .spectacle-agenda-row {font-size:.9em;}
    .agenda-date {width:20%;}
    .agenda-row__content {width:65%;}
}
@media (max-width:1119px) {
    table.agenda-table {width: 100%;}
    .spectacles-template-default .spectacle-quote {font-size: 1.4em;}
    #page-banner-picture-soft-top-border {top:-5px; }
    #page-banner-picture-soft-bottom-border {bottom:-5px;}
    .spectacle-agenda-row td {font-size: .9em;}
}
@media (min-width: 991px) and (max-width: 1400px) {
    .tagline-full { display: none; }
    .tagline-short { display: block; }
}
@media (max-width: 990px) {
    h1.top-heading, h1.entry-title {margin: 40px 0 0.67em 0; text-align: center; display: inline-block; width: 100%;}
    .wp-block-pullquote blockquote {width: 90%;}
    .formmobile {display:inline-block;}
    .notformobile {display:none;}
    .main-column, .side-column {width:100%;}
    main {margin-top:50px;} /* pour passer sous le slicknav */
    #mobile-homelink-area {display:inline-block; position:fixed; width:70px; height: auto; top:5px; margin: 0 auto; left:0; right:0; z-index: 102;}
    body.admin-bar #mobile-homelink-area {top: 35px;}
    #home-slideshow-area, #page-banner {margin: 60px 0 0 0;}
    #page-banner-picture {aspect-ratio: 1360/705;}
    .article-column-picture, .article-column-text, .article-column, .articles-columns-wide {width:100%;}
    .article-column-picture .edit-button {text-align: left;}
    .articles-columns.is-even .article-column-picture, .articles-columns.is-even .article-column-text {margin-left:0;}
    .spectacles-template-default #page-banner-picture {aspect-ratio: 1360/1205;}
    .spectacles-template-default h1 {font-size: 2.2em;}
    #spectacle-gallery-carousel { --carousel-h: 400px; }

    .spectacles-template-default .spectacle-quote {margin: 0 0 10px 0;}
    #spectacle-press .owl-carousel-item {margin:0 10px;}
    #spectacle-press .owl-nav {top:initial; margin-top:10px;}
    #spectacle-press .spectacle-press-excerpt {font-size:1.1em; line-height:1.1em;}
    #spectacle-press .spectacle-press-media {font-size:.9em}
    .spectacles-template-default #spectacle-citation {margin: 50px auto; width: 80%;}
    #pro-files-grid {grid-template-columns: repeat(2, 1fr);}
    #page-banner-picture-soft-top-border {top:0; }
    #page-banner-picture-soft-bottom-border {bottom:0;}
    /* Agenda */
    .agenda-event {width:60%;}
    .agenda-row-data {flex-direction:column-reverse;}
    .agenda-row-details {flex-direction:column;}
    .agenda-row__city, .agenda-row__content, .agenda-row__type, .agenda-row-details .agenda-row__content {width:100%;}
    .agenda-row-data > .agenda-row__city, .agenda-row__type {display: none;}
    .agenda-date {width:20%; justify-content:flex-start; }
    .agenda-row__date, .agenda-row__time {width:auto; margin:0; padding:0 5px 0 0; font-size: .9em;}
    .agenda-row__action {width:20%; font-size: .8em;}
    .agenda-row__toggle {margin-left:5px;}
    /* Timeline */
    #sara-timeline {width:80%; padding:50px 0 0 20px; margin:50px auto;}
}
@media (max-width: 782px) { 
    body.admin-bar #mobile-homelink-area {top: 50px;}
}
@media (max-width: 768px) { 
    h1.top-heading, h1.entry-title, h2.widgettitle, .bottom-media-categories-column h2 {font-size:2em;}
    .footer-column {margin-bottom:15px;}
    .footer-column:last-child {margin-bottom:0px;}
    .footer-row-columns {justify-content: flex-start; flex-direction: column;}
    .std-carousel.owl-carousel .owl-item {max-width:100%;}
    .spectacle-agenda-row {font-size:.9em;}
    .main-column .wp-block-pullquote {font-size:1.2em;line-height:1.3em; margin:0;}
     #pro-files-grid {grid-template-columns: 1fr;}
    /* Agenda */
    table.agenda-table td {justify-content:flex-start; flex-direction: column;}
    .agenda-date, .agenda-event, .agenda-row__action {width:100%;}
    .agenda-row__action {text-align:left; font-size:1em; margin-top:12px;}
    .agenda-row__content {width:100%; display:flex; justify-content:space-between; }
    .agenda-row__toggle-icon {width:30px;}
}
@media (max-width: 480px) {
    section, #footer .section-inner {max-width:100%;}
}

/* Facade Vimeo (voir inc/vimeo-facade.php) : image de prévisualisation cliquable
   affichée à la place du lecteur tant que l'utilisateur n'a pas cliqué sur "Lecture". */
.sara-vimeo-facade {
    position: relative;
    display: block;
    width: 100%;
    padding-top: var(--sara-vimeo-ratio, 56.25%);
    background-color: #000;
    background-size: cover;
    background-position: center;
    border: 0;
    cursor: pointer;
}
.sara-vimeo-facade__play {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 72px;
    height: 72px;
    border: none;
    border-radius: 50%;
    background: rgba(0,0,0,0.6);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background-color 0.2s ease;
}
.sara-vimeo-facade:hover .sara-vimeo-facade__play {
    background-color: rgb(0,0,255);
}
.sara-vimeo-facade__play-icon {
    width: 0;
    height: 0;
    margin-left: 4px;
    border-top: 14px solid transparent;
    border-bottom: 14px solid transparent;
    border-left: 22px solid #fff;
}
.sara-vimeo-facade__iframe {
    width: 100%;
    aspect-ratio: 16 / 9;
    border: 0;
    display: block;
}