/*
Theme Name: Madih ACF
Theme URI: https://madihavocat.com/
Author: Madih & Associé
Description: Thème sur mesure pour Madih & Associé, Avocat. Remplace le thème Beep : même apparence, contenu entièrement géré par Advanced Custom Fields Pro (sections flexibles + réglages globaux).
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: madih
*/

/* ==========================================================================
   Variables (la couleur principale est aussi réglable dans Réglages du site)
   ========================================================================== */
:root {
	--madih-primary: #01548a;
	--madih-text: #666666;
	--madih-muted: #9c9c9c;
	--madih-header-text: #a3a3a3;
	--madih-footer-bg: #8c8c8c;
	--madih-border: rgba(0, 0, 0, 0.1);
	--madih-heading-font: 'Raleway', Arial, sans-serif;
	--madih-body-font: 'Open Sans', Arial, sans-serif;
	--madih-container: 1200px;
}

/* ==========================================================================
   Base
   ========================================================================== */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
	margin: 0;
	font-family: var(--madih-body-font);
	font-size: 13px;
	line-height: 1.6;
	color: var(--madih-text);
	background: #ffffff;
}
img { border: 0; max-width: 100%; height: auto; vertical-align: middle; }
a { color: var(--madih-primary); text-decoration: none; transition: color .3s; }
a:hover { text-decoration: underline; }
p { margin: 1em 0; }
b, strong, dt { font-weight: 600; }
h1, h2, h3, h4, h5, h6 {
	font-family: var(--madih-heading-font);
	font-weight: bold;
	line-height: 1.36;
	margin: 2em 0 1em;
	color: inherit;
}
h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child { margin-top: 1em; }
h1 { font-size: 250%; }
h2 { font-size: 180%; }
h3 { font-size: 140%; }
h4 { font-size: 125%; }
h5 { font-size: 110%; }
h6 { font-size: 90%; }
hr { margin: 1em 0; border: 0; border-bottom: 1px solid var(--madih-border); }
ul, ol { padding-left: 1.6em; }
blockquote { color: var(--madih-primary); font-family: var(--madih-heading-font); font-size: 120%; margin: 1.5em 0; padding-left: 1.2em; border-left: 3px solid var(--madih-primary); }
iframe { max-width: 100%; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; }
.skip-link:focus { position: fixed; top: 8px; left: 8px; z-index: 1000; width: auto; height: auto; clip: auto; background: #fff; padding: 10px 16px; color: var(--madih-primary); }
.alignleft { float: left; margin: 0.3em 1.5em 1em 0; }
.alignright { float: right; margin: 0.3em 0 1em 1.5em; }
.aligncenter { display: block; margin: 1em auto; }
.wp-caption-text { color: var(--madih-muted); font-size: 90%; }
.clear { clear: both; }

.container { max-width: var(--madih-container); margin: 0 auto; }
.container-inner { margin: 0 20px; }
.clearfix::after { content: ''; display: table; clear: both; }

/* ==========================================================================
   Grille (colonnes Beep : 30,66 % + gouttière 4 %)
   ========================================================================== */
.madih-cols { display: flex; flex-wrap: wrap; gap: 0 4%; }
.madih-col-3 { width: 30.66%; }
.madih-col-2 { width: 48%; }
.madih-col-4 { width: 22%; }
.madih-col-1-3 { width: 30.66%; }
.madih-col-2-3 { width: 65.33%; }

/* ==========================================================================
   En-tête
   ========================================================================== */
.site-header { background: #fff; position: relative; z-index: 100; }
.header-top { border-bottom: 1px solid var(--madih-border); color: var(--madih-header-text); }
.header-top .container-inner { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.header-intro-text { margin: 0.6em 0; }
.header-socials { display: flex; gap: 0.5em; }

.social-icon {
	display: inline-flex; align-items: center; justify-content: center;
	width: 26px; height: 26px; border-radius: 2px;
	font-size: 14px; transition: background-color .3s, color .3s;
}
.social-icon:hover { text-decoration: none; color: #fff !important; }
.social-icon.is-facebook:hover { background-color: #3b5998; }
.social-icon.is-linkedin:hover { background-color: #0a66c2; }
.dark-social-icons .social-icon { color: #555; background: rgba(0, 0, 0, 0.06); }
.light-social-icons .social-icon { color: #fff; background: rgba(255, 255, 255, 0.15); }

.header-logo-menu-wrapper { background: #fff; width: 100%; transition: box-shadow .3s; }
.header-logo-menu-wrapper.menu-stuck { position: fixed; top: 0; left: 0; right: 0; box-shadow: 0 1px 6px rgba(0, 0, 0, 0.12); }
.admin-bar .header-logo-menu-wrapper.menu-stuck { top: 32px; }
.logo-menu-wrapper { display: flex; align-items: center; justify-content: space-between; }
.logo-box { padding: 20px 60px 20px 0; flex-shrink: 0; transition: padding .3s; }
.menu-stuck .logo-box { padding-top: 10px; padding-bottom: 10px; }
.logo-box img { display: block; transition: max-height .3s; }
.logo-text { font-family: var(--madih-heading-font); font-size: 22px; font-weight: bold; color: #333; }

/* Menu principal */
.primary-menu, .primary-menu ul { list-style: none; padding: 0; margin: 0; }
.primary-menu { display: flex; flex-wrap: wrap; justify-content: flex-end; font-family: var(--madih-heading-font); }
.primary-menu > li { position: relative; }
.primary-menu a { display: block; padding: 20px; color: #666; text-decoration: none; transition: color .3s, background .3s, border-color .3s; }
.primary-menu > li > a { font-size: 125%; font-weight: bold; padding-bottom: 17px; border-bottom: 3px solid transparent; }
.menu-stuck .primary-menu > li > a { padding-top: 10px; padding-bottom: 7px; }
.primary-menu > li > a:hover,
.primary-menu > li:hover > a,
.primary-menu > li:focus-within > a,
.primary-menu > li.current-menu-item > a,
.primary-menu > li.current-menu-ancestor > a,
.primary-menu > li.current-page-ancestor > a { color: var(--madih-primary); border-bottom-color: var(--madih-primary); text-decoration: none; }
.primary-menu > li.menu-item-has-children > a::after { content: "\f107"; font-family: "FontAwesome"; margin-left: 0.6em; line-height: 1; }
.primary-menu ul {
	position: absolute; top: 100%; left: 0; min-width: 220px; background: #fff;
	border-top: 3px solid var(--madih-primary); box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
	opacity: 0; visibility: hidden; transform: translateY(8px); transition: opacity .25s, transform .25s, visibility .25s;
}
.primary-menu li:hover > ul, .primary-menu li:focus-within > ul { opacity: 1; visibility: visible; transform: none; }
.primary-menu ul a { padding: 10px 20px; font-size: 110%; font-weight: 600; border-bottom: 1px solid var(--madih-border); }
.primary-menu ul li:last-child a { border-bottom: 0; }
.primary-menu ul a:hover, .primary-menu ul li.current-menu-item > a { background: var(--madih-primary); color: #fff; text-decoration: none; }

/* Menu mobile */
.mobile-menu-toggle {
	display: none; width: 100%; padding: 16px 0; background: none; border: 0; border-top: 1px solid var(--madih-border);
	font: 16px var(--madih-heading-font); color: #666; cursor: pointer;
}
.mobile-menu-toggle::before { content: "\f03a"; font-family: "FontAwesome"; margin-right: 0.5em; }
.mobile-menu-toggle[aria-expanded="true"] { color: var(--madih-primary); }
.mobile-menu { display: none; border-top: 1px solid var(--madih-border); padding: 10px 0 20px; }
.mobile-menu.is-open { display: block; }
.mobile-menu ul { list-style: none; margin: 0; padding: 0; }
.mobile-menu ul ul { margin-left: 1.5em; }
.mobile-menu a { display: block; padding: 0.5em 0; color: #666; font-family: var(--madih-heading-font); font-weight: 600; font-size: 14px; }
.mobile-menu .current-menu-item > a { color: var(--madih-primary); }

/* ==========================================================================
   Bannière de titre des pages intérieures
   ========================================================================== */
.page-title-wrapper {
	background-color: #f1f1f1;
	color: #4d4d4d;
	background-image:
		linear-gradient(45deg, rgba(0,0,0,0.025) 25%, transparent 25%, transparent 75%, rgba(0,0,0,0.025) 75%),
		linear-gradient(45deg, rgba(0,0,0,0.025) 25%, transparent 25%, transparent 75%, rgba(0,0,0,0.025) 75%);
	background-size: 8px 8px;
	background-position: 0 0, 4px 4px;
}
.page-title-wrapper.has-image { background-size: cover; background-position: center; }
.page-title-wrapper .container-inner { padding: 60px 0 30px; }
.page-title-wrapper h1 { margin: 0; font-size: 250%; }
.breadcrumbs { display: inline-block; opacity: 0.4; transition: opacity .3s; }
.breadcrumbs:hover { opacity: 1; }
.breadcrumbs a { color: inherit; }

/* ==========================================================================
   Contenu + barre latérale
   ========================================================================== */
.content { background: #fff; color: var(--madih-text); padding-bottom: 40px; }
.content.is-sections { padding-bottom: 0; }
.content-layout.has-sidebar { display: flex; gap: 5%; align-items: flex-start; }
.content-layout.has-sidebar .content-column-content { width: 70%; min-width: 0; }
.content-layout.has-sidebar .content-column-sidebar { width: 25%; }
.content-column-content > *:first-child { margin-top: 1.5em; }
.entry-content::after { content: ''; display: table; clear: both; }

.sidebar-widget { border-bottom: 1px solid var(--madih-border); padding: 1px 0; margin-top: 1.5em; }
.sidebar-widget-title { font-family: var(--madih-heading-font); font-size: 120%; font-weight: bold; margin: 10px 0; }
.sidebar-widget .recent-post { margin-bottom: 1.5em; }
.sidebar-widget .recent-post h3 { font-size: 125%; }

/* ==========================================================================
   Sections pleine largeur (sections ACF)
   ========================================================================== */
.site-main { overflow-x: clip; }
.madih-section { position: relative; }
/* Sections pleine largeur : débordent du conteneur jusqu'aux bords de l'écran */
.madih-section.full-bleed { margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); }
.has-sidebar .madih-section.full-bleed { margin-left: 0; margin-right: 0; }
.has-sidebar .madih-section.full-bleed .container-inner { margin: 0 20px; }
.is-sections .content-column-content > .madih-section:first-child { margin-top: 0; }
.text-section, .team-section, .madih-accordion, .contact-section { padding: 1.5em 0 1em; }
.is-sections .content-column-content > .madih-section:not(.full-bleed):last-child { padding-bottom: 3em; }
.content-layout > .content-column-content > .madih-accordion:first-child { padding-top: 2em; }
.madih-section.has-bg { background-size: cover; background-position: center; }
.madih-section.is-fixed-bg { background-attachment: fixed; }
.madih-section-inner { padding: 40px 0; }

/* --- Diaporama --- */
.madih-slider { position: relative; overflow: hidden; background: #6e6e6e; }
.madih-slide {
	position: absolute; inset: 0; opacity: 0; visibility: hidden;
	background-size: cover; background-position: 50% 50%;
	transition: opacity 1s ease, visibility 1s;
}
.madih-slide.is-active { opacity: 1; visibility: visible; z-index: 1; }
.madih-slide-inner { max-width: 1000px; height: 100%; margin: 0 auto; position: relative; padding: 0 10px; }
.madih-slide-lines { position: absolute; top: 62px; left: 10px; right: 10px; display: flex; flex-direction: column; align-items: flex-start; gap: 22px; }
.madih-slide-line {
	margin: 0; display: inline-block; padding: 20px; color: #fff; font-family: 'Raleway', sans-serif; font-weight: bold; line-height: 1.2;
	background-color: var(--slider-box, #01548a); border-radius: 2px;
	opacity: 0; transform: translateY(-40px);
}
.madih-slide-line.size-grand { font-size: 35px; }
.madih-slide-line.size-moyen { font-size: 30px; }
.madih-slide-line.size-petit { font-size: 24px; }
.madih-slide.is-active .madih-slide-line { animation: madihDrop .6s ease forwards; }
.madih-slide.is-leaving .madih-slide-line { animation: madihLift .4s ease forwards; }
@keyframes madihDrop { to { opacity: 1; transform: none; } }
@keyframes madihLift { from { opacity: 1; transform: none; } to { opacity: 0; transform: translateY(-40px); } }
.madih-slider-nav { position: absolute; bottom: 15px; left: 0; right: 0; z-index: 5; display: flex; justify-content: center; gap: 8px; }
.madih-slider-nav button { width: 12px; height: 12px; border-radius: 50%; border: 2px solid #fff; background: transparent; padding: 0; cursor: pointer; opacity: .8; }
.madih-slider-nav button.is-active { background: #fff; }
.madih-slider-arrow {
	position: absolute; top: 50%; z-index: 5; transform: translateY(-50%);
	width: 40px; height: 40px; border: 0; background: rgba(0,0,0,.3); color: #fff; font-size: 20px; cursor: pointer;
	opacity: 0; transition: opacity .3s, background .3s;
}
.madih-slider:hover .madih-slider-arrow, .madih-slider-arrow:focus { opacity: 1; }
.madih-slider-arrow:hover { background: var(--madih-primary); }
.madih-slider-arrow.prev { left: 10px; }
.madih-slider-arrow.next { right: 10px; }

/* --- Colonnes avec icônes --- */
.icon-columns h4 { margin-top: 1em; }
.icon-dropcap {
	float: left; margin: 0.12em 0.25em 0.1em 0;
	display: inline-flex; align-items: center; justify-content: center;
	width: 1.6em; height: 1.6em; border-radius: 50%;
	font-size: 300%; line-height: 1; color: #fff;
	background-color: var(--madih-primary);
	background-image: linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,0.1) 100%);
	box-shadow: inset 0 -1px 0 0 rgba(0,0,0,0.3);
}
.icon-dropcap .fa { font-size: 0.6em; }
.icon-columns .madih-col-3::after { content: ''; display: table; clear: both; }

/* --- Cartes avec image --- */
.image-cards .madih-section-inner { padding: 50px 0 40px; }
.image-cards img { display: block; width: 100%; aspect-ratio: 1024 / 646; object-fit: cover; }
.image-cards a.card-image { display: block; overflow: hidden; }
.image-cards a.card-image img { transition: transform .5s; }
.image-cards a.card-image:hover img { transform: scale(1.04); }

/* --- Articles récents --- */
.recent-post-title h3 { margin: 1em 0 0.6em; font-size: 140%; }
.recent-post-title h3 a { color: inherit; }
.recent-post-title h3 a:hover { color: var(--madih-primary); text-decoration: none; }
.recent-post-thumb { position: relative; display: block; overflow: hidden; background: #ddd; aspect-ratio: 555 / 347; }
.recent-post-thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.recent-post-thumb::after {
	content: "\f0c1"; font-family: "FontAwesome"; position: absolute; inset: 0;
	display: flex; align-items: center; justify-content: center; font-size: 22px; color: #fff;
	background: rgba(1, 84, 138, 0.55); opacity: 0; transition: opacity .3s;
}
.recent-post-thumb:hover::after { opacity: 1; }
.recent-post-thumb:hover img { transform: scale(1.05); }
.recent-post-date { color: #777; margin: 0.5em 0; display: none; } /* masqué comme sur le site d'origine */
.recent-post-excerpt { margin-top: 0.8em; }

/* Bouton « En savoir plus » (pilule Beep) */
a.more-link {
	display: inline-flex; align-items: center; color: inherit; text-decoration: none;
	padding-right: 0.7em; border-radius: 0.8em; line-height: 1.6em;
	background-image: linear-gradient(var(--madih-primary), var(--madih-primary));
	background-repeat: no-repeat; background-size: 0 100%;
	transition: background-size .35s, color .3s ease .15s;
}
a.more-link::before {
	content: "\f0da"; font-family: "FontAwesome"; color: #fff; text-align: center;
	width: 1.6em; height: 1.6em; line-height: 1.6em; margin-right: 0.5em; border-radius: 50%;
	background: var(--madih-primary);
}
a.more-link:hover { color: #fff; background-size: 100% 100%; }

/* --- Bandeau d'appel à l'action --- */
.cta-band { text-align: center; }
.cta-band .madih-section-inner { padding: 35px 0 40px; }
.cta-band h2 { margin: 0.4em 0 0.6em; }
.madih-button {
	display: inline-flex; align-items: center; gap: 0.6em;
	padding: 0.55em 1.4em; font-size: 130%; border: 1px solid currentColor; border-radius: 2px;
	font-family: var(--madih-heading-font); text-decoration: none; transition: background .3s, color .3s, border-color .3s;
}
.madih-button:hover { text-decoration: none; }
.cta-band .madih-button:hover { background: var(--cta-color, #d8d8d8); color: #000 !important; border-color: var(--cta-color, #d8d8d8); }

/* --- Texte --- */
.text-section .intro { font-size: 180%; }

/* --- Équipe --- */
.team-member { padding: 10px 0; }
.team-member + .team-member { border-top: 1px dashed #d5d5d5; }
.team-member .madih-cols { padding: 20px 0; }
.team-photo img { display: block; width: 100%; max-width: 300px; }
.team-caption { margin-top: 16px; }
.team-member h3 { margin-top: 0.5em; }
.team-linkedin {
	display: inline-flex; align-items: center; justify-content: center; width: 2em; height: 2em;
	border: 1px solid var(--madih-primary); border-radius: 2px; color: var(--madih-primary); font-size: 140%;
	transition: background .3s, color .3s;
}
.team-linkedin:hover { background: var(--madih-primary); color: #fff; text-decoration: none; }
.team-divider { border: 0; border-top: 1px dashed #d5d5d5; margin: 1em 0; }

/* --- Accordéon --- */
.madih-accordion { margin: 1.5em 0; }
.madih-accordion details { border: 1px solid #e3e3e3; border-radius: 2px; margin-bottom: 6px; background: #fff; }
.madih-accordion summary {
	cursor: pointer; padding: 12px 16px 12px 44px; position: relative; list-style: none;
	font-family: var(--madih-heading-font); font-weight: bold; font-size: 120%; color: #555; transition: color .3s, background .3s;
}
.madih-accordion summary::-webkit-details-marker { display: none; }
.madih-accordion summary::before {
	content: "\f067"; font-family: "FontAwesome"; position: absolute; left: 16px; top: 50%; transform: translateY(-50%);
	font-size: 12px; color: var(--madih-primary);
}
.madih-accordion details[open] > summary { color: var(--madih-primary); background: rgba(0,0,0,0.02); border-bottom: 1px solid #e3e3e3; }
.madih-accordion details[open] > summary::before { content: "\f068"; }
.madih-accordion .accordion-body { padding: 4px 18px 10px; }

/* --- Contact --- */
.contact-box { border: 1px dotted #cecece; padding: 20px; }
.contact-box label { display: block; }
.contact-box input[type="text"], .contact-box input[type="email"], .contact-box input[type="tel"], .contact-box textarea,
.wpcf7 input[type="text"], .wpcf7 input[type="email"], .wpcf7 input[type="tel"], .wpcf7 textarea {
	width: 100%; padding: 8px 10px; margin-top: 4px; border: 1px solid #d5d5d5; border-radius: 2px;
	font: inherit; color: #555; background: #fff; transition: border-color .3s;
}
.wpcf7 input:focus, .wpcf7 textarea:focus { border-color: var(--madih-primary); outline: none; }
.wpcf7 input[type="submit"], .madih-submit {
	background: var(--madih-primary); color: #fff; border: 0; border-radius: 2px; padding: 10px 26px;
	font: bold 14px var(--madih-heading-font); cursor: pointer; transition: opacity .3s;
}
.wpcf7 input[type="submit"]:hover { opacity: .85; }
.contact-line { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.contact-icon {
	display: inline-flex; align-items: center; justify-content: center; width: 2em; height: 2em; flex-shrink: 0;
	border: 1px solid var(--madih-primary); border-radius: 2px; color: var(--madih-primary);
}
.map-box { border: 1px solid #e0e0e0; padding: 10px; }
.map-box iframe { display: block; width: 100%; height: 300px; border: 0; }

/* ==========================================================================
   Blogue (Nouvelles) et articles
   ========================================================================== */
.blogroll .post-item { padding: 1em 0 2em; border-bottom: 1px solid var(--madih-border); }
.blogroll .post-item:last-child { border-bottom: 0; }
.post-title h2 { margin: 0.6em 0 0.5em; }
.post-title h2 a { color: var(--madih-text); }
.post-title h2 a:hover { color: var(--madih-primary); text-decoration: none; }
.post-media { margin: 1em 0; }
.post-media a { display: block; position: relative; overflow: hidden; }
.post-media img { width: 100%; display: block; }
.post-meta { color: var(--madih-muted); }
.single-thumbnail { margin: 1.5em 0; }
.pagination { margin: 2em 0; display: flex; gap: 6px; flex-wrap: wrap; }
.pagination .page-numbers { padding: 6px 12px; border: 1px solid var(--madih-border); color: #666; }
.pagination .current, .pagination a:hover { background: var(--madih-primary); color: #fff; text-decoration: none; }

/* ==========================================================================
   Pied de page
   ========================================================================== */
.site-footer { background-color: var(--madih-footer-bg); color: #fff; }
.sub-footer .container-inner { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 1.2em 0; flex-wrap: wrap; }
.sub-footer-text { flex: 1 1 300px; }
.sub-footer-menu-social { flex: 1 1 300px; display: flex; flex-direction: column; align-items: flex-end; }
.footer-menu { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: flex-end; }
.footer-menu li + li { margin-left: 1.2em; }
.footer-menu a { color: #fff; font-size: 12px; letter-spacing: 0.02em; }
.footer-menu a:hover { color: var(--madih-primary); text-decoration: none; }
.footer-social-icons { margin: 1em 0 0.3em; display: flex; gap: 0.5em; }

/* ==========================================================================
   Animations d'apparition (comme le thème d'origine)
   ========================================================================== */
.js .madih-anim { opacity: 0; transition: opacity .7s ease, transform .7s ease; }
.js .madih-anim.fade-ttb { transform: translateY(-30px); }
.js .madih-anim.fade-ltr { transform: translateX(-30px); }
.js .madih-anim.fade-rtl { transform: translateX(30px); }
.js .madih-anim.flip-y { transform: perspective(600px) rotateY(25deg); }
.js .madih-anim.is-visible { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
	.js .madih-anim { opacity: 1; transform: none; transition: none; }
	.madih-slide, .madih-slide-line { transition: none; animation: none !important; opacity: 1; transform: none; }
}

/* ==========================================================================
   Responsive
   ========================================================================== */
@media (max-width: 1024px) {
	.logo-box { padding-right: 30px; }
	.primary-menu a { padding-left: 12px; padding-right: 12px; }
}
@media (max-width: 959px) {
	.primary-menu-wrap { display: none; }
	.mobile-menu-toggle { display: block; }
	.logo-menu-wrapper { justify-content: center; }
	.logo-box { padding-right: 0; }
	.header-logo-menu-wrapper.menu-stuck { position: static; box-shadow: none; }
	.madih-col-3, .madih-col-2, .madih-col-4, .madih-col-1-3, .madih-col-2-3 { width: 100%; }
	.content-layout.has-sidebar { display: block; }
	.content-layout.has-sidebar .content-column-content,
	.content-layout.has-sidebar .content-column-sidebar { width: 100%; }
	.madih-section.is-fixed-bg { background-attachment: scroll; }
	.madih-slide-line.size-grand { font-size: 26px; }
	.madih-slide-line.size-moyen { font-size: 22px; }
	.madih-slide-line.size-petit { font-size: 18px; }
	.madih-slide-lines { top: 40px; gap: 14px; }
	.madih-slide-line { padding: 14px; }
	.sub-footer-menu-social { align-items: flex-start; }
	.footer-menu { justify-content: flex-start; }
}
@media (max-width: 600px) {
	.header-top .container-inner { justify-content: center; flex-wrap: wrap; text-align: center; }
	.madih-slider { height: 340px !important; }
	.madih-slide-line.size-grand, .madih-slide-line.size-moyen, .madih-slide-line.size-petit { font-size: 18px; }
	.page-title-wrapper .container-inner { padding: 35px 0 20px; }
	.page-title-wrapper h1 { font-size: 200%; }
	h2 { font-size: 150%; }
	.text-section .intro { font-size: 140%; }
}
