/*
Theme Name: 716theme
Theme URI: https://716.fr
Description: Thème WordPress propre, point de départ pour 716 (basé conceptuellement sur responsive_jm04, repris à zéro).
Author: 716
Author URI: https://716.fr
Version: 0.1.0
Requires at least: 5.0
Tested up to: 6.5
Requires PHP: 7.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: 716theme
Tags: blog, custom-menu, featured-images, threaded-comments, translation-ready
*/


.mycon,.homecul{padding:0 20px;}
.fieldtext{vertical-align:top; text-align:left; padding-left:4px;}

.homepic{
position:absolute;

}

iframe{width:100%;}

.desc_left{
    width:30%;
    margin-right: 10px;
    display: inline-block;
    vertical-align: top;
    box-shadow: 1px 1px 12px #CCC;
    padding: 10px;
}
.desc_right
{
    width:30%;
    margin-left:10px;
    margin-right:0px;
}
.shop_apercu{
    width:65%;
    display: inline-block;
    vertical-align: top;}



html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
    border: 0;
    font-size: 100%;
    font: inherit;
    margin: 0;
    padding: 0;
    vertical-align: baseline;
}
/*HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section { display: block }
body {
    line-height: 1;
    font-family: Karla;
}
ol,
ul { list-style: none }
blockquote,
q { quotes: none }
blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
button,
input,
select,
textarea {
    font-size: 100%;
    overflow: visible;
    margin: 0;
    vertical-align: baseline;
    width: auto;
}
textarea {
    overflow: auto;
    vertical-align: text-top;
}
/* =Horizontal Rule
-------------------------------------------------------------- */
hr {
    background: #dddddd;
    border: none;
    clear: both;
    color: #dddddd;
    float: none;
    height: 1px;
    width: 100%;
}
hr.space {
    background: #ffffff;
    color: #ffffff;
}
/* =Base
-------------------------------------------------------------- */
html { height: 100% }
body {
    -moz-font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    background: #f9f9f9;
    color: #555555;
    font-family: KARLA;
    font-size: 14px;
    font-smoothing: antialiased;
    line-height: 1.5em;
    text-rendering: optimizeLegibility;
}
/* =Typography
-------------------------------------------------------------- */
p { word-wrap: break-word }
i,
em,
dfn,
cite { font-style: italic }
tt,
var,
pre,
kbd,
samp,
code {
    font-family: monospace, serif;
    font-style: normal;
}
b,
strong { font-weight: 700 }
pre {
    -moz-box-sizing: border-box;
    -moz-border-radius: 2px;
    -moz-box-shadow: 0 1px 0 #ffffff, inset 0 1px 1px rgba(0, 0, 0, 0.2);
    -webkit-border-radius: 2px;
    -webkit-box-shadow: 0 1px 0 #ffffff, inset 0 1px 1px rgba(0, 0, 0, 0.2);
    -webkit-box-sizing: border-box;
    box-shadow: 0 1px 0 #ffffff, inset 0 1px 1px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    background: #f4f4f4;
    border: 1px solid #aaaaaa;
    border-bottom-color: #cccccc;
    border-radius: 2px;
    height: auto;
    margin: 0;
    outline: none;
    padding: 6px 10px;
    vertical-align: middle;
    width: 100%;
    word-wrap: break-word;
    white-space: pre-wrap;
}
del {
    color: #555555;
    text-decoration: line-through;
}
ins,
dfn { border-bottom: 1px solid #cccccc }
sup,
sub,
small { font-size: 85% }
abbr,
acronym {
    font-size: 85%;
    letter-spacing: .1em;
    text-transform: uppercase;
}
a abbr,
a acronym { border: none }
dfn[title],
abbr[title],
acronym[title] {
    border-bottom: 1px solid #cccccc;
    cursor: help;
}
.gris{color:#4d208a;}
sup { vertical-align: super }
sub { vertical-align: sub }
/* =Responsive 12 Column Grid
    http://themeid.com/responsive-grid/

-------------------------------------------------------------- */
.grid {
    float: left;
    margin-bottom: 2.127659574468%;
    padding-top: 0;
}
.grid-right {
    float: right;
    margin-bottom: 2.127659574468%;
    padding-top: 0;
}
.col-60,
.col-140,
.col-220,
.col-300,
.col-380,
.col-460,
.col-540,
.col-620,
.col-700,
.col-780,
.col-860 {
    display: inline;

}
.col-60 { width: 6.382978723404% }
.col-140 { width: 14.893617021277% }
.col-220 { width: 23.404255319149% }
.col-300 { width: 31.914893617021% }
.col-380 { width: 40.425531914894% }
.col-460 { width: 48.936170212766% }
.col-540 { width: 57.446808510638% }
.col-620 { width: 690px;}
.col-700 { width: 74.468085106383% }
.col-780 { width: 82.978723404255% }
.col-860 { width: 91.489361702128% }
.col-940 { width: 100% }
.fit {
    margin-left: 0 !important;
    margin-right: 0 !important;
}
/* =Visibility
-------------------------------------------------------------- */
.hidden { visibility: hidden }
.visible { visibility: visible }
.none { display: none }
.hide-desktop { display: none }
.show-desktop { display: block }
/* =Responsive Images
-------------------------------------------------------------- */
img {
    -ms-interpolation-mode: bicubic;
    border: 0;
    height: auto;
    vertical-align: middle;
}
.ie8 img {
    height: auto;
    width: auto;
}
.ie8 img.size-large {
    max-width: 60%;
    width: auto;
}
/* =Responsive Videos
-------------------------------------------------------------- */
video {
    width: 100%;
    max-width: 100%;
    height: auto;
}
/* =Responsive Embeds/Objects
-------------------------------------------------------------- */
embed,
object { width: 100% }
svg:not(:root) { overflow: hidden }
/* =Links
-------------------------------------------------------------- */
a {

    font-weight: 400;
    text-decoration: none;
    color:black;
}
a:hover,
a:focus,
a:active {
    color: #444444;
    outline: 0;
    text-decoration: none;
}
::selection {
    background: #999999;
    color: #ffffff;
    text-shadow: none;
}
/* =Forms
-------------------------------------------------------------- */
label {
    display: inline-block;
    font-weight: 700;
    padding: 2px 0;
}
legend { padding: 2px 5px }
fieldset {
    border: 1px solid #cccccc;
    margin: 0 0 1.5em;
    padding: 1em 2em;
}
select,
input[type="text"],
input[type="password"],
input[type="email"] { }
select {
    height: auto;
    max-width: 100%;
}
area,
textarea {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -webkit-border-radius: 2px;
    -webkit-box-shadow: 0 1px 0 #ffffff, inset 0 1px 1px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0 1px 0 #ffffff, inset 0 1px 1px rgba(0, 0, 0, 0.2);
    background-color: #ffffff;
    box-shadow: 0 1px 0 #ffffff, inset 0 1px 1px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    border: 1px solid #aaaaaa;
    border-bottom-color: #cccccc;
    border-radius: 2px;
    height: auto;
    overflow: auto;
    margin: 0;
    outline: none;
    padding: 8px 10px;
    max-width: 100%;
}
map area {
    padding: 0px;
    border: 0px;
}
input,
select { cursor: pointer }
area:focus,
input:focus,
textarea:focus { border: 1px solid #66ccff }
input[type='text'],
input[type='password'] { cursor: text }
/* =IE Forms
-------------------------------------------------------------- */
.ie7 area,
.ie7 select,
.ie7 textarea,
.ie7 input[type="text"],
.ie7 input[type="password"],
.ie7 input[type="email"] { width: 96% }
/* =IE6 Notice
-------------------------------------------------------------- */
.msie-box {
    background-color: #f9edbe;
    border: 1px solid #f0c36d;
    color: #212121;
    display: block;
    margin: 0 auto;
    max-width: 960px;
    padding: 10px;
    position: absolute;
    top: 60px;
    text-align: center;
    width: 100%;
}
.msie-box a { color: #212121 }
/* =Tables
-------------------------------------------------------------- */
th,
td,
table { border: none }
table {
    border-collapse: collapse;
    width: 100%;
}
/* =Lists
-------------------------------------------------------------- */
ul {
    list-style-type: disc;
    margin: 0;
    padding: 0;
}
ol {
    line-height: 22px;
    list-style-position: outside;
    list-style-type: decimal;
    margin: 0;
    padding: 0;
}
dt { font-weight: 400 }
/* =Blockquote
-------------------------------------------------------------- */
blockquote {
    background: #f9f9f9;
    border: none;
    border-left: 4px solid #d6d6d6;
    margin: 20px;
    overflow: auto;
    padding: 0 0 10px 12px;
}
blockquote p {
    font-family: 'Georgia', 'Times New Roman', Times, serif;
    font-style: italic;
    font-size: 18px;
    line-height: 26px;
}
/* =Headings
-------------------------------------------------------------- */
h1,
h2,
h3,
h4,
h5,
h6,
h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
    font-weight: 700;
    line-height: 1.0em;
    word-wrap: break-word;
}
h1 {
    font-size: 2.625em;
    /* = 42px */
    margin-bottom: .5em;

}
h2 {
    font-size: 2.250em;
    /* = 36px */
    margin-bottom: .75em;
    margin-top: .75em;
}
h3 {
    font-size: 1.875em;
    /* = 30px */
    margin-bottom: .857em;
    margin-top: .857em;
}
h4 {
    font-size: 1.500em;
    /* = 24px */
    margin-bottom: 1em;
    margin-top: 3em;
}
h5 {
    font-size: 1.125em;
    /* = 18px */
    margin-bottom: 1.125em;
    margin-top: 1.125em;
}
h6 {
    font-size: 1.000em;
    /* = 16px */
    margin-bottom: 1.285em;
    margin-top: 1.285em;
}
/* =Margins & Paddings
-------------------------------------------------------------- */
p,
hr,
dl,
pre,
form,
address,
blockquote { margin: 0 }
th,
td {
    vertical-align: top;
}
caption { padding-bottom: .8em }
blockquote { padding: 0 1em }
blockquote:first-child { margin: .8em 0 }
fieldset {
    margin: 1.6em 0;
    padding: 0 1em 1em;
}
legend {
    padding-left: .8em;
    padding-right: .8em;
}
legend+* { margin-top: 1em }
input,
textarea { padding: .3em .4em .15em }
select { padding: .1em .2em 0 }
option { padding: 0 .4em }
dt {
    margin-bottom: .4em;
    margin-top: .8em;
}
ul { list-style-type: disc }
ol { list-style-type: decimal }
ul,
ol {
    margin: 0 1.5em 1.5em 0;
    padding-left: 2.0em;
}
li ul,
li ol { margin: 0 }
form div { margin-bottom: .8em }
/* =Globals
-------------------------------------------------------------- */
#container {
    margin: 0 auto;
    max-width: 965px;
    padding: 0px 25px;


}

.soubar {
    margin: auto;
   max-width: 965px;
    padding-top: 15px;

}


#headpub{max-width:965px; margin:auto;margin-top: 55px;
}

#footer {
    clear: both;
    margin: 0 auto;
    max-width: 965px;
    padding: 0 25px 0 25px;
}








#wrapper {
    background-color: #f9f9f9;
    border-top: none;
    clear: both;
    padding-top: 0px;
    position: relative;
}
.front-page #wrapper {
    background-color: transparent;
    border: none;
    margin: 20px auto 20px auto;
    padding: 0;
}
#header {
    position: fixed;
    background: white;
    z-index: 500;
    /* -webkit-backface-visibility: hidden; */
    /* -webkit-transform: translateZ(0); */
    width: 100%;
    top: 0px;
    -webkit-backface-visibility:hidden;
    height:80px;
    }

    #header1 {

        margin: auto;
        height: 65px;
        /* margin-top: 15px; */
    max-width: 1200px;
    /* padding: 0px 25px; */
    padding-top: 15px;


}







#footer-wrapper {
    margin: 0;
    padding: 0;
}
/* =Header
-------------------------------------------------------------- */
#logo {
    float: left;
    margin: 0;
}
.site-name {
    display: block;
    font-size: 2.063em;
    /* = 33px */
    line-height: 1.0em;
    padding-top: 20px;
}
.site-name a {
    color: #333333;
    font-weight: 700;
}
.site-description {
    color: #afafaf;
    display: block;
    font-size: 0.875em;
    /* = 14px */
    margin: 10px 0;
}
/* =Content
-------------------------------------------------------------- */
#content {

    margin-bottom: 20px;
}
#content-full {

    margin-bottom: 20px;
}
#content-blog {
margin-bottom: 20px;
background: white;


}
#content-images { margin-bottom: 20px }
#content-search {
    margin-bottom: 20px;
    margin-top: 20px;
	background: white;
padding: 20px;
width: 60%;
}
#content-archive {

    margin-bottom: 20px;
}
#content-sitemap {

    margin-bottom: 20px;
}
#content-sitemap a { font-size: 12px }
#content .sticky { clear: both }
#content .sticky p { }
/* =Templates (Landing Page)
-------------------------------------------------------------- */
.page-template-landing-page-php .menu,
.page-template-landing-page-php .top-menu,
.page-template-landing-page-php .main-nav,
.page-template-landing-page-php .footer-menu,
.page-template-landing-page-php .sub-header-menu { display: none }
/* =Author Meta (Author's Box)
-------------------------------------------------------------- */
#author-meta {
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    background: #f9f9f9;
    border: 1px solid #d6d6d6;
    border-radius: 4px;
    clear: both;
    display: block;
    margin: 30px 0 40px 0;
    padding: 10px;
    overflow: hidden;
}
#author-meta img {
    float: left;
    padding: 10px 15px 0 5px;
}
#author-meta p {
    margin: 0;
    padding: 5px;
}
#author-meta .about-author {
    font-weight: 700;
    margin: 10px 0 0 0;
}
/* =Featured Content
-------------------------------------------------------------- */
#featured {
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    background-color: #ffffff;
    border: 1px solid #e5e5e5;
    border-radius: 4px;
    padding-bottom: 40px;
    width: 99.893617021277%;
}
#featured p {
    font-size: 18px;
    font-weight: 200;
    line-height: 27px;
    padding: 0 40px 0 40px;
    text-align: center;
}
#featured-image { margin: 40px 0 0 0 }
#featured-image .fluid-width-video-wrapper { margin-left: -20px }
.featured-image img { margin-top: 44px }
/* =Post
-------------------------------------------------------------- */
.comments-link { font-size: 12px }
#cancel-comment-reply-link { color: #990000 }
.post-data {
    clear: both;
    font-size: 12px;
    font-weight: 700;
    margin-top: 20px;
}
.post-data a { color: #111111 }
.post-entry { clear: both;
}
.post-meta {
    clear: both;
    color: #9f9f9f;
    font-size: 12px;
    margin-bottom: 10px;
}
.post-edit {
    clear: both;
    display: block;
    font-size: 12px;
    margin: 1.5em 0;
}
.post-search-terms { clear: both }
.read-more {
    clear: both;
    font-weight: 700;
}
.attachment-entry {
    clear: both;
    text-align: center;
}
/* =bbPress
    bbPress has its own breadcrumb lists
-------------------------------------------------------------- */
.bbPress .breadcrumb-list { display: none }
/* =Symbols
-------------------------------------------------------------- */
.ellipsis {
    color: #aaaaaa;
    font-size: 18px;
    margin-left: 5px;
}
.form-allowed-tags {
    display: none;
    font-size: 10px;
}
/* =Widgets
-------------------------------------------------------------- */
.widget-wrapper {
    margin: 0 0 20px;


}

.single-post .widget-wrapper { }
.category-paris  .widget-wrapper  { margin-top: 0px }
.widget-wrapper select,
.widget-wrapper input[type="text"],
.widget-wrapper input[type="password"],
.widget-wrapper  input[type="email"] { width: 75% }
#widgets {
width: 238px;
float: right;
}
#widgets a {
    display: inline-block;
    margin: 0;
    padding: 0;
    text-decoration: none;
	width: 100%;
}
#widgets form { margin: 0 }
#widgets ul,
#widgets ol { padding: 0 0 0 20px }
#widgets ul li a {
    display: inline;
    text-decoration: none;
}
#widgets .widget-title img {
    float: right;
    height: 11px;
    position: relative;
    top: 4px;
    width: 11px;
}
#widgets .rss-date {
    line-height: 18px;
    padding: 6px 12px;
}
#widgets .rssSummary { padding: 10px }
#widgets cite {
    font-style: normal;
    line-height: 18px;
    padding: 6px 12px;
}
#widgets .tagcloud,
#widgets .textwidget {
    display: block;
    line-height: 1.5em;
    margin: 0;
    word-wrap: break-word;
}
#widgets .textwidget a { display: inline }
#widgets ul .children { padding: 0 0 0 10px }
#widgets .author {
    font-weight: 700;
    padding-top: 4px;
}
.widget_archive select,
#cat {
    display: block;
    margin: 0 15px 0 0;
}
#colophon-widget ul { }
.colophon-widget {
    background: none;
    min-height: 0;
}
.colophon-widget select,
.colophon-widget input[type="text"],
.colophon-widget input[type="password"],
.colophon-widget input[type="email"] { width: 100% }
#top-widget { }
.top-widget {
    background: none;
    border: none;
    clear: right;
    float: right;
    min-height: 0;
    padding: 0 3px 0 0;
    text-align: right;
    width: 45%;
}
.top-widget ul { padding: 0 }
.top-widget select,
.top-widget input[type="text"],
.top-widget input[type="password"],
.top-widget input[type="email"] { width: auto }
.top-widget #searchform { margin: 0 }
/* =Titles
-------------------------------------------------------------- */
.featured-title {
    font-size: 60px;
    letter-spacing: -1px;
    margin: 0;
    padding-top: 40px;
    text-align: center;
}
.featured-subtitle {
    padding: 0 10px;
    text-align: center;
}
.widget-title h3,
.widget-title-home h3 {
    display: block;
    font-size: 24px;
    font-weight: 700;
    line-height: 23px;
    margin: 0;
    padding: 0 0 20px 0;
    text-align: left;
}
.top-widget .widget-title h3 {
    font-size: 14px;
    padding: 0;
    text-align: right;
}
.widget-title a {
    border-bottom: none;
    padding: 0 !important;
}
.title-404 { color: #993333 }
/* =404 Page
-------------------------------------------------------------- */
.error404 select,
.error404 input[type="text"],
.error404 input[type="password"],
.error404 input[type="email"] { width: auto }
/* =Top Menu
-------------------------------------------------------------- */
.top-menu {
    float: right;
    margin: 10px 0;
    padding: 0;
}
.top-menu li {
    display: inline;
    list-style-type: none;
}
.top-menu li a {
    border-left: 1px solid #cccccc;
    color: #333333;
    font-size: 11px;
    padding: 0 4px 0 8px;
}
.top-menu > li:first-child > a { border-left: none }
.top-menu li a:hover { color: #333333 }
/* =Header Menu (Primary)
-------------------------------------------------------------- */
.menu {
    clear: both;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#585858, endColorstr=#3d3d3d);
    margin: 0 auto;
}
.main-nav { clear: both }
.menu,
.menu ul {
    display: block;
    list-style-type: none;
    margin: 0;
    padding: 0;
}

#header {
    /*  -webkit-box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.2);;
    -moz-box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.2);
    box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.2);*/


}
.topmenu {
    width: 700px;
    height: 48px;
    display: inline-block;
    padding: 0;
}
.top_ong {
    display: inline-block;
    width: 80px;
}
.top-widget { display: inline-block }
.widget_polylang {
    display: inline-block;
    width: 50px;
    overflow: hidden;
    font-size: 12px;
    font-family: Karla;
    margin-top: 18px;
    padding-right: 3px;
}
.widget_polylang select {
    background: none;
    color: white;
    border-radius: 2px;
    -webkit-appearance: none;
    width: 40px;
}
.widget_polylang { background: url(716/trisel.png) no-repeat center black }
.widget_polylang option {
    background: black;
    color: white;
    padding: 2px;
}
.widget_polylang option:hover {
    background: white;
    color: black;
}
.menu {

    padding: 0;
    height: 44px;
}
.menu a { color: black }
.menu a:hover { color: black; }
.menu .food,.category-food a,.category-food-list a { color: #fa6e30 }
.menu .music,.category-music a,.category-music-stream a { color: #ffad00 }
.menu .paris,.category-paris a,.category-paris-blog a { color: #55a700 }
.menu .voyage,.category-voyage a,.category-voyage-article a, .category-travel-list a  { color: #006aae }

html body .topchef{color:black;}
html body .topcheffood,html body .topchefmusic,html body .topchefvoyage,html body .topchefparis{color:black;}



html body .topchef:hover{background:#4d208a ; color:white;  }
html body .topcheffood:hover,html .category-food .topcheffood{ background:#fc6911; color:white;}
html body .topchefmusic:hover,html .category-music .topchefmusic{ background:#ffad00; color:white;}
html body .topchefvoyage:hover,html .category-voyage .topchefvoyage{ background:#006aae; color:white;}
html body .topchefparis:hover,html .category-paris .topchefparis{ background:#55a700; color:white;}


#footer-jaune a{
    color:#ffad00;
}
#footer-bleu a{
    color:#006aae;
}
#footer-vert a{
    color:#55a700;
}
#footer-orange a{
    color:#fc6911;
}




/*
html body  .ftopchef{color:white;}
html body  .ftopcheffood,html body .ftopchefmusic,html body .ftopchefvoyage,html body .ftopchefparis{color:white;}
html body .ftopchef:hover{color:#4d208a ;  }
html body .ftopcheffood:hover,html .category-food .ftopcheffood{ color:#fc6911; }
html body .ftopchefmusic:hover,html .category-music .ftopchefmusic{ color:#ffad00; }
html body .ftopchefvoyage:hover,html .category-voyage .ftopchefvoyage{ color:#006aae; }
html body .ftopchefparis:hover,html .category-paris .ftopchefparis{ color:#55a700; }*/



.sousbarre{display:none;}

.menu .food:hover {
    background: #fa6e30;
    color: white;
}
.menu .music:hover {
    background: #ffad00;
    color: white;
}
.menu .paris:hover {
    background: #55a700;
    color: white;
}
ul.menu > li:hover {
    background-color: white;
    color: black;
}
ul.menu > li:hover a { }

ul.menu > li:hover .food {
    background: #fa6e30;
    color: white;
}
ul.menu > li:hover .music {
    background: #ffad00;
    color: white;
}
ul.menu > li:hover .paris {
    background: #55a700;
    color: white;
}

ul.menu > li:hover .voyage {
    background: #006aae;
    color: white;
}


.logo {
    background-color: black;
    background: url(716/716logo.jpg);
    background-repeat: no-repeat;
    background-position: left;
    width: 104px;
    height: 48px;
    display: inline-block;
}
ul.menu > .nowhite:hover {
    background: none;
    color: black;
}




.logo:hover { opacity: 0.5 }
.menu h3 { font-size: 14px;  text-transform:capitalize; }

.sousmenu{ padding:5px 20px;}
.sousmenu_droite { float: right; }
.sousmenu_food .sousmenu_droite { float: right;}
.sousmenu_gauche { float: left }
.sousmenu_food {
    width: 250px;
    height: 345px;
}
.sousmenu_music {
    width: 190px;
    height: 150px;
}
.sousmenu_paris {
    width: 60px;
    height: 70px;
}

.sousmenu_voyage
{
	    width: 150px;
    height: 80px;
}


.contacticon {
    background-image: url(716/head_mail.jpg);
    background-repeat: no-repeat;
    background-position:bottom;
    width: 39px;
    height: 44px;
}
.contacticon:hover {
    background-image: url(716/head_mail2.jpg);
    background-color:white;
    background-position:bottom;
}
.tv716 {

    color: black;
    background:white;
    font-family: Oswald, sans-serif;
    padding: 5px;
    border-radius: 3px;
    padding-bottom: 0px;
    border:1px solid black;
    font-size: 14px;
    height: 23px;
    margin-top: 5px;
    line-height: 17px;
    width: 54px;
    text-align: center;
    font-weight:normal;
}

.loupette{
    background-image:url(update1/loupe.jpg);
    width: 35px;
    height: 33px;
    margin-top: 5px;
}



.menusearch {
font-family: Oswald, sans-serif;
font-size: 14px;
/* vertical-align: middle; */
display: inline-block;
background: url(716/loupe.png) right no-repeat;
width: 72px;
height: 30px;
background-color: rgb(0, 0, 0);
border-radius: 3px;
/* padding: 5px 3px 0 0; */
margin-top: 9px;
padding-left: 12px;
line-height: 31px;
}
.menusearch:hover{
background-color:#333;
}
.menusearch:hover a{text-decoration:none;}

#enterserch{
text-align:center;
}

#enterserch .menusearch{
	border: 5px solid black;
	color: white;
text-align: center;

width: 200px;
height: 51px;
vertical-align: middle;
line-height: 50px;
text-transform: uppercase;
font-size: 20px;
font-weight: 100;

}


.menusearch:hover {
    color: white;
    text-decoration: underline;
}
.menutexte { margin-top: 4px }

.menu li {
    border: 0;
    display: block;
    float: left;
    padding: 0;
    position: relative;

}
.menu li:hover {
    white-space: normal;
    z-index: 10000;
}
.menu li li { float: none }


.menu ul {
    left: 0;
    position: absolute;
    top: 99999999px;
    opacity: 0; /* Hide sub level */
    -webkit-transition: opacity .25s ease-in-out;
    -moz-transition: opacity .25s ease-in-out;
    -o-transition: opacity .25s ease-in-out;
    z-index: 10;
}
.menu li:hover > ul {
    top: 100%;
    opacity:1;
}




.menu li li:hover > ul {
    left: 100%;
    top: 0;
}
.menu:after,
.menu ul:after {
    clear: both;
    content: '.';
    display: block;
    height: 0;
    overflow: hidden;
    visibility: hidden;
}
.menu,
.menu ul { min-height: 0 }
.menu ul,
.menu ul ul {
    margin: 0;
    padding: 0;
}
.menu ul li a:hover,
.menu li li a:hover {

    text-decoration: none;
}
.menu ul {
    margin-top: 1px;
    width: auto;
}
.space { width: 50px;}
.menu li.langs{
    float: right;
    margin-right: 17px;
    line-height: 4px;
    margin-top: 4px;
}
.langs a{
    padding: 0 1px;
}
.menu a {
    cursor: pointer;
    display: block;
    font-family: var(--font-display);
    font-size: 14px;
    line-height: 45px;
    margin: 0;
    padding: 0 0.9em;
    position: relative;
    white-space: nowrap;

    font-weight: bold;
}


.pub716{margin:auto;text-align:center;}

.menu a:hover { }
ul.menu > li:hover {  }
.menu .current_page_item a,
.menu .current-menu-item a { background-color: #343434 }
.front-page .menu .current_page_item a {
    background: none;
    background-color: transparent;
    background-image: none;
    filter: none;
}
.microbulle{
    width: 100%;
    height: 23px;
    background:url(update1/bul.png);
    background-repeat:no-repeat;
    background-position:left bottom;

}
.menu li li {
    background: none;
    background-image: none;

    color: #444444;
    filter: none;
    margin: -1px 0 1px 0;
    width: auto;

}
.sousmenu{
    background: #ffffff;

}


.menu li li a {

    border: none;
    color: #444444;
    font-size: 12px;
    font-weight: 400;
    line-height: 10px;
    padding: 5px 0px;
    text-shadow: none;
    white-space: nowrap;

}
.menu li li h3 a {
    font-size: 14px;
    padding-left: 0;
    font-weight: bold;
	text-transform:uppercase;
}
.menu li li a:hover {

    border: none;

    filter: none;
}

.sousmenu_food  a:hover{
	color:#fc6911;
}
.sousmenu_music a:hover{
	color:#ffad00;
}
.sousmenu_paris a:hover{
	color:#55a700;
}

.sousmenu_voyage a:hover{
	color:#006aae ;
}


.sousmenu_food  h3 a:hover{
	background-color:#fc6911;
	color:white;
}
.sousmenu_music h3 a:hover{
	background-color:#ffad00;color:white;
}
.sousmenu_paris h3 a:hover{
	background-color:#55a700;color:white;
}

.sousmenu_voyage h3 a:hover{
	background-color:#006aae ;color:white;
}


.menu li li:hover { filter: none }
.menu ul > li + li { border-top: 0 }
.menu li li:hover > ul {
    left: 100%;
    top: 0;
}
.menu > li:first-child > a { border-left: none }
.menu a#responsive_menu_button { display: none }
.main-nav #responsive_current_menu_item { display: none }
.sousbarre {
    margin: 0;
    padding: 0;
    height: 37px;
}

.icon {
    display: inline-block;
    width: 18px;
    height: 19px;
    margin-left: 6px;
}
.fb { background: url(top/ICN-white-fb.png);opacity: 0.9; }
.inst { background: url(top/ICN-white.png);opacity: 0.9;  }
.gp { background: url(top/ICN-white-gp.png);opacity: 0.9;  }
.sc { background: url(top/ICN-white-soundcloud.png);opacity: 0.9;  width: 26px; }
.tw { background: url(top/ICN-white-twitter.png);width: 24px;opacity: 0.9;  }
.mx { background: url(top/ICN-white-mixcloud.png);width: 26px; opacity: 0.9; }
.yt { background: url(top/ICN-YT.png) }
.rss { background: url(top/rss.png); width:26px;}
.socio{background:black;}
.socio2{background:white;}
.tw:hover{    background:#00aced;}
.inst:hover{    background:#517fa4;}
.fb:hover{    background:#3b5998;}
.sc:hover{    background:#f50 ;}
.mc:hover{    background:#00bf8f;}
.gp:hover{    background:#dd4b39;}
.rss:hover{    background:#CCC;}
.contact:hover{    background:#CCC;}

.fb:hover { opacity:1;}
.inst:hover { opacity:1;}
.gp:hover {opacity:1; }
.sc:hover {opacity:1;}
.tw:hover { opacity:1; }
.mc:hover {  opacity:1;}
.yt:hover { opacity:1; }

.menu #logal a{display:inline-block;}

#daslogan {
    height: 19px;
    margin: 0;
    padding: 0;
    font-size: 14px;
    font-family: KARLA;
    color: white;
    float: left;
    line-height: 0.4;
}
.socialicons {
    display: inline-block;
    width: 325px;
    margin: 0;
    padding: 0;
    height: 27px;
    margin-top: -17px;
    float: right;
    padding-top: 10px;
    padding-right: 20px;
    text-align: right;
}

.socialicons_footer {
    display: inline-block;
    width: 180px;
    margin: 0;
    padding: 0;
    height: 27px;
    /* margin-top: -17px; */
    float: right;
    padding-top: 10px;
    padding-right: 20px;
    text-align: right;
    border-left: 1px solid white;
}

.slogan {
    display: inline-block;
    color: white;
    font-family: KARLA;
    margin: 0;
    padding: 0;
    height: 16px;
    margin-top: -17px;
    float: right;
    padding-top: 10px;
    padding-left: 10px;

    font-size: 14px;

	overflow:hidden;
	text-align: right;
}
.breadcrumb-list{text-transform: uppercase; font-size:12px;}
.breadcrumb a {text-transform: uppercase;}
.slogan a { color: white }
/*.js .main-nav .menu { */
/*display: block;_NO__DOTCOMMA__AFTER___NO__DOTCOMMA__AFTER__*/
/*}*/
/* =Primary Main Menu IE Fixes
-------------------------------------------------------------- */
.ie7 .menu ul { background: url(core/images/ie7-fix.gif) repeat }
.ie7 .menu li li a { min-width: 100% }
/* =Sub-Header Menu
-------------------------------------------------------------- */
.sub-header-menu {
    background-color: #ffffff;
    border: 1px solid #e5e5e5;
    border-top: none;
    clear: both;
    margin: 0 auto;
}
.sub-header-menu,
.sub-header-menu ul {
    display: block;
    list-style-type: none;
    margin: 0;
    padding: 0;
}
.sub-header-menu li {
    border: 0;
    display: block;
    float: left;
    margin: 0;
    padding: 0;
    position: relative;
    z-index: 5;
}
.sub-header-menu li:hover {
    white-space: normal;
    z-index: 10000;
}
.sub-header-menu li li { float: none }
.sub-header-menu ul {
    left: 0;
    position: absolute;
    top: 0;
    visibility: hidden;
    z-index: 10;
}
.sub-header-menu li:hover > ul {
    top: 100%;
    visibility: visible;
}
.sub-header-menu li li:hover > ul {
    left: 100%;
    top: 0;
}
.sub-header-menu:after,
.sub-header-menu ul:after {
    clear: both;
    content: '.';
    display: block;
    height: 0;
    overflow: hidden;
    visibility: hidden;
}
.sub-header-menu,
.sub-header-menu ul { min-height: 0 }
.sub-header-menu ul,
.sub-header-menu ul ul {
    margin: 0;
    padding: 0;
}
.sub-header-menu ul li a:hover,
.sub-header-menu li li a:hover {
    color: #484848;
    text-decoration: none;
}
.sub-header-menu ul {
    margin-top: 1px;
    min-width: 15em;
    width: auto;
}
.sub-header-menu a {
    border-left: 1px solid #e5e5e5;
    color: #333333;
    cursor: pointer;
    display: block;
    font-size: 12px;
    font-weight: 400;
    height: 35px;
    line-height: 35px;
    margin: 0;
    padding: 0 0.9em;
    position: relative;
    text-decoration: none;
    text-shadow: none;
}
.sub-header-menu a:hover {
    -moz-background-clip: padding-box;
    -webkit-background-clip: padding-box;
    background-color: #f9f9f9;
    background-clip: padding-box;
}
.sub-header-menu .current_page_item a,
.sub-header-menu .current-menu-item a { background-color: #f9f9f9 }
.sub-header-menu li li {
    background: #ffffff;
    background-image: none;
    border: 1px solid #e5e5e5;
    color: #444444;
    filter: none;
    margin: -1px 0 1px 0;
    width: auto;
}
.sub-header-menu li li a {
    border: none;
    color: #444444;
    font-size: 12px;
    font-weight: 400;
    height: auto;
    height: 20px;
    line-height: 20px;
    padding: 5px 10px;
    text-shadow: none;
}
.sub-header-menu li li a:hover {
    background: #f9f9f9;
    background-image: none;
    border: none;
    color: #444444;
    filter: none;
}
.sub-header-menu ul > li + li { border-top: 0 }
.sub-header-menu li li:hover > ul {
    left: 100%;
    top: 0;
}
.sub-header-menu > li:first-child > a { border-left: none }
.sub-header-menu ul.children a,
.sub-header-menu .current_page_ancestor,
.sub-header-menu .current_page_ancestor ul a {
    background: none;
    background-image: none;
    filter: none;
}
/* =Sub Header Menu IE Fixes
-------------------------------------------------------------- */
.ie7 .sub-header-menu ul { background: url(core/images/ie7-fix.gif) repeat }
.ie7 .sub-header-menu li li a { min-width: 100% }
/* =Footer Menu
-------------------------------------------------------------- */
.footer-menu {
    margin-left: 0;
    padding: 0;
}
.footer-menu li {
    display: inline;
    list-style-type: none;
}
.footer-menu li a {
    border-left: 1px solid #cccccc;
    color: #333333;
    padding: 0 8px;
}
.footer-menu li a:hover { color: #222222 }
.footer-menu > li:first-child > a {
    border-left: none;
    padding: 0 8px 0 0;
}
/* =Navigation
-------------------------------------------------------------- */
.navigation {
    color: #111111;
    display: block;
    font-size: 13px;
    height: 28px;
    line-height: 28px;
    margin: 20px 0;
    padding: 0 5px;
    font-family: Oswald;
}

.navigation div{background:#ff8854;}
.navigation div:hover{background:#fa6e30;}

.category-food  .navigation div,
.category-food-en  .navigation div { background: #fc6911 }
.category-music  .navigation div,
.category-music-en  .navigation div,
.category-music-stream  .navigation div,
.category-music-stream-en  .navigation div{ background: #ffad00 }
.navigation a {
    color: white;
    padding: 4px 10px;
    font-weight: 100;
    font-size: 16px;
}
.navigation a:hover {

    color:white;
    text-decoration: none;
}
.navigation .previous { float: left }
.navigation .next { float: right }
.navigation .bracket { font-size: 36px }
/* =Pagination (pages)
-------------------------------------------------------------- */
.pagination {
    clear: both;
    display: block;
    font-size: 16px;
    font-weight: 700;
    margin: 10px 0;
    padding: 5px 0;
}
.pagination a { text-decoration: none }
/* =Breadcrumb Lists
-------------------------------------------------------------- */
.breadcrumb-list {  }
/* =Comments
-------------------------------------------------------------- */
#commentform { margin: 0 }
.commentlist {
    border-bottom: 1px solid #e5e5e5;
    list-style: none;
    margin: 0;
    padding: 0;
}
.commentlist ol { list-style: decimal }
.commentlist li {

    margin: 0;
}
.commentlist .bypostauthor { }
.commentlist li cite {
    color: #111111;
    font-size: 1.1em;
    font-style: normal;
    font-weight: 400;
}
.commentlist li.alt { background: #f9f9f9 }
.commentlist .children {
    list-style: none;
    margin-left: 10px;
    padding: 10px;
}
.commentlist .avatar {
    -webkit-border-radius: 35px;
    -moz-border-radius: 35px;
    border-radius: 35px;
    float: left;
    margin-right: 10px;
    padding: 0;
    vertical-align: middle;
}
.comment-author .fn { }
.comment-author .says { color: #999999 }
.comment-body .comment-meta {
    color: #999999;
    display: inline-block;
    margin: 0;
    padding: 0;
    text-align: left;
}
.comment-body .comment-meta a { font-size: 15px }
.comment-body {
    clear: both;
    padding: 0;
}
.comment-body p {
    clear: both;
    padding: 10px;
    background: white;
    border: 1px solid #979797;


}


.says{display:none;}
.depth-1 .avatar{display:none;}
.alt .avatar{display:inline-block;}

.comment-author,.comment-meta{display:inline-block; vertical-align: top;}
.alt   .comment-body {   padding-left:200px;}
.alt   .comment-body p {
    clear: both;
    padding: 10px;
    background: none;
    border: none;
    /* position: absolute; */
    margin-left: 60px;
    margin-top: -37px;

}
.comment-form .logged-in-as{display:none;}
.comment-form .comment-author{font-size:15px;}
.comment-form .comment-meta a {font-size:15px; color:black;}
.comment p {color:#919191;}






.comment-body .reply { }
.pingback,
.trackback {
    list-style: none;
    margin: 20px 0;
}
.pingback cite,
.trackback cite { font-style: normal }
#pings,
#comments { text-align: left }
#respond {

}
#respond label { display: inline }
body .reply {
    margin: 10px 0;
    float: right;
    background: #343434;
    color: white;
    padding: 10px;
    border-radius:4px;

}
body .reply a{ color:white;}
body .comment-meta a{color:black; font-size:15px;}

.comment-form-url input,
.comment-form-email input,
.comment-form-author input,
.comment-form-comment textarea {
    display: block;
    width: 100%;
}
.nocomments {
    color: #999999;
    font-size: .9em;
    text-align: center;
}




/* =WordPress Core
-------------------------------------------------------------- */

/*
.alignnone { margin: 0 21px 20px 0 }
.aligncenter,
div.aligncenter {
    display: block;
    margin: 5px auto 20px auto;
}
.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}
.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}
.aligncenter {
    display: block;
    margin: 5px auto;
}
a img.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}

   /* float: left;
    margin: 5px 20px 20px 0;
}*/

a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.wp-caption {
    background: #f9f9f9;
    border: 1px solid #f0f0f0;
    max-width: 96%;
    padding: 13px 10px 10px 10px;
    text-align: center;
}
.wp-caption.alignnone { margin: 5px 20px 20px 0 }
.wp-caption.alignleft { margin: 5px 20px 20px 0 }
.wp-caption.alignright { margin: 5px 0 20px 20px }
.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: auto;
}
.wp-caption p.wp-caption-text {
    font-size: 12px;
    line-height: 1.5em;
    margin: 0;
    padding: 10px;
} /*
img.wp-smiley { vertical-align: middle }
/* =WordPress Gallery
-------------------------------------------------------------- */
.gallery { margin: 0 auto 18px }
.gallery .gallery-item {
    float: left;
    margin-top: 0;
    text-align: center;
    max-width: 155px;
}
.gallery img { border: 1px solid #dddddd }
.gallery .gallery-caption {
    font-size: 12px;
    margin: 0 0 12px;
}
.gallery dl { margin: 0 }
.gallery br+br { display: none }
.attachment-gallery img {
    background: #ffffff;
    border: 1px solid #f0f0f0;
    display: block;
    height: auto;
    margin: 15px auto;
    max-width: 96%;
    padding: 5px;
    width: auto;
}
.gallery-meta .iso,
.gallery-meta .camera,
.gallery-meta .shutter,
.gallery-meta .aperture,
.gallery-meta .full-size,
.gallery-meta .focal-length { display: block }
/* =Post Thumbnails
-------------------------------------------------------------- */
img.wp-post-image,
img.attachment-full,
img.attachment-large,
img.attachment-medium,
img.attachment-thumbnail {

}
/* =Buttons
-------------------------------------------------------------- */
a.button,
input[type='reset'],
input[type='button'],
input[type='submit'] { }
a.button:hover,
input[type='reset']:hover,
input[type='button']:hover,
input[type='submit']:hover { }
a.button:active,
input[type='reset']:active,
input[type='button']:active,
input[type='submit']:active { }
/* =Buttons (Call to Action)
-------------------------------------------------------------- */
.call-to-action { text-align: center }
.call-to-action a.button {
    font-size: 24px;
    padding: 15px 35px;
}
.call-to-action a.button:hover { text-decoration: none }
.ie7 .call-to-action a.button { padding: 11px 35px 19px 35px }
/* =Buttons (Sizes)
-------------------------------------------------------------- */
.small a.button {
    font-size: 10px;
    padding: 3px 6px;
}
.medium a.button {
    font-size: 16px;
    padding: 8px 16px;
}
.large a.button {
    font-size: 18px;
    padding: 10px 35px;
}
.xlarge a.button {
    font-size: 24px;
    padding: 12px 55px;

}
/* =Buttons (Colors)
-------------------------------------------------------------- */
/* =Info Boxes
-------------------------------------------------------------- */
.info-box {
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    display: block;
    margin: 20px 0;
    padding: 15px;
    text-align: left;
}
.alert {
    background-color: #faebeb;
    border: 1px solid #dc7070;
    color: #212121;
}
.address {
    background-color: #f6f5ef;
    border: 1px solid #cdc9a5;
    color: #212121;
}
.notice {
    background-color: #fbf9e9;
    border: 1px solid #e3cf57;
    color: #212121;
}
.success {
    background-color: #f9fde8;
    border: 1px solid #a2bc13;
    color: #212121;
}
.download {
    background-color: #fff4e5;
    border: 1px solid #ff9912;
    color: #212121;
}
.information {
    background-color: #eef3f6;
    border: 1px solid #6ca6cd;
    color: #212121;
}
.required { color: #d5243f }
/* =WooCommerce
-------------------------------------------------------------- */
#breadcrumb { padding: 40px 0 0 0 }
#breadcrumb a {
    color: #0066cc;
    font-size: 12px;
    font-weight: 400;
}
#breadcrumb a:hover {
    color: #444444;
    text-decoration: none;
}
#content-woocommerce {
    margin-top: 40px;
    margin-bottom: 20px;
}
.products ul,
ul.products { margin-top: 40px }
.cart-collaterals .shipping_calculator { width: 100% }
table.shop_table { }
table.cart td.actions .coupon .input-text,
table.cart td.actions .coupon .input-text { cursor: text }
/* =WPML
-------------------------------------------------------------- */
.icl_languages_selector {
    float: right;
    text-align: left;
}
.rtl .icl_languages_selector {
    float: left;
    text-align: right;
}


#serchpage {
    padding: 0;
    font-family: KARLA;
    font-size: 17px;
}
#box_rech1 {
    text-align: left;
    padding-left: 20px;
    padding-top: 30px;
    margin-bottom: 20px;

    border-bottom: 2px dashed #CCC;
}
#box_noire {
    background: black;
    color: white;
    margin: 0;
    padding: 10px;
    text-align: center;
}
#box_where {
    text-align: left;
    padding: 10px 10px 10px 20px;
    display: none;
    border-bottom: 2px dashed #CCC;
    margin-bottom: 30px;
}
#box_where2 {
    text-align: left;
    padding-left: 20px;
    display: none;
    border-bottom: 2px dashed #CCC;
}
#box_archive {
    text-align: left;
    padding-left: 20px;
    padding-top: 10px;
}
#box_categ {
    text-align: left;
    padding-left: 20px;
    padding-top: 10px;
    display: none;
}
.mybox {
    text-align: left;
    padding-left: 20px;
    display: none;
    border-bottom: 2px dashed #CCC;
    padding-bottom: 20px;
}
#searchsubmit {
    width: 60px;
    height: 42px;
    background-color: #878787;
    background-image: url(716/peulou.png);
    background-repeat: no-repeat;
    border: none;
    background-position: center;
    border-radius: 3px;
    border-style: none;
    outline: none;
    display: inline-block;
    margin: 10px;
    margin-top: 8px;
    vertical-align: middle;

}
.fmenu a{color:white;}
#s {
    height: 28px;
    border: none;
    border-radius: 5px;
    margin-right: 20px;
    width:400px;
    border:3px solid #CCC;
}
#serchpage h3 {
    font-family: Oswald;
    font-size: 18px;
    font-weight: 400;
    color: black;
    margin: 0.2em 0em 0.2em 0;
}
.s_but {
    display: inline-block;
    border-radius: 3px;
    margin-right: 10px;
    font-family: Oswald;
    padding: 17px;
    color: #8f8f8f;
    cursor: pointer;
}
.s_but3 {
    display: inline-block;
    border-radius: 3px;
    margin-right: 1%;
    font-family: Oswald;
    padding: 10px;
    color: #ffac10;
    cursor: pointer;
    font-size: 150%;
    border: 1px solid #ffac10;
    font-weight: normal;
    font-weight: 100;
}
#pub {
    margin: 0;
    padding: 0;
    width: 965px;
    height: 110px;
    text-align: center;
    margin: 20px auto;
}
.butons_s {
    margin-top: 23px;
    padding:0 ;
    margin-bottom: 20px;
}
.sfood { background: #fee2d6 }
.smusic { background: #ffeecf }
.sparis { background: #ecf1cd }
.svoyage { background: #e0f7ff }


.sany {
    background: #878787;
    margin-left: 30px;
    color: white;
}
.s_buta {
    display: inline-block;
    border-radius: 3px;
    margin-right: 10px;
    font-family: Oswald;
    padding: 17px;
    font-size: 15px;
    font-weight: 100;
    background: #e7e7e7;
    color: #c1c1c1;
    cursor: pointer;
}
.choix {
    font-family: Oswald;
    font-size: 15px;
    font-weight: 300;
    vertical-align: middle;
    height: 42px;
    width: 163px;
    margin: 0;
}
.s_where1 {
    display: inline-block;
    border-radius: 3px;
    margin-right: 10px;
    font-family: Oswald;
    padding: 17px;
    font-size: 14px;
    font-weight: 300;
    background: #fee2d6;
    color: #c1c1c1;
    cursor: pointer;
}
.m_music1 {
    display: inline-block;
    border-radius: 3px;
    margin-right: 10px;
    font-family: Oswald;
    padding: 17px;
    font-size: 14px;
    font-weight: 300;
    background: #ffeecf;
    color: #c1c1c1;
    cursor: pointer;
}
#many { margin-left: 227px }
.sw2 {
    display: inline-block;
    border-radius: 2px;
    margin-right: 10px;
    font-family: Oswald;
    padding: 17px;
    font-size: 14px;
    font-weight: 300;
    background: #fee2d6;
    color: #c1c1c1;
    cursor: pointer;
    margin-bottom: -10px;
}
.sw3 {
    display: inline-block;
    border-radius: 2px;
    margin-right: 10px;
    font-family: Oswald;
    padding: 17px;
    font-size: 14px;
    font-weight: 300;
    background: #fee2d6;
    color: #c1c1c1;
    cursor: pointer;
    margin-bottom: -10px;
}
.ar { color: #fc6911 }
.colparis {
    display: inline-block;
    width: 180px;
}
#archive_s { margin-top: 7px;margin-bottom: 30px;
}
#side_res1 {
    background: #55a700;
    color: white;
    text-align: center;
    margin-bottom: 20px;
}
#side_res2 {
    background: #fc6911;
    color: white;
    text-align: center;
    margin-bottom: 20px;
}
.myside {
    text-align: center;
    padding: 30px;
    padding-top: 10px;
    padding-bottom: 20px;
    font-size: 90%;
}
.flechetrans {
    background-image: url('716/fleche.png');
    width: 175px;
    height: 27px;
    font-family: oswald;
    padding-top: 9px;
    font-size: 18px;
    opacity: .5;
    margin: auto;
    margin-top: 10px;
    /* margin-left: 6px; */
    text-align: left;
    padding-left: 13px;
}
.side_b1 {
    font-family: Oswald;
    text-align: center;
    color: #ffad00;
    font-weight: normal;
    padding: 14px;
    border: 1px solid #EEE;
    background: white;
    margin-bottom: 10px;
    font-size: 17px;
    border-left: 10px solid #ffad00;
    font-weight: 100;
}
#fieldtrip {
    background: #fc6911;
    color: white;
    text-align: center;
    padding: 10px;
    margin-bottom: 20px;
    text-align: center;
    padding-top: 10px;
    padding-bottom: 20px;
    font-size: 90%;

}
.related1 {
    background: #fc6911;
    color: white;
    text-align: center;
    height: 81px;
    padding: 30px;
    margin-bottom: 30px;
    overflow: hidden;

}

.related1 .title{
    font-size: 13px;}

#sidepub {
    color: white;
    text-align: center;
    height: 500px;
    padding: 30px;
    margin-bottom: 20px;
    border: 2px solid #CCC;
}
#twitterbox {

    color: white;
    text-align: center;

    margin-bottom: 20px;
}
#decou_verte {
    background: #fc6911;
    color: white;
    text-align: center;
    height: 81px;
    padding: 30px;
    margin-bottom: 20px;
}
#decou_rouge {
    background: #fc6911;
    color: white;
    text-align: center;
    height: 81px;
    padding: 30px;
    margin-bottom: 20px;
}


.homeside{
    height:220px; margin-bottom: 20px; margin-right: 20px; overflow: hidden;

}





#sidearchive { font-family: oswald }
h2,
h2 a,
a h2 {
    font-size: 20px;
    margin-bottom: .75em;
    margin-top: .75em;
    font-family: oswald;
    text-align: left;
    font-weight: 100;
}

.caption h2{
    color:#f9a900;
}
.category-food h2,
.category-food-en h2 {

    font-weight: 100;
}
.category-food .metasig,
.category-food-en .metasig,
.category-food .metasig a,
.category-food-en .metasig a,
.category-food .cul_right a,
.category-food .cul_right { color: #fc6911 }
.mytitle {

    text-align: center;
    padding: 0 0px;
}
.mytitle div,
.mytitle h2 { display: inline-block }
.mytitle2 {
    display: inline-block;
    background: white;
    padding-left: 10px;
    padding-right: 10px;
}
.mytitle2 h2 {
    font-size: 23px;
    margin: 0;
    margin-top: 18px;
}
.line {
    height: 29px;
    width: 100%;
    margin-bottom: 30px;

}
.line3
{
    height: 29px;
    width: 100%;
    margin-bottom: 30px;

}


.white { color: white }

#header .white a{}

.fvert { background-color: #55a700 }
.fjaune { background-color: #ffad00 }
.forange { background-color: #fc6911 }
.fvoyage{background-color:#006aae }
.fgris { background-color: #4d208a }



.category-voyage .metasig a,.category-voyage .cul_right a,.category-voyage .mytags  a ,.category-voyage .mytitle2{ color: #006aae }
.category-paris .metasig a,.category-paris .cul_right a,.category-paris .mytags  a { color: #55a700 }
.category-paris-blog .metasig a,.category-paris-blog .cul_right a,.category-paris-blog .mytags  a { color: #55a700 }
.category-food .metasig a,.category-food .cul_right a,.category-food .mytags  a { color: #fc6911 }
.category-food-list .metasig a,.category-food-list .cul_right a,.category-food-list .mytags  a { color: #006aae }
.category-travel-list .metasig a,.category-travel-list .cul_right a,.category-travel-list .mytags  a { color: #fc6911 }
.category-music .metasig a,.category-music .cul_right a,.category-music .mytags  a { color: #ffad00 }
.category-music-stream .metasig a,.category-music-stream .cul_right a,.category-music-stream .mytags  a { color: #ffad00 }


.category-voyage .line,.category-voyage-article .line{ border-bottom: 1px solid #006aae;}
.category-paris .line,.category-paris-blog .line{ border-bottom: 1px solid #55a700;}
.category-music .line,.category-music-stream .line{ border-bottom: 1px solid #ffad00;}
.category-food .line,.category-food-list .line{ border-bottom: 1px solid #fc6911;}
.category-food .line,.category-travel-list .line{ border-bottom: 1px solid #006aae;}



.meta-prep { display: none }
.timestamp {
    font-family: oswald;
    font-weight: 100;
}
.mytags  a{


    text-decoration:underline;
    margin-right:5px;
}
.pointi {
    /*border-bottom: 1px dashed #CCC;*/
    margin-top: 10px;
    margin-bottom: 10px;

}
.cul_left { float: left }
.cul_left a { color: black }
.cul_right,
.cul_right a {
    float: right;
    font-weight: bold;
}
.fb-like {
    display: inline-block;
    top: -6px;
    left: -14px;
}
.comsicon {
    background: url(716/coms.png);
    width: 35px;
    height: 30px;
    display: inline-block;
}
#preguillaume { text-align: center }
#guillaume {
    font-family: oswald;
    text-align: center;
}
#sousguillaume { }
#guigauche {
    float: left;
    width: 30%;
}
#guigauche_top { background: #fc6911 }
#guicentre { }
#guicentre_email { background: #55a700 }
#magica { color: #55a700 }
#telephone { background: #ffad00 }
#guiright { float: right }
#logo2 {
    display: inline-block;
    font-family: oswald;
    padding: 0;
    height: 45px;
    vertical-align: top;
    padding-top: 2px;
    font-weight: 100;
    font-size: 30px;

}
.vert,.paris { color: #55a700 }
.jaune,.music { color: #ffad00 }
.orange,.food { color: #fc6911 }




.white { color: white }
.fvert { background-color: #55a700 }
.fjaune { background-color: #ffad00 }
.forange { background-color: #fc6911 }
.fvoyage{background-color:#006aae }
.fgris { background-color: #4d208a }
.footer {
    height: 297px;
    color: white;
    max-width: 100%;
    overflow: hidden;
}
.menu .voyage{color:#006aae;}

#footer2 {
    width: 970px;
    margin: auto;
    margin-top: 150px;
}
#footer-gris #footer2,#footer-voyage #footer2{margin-top:20px;}
#footer3 { border-top: 1px solid white }
#footer2 .socialicons {
    border-left: 1px solid white;
    margin-top: 0;
}
#footer-jaune { background-image: url('716/footer_music.jpg') }
#footer-orange { background-image: url('716/footer_food.jpg') }
#footer-vert { background-image: url('716/footer_paris.jpg') }
#footer-gris { background-color: black;
    height: 166px;
}

#footer-voyage{
    background-color: black;
    height: 166px;
}

#signature {
    background-image: url('716/footer_signature.jpg');
    width: 613px;
    height: 72px;
    background-repeat: no-repeat;


}
.footleft {

}
.footright {
    float: right;
    width: 243px;
}
.fmenu { display: inline-block;width: 100%; }
.fmenu a {
    cursor: pointer;
    font-family: 'Karla', sans-serif;
    font-size: 16px;
    line-height: 45px;
    margin: 0;
    margin-right: 12px;
    position: relative;
    white-space: nowrap;
    display: inline-block;
}

.fmenu .socialicone3 a{
    line-height:normal;
    margin:0;
}
.socialicone3{float:right;}
.socialicone3 .socio{margin:0}

.homecul { height: 60px }

.thumb716 {
    max-height: 320px;
    margin-bottom: 10px;

    /* position: absolute; */
    width: 100%;
    /* margin-bottom: 300px; */
    margin-left: -20px;
    width: 106.5%;
    overflow:hidden;
    position: relative;

}


.thumb7162 {
    height: 320px;
    margin-bottom: 10px;
    background-color:#CCC;
    /* position: absolute; */
    width: 100%;
    /* margin-bottom: 300px; */
    margin-left: -20px;
    width: 106.5%;
    overflow:hidden;
}


.category-music .thumb716,.category-music-stream .thumb716 { border-top: 5px solid #ffad00 }
.category-food .thumb716,.category-food-list .thumb716  { border-top: 5px solid #fc6911 }
.category-food .thumb716,.category-travel-list .thumb716  { border-top: 5px solid #006aae }
.category-paris .thumb716,.category-paris-blog .thumb716 { border-top: 5px solid #55a700 }
.category-voyage .thumb716,.category-voyage-article .thumb716  { border-top: 5px solid #006aae  }
.post-entry h2,
.post-entry h2 a {
    font-size: 25px;

    text-align: left;
}
.post-entry h3 {
    text-align: center;
    font-size: 18px;
}
#pub2 {

    margin: 20px auto;
    text-align: center;
}
#myrelate .nr_text {
    top: 5px;
    left: 5px;
    background: white;
    color: black;
    -webkit-box-shadow: 10px 10px 10px rgba(0, 0, 0, 0.5);
    -moz-box-shadow: 10px 10px 10px rgba(0, 0, 0, 0.5);
    box-shadow: 10px 10px 10px rgba(0, 0, 0, 0.5);
    height: 71px;
    font-family: Oswald;
    border: none;
    border-left: none;
    position: absolute;
    width: 110px;
    padding: 5px;
    height: 110px;
    overflow: hidden;
    font-size: 17px;
    font-weight: 100;
}
#myrelate .nr_text {
    border: none;
    border-left: none;
}
#myrelate .nrelate_toon .nr_excerpt {
    display: block;
    font-family: KARLA;
    font-size: 12px;
    margin-top: 14px;
}

.nr_post_title{

    font-size: 183%;
    line-height: normal;}

.nr_img_div img {
    display: block;
    line-height: 0;
    position: relative;
    background: none repeat scroll 0 0 #000;
    background-color: transparent;
    border: 0 solid #ccc!important;
    margin-right: 10px;
}
.nr_panel {
    float: left;
    background: none;
    border: 0 solid transparent!important;
    display: block;
    text-decoration: none;
    cursor: pointer;
    position: relative;
    margin: 0!important;
    padding: 1px 1px 0;
    margin-right: 10px;
}
#mycoms {
    border-top: 1px solid black;
    border-bottom: 1px solid black;
    font-family: Oswald;
    font-size: 26px;

    padding-top: 5px;
    padding-bottom: 5px;
    margin-top: 30px;
    margin-bottom: 30px;
    vertical-align: middle;
    line-height: 35px;
    font-weight: 100;
    display: inline-block;
}
#precom {
    font-size: 17px;
    text-transform:uppercase;
    font-family: KARLA;
    margin-bottom: 20px;
    font-variant: small-caps;
    color: #999999;
}
.acf-map {
    width: 100%;
    height: 400px;
    border: #ccc solid 1px;
    margin: 20px 0;
}
.food_id {
    border: 1px solid #fc6911;
    padding: 20px;
    max-width: 320px;
    margin: 20px auto;
    text-align: center;
    color: #818181;
    font-family: KARLA;
}
.foodnom,
.foodadress {
    color: #fc6911;
    font-weight: bold;
    font-size: 120%;
}
.foodadress {
    text-decoration: underline;
    font-size: 110%;
}


.category-voyage .food_id{  border: 1px solid #006aae;}
.category-voyage .food_id .foodnom, .category-voyage .food_id .foodadress{
    color:#006aae;

}

.category-voyage-article .food_id{  border: 1px solid #006aae;}
.category-voyage-article .food_id .foodnom, .category-voyage-article .food_id .foodadress{
    color:#006aae;

}

.langs a {color:#acacac}
.langs a:hover{color:black;}





.foodie {
    padding-top: 60px;
    background-position: top;
    background-repeat: no-repeat;
    margin-bottom: 30px;
}
.foodtit {
    color: #818181;
    font-family: KARLA;
    font-size: 120%;
    text-align: center;
    margin-bottom: 30px;
}
#food_resume { background-image: url(716/food_resume.jpg) }
#le_restaurant { background-image: url(716/food_restaurant.jpg) }
#lequipe { background-image: url(716/food_equipe.jpg) }
#le_repas { background-image: url(716/food_repas.jpg) }
#le_bilan { background-image: url(716/food_bilan.jpg) }
#la_petite_histoire { background-image: url(ico_voyage/un_peu_dhistoire.png) }


#expli{
    width: 500px;
    margin: 20px auto;

}






#paris_form {
    background: url(716/paris_hup.jpg);
    height: 282px;
    width: 100%;
    background-position: center;
    text-align: center;
    padding-top: 74px;
    font-smooth: always;
}
#paris_title {
    font-family: oswald;
    color: white;
    font-size: 54px;
    font-weight: 100;
    margin-bottom: 33px;
}
#paris_title2 {
    color: white;
    font-size: 30px;
    margin-bottom: 10px;
}
#paris_title3 {
    color: white;
    font-size: 20px;
}
.paris_field {
    height: 53px;
    border-radius: var(--radius);
    margin-right: 10px;
    border: 2px solid #475475;
    width: 300px;
    padding: 0 20px;
}
.paris_head_select {
    background: #4f5d7d;
    height: 53px;
    border-radius: var(--radius);
    margin-right: 10px;
    border: 2px solid #475475;
    color: #a8b4bd;
    padding: 0 20px;
}
#search_paris {
    border: none;
    color: white;
    border-radius: var(--radius);
    height: 53px;
    background: #55a700;
    border: 2px solid #55a700;
    padding: 0 20px;
}
#homecon table {
    margin-left:auto;
}

#homecon td{border:none; padding:0px; color:#414141}
.category-paris .homethumb{width:220px; height:220px; margin-bottom: 20px; margin-right: 20px; overflow: hidden; }
.category-paris .homethumb2{width:460px; height:220px; margin-bottom: 20px; margin-right: 20px; overflow: hidden;}
.category-paris .homethumb4{width:460px; height:460px; margin-bottom: 20px; margin-right: 20px; overflow: hidden;}

.homethumb11 .homethumb13 .homethumb15 .homethumb21 .homethumb22 .homethumb24 .homethumb31 .homethumb32 .homethumb33 .homethumb34 .homethumb35{width:250px; height:250px; margin-bottom: 20px; margin-right: 20px; overflow: hidden; }
.homethumb12 .homethumb14 .homethumb36 {width:520px; height:250px; margin-bottom: 20px; margin-right: 20px; overflow: hidden;}
.homethumb23 {width:520px; height:526px; margin-bottom: 20px; margin-right: 20px; overflow: hidden;}

#homecon #momo_table{
    position: absolute;
    margin-left: -50px;
}
#faux_momo{
    height:1638px;
}

.foodb .infol{background:#fc6911;}
.musicb .infol{background:#ffad00;}
.parisb .infol{background:#55a700;}
.voyageb .infol{background:#006aae;}

.category-food .comment-form label,.category-food-list .comment-form label{color:#fc6911; }
.category-paris .comment-form label,.category-paris-blog .comment-form label{color:#55a700; }
.category-voyage .comment-form label,.category-voyage-article .comment-form label{color:#006aae; }
.category-music .comment-form label,.category-music-stream .comment-form label{color:#ffad00; }



.category-food .comment-form #submit,.category-food-list .comment-form #submit{background:#fc6911; }
.category-paris .comment-form #submit,.category-paris-blog .comment-form #submit{background:#55a700; }
.category-voyage .comment-form #submit,.category-voyage-article .comment-form #submit{background:#006aae; }
.category-music .comment-form #submit,.category-music-stream .comment-form #submit{background:#ffad00; }

.comment-form-author input, .comment-form-email input{
    width:200px;
    height:28px;
}

.comment-form #submit{
    padding:10px;
    color:white;
    font-family:OSWALD;
    font-weight:100;
    border-radius: var(--radius);
}


.morearticles{
    font-family: OSWALD;
    text-align: right;
    height: 39px;
    font-size: 18px;
    margin-top: 10px;
    float: right;
    color: gray;
}
.floatingbastard
{
    position:absolute;
    width: 300px;
    margin-left: -255px;
    font-size:15px;

}

#reply-title{display:none;}
.inline{display:inline-block; }

.comment-form-author{margin-left: 35px;}

.comment-form p{display:inline;}
.comment-form .form-allowed-tags{display:none;}
.comment-form .comment-notes{display:none;}

.comment-form .form-submit{float: right;
    margin-top: 20px;}

.comment-form input{border:none;}
.comment-form label{
    font-weight: normal;
    padding: 2px 0;

    /* font-variant: small-caps; */
    font-size: 15px;
    text-transform: uppercase;
}
.comment-form textarea{border:none; margin-bottom: 25px;}


















.infol_titre{
    background:white;

    position: absolute;
    margin:10px;
    padding:5px;
    max-width:190px;

}
.ininfol{margin:20px;}
.infol{
  opacity:0;
    padding: 0px 0;
    width: 100%;
    height: 100%;
    margin: 0;
    overflow: hidden;
    color: black;
    z-index: 2;
    text-align: center;
    color:white;
    position:relative;
}
.infol:hover{
   opacity:1;
    z-index:999;
}
.related1 .infol{
    opacity:1;

    font-size:12px;
}
.related1 .infol .title{
    font-family: Oswald;
    font-size: 20px;
    color: white;
    border:none;
    /* border-top: 1px solid white; */
    /* border-bottom: 1px solid white; */
    /* padding: 11px; */
    max-width: 70%;
    margin: 6px auto;
    font-weight: 100;
    text-transform: uppercase;
}

.infol .title{
    font-family: Oswald;
    font-size: 20px;
    color: white;
    border-top: 1px solid white;
    border-bottom: 1px solid white;
    padding: 11px;
    max-width:70%;
    margin:10px auto;
}
.infol .autor{
    font-family:OSWALD; font-weight:100;
}


.dfood{background:url(716/dfood.png); background-position:center; }
.dparis{background:url(716/dparis.png); background-position:center; }
.dmusic{background:url(716/dmusic.png);  background-position:center;}
.dvoyage{background:url(716/dvoyage.png);  background-position:center;}
.title{font-family: Oswald; font-size:15px;}
.pti{font-size:14px; line-height: normal;}
#slider{margin-bottom: 20px;}
#homecon .upub{padding-left:20px;
    /* text-align:right;
     */}

body .flex-control-nav {bottom:13px;}


#myparis h2 a{color:#4f5d7d; font-family: KARLA;font-size: 140%;}
#myparis h2{ margin-bottom:40px;margin-top: 0;}
#myparis h3{color:#55a700; font-family:Oswald; text-align:left;
    font-weight:100;
    font-size:200%;
}

#myparis #infos{
    width:180px;
    display:inline-block;
    margin-right:20px;
    vertical-align:top;
    background:white;
    padding:0 20px; color: #111;
}

#myparis #resume{
    width: 365px;
    color: #111;
    display:inline-block;
    vertical-align:top;
    background:white;
    padding:0 20px;
}

#bookme{
    font-family:Oswald;
    color:#6d7c00;
    background:#55a700;
    margin:30px auto;
    width:200px;
    padding:20px;
    border-radius:5px;
    text-align:center;
    font-size:150%;

}

.widget-wrapper{margin-left: 20px;}



.upub{padding-left: 70px;}

.page .post-entry h1{font-family: Oswald; font-weight:100; text-align:center;}

.page .post-entry h2{
    font-family:karla;
    color:white;
    background:#ffad00;
    text-align:center;
    padding:5px;
    font-size:20px;
    font-weight:100;
}
.page .post-entry h3{
    font-family:karla;
    color:white;
    background:#fc6911;
    text-align:center;
    padding:5px;
    font-size:20px;
    font-weight:100;
}
.page .post-entry h4{
    font-family:karla;
    color:white;
    background:#55a700;
    text-align:center;
    padding:5px;
    font-size:20px;
    font-weight:100;
}

.pageleft{width:40%; display:inline-block;

    vertical-align: top;
    margin-right: 9%;}
.pageleft p{margin:0;}
p {
    vertical-align:middle;
    margin-bottom: 20px;
}

#resume img{
    max-width:400px;
}

#lang{background: black;
    color: white;
    margin-top: 17px;
    border-radius: 5px;
    font-size: 15px;}

#hiddensearchforme{ display:none;}

.title-search-results{display:none;}

.m3rempli{
    background:#ffad00;
    color:white;
}

.languechange{
    text-align:center;
    background:#FF9;
    padding:20px;
    border:1px solid #9C0;

}
#paris_table{
    width:90%;

}

.category-food .post-entry,
.category-voyage .post-entry,
.category-music .post-entry,
.category-food-list .post-entry,
.category-voyage-article .post-entry,
.category-music-stream .post-entry
{
    background:white;
}


.aligncenter{
    display: block;
    margin: auto;

}

.post-entry img{
    max-width: 100%;

}
#myparis img{
    max-width: none;

}
.post-entry .couvie{
    vertical-align:middle;
    width:100%;
    margin-top: 0;

}

.separator{text-align: center;}

.relaside{

    height:151px;
    overflow:hidden;
    position:absolute;
    margin-left: -30px;
    margin-top: -45px;

}
.relapic{width:100%; }
.rlol{position: absolute;
    max-width: 146px;
    max-height: 79px;
    min-height: 0;
    min-width: 0;
    margin-top: -30px;
    margin-left: -20px;
    font-size: 12px;
    text-align: left;
    overflow: hidden;
}

.interieur{margin-top:20px;}

body .fancy-wrap{top: 30px;}
#container .flex-control-paging li a {width:15px; height:15px; background:none;border:2px solid white;}
#container .flex-control-paging li a.flex-active{background:white;}
#container .metaslider .caption-wrap {
    position: absolute;
    top: 20px;
    left: 200px;
    bottom: 65px;
    background: none;
    color: white;
    line-height: 30px;
    margin: 0;
    display: block;
    width: 181px;

}
#container .metaslider .caption {
    background:black;
    opacity:0.7;
    text-align: left;
}

.menutexte  a:hover{text-decoration:none;}
.tv716:hover, a:hover.tv716{
    text-decoration:none;
    background-color:	black;
    color:white;

}



#container .flexslider{margin:0 0 0 0;}

.croche{
    margin: 146px 20px;
    color: white;
    text-align: center;
    display:none;
}
.homethumb:hover{}
#momotable td:hover{}

#container .sociale a,#container .sociale div{margin-right:20px;display: inline-block;
}
.sociale{margin: 20px 0;}

#post-25139 .post-entry{padding:10px 30px; }
#homecon{}

.voyage{color: #006aae;}


.post-entry {padding:0 20px;}
.my-recent-posts .related1
{
    width: 83px;
    display: inline-block;
    background: none;
    margin-right: 7px;
}
.my-recent-posts .relapic{
    width:142px;
    margin: 15px 0;
}

.my-recent-posts .relaside{
    width: 153px;
    height: 158px;
    overflow: hidden;
    position: absolute;
    margin-left: -35px;
    margin-top: -45px;}

.my-recent-posts .rlol{
    position: absolute;
    max-width: 83px;
    max-height: 110px;
    overflow:hidden;
    min-height: 0;
    min-width: 0;
    margin-top: -30px;
    margin-left: -30px;

}
.my-recent-posts .title{
    font-size: 19px;
    text-align: left;
    font-variant: small-caps;
}
.my-recent-posts .exe{font-size:11px;}

#mc-embedded-subscribe{display:inline-block;}
.footer h2{color:white; margin: 0;}
#mc_embed_signup{font-size:12px;}

iframe{max-width:100%;}

.category .mytags,.archive .mytags,.search .mytags{float:right;
    float: right;
    width: 69%;
    overflow: hidden;
    margin-right: 0;
    text-align: right;
    height: 20px;
}


.thumb716{
    background-repeat: no-repeat;

}

#paris_table .homethumb4{

}


#mc-embedded-subscribe{font-family:oswald; }
#mc_embed_signup div{display:inline-block; }

#mce-EMAIL{background:black; border-radius:3Px; border:1px solid #CCC; height:24px; width: 180px;}
#mc-embedded-subscribe{height:30px; border-radius:3px;border:1px solid #CCC;width:40px; }

.specialnewsletter #mce-EMAIL{background:white; border-radius:3Px; border:1px solid #CCC; height:40px; width:200px;}
.specialnewsletter #mc-embedded-subscribe {
    height: 46px;
    border-radius: 3px;
    border: 1px solid #CCC;
    width: 200px;
    font-size: 12px;
    margin-top: 2px;
}

.page .post-entry .pageleft h2{color:#574903; font-size:14px}
.page .post-entry .pageleft h4{color: #323c08;font-size:14px}
.page .post-entry .pageleft h3{color:#993003;font-size:14px}
.title-archive{display:none;}

#tourcat_left{width:48%; float:left;}
#tourcat_right{width:48%; float:right;}

#mc-embedded-subscribe:hover { background:#CCC;}

.datag{
    width:16px;
    height:18px;
    display:inline-block;
    vertical-align:middle;
}
.category-music .tag, .category-music-stream .tag{
    background-image:url(716/tag_music.png);
}

.category-food .tag, .category-food-list .tag{
    background-image:url(716/tag_food.png);
}















#pub2{width:90%}

.mobileonly{display:none;}







/* =Polylang
-------------------------------------------------------------- */
.widget_polylang li {
    display: inline;
    list-style-type: none;
}
/* =Footer
-------------------------------------------------------------- */
#footer {
    font-size: 11px;
    line-height: 1.5em;
}
#footer a {
    color: #333333;
    font-weight: 400;
}
#footer a:hover { color: #444444 }
#footer-wrapper .grid.col-940 { margin: 0 }
.scroll-top { text-align: center }
.copyright { text-align: left }
.powered { text-align: right }
#footer_widget .col-300:nth-child(3n+3) { margin-right: 0 }
/* =Social Icons
-------------------------------------------------------------- */
#footer .social-icons {
    list-style: none;
    line-height: normal;
    padding: 0;
    margin: 0;
    text-align: right;
}
#footer .yelp-icon,
#footer .vimeo-icon,
#footer .youtube-icon,
#footer .twitter-icon,
#footer .facebook-icon,
#footer .linkedin-icon,
#footer .rss-feed-icon,
#footer .instagram-icon,
#footer .pinterest-icon,
#footer .foursquare-icon,
#footer .google-plus-icon,
#footer .stumble-upon-icon {
    display: inline;
    margin: 1px;
    padding-left: 3px;
}
/* =Alignments Extras
-------------------------------------------------------------- */
.left { float: left }
.right { float: right }
.center { text-align: center }
/* =Clearfix
-------------------------------------------------------------- */
.clearfix:after,
.clearfix:before,
#container:after,
#container:before,
.widget-wrapper:after,
.widget-wrapper:before {
    content: ' ';
    display: table;
}
.clearfix:after,
#container:after,
.widget-wrapper:after { clear: both }
.ie7 .clearfix,
.ie7 #container,
.ie7 .widget-wrapper { zoom: 1 }
.clear { clear: both }
/* =Begin bidirectionality settings (do not change)
-------------------------------------------------------------- */
BDO[DIR="ltr"] {
    direction: ltr;
    unicode-bidi: bidi-override;
}
BDO[DIR="rtl"] {
    direction: rtl;
    unicode-bidi: bidi-override;
}
[DIR="ltr"] {
    direction: ltr;
    unicode-bidi: embed;
}
[DIR="rtl"] {
    direction: rtl;
    unicode-bidi: embed;
}
/* =Media Print
    If you're working on a Child Theme, make sure that all
	media queries are included in your style.css
-------------------------------------------------------------- */
@media print {
	h1,
	h2,
	h3,
	h4,
	h5,
	h6 { page-break-after: avoid }
	ul,
	ol,
	dl { page-break-before: avoid }
}
/*	Retina (HiDPI) Display
    http://www.quirksmode.org/blog/archives/2012/06/devicepixelrati.html
-------------------------------------------------------------- */
@media only screen and (-moz-min-device-pixel-ratio:1.5), only screen and (-o-min-device-pixel-ratio:3/2), only screen and (-webkit-min-device-pixel-ratio:1.5), only screen and (min-device-pixel-ratio:1.5) {
	body { }
}
/*The last 29 days of the month are the hardest."- Nikola Tesla*/


.post-entry .size-thumbnail{width:31%;}

#tinymce .alignleft{float:none;}

.category-paris #wrapper,.paris #wrapper
,.page-template-default #wrapper{padding-top: 40px;}



.page .post-entry .shop h3{
    background: none;
    color: #4f5d7d;
    font-size: 35px;
}

.page .post-entry .shop h1{
    background: none;
    color: black;
    font-size: 22px;
    font-weight: 400;
    text-align: left;
    font-variant: small-caps;
}

.page .post-entry .shop h2{
    background: none;
    color: #964483;
    font-size: 16px;
    font-weight: 100;
    text-align: left;
    font-variant: small-caps;
    margin: 0;
    font-family: OSWALD;
    padding: 0;
}

.shop_pricebox{
    height: 109px;
    padding-top: 0px;
    width: 140px;
    overflow: hidden;
}
.shop_buy{float:right;margin-top: -105px;}

.fullpage{width:100%;}

.cadre_shop{font-size: 12px;
    letter-spacing: 0;
    line-height: 16px;}

.shop_price{
    font-family: OSWALD;
    font-size: 46px;
    color: #ff45b2;
    font-weight: 100;
    line-height: 70px;
    vertical-align: top;
    /* margin-top: -23px; */
    margin: 0;
    padding: 0;

}
.shop_ttc{font-size: 25px;
    vertical-align: top;}

.page #content .shop img{max-width:100%;}

.shop_souprice{

    font-family: OSWALD;
    font-size: 24px;
    color: #5d3ea2;
    font-weight: 100;
    line-height: normal;
    vertical-align: top;
    /* margin-top: -23px; */
    margin: 0;
    padding: 0;
}

.commander{
    margin: auto;
    width: 111px;
    /* border: 1px solid black; */
    padding: 20px;
    margin-top: 26px;
    background: #00856f;
    border-radius: 3px;
    color: white;
    text-align: center;
    font-size: 18px;

}
.commander:hover{background-color: #707D9B;}
.commander a{color:white;}

.metaslider .caption{line-height:normal; font-size: 90%;}
.metaslider .caption h1{font-size: 19px;
    margin-bottom: .5em;
    font-family: OSWALD;
    font-weight: 100;

    /* width: inherit; */
    padding-bottom: 7px;}

.langs a{display: inline;
    margin: 0;
    padding: 0;
}



.widget-wrapper .homeside{width:100%;}
.page #content img{max-width:100%;}
.menu.conicon:hover{
    background-color:white;
}
#post-25139 {
    background-color:transparent;
}

.ICN{    background-position:left;
    background-repeat: no-repeat;
    padding-left:25px;
    height: 22px;
    padding-top:3px;
}

#ICN-facebook{   background-image:url(ico_social/ICN-facebook.png); }
#ICN-facebook:hover{   background-image:url(ico_social/ICN-facebook-HOVER.png);}

#ICN-gp{   background-image:url(ico_social/ICN-g+.png);  }
#ICN-gp:hover{   background-image:url(ico_social/ICN-g+-HOVER.png);}

#ICN-instagram{   background-image:url(ico_social/ICN-instagram.png); }
#ICN-instagram:hover{   background-image:url(ico_social/ICN-instagram-HOVER.png);}

#ICN-twitter{   background-image:url(ico_social/ICN-twitter.png); }
#ICN-twitter:hover{   background-image:url(ico_social/ICN-twitter-HOVER.png);}

#ICN-YT{   background-image:url(ico_social/ICN-YT.png); }
#ICN-YT:hover{   background-image:url(ico_social/ICN-YT-HOVER.png);}

#ICN-email{   background-image:url(ico_social/MAIL.png); }

.specialnewsletter{
    background: #e6e6e6;
    position: absolute;
    width: 670px;
    left: 0;
    padding-left: 20px;
    padding-top: 20px;
}

.page .post-entry .specialnewsletter h1{
    text-align:left;
    color:#b8b8b8;
    font-weight:100;

}

#mobileselect{float:right;}
#mobilesousmenu a{
    display:block;
}
#mobilesousmenu{

    width: 70%;
    margin: 0 33px;

}
#mobilesousmenu a:hover{text-decoration: underline;}

#mobilesousmenu h1,
#mobilesousmenu h2,
#mobilesousmenu h3,
#mobilesousmenu h4,
{    font-size:75%;}


#myparis #resume img{max-width: 90%;}
.menu .fright{float:right;}


.cheucro{
    text-align:center;
    margin:20px;
    width:70%;
    margin:20px auto;
    font-size:100%;
}

.socio,.socio2{
    border-radius: 42px;

    margin: 5px;
    padding: 3px;
    padding-top: 8px;
    display: inline-block;
    width: 32px;
    height: 28px;
    text-align: center;
}





html body #wpadminbar{
    /* bottom: 0px; */
    top: 0px;
}
.admin-bar #wrapper,.admin-bar #header{
    margin-top:30px;
}
#wrapper{
    margin-top:32px;
}

.home .navigation .previous{
    float:right;
}










/* MOBILE  GRAND SCREEN */

@media screen and (max-width: 950px) {
    #logo2{

        width:auto;
    }
    .tv716{
        display:none;}

    #momo_table {
        width:100%;
    }

    .homethumb2{width:auto;}
    .homethumb{width:auto;}
    .homethumb4{width:auto;}
}

/* MOBILE  MOYEN SCREEN */




@media screen and (max-width: 850px) {

    .shop_apercu,.desc_left,.desc_right{
        width:100%;
    }


    #logo2{

        /* display: none; */
        margin-top: 12px;
        height: 0;
    }
    .menusearch,.contacticon{display:none;}



}


/* MOBILE PETIT SCREEN */
@media screen and (max-width: 650px) {
    .floatingbastard
    {
        margin-left:-300px;
    }
        .menu li:hover{
            background:white;
            color:black;
        }
    #footer-gris{
        margin-top: 20px;
    }
    .specialnewsletter{
        width:100%;
        position:relative;
        padding:10px;
    }
    .main-nav{background:black; text-align: center;}
    #signature {display:none;}
    #container{margin-top: 50px;}
    .mobileonly{display:block;}
    .hidemesoftly, #slider{ display: none;
        visibility: hidden; }
    #footer3{border:none; padding-left:40px;}

    .menutexte {
        margin-top: 0px;
        font-size: 18px;
        color:white;
    }
    li { font-size: 18px }
    #myparis #infos{width:100%; }

    .mytags{
        display: none;}
    .homecul{display:none;}
    #header .white a {color:black;}
    .js .main-nav ul li a{

        background-color: black;


    }

    body{background:white;}
    #wrapper{background:white;}
    .icl_languages_selector,
    .rtl .icl_languages_selector { float: none }
    #widgets s.widget-wrapper{
        margin: auto;
        width: 220px;

    }
    #mobilesousmenu h3 a{font-size: 14px;}
    #myparis #resume {width:100%;}
    #widgets{float: none;}
    #expli{width:100%;}
    #s{width: 200px;}
    .nomobile{display:none;}

    .shop_apercu{
        max-width: 100%;
    }
    .desc_left{
        max-width: 100%;
    }

    .js .main-nav .menu li a {color:white;}
    .js .main-nav .menu li a:hover{background:white; color:black;}
    .soubar{display:none;}
     .js  #header1 .main-nav{margin-top: 18px;}
     #pub{display:none;}
     .metaslider{display:none;}
     #wpadminbar{display:none;}
     #header{position: inherit;}
     #header1{padding-top:0; margin-top:0;}
     body{display: block;
         top: 10px;
         position: absolute;
         width: 100%;}
}



.themoneytizer-ads {
    max-width: 1200px;
    margin: 0px auto;
}


/* =========================================================================
   716THEME — DESIGN SYSTEM
   Modifie les variables ci-dessous pour changer toute l'apparence du site.
   Ajoute des règles plus bas si tu veux affiner un élément précis.
   ========================================================================= */

:root {
    /* Couleurs */
    --c-bg:           #f9f9f9;   /* fond du site */
    --c-surface:      #ffffff;   /* fond des cartes / blocs */
    --c-text:         #1e201d;   /* texte principal */
    --c-text-soft:    #555555;   /* texte secondaire */
    --c-text-muted:   #999999;   /* meta, dates, captions */
    --c-border:       #e5e5e5;   /* bordures fines */
    --c-accent:       #ef7e15;   /* couleur d'accent (boutons, liens, hover) */
    --c-accent-dark:  #d96d09;
    --c-link:         #1e201d;
    --c-link-hover:   #ef7e15;

    /* Typographie */
    --font-base:      'Hind', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
    --font-display:   'Oswald', 'Hind', sans-serif;
    --font-quote:     'Georgia', 'Times New Roman', Times, serif;
    --fs-base:        16px;
    --lh-base:        1.6;

    /* Espacements (échelle cohérente) */
    --s-xs:           4px;
    --s-sm:           8px;
    --s-md:           16px;
    --s-lg:           24px;
    --s-xl:           40px;
    --s-2xl:          64px;

    /* Layout */
    --content-max:    760px;     /* largeur lecture article */
    --container-max:  1100px;    /* largeur générale */

    /* Détails */
    --radius:         2px;
    --shadow-sm:      0 1px 3px rgba(0,0,0,0.06);
    --shadow-md:      0 4px 14px rgba(0,0,0,0.08);
    --transition:     0.2s ease;
}

/* === BASE OVERRIDE === */
body {
    font-family: var(--font-base);
    font-size: var(--fs-base);
    line-height: var(--lh-base);
    color: var(--c-text);
    background: var(--c-bg);
}

/* === FONT DISPLAY (Oswald) — titres, boutons, libellés UI === */
h1, h2, h3, h4, h5, h6,
.entry-title,
.entry-section-title,
.entry-widget__title,
.related-posts__title,
.entry-list-card__title,
.entry-list-section__title,
.btn, a.btn,
.commander,
.swiper716-button,
.site-footer__newsletter,
.no-results .search-submit,
.comment-form #submit,
input[type="submit"],
button {
    font-family: var(--font-display);
}

a {
    color: var(--c-link);
    transition: color var(--transition);
}
a:hover, a:focus { color: var(--c-link-hover); }

#wrapper { padding-top: 0; }

/* === HEADER === */
#header {
    background: var(--c-surface);
    border-bottom: 1px solid var(--c-border);
    box-shadow: var(--shadow-sm);
}

#header1 {
    display: flex;
    align-items: center;
    gap: var(--s-lg);
    padding: 0 var(--s-lg);
    max-width: var(--container-max);
}

#logo a {
    display: inline-block;
    font-weight: 700;
    font-size: 1.25rem;
    color: var(--c-text);
    text-decoration: none;
    letter-spacing: -0.01em;
}

.main-navigation { flex: 1 1 auto; display: flex; justify-content: flex-end; }

.main-navigation .menu {
    display: flex;
    flex-wrap: wrap;
    gap: var(--s-xs) var(--s-md);
    list-style: none;
    margin: 0;
    padding: 0;
}

.main-navigation .menu a {
    display: block;
    padding: var(--s-sm) var(--s-xs);
    color: var(--c-link);
    font-family: var(--font-display);
    text-transform: uppercase;
    font-size: 0.85rem;
    letter-spacing: 0.04em;
    font-weight: 600;
    text-decoration: none;
}

.main-navigation .menu a:hover,
.main-navigation .menu a:focus { color: var(--c-link-hover); }

.menu-toggle {
    display: none;
    background: none;
    border: 0;
    padding: var(--s-sm);
    cursor: pointer;
}

.menu-toggle-bar {
    display: block;
    width: 24px;
    height: 2px;
    background: var(--c-text);
    margin: 5px 0;
    transition: transform var(--transition), opacity var(--transition);
}

@media (max-width: 768px) {
    .menu-toggle { display: block; order: 2; }
    .main-navigation { display: none; flex-basis: 100%; order: 3; }
    .main-navigation.is-open { display: block; }
    .main-navigation .menu { flex-direction: column; align-items: stretch; gap: 0; }
    .main-navigation .menu a {
        padding: var(--s-md);
        border-bottom: 1px solid var(--c-border);
    }
}

/* === BANNER (ACF Options) === */
.banner-top {
    text-align: center;
    padding: var(--s-sm) var(--s-md);
    font-size: 0.9rem;
}

.banner-top-inner {
    max-width: var(--container-max);
    margin: 0 auto;
}

.banner-top a {
    text-decoration: initial;
    color: #ffffff;
    font-size: 20px;
    font-family: 'Oswald';
}

.banner-top p {
    margin: 0;
    font-size: 17px;
}

/* === ARTICLE / PAGE WRAPPER === */
.entry,
.entry-home,
.entry-stream {
    max-width: var(--content-max);
    margin: 0 auto var(--s-2xl);
    padding: 0 var(--s-md);
}

.entry-home,
.entry-stream { max-width: var(--container-max); }

/* === ENTRY HEADER === */
.entry-header {
    margin-bottom: var(--s-lg);
    text-align: center;
}

.entry-home .entry-header,
.entry-stream .entry-header,
.page .entry-header { text-align: left; }

.entry-title {
    font-weight: 700;
    line-height: 1.15;
    color: var(--c-text);
    margin: 0 0 var(--s-md);
    font-size: 2.4rem;
    letter-spacing: -0.01em;
}

.entry-title a { color: inherit; text-decoration: none; }
.entry-title a:hover { color: var(--c-accent); }

.entry-meta {
    color: var(--c-text-muted);
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.entry-meta a { color: inherit; }

/* === ENTRY THUMBNAIL === */
.entry-thumbnail {
    margin: 0 0 var(--s-xl);
    border-radius: var(--radius);
    overflow: hidden;
}

.entry-thumbnail img {
    width: 100%;
    height: auto;
    display: block;
}

/* === ENTRY CONTENT (the_content) === */
.entry-content {
    font-size: 1.05rem;
    line-height: 1.75;
    color: var(--c-text-soft);
}

.entry-content > * + * { margin-top: 1.2em; }
.entry-content h2 { font-size: 1.6rem; margin-top: 1.8em; color: var(--c-text); }
.entry-content h3 { font-size: 1.25rem; margin-top: 1.6em; color: var(--c-text); }
.entry-content p { margin: 19px 0; }
.entry-content a {
    color: var(--c-accent);
    border-bottom: 1px solid rgba(239,126,21,0.3);
}
.entry-content a:hover { border-bottom-color: var(--c-accent); }
.entry-content blockquote {
    margin: 1.6em 0;
    padding: var(--s-xs) 0 var(--s-xs) var(--s-lg);
    border-left: 3px solid var(--c-accent);
    color: var(--c-text-soft);
    font-style: italic;
    font-family: var(--font-quote);
    background: none;
}
.entry-content img,
.entry-content figure {
    margin: 0;
    border-radius: var(--radius);
}

/* === ENTRY SECTION (sections wysiwyg ACF) === */
.entry-section {
    margin: var(--s-2xl) 0;
    padding-top: var(--s-lg);
    border-top: 1px solid var(--c-border);
}

.entry-section-title {
    font-size: 1.4rem;
    font-weight: 700;
    color: var(--c-text);
    margin: 0 0 var(--s-md);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.entry-section-content {
    font-size: 1.05rem;
    line-height: 1.75;
    color: var(--c-text-soft);
}

.entry-section-content > * + * { margin-top: 1.2em; }
.entry-section-content p {
    margin: 19px 0;
    font-size: 14px;
}
.entry-section-content a {
    color: var(--c-accent);
    border-bottom: 1px solid rgba(239,126,21,0.3);
}
.entry-section-content a:hover { border-bottom-color: var(--c-accent); }
.entry-section-content img { border-radius: var(--radius); margin: 1.2em 0; }

/* Légendes automatiques injectées par seventonesix_autocaption_content() */
.entry-section-content figure,
.entry-content figure {
    margin: 1.6em 0;
}
.entry-section-content figure img,
.entry-content figure img {
    margin: 0;
    display: block;
}
.wp-element-caption,
.entry-section-content figcaption,
.entry-content figcaption {
    font-size: 13px;
    line-height: 1.45;
    color: #6a6a62;
    text-align: center;
    margin-top: 8px;
    font-style: italic;
    letter-spacing: 0.01em;
}
.auto-caption-wrap {
    text-align: center;
}

/* === FICHE PRATIQUE (food / voyage-article) === */
.entry-fiche {
    position: relative;
    margin: 60px 0 var(--s-xl);
    padding: clamp(22px, 3vw, 30px) clamp(22px, 3vw, 32px);
    background:
        radial-gradient(120% 80% at 0% 0%, rgba(239,126,21,0.07), transparent 55%),
        linear-gradient(180deg, #fffaf2 0%, #ffffff 100%);
    border: 1px solid rgba(239,126,21,0.2);
    border-radius: 16px;
    box-shadow: 0 16px 40px -28px rgba(30,32,29,0.28);
    overflow: hidden;
}
.entry-fiche::before {
    content: "";
    position: absolute;
    top: 0; left: 0;
    width: 100%; height: 3px;
    background: linear-gradient(90deg, #ef7e15 0%, #f4a85b 100%);
}

.entry-fiche p {
    margin: 0;
    padding: 12px 0 12px 34px;
    position: relative;
    color: #4a4a44;
    font-size: 0.95rem;
    line-height: 1.5;
    border-bottom: 1px dashed rgba(239,126,21,0.22);
}
.entry-fiche p:last-child { border-bottom: none; padding-bottom: 4px; }
.entry-fiche p:first-of-type { padding-top: 4px; }

/* Nom : pas d'icône, plus grand, séparateur plein */
.fiche-nom {
    padding: 0 0 16px !important;
    margin: 0 0 4px !important;
    font-size: 1.4rem !important;
    color: #1e201d !important;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 800;
    line-height: 1.2;
    border-bottom: 2px solid rgba(239,126,21,0.35) !important;
}
.fiche-nom strong { font-weight: inherit; }

/* Icônes alignées à gauche de chaque ligne (sauf .fiche-nom) */
.fiche-adresse::before,
.fiche-tel::before,
.fiche-site::before,
.fiche-horaires::before,
.fiche-access::before {
    content: "";
    position: absolute;
    left: 0;
    top: 14px;
    width: 18px;
    height: 18px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    flex-shrink: 0;
}
/* Pin / adresse */
.fiche-adresse::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ef7e15'><path d='M12 2C7.6 2 4 5.4 4 9.6c0 5.5 7 11.6 7.3 11.8.2.2.6.2.8 0 .3-.2 7.3-6.3 7.3-11.8C20 5.4 16.4 2 12 2zm0 11c-1.9 0-3.4-1.5-3.4-3.4S10.1 6.2 12 6.2s3.4 1.5 3.4 3.4S13.9 13 12 13z'/></svg>");
}
/* Téléphone */
.fiche-tel::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ef7e15' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6A19.79 19.79 0 0 1 2.12 4.18 2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.13.96.36 1.9.7 2.81a2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.91.34 1.85.57 2.81.7A2 2 0 0 1 22 16.92z'/></svg>");
}
/* Site web */
.fiche-site::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ef7e15' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='10'/><line x1='2' y1='12' x2='22' y2='12'/><path d='M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z'/></svg>");
}
/* Horloge */
.fiche-horaires::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ef7e15' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='10'/><polyline points='12 6 12 12 16 14'/></svg>");
}
/* Accessibilité (fauteuil) */
.fiche-access::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ef7e15'><path d='M11 4a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm-1 12.3-1.3-3H6.7l1.4 3.3a1 1 0 0 0 1.4.5l4-2a1 1 0 0 0 .5-.5L16 12l1.6 2.4a1 1 0 1 0 1.7-1.1l-2.1-3.2a1 1 0 0 0-.8-.4h-3.2L13 7.4a1 1 0 0 0-1-.9h-3a1 1 0 1 0 0 2h2.2l1.4 4-2.4 1.2a4.5 4.5 0 1 1-3.4-6.4 1 1 0 0 0 .3-2 6.5 6.5 0 1 0 5 8z'/></svg>");
}

/* Téléphone : libellé "Tél." en gras orange */
.fiche-tel { font-feature-settings: "tnum"; }

/* Lien du site : couleur accent + saut de ligne propre sur URL longue */
.fiche-site a {
    color: #ef7e15;
    word-break: break-word;
    text-decoration: none;
    border-bottom: 1px solid rgba(239,126,21,0.3);
    transition: border-color .2s ease;
}
.fiche-site a:hover { border-bottom-color: #ef7e15; }

/* Horaires / Accessibilité : peuvent contenir des <br>, line-height un peu plus aéré */
.fiche-horaires,
.fiche-access {
    line-height: 1.6;
}

/* Horaires Google synchronisés : div en <span> par jour. Reproduit la mise en
   page des <p> de la fiche (padding gauche pour l'icône horloge, séparateur). */
.entry-fiche .fiche-horaires--google {
    margin: 0;
    padding: 12px 0 12px 34px;
    position: relative;
    color: #4a4a44;
    font-size: 0.95rem;
    line-height: 1.6;
    border-bottom: 1px dashed rgba(239,126,21,0.22);
}
.entry-fiche .fiche-horaires--google:last-child {
    border-bottom: none;
    padding-bottom: 4px;
}
.fiche-horaires__day { display: block; }

/* === IMAGES (bon plan) === */
.entry-image-top,
.entry-image {
    margin: 0 0 var(--s-xl);
}

.entry-image-top img,
.entry-image img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: var(--radius);
    box-shadow: var(--shadow-md);
}

/* === BOUTONS === */
.entry-cta {
    text-align: center;
    margin: var(--s-xl) 0;
}

.btn,
a.btn {
    display: inline-block;
    background: var(--c-accent);
    color: #fff !important;
    padding: var(--s-sm) var(--s-lg);
    border-radius: var(--radius);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    font-size: 0.9rem;
    text-decoration: none !important;
    border: 0;
    transition: background var(--transition);
}

.btn:hover,
a.btn:hover { background: var(--c-accent-dark); }

/* === MAP === */
.entry-map {
    margin: var(--s-xl) 0;
    border-radius: var(--radius);
    overflow: hidden;
}

.entry-map iframe {
    width: 100%;
    min-height: 400px;
    border: 0;
    display: block;
}

.entry-map-coords {
    color: var(--c-text-muted);
    font-size: 0.9rem;
    font-family: monospace;
}

/* === REVUE DE PRESSE === */
.revue-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: var(--s-lg);
}

.revue-item {
    background: var(--c-surface);
    border-left: 3px solid var(--c-accent);
    padding: var(--s-md) var(--s-lg);
    border-radius: 0 var(--radius) var(--radius) 0;
}

.revue-item blockquote {
    margin: 0 0 var(--s-sm);
    padding: 0;
    border: 0;
    background: none;
    font-style: italic;
    font-family: var(--font-quote);
    font-size: 1rem;
    line-height: 1.5;
}

.revue-auteur {
    margin: 0;
    font-size: 0.9rem;
    color: var(--c-text-muted);
}

.revue-lien { margin: var(--s-sm) 0 0; }

.revue-lien a {
    color: var(--c-accent);
    font-size: 0.85rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

/* === LIEN VERS ARTICLE LIÉ === */
.entry-lien-article {
    margin: var(--s-xl) 0;
    padding: var(--s-md);
    background: var(--c-surface);
    border: 1px solid var(--c-border);
    border-radius: var(--radius);
    text-align: center;
    font-size: 0.95rem;
    color: var(--c-text-soft);
}

.entry-lien-article a {
    color: var(--c-accent);
    font-weight: 600;
}

/* === ENTRY FOOTER (cats/tags) === */
.entry-footer {
    margin-top: var(--s-xl);
    padding-top: var(--s-md);
    border-top: 1px solid var(--c-border);
    font-size: 0.85rem;
    display: flex;
    flex-wrap: wrap;
    gap: var(--s-sm) var(--s-md);
    color: var(--c-text-muted);
}

.entry-footer .cat-links::before { content: "Catégorie"; }
.entry-footer .tags-links::before { content: "Tags"; }
.entry-footer .cat-links::before,
.entry-footer .tags-links::before {
    margin-right: var(--s-xs);
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-weight: 600;
    color: var(--c-text);
}

.entry-footer a {
    color: var(--c-text-soft);
    background: var(--c-surface);
    padding: 2px var(--s-sm);
    border-radius: var(--radius);
    text-decoration: none;
}

.entry-footer a:hover { background: var(--c-accent); color: #fff; }

/* === HOME === */
.home-posts { margin: var(--s-xl) 0; }

.home-posts-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: var(--s-lg);
}

.home-posts-item a {
    display: block;
    text-decoration: none;
    color: var(--c-text);
    transition: transform var(--transition);
}

.home-posts-item a:hover { transform: translateY(-2px); }

.home-posts-thumb {
    display: block;
    margin-bottom: var(--s-sm);
    overflow: hidden;
    border-radius: var(--radius);
}

.home-posts-thumb img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform var(--transition);
}

.home-posts-item a:hover .home-posts-thumb img { transform: scale(1.04); }

.home-posts-title {
    display: block;
    font-weight: 600;
    line-height: 1.3;
}

.home-pubs {
    margin: var(--s-xl) 0;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: var(--s-md);
}

.home-pub {
    background: var(--c-surface);
    padding: var(--s-md);
    border-radius: var(--radius);
    border: 1px solid var(--c-border);
}

/* === STREAM === */
.stream-posts-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: var(--s-2xl);
}

.stream-entry {
    background: var(--c-surface);
    border: 1px solid var(--c-border);
    border-radius: var(--radius);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
}

.stream-entry-header { padding: var(--s-lg) var(--s-lg) 0; }

.stream-entry-title {
    font-size: 1.6rem;
    margin: 0 0 var(--s-xs);
    line-height: 1.3;
}

.stream-entry-title a {
    color: var(--c-text);
    text-decoration: none;
}

.stream-entry-title a:hover { color: var(--c-accent); }

.stream-entry-meta {
    color: var(--c-text-muted);
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    margin-bottom: var(--s-md);
}

.stream-entry-thumb { display: block; }

.stream-entry-thumb img {
    width: 100%;
    height: auto;
    display: block;
}

.stream-entry-excerpt {
    padding: var(--s-lg);
    color: var(--c-text-soft);
    line-height: 1.7;
}

.stream-entry-excerpt a { color: var(--c-accent); }

.stream-pubs {
    margin: var(--s-xl) 0;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: var(--s-md);
}

.stream-pub {
    background: var(--c-surface);
    padding: var(--s-md);
    border-radius: var(--radius);
    border: 1px solid var(--c-border);
}

/* === NO-RESULTS === */
.no-results {
    text-align: center;
    padding: var(--s-2xl) var(--s-md);
}

.no-results .search-form {
    margin-top: var(--s-lg);
    display: inline-flex;
    gap: var(--s-xs);
}

.no-results .search-field {
    padding: var(--s-sm) var(--s-md);
    border: 1px solid var(--c-border);
    border-radius: var(--radius);
}

.no-results .search-submit {
    padding: var(--s-sm) var(--s-md);
    background: var(--c-text);
    color: #fff;
    border: 0;
    border-radius: var(--radius);
    cursor: pointer;
}

/* === FOOTER === */
#footer-wrapper {
    background: var(--c-surface);
    border-top: 1px solid var(--c-border);
    margin-top: var(--s-2xl);
}

#footer {
    padding: var(--s-xl) var(--s-lg);
    text-align: center;
    color: var(--c-text-soft);
    font-size: 0.9rem;
    max-width: var(--container-max);
    margin: 0 auto;
}

#footer .menu-footer {
    list-style: none;
    margin: var(--s-md) 0 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--s-sm) var(--s-lg);
}

#footer .menu-footer a {
    color: var(--c-text-soft);
    text-decoration: none;
}

#footer .menu-footer a:hover { color: var(--c-accent); }

/* === RESPONSIVE === */
@media (max-width: 600px) {
    .entry-title { font-size: 1.8rem; }
    .entry-section { margin: var(--s-xl) 0; }
    .entry-fiche { padding: var(--s-md); }
    .stream-entry-title { font-size: 1.3rem; }
}


/* =========================================================================
   716THEME — HOME hero intro (au-dessus de la grille)
   ========================================================================= */

.entry-home > .entry-content {
    max-width: 760px;
    margin: 0 auto;
    padding: 0 var(--s-md);
    text-align: center;
}
/* Paragraphes vides Gutenberg */
.entry-home > .entry-content > p:empty,
.entry-home > .entry-content > p:has(> br:only-child),
.entry-home > .entry-content > p:where(:has(:only-child)):where(:not(:has(*))) {
    display: none;
}
.entry-home > .entry-content > h1.wp-block-heading,
.entry-home > .entry-content > h1 {
    font-size: clamp(1.8rem, 3.6vw, 2.6rem);
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -0.01em;
    margin: var(--s-2xl) 0 var(--s-sm);
    color: var(--c-text);
}
.entry-home > .entry-content > p {
    font-size: 1rem;
    line-height: 1.55;
    color: var(--c-text-soft);
    margin: 0 auto var(--s-lg);
    max-width: 600px;
    margin-top: 7px;
}
.entry-home .home-quick-links {
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px 14px;
    margin: 0 auto var(--s-2xl);
}
.entry-home .home-quick-links br { display: none; }
.entry-home .home-quick-links a {
    display: inline-flex;
    align-items: center;
    padding: 10px 22px;
    background: #fff;
    border: 1px solid var(--c-border);
    border-radius: var(--radius);
    color: var(--c-text);
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    text-decoration: none;
    box-shadow: 0 4px 14px -10px rgba(30, 32, 29, 0.25);
    transition: transform 0.25s ease, background 0.25s ease,
                color 0.25s ease, border-color 0.25s ease,
                box-shadow 0.25s ease;
}
.entry-home .home-quick-links a:hover {
    transform: translateY(-2px);
    background: var(--c-accent);
    color: #fff;
    border-color: var(--c-accent);
    box-shadow: 0 12px 24px -12px rgba(239, 126, 21, 0.5);
}

@media (max-width: 600px) {
    .entry-home > .entry-content > h1.wp-block-heading,
    .entry-home > .entry-content > h1 { font-size: 1.6rem; }
    .entry-home .home-quick-links a { padding: 9px 16px; font-size: 0.7rem; letter-spacing: 0.12em; }
}

/* =========================================================================
   716THEME — HOME GRID (modern, full-bleed)
   Grille de vignettes accueil (page-home.php / home.php)
   - largeur de page (1320px max), centrée, breakout du #container 965px
   - tuiles arrondies, ombre douce, gap aéré
   - dégradé permanent en bas → titre lisible sans hover (PAS d'expansion → pas d'overflow)
   - hover : tuile soulevée + image zoomée, RIEN d'autre ne change (pas d'animation texte)
   - first-vignette : pavé promo plein avec gros label catégorie
   ========================================================================= */

:root {
    --grid-tile-size: 280px;
    --grid-gap:       14px;
    --grid-radius:    4px;
}

#grid-container.grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(var(--grid-tile-size), 1fr));
    grid-auto-rows: var(--grid-tile-size);
    grid-auto-flow: dense;
    gap: var(--grid-gap);
    /* Casse la contrainte 965px du #container parent et étend jusqu'à 1320px */
    width: min(1320px, calc(100vw - 32px));
    max-width: none;
    margin: var(--s-2xl) auto;
    /* Recentrage sur le viewport (pas seulement sur le parent) */
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    text-align: left;
}

#grid-container .item-link,
#grid-container > a {
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: var(--grid-radius);
    background: #ece6d8;
    text-decoration: none;
    color: inherit;
    isolation: isolate;
    box-shadow: 0 6px 18px -14px rgba(30, 32, 29, 0.4);
    transition: transform 0.45s cubic-bezier(.2, .6, .2, 1),
                box-shadow 0.45s ease;
}
@media (hover: hover) {
    #grid-container .item-link,
    #grid-container > a { will-change: transform; }
}
@media (prefers-reduced-motion: reduce) {
    #grid-container .item-link,
    #grid-container > a,
    #grid-container .item,
    #grid-container .item.first-vignette::after { transition: none !important; }
    #grid-container .item-link:hover,
    #grid-container > a:hover { transform: none; }
    #grid-container .item-link:hover .item,
    #grid-container > a:hover .item { transform: none; }
}
#grid-container .item-link:hover,
#grid-container > a:hover {
    transform: translateY(-3px);
    box-shadow: 0 22px 38px -22px rgba(30, 32, 29, 0.5);
}
#grid-container .item-link:focus-visible,
#grid-container > a:focus-visible {
    outline: 3px solid var(--c-accent);
    outline-offset: 3px;
}

#grid-container .item {
    position: relative;
    width: 100%;
    height: 100%;
    background-size: cover !important;
    background-position: center !important;
    overflow: hidden;
    transition: transform 0.45s cubic-bezier(.2, .6, .2, 1);
    z-index: 0;
}
#grid-container .item-link:hover .item,
#grid-container > a:hover .item { transform: scale(1.05); }

/* Overlay : invisible par défaut, couleur pleine au survol */
#grid-container .item::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(239, 126, 21, 0.88);
    z-index: 1;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.3s ease;
}
#grid-container .item-link:hover .item::before,
#grid-container > a:hover .item::before { opacity: 1; }

/* Variations de taille (grid-spans) */
#grid-container .item.width2  { grid-column: span 2; }
#grid-container .item.height2 { grid-row: span 2; }
#grid-container .item-link:has(.width2)  { grid-column: span 2; }
#grid-container .item-link:has(.height2) { grid-row: span 2; }
#grid-container > a:has(.width2)  { grid-column: span 2; }
#grid-container > a:has(.height2) { grid-row: span 2; }

/* Bloc info — invisible par défaut, apparaît au survol */
#grid-container .infol {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    max-height: 60%;
    padding: 12px 14px;
    color: #fff;
    z-index: 2;
    pointer-events: none;
    background: none;
    opacity: 0;
    overflow: hidden;
    transition: opacity 0.3s ease;
}
#grid-container .item-link:hover .infol,
#grid-container > a:hover .infol { opacity: 1; }
#grid-container .ininfol {
    width: 100%;
    max-height: 100%;
    text-align: left;
    overflow: hidden;
}
#grid-container .title {
    font-size: clamp(0.85rem, 1.1vw, 1rem);
    font-weight: 700;
    line-height: 1.2;
    margin: 0 0 4px;
    letter-spacing: -0.005em;
    text-transform: none;
    color: #fff;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.5);
    display: block;
    -webkit-line-clamp: initial;
    -webkit-box-orient: initial;
    overflow: hidden;
    max-height: calc(1.7em * 3);
    overflow-wrap: anywhere;
    word-break: break-word;
}
/* Tuile plus haute (height2) : autorise 3 lignes */
#grid-container .item.height2 .title {
    -webkit-line-clamp: 3;
    max-height: calc(1.2em * 3);
}
#grid-container .cvoyage,
#grid-container .autor {
    display: block;
    font-size: 0.66rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.85);
    margin: 0;
    text-shadow: 0 1px 4px rgba(0, 0, 0, 0.4);
}
/* On masque l'excerpt et le filet — rien ne s'anime, rien ne déborde */
#grid-container .pointi,
#grid-container .pti { display: none; }

/* Tuiles "first-vignette" : pavés promo catégorie */
#grid-container .item.first-vignette {
    background-color: rgba(30, 32, 29, 0.6);
    background-blend-mode: multiply;
}
#grid-container .item.first-vignette::before {
    background: linear-gradient(135deg,
        rgba(0, 0, 0, 0.55) 0%,
        rgba(0, 0, 0, 0.2) 100%);
}
#grid-container .item.first-vignette::after {
    position: absolute;
    bottom: 22px;
    left: 22px;
    z-index: 2;
    font-size: clamp(1.4rem, 2.2vw, 2rem);
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #fff;
    text-shadow: 0 4px 18px rgba(0, 0, 0, 0.45);
    pointer-events: none;
    transition: transform 0.4s cubic-bezier(.2, .6, .2, 1),
                letter-spacing 0.4s ease;
}
#grid-container > a:hover .item.first-vignette::after {
    transform: translateX(6px);
    letter-spacing: 0.06em;
}
#grid-container .item.first-vignette.parisb::after  { content: "Paris →"; }
#grid-container .item.first-vignette.voyageb::after { content: "Voyage →"; }
#grid-container .item.first-vignette.musicb::after  { content: "Music →"; }
#grid-container .item.first-vignette.instab::after  { content: "Instagram →"; }

#grid-container .item.first-vignette.parisb  { background-color: var(--c-accent); }
#grid-container .item.first-vignette.voyageb { background-color: #4d208a; }
#grid-container .item.first-vignette.musicb  { background-color: #1e201d; }

/* Tuiles « tour » (page d'accueil) : même pavé promo, mais le libellé est le
   titre du tour (dynamique) rendu dans un <span> plutôt qu'en ::after. */
/* Couleur distincte (visible quand la tuile n'a pas d'image de fond). */
#grid-container .item.first-vignette.tourb { background-color: #0f766e; }

/* Badge « Visite » : icône + libellé, toujours visible même sur l'image, dans
   une couleur distincte pour signaler que ces tuiles mènent vers un tour externe. */
#grid-container .item.first-vignette.tourb .tourb__badge {
    position: absolute;
    top: 14px;
    left: 14px;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 11px 5px 7px;
    border-radius: 999px;
    background: #0f766e;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    line-height: 1;
    box-shadow: 0 4px 12px -4px rgba(0, 0, 0, 0.45);
    pointer-events: none;
}
#grid-container .item.first-vignette.tourb .tourb__badge svg {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
}

/* Titre du tour : plus petit que les autres vignettes promo. */
#grid-container .item.first-vignette.tourb .tourb__label {
    position: absolute;
    bottom: 18px;
    left: 18px;
    right: 18px;
    z-index: 2;
    font-size: clamp(0.85rem, 1.15vw, 1.05rem);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    color: #fff;
    text-shadow: 0 4px 18px rgba(0, 0, 0, 0.5);
    pointer-events: none;
    transition: transform 0.4s cubic-bezier(.2, .6, .2, 1),
                letter-spacing 0.4s ease;
}
#grid-container > a:hover .item.first-vignette.tourb .tourb__label {
    transform: translateX(6px);
    letter-spacing: 0.04em;
}

/* Tuile Instagram : dégradé brand (jaune→orange→rose→violet→bleu) + logo
   IG en filigrane derrière le label. Neutralise le multiply de
   .first-vignette pour conserver la vivacité du dégradé. */
#grid-container .item.first-vignette.instab {
    background:
        radial-gradient(circle at 70% 25%, rgba(255, 255, 255, 0.18) 0, transparent 50%),
        linear-gradient(135deg, #feda75 0%, #fa7e1e 22%, #d62976 50%, #962fbf 75%, #4f5bd5 100%);
    background-blend-mode: normal;
}
#grid-container .item.first-vignette.instab::before {
    background:
        linear-gradient(180deg, transparent 55%, rgba(0, 0, 0, 0.28) 100%),
        url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="white" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round" opacity="0.18"><rect x="3" y="3" width="18" height="18" rx="5"/><circle cx="12" cy="12" r="4"/><circle cx="17.5" cy="6.5" r="1" fill="white" stroke="none"/></svg>') no-repeat 86% 18% / 88px 88px;
}

/* Pagination home — version éditoriale stylée */
.home-pagination {
    clear: both;
    margin: var(--s-2xl) auto;
    max-width: var(--container-max);
    padding: var(--s-xl) var(--s-md);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--s-md);
    text-align: center;
    position: relative;
}
/* Filet décoratif au-dessus */
.home-pagination::before {
    content: "";
    width: 48px;
    height: 2px;
    background: var(--c-accent);
    border-radius: 2px;
    margin-bottom: var(--s-sm);
}

.home-pagination-prev,
.home-pagination-next { display: block; }
.home-pagination-prev:empty,
.home-pagination-next:empty { display: none; }

.home-pagination a {
    --pag-color: var(--c-text);
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 14px;
    padding: 14px 32px;
    background: #fff;
    border: 1px solid var(--c-border);
    border-radius: var(--radius);
    color: var(--pag-color);
    font-family: inherit;
    font-size: 0.82rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.16em;
    text-decoration: none;
    box-shadow: 0 4px 14px -10px rgba(30, 32, 29, 0.25);
    transition: transform 0.25s ease, box-shadow 0.25s ease,
                background 0.25s ease, color 0.25s ease, border-color 0.25s ease;
}

/* Flèche avant/après le texte selon le sens */
.home-pagination-prev a::before,
.home-pagination-next a::before {
    content: "";
    width: 22px;
    height: 10px;
    background: currentColor;
    -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 10' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M0 5h20M16 1l4 4-4 4'/></svg>") no-repeat center / contain;
            mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 10' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M0 5h20M16 1l4 4-4 4'/></svg>") no-repeat center / contain;
    transition: transform 0.25s ease;
}
/* "Articles plus anciens" → flèche après le texte, pointe à droite */
.home-pagination-prev a { flex-direction: row; }
.home-pagination-prev a::before { order: 99; transform: scaleX(1); }
/* "Articles plus récents" → flèche avant le texte, pointe à gauche */
.home-pagination-next a::before { order: -1; transform: scaleX(-1); }

.home-pagination a:hover {
    transform: translateY(-2px);
    background: var(--c-accent);
    border-color: var(--c-accent);
    color: #fff;
    box-shadow: 0 12px 28px -14px rgba(239, 126, 21, 0.55);
}
.home-pagination-prev a:hover::before { transform: translateX(4px); }
.home-pagination-next a:hover::before { transform: scaleX(-1) translateX(4px); }

.home-pagination a:focus-visible {
    outline: 2px solid var(--c-accent);
    outline-offset: 3px;
}

@media (min-width: 700px) {
    .home-pagination {
        flex-direction: row;
        justify-content: center;
        gap: var(--s-lg);
    }
    .home-pagination::before { display: none; }
}

@media (max-width: 1100px) {
    :root { --grid-tile-size: 220px; }
}
@media (max-width: 700px) {
    :root { --grid-tile-size: calc(50vw - 18px); --grid-gap: 10px; --grid-radius: 12px; }
    #grid-container.grid {
        grid-template-columns: 1fr 1fr;
        grid-auto-rows: calc(50vw - 18px);
        width: calc(100% - 24px);
        max-width: 100vw;
    }
    #grid-container .item.width2  { grid-column: span 2; }
    #grid-container .item.height2 { grid-row: span 1; }
    #grid-container .infol { padding: 10px 12px; }
    #grid-container .title { font-size: 0.82rem; -webkit-line-clamp: 2; }
    #grid-container .cvoyage,
    #grid-container .autor { font-size: 0.58rem; letter-spacing: 0.12em; }
    #grid-container .item.first-vignette::after { font-size: 1.05rem; bottom: 14px; left: 14px; }
}

/* ============================================================
   716 — Site header (mega menu)
   Modifiable via Apparence → Menus (emplacements "Menu principal" et "Top utilities").
   ============================================================ */

:root {
    --hdr-accent: #ef7e15;
    --hdr-accent-soft: #fd8741;
    --hdr-ink: #1e201d;
    --hdr-ink-soft: #5b5e58;
    --hdr-line: #ebe7df;
    --hdr-bg: #ffffff;
    --hdr-bg-soft: #faf7f1;
    --hdr-shadow: 0 12px 30px -22px rgba(30, 32, 29, 0.35);
    --hdr-radius: 16px;
}

.site-header {
    position: relative;
    background: var(--hdr-bg);
    border-bottom: 1px solid var(--hdr-line);
    font-family: inherit;
    z-index: 100;
}

/* ---------- Top utilities bar ---------- */
.site-header__top {
    background: var(--hdr-bg-soft);
    border-bottom: 1px solid var(--hdr-line);
    font-size: 12px;
}
.site-header__top-inner {
    max-width: 1280px;
    margin: 0 auto;
    padding: 8px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}
.site-header__top-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    gap: 18px;
}
.site-header__top-list a {
    color: var(--hdr-ink-soft);
    text-decoration: none;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    font-weight: 600;
}
.site-header__top-list a:hover { color: var(--hdr-accent); }
.site-header__top-right {
    display: flex;
    align-items: center;
    gap: 14px;
}
.site-header__lang {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    gap: 8px;
}
.site-header__lang li { line-height: 1; }
.site-header__lang a {
    color: var(--hdr-ink-soft);
    text-decoration: none;
    text-transform: uppercase;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    padding: 4px 8px;
    border-radius: var(--radius);
    border: 1px solid transparent;
}
.site-header__lang .current-lang a,
.site-header__lang .lang-item-current a {
    color: var(--hdr-accent);
    border-color: var(--hdr-accent);
}
.site-header__search-toggle {
    border: 0;
    background: transparent;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: var(--hdr-ink);
    transition: background 0.2s ease, color 0.2s ease;
}
.site-header__search-toggle svg { width: 14px; height: 14px; fill: currentColor; }
.site-header__search-toggle:hover { background: var(--hdr-accent); color: #fff; }

/* ---------- Main bar ---------- */
.site-header__main { background: var(--hdr-bg); }
.site-header__main-inner {
    max-width: 1280px;
    margin: 0 auto;
    padding: 14px 24px;
    display: flex;
    align-items: center;
    gap: 24px;
}
.site-header__logo {
    flex-shrink: 0;
    text-decoration: none;
    color: var(--hdr-ink);
    font-weight: 700;
    font-size: 22px;
    letter-spacing: 0.02em;
    line-height: 1;
}
.site-header__logo-img {
    display: block;
    max-height: 48px;
    width: auto;
}

/* ---------- Burger ---------- */
.site-header__burger {
    display: none;
    margin-left: auto;
    border: 0;
    background: transparent;
    width: 40px;
    height: 40px;
    padding: 0;
    cursor: pointer;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
}
.site-header__burger-bar {
    display: block;
    width: 24px;
    height: 2px;
    background: var(--hdr-ink);
    border-radius: 2px;
    transition: transform 0.25s ease, opacity 0.2s ease;
}
.is-drawer-open .site-header__burger-bar:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.is-drawer-open .site-header__burger-bar:nth-child(2) { opacity: 0; }
.is-drawer-open .site-header__burger-bar:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* ---------- Primary nav (desktop) ---------- */
.primary-nav { flex: 1; }
.primary-nav__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    flex-wrap: wrap;
}
.primary-nav__item {
    position: static; /* mega panel positioned via .site-header */
    --mega-accent: var(--hdr-accent);
}
.primary-nav__link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 14px 14px;
    color: var(--hdr-ink);
    text-decoration: none;
    font-family: var(--font-display);
    font-size: 20px;
    font-weight: 400;
    letter-spacing: initial;
    text-transform: uppercase;
    border-radius: 10px;
    transition: color 0.2s ease, background 0.2s ease;
    position: relative;
}
.primary-nav__link:hover,
.primary-nav__item:hover > .primary-nav__link,
.primary-nav__item.is-open > .primary-nav__link,
.primary-nav__item.current-menu-item > .primary-nav__link,
.primary-nav__item.current-menu-ancestor > .primary-nav__link {
    color: var(--mega-accent);
}
.primary-nav__link::after {
    content: "";
    position: absolute;
    left: 14px; right: 14px;
    bottom: 8px;
    height: 2px;
    background: var(--mega-accent);
    border-radius: 2px;
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 0.25s ease;
}
.primary-nav__link:hover::after,
.primary-nav__item:hover > .primary-nav__link::after,
.primary-nav__item.is-open > .primary-nav__link::after,
.primary-nav__item.current-menu-item > .primary-nav__link::after,
.primary-nav__item.current-menu-ancestor > .primary-nav__link::after {
    transform: scaleX(1);
}

/* ---- Sections de navigation : Paris (orange) / Le Monde (teal) / le reste (neutre) ----
   L'univers (classe « paris » ou « monde » sur l'entrée de menu) pilote --mega-accent
   (survol, soulignement, méga-menu). Une étiquette coiffe le 1er item de chaque groupe,
   et un séparateur vertical marque le changement de section. */
.primary-nav__link {
    padding-top: 27px; /* réserve la bande de l'étiquette de section */
    padding-bottom: 11px;
}
.primary-nav__eyebrow {
    position: absolute;
    top: 6px;
    left: 14px;
    font-family: var(--font-display, inherit);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--mega-accent);
    white-space: nowrap;
    pointer-events: none;
}
.primary-nav__item.is-group-start {
    margin-left: 12px;
    padding-left: 12px;
    border-left: 1px solid var(--hdr-line, rgba(30, 32, 29, 0.14));
}
.primary-nav__icon {
    display: inline-flex;
    width: 18px;
    height: 18px;
    align-items: center;
    justify-content: center;
}
.primary-nav__icon img { display: block; max-width: 100%; max-height: 100%; }
.primary-nav__caret {
    width: 8px;
    height: 8px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg) translate(-2px, -2px);
    transition: transform 0.2s ease;
}
.primary-nav__item.is-open .primary-nav__caret {
    transform: rotate(-135deg) translate(-2px, -2px);
}

/* Featured top-level item = pill colorée. */
.primary-nav__item.is-featured > .primary-nav__link {
    background: var(--mega-accent);
    color: #fff;
    padding-left: 18px;
    padding-right: 18px;
}
.primary-nav__item.is-featured > .primary-nav__link:hover {
    background: var(--hdr-accent-soft);
    color: #fff;
}
.primary-nav__item.is-featured > .primary-nav__link::after { display: none; }

.primary-nav__divider {
    width: 1px;
    height: 22px;
    background: var(--hdr-line);
    margin: 0 4px;
    list-style: none;
}

/* ---------- Mega panel ---------- */
.mega-panel {
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    background: var(--hdr-bg);
    border-top: 1px solid var(--hdr-line);
    box-shadow: var(--hdr-shadow);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-6px);
    transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s ease;
    z-index: 90;
    max-height: calc(100vh - 80px);
    overflow-y: auto;
    overscroll-behavior: contain;
}
.primary-nav__item.is-open > .mega-panel,
.primary-nav__item:hover > .mega-panel,
.primary-nav__item:focus-within > .mega-panel {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}
.mega-panel__inner {
    max-width: 1280px;
    margin: 0 auto;
    padding: 18px 24px 22px;
    display: grid;
    /* Colonnes plafonnées (pas de 1fr) + grille centrée : avec peu de colonnes
       (ex. 3), elles restent groupées au centre au lieu de s'étirer sur toute
       la largeur. Avec beaucoup de colonnes, elles remplissent le panneau. */
    grid-template-columns: repeat(auto-fit, minmax(180px, 220px));
    justify-content: center;
    gap: 18px 28px;
    border-top: 3px solid var(--mega-accent);
}
.mega-col__title { margin-bottom: 8px; }
.mega-col { min-width: 0; }
.mega-col--break { grid-column-start: 1; }
.mega-col--divider {
    border-left: 1px solid var(--hdr-line);
    padding: 0;
}
.mega-col__title {
    display: block;
    font-size: 14px;
    font-family: 'Oswald';
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: var(--mega-accent);
    margin-bottom: 12px;
    text-decoration: none;
    white-space: nowrap;
}
.mega-col__title--link:hover { text-decoration: underline; }
.mega-col__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0px;
}
.mega-link a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--hdr-ink);
    text-decoration: none;
    font-size: 14px;
    line-height: 1;
    padding: 0px 0;
    transition: color 0.2s ease, transform 0.2s ease;
}
.mega-link a:hover {
    color: var(--mega-accent);
    transform: translateX(2px);
}
.mega-link.is-featured a {
    color: var(--mega-accent);
    font-weight: 700;
}
.mega-link__icon {
    display: inline-flex;
    width: 16px;
    height: 16px;
}
.mega-link__icon img { display: block; max-width: 100%; max-height: 100%; }
.mega-link--divider hr {
    border: 0;
    border-top: 1px solid var(--hdr-line);
    margin: 6px 0;
}

/* ---------- Search panel ---------- */
.site-header__search-panel {
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    background: var(--hdr-bg);
    border-top: 1px solid var(--hdr-line);
    box-shadow: var(--hdr-shadow);
    transform: translateY(-8px);
    opacity: 0;
    transition: opacity 0.2s ease, transform 0.2s ease;
    z-index: 95;
}
.site-header__search-panel.is-open {
    opacity: 1;
    transform: translateY(0);
}
.site-header__search-form {
    max-width: 720px;
    margin: 0 auto;
    padding: 22px 24px;
    display: flex;
    align-items: center;
    gap: 10px;
}
.site-header__search-form input[type="search"] {
    flex: 1;
    border: 0;
    border-bottom: 2px solid var(--hdr-line);
    padding: 10px 4px;
    font-size: 18px;
    background: transparent;
    color: var(--hdr-ink);
    outline: none;
}
.site-header__search-form input[type="search"]:focus { border-bottom-color: var(--hdr-accent); }
.site-header__search-submit {
    border: 0;
    background: var(--hdr-accent);
    color: #fff;
    padding: 10px 18px;
    border-radius: var(--radius);
    font-weight: 700;
    font-size: 13px;
    cursor: pointer;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}
.site-header__search-submit:hover { background: var(--hdr-accent-soft); }
.site-header__search-close {
    border: 0;
    background: transparent;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    color: var(--hdr-ink-soft);
    font-size: 24px;
    line-height: 1;
    cursor: pointer;
}
.site-header__search-close:hover { color: var(--hdr-accent); }

/* ---------- Visibility helpers ---------- */
.is-mobile-only { display: none !important; }

/* ---------- Mobile drawer ---------- */
.mobile-drawer {
    position: fixed;
    inset: 0;
    background: rgba(30, 32, 29, 0.5);
    opacity: 0;
    transition: opacity 0.3s ease;
    z-index: 200;
}
.mobile-drawer.is-open { opacity: 1; }
.mobile-drawer__panel {
    position: absolute;
    top: 0; right: 0;
    width: min(86vw, 380px);
    height: 100%;
    background: var(--hdr-bg);
    overflow-y: auto;
    transform: translateX(100%);
    transition: transform 0.3s ease;
    display: flex;
    flex-direction: column;
}
.mobile-drawer.is-open .mobile-drawer__panel { transform: translateX(0); }
.mobile-drawer__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    border-bottom: 1px solid var(--hdr-line);
}
.mobile-drawer__title {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.16em;
    font-weight: 700;
    color: var(--hdr-ink-soft);
}
.mobile-drawer__close {
    border: 0;
    background: transparent;
    font-size: 28px;
    line-height: 1;
    color: var(--hdr-ink);
    cursor: pointer;
}
.mobile-drawer__nav { padding: 8px 0; }
.mobile-drawer__list,
.mobile-drawer__list .sub-menu,
.mobile-drawer__sublist {
    list-style: none;
    margin: 0;
    padding: 0;
}
.mobile-drawer__list a,
.mobile-drawer__sublist a {
    display: block;
    padding: 12px 20px;
    color: var(--hdr-ink);
    text-decoration: none;
    font-size: 15px;
    font-weight: 600;
    border-bottom: 1px solid var(--hdr-line);
    position: relative;
}
.mobile-drawer__list .menu-item-has-children > a::after {
    content: "";
    position: absolute;
    right: 24px; top: 50%;
    width: 8px; height: 8px;
    border-right: 2px solid var(--hdr-ink-soft);
    border-bottom: 2px solid var(--hdr-ink-soft);
    transform: translateY(-65%) rotate(45deg);
    transition: transform 0.2s ease;
}
.mobile-drawer__list .menu-item-has-children.is-expanded > a::after {
    transform: translateY(-25%) rotate(-135deg);
}
.mobile-drawer__list .sub-menu {
    background: var(--hdr-bg-soft);
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
}
.mobile-drawer__list .menu-item-has-children.is-expanded > .sub-menu { max-height: 1500px; }
.mobile-drawer__list .sub-menu a {
    padding-left: 36px;
    font-weight: 500;
    text-transform: none;
    letter-spacing: 0;
    font-size: 14px;
}
.mobile-drawer__list .sub-menu .sub-menu a { padding-left: 52px; font-size: 13px; color: var(--hdr-ink-soft); }
.mobile-drawer__sub {
    margin-top: auto;
    border-top: 1px solid var(--hdr-line);
    background: var(--hdr-bg-soft);
}
.mobile-drawer__sublist a {
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 0.08em;
    color: var(--hdr-ink-soft);
    border: 0;
}

/* ---------- Responsive ---------- */
@media (max-width: 1024px) {
    .site-header__main-inner { padding: 12px 18px; gap: 14px; }
    .primary-nav__link { padding: 10px 10px; font-size: 13px; letter-spacing: 0.04em; }
    .mega-panel__inner { padding: 22px 18px 26px; gap: 22px; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); }
}

@media (max-width: 900px) {
    .primary-nav,
    .site-header__top,
    .site-header__top-right,
    .site-header__search-toggle { display: none; }
    .site-header__burger { display: inline-flex; }
    .is-mobile-only { display: revert !important; }
    .is-desktop-only { display: none !important; }
}

body.is-drawer-open { overflow: hidden; }

@media (min-width: 901px) {
    .is-mobile-only { display: none !important; }
}

/* ============================================================
   716 — Overflow-X reset global
   Empêche les éléments legacy (col-620, grids float, scripts pubs,
   iframes Tipeee/Tradedoubler) de provoquer un scroll horizontal.
   ============================================================ */
html, body {
    max-width: 100%;
    /* `overflow-x: clip` au lieu de `hidden` : empêche le débordement latéral
       SANS créer de contexte de scroll qui casserait `position: sticky`
       (ex. le sommaire .entry-toc qui doit suivre au scroll). */
    overflow-x: clip;
}
body > * { max-width: 100%; }

/* Container legacy : on retire le float et on borne la largeur */
.grid.col-940 {
    float: none;
    margin: 0 auto;
    width: 100%;
    max-width: 100%;
}
#container.hfeed,
#wrapper {
    max-width: 100%;
    /* Pas d'overflow-x:hidden ici : ça casse position: sticky sur les enfants
       (ex. .entry-toc). Si un débordement horizontal apparaît, on le corrige
       sur l'élément fautif plutôt que de le clip globalement. */
}

/* Vidéos YouTube / Vimeo : ratio 16:9 responsive (oEmbed Gutenberg) */
.wp-block-embed,
.wp-block-embed__wrapper {
    margin: var(--s-lg) 0;
    max-width: 100%;
}
.wp-block-embed__wrapper {
    position: relative;
    aspect-ratio: 16 / 9;
}
.wp-block-embed__wrapper iframe,
.wp-block-embed__wrapper video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}
/* Fallback pour les embeds legacy non wrappés */
.entry-section-content iframe[src*="youtube"],
.entry-section-content iframe[src*="vimeo"],
.entry-content iframe[src*="youtube"],
.entry-content iframe[src*="vimeo"] {
    width: 100%;
    aspect-ratio: 16 / 9;
    height: auto;
}

/* Les images, vidéos et iframes ne dépassent jamais */
img, video, embed, object {
    max-width: 100%;
    height: auto;
}
iframe {
    max-width: 100%;
    display: block;
}

/* Sécurise les pubs/scripts insérés en home (themoneytizer, adsense, etc.) */
.home-pubs,
.home-pub,
.themoneytizer-ads {
    max-width: 100%;
    overflow: hidden;
}

/* Colonnes legacy à largeur fixe (.col-620 = 690px) — on borne sur petits écrans */
.col-620 { max-width: 100%; }

/* Tableaux/iframes/objects qui pourraient déborder */
table { max-width: 100%; }
.entry-content table { display: block; overflow-x: auto; }

/* Filets ACF (article fiche resto) ne dépassent pas */
.entry-fiche, .entry-section { max-width: 100%; box-sizing: border-box; }

/* ============================================================
   716 — Single article : progress bar + temps de lecture + TOC
   ============================================================ */

.reading-progress {
    position: fixed;
    top: 0; left: 0; right: 0;
    height: 3px;
    background: rgba(30, 32, 29, 0.06);
    z-index: 999;
    pointer-events: none;
}
.reading-progress__bar {
    display: block;
    height: 100%;
    background: linear-gradient(90deg, #ef7e15 0%, #fd8741 100%);
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 0.05s linear;
    will-change: transform;
}

/* Temps de lecture dans le meta */
.entry-readtime {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    vertical-align: middle;
    line-height: 1;
    color: var(--c-text-muted, #999);
}
.entry-readtime::before {
    content: "";
    display: block;
    width: 12px;
    height: 12px;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23999'><path d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm0 18a8 8 0 1 1 0-16 8 8 0 0 1 0 16zm.5-13H11v6l5.2 3.1.8-1.3-4.5-2.7z'/></svg>");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    flex-shrink: 0;
}

/* ---------- Sommaire ---------- */
.entry-toc {
    margin: 24px auto 28px;
    max-width: var(--content-max, 760px);
    background: #faf7f1;
    border: 1px solid #ebe7df;
    border-radius: 6px;
    padding: 14px 18px;
    box-shadow: 0 8px 20px -16px rgba(30, 32, 29, 0.25);
}
.entry-toc[hidden] { display: none; }

.entry-toc__toggle {
    background: transparent;
    border: 0;
    padding: 0;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    color: #1e201d;
    font-weight: 700;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}
.entry-toc__label::before {
    content: "";
    display: inline-block;
    width: 14px; height: 14px;
    margin-right: 8px;
    vertical-align: -2px;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ef7e15'><path d='M3 5h18v2H3zm0 6h12v2H3zm0 6h18v2H3z'/></svg>");
    background-size: contain;
    background-repeat: no-repeat;
}
.entry-toc__chevron {
    display: inline-block;
    width: 8px; height: 8px;
    border-right: 2px solid #1e201d;
    border-bottom: 2px solid #1e201d;
    transform: rotate(45deg) translate(-2px, -2px);
    transition: transform 0.25s ease;
}
.entry-toc.is-collapsed .entry-toc__chevron {
    transform: rotate(-135deg) translate(-2px, -2px);
}
.entry-toc__body {
    margin-top: 12px;
    overflow: hidden;
    transition: max-height 0.3s ease, opacity 0.2s ease;
    max-height: 1500px;
}
.entry-toc.is-collapsed .entry-toc__body {
    max-height: 0;
    opacity: 0;
    margin-top: 0;
}
.entry-toc__list {
    list-style: none;
    margin: 0;
    padding: 0;
    counter-reset: toc;
}
.entry-toc__item {
    counter-increment: toc;
    line-height: 1.4;
}
.entry-toc__item + .entry-toc__item { margin-top: 4px; }
.entry-toc__list a {
    display: flex;
    align-items: baseline;
    gap: 10px;
    padding: 6px 8px;
    border-radius: 6px;
    color: #5b5e58;
    text-decoration: none;
    font-size: 14px;
    transition: color 0.2s ease, background 0.2s ease, transform 0.2s ease;
}
.entry-toc__list a::before {
    content: counter(toc, decimal-leading-zero);
    color: #c9c4ba;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.04em;
    flex-shrink: 0;
    transition: color 0.2s ease;
}
.entry-toc__list a:hover {
    color: #ef7e15;
    background: rgba(239, 126, 21, 0.06);
}
.entry-toc__list a.is-active {
    color: #ef7e15;
    background: rgba(239, 126, 21, 0.1);
    font-weight: 600;
}
.entry-toc__list a.is-active::before {
    color: #ef7e15;
}

/* ---------- Extras repliables sous le sommaire (boutique / partenaire / instagram) ---------- */
.entry-extras {
    margin: 20px 0 30px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.entry-extra {
    background: #fff;
    border: 1px solid #ebe7df;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 8px 20px -16px rgba(30, 32, 29, 0.25);
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.entry-extra.is-open {
    border-color: #f4d8b1;
    box-shadow: 0 14px 26px -18px rgba(30, 32, 29, 0.35);
}
.entry-extra__head {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 13px 16px;
    background: transparent;
    border: 0;
    cursor: pointer;
    text-align: left;
    color: #1e201d;
}
.entry-extra__visual {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 9px;
    background: #fff5e9;
    color: #ef7e15;
    flex-shrink: 0;
}
.entry-extra__visual svg,
.entry-extra__visual img {
    width: 18px;
    height: 18px;
    object-fit: contain;
}
.entry-extra__label {
    flex: 1;
    min-width: 0;
    font-weight: 700;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}
.entry-extra__chevron {
    width: 8px;
    height: 8px;
    border-right: 2px solid #1e201d;
    border-bottom: 2px solid #1e201d;
    transform: rotate(45deg) translate(-2px, -2px);
    transition: transform 0.25s ease;
    flex-shrink: 0;
}
.entry-extra.is-open .entry-extra__chevron {
    transform: rotate(-135deg) translate(-1px, -1px);
}
.entry-extra__panel {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
}
.entry-extra__panel-inner {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    padding: 2px 16px 16px 62px;
}
.entry-extra__title {
    font-size: 16px;
    font-weight: 700;
    line-height: 1.25;
    color: #1e201d;
}
.entry-extra__desc {
    font-size: 14px;
    line-height: 1.5;
    color: #5a5a52;
}
.entry-extra__cta {
    font-weight: 600;
    font-size: 14px;
    color: #ef7e15;
    text-decoration: none;
}
.entry-extra__cta::after { content: "  \2192"; }
.entry-extra__cta:hover { color: #d96d0d; }

/* Accents par variante (boutique sombre, partenaire bleu Paris, instagram brand) */
.entry-extra--shop .entry-extra__visual { background: #1e201d; color: #ef7e15; }
.entry-extra--partner .entry-extra__visual { background: #eaf1fb; color: #1d4274; }
.entry-extra--partner .entry-extra__cta { color: #1d4274; }
.entry-extra--partner .entry-extra__cta:hover { color: #122d52; }
.entry-extra--instagram .entry-extra__visual {
    background: linear-gradient(135deg, #feda75 0%, #d62976 55%, #4f5bd5 100%);
    color: #fff;
}

/* ---------- Bas d'article : bloc « Soutenir » + carte Guide côte à côte ---------- */
.entry-outro {
    margin: var(--s-2xl, 40px) 0 0;
}
.entry-outro--has-guide {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
    gap: 20px;
    align-items: stretch;
}
.entry-outro .post-support { margin: 0; }
.entry-outro__guide {
    margin: 0;
    min-height: 0;
}
@media (max-width: 700px) {
    .entry-outro--has-guide { grid-template-columns: 1fr; }
}

/* Carte « Le guide » : visuel de la carte 716 + texte en surimpression */
.entry-map-card {
    position: relative;
    display: flex;
    align-items: flex-end;
    min-height: 220px;
    margin: 0;
    border-radius: 14px;
    overflow: hidden;
    text-decoration: none;
    color: #fff;
    background: #1e201d;
    box-shadow: 0 12px 28px -18px rgba(30, 32, 29, 0.45);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    isolation: isolate;
}
.entry-map-card:hover,
.entry-map-card:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 20px 36px -18px rgba(30, 32, 29, 0.55);
    outline: none;
}
.entry-map-card__img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: -1;
    transition: transform 0.4s ease;
}
.entry-map-card:hover .entry-map-card__img { transform: scale(1.04); }
/* Dégradé pour la lisibilité du texte posé en bas */
.entry-map-card::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(20, 22, 19, 0) 25%, rgba(20, 22, 19, 0.82) 100%);
    z-index: -1;
}
/* Repli sans image : fond sombre + motif points façon carte */
.entry-map-card--noimg {
    background:
        radial-gradient(circle at 1px 1px, rgba(239, 126, 21, 0.28) 1px, transparent 1.6px) 0 0 / 18px 18px,
        linear-gradient(160deg, #23251f, #14160f);
}
.entry-map-card--noimg::after { display: none; }
.entry-map-card__content {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 4px;
    width: 100%;
    padding: 20px 22px;
}
.entry-map-card__eyebrow {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.16em;
    font-weight: 700;
    color: #ffb968;
}
.entry-map-card__title {
    font-family: var(--font-display, inherit);
    font-size: 22px;
    line-height: 1.15;
    font-weight: 700;
    color: #fff;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.35);
}
.entry-map-card__cta {
    margin-top: 6px;
    font-weight: 600;
    font-size: 14px;
    color: #fff;
}
.entry-map-card__cta::after { content: "  \2192"; }
.entry-map-card:hover .entry-map-card__cta { color: #ffce9e; }

/* Sidebar article (TOC) — en grand écran à droite.
   Les widgets (.entry-widgets) sont eux affichés en pleine largeur de la
   colonne principale, entre l'image et le contenu de l'article. */
.entry-aside {
    display: contents;
}
.entry-tripadvisor {
    margin-top: 24px;
}
.entry-widgets {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
    margin: 22px 0 28px;
}
.entry-link-card {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 22px 22px 20px;
    background: #fff;
    border: 1px solid #ebe7df;
    border-radius: 14px;
    box-shadow: 0 8px 20px -16px rgba(30, 32, 29, 0.25);
    color: inherit;
    text-decoration: none;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
    min-height: 200px;
    height: 100%;
    min-width: 0;
    box-sizing: border-box;
    overflow-wrap: anywhere;
}
.entry-link-card__title,
.entry-link-card__desc,
.entry-link-card__cta {
    min-width: 0;
    overflow-wrap: anywhere;
}
.entry-link-card:hover,
.entry-link-card:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 16px 30px -18px rgba(30, 32, 29, 0.38);
    border-color: #ef7e15;
    outline: none;
}
.entry-link-card__eyebrow {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    color: #ef7e15;
    font-weight: 700;
}
.entry-link-card__title {
    font-size: 20px;
    line-height: 1.2;
    color: #1e201d;
    font-weight: 700;
}
.entry-link-card__desc {
    color: #5a5a52;
    font-size: 14px;
    line-height: 1.45;
    flex: 1;
}
.entry-link-card__cta {
    align-self: flex-start;
    margin-top: 6px;
    font-weight: 600;
    color: #ef7e15;
    font-size: 14px;
    letter-spacing: 0.01em;
}
.entry-link-card__cta::after { content: "  \2192"; }
.entry-link-card:hover .entry-link-card__cta { color: #d96d0d; }

/* Pictogramme en haut de chaque carte */
.entry-link-card__visual {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border-radius: 12px;
    background: #fff5e9;
    color: #ef7e15;
    margin-bottom: 4px;
    transition: transform .25s ease;
}
.entry-link-card__visual svg,
.entry-link-card__visual img {
    width: 28px;
    height: 28px;
    max-width: 100%;
    max-height: 100%;
    display: block;
    object-fit: contain;
}
.entry-link-card:hover .entry-link-card__visual {
    transform: translateY(-1px) rotate(-3deg);
}

/* Variante : Le guide — accent orange, fond crème, motif points */
.entry-link-card--guide {
    background:
        radial-gradient(circle at 1px 1px, rgba(239,126,21,0.15) 1px, transparent 1.5px) 0 0 / 14px 14px,
        linear-gradient(160deg, #fff8ee, #ffeed5);
    border-color: #f4d8b1;
}
.entry-link-card--guide .entry-link-card__visual {
    background: #ef7e15;
    color: #fff;
    box-shadow: 0 8px 16px -10px rgba(239,126,21,0.65);
}

/* Variante : Soutenir — dégradé chaud rosé, cœur rouge */
.entry-link-card--support {
    background: linear-gradient(160deg, #fff3ee 0%, #ffe1d4 100%);
    border-color: #f4c8b3;
}
.entry-link-card--support .entry-link-card__visual {
    background: #fff;
    color: #e0524c;
    box-shadow: 0 8px 16px -12px rgba(224,82,76,0.55);
}
.entry-link-card--support .entry-link-card__eyebrow,
.entry-link-card--support .entry-link-card__cta {
    color: #d8463f;
}
.entry-link-card--support:hover .entry-link-card__cta { color: #b62f29; }
.entry-link-card--support:hover { border-color: #d8463f; }

/* Variante : Boutique — fond sombre, accent orange (inversion visuelle) */
.entry-link-card--shop {
    background: linear-gradient(165deg, #1e201d, #2a2b27);
    border-color: #1e201d;
    color: #f5f1e9;
}
.entry-link-card--shop .entry-link-card__title { color: #fff; }
.entry-link-card--shop .entry-link-card__desc  { color: #c9c5be; }
.entry-link-card--shop .entry-link-card__eyebrow,
.entry-link-card--shop .entry-link-card__cta { color: #ef7e15; }
.entry-link-card--shop .entry-link-card__visual {
    background: rgba(239,126,21,0.16);
    color: #ef7e15;
}
.entry-link-card--shop:hover { border-color: #ef7e15; }
.entry-link-card--shop:hover .entry-link-card__cta { color: #ffa050; }

/* Variante : Partenaire — bleu Paris, fond lavé */
.entry-link-card--partner {
    background: linear-gradient(170deg, #f1f6fc, #e1ecf8);
    border-color: #c5d6ec;
}
.entry-link-card--partner .entry-link-card__visual {
    background: #fff;
    color: #1d4274;
    box-shadow: 0 8px 16px -12px rgba(29,66,116,0.45);
}
.entry-link-card--partner .entry-link-card__eyebrow,
.entry-link-card--partner .entry-link-card__cta { color: #1d4274; }
.entry-link-card--partner:hover { border-color: #1d4274; }
.entry-link-card--partner:hover .entry-link-card__cta { color: #122d52; }

/* Variante : Instagram — dégradé brand officiel (jaune→orange→rose→violet→bleu),
   texte blanc, visuel verre dépoli. */
.entry-link-card--instagram {
    background: linear-gradient(135deg, #feda75 0%, #fa7e1e 22%, #d62976 50%, #962fbf 75%, #4f5bd5 100%);
    border-color: #fff;
    color: #fff;
    box-shadow: 0 10px 22px -16px rgba(214, 41, 118, 0.55);
}
.entry-link-card--instagram .entry-link-card__title { color: #fff; }
.entry-link-card--instagram .entry-link-card__desc  { color: rgba(255, 255, 255, 0.85); }
.entry-link-card--instagram .entry-link-card__eyebrow,
.entry-link-card--instagram .entry-link-card__cta { color: #fff; }
.entry-link-card--instagram .entry-link-card__visual {
    background: rgba(255, 255, 255, 0.2);
    color: #fff;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}
.entry-link-card--instagram:hover {
    border-color: rgba(255, 255, 255, 0.45);
    box-shadow: 0 14px 28px -14px rgba(214, 41, 118, 0.7);
}
.entry-link-card--instagram:hover .entry-link-card__cta { color: #fff; }
.entry-widget {
    background: #fff;
    border: 1px solid #ebe7df;
    border-radius: 14px;
    padding: 16px 18px;
    box-shadow: 0 8px 20px -16px rgba(30, 32, 29, 0.25);
}
.entry-widget__title {
    margin: 0 0 10px;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: #ef7e15;
    font-weight: 700;
}
.entry-widget ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.entry-widget a {
    color: #1e201d;
    text-decoration: none;
    font-size: 14px;
    line-height: 1.4;
    transition: color 0.2s ease;
}
.entry-widget a:hover { color: #ef7e15; }
.entry-widget img {
    display: block;
    margin-left: auto;
    margin-right: auto;
    max-width: 100%;
    height: auto;
}
#block-16 {
    text-align: center;
}
#block-17 {
    padding: 0;
}

@media (min-width: 1100px) {
    .entry.has-toc {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 360px;
        column-gap: 40px;
        row-gap: 0;
        align-items: start;
        max-width: 1220px;
        margin-left: auto;
        margin-right: auto;
    }
    .entry.has-toc > * { grid-column: 1; min-width: 0; }
    .entry.has-toc > .entry-aside {
        display: block;
        grid-column: 2;
        grid-row: 3 / span 100;
        align-self: start;
        position: sticky;
        top: 80px;
        margin: 39px 0 0;
    }
    /* Si l'article n'a pas d'image à la une, on perd une rangée — l'aside
       doit donc démarrer à la rangée 2 et non 3, sinon il s'aligne sous
       tout le contenu. */
    .entry.has-toc:not(:has(> .entry-thumbnail)):not(:has(> .entry-image-top)) > .entry-aside {
        grid-row: 2 / span 100;
        margin-top: 59px;
    }
    .entry.has-toc > .entry-header__newsletter {
        grid-column: 2;
        grid-row: 1;
        justify-self: end;
        align-self: center;
        margin: var(--s-lg) 0 0;
    }
    .entry.has-toc .entry-toc {
        margin: 0;
        max-width: none;
    }
}

/* Bande de cartes post-image — colonnes égales, mobile-first.
   Progression 1 → 2 → 5 colonnes : toutes les cartes (4 ou 5) tiennent sur
   une seule ligne au desktop, sans wrap. */
@media (min-width: 700px) {
    .entry-widgets { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
}
@media (min-width: 980px) {
    .entry-widgets {
        grid-template-columns: repeat(5, minmax(0, 1fr));
        gap: 14px;
        margin: 26px 0 32px;
    }
    /* Padding compressé pour respirer dans 5 colonnes (~175 px chacune). */
    .entry-widgets .entry-link-card { padding: 18px 16px 16px; gap: 8px; }
    .entry-widgets .entry-link-card__title { font-size: 16px; }
    .entry-widgets .entry-link-card__desc  { font-size: 13px; line-height: 1.4; }
}

/* Widget « Choisir son restaurant — carte des lieux 716 » */
#sidebar-featured {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    font-size: 14px;
    line-height: 1.4;
    color: #1e201d;
}
#sidebar-featured::before {
    content: "";
    display: block;
    width: 32px;
    height: 3px;
    background: #ef7e15;
    border-radius: 2px;
}
#sidebar-featured a {
    display: inline-block;
    padding: 8px 14px;
    background: #ef7e15;
    color: #fff;
    text-decoration: none;
    font-weight: 600;
    font-size: 13px;
    letter-spacing: 0.01em;
    transition: background 0.2s ease;
}
#sidebar-featured a:hover {
    background: #d96d0d;
    color: #fff;
}

/* Ancres : décale pour ne pas passer sous la barre top fixed */
.entry-section-title {
    scroll-margin-top: 90px;
}

@media (max-width: 768px) {
    .entry-toc { margin: 16px 12px 22px; padding: 12px 14px; }
    .entry-toc__list a { font-size: 13px; }
}

/* ============================================================
   716 — Swiper d'accueil (shortcode [swiper716])
   Slides éditées dans Options 716 → "Home — diaporama (Swiper)".
   ============================================================ */

.swiper716-wrapper {
    margin: 0 auto 36px;
    max-width: 1320px;
    padding: 0 22px;
}
.swiper716 {
    position: relative;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 18px 40px -22px rgba(30, 32, 29, 0.35);
    background: #f4efe5;
}
/* Hauteur calée sur le ratio des images du slider de référence
   (1660 × 550 ≈ 3:1) : la hauteur suit la largeur de façon responsive,
   comme sur 716lavie.com, sans recadrage. */
.swiper716-wrapper--small  .swiper716,
.swiper716-wrapper--medium .swiper716,
.swiper716-wrapper--large  .swiper716 { height: auto; aspect-ratio: 1660 / 550; }
.swiper716-wrapper--full   .swiper716 { height: 100vh; }

.swiper716-wrapper--medium {
    width: 100vw;
    max-width: none;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding: 0;
}
.swiper716-wrapper--medium .swiper716 { border-radius: 0; }

.swiper716-link {
    display: block;
    width: 100%;
    height: 100%;
    color: inherit;
    text-decoration: none;
}
.swiper716-slide {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}
.swiper716-img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* ---------- Caption ---------- */
.swiper716-caption {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    padding: 6%;
    color: #fff;
    background: linear-gradient(180deg, rgba(30, 32, 29, 0.05) 0%, rgba(30, 32, 29, 0.55) 100%);
}
.swiper716-caption__inner {
    max-width: 620px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}
.swiper716-slide--center       .swiper716-caption { align-items: center; justify-content: center; text-align: center; background: linear-gradient(180deg, rgba(30, 32, 29, 0.15) 0%, rgba(30, 32, 29, 0.55) 100%); }
.swiper716-slide--center       .swiper716-caption__inner { align-items: center; }
.swiper716-slide--bottom-left  .swiper716-caption { align-items: flex-end; justify-content: flex-start; }
.swiper716-slide--bottom-right .swiper716-caption { align-items: flex-end; justify-content: flex-end; text-align: right; }
.swiper716-slide--bottom-right .swiper716-caption__inner { align-items: flex-end; }
.swiper716-slide--top-left     .swiper716-caption { align-items: flex-start; justify-content: flex-start; }

.swiper716-title {
    font-size: clamp(1.6rem, 3.5vw, 3rem);
    font-weight: 800;
    line-height: 1.05;
    letter-spacing: -0.01em;
    margin: 0;
    text-shadow: 0 4px 24px rgba(0, 0, 0, 0.35);
}
.swiper716-subtitle {
    font-size: clamp(0.95rem, 1.4vw, 1.15rem);
    line-height: 1.45;
    margin: 0;
    max-width: 560px;
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.4);
}
.swiper716-button {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 22px;
    background: #ef7e15;
    color: #fff;
    text-decoration: none;
    border-radius: var(--radius);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    transition: background 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
    box-shadow: 0 12px 24px -10px rgba(239, 126, 21, 0.6);
    align-self: flex-start;
}
.swiper716-slide--center       .swiper716-button { align-self: center; }
.swiper716-slide--bottom-right .swiper716-button { align-self: flex-end; }
.swiper716-button:hover {
    background: #fd8741;
    transform: translateY(-2px);
    color: #fff;
    box-shadow: 0 16px 32px -10px rgba(239, 126, 21, 0.7);
}
.swiper716-button::after { content: "→"; font-size: 14px; }

/* ---------- Controls (override Swiper defaults pour matcher le design) ---------- */
.swiper716 .swiper-button-prev,
.swiper716 .swiper-button-next {
    width: 44px;
    height: 44px;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.92);
    color: #1e201d;
    box-shadow: 0 8px 20px -10px rgba(0, 0, 0, 0.4);
    transition: background 0.2s ease, transform 0.2s ease, color 0.2s ease;
    cursor: pointer;
}
.swiper716 .swiper-button-prev:hover,
.swiper716 .swiper-button-next:hover {
    background: #ef7e15;
    color: #fff;
    transform: scale(1.06);
}
.swiper716 .swiper-button-prev::after,
.swiper716 .swiper-button-next::after {
    font-size: 16px;
    font-weight: 700;
}
.swiper716 .swiper-pagination-bullet {
    width: 9px;
    height: 9px;
    background: rgba(255, 255, 255, 0.55);
    opacity: 1;
    transition: width 0.25s ease, background 0.25s ease;
    border-radius: 999px;
}
.swiper716 .swiper-pagination-bullet-active {
    background: #fff;
    width: 28px;
}
.swiper716 .swiper-pagination {
    bottom: 16px;
}

/* ---------- Responsive ---------- */
@media (max-width: 768px) {
    .swiper716-wrapper { padding: 0 12px; margin-bottom: 26px; }
    .swiper716 { border-radius: 14px; }
    /* On conserve le ratio 1660/550 sur mobile (hauteur auto), pas de hauteur
       fixe qui changerait le cadrage. */
    .swiper716-caption { padding: 22px; }
    .swiper716-caption__inner { gap: 10px; }
    .swiper716-title { font-size: 1.5rem; }
    .swiper716-subtitle { font-size: 0.9rem; }
    .swiper716 .swiper-button-prev,
    .swiper716 .swiper-button-next { width: 36px; height: 36px; }
}

/* ============================================================
   716 — Site footer (menu + réseaux sociaux + newsletter)
   Tout est éditable depuis Apparence → Menus + Options 716.
   ============================================================ */

.site-footer {
    background: #000000;
    color: #f4efe5;
    padding: 18px 28px;
    margin-top: 60px;
}
.site-footer__inner {
    max-width: 1400px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.site-footer__main {
    display: flex;
    align-items: center;
    gap: 28px;
    flex-wrap: wrap;
}

/* Bloc gauche : logo + menu empilés */
.site-footer__brand {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    flex: 1 1 auto;
    min-width: 0;
}
.site-footer__logo {
    display: block;
    text-decoration: none;
}
.site-footer__logo-img {
    display: block;
    max-height: 56px;
    width: auto;
}

.site-footer__menu {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 0;
}
.site-footer__menu li + li a { border-left: 1px solid rgba(244, 239, 229, 0.6); }
.site-footer__menu li a { padding: 0 12px; }
.site-footer__menu li:first-child a { padding-left: 0; }
.site-footer__menu a {
    color: #f4efe5;
    text-decoration: none;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    transition: color 0.2s ease;
    line-height: 1;
}
.site-footer__menu a:hover { color: #ef7e15; }

/* ---------- Réseaux sociaux ---------- */
.footer-socials {
    list-style: none;
    margin: 0;
    padding: 0 0 0 28px;
    border-left: 1px solid rgba(244, 239, 229, 0.5);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}
.footer-social {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    color: #f4efe5;
    border: 1.5px solid #f4efe5;
    transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease, border-color 0.2s ease;
}
.footer-social svg {
    width: 16px;
    height: 16px;
    fill: currentColor;
}
.footer-social:hover {
    background: #fff;
    color: #000;
    border-color: #fff;
    transform: translateY(-2px);
}
/* Couleur de marque au hover (optionnel par plateforme) */
.footer-social--facebook:hover   { background: #1877f2; }
.footer-social--instagram:hover  { background: #e1306c; }
.footer-social--twitter:hover    { background: #000; }
.footer-social--tiktok:hover     { background: #000; }
.footer-social--youtube:hover    { background: #ff0000; }
.footer-social--soundcloud:hover { background: #ff5500; }
.footer-social--mixcloud:hover   { background: #5000ff; }

/* ============================================================
   716 — Bloc soutien (Tipeee + PayPal) au-dessus des commentaires
   ============================================================ */
.post-support {
    margin: var(--s-2xl) 0 0;
    padding: var(--s-xl);
    background: linear-gradient(180deg, rgba(239, 126, 21, 0.06) 0%, rgba(239, 126, 21, 0.02) 100%);
    border: 1px solid rgba(239, 126, 21, 0.18);
    border-radius: 12px;
    position: relative;
}
.post-support__text {
    margin: 0 0 var(--s-md);
    font-size: 15px;
    line-height: 1.65;
    color: var(--c-text);
}
.post-support__text:last-of-type { margin-bottom: var(--s-md); }
.post-support__text a {
    color: var(--c-accent);
    text-decoration: none;
    border-bottom: 1px solid rgba(239, 126, 21, 0.3);
    transition: border-color 0.2s ease;
}
.post-support__text a:hover { border-bottom-color: var(--c-accent); }
.post-support__buttons {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 16px;
    margin-top: var(--s-md);
}
.post-support__tipeee {
    display: inline-flex;
    align-items: center;
    line-height: 1;
}
/* PayPal — carte identique au widget Tipeee : fond blanc, arrondi, petit
   padding, logo (sans bouton bleu) + légende à côté. */
.post-support__paypal-card {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 10px 16px;
    background: #fff;
    border: 1px solid #ebe7df;
    border-radius: 8px;
    box-shadow: 0 4px 14px -8px rgba(30, 32, 29, 0.25);
    line-height: 1;
}
.post-support__paypal-btn {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
    transition: transform 0.2s ease, opacity 0.2s ease;
}
.post-support__paypal-btn:hover {
    transform: translateY(-1px);
    opacity: 0.88;
}
.post-support__paypal-logo {
    display: block;
    height: 24px;
    width: auto;
}
.post-support__paypal-caption {
    font-size: 14px;
    line-height: 1.25;
    color: #1e201d;
}
.post-support__paypal-name {
    color: #0070ba;
    font-weight: 700;
}

@media (max-width: 600px) {
    .post-support { padding: var(--s-lg) var(--s-md); }
    .post-support__buttons { flex-direction: column; align-items: stretch; }
    .post-support__paypal-card { justify-content: flex-start; }
}

/* ============================================================
   716 — Commentaires sur les articles single (style "discussion")
   ============================================================ */
.comments-area {
    margin: var(--s-2xl) 0 var(--s-xl);
    padding: var(--s-xl) 0 0;
    border-top: 1px solid var(--c-border);
}
.comments-area .comments-title {
    font-family: var(--font-display);
    font-size: clamp(1.6rem, 3vw, 2.2rem);
    font-weight: 700;
    margin: 0 0 var(--s-xl);
    color: var(--c-text);
    display: flex;
    align-items: baseline;
    gap: 12px;
    letter-spacing: -0.005em;
}
.comments-area .comments-title::before {
    content: "💬";
    font-size: 0.8em;
}

/* ---------- Liste de commentaires (sans cartes) ---------- */
.comments-area .comment-list,
.comments-area .comment-list .children {
    list-style: none;
    margin: 0;
    padding: 0;
}
.comments-area .comment-list .children {
    margin: var(--s-md) 0 0 clamp(28px, 6vw, 64px);
    padding-left: var(--s-md);
    border-left: 2px solid rgba(239, 126, 21, 0.2);
    position: relative;
}
.comments-area .comment-list > .comment + .comment {
    margin-top: var(--s-lg);
    padding-top: var(--s-lg);
    border-top: 1px dashed var(--c-border);
}
.comments-area .comment-list .children .comment + .comment {
    margin-top: var(--s-md);
}

.comments-area .comment-body {
    position: relative;
    padding-left: 64px;
    min-height: 52px;
    background: transparent;
    border: 0;
    box-shadow: none;
    border-radius: 0;
}

/* ---------- Avatar (gros, à gauche) ---------- */
.comments-area .comment-author .avatar {
    position: absolute;
    left: 0;
    top: 0;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: var(--c-bg);
    box-shadow: 0 4px 14px -6px rgba(30, 32, 29, 0.25);
    border: 2px solid #fff;
}
.comments-area .bypostauthor > .comment-body .avatar {
    box-shadow: 0 0 0 3px var(--c-accent), 0 4px 14px -4px rgba(239, 126, 21, 0.5);
    border-color: #fff;
}

/* ---------- Header de commentaire (auteur + date) ---------- */
.comments-area .comment-meta {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 4px 10px;
    margin-bottom: 6px;
}
.comments-area .comment-author {
    display: contents;
}
.comments-area .comment-author .fn {
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 16px;
    color: var(--c-text);
    font-style: normal;
}
.comments-area .comment-author .fn a {
    color: inherit;
    text-decoration: none;
    transition: color 0.2s ease;
}
.comments-area .comment-author .fn a:hover { color: var(--c-accent); }

.comments-area .bypostauthor > .comment-body .fn::after {
    content: "Auteur";
    display: inline-block;
    margin-left: 8px;
    background: var(--c-accent);
    color: #fff;
    font-family: var(--font-display);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 2px 8px;
    border-radius: 999px;
    vertical-align: 2px;
}

.comments-area .comment-author .says { display: none; } /* on cache "dit :" */

.comments-area .comment-metadata {
    font-size: 12px;
    color: var(--c-text-muted);
    letter-spacing: 0.02em;
}
.comments-area .comment-metadata::before {
    content: "·";
    margin-right: 6px;
    color: var(--c-text-muted);
}
.comments-area .comment-metadata a {
    color: inherit;
    text-decoration: none;
}
.comments-area .comment-metadata a:hover { color: var(--c-accent); }

/* ---------- Contenu (bulle légère) ---------- */
.comments-area .comment-content {
    color: var(--c-text);
    font-size: 15px;
    line-height: 1.65;
    background: #fafafa;
    border-radius: 14px 14px 14px 4px;
    padding: 12px 16px;
    position: relative;
}
.comments-area .bypostauthor > .comment-body .comment-content {
    background: rgba(239, 126, 21, 0.07);
}
.comments-area .comment-content p { margin: 0 0 var(--s-sm); }
.comments-area .comment-content p:last-child { margin-bottom: 0; }

/* ---------- Lien "Répondre" ---------- */
.comments-area .reply { margin-top: 8px; padding-left: 4px; }
.comments-area .comment-reply-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-family: var(--font-display);
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--c-text-muted);
    text-decoration: none;
    transition: color 0.2s ease, gap 0.2s ease;
}
.comments-area .comment-reply-link::before {
    content: "↩";
    color: var(--c-accent);
    font-size: 13px;
    transform: translateY(-1px);
}
.comments-area .comment-reply-link:hover {
    color: var(--c-accent);
    gap: 9px;
}

/* ---------- Message d'état ---------- */
.comments-area .no-comments {
    font-size: 14px;
    color: var(--c-text-muted);
    font-style: italic;
    margin: 0 0 var(--s-md);
    padding: var(--s-md);
    background: var(--c-bg);
    border-radius: var(--radius);
    text-align: center;
}

/* ---------- Formulaire (bloc accueillant) ---------- */
.comments-area .comment-respond {
    margin-top: var(--s-2xl);
    background: linear-gradient(180deg, var(--c-bg) 0%, #fff 100%);
    border-radius: 12px;
    padding: var(--s-xl);
    border: 1px solid var(--c-border);
    position: relative;
}
.comments-area .comment-respond::before {
    content: "✍";
    position: absolute;
    top: -18px;
    left: 24px;
    width: 36px;
    height: 36px;
    background: var(--c-accent);
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    box-shadow: 0 6px 14px -4px rgba(239, 126, 21, 0.55);
}
.comments-area .comment-reply-title {
    font-family: var(--font-display);
    font-size: clamp(1.2rem, 2.2vw, 1.5rem);
    font-weight: 700;
    margin: 0 0 4px;
    color: var(--c-text);
    padding-left: 50px;
}
.comments-area .comment-reply-title small {
    display: block;
    margin: 0;
    font-size: 12px;
    font-weight: 400;
    color: var(--c-text-muted);
    padding-left: 50px;
}
.comments-area .comment-reply-title small a {
    color: var(--c-accent);
    text-decoration: none;
}
.comments-area .comment-notes,
.comments-area .logged-in-as {
    font-size: 12px;
    color: var(--c-text-muted);
    margin: var(--s-md) 0 var(--s-sm);
    line-height: 1.5;
}
.comments-area .comment-form-comment,
.comments-area .comment-form-author,
.comments-area .comment-form-email,
.comments-area .comment-form-url {
    margin: 0 0 var(--s-sm);
}
.comments-area .comment-form label {
    display: block;
    font-family: var(--font-display);
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-weight: 700;
    color: var(--c-text-soft);
    margin-bottom: 6px;
}
.comments-area .comment-form input[type="text"],
.comments-area .comment-form input[type="email"],
.comments-area .comment-form input[type="url"],
.comments-area .comment-form textarea {
    width: 100%;
    padding: 12px 14px;
    background: #fff;
    border: 1px solid var(--c-border);
    border-radius: 8px;
    font-family: var(--font-base);
    font-size: 14px;
    line-height: 1.5;
    color: var(--c-text);
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
    box-sizing: border-box;
}
.comments-area .comment-form input[type="text"]:focus,
.comments-area .comment-form input[type="email"]:focus,
.comments-area .comment-form input[type="url"]:focus,
.comments-area .comment-form textarea:focus {
    outline: none;
    border-color: var(--c-accent);
    box-shadow: 0 0 0 4px rgba(239, 126, 21, 0.13);
}
.comments-area .comment-form textarea {
    resize: vertical;
    height: 149px;
    min-height: 130px;
    line-height: 1.6;
}

@media (min-width: 700px) {
    .comments-area .comment-form-author,
    .comments-area .comment-form-email,
    .comments-area .comment-form-url {
        display: inline-block;
        width: calc(33.333% - 8px);
        vertical-align: top;
        margin-right: 10px;
    }
    .comments-area .comment-form-url { margin-right: 0; }
}

.comments-area .form-submit { margin: var(--s-lg) 0 0; }
.comments-area .form-submit .submit {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 14px 32px;
    background: var(--c-accent);
    color: #fff;
    border: 0;
    border-radius: 999px;
    font-family: var(--font-display);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    cursor: pointer;
    transition: background 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
    box-shadow: 0 10px 22px -10px rgba(239, 126, 21, 0.6);
}
.comments-area .form-submit .submit:hover {
    background: var(--c-accent-dark);
    transform: translateY(-2px);
    box-shadow: 0 16px 32px -12px rgba(239, 126, 21, 0.75);
}

/* ---------- Mobile ---------- */
@media (max-width: 600px) {
    .comments-area .comment-body {
        padding-left: 56px;
    }
    .comments-area .comment-author .avatar {
        width: 44px;
        height: 44px;
    }
    .comments-area .comment-list .children {
        margin-left: 16px;
        padding-left: 12px;
    }
    .comments-area .comment-respond { padding: var(--s-lg) var(--s-md); }
    .comments-area .comment-reply-title,
    .comments-area .comment-reply-title small { padding-left: 0; padding-top: 20px; }
    .comments-area .comment-respond::before { top: -18px; left: 50%; transform: translateX(-50%); }
}

/* ============================================================
   716 — Page avec sidebar (template Page avec sidebar)
   ============================================================ */
.entry.entry-with-sidebar {
    max-width: 1240px;
    padding: 0 var(--s-md);
}
.entry.entry-with-sidebar .entry-header--minimal {
    text-align: left;
    margin: var(--s-xl) 0 var(--s-lg);
    padding-bottom: var(--s-md);
    border-bottom: 1px solid var(--c-border);
}
.entry.entry-with-sidebar .entry-header--minimal .entry-title {
    font-family: var(--font-display);
    font-size: clamp(2rem, 4vw, 3rem);
    font-weight: 700;
    color: var(--c-text);
    margin: 0;
    line-height: 1.1;
    letter-spacing: -0.01em;
    position: relative;
    display: inline-block;
}
.entry.entry-with-sidebar .entry-header--minimal .entry-title::after {
    content: "";
    display: block;
    width: 56px;
    height: 3px;
    background: var(--c-accent);
    margin-top: 14px;
}
@media (min-width: 1100px) {
    .entry.entry-with-sidebar {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 280px;
        column-gap: 40px;
        align-items: start;
    }
    .entry.entry-with-sidebar > .entry-header,
    .entry.entry-with-sidebar > .entry-thumbnail,
    .entry.entry-with-sidebar > .entry-content {
        grid-column: 1;
        min-width: 0;
    }
    .entry.entry-with-sidebar > .entry-sidebar {
        grid-column: 2;
        grid-row: 2 / span 100;
        align-self: start;
    }
}
.entry-sidebar {
    margin: var(--s-xl) 0;
    display: flex;
    flex-direction: column;
    gap: 22px;
}
/* Widgets : pas de carte par défaut, juste leur contenu (image, texte, menu).
   L'utilisateur peut ajouter une "Custom HTML" pour mettre une bannière image. */
.entry-sidebar .entry-widget {
    background: transparent;
    border: 0;
    padding: 0;
    box-shadow: none;
}
.entry-sidebar .entry-widget__title {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: var(--c-text-muted);
    margin: 0 0 10px;
    font-weight: 700;
}
/* Images dans la sidebar : full width, sans bordure */
.entry-sidebar .entry-widget img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
}
/* Menus en sidebar (widget "Navigation Menu" + autres listes) : même style
   que .entry-sidebar__nav-list — Oswald 18px, fond #f9f9f9 hérité, dividers OK */
.entry-sidebar .menu,
.entry-sidebar .widget_nav_menu ul {
    list-style: none;
    margin: 0;
    padding: 0;
    background: #f9f9f9;
}
.entry-sidebar .menu li,
.entry-sidebar .widget_nav_menu li {
    margin: 0;
    list-style: none;
}
.entry-sidebar .menu a,
.entry-sidebar .widget_nav_menu a {
    display: block;
    padding: 10px 0;
    color: var(--c-text);
    text-decoration: none;
    font-family: var(--font-display);
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0.01em;
    line-height: 1.3;
    background: transparent;
    transition: color 0.18s ease;
}
.entry-sidebar .menu a:hover,
.entry-sidebar .widget_nav_menu a:hover,
.entry-sidebar .menu .current-menu-item > a,
.entry-sidebar .widget_nav_menu .current-menu-item > a,
.entry-sidebar .menu .current_page_item > a,
.entry-sidebar .widget_nav_menu .current_page_item > a {
    color: var(--c-accent);
}
/* Widget Pages (wp_list_pages) : même traitement */
.entry-sidebar .widget_pages ul,
.entry-sidebar .widget_pages .children {
    list-style: none;
    margin: 0;
    padding: 0;
    background: #f9f9f9;
}
.entry-sidebar .widget_pages li { margin: 0; }
.entry-sidebar .widget_pages a {
    display: block;
    padding: 10px 0;
    color: var(--c-text);
    text-decoration: none;
    font-family: var(--font-display);
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0.01em;
    line-height: 1.3;
    transition: color 0.18s ease;
}
.entry-sidebar .widget_pages a:hover,
.entry-sidebar .widget_pages .current_page_item > a {
    color: var(--c-accent);
}
.entry-sidebar__empty {
    font-size: 13px;
    color: var(--c-text-muted);
    font-style: italic;
}
.entry-sidebar__custom {
    font-size: 14px;
    line-height: 1.5;
    color: var(--c-text);
}
.entry-sidebar__custom img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
}
.entry-sidebar__custom p:first-child { margin-top: 0; }
.entry-sidebar__custom p:last-child { margin-bottom: 0; }

/* ---------- Menu sidebar (style 716lavie / Ubermenu) ---------- */
.entry-sidebar__nav {
    background: #f9f9f9;
    padding: 12px 16px;
}
.entry-sidebar__nav-parent {
    display: block;
    padding: 4px 0 10px;
    font-family: var(--font-display);
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-weight: 700;
    color: var(--c-accent);
    text-decoration: none;
    border-bottom: 1px solid var(--c-border);
    background: transparent;
}
.entry-sidebar__nav-parent:hover { color: var(--c-text); }

.entry-sidebar__nav-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.entry-sidebar__nav-item,
.entry-sidebar__nav--manual .entry-sidebar__nav-list .menu-item {
    margin: 0;
    list-style: none;
}
.entry-sidebar__nav-item > a,
.entry-sidebar__nav--manual .entry-sidebar__nav-list a {
    display: block;
    padding: 10px 0;
    color: var(--c-text);
    text-decoration: none;
    font-family: var(--font-display);
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0.01em;
    line-height: 1.3;
    background: transparent;
    transition: color 0.18s ease;
}
.entry-sidebar__nav-item > a:hover,
.entry-sidebar__nav--manual .entry-sidebar__nav-list a:hover,
.entry-sidebar__nav-item.is-current > a,
.entry-sidebar__nav--manual .entry-sidebar__nav-list .current-menu-item > a,
.entry-sidebar__nav--manual .entry-sidebar__nav-list .current_page_item > a {
    background: transparent;
    color: var(--c-accent);
}
/* Indicateur pour la page courante : aucun, le fond plein suffit (style Ubermenu) */
.entry-sidebar__nav-item.is-current > a::before,
.entry-sidebar__nav--manual .entry-sidebar__nav-list .current-menu-item > a::before,
.entry-sidebar__nav--manual .entry-sidebar__nav-list .current_page_item > a::before {
    content: "";
}
/* Séparateurs : items de menu marqués `is-divider` ou avec titre "---" */
.entry-sidebar .is-divider,
.entry-sidebar .menu-item-divider,
.entry-sidebar .menu .is-divider,
.entry-sidebar .menu .menu-item-divider,
.entry-sidebar .widget_nav_menu .is-divider,
.entry-sidebar .widget_nav_menu .menu-item-divider {
    list-style: none !important;
    margin: 0 !important;
    padding: 20px 0 !important;
    border: 0 !important;
    line-height: 0 !important;
    pointer-events: none;
    background: transparent;
}
.entry-sidebar .is-divider::before,
.entry-sidebar .menu-item-divider::before,
.entry-sidebar .menu .is-divider::before,
.entry-sidebar .menu .menu-item-divider::before,
.entry-sidebar .widget_nav_menu .is-divider::before,
.entry-sidebar .widget_nav_menu .menu-item-divider::before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background: var(--c-border);
}
/* Masque tout contenu (lien vide) à l'intérieur du divider */
.entry-sidebar .is-divider > a,
.entry-sidebar .menu-item-divider > a,
.entry-sidebar .menu .is-divider > a,
.entry-sidebar .widget_nav_menu .is-divider > a {
    display: none !important;
}
.entry-sidebar .is-divider > a,
.entry-sidebar .menu-item-divider > a {
    display: none;
}
.entry-sidebar__nav-parent {
    display: block;
    padding: 12px 0 10px;
    font-family: var(--font-display);
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    font-weight: 700;
    color: var(--c-accent);
    text-decoration: none;
    border-bottom: 1px solid var(--c-border);
}
.entry-sidebar__nav-parent:hover { text-decoration: underline; }
.entry-sidebar__nav-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.entry-sidebar__nav-item {
    border-bottom: 1px solid var(--c-border);
    margin: 0;
}
.entry-sidebar__nav-item a {
    display: block;
    padding: 10px 0;
    color: var(--c-text);
    text-decoration: none;
    font-size: 14px;
    line-height: 1.3;
    transition: color 0.2s ease, padding-left 0.2s ease;
}
.entry-sidebar__nav-item a:hover {
    color: var(--c-accent);
    padding-left: 6px;
}
.entry-sidebar__nav-item.is-current > a {
    color: var(--c-accent);
    font-weight: 700;
}
.entry-sidebar__nav-item.is-current > a::before {
    content: "▸ ";
    color: var(--c-accent);
}

/* ============================================================
   716 — Pages annuaire (liste des lieux par arrondissement)
   Sortie de seventonesix_enhance_directory_lists()
   ============================================================ */
.entry-directory-section {
    margin: var(--s-xl) 0;
}
.entry-directory-section__title {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    font-size: clamp(0.95rem, 1.6vw, 1.15rem);
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--c-accent);
    margin: 0 0 var(--s-md);
    padding: 8px 18px;
    background: rgba(239, 126, 21, 0.08);
    border-radius: var(--radius);
    border: 1px solid rgba(239, 126, 21, 0.22);
}
.entry-directory-list {
    list-style: none;
    margin: 0 0 var(--s-xl);
    padding: 0;
}
.entry-directory-list__item {
    margin: 0;
    padding: 0;
}
.entry-directory-list__link {
    display: inline-block;
    padding: 4px 0;
    color: var(--c-text);
    text-decoration: none;
    font-size: 0.95rem;
    line-height: 1.4;
    border-bottom: 1px solid transparent;
    transition: color 0.2s ease, border-color 0.2s ease;
}
.entry-directory-list__link:hover {
    color: var(--c-accent);
    border-bottom-color: var(--c-accent);
}

/* ============================================================
   716 — Section "Articles récemment actualisés" (home)
   ============================================================ */
.recent-updates {
    width: min(1320px, calc(100vw - 32px));
    max-width: none;
    margin: var(--s-2xl) auto;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
}
.recent-updates__title {
    display: flex;
    align-items: center;
    gap: 16px;
    font-size: clamp(1.2rem, 2vw, 1.6rem);
    font-weight: 700;
    color: var(--c-text);
    letter-spacing: -0.005em;
    margin: 0 0 var(--s-xl);
}
.recent-updates__title::before,
.recent-updates__title::after {
    content: "";
    flex: 1 1 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(239,126,21,0.45), transparent);
}
.recent-updates__title span {
    flex: 0 0 auto;
    padding: 0 6px;
}
.recent-updates__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    grid-auto-rows: 1fr;
    gap: 14px;
}
.recent-updates__item {
    display: flex;
    height: 100%;
}
.recent-updates__card {
    display: flex;
    flex: 1;
    gap: 14px;
    align-items: stretch;
    background: #fff;
    border: 1px solid var(--c-border);
    border-radius: var(--radius);
    padding: 10px;
    text-decoration: none;
    color: inherit;
    box-shadow: 0 4px 12px -10px rgba(30, 32, 29, 0.2);
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}
.recent-updates__card:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 28px -16px rgba(30, 32, 29, 0.3);
    border-color: rgba(239, 126, 21, 0.4);
}
.recent-updates__media {
    flex: 0 0 90px;
    width: 90px;
    background-size: cover;
    background-position: center;
    background-color: #ece6d8;
    border-radius: var(--radius);
}
.recent-updates__media--empty {
    background: linear-gradient(135deg, #ef7e15, #f4a85b);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
.recent-updates__media-logo {
    max-width: 64%;
    max-height: 64%;
    width: auto;
    height: auto;
    object-fit: contain;
    filter: drop-shadow(0 1px 2px rgba(30, 32, 29, 0.25));
}
.recent-updates__body {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 6px;
    min-width: 0;
    padding: 4px 4px 4px 0;
}
.recent-updates__badge {
    font-family: var(--font-display);
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--c-accent);
    font-weight: 700;
}
.recent-updates__heading {
    font-size: 14px;
    line-height: 1.3;
    font-weight: 600;
    color: var(--c-text);
    display: -webkit-box;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
@media (max-width: 600px) {
    .recent-updates__list { grid-template-columns: 1fr; }
}

/* ---------- Tipeee widget : fond transparent + centré ---------- */
html .tipeee-plugins-widget,
.tipeee {
    font-size: 10px !important;
    display: flex !important;
    justify-content: center !important;
    line-height: normal !important;
    width: 100% !important;
    text-align: center !important;
}
.tipeee-plugins-widget .tipeee-plugin-background-white {
    background-color: transparent !important;
}

/* ---------- Variante shortcode [716_socials] : icônes noires sur fond clair ---------- */
.footer-socials.is-inline {
    justify-content: center;
    padding: 0;
    border-left: 0;
    margin: var(--s-md) auto;
}
.footer-socials.is-inline .footer-social {
    color: #000;
    border-color: #000;
    background: transparent;
}
.footer-socials.is-inline .footer-social:hover {
    background: #000;
    color: #fff;
    border-color: #000;
}
.footer-social--spotify:hover    { background: #1db954; }
.footer-social--pinterest:hover  { background: #bd081c; }
.footer-social--linkedin:hover   { background: #0a66c2; }
.footer-social--rss:hover        { background: #ee802f; }
.footer-social--email:hover      { background: #ef7e15; }

/* ---------- Newsletter CTA ---------- */
.site-footer__newsletter {
    display: inline-flex;
    align-items: center;
    padding: 12px 24px;
    background: transparent;
    color: #f4efe5;
    text-decoration: none;
    border: 1.5px solid #f4efe5;
    border-radius: var(--radius);
    font-size: 14px;
    font-weight: 600;
    line-height: 1;
    margin-left: auto;
    transition: background 0.2s ease, color 0.2s ease;
}
.site-footer__newsletter:hover {
    background: #fff;
    color: #000;
}

/* Logo partenaire (Paris) — carré blanc derrière pour le détacher du footer sombre */
.site-footer__partner {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    background: #fff;
    padding: 10px;
    border-radius: 8px;
    transition: opacity 0.2s ease, box-shadow 0.2s ease;
}
.site-footer__partner img {
    display: block;
    max-height: 56px;
    width: auto;
}
.site-footer__partner:hover {
    opacity: 0.92;
    box-shadow: 0 6px 16px -8px rgba(0, 0, 0, 0.45);
}

/* ---------- Bottom row (intro + crédit, optionnel) ---------- */
.site-footer__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    flex-wrap: wrap;
    font-size: 11px;
    color: rgba(244, 239, 229, 0.45);
    letter-spacing: 0.04em;
    padding-top: 8px;
    border-top: 1px solid rgba(244, 239, 229, 0.1);
}
.site-footer__intro {
    font-size: 11px;
    line-height: 1.5;
    color: rgba(244, 239, 229, 0.6);
    margin: 0;
}
.site-footer__intro p { margin: 0; }
.site-footer__credit { color: rgba(244, 239, 229, 0.45); }

/* ---------- Responsive ---------- */
@media (max-width: 900px) {
    .site-footer { padding: 24px 18px; }
    .site-footer__main {
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 18px;
    }
    .site-footer__brand { align-items: center; }
    .site-footer__menu { justify-content: center; }
    .footer-socials {
        padding-left: 0;
        border-left: 0;
        justify-content: center;
    }
    .site-footer__newsletter { margin-left: 0; }
    .site-footer__bottom {
        flex-direction: column;
        text-align: center;
    }
}

/* ============================================================
   716 — Single article : refonte visuelle (hero, sections, cards)
   ============================================================ */

/* ----- Hero : titre dramatique + image full-bleed ----- */
.entry.has-toc > .entry-header {
    text-align: left;
    margin-bottom: var(--s-md);
    padding-top: var(--s-lg);
}
.entry-header__newsletter {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 10px 18px 10px 10px;
    background: linear-gradient(135deg, #ef7e15, #f4a85b);
    color: #fff;
    border-radius: 999px;
    text-decoration: none;
    box-shadow: 0 10px 22px -12px rgba(239, 126, 21, 0.7);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    max-width: 320px;
    margin: var(--s-md) 0 var(--s-lg);
}
.entry-header__newsletter:hover,
.entry-header__newsletter:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 16px 28px -12px rgba(239, 126, 21, 0.85);
    color: #fff;
}
.entry-header__newsletter-icon {
    display: inline-flex;
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 50%;
    color: #fff;
    animation: nl-wiggle 3.2s ease-in-out infinite;
    transform-origin: 50% 30%;
}
.entry-header__newsletter-icon svg {
    width: 20px;
    height: 20px;
}
.entry-header__newsletter-text {
    display: flex;
    color: #fff;
    flex-direction: column;
    line-height: 1.15;
}
.entry-header__newsletter-eyebrow {
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    opacity: 0.9;
}
.entry-header__newsletter-label {
    font-weight: 700;
    font-size: 0.95rem;
}
@keyframes nl-wiggle {
    0%, 70%, 100% { transform: rotate(0deg); }
    74% { transform: rotate(-14deg); }
    78% { transform: rotate(12deg); }
    82% { transform: rotate(-9deg); }
    86% { transform: rotate(7deg); }
    90% { transform: rotate(-4deg); }
    94% { transform: rotate(2deg); }
}
@media (prefers-reduced-motion: reduce) {
    .entry-header__newsletter-icon { animation: none; }
}
@media (max-width: 720px) {
    .entry-header__newsletter {
        display: flex;
        max-width: none;
        justify-content: center;
        margin: var(--s-sm) 0 var(--s-md);
    }
}
.entry.has-toc .entry-title {
    font-size: clamp(2.4rem, 5.2vw, 4.2rem);
    line-height: 1.04;
    letter-spacing: -0.015em;
    margin-bottom: 17px;
}
.entry.has-toc .entry-meta {
    font-size: 0.78rem;
    letter-spacing: 0.14em;
    color: var(--c-text-muted);
}
.entry.has-toc .entry-meta::before {
    content: "";
    display: inline-block;
    width: 28px;
    height: 2px;
    background: var(--c-accent);
    vertical-align: middle;
    margin-right: 12px;
}

.entry.has-toc > .entry-thumbnail {
    width: 100vw;
    max-width: none;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    margin-top: var(--s-lg);
    margin-bottom: var(--s-2xl);
    border-radius: 0;
    height: clamp(340px, 56vh, 680px);
    overflow: hidden;
    box-shadow: 0 18px 50px -28px rgba(30, 32, 29, 0.45);
}
.entry.has-toc > .entry-thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

@media (min-width: 1100px) {
    .entry.has-toc > .entry-thumbnail { grid-column: 1 / -1; }
    .entry.has-toc > .entry-image-top { grid-column: 1 / -1; }
}

/* Recette : seul le bloc "Ingrédients" garde son style carte. Le bloc "Recette"
   (recipe-block--steps) retombe en texte standard. */
.recipe-block--list {
    background: linear-gradient(135deg, rgba(60, 160, 90, 0.06), rgba(200, 160, 60, 0.05));
    border: 1px solid rgba(60, 160, 90, 0.2);
    border-radius: 18px;
    padding: clamp(20px, 3vw, 32px) clamp(20px, 3vw, 36px);
    margin: var(--s-xl) 0;
    box-shadow: 0 12px 32px -22px rgba(30, 32, 29, 0.2);
}
.recipe-block--list .recipe-block__title {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: clamp(1.2rem, 2vw, 1.5rem);
    font-weight: 700;
    margin: 0 0 var(--s-lg);
    letter-spacing: -0.005em;
    color: var(--c-text);
}
.recipe-block--list .recipe-block__title::before { content: "🥦"; font-size: 1.4em; }

/* Liste ingrédients : grille 2 colonnes, petits items avec puce */
.recipe-ingredients {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 8px 18px;
}
.recipe-ingredients li {
    position: relative;
    padding: 8px 10px 8px 32px;
    background: rgba(255, 255, 255, 0.65);
    border-radius: 10px;
    line-height: 1.45;
    color: var(--c-text);
    font-size: 0.97rem;
    border: 1px solid rgba(60, 160, 90, 0.15);
}
.recipe-ingredients li::before {
    content: "";
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: rgb(60, 160, 90);
    box-shadow: 0 0 0 3px rgba(60, 160, 90, 0.18);
}

@media (max-width: 600px) {
    .recipe-ingredients { grid-template-columns: 1fr 1fr; gap: 6px 10px; }
    .recipe-ingredients li { font-size: 0.9rem; padding: 6px 10px 6px 28px; }
    .recipe-ingredients li::before { left: 10px; width: 8px; height: 8px; }
}

/* Bon plan : la "vraie" bannière vit dans .entry-image-top → on cache l'avatar
   carré dupliqué dans .entry-thumbnail, et on rend .entry-image-top full-bleed. */
.entry.has-toc.category-le-bon-plan-restos > .entry-thumbnail {
    display: none;
}
.entry.has-toc.category-le-bon-plan-restos > .entry-image-top {
    width: 100vw;
    max-width: none;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    margin-top: var(--s-lg);
    margin-bottom: var(--s-2xl);
    border-radius: 0;
    overflow: hidden;
    box-shadow: 0 18px 50px -28px rgba(30, 32, 29, 0.45);
}
.entry.has-toc.category-le-bon-plan-restos > .entry-image-top img {
    width: 100%;
    height: clamp(220px, 42vh, 520px);
    object-fit: cover;
    display: block;
    border-radius: 0;
    box-shadow: none;
}
@media (max-width: 768px) {
    .entry.has-toc.category-le-bon-plan-restos > .entry-image-top img {
        height: clamp(180px, 38vh, 320px);
    }
}

/* ----- Sections : cartes alternées + icônes par catégorie ----- */
.entry.has-toc .entry-section {
    position: relative;
    --cat-color: 239, 126, 21;
}
/* Sections aplaties + trait de séparation entre elles : look plus léger et
   compact que les anciennes cartes grises. La section « Le bilan » garde sa
   carte verte (exclue via :not). */
.entry.has-toc .entry-section:not(.entry-section--le_bilan) {
    margin: 0;
    padding: var(--s-lg) 0;
    border-top: 1px solid var(--c-border);
    border-radius: 0;
    background: transparent;
    border-left: initial;
}
.entry.has-toc .entry-section:not(.entry-section--le_bilan):first-of-type {
    border-top: 0;
    padding-top: 0;
}

/* Couleur RGB par catégorie : pilote fond de section, liseré, pastille icône, et carte lieu */
.entry-section--le_resume,
.entry-section--resume               { --cat-color: 239, 126, 21; }   /* orange (résumé / accent défaut) */
.entry-section--la_petite_histoire,
.entry-section--un_peu_dhistoire     { --cat-color: 180, 140, 90; }   /* sépia / parchemin */
.entry-section--infos_pratiques      { --cat-color: 70, 140, 200; }   /* bleu info */
.entry-section--lieux                { --cat-color: 220, 80, 80; }    /* rouge POI */
.entry-section--restaurants,
.entry-section--le_restaurant        { --cat-color: 239, 126, 21; }   /* orange resto */
.entry-section--cafes                { --cat-color: 140, 90, 60; }    /* marron café */
.entry-section--gastronomie,
.entry-section--le_repas             { --cat-color: 200, 160, 60; }   /* doré */
.entry-section--patisseries          { --cat-color: 215, 130, 170; }  /* rose pâtisserie */
.entry-section--activites            { --cat-color: 90, 170, 130; }   /* vert prairie / outdoor */
.entry-section--bars                 { --cat-color: 140, 50, 60; }    /* bordeaux */
.entry-section--clubs                { --cat-color: 120, 60, 200; }   /* violet */
.entry-section--musique              { --cat-color: 80, 100, 200; }   /* indigo */
.entry-section--magasins             { --cat-color: 200, 100, 140; }  /* rose */
.entry-section--alimentation         { --cat-color: 200, 150, 80; }   /* ocre */
.entry-section--photos               { --cat-color: 80, 90, 100; }    /* gris ardoise */
.entry-section--hotels               { --cat-color: 60, 130, 150; }   /* bleu canard */
.entry-section--guide                { --cat-color: 60, 160, 120; }   /* vert pin */
.entry-section--invites              { --cat-color: 160, 120, 200; }  /* lavande */
.entry-section--evenements           { --cat-color: 80, 160, 200; }   /* azur */
.entry-section--lequipe              { --cat-color: 120, 90, 60; }    /* terre */
.entry-section--le_bilan             { --cat-color: 80, 160, 90; }    /* vert validation */
.entry-section--map                  { --cat-color: 70, 140, 200; }   /* bleu carte */
.entry-section--revue-de-presse      { --cat-color: 80, 90, 100; }    /* gris presse */
.entry-section--title-three          { --cat-color: 239, 126, 21; }   /* orange */
.entry-section--texte_one            { --cat-color: 80, 140, 180; }   /* bleu présentation */
.entry-section--texte_two            { --cat-color: 60, 160, 120; }   /* vert "suite" / catalogue */

.entry.has-toc .entry-section-title {
    display: flex;
    align-items: center;
    gap: 14px;
    font-size: clamp(1.4rem, 2.6vw, 1.9rem);
    margin-bottom: var(--s-lg);
    text-transform: none;
    letter-spacing: -0.005em;
    --cat-color: 239, 126, 21; /* défaut orange, surclassé par chaque .entry-section-title--<slug> ci-dessous */
}
.entry.has-toc .entry-section-title {
    color: rgb(var(--cat-color));
}
.entry.has-toc .entry-section-title::before {
    content: "";
    flex: 0 0 auto;
    width: 30px;
    height: 30px;
    background-color: rgb(var(--cat-color));
    /* Icône thématique par catégorie : le SVG sert de masque, la couleur vient
       de --cat-color. Chaque section surcharge --cat-icon ci-dessous ; à défaut
       une icône « marque-page » générique est utilisée. */
    -webkit-mask: var(--cat-icon, url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M17 3H7a2 2 0 0 0-2 2v16l7-3 7 3V5a2 2 0 0 0-2-2z'/></svg>")) center / contain no-repeat;
    mask: var(--cat-icon, url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M17 3H7a2 2 0 0 0-2 2v16l7-3 7 3V5a2 2 0 0 0-2-2z'/></svg>")) center / contain no-repeat;
}

/* Icône par catégorie (--cat-icon). On la pose à la fois sur le wrapper
   .entry-section--<slug> (sections ACF) et sur le titre .entry-section-title--<slug>
   (titres Gutenberg), pour couvrir les deux modes de rendu. */
.entry-section--le_resume,
.entry-section--resume,
.entry-section--texte_one,
.entry-section--texte_two,
.entry-section--title-three,
.entry-section-title--le-resume {
    --cat-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8l-6-6zm2 16H8v-2h8v2zm0-4H8v-2h8v2zm-3-5V3.5L18.5 9H13z'/></svg>");
}
.entry-section--la_petite_histoire,
.entry-section--un_peu_dhistoire,
.entry-section-title--un-peu-dhistoire {
    --cat-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M21 5c-1.11-.35-2.33-.5-3.5-.5-1.95 0-4.05.4-5.5 1.5-1.45-1.1-3.55-1.5-5.5-1.5S2.45 4.9 1 6v14.65c0 .25.25.5.5.5.1 0 .15-.05.25-.05C3.1 20.45 5.05 20 6.5 20c1.95 0 4.05.4 5.5 1.5 1.35-.85 3.8-1.5 5.5-1.5 1.65 0 3.35.3 4.75 1.05.1.05.15.05.25.05.25 0 .5-.25.5-.5V6c-.6-.45-1.25-.75-2-1z'/></svg>");
}
.entry-section--infos_pratiques,
.entry-section-title--infos-pratiques {
    --cat-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z'/></svg>");
}
.entry-section--hotels,
.entry-section-title--hotels {
    --cat-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M7 13c1.66 0 3-1.34 3-3S8.66 7 7 7s-3 1.34-3 3 1.34 3 3 3zm12-6h-8v7H3V5H1v15h2v-3h18v3h2v-9c0-2.21-1.79-4-4-4z'/></svg>");
}
.entry-section--guide,
.entry-section--activites,
.entry-section-title--guide,
.entry-section-title--activites {
    --cat-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm2.19 12.19L6 18l3.81-8.19L18 6l-3.81 8.19z'/></svg>");
}
.entry-section--lieux,
.entry-section--map,
.entry-section-title--lieux {
    --cat-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5a2.5 2.5 0 0 1 0-5 2.5 2.5 0 0 1 0 5z'/></svg>");
}
.entry-section--evenements,
.entry-section-title--evenements {
    --cat-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M19 3h-1V1h-2v2H8V1H6v2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2zm0 16H5V8h14v11z'/></svg>");
}
.entry-section--lequipe,
.entry-section--invites,
.entry-section-title--invites {
    --cat-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M16 11c1.66 0 2.99-1.34 2.99-3S17.66 5 16 5c-1.66 0-3 1.34-3 3s1.34 3 3 3zm-8 0c1.66 0 2.99-1.34 2.99-3S9.66 5 8 5C6.34 5 5 6.34 5 8s1.34 3 3 3zm0 2c-2.33 0-7 1.17-7 3.5V19h14v-2.5c0-2.33-4.67-3.5-7-3.5zm8 0c-.29 0-.62.02-.97.05 1.16.84 1.97 1.97 1.97 3.45V19h6v-2.5c0-2.33-4.67-3.5-7-3.5z'/></svg>");
}
.entry-section--le_bilan {
    --cat-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z'/></svg>");
}
.entry-section--restaurants,
.entry-section--le_restaurant,
.entry-section--le_repas,
.entry-section-title--restaurants {
    --cat-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M11 9H9V2H7v7H5V2H3v7c0 2.12 1.66 3.84 3.75 3.97V22h2.5v-9.03C13.34 12.84 15 11.12 15 9V2h-2v7zm5-3v8h2.5v8H21V2c-2.76 0-5 2.24-5 4z'/></svg>");
}
.entry-section--gastronomie,
.entry-section-title--gastronomie {
    --cat-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M2 17h20v2H2zm11.84-9.21A2 2 0 0 0 14 7c0-1.1-.9-2-2-2s-2 .9-2 2c0 .29.07.56.16.79A7.003 7.003 0 0 0 5 14.5h14c0-3.16-2.1-5.84-5.16-6.71z'/></svg>");
}
.entry-section--cafes,
.entry-section-title--cafes {
    --cat-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M20 3H4v10c0 2.21 1.79 4 4 4h6c2.21 0 4-1.79 4-4v-3h2c1.11 0 2-.89 2-2V5c0-1.11-.89-2-2-2zm0 5h-2V5h2v3zM4 19h16v2H4z'/></svg>");
}
.entry-section--bars,
.entry-section-title--bars {
    --cat-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M21 5V3H3v2l8 9v5H6v2h12v-2h-5v-5l8-9zM7.43 7L5.66 5h12.69l-1.78 2H7.43z'/></svg>");
}
.entry-section--musique,
.entry-section--clubs,
.entry-section-title--musique {
    --cat-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M12 3v10.55A4 4 0 1 0 14 17V7h4V3h-6z'/></svg>");
}
.entry-section--patisseries,
.entry-section-title--patisseries {
    --cat-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M12 6a2 2 0 0 0 2-2c0-.38-.1-.73-.29-1.03L12 0l-1.71 2.97c-.19.3-.29.65-.29 1.03a2 2 0 0 0 2 2zm6 8c-1.31 0-2.24-.55-3.04-1.35-.81.81-1.72 1.35-2.96 1.35s-2.15-.54-2.96-1.35C8.24 13.45 7.31 14 6 14s-2.24-.55-3.04-1.35C2.41 13.06 2 13.99 2 15v6h20v-6c0-1.01-.41-1.94-1.04-2.65C20.24 13.45 19.31 14 18 14zm0-5h-5V7h-2v2H6c-1.66 0-3 1.34-3 3v.86c.59.36 1.27.64 2 .64 1.31 0 2.24-.55 3.04-1.35.81.81 1.72 1.35 2.96 1.35z'/></svg>");
}
.entry-section--magasins,
.entry-section-title--magasins {
    --cat-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M18 6h-2c0-2.21-1.79-4-4-4S8 3.79 8 6H6c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm-6-2c1.1 0 2 .9 2 2h-4c0-1.1.9-2 2-2z'/></svg>");
}
.entry-section--alimentation,
.entry-section-title--alimentation {
    --cat-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M7 18c-1.1 0-1.99.9-1.99 2S5.9 22 7 22s2-.9 2-2-.9-2-2-2zM1 2v2h2l3.6 7.59-1.35 2.45c-.16.28-.25.61-.25.96 0 1.1.9 2 2 2h12v-2H7.42c-.14 0-.25-.11-.25-.25l.03-.12L8.1 13h7.45c.75 0 1.41-.41 1.75-1.03l3.58-6.49A1 1 0 0 0 20 4H5.21l-.94-2H1zm16 16c-1.1 0-1.99.9-1.99 2s.89 2 1.99 2 2-.9 2-2-.9-2-2-2z'/></svg>");
}
.entry-section--photos,
.entry-section-title--photos {
    --cat-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M12 15.2a3.2 3.2 0 1 0 0-6.4 3.2 3.2 0 0 0 0 6.4zM9 2 7.17 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2h-3.17L15 2H9z'/></svg>");
}
.entry-section--revue-de-presse {
    --cat-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M22 3l-1.67 1.67L18.67 3 17 4.67 15.33 3l-1.66 1.67L12 3l-1.67 1.67L8.67 3 7 4.67 5.33 3 3.67 4.67 2 3v16a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V3zM11 19H4v-6h7v6zm9 0h-7v-2h7v2zm0-4h-7v-2h7v2zm0-4H4V8h16v3z'/></svg>");
}

/* Couleur par section quand le h2 vient de la composition Gutenberg
   (classes posées directement sur le <h2>, pas via un .entry-section wrapper).
   Les slugs viennent de str_replace('_', '-', $slug) dans voyage-shortcodes.php. */
.entry-section-title--le-resume         { --cat-color: 239, 126, 21; }   /* orange résumé */
.entry-section-title--un-peu-dhistoire  { --cat-color: 180, 140, 90; }   /* sépia */
.entry-section-title--infos-pratiques   { --cat-color: 70, 140, 200; }   /* bleu info */
.entry-section-title--hotels            { --cat-color: 60, 130, 150; }   /* bleu canard */
.entry-section-title--guide             { --cat-color: 60, 160, 120; }   /* vert pin */
.entry-section-title--invites           { --cat-color: 160, 120, 200; }  /* lavande */
.entry-section-title--evenements        { --cat-color: 80, 160, 200; }   /* azur */
.entry-section-title--lieux             { --cat-color: 220, 80, 80; }    /* rouge POI */
.entry-section-title--restaurants       { --cat-color: 239, 126, 21; }   /* orange resto */
.entry-section-title--cafes             { --cat-color: 140, 90, 60; }    /* marron café */
.entry-section-title--gastronomie       { --cat-color: 200, 160, 60; }   /* doré */
.entry-section-title--patisseries       { --cat-color: 215, 130, 170; }  /* rose pâtisserie */
.entry-section-title--activites         { --cat-color: 90, 170, 130; }   /* vert prairie */
.entry-section-title--bars              { --cat-color: 140, 50, 60; }    /* bordeaux */
.entry-section-title--clubs             { --cat-color: 120, 60, 200; }   /* violet */
.entry-section-title--magasins          { --cat-color: 200, 100, 140; }  /* rose */
.entry-section-title--musique           { --cat-color: 80, 100, 200; }   /* indigo */
.entry-section-title--alimentation      { --cat-color: 200, 150, 80; }   /* ocre */
.entry-section-title--photos            { --cat-color: 80, 90, 100; }    /* gris ardoise */

/* Google Maps interactif */
.acf-map {
    width: 100%;
    height: 420px;
    border-radius: 14px;
    overflow: hidden;
    border: 1px solid var(--c-border);
    box-shadow: 0 8px 24px -16px rgba(30, 32, 29, 0.25);
    margin: 0 0 var(--s-md);
    background: #f4efe5;
}
.acf-map img { max-width: none; }
.acf-map__iw {
    font-size: 13px;
    line-height: 1.45;
    color: #1e201d;
    padding: 2px 4px;
    max-width: 240px;
}
.acf-map__iw strong {
    color: #1e201d;
    font-size: 14px;
}
.entry-map-coords {
    font-size: 0.9rem;
    color: var(--c-text-muted);
    margin: 0;
}
@media (max-width: 768px) {
    .acf-map { height: 320px; border-radius: 12px; }
}

/* ============================================================
   716 — Pages liste de pays (Voyage > Espagne, Italie, France…)
   Génère une grille de cartes via filtre PHP (entry-list-grid).
   ============================================================ */

.entry-list-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: clamp(18px, 2.4vw, 28px);
    margin: var(--s-xl) 0;
}

.entry-list-card {
    position: relative;
    display: flex;
    flex-direction: column;
    background: #fff;
    border: 1px solid var(--c-border);
    border-radius: 4px;
    overflow: hidden;
    text-decoration: none;
    color: inherit;
    box-shadow: 0 8px 24px -18px rgba(30, 32, 29, 0.28);
    transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
    isolation: isolate;
}
.entry-list-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 22px 44px -22px rgba(30, 32, 29, 0.4);
    border-color: rgba(239, 126, 21, 0.35);
}

.entry-list-card__media {
    display: block;
    aspect-ratio: 4 / 3;
    background-color: #ece6d8;
    background-size: cover;
    background-position: center;
    transition: transform 0.6s ease;
}
.entry-list-card:hover .entry-list-card__media {
    transform: scale(1.06);
}

.entry-list-card--no-thumb .entry-list-card__media {
    aspect-ratio: 4 / 1.5;
    background: linear-gradient(135deg, #ef7e15, #f4a85b);
    position: relative;
}
.entry-list-card--no-thumb .entry-list-card__media::after {
    content: "📍";
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    opacity: 0.55;
}

.entry-list-card__body {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 20px 22px 22px;
    flex: 1;
}

.entry-list-card__title {
    font-size: 1.15rem;
    font-weight: 700;
    line-height: 1.25;
    color: var(--c-text);
    letter-spacing: -0.005em;
    margin: 0;
}

.entry-list-card__excerpt {
    font-size: 0.92rem;
    line-height: 1.55;
    color: var(--c-text-soft);
    margin: 0;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.entry-list-card__meta {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--c-text-muted);
    margin-bottom: 2px;
}

.entry-list-card__cta {
    margin-top: auto;
    padding-top: 8px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--c-accent);
}
.entry-list-card__cta span {
    transition: transform 0.25s ease;
}
.entry-list-card:hover .entry-list-card__cta span {
    transform: translateX(4px);
}

/* Section "annuaire" : arrondissement / catégorie + grille */
.entry-list-section {
    margin: var(--s-2xl) 0;
    padding: 0;
}
.entry-list-section + .entry-list-section { margin-top: var(--s-xl); }

.entry-list-section__title {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    font-size: clamp(0.95rem, 1.6vw, 1.15rem);
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--c-accent);
    margin: 0 0 var(--s-md);
    padding: 8px 18px;
    background: rgba(239, 126, 21, 0.08);
    border-radius: var(--radius);
    border: 1px solid rgba(239, 126, 21, 0.22);
}
.entry-list-section__title::before {
    content: "📍";
    font-size: 1rem;
}
.entry-list-section .entry-list-grid {
    margin: 0;
}

/* Hero des pages liste (page-template-page-liste) */
.page-template-page-liste .entry-header {
    text-align: center;
    margin: var(--s-xl) 0 var(--s-md);
}
.page-template-page-liste .entry-title {
    font-size: clamp(2rem, 4.6vw, 3.4rem);
    letter-spacing: -0.01em;
    margin-bottom: var(--s-md);
}
.page-template-page-liste .entry-title::after {
    content: "";
    display: block;
    width: 56px;
    height: 3px;
    background: var(--c-accent);
    margin: var(--s-sm) auto 0;
    border-radius: 2px;
}
.page-template-page-liste > article > .entry-thumbnail {
    width: 100vw;
    max-width: none;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    margin-top: var(--s-lg);
    margin-bottom: var(--s-2xl);
    border-radius: 0;
    height: clamp(220px, 38vh, 420px);
    overflow: hidden;
    box-shadow: 0 18px 50px -28px rgba(30, 32, 29, 0.45);
}
.page-template-page-liste > article > .entry-thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border-radius: 0;
}

/* H2 d'intro éventuel ("Paris" sous le titre principal) */
.page-template-page-liste .entry-content > h2:first-of-type {
    text-align: center;
    font-size: 0.85rem;
    font-weight: 700;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--c-text-muted);
    margin: 0 0 var(--s-md);
}
@media (max-width: 768px) {
    .page-template-page-liste > article > .entry-thumbnail {
        height: clamp(160px, 32vh, 260px);
    }
    .entry-list-section__title {
        font-size: 0.85rem;
        padding: 6px 14px;
    }
}

/* Map en bas des pages liste */
.entry-list-map {
    margin: var(--s-2xl) 0 var(--s-xl);
    border-radius: 4px;
    overflow: hidden;
    box-shadow: 0 18px 40px -28px rgba(30, 32, 29, 0.35);
    background: #f4efe5;
    aspect-ratio: 16 / 9;
}
.entry-list-map iframe {
    width: 100%;
    height: 100%;
    border: 0;
    display: block;
}

@media (max-width: 600px) {
    .entry-list-grid {
        grid-template-columns: 1fr;
    }
    .entry-list-map {
        aspect-ratio: 4 / 3;
        border-radius: 4px;
    }
}

/* ============================================================
   716 — Articles similaires en bas des single posts
   ============================================================ */

.related-posts {
    margin: var(--s-2xl) 0 var(--s-xl);
    padding: var(--s-2xl) 0 var(--s-xl);
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    background: linear-gradient(180deg, transparent 0%, #faf7f1 18%, #faf7f1 100%);
    border-top: 1px solid var(--c-border);
}

.related-posts__inner {
    max-width: 1140px;
    margin: 0 auto;
    padding: 0 clamp(16px, 3vw, 32px);
}

.related-posts__title {
    display: flex;
    align-items: center;
    gap: 16px;
    font-size: clamp(1.4rem, 2.4vw, 1.85rem);
    font-weight: 700;
    letter-spacing: -0.005em;
    color: var(--c-text);
    margin: 0 0 var(--s-xl);
}
.related-posts__title::before,
.related-posts__title::after {
    content: "";
    flex: 1 1 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(239,126,21,0.45), transparent);
}
.related-posts__title span {
    flex: 0 0 auto;
    padding: 0 6px;
}

.related-posts__grid {
    margin: 0;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: clamp(14px, 2vw, 22px);
}

@media (min-width: 1100px) {
    .entry.has-toc + .related-posts { /* met à pleine largeur même si l'article est en grille */ }
}
@media (max-width: 600px) {
    .related-posts__title { font-size: 1.2rem; }
    .related-posts__grid { grid-template-columns: 1fr 1fr; }
}

/* ============================================================
   716 — Shop : refonte (page /shop/)
   Override des classes legacy .shop / .cadre_shop / .desc_left
   ============================================================ */

/* Le post thumbnail "pixel.gif" 1×1 utilisé comme placeholder */
.page-id-34936 .entry-thumbnail,
.page-template-page-nopic .entry-thumbnail { display: none !important; }

/* Centrage du titre SHOP en hero épuré */
.page-id-34936 .entry-header {
    text-align: center;
    margin: var(--s-xl) 0 var(--s-lg);
}
.page-id-34936 .entry-title {
    font-size: clamp(2.4rem, 5vw, 3.6rem);
    letter-spacing: 0.16em;
    text-transform: uppercase;
}
.page-id-34936 .entry-title::after {
    content: "";
    display: block;
    width: 64px;
    height: 3px;
    background: var(--c-accent);
    margin: var(--s-md) auto 0;
}

/* Wrapper shop : pile de produits */
.shop {
    max-width: 980px;
    margin: 0 auto;
    padding: 0 var(--s-md);
}

/* Lignes "________________________" → invisibles, on les remplace par un séparateur */
.shop > p:has(> :only-child),
.shop p {
    margin: 0 0 var(--s-md);
}
.shop > p {
    text-align: left;
}
/* Cible les paragraphes contenant uniquement des underscores : on les masque */
.shop > p {
    /* Méthode visuelle : si le contenu est juste "________________________", on l'efface */
}

/* Kicker : <h3> avant chaque produit (— Le Bon Plan Restos —) */
.entry-content .shop h3 {
    background: none;
    color: var(--c-accent);
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    text-align: center;
    margin: var(--s-2xl) 0 var(--s-sm);
    font-family: inherit;
    padding: 0;
    border: 0;
}
.entry-content .shop h3::before,
.entry-content .shop h3::after {
    content: "";
    display: inline-block;
    width: 24px; height: 1px;
    background: var(--c-accent);
    vertical-align: middle;
    margin: 0 14px;
    opacity: .6;
}

/* Titre produit : <h1> dans .shop */
.entry-content .shop h1 {
    background: none;
    color: var(--c-text);
    font-size: clamp(1.5rem, 3vw, 2rem);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -0.01em;
    text-align: center;
    text-transform: none;
    font-variant: normal;
    margin: 0 0 var(--s-xs);
    padding: 0;
}

/* Sous-titre "série limitée 716" : <h2> dans .shop */
.entry-content .shop h2 {
    background: none;
    color: var(--c-text-muted);
    font-size: 0.85rem;
    font-weight: 500;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    text-align: center;
    font-variant: normal;
    font-family: inherit;
    margin: 0 0 var(--s-lg);
    padding: 0;
}

/* Carte produit (générée par le filtre PHP qui flatten le HTML legacy) */
.shop .product-card {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--s-xl);
    align-items: center;
    background: #fff;
    border: 1px solid var(--c-border);
    border-radius: 18px;
    padding: clamp(20px, 3vw, 36px);
    box-shadow: 0 18px 40px -28px rgba(30, 32, 29, 0.25);
    font-size: 0.95rem;
    letter-spacing: 0;
    line-height: 1.55;
    margin: 0 0 var(--s-2xl);
}
/* Le H3 et le H1 (kicker + titre) doivent traverser les 2 colonnes */
.shop .product-card > h3,
.shop .product-card > h1,
.shop .product-card > h2 { grid-column: 1 / -1; }

/* Le legacy .cadre_shop ne crée plus de boîte (au cas où il subsiste) */
.shop .cadre_shop { display: contents; }
.shop .product-card > p:first-of-type { margin-top: 0; }

/* Description : .desc_left / .desc_right (invariablement texte produit) */
.shop .product-card .desc_left,
.shop .product-card .desc_right {
    width: auto;
    box-shadow: none;
    padding: 0;
    margin: 0;
    display: block;
    grid-column: 1;
}
.shop .product-card .desc_right { grid-column: 1; }

/* Aperçu (image produit) */
.shop .product-card .shop_apercu {
    width: auto;
    grid-column: 2;
    align-self: center;
    text-align: center;
    margin: 0;
}
.shop .shop_apercu img {
    width: 100%;
    height: auto;
    border-radius: 14px;
    display: block;
    box-shadow: 0 12px 28px -18px rgba(30, 32, 29, 0.35);
}

/* Pastille couleur (bloc vide .shop_color1) — invisible, c'est le swatch image qui sert */
.shop .shop_color1 { display: none; }

/* Prix : remplace l'ancien bloc 140×109 fixe */
.shop .shop_pricebox {
    width: auto;
    height: auto;
    overflow: visible;
    padding: 0;
    margin: var(--s-md) 0 var(--s-sm);
}
.shop .shop_price {
    font-family: inherit;
    color: var(--c-text);
    font-size: 0.95rem;
    line-height: 1.5;
    font-weight: 400;
    margin: 0;
    padding: var(--s-sm) var(--s-md);
    background: rgba(239, 126, 21, 0.08);
    border-left: 3px solid var(--c-accent);
    border-radius: 8px;
}
.shop .shop_price a {
    color: var(--c-accent);
    border-bottom: 1px solid rgba(239, 126, 21, 0.3);
    text-decoration: none;
}
.shop .shop_price a:hover { border-bottom-color: var(--c-accent); }

/* Forme PayPal : nettoyer les <br> vides + table options */
.shop form[target="paypal"],
.shop form[target="_top"] {
    margin: var(--s-sm) 0 0;
    width: fit-content;
    max-width: 100%;
}
.shop form br { display: none; }
.shop form p { margin: 0; }
.shop form p:has(> input[type="hidden"]:only-child),
.shop form p:empty { display: none; }
/* Pixels traceurs 1×1 résiduels */
.shop img[width="1"][height="1"] { display: none !important; }
/* Bloc <style> imprimé en clair (au cas où le filtre PHP en laisse passer un) */
.shop style { display: none !important; }
.shop form table {
    width: 100%;
    margin: var(--s-sm) 0;
    border-collapse: collapse;
}
.shop form table td {
    padding: 6px 0;
    border: 0;
    vertical-align: middle;
}
.shop form select {
    padding: 8px 12px;
    border: 1px solid var(--c-border);
    border-radius: 8px;
    background: #fff;
    font: inherit;
    color: var(--c-text);
    min-width: 220px;
    cursor: pointer;
}
.shop form input[type="image"] {
    border-radius: 6px;
    transition: transform .2s ease, box-shadow .2s ease;
}
.shop form input[type="image"]:hover {
    transform: translateY(-1px);
    box-shadow: 0 6px 14px -8px rgba(30, 32, 29, 0.35);
}

/* Description gras inline (`<b>Description</b>`, `<b>Couleurs</b>`, etc.) */
.shop p > b:first-child {
    color: var(--c-text);
    font-weight: 700;
    margin-right: 4px;
}

/* Séparateurs ___________________ → invisibles, on rend l'espacement via le h3 suivant */
.shop > p:not(:has(*)),
.shop > p:empty {
    text-align: center;
    color: transparent;
    font-size: 0;
    line-height: 0;
    margin: 0;
    padding: 0;
}

/* Image guide / cover (3d.jpg etc.) au-dessus du formulaire */
.shop > p > img {
    display: block;
    margin: var(--s-md) auto;
    border-radius: 14px;
    max-width: 100%;
    height: auto;
    box-shadow: 0 14px 32px -22px rgba(30, 32, 29, 0.35);
}

/* Formulaire de commande final */
.shop #shopform,
#shopform {
    margin: var(--s-xl) auto;
    max-width: 720px;
    background: #faf7f1;
    border: 1px solid var(--c-border);
    border-radius: 14px;
    padding: var(--s-lg);
}

/* Notes en gras (FORMULAIRE DE COMMANDE / Sachez que…) */
.shop > p > strong {
    display: block;
    background: rgba(239, 126, 21, 0.06);
    border-left: 3px solid rgba(239, 126, 21, 0.5);
    padding: 12px 16px;
    border-radius: 8px;
    color: var(--c-text);
    font-size: 0.9rem;
    line-height: 1.55;
    margin: var(--s-sm) 0;
}

/* ----- Responsive ----- */
@media (max-width: 768px) {
    .shop .product-card {
        grid-template-columns: 1fr;
        gap: var(--s-lg);
        padding: 22px;
    }
    .shop .product-card .shop_apercu,
    .shop .product-card .desc_left,
    .shop .product-card .desc_right {
        grid-column: 1;
        max-width: 100%;
    }
    .shop .product-card .shop_apercu { order: -1; }
    .entry-content .shop h3::before,
    .entry-content .shop h3::after { width: 14px; margin: 0 10px; }
    .shop form select { min-width: 0; width: 100%; }
}

/* Premier produit (Le Bon Plan Restos) — pas de .desc_left, layout en colonne unique centrée */
.shop .product-card:has(> form):not(:has(.desc_left)):not(:has(.shop_apercu)) {
    grid-template-columns: 1fr;
    text-align: center;
}
.shop .product-card:has(> form):not(:has(.desc_left)):not(:has(.shop_apercu)) > * {
    grid-column: 1 / -1;
    max-width: 720px;
    margin-left: auto;
    margin-right: auto;
}
.shop .product-card:has(> form):not(:has(.desc_left)):not(:has(.shop_apercu)) form {
    margin-left: auto;
    margin-right: auto;
}
.entry-section--revue-de-presse .entry-section-title::before { content: "📰"; }
.entry-section--title-three .entry-section-title::before     { content: "✨"; }


.entry.has-toc .entry-section-content strong {
    color: var(--c-text);
    font-weight: 700;
}

.entry.has-toc .entry-section + .entry-section { margin-top: 0; }
.entry.has-toc .entry-section + .entry-section--le_bilan { margin-top: var(--s-xl); }

/* ----- Responsive ----- */
@media (max-width: 768px) {
    .entry.has-toc > .entry-thumbnail {
        height: clamp(220px, 42vh, 360px);
        margin-bottom: var(--s-lg);
    }
    .entry.has-toc .entry-section:not(.entry-section--le_bilan) {
        padding: var(--s-md) 0;
    }
    .entry.has-toc .entry-section-title::before {
        width: 30px; height: 30px;
        font-size: 1.15rem;
    }
}

/* ============================================================
   Ninja Forms
   ============================================================ */
.nf-form-cont {
    max-width: 640px;
    margin: inherit;
    font-family: inherit;
    color: #1d1d1f;
}
.nf-form-cont .nf-form-title h3 {
    font-size: clamp(1.4rem, 2.4vw, 1.9rem);
    font-weight: 700;
    letter-spacing: -0.01em;
    margin: 0 0 1.25rem;
}
.nf-form-cont .nf-form-fields-required {
    font-size: 0.8rem;
    color: #6b7280;
    margin-bottom: 1rem;
}

/* Field wrapper */
.nf-form-cont .nf-field-container {
    margin-bottom: 1.1rem;
}
.nf-form-cont .nf-field-label label,
.nf-form-cont label.nf-label-span {
    display: block;
    font-size: 17px;
    font-weight: 600;
    color: #1d1d1f;
    margin-bottom: 0;
    letter-spacing: -0.005em;
}
.nf-form-cont .nf-field-description {
    font-size: 0.8rem;
    color: #6b7280;
    margin-top: 4px;
}

/* Inputs / textarea / select */
.nf-form-cont input[type="text"],
.nf-form-cont input[type="email"],
.nf-form-cont input[type="tel"],
.nf-form-cont input[type="number"],
.nf-form-cont input[type="url"],
.nf-form-cont input[type="password"],
.nf-form-cont input[type="date"],
.nf-form-cont textarea,
.nf-form-cont select {
    width: 100%;
    padding: 12px 14px;
    font-size: 0.95rem;
    line-height: 1.4;
    color: #1d1d1f;
    background: #fff;
    border: 1px solid #d6d6db;
    border-radius: 10px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
    transition: border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
    -webkit-appearance: none;
    appearance: none;
}
.nf-form-cont textarea {
    min-height: 130px;
    resize: vertical;
}
.nf-form-cont input::placeholder,
.nf-form-cont textarea::placeholder {
    color: #9ca0a8;
}
.nf-form-cont input[type="text"]:hover,
.nf-form-cont input[type="email"]:hover,
.nf-form-cont input[type="tel"]:hover,
.nf-form-cont textarea:hover,
.nf-form-cont select:hover {
    border-color: #b8b8bf;
}
.nf-form-cont input[type="text"]:focus,
.nf-form-cont input[type="email"]:focus,
.nf-form-cont input[type="tel"]:focus,
.nf-form-cont input[type="number"]:focus,
.nf-form-cont input[type="url"]:focus,
.nf-form-cont input[type="password"]:focus,
.nf-form-cont input[type="date"]:focus,
.nf-form-cont textarea:focus,
.nf-form-cont select:focus {
    outline: none;
    border-color: #1d1d1f;
    box-shadow: 0 0 0 3px rgba(29, 29, 31, 0.12);
    background: #fff;
}

/* Select arrow */
.nf-form-cont select {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path fill='%231d1d1f' d='M6 8L0 0h12z'/></svg>");
    background-repeat: no-repeat;
    background-position: right 14px center;
    padding-right: 38px;
}

/* Checkbox / radio */
.nf-form-cont .checkbox-wrap .nf-field-element label,
.nf-form-cont .listcheckbox-wrap li label,
.nf-form-cont .listradio-wrap li label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-weight: 500;
    cursor: pointer;
}
.nf-form-cont input[type="checkbox"],
.nf-form-cont input[type="radio"] {
    width: 18px;
    height: 18px;
    accent-color: #1d1d1f;
    cursor: pointer;
}

/* Required asterisk */
.nf-form-cont .ninja-forms-req-symbol {
    color: #c0392b;
    margin-left: 2px;
}

/* Error states */
.nf-form-cont .nf-error .ninja-forms-field,
.nf-form-cont .nf-error input,
.nf-form-cont .nf-error textarea,
.nf-form-cont .nf-error select {
    border-color: #c0392b !important;
    box-shadow: 0 0 0 3px rgba(192, 57, 43, 0.12) !important;
}
.nf-form-cont .nf-error-msg,
.nf-form-cont .nf-error .nf-error-msg {
    color: #c0392b;
    font-size: 0.82rem;
    margin-top: 6px;
}

/* Submit button — style 716 (pill noir → orange au hover) */
.nf-form-cont .submit-wrap,
.nf-form-cont .submit-container {
    margin-top: 1rem;
}
.nf-form-cont input[type="button"].ninja-forms-field,
.nf-form-cont .nf-element[type="button"],
.nf-form-cont .field-wrap input[type="submit"],
.nf-form-cont input[type="submit"] {
    display: inline-block;
    width: auto;
    min-width: 180px;
    padding: 14px 36px;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 0.02em;
    color: #fff;
    background: #1e201d;
    border: 1px solid #1e201d;
    border-radius: 999px;
    cursor: pointer;
    transition: background .22s ease, border-color .22s ease, color .22s ease,
                transform .22s ease, box-shadow .22s ease;
    box-shadow: 0 10px 22px -14px rgba(30,32,29,0.55);
    line-height: 1.2;
    -webkit-appearance: none;
    appearance: none;
    text-align: center;
}
.nf-form-cont input[type="button"].ninja-forms-field:hover,
.nf-form-cont .nf-element[type="button"]:hover,
.nf-form-cont input[type="submit"]:hover {
    background: #ef7e15;
    border-color: #ef7e15;
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 14px 28px -12px rgba(239,126,21,0.55);
}
.nf-form-cont input[type="button"].ninja-forms-field:focus-visible,
.nf-form-cont .nf-element[type="button"]:focus-visible,
.nf-form-cont input[type="submit"]:focus-visible {
    outline: 3px solid rgba(239,126,21,0.35);
    outline-offset: 2px;
}
.nf-form-cont input[type="button"].ninja-forms-field:active,
.nf-form-cont .nf-element[type="button"]:active,
.nf-form-cont input[type="submit"]:active {
    transform: translateY(0);
    box-shadow: 0 6px 14px -10px rgba(239,126,21,0.55);
}
.nf-form-cont input[type="button"].ninja-forms-field:disabled,
.nf-form-cont .nf-element[type="button"]:disabled,
.nf-form-cont input[type="submit"]:disabled {
    opacity: 0.55;
    cursor: not-allowed;
    transform: none;
    background: #1e201d;
    border-color: #1e201d;
}

/* Success message */
.nf-form-cont .nf-response-msg {
    padding: 14px 16px;
    background: #ecfdf5;
    color: #065f46;
    border: 1px solid #a7f3d0;
    border-radius: 10px;
    font-size: 0.95rem;
}

/* Honeypot/spam field stays hidden */
.nf-form-cont .nf-field-container.hidden-container { display: none; }

/* Mobile */
@media (max-width: 600px) {
    .nf-form-cont input[type="text"],
    .nf-form-cont input[type="email"],
    .nf-form-cont input[type="tel"],
    .nf-form-cont textarea,
    .nf-form-cont select {
        font-size: 16px; /* éviter le zoom iOS */
        padding: 11px 12px;
    }
    .nf-form-cont input[type="button"].ninja-forms-field,
    .nf-form-cont .nf-element[type="button"],
    .nf-form-cont input[type="submit"] {
        width: 100%;
    }
}

/* ============================================================
   716 — Page de recherche (search.php)
   Inspiration éditoriale Fooding / Je sais où : hero sobre avec
   le mot-clé, compteur, formulaire d'affinage, puis grille de
   cartes uniformes (image + badge catégorie + titre + extrait).
   ============================================================ */

.search .grid.col-940,
.search-results .grid.col-940 {
    background: #faf7f1;
}

.search-hero {
    margin: 0 auto;
    padding: 56px 24px 32px;
    max-width: 1220px;
}
.search-hero__inner {
    max-width: 760px;
}
.search-hero__eyebrow {
    margin: 0 0 8px;
    font-size: 12px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: #ef7e15;
    font-weight: 700;
}
.search-hero__title {
    margin: 0 0 14px;
    font-size: clamp(28px, 4.4vw, 44px);
    line-height: 1.08;
    color: #1e201d;
    font-weight: 800;
    letter-spacing: -0.01em;
}
.search-hero__quote {
    color: #c3b59a;
    font-weight: 500;
}
.search-hero__count {
    margin: 0 0 22px;
    font-size: 15px;
    color: #5a5a52;
}
.search-hero__count strong {
    color: #1e201d;
    font-weight: 700;
}
.search-hero__form {
    display: flex;
    align-items: stretch;
    background: #fff;
    border: 1px solid #e6e0d1;
    border-radius: 999px;
    padding: 4px;
    box-shadow: 0 12px 28px -22px rgba(30,32,29,0.35);
    max-width: 540px;
}
.search-hero__form input[type="search"] {
    flex: 1;
    border: 0;
    outline: 0;
    background: transparent;
    padding: 12px 18px;
    font-size: 15px;
    color: #1e201d;
    min-width: 0;
}
.search-hero__form input[type="search"]::placeholder {
    color: #9c958a;
}
.search-hero__form button {
    border: 0;
    background: #1e201d;
    color: #fff;
    padding: 10px 22px;
    border-radius: 999px;
    font-weight: 600;
    font-size: 14px;
    letter-spacing: 0.01em;
    cursor: pointer;
    transition: background .2s ease;
}
.search-hero__form button:hover { background: #ef7e15; }

/* ---- Grille des résultats ---- */
.search-grid {
    max-width: 1220px;
    margin: 0 auto;
    padding: 0 24px 56px;
    display: grid;
    grid-template-columns: 1fr;
    gap: 28px;
}
@media (min-width: 600px) {
    .search-grid { grid-template-columns: repeat(2, 1fr); gap: 28px; }
}
@media (min-width: 980px) {
    .search-grid { grid-template-columns: repeat(3, 1fr); gap: 32px; }
}
@media (min-width: 1300px) {
    .search-grid { grid-template-columns: repeat(4, 1fr); }
}

.search-card {
    background: transparent;
    border: 0;
}
.search-card__link {
    display: flex;
    flex-direction: column;
    gap: 14px;
    text-decoration: none;
    color: inherit;
    height: 100%;
}
.search-card__media {
    position: relative;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    border-radius: 14px;
    background: #ece6d8;
    box-shadow: 0 12px 24px -20px rgba(30,32,29,0.5);
}
.search-card__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .5s ease;
}
.search-card__link:hover .search-card__img {
    transform: scale(1.04);
}
.search-card__placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 38px;
    font-weight: 800;
    letter-spacing: 0.06em;
    background: linear-gradient(135deg, #ef7e15, #d96d0d);
}
.search-card__badge {
    position: absolute;
    top: 12px;
    left: 12px;
    background: rgba(255,255,255,0.94);
    backdrop-filter: blur(6px);
    color: #1e201d;
    font-size: 11px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    padding: 5px 10px;
    border-radius: 999px;
    font-weight: 700;
}
/* Variantes badge par grandes familles de cats */
.search-card__badge--food,
.search-card__badge--food-en,
.search-card__badge--le-bon-plan-restos { background: rgba(239,126,21,0.95); color: #fff; }
.search-card__badge--voyage-fr,
.search-card__badge--voyage-article,
.search-card__badge--travel,
.search-card__badge--travel-article { background: rgba(70,140,200,0.95); color: #fff; }
.search-card__badge--music { background: rgba(170,80,180,0.95); color: #fff; }

.search-card__body {
    padding: 0 4px;
}
.search-card__title {
    margin: 0 0 8px;
    font-size: 18px;
    line-height: 1.25;
    font-weight: 700;
    color: #1e201d;
    transition: color .2s ease;
}
.search-card__link:hover .search-card__title { color: #ef7e15; }

.search-card__excerpt {
    margin: 0 0 10px;
    font-size: 14px;
    line-height: 1.5;
    color: #5a5a52;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.search-card__meta {
    margin: 0;
    font-size: 12px;
    color: #8a8478;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}
.search-card__meta-sep { margin: 0 6px; }

/* ---- Pagination ---- */
.search-pagination {
    max-width: 1220px;
    margin: 0 auto;
    padding: 8px 24px 72px;
}
/* Neutralise la règle globale .navigation div { background:#ff8854 } sur la
   page de recherche : on veut un wrapper transparent, le style vient des
   pastilles individuelles. */
.search-pagination .navigation div,
.search-pagination .navigation div:hover {
    background: transparent;
}
.search-pagination .nav-links {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
}

/* Pastilles de page : 40×40 ronds, neutres, élégants */
.search-pagination .page-numbers {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 42px;
    height: 42px;
    padding: 0 14px;
    border-radius: 999px;
    background: transparent;
    border: 1px solid transparent;
    color: #5a5a52;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    letter-spacing: 0.01em;
    transition: color .2s ease, background .2s ease, border-color .2s ease, transform .2s ease;
}
.search-pagination .page-numbers:not(.current):not(.dots):hover {
    color: #1e201d;
    background: #fff;
    border-color: #ebe6d8;
    transform: translateY(-1px);
}
.search-pagination .page-numbers.current {
    background: #ef7e15;
    border-color: #ef7e15;
    color: #fff;
    box-shadow: 0 8px 20px -10px rgba(239,126,21,0.65);
    cursor: default;
}
.search-pagination .page-numbers.dots {
    background: transparent;
    border: 0;
    color: #c3b59a;
    cursor: default;
    min-width: 24px;
    padding: 0 4px;
}

/* Prev/Next : boutons distincts, plus larges, arrow qui glisse */
.search-pagination .page-numbers.prev,
.search-pagination .page-numbers.next {
    background: #1e201d;
    color: #fff;
    border-color: #1e201d;
    padding: 0 22px;
    gap: 10px;
    box-shadow: 0 8px 20px -14px rgba(30,32,29,0.6);
}
.search-pagination .page-numbers.prev:hover,
.search-pagination .page-numbers.next:hover {
    background: #ef7e15;
    border-color: #ef7e15;
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 10px 24px -10px rgba(239,126,21,0.55);
}
.search-pagination .page-numbers.prev { margin-right: 10px; }
.search-pagination .page-numbers.next { margin-left: 10px; }

/* Flèches CSS sur prev/next, qui glissent au survol */
.search-pagination .page-numbers.prev::before {
    content: "\2190"; /* ← */
    display: inline-block;
    margin-right: 8px;
    font-weight: 700;
    transition: transform .25s ease;
}
.search-pagination .page-numbers.next::after {
    content: "\2192"; /* → */
    display: inline-block;
    margin-left: 8px;
    font-weight: 700;
    transition: transform .25s ease;
}
.search-pagination .page-numbers.prev:hover::before { transform: translateX(-4px); }
.search-pagination .page-numbers.next:hover::after  { transform: translateX(4px); }

/* ---- État vide ---- */
.search-empty {
    max-width: 1220px;
    margin: 0 auto;
    padding: 24px 24px 80px;
}
.search-empty__inner {
    background: #fff;
    border: 1px solid #ebe6d8;
    border-radius: 18px;
    padding: 56px 32px;
    text-align: center;
    max-width: 620px;
    margin: 0 auto;
}
.search-empty__icon {
    color: #ef7e15;
    margin: 0 0 14px;
}
.search-empty__title {
    margin: 0 0 10px;
    font-size: 24px;
    font-weight: 700;
    color: #1e201d;
}
.search-empty__hint {
    margin: 0 0 22px;
    color: #5a5a52;
    font-size: 15px;
}
.search-empty__suggestions {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
}
.search-empty__suggestions a {
    display: inline-block;
    padding: 7px 14px;
    background: #faf7f1;
    border: 1px solid #ebe6d8;
    border-radius: 999px;
    color: #1e201d;
    text-decoration: none;
    font-size: 13px;
    font-weight: 600;
    transition: all .2s ease;
}
.search-empty__suggestions a:hover {
    background: #ef7e15;
    border-color: #ef7e15;
    color: #fff;
}

@media (max-width: 600px) {
    .search-hero { padding: 36px 18px 22px; }
    .search-hero__form { flex-direction: column; border-radius: 18px; padding: 6px; }
    .search-hero__form button { border-radius: 14px; padding: 12px; }
    .search-grid { padding: 0 18px 36px; }
    .search-empty { padding: 18px 18px 60px; }
    .search-empty__inner { padding: 40px 22px; }
}

/* === BLOC « POINTS FORTS » (acf/points-forts) ===
   Encadré inséré via Gutenberg, généralement juste après le résumé d'un
   voyage. Le wrapper .entry-content--inline-blocks neutralise les marges
   verticales par défaut de .entry-content pour que le bloc se cale
   visuellement à la suite de la section .entry-section--le_resume. */
.entry-content--inline-blocks { margin: 0; }
.entry-content--inline-blocks > * + * { margin-top: var(--s-lg); }

.points-forts {
    --pf-accent: 239, 126, 21;
    position: relative;
    margin: var(--s-xl) 0;
    padding: var(--s-xl) clamp(20px, 4vw, 36px);
    background:
        linear-gradient(180deg, rgba(var(--pf-accent), 0.06), rgba(var(--pf-accent), 0.02) 40%, transparent),
        #fffaf3;
    border: 1px solid rgba(var(--pf-accent), 0.18);
    border-radius: 14px;
    box-shadow: 0 1px 0 rgba(0,0,0,0.02), 0 14px 32px -22px rgba(var(--pf-accent), 0.45);
}
.points-forts::before {
    content: "";
    position: absolute;
    top: 0; left: 0;
    width: 6px; height: 100%;
    background: rgb(var(--pf-accent));
    border-radius: 14px 0 0 14px;
}

.points-forts__header {
    margin: 0 0 var(--s-lg);
}
.points-forts__eyebrow {
    display: inline-block;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: rgb(var(--pf-accent));
    margin: 0 0 6px;
}
.points-forts__title {
    margin: 0;
    font-size: clamp(1.3rem, 2.2vw, 1.7rem);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.01em;
    color: var(--c-text, #1e201d);
}
.points-forts__intro {
    margin: 8px 0 0;
    font-size: 0.98rem;
    color: var(--c-text-soft, #555);
    font-style: italic;
}

.points-forts__list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: 14px;
}
.points-forts__item {
    display: grid;
    grid-template-columns: 34px 1fr;
    align-items: start;
    gap: 14px;
    padding: 12px 14px;
    background: rgba(255,255,255,0.6);
    border: 1px solid rgba(var(--pf-accent), 0.12);
    border-radius: 10px;
    transition: background .2s ease, transform .2s ease, border-color .2s ease;
}
.points-forts__item:hover {
    background: #fff;
    border-color: rgba(var(--pf-accent), 0.28);
    transform: translateY(-1px);
}
.points-forts__bullet {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px; height: 28px;
    border-radius: 999px;
    background: rgb(var(--pf-accent));
    color: #fff;
    font-weight: 800;
    font-size: 13px;
    line-height: 1;
    margin-top: 2px;
    box-shadow: 0 2px 0 rgba(0,0,0,0.05);
}
.points-forts__text {
    font-size: 1rem;
    line-height: 1.6;
    color: var(--c-text, #1e201d);
}
.points-forts__text p { margin: 0; }
.points-forts__text p + p { margin-top: 6px; }
.points-forts__text a {
    color: rgb(var(--pf-accent));
    border-bottom: 1px solid rgba(var(--pf-accent), 0.35);
    text-decoration: none;
}
.points-forts__text a:hover { border-bottom-color: rgb(var(--pf-accent)); }

@media (max-width: 600px) {
    .points-forts { padding: 22px 18px; border-radius: 10px; }
    .points-forts::before { width: 4px; }
    .points-forts__item { grid-template-columns: 28px 1fr; gap: 10px; padding: 10px 12px; }
    .points-forts__bullet { width: 24px; height: 24px; font-size: 12px; }
}

/* === BLOC « BILAN VOYAGE » (acf/bilan-voyage) ===
   Encadré de clôture pour les articles voyage. Symétrique visuellement
   du bloc « Points forts » (ouverture) mais avec un ton plus sombre /
   plus dense pour marquer la fin de lecture. */
.bilan-voyage {
    --bv-ink: 30, 32, 29;            /* texte principal sombre */
    --bv-ink-soft: 90, 86, 72;       /* texte secondaire */
    --bv-gold: 184, 134, 31;         /* doré assombri pour contraste sur fond clair */
    --bv-gold-soft: 220, 170, 60;    /* doré clair (étoiles, accents légers) */
    position: relative;
    margin: var(--s-2xl) 0 var(--s-xl);
    padding: clamp(28px, 4vw, 44px) clamp(22px, 4vw, 40px);
    background:
        radial-gradient(120% 80% at 0% 0%, rgba(220,170,60,0.18), transparent 60%),
        linear-gradient(180deg, #fff8ee 0%, #f4ead6 100%);
    color: rgb(var(--bv-ink));
    border: 1px solid rgba(184,134,31,0.18);
    border-radius: 16px;
    box-shadow: 0 16px 36px -28px rgba(30,32,29,0.25);
    overflow: hidden;
}
.bilan-voyage::before {
    content: "";
    position: absolute;
    top: 0; left: 0;
    width: 100%; height: 4px;
    background: linear-gradient(90deg, rgb(var(--bv-gold)) 0%, #ef7e15 100%);
}

.bilan-voyage__header { margin: 0 0 var(--s-md); }
.bilan-voyage__eyebrow {
    display: inline-block;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: rgb(var(--bv-gold));
    margin: 0 0 6px;
}
.bilan-voyage__title {
    margin: 0;
    color: rgb(var(--bv-ink));
    font-size: clamp(1.5rem, 2.6vw, 2.1rem);
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -0.01em;
}

.bilan-voyage__quote {
    margin: var(--s-md) 0 var(--s-lg);
    padding: 0 0 0 24px;
    border-left: 3px solid rgb(var(--bv-gold));
    color: rgb(var(--bv-ink-soft));
    font-family: var(--font-quote, Georgia, serif);
    position: relative;
}
.bilan-voyage__quote p {
    margin: 0;
    font-size: clamp(1.15rem, 2vw, 1.5rem);
    font-style: italic;
    line-height: 1.4;
}
.bilan-voyage__quote-mark {
    position: absolute;
    left: 6px; top: -10px;
    font-size: 2.4rem;
    color: rgb(var(--bv-gold));
    line-height: 1;
    opacity: 0.7;
}

.bilan-voyage__verdict {
    font-size: 1.05rem;
    line-height: 1.75;
    color: rgb(var(--bv-ink));
}
.bilan-voyage__verdict p { margin: 0 0 0.9em; }
.bilan-voyage__verdict p:last-child { margin-bottom: 0; }
.bilan-voyage__verdict a {
    color: rgb(var(--bv-gold));
    border-bottom: 1px solid rgba(184,134,31,0.4);
    text-decoration: none;
}
.bilan-voyage__verdict a:hover { border-bottom-color: rgb(var(--bv-gold)); }
.bilan-voyage__verdict strong { color: rgb(var(--bv-ink)); }

.bilan-voyage__rating {
    display: flex;
    align-items: center;
    gap: 14px;
    margin: var(--s-lg) 0 var(--s-md);
    padding: 14px 18px;
    background: rgba(255,255,255,0.55);
    border: 1px solid rgba(184,134,31,0.2);
    border-radius: 10px;
}
.bilan-voyage__stars {
    display: inline-flex;
    gap: 2px;
    font-size: 1.4rem;
    line-height: 1;
}
.bilan-voyage__star { color: rgba(30,32,29,0.18); }
.bilan-voyage__star.is-filled {
    color: rgb(var(--bv-gold-soft));
    text-shadow: 0 0 14px rgba(220,170,60,0.45);
}
.bilan-voyage__rating-num {
    font-size: 1.1rem;
    font-weight: 700;
    color: rgb(var(--bv-ink));
    letter-spacing: 0.02em;
}
.bilan-voyage__rating-total {
    color: rgba(30,32,29,0.45);
    font-weight: 500;
    margin-left: 1px;
}
/* La mention vit à l'intérieur du bloc rating, poussée au bord droit. */
.bilan-voyage__rating .bilan-voyage__mention-pill {
    margin-left: auto;
}

/* Fallback : si la note est absente, la mention reste sur sa propre ligne. */
.bilan-voyage__mention { margin: 0 0 var(--s-md); }

.bilan-voyage__mention-pill {
    display: inline-flex;
    align-items: center;
    padding: 4px 11px;
    border-radius: 999px;
    background: transparent;
    color: rgb(var(--bv-gold));
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    box-shadow: inset 0 0 0 1px rgba(184,134,31,0.55);
    line-height: 1.3;
    white-space: nowrap;
}
.bilan-voyage--on_hesite .bilan-voyage__mention-pill {
    color: rgb(var(--bv-ink-soft));
    box-shadow: inset 0 0 0 1px rgba(90,86,72,0.35);
}
.bilan-voyage--une_fois .bilan-voyage__mention-pill {
    color: rgba(30,32,29,0.55);
    box-shadow: inset 0 0 0 1px rgba(30,32,29,0.2);
}
.bilan-voyage--coup_de_coeur .bilan-voyage__mention-pill {
    color: #ef7e15;
    box-shadow: inset 0 0 0 1px rgba(239,126,21,0.55);
}

.bilan-voyage__next {
    margin: var(--s-lg) 0 0;
    padding: 14px 18px;
    background: rgba(255,255,255,0.45);
    border-left: 3px solid rgba(184,134,31,0.55);
    border-radius: 0 8px 8px 0;
    display: flex;
    flex-wrap: wrap;
    gap: 4px 10px;
    align-items: baseline;
}
.bilan-voyage__next-label {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: rgb(var(--bv-gold));
}
.bilan-voyage__next-text {
    color: rgb(var(--bv-ink));
    font-size: 1rem;
    line-height: 1.55;
}

@media (max-width: 600px) {
    .bilan-voyage { padding: 24px 18px; border-radius: 12px; }
    .bilan-voyage__rating { flex-wrap: wrap; gap: 8px 12px; padding: 12px 14px; }
    .bilan-voyage__rating .bilan-voyage__mention-pill { margin-left: 0; }
    .bilan-voyage__next { flex-direction: column; gap: 4px; padding: 12px 14px; }
}

/* ============================================================
   716 — Bloc Gutenberg « Slider images » (acf/slider-images)
   ============================================================ */

.slider-images {
    margin: 36px 0;
    padding: 0;
}
.slider-images__title {
    margin: 0 0 16px;
    font-size: clamp(1.3rem, 2.2vw, 1.6rem);
    font-weight: 800;
    letter-spacing: -0.01em;
    color: #1e201d;
}
.slider-images__swiper {
    position: relative;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 18px 40px -22px rgba(30, 32, 29, 0.35);
    background: #f4efe5;
}
.slider-images--small  .slider-images__swiper { height: 320px; }
.slider-images--medium .slider-images__swiper { height: 480px; }
.slider-images--large  .slider-images__swiper { height: 620px; }
.slider-images--full   .slider-images__swiper { height: 100vh; }

.slider-images__slide {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}
.slider-images__img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.slider-images__caption {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
    margin: 0;
    padding: 48px 24px 22px;
    color: #fff;
    font-size: 0.95rem;
    line-height: 1.5;
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.45);
    background: linear-gradient(180deg, rgba(30, 32, 29, 0) 0%, rgba(30, 32, 29, 0.65) 100%);
    pointer-events: none;
}

/* ---------- Empty state (édition uniquement) ---------- */
.slider-images--empty {
    padding: 22px;
    border: 1px dashed rgba(30, 32, 29, 0.25);
    border-radius: 12px;
    background: #fafaf7;
    color: #666;
    font-size: 0.9rem;
}

/* ---------- Controls (mêmes overrides Swiper que le home) ---------- */
.slider-images__swiper .swiper-button-prev,
.slider-images__swiper .swiper-button-next {
    width: 44px;
    height: 44px;
    margin-top: -22px;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.92);
    color: #1e201d;
    box-shadow: 0 8px 20px -10px rgba(0, 0, 0, 0.4);
    transition: background 0.2s ease, transform 0.2s ease, color 0.2s ease;
    cursor: pointer;
}
.slider-images__swiper .swiper-button-prev:hover,
.slider-images__swiper .swiper-button-next:hover {
    background: #ef7e15;
    color: #fff;
    transform: scale(1.06);
}
.slider-images__swiper .swiper-button-prev::after,
.slider-images__swiper .swiper-button-next::after {
    font-size: 16px;
    font-weight: 700;
}
.slider-images__swiper .swiper-pagination-bullet {
    width: 9px;
    height: 9px;
    background: rgba(255, 255, 255, 0.55);
    opacity: 1;
    transition: width 0.25s ease, background 0.25s ease;
    border-radius: 999px;
}
.slider-images__swiper .swiper-pagination-bullet-active {
    background: #fff;
    width: 28px;
}
.slider-images__swiper .swiper-pagination {
    bottom: 14px;
}

/* ---------- Responsive ---------- */
@media (max-width: 768px) {
    .slider-images { margin: 26px 0; }
    .slider-images__swiper { border-radius: 14px; }
    .slider-images--small  .slider-images__swiper { height: 240px; }
    .slider-images--medium .slider-images__swiper { height: 340px; }
    .slider-images--large  .slider-images__swiper { height: 440px; }
    .slider-images__caption { padding: 36px 18px 18px; font-size: 0.88rem; }
    .slider-images__swiper .swiper-button-prev,
    .slider-images__swiper .swiper-button-next { width: 36px; height: 36px; margin-top: -18px; }
}

/* ============================================================
   Tours liés (levraiparis.com) — section affichée en bas
   d'article quand le champ ACF `tours_lies` est renseigné.
   ============================================================ */
.entry-tours {
    margin: 48px 0 32px;
}
.entry-tours__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 18px;
}
.entry-tours__item { margin: 0; }
.entry-tours__card {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 14px;
    color: inherit;
    text-decoration: none;
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
    height: 100%;
}
a.entry-tours__card:hover,
a.entry-tours__card:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.10);
    border-color: rgba(0, 0, 0, 0.18);
    outline: none;
}
.entry-tours__media {
    display: block;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background: #f3f3f3;
}
.entry-tours__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.entry-tours__body {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 16px 18px 18px;
}
.entry-tours__title {
    font-weight: 700;
    font-size: 1.05rem;
    line-height: 1.3;
}
.entry-tours__desc {
    font-size: 0.92rem;
    line-height: 1.45;
    color: rgba(0, 0, 0, 0.7);
    display: -webkit-box;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.entry-tours__cta {
    margin-top: 4px;
    font-size: 0.85rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    color: #c9302c;
}
a.entry-tours__card:hover .entry-tours__cta,
a.entry-tours__card:focus-visible .entry-tours__cta {
    text-decoration: underline;
}

@media (max-width: 600px) {
    .entry-tours__list { grid-template-columns: 1fr; }
}

/* ============================================================
   Search — carte « correspondance exacte »
   Affichée au-dessus de la grille quand le titre d'un article
   matche exactement la requête (insensible casse + accents).
   ============================================================ */
.search-featured {
    max-width: 1220px;
    margin: 0 auto 36px;
    padding: 0 24px;
}
.search-featured__link {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
    text-decoration: none;
    color: inherit;
    background: #fff;
    border-radius: 18px;
    overflow: hidden;
    border: 1px solid rgba(0, 0, 0, 0.08);
    box-shadow: 0 18px 40px -28px rgba(30, 32, 29, 0.45);
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}
.search-featured__link:hover,
.search-featured__link:focus-visible {
    transform: translateY(-3px);
    box-shadow: 0 26px 54px -28px rgba(30, 32, 29, 0.55);
    border-color: rgba(239, 126, 21, 0.4);
    outline: none;
}
.search-featured__media {
    position: relative;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #ece6d8;
}
.search-featured__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.6s ease;
}
.search-featured__link:hover .search-featured__img {
    transform: scale(1.03);
}
.search-featured__placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 56px;
    font-weight: 800;
    letter-spacing: 0.06em;
    background: linear-gradient(135deg, #ef7e15, #d96d0d);
}
.search-featured__badge {
    position: absolute;
    top: 16px;
    left: 16px;
    background: #ef7e15;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    padding: 8px 14px;
    border-radius: 999px;
    box-shadow: 0 8px 20px -10px rgba(239, 126, 21, 0.7);
}
.search-featured__body {
    padding: 28px 28px 30px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.search-featured__eyebrow {
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    color: #ef7e15;
}
.search-featured__title {
    font-size: clamp(1.6rem, 2.6vw, 2.2rem);
    line-height: 1.15;
    margin: 0;
    font-weight: 800;
    letter-spacing: -0.01em;
}
.search-featured__excerpt {
    margin: 4px 0 0;
    font-size: 1.02rem;
    line-height: 1.5;
    color: rgba(0, 0, 0, 0.72);
}
.search-featured__meta {
    margin: 6px 0 0;
    font-size: 0.88rem;
    color: rgba(0, 0, 0, 0.55);
}
.search-featured__meta-sep {
    margin: 0 6px;
}
.search-featured__cta {
    margin-top: 10px;
    align-self: flex-start;
    font-size: 0.92rem;
    font-weight: 600;
    color: #ef7e15;
    border-bottom: 2px solid currentColor;
    padding-bottom: 2px;
}

@media (min-width: 820px) {
    .search-featured__link {
        grid-template-columns: 1.2fr 1fr;
    }
    .search-featured__media {
        aspect-ratio: auto;
        height: 100%;
        min-height: 320px;
    }
    .search-featured__body {
        padding: 36px 40px;
        justify-content: center;
    }
}

/* === ARCHIVE DE TAXONOMIE — destination (et compagnie) ===
   Header + grille de cartes via les classes existantes .entry-list-grid /
   .entry-list-card. Mise en page épurée, centrée. */
.content--archive {
    max-width: var(--container-max, 1200px);
    margin: 0 auto;
    padding: var(--s-xl) var(--s-md);
}
/* === ARCHIVE HEADER — HERO ÉDITORIAL ==============================
   Panneau arrondi à dégradé doux + filigrane « 716 », eyebrow à filets
   accent, grand titre display, pills en chips translucides. Partagé entre
   les archives CPT (.archive-header) et les pages taxo/index (.arr-index__header). */
.archive-header,
.arr-index__header {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    text-align: center;
    max-width: none;
    margin: 0 0 var(--s-2xl, 48px);
    padding: clamp(40px, 6vw, 76px) clamp(20px, 5vw, 56px);
    border-radius: 20px;
    background:
        radial-gradient(120% 120% at 18% 0%, rgba(239, 126, 21, 0.12), transparent 55%),
        radial-gradient(120% 120% at 100% 100%, rgba(30, 32, 29, 0.06), transparent 50%),
        linear-gradient(180deg, #fbf9f5 0%, #f1ece3 100%);
    border: 1px solid rgba(30, 32, 29, 0.06);
}
.archive-header::after,
.arr-index__header::after {
    content: "716";
    position: absolute;
    right: 0.05em;
    bottom: -0.30em;
    z-index: -1;
    font-family: var(--font-display);
    font-size: clamp(140px, 24vw, 280px);
    font-weight: 900;
    line-height: 1;
    letter-spacing: -0.05em;
    color: rgba(30, 32, 29, 0.045);
    pointer-events: none;
    user-select: none;
}
.archive-header__eyebrow,
.arr-index__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-family: var(--font-display);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.24em;
    text-transform: uppercase;
    color: var(--c-accent, #ef7e15);
    margin: 0 0 14px;
}
.archive-header__eyebrow::before,
.archive-header__eyebrow::after,
.arr-index__eyebrow::before,
.arr-index__eyebrow::after {
    content: "";
    width: 26px;
    height: 2px;
    border-radius: 2px;
    background: currentColor;
    opacity: 0.55;
}
.archive-header__title,
.arr-index__title {
    font-family: var(--font-display);
    font-size: clamp(2rem, 5vw, 3rem);
    font-weight: 800;
    line-height: 1.05;
    letter-spacing: -0.015em;
    margin: 0 auto var(--s-md, 16px);
    max-width: 18ch;
    color: var(--c-text, #1e201d);
}
.archive-header__desc,
.arr-index__desc {
    color: var(--c-text-soft, #555);
    font-size: 16px;
    line-height: 1.65;
    margin: 0 auto;
    max-width: 58ch;
}
.archive-header__desc p:last-child,
.arr-index__desc p:last-child { margin-bottom: 0; }
.archive-header__children {
    list-style: none;
    margin: var(--s-lg, 24px) 0 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
}
.archive-header__children .pill {
    display: inline-block;
    padding: 7px 16px;
    border-radius: 999px;
    border: 1px solid rgba(30, 32, 29, 0.14);
    background: rgba(255, 255, 255, 0.7);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    color: var(--c-text, #1e201d);
    font-size: 13.5px;
    font-weight: 600;
    text-decoration: none;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease, transform 0.12s ease;
}
.archive-header__children .pill:hover {
    background: var(--c-text, #1e201d);
    border-color: var(--c-text, #1e201d);
    color: #fff;
    transform: translateY(-1px);
}
.archive-empty {
    text-align: center;
    color: var(--c-text-soft, #555);
    padding: var(--s-2xl) 0;
}

/* === SIDEBAR — 4 cartes Guide / Soutenir / Boutique / Partenaire ===
   Réutilise le composant .entry-link-card (cf. single.php) en l'empilant
   verticalement dans la sidebar 280px et en compactant le visuel. */
.sidebar-widgets {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.sidebar-widgets .entry-link-card {
    display: grid;
    grid-template-columns: 44px 1fr;
    grid-template-areas:
        "visual eyebrow"
        "visual title"
        "visual desc"
        "visual cta";
    column-gap: 12px;
    row-gap: 2px;
    align-items: start;
    padding: 14px 14px;
    border-radius: 10px;
    text-decoration: none;
    transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
    /* Les `background`, `border` et couleurs viennent des variants
       (.entry-link-card--guide / --support / --shop / --partner) — mêmes
       teintes que sur le single. */
}
.sidebar-widgets .entry-link-card:hover {
    transform: translateY(-1px);
    box-shadow: 0 8px 22px -12px rgba(0, 0, 0, 0.2);
}
.sidebar-widgets .entry-link-card__visual {
    grid-area: visual;
    width: 44px;
    height: 44px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    /* Pas de `background` / `color` : laissés aux variants. */
}
.sidebar-widgets .entry-link-card__visual svg {
    width: 22px;
    height: 22px;
}
.sidebar-widgets .entry-link-card__visual img {
    max-width: 28px;
    max-height: 28px;
    object-fit: contain;
}
.sidebar-widgets .entry-link-card__eyebrow {
    grid-area: eyebrow;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}
.sidebar-widgets .entry-link-card__title {
    grid-area: title;
    font-family: var(--font-display);
    font-size: 15px;
    font-weight: 700;
    line-height: 1.25;
}
.sidebar-widgets .entry-link-card__desc {
    grid-area: desc;
    font-size: 12px;
    line-height: 1.4;
    margin-top: 4px;
}
.sidebar-widgets .entry-link-card__cta {
    grid-area: cta;
    font-size: 12px;
    font-weight: 600;
    margin-top: 6px;
}
.sidebar-widgets .entry-link-card__cta::after {
    content: " →";
}

/* === SIDEBAR — Navigation contextuelle (taxos du CPT courant) === */
.sidebar-menu {
    margin: 0 0 var(--s-lg, 24px);
    padding: 18px 16px;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 10px;
}
.sidebar-menu__group + .sidebar-menu__group {
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid rgba(0, 0, 0, 0.08);
}
.sidebar-menu__heading {
    margin: 0 0 8px;
    padding: 0 10px;
    font-family: var(--font-display);
    font-size: 17px;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--c-text-soft, #888);
}
.sidebar-menu__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.sidebar-menu__list li {
    list-style: none;
}
.sidebar-menu__list a {
    display: block;
    padding: 8px 10px;
    border-radius: 6px;
    font-family: var(--font-display);
    font-size: 17px;
    font-weight: 500;
    color: var(--c-text, #1e201d);
    text-decoration: none;
    transition: background 0.12s ease, color 0.12s ease;
}
.sidebar-menu__list a:hover {
    background: rgba(0, 0, 0, 0.04);
    color: var(--c-accent, #ef7e15);
}
.sidebar-menu__list .current-menu-item > a,
.sidebar-menu__list .current_page_item > a {
    background: var(--c-accent, #ef7e15);
    color: #fff;
}
/* Sous-menus (depth 2) légèrement indentés */
.sidebar-menu__list .sub-menu {
    list-style: none;
    margin: 4px 0 6px 14px;
    padding-left: 8px;
    border-left: 2px solid rgba(0, 0, 0, 0.06);
    display: flex;
    flex-direction: column;
    gap: 1px;
}
.sidebar-menu__list .sub-menu a {
    font-size: 15px;
    font-weight: 400;
    padding: 6px 8px;
}

/* === ARCHIVE ARRONDISSEMENT — liste par sections (style page « Liste 716 ») ===
   Calqué sur l'archive d'origine /paris/la-liste-des-lieux-716-a-paris-et-proche-banlieue/ :
   - Titres h3 sobres « PARIS – 75XXX » / « 77200 Torcy »
   - Liste à puces, une seule colonne
   - Pas de séparateur visuel entre sections (juste l'espacement) */
.arr-section {
    margin: 0 0 var(--s-lg, 24px);
}
.arr-section__title {
    font-family: var(--font-display);
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    margin: 1.6em 0 0.5em;
    color: var(--c-text, #1e201d);
}
.arr-section__title a {
    color: inherit;
    text-decoration: none;
    border-bottom: 1px solid transparent;
    transition: color 0.12s ease, border-color 0.12s ease;
}
.arr-section__title a:hover {
    color: var(--c-accent, #ef7e15);
    border-bottom-color: var(--c-accent, #ef7e15);
}
.arr-section__list,
.arr-section__list--flat {
    list-style: disc;
    margin: 0;
    padding: 0 0 0 1.4em;
}
.arr-section__item {
    margin: 0 0 4px;
}
.arr-section__item a {
    color: var(--c-text, #1e201d);
    text-decoration: none;
    font-size: 15px;
    line-height: 1.5;
    border-bottom: 1px solid transparent;
    transition: color 0.12s ease, border-color 0.12s ease;
}
.arr-section__item a:hover {
    color: var(--c-accent, #ef7e15);
    border-bottom-color: var(--c-accent, #ef7e15);
}

/* === ARCHIVE — LAYOUT 2 COLONNES (main + sidebar widgets) === */
.archive-layout {
    display: flex;
    gap: var(--s-xl);
    align-items: flex-start;
    /* Largeur pilotée par le #container élargi (règle body-class), centré
       par margin auto — cohérent avec .arr-index, pas de breakout transform. */
    max-width: none;
    margin: 0 auto;
    padding: var(--s-xl) 0;
}

/* Élargit le conteneur du thème (965px par défaut) à 1300px UNIQUEMENT sur les
   pages d'archive/index 716, pour que le contenu reste centré naturellement. */
.tax-destination #container,
.tax-type_resto #container,
.tax-type_recette #container,
.tax-arrondissement #container,
.tax-categorie_musique #container,
.post-type-archive-food #container,
.post-type-archive-voyage #container,
.post-type-archive-musique #container,
.post-type-archive-recette #container,
.page-template-page-arrondissements #container,
.page-template-page-recettes #container,
.page-template-page-types-restaurants #container {
    max-width: 1300px;
}
.archive-layout > .content--archive {
    flex: 1 1 auto;
    min-width: 0;
    max-width: none;
    margin: 0;
    padding: 0;
}
.archive-layout > #secondary {
    flex: 0 0 280px;
    max-width: 280px;
    position: sticky;
    top: var(--s-md);
}
@media (max-width: 900px) {
    .archive-layout {
        flex-direction: column;
        padding: var(--s-md) 0;
    }
    .archive-layout > #secondary {
        flex-basis: auto;
        max-width: 100%;
        position: static;
    }
}

/* === ARCHIVE — TOGGLE DE VUE (Cartes / Liste / Compact) === */
.archive-view-toggle {
    display: flex;
    justify-content: center;
    gap: 4px;
    margin: 0 auto var(--s-xl);
    padding: 4px;
    background: #f5f5f3;
    border-radius: 999px;
    width: fit-content;
    max-width: 100%;
}
.archive-view-toggle__btn {
    padding: 8px 18px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    color: var(--c-text-soft, #666);
    transition: background 0.15s ease, color 0.15s ease;
    white-space: nowrap;
}
.archive-view-toggle__btn:hover {
    background: rgba(0, 0, 0, 0.04);
    color: var(--c-text, #1e201d);
}
.archive-view-toggle__btn.is-active {
    background: var(--c-text, #1e201d);
    color: #fff;
}

/* === ARCHIVE — VUE LISTE (thumb + titre + extrait sur une ligne) === */
.entry-list--list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin: 0 auto;
    max-width: 900px;
}
.entry-list-row {
    display: grid;
    grid-template-columns: 88px 1fr auto;
    gap: 18px;
    align-items: center;
    padding: 14px;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 10px;
    text-decoration: none;
    color: var(--c-text, #1e201d);
    transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}
.entry-list-row:hover {
    border-color: var(--c-accent, #ef7e15);
    box-shadow: 0 6px 18px -10px rgba(0, 0, 0, 0.15);
    transform: translateY(-1px);
}
.entry-list-row__thumb {
    width: 88px;
    height: 88px;
    border-radius: 8px;
    background-size: cover;
    background-position: center;
    background-color: #eee;
}
.entry-list-row__thumb--empty {
    background-color: #f0f0ee;
}
.entry-list-row__body {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}
.entry-list-row__title {
    font-family: var(--font-display);
    font-size: 17px;
    font-weight: 700;
    line-height: 1.25;
    color: var(--c-text, #1e201d);
}
.entry-list-row__excerpt {
    font-size: 13px;
    color: var(--c-text-soft, #666);
    line-height: 1.4;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.entry-list-row__meta {
    font-size: 12px;
    color: var(--c-text-soft, #888);
    white-space: nowrap;
    letter-spacing: 0.04em;
}

@media (max-width: 600px) {
    .entry-list-row {
        grid-template-columns: 60px 1fr;
        gap: 12px;
        padding: 10px;
    }
    .entry-list-row__thumb {
        width: 60px;
        height: 60px;
    }
    .entry-list-row__meta { display: none; }
}

/* === ARCHIVE — VUE COMPACT (juste titre + date, ultra dense) === */
.entry-list--compact {
    display: flex;
    flex-direction: column;
    margin: 0 auto;
    max-width: 760px;
    border-top: 1px solid rgba(0, 0, 0, 0.08);
}
.entry-list-compact {
    display: grid;
    grid-template-columns: 100px 1fr auto;
    align-items: baseline;
    gap: 18px;
    padding: 12px 8px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    text-decoration: none;
    color: var(--c-text, #1e201d);
    transition: background 0.12s ease;
}
.entry-list-compact:hover {
    background: rgba(0, 0, 0, 0.025);
}
.entry-list-compact__date {
    font-size: 12px;
    color: var(--c-text-soft, #888);
    letter-spacing: 0.04em;
    font-variant-numeric: tabular-nums;
}
.entry-list-compact__title {
    font-family: var(--font-display);
    font-size: 15px;
    font-weight: 500;
    line-height: 1.3;
}
.entry-list-compact:hover .entry-list-compact__title {
    color: var(--c-accent, #ef7e15);
}
.entry-list-compact__arrow {
    font-size: 14px;
    color: var(--c-text-soft, #aaa);
    transition: transform 0.15s ease, color 0.15s ease;
}
.entry-list-compact:hover .entry-list-compact__arrow {
    color: var(--c-accent, #ef7e15);
    transform: translateX(2px);
}

@media (max-width: 600px) {
    .entry-list-compact {
        grid-template-columns: 80px 1fr;
        gap: 10px;
        padding: 10px 4px;
    }
    .entry-list-compact__arrow { display: none; }
}

/* === ARCHIVE — VUE CARD (réutilise les classes .entry-list-grid existantes) ===
   Pour rester rétrocompatible, on garde .entry-list-grid pour la vue card.
   Le wrapper .entry-list--card est juste un alias visuellement neutre. */
.entry-list--card {
    /* Hérite du layout grid via la règle .entry-list-grid existante,
       qu'on applique ici aussi pour cohérence. */
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: var(--s-md, 16px);
}

/* === SECTION « LE BILAN » FOOD ===
   Mise en valeur de la dernière section des fiches food (clôture de lecture).
   Carte verte avec liseré coloré + typo distincte, inspirée du bloc
   bilan-voyage mais sans changer le markup (juste un re-style de
   `.entry-section--le_bilan`). */
.entry-section--le_bilan {
    position: relative;
    margin: var(--s-2xl) 0 var(--s-xl);
    padding: clamp(28px, 4vw, 44px) clamp(22px, 4vw, 40px);
    background:
        radial-gradient(120% 80% at 0% 0%, rgba(80, 160, 90, 0.14), transparent 60%),
        linear-gradient(180deg, #f7fbf5 0%, #ecf5e9 100%);
    border: 1px solid rgba(80, 160, 90, 0.22);
    border-radius: 16px;
    box-shadow: 0 16px 36px -28px rgba(30, 50, 30, 0.25);
    overflow: hidden;
}
.entry-section--le_bilan::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(90deg, rgb(var(--cat-color)) 0%, #4a9d5e 100%);
}

.entry-section--le_bilan .entry-section-title {
    font-size: clamp(1.5rem, 2.6vw, 2.1rem);
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -0.01em;
    text-transform: none;
    color: rgb(20, 45, 25);
    margin: 0 0 var(--s-md);
}

/* Sur les single posts en mode has-toc, le titre porte un pseudo-élément
   « tiret coloré » que l'on neutralise ici pour garder une lecture épurée. */
.entry.has-toc .entry-section--le_bilan .entry-section-title::before {
    display: none;
}

.entry-section--le_bilan .entry-section-content {
    font-size: 1.05rem;
    line-height: 1.7;
    color: rgb(40, 55, 40);
}
.entry-section--le_bilan .entry-section-content p {
    font-size: 15px;
    margin: 14px 0;
}
.entry-section--le_bilan .entry-section-content p:first-child { margin-top: 0; }
.entry-section--le_bilan .entry-section-content p:last-child { margin-bottom: 0; }
.entry-section--le_bilan .entry-section-content strong { color: rgb(20, 45, 25); }
.entry-section--le_bilan .entry-section-content a {
    color: rgb(var(--cat-color));
    border-bottom-color: rgba(80, 160, 90, 0.35);
}
.entry-section--le_bilan .entry-section-content a:hover {
    border-bottom-color: rgb(var(--cat-color));
}

/* === PAGE ARRONDISSEMENTS — INDEX DESIGN + TOGGLE VUE JS ===
   Page-template page-arrondissements.php. Trois modes commutables côté
   client : grille (par défaut), liste, compact. La classe .is-view-* est
   posée sur .arr-index__sections par le JS. */

.arr-index {
    display: flex;
    gap: var(--s-xl, 32px);
    align-items: flex-start;
    /* Largeur pilotée par le #container élargi (voir règle body-class plus bas),
       centré naturellement par margin auto — pas de breakout transform. */
    max-width: none;
    margin: 0 auto;
    padding: var(--s-xl, 32px) 0;
}
.arr-index > .content {
    flex: 1 1 auto;
    min-width: 0;
    max-width: none;
    margin: 0;
    padding: 0;
}
.arr-index > #secondary {
    flex: 0 0 280px;
    max-width: 280px;
    position: sticky;
    top: var(--s-md, 16px);
}
@media (max-width: 900px) {
    .arr-index {
        flex-direction: column;
        padding: var(--s-md, 16px) 0;
        gap: var(--s-md, 16px);
    }
    .arr-index > #secondary {
        flex-basis: auto;
        max-width: 100%;
        position: static;
    }
}

/* En-tête .arr-index__header : voir le hero unifié « ARCHIVE HEADER —
   HERO ÉDITORIAL » plus haut (partagé avec .archive-header). */

/* Barre filtre + toggle vue — sticky en haut */
.arr-index__bar {
    position: sticky;
    top: 0;
    z-index: 1;
    display: flex;
    gap: 12px;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    background: rgb(249 249 249);
    padding: 12px 0;
    margin: 0 0 18px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}
.arr-index__filter {
    flex: 1 1 280px;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 14px;
    background: #f5f5f3;
    border-radius: 999px;
    transition: background 0.15s ease, box-shadow 0.15s ease;
}
.arr-index__filter:focus-within {
    background: #fff;
    box-shadow: 0 0 0 2px var(--c-accent, #ef7e15);
}
.arr-index__filter-icon {
    flex: 0 0 auto;
    color: var(--c-text-soft, #666);
}
.arr-index__filter-input {
    flex: 1 1 auto;
    border: 0;
    background: transparent;
    outline: 0;
    font-size: 14px;
    color: var(--c-text, #1e201d);
    padding: 0;
}
.arr-index__filter-input::placeholder { color: #999; }

.arr-view-toggle {
    display: flex;
    gap: 2px;
    padding: 4px;
    background: #f5f5f3;
    border-radius: 999px;
}
.arr-view-toggle__btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 14px;
    border: 0;
    background: transparent;
    border-radius: 999px;
    font-size: 15px;
    font-weight: 600;
    color: var(--c-text-soft, #666);
    cursor: pointer;
    transition: background 0.15s ease, color 0.15s ease;
}
.arr-view-toggle__btn:hover {
    color: var(--c-text, #1e201d);
}
.arr-view-toggle__btn.is-active {
    background: var(--c-text, #1e201d);
    color: #fff;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.18);
}
.arr-view-toggle__btn svg { display: block; }
@media (max-width: 560px) {
    .arr-view-toggle__btn span { display: none; }
    .arr-view-toggle__btn { padding: 8px 10px; }
}

/* Quick-nav : pills d'ancres vers chaque section */
.arr-index__quicknav {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 0 0 var(--s-xl, 32px);
    padding: 0 0 12px;
    border-bottom: 1px dashed rgba(0, 0, 0, 0.08);
}
.arr-index__quicknav-pill {
    display: inline-block;
    padding: 5px 11px;
    border-radius: 999px;
    background: #f5f5f3;
    color: var(--c-text, #1e201d);
    font-size: 12.5px;
    font-weight: 600;
    text-decoration: none;
    transition: background 0.12s ease, color 0.12s ease, transform 0.12s ease;
}
.arr-index__quicknav-pill:hover {
    background: var(--c-accent, #ef7e15);
    color: #fff;
    transform: translateY(-1px);
}

/* Sections — en-tête commun aux 3 vues */
.arr-section {
    margin: 0 0 var(--s-xl, 32px);
    scroll-margin-top: 84px;
}
.arr-section__head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    padding: 0 0 10px;
    margin: 0 0 18px;
    border-bottom: 2px solid var(--c-text, #1e201d);
}
.arr-section__title {
    font-family: var(--font-display);
    font-size: clamp(1.05rem, 1.6vw, 1.35rem);
    font-weight: 800;
    letter-spacing: 0.02em;
    margin: 0;
    color: var(--c-text, #1e201d);
}
.arr-section__title a {
    color: inherit;
    text-decoration: none;
    border-bottom: 1px solid transparent;
    transition: color 0.12s ease, border-color 0.12s ease;
}
.arr-section__title a:hover {
    color: var(--c-accent, #ef7e15);
    border-bottom-color: var(--c-accent, #ef7e15);
}
.arr-section__count {
    font-size: 11.5px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--c-text-soft, #777);
    white-space: nowrap;
}
.arr-section__empty {
    margin: 6px 0 0;
    padding: 14px;
    background: #fafaf8;
    border-radius: 8px;
    color: var(--c-text-soft, #777);
    font-size: 14px;
    text-align: center;
}

/* === VUE GRILLE === */
.arr-index__sections.is-view-grid .arr-section__items {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 18px;
}
.is-view-grid .arr-card { display: block; }
.is-view-grid .arr-card__link {
    display: flex;
    flex-direction: column;
    height: 100%;
    text-decoration: none;
    color: inherit;
    background: #fff;
    border-radius: 10px;
    overflow: hidden;
    transition: transform 0.18s ease, box-shadow 0.18s ease;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
}
.is-view-grid .arr-card__link:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.10);
}
.is-view-grid .arr-card__media {
    display: block;
    aspect-ratio: 4 / 3;
    background-size: cover;
    background-position: center;
    background-color: #ece9e3;
    position: relative;
    overflow: hidden;
}
.is-view-grid .arr-card--no-thumb .arr-card__media {
    background: linear-gradient(135deg, #f1ede5, #e6e0d4);
    display: flex;
    align-items: center;
    justify-content: center;
}
.is-view-grid .arr-card__placeholder {
    font-family: var(--font-display);
    font-size: 26px;
    font-weight: 800;
    color: rgba(0, 0, 0, 0.18);
    letter-spacing: 0.05em;
}
.is-view-grid .arr-card__body {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 12px 14px 14px;
    flex: 1 1 auto;
}
.is-view-grid .arr-card__date {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--c-text-soft, #888);
}
.is-view-grid .arr-card__title {
    font-family: var(--font-display);
    font-size: 15.5px;
    font-weight: 700;
    line-height: 1.3;
    margin: 0;
    color: var(--c-text, #1e201d);
}
.is-view-grid .arr-card__excerpt {
    font-size: 13px;
    line-height: 1.5;
    color: var(--c-text-soft, #666);
    display: -webkit-box;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* === VUE LISTE === */
.arr-index__sections.is-view-list .arr-section__items {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.is-view-list .arr-card { display: block; }
.is-view-list .arr-card__link {
    display: grid;
    grid-template-columns: 96px 1fr auto;
    gap: 14px;
    align-items: center;
    padding: 10px 12px;
    text-decoration: none;
    color: inherit;
    background: #fff;
    border-radius: 8px;
    transition: background 0.15s ease, transform 0.15s ease;
    border: 1px solid rgba(0, 0, 0, 0.06);
}
.is-view-list .arr-card__link:hover {
    background: #fafaf6;
    transform: translateX(2px);
}
.is-view-list .arr-card__media {
    width: 96px;
    height: 72px;
    background-size: cover;
    background-position: center;
    background-color: #ece9e3;
    border-radius: 6px;
    flex: 0 0 auto;
    position: relative;
}
.is-view-list .arr-card--no-thumb .arr-card__media {
    background: linear-gradient(135deg, #f1ede5, #e6e0d4);
    display: flex;
    align-items: center;
    justify-content: center;
}
.is-view-list .arr-card__placeholder {
    font-family: var(--font-display);
    font-size: 16px;
    font-weight: 800;
    color: rgba(0, 0, 0, 0.18);
}
.is-view-list .arr-card__body {
    display: flex;
    flex-direction: column;
    gap: 3px;
    min-width: 0;
}
.is-view-list .arr-card__title {
    font-family: var(--font-display);
    font-size: 15px;
    font-weight: 700;
    line-height: 1.3;
    margin: 0;
    color: var(--c-text, #1e201d);
}
.is-view-list .arr-card__excerpt {
    font-size: 13px;
    line-height: 1.45;
    color: var(--c-text-soft, #666);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.is-view-list .arr-card__date {
    font-size: 11.5px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--c-text-soft, #888);
    white-space: nowrap;
    order: -1;
}
@media (max-width: 560px) {
    .is-view-list .arr-card__link {
        grid-template-columns: 64px 1fr;
    }
    .is-view-list .arr-card__media { width: 64px; height: 48px; }
    .is-view-list .arr-card__date { display: none; }
}

/* === VUE COMPACT === */
.arr-index__sections.is-view-compact .arr-section__items {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 2px;
    background: rgba(0, 0, 0, 0.06);
    border-radius: 6px;
    overflow: hidden;
}
.is-view-compact .arr-card { display: block; background: #fff; }
.is-view-compact .arr-card__link {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    align-items: center;
    padding: 8px 12px;
    text-decoration: none;
    color: inherit;
    transition: background 0.12s ease;
}
.is-view-compact .arr-card__link:hover {
    background: #fafaf6;
}
.is-view-compact .arr-card__media,
.is-view-compact .arr-card__excerpt {
    display: none;
}
.is-view-compact .arr-card__body {
    display: contents;
}
.is-view-compact .arr-card__date {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--c-text-soft, #888);
    white-space: nowrap;
}
.is-view-compact .arr-card__title {
    font-family: var(--font-text, inherit);
    font-size: 14px;
    font-weight: 500;
    line-height: 1.35;
    margin: 0;
    color: var(--c-text, #1e201d);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.is-view-compact .arr-card__link:hover .arr-card__title {
    color: var(--c-accent, #ef7e15);
}

/* Dates masquées dans les cartes d'archive (toutes vues). Placé après les
   règles par vue pour gagner en ordre de cascade (spécificité égale). */
.arr-index__sections .arr-card__date {
    display: none;
}

/* === MINI-CARTE DU SINGLE FOOD === */
.single-food-map {
    max-width: 100%;
    margin: var(--s-2xl, 48px) 0 var(--s-xl, 32px);
}
.single-food-map__title {
    font-family: var(--font-display);
    font-size: clamp(1.25rem, 2.2vw, 1.6rem);
    font-weight: 800;
    margin: 0 0 16px;
    color: var(--c-text, #1e201d);
}
.single-food-map__canvas {
    width: 100%;
    height: clamp(380px, 50vh, 520px);
    border-radius: 14px;
    overflow: hidden;
    background: #ece9e3;
    position: relative;
    z-index: 0;
    box-shadow: 0 12px 32px -22px rgba(30, 32, 29, 0.35);
}
/* Style Leaflet : popups, contrôles, attribution — pour matcher le 716. */
.single-food-map__canvas .leaflet-popup-content-wrapper,
.arr-map .leaflet-popup-content-wrapper {
    border-radius: 10px;
    padding: 2px 4px;
    box-shadow: 0 10px 28px -14px rgba(30, 32, 29, 0.35);
    background: #fff;
}
.single-food-map__canvas .leaflet-popup-content,
.arr-map .leaflet-popup-content {
    margin: 12px 14px;
    font-family: var(--font-text, inherit);
    font-size: 14px;
    line-height: 1.4;
    color: var(--c-text, #1e201d);
}
.single-food-map__canvas .leaflet-popup-content a,
.arr-map .leaflet-popup-content a {
    color: var(--c-text, #1e201d);
    border-bottom: 1px solid transparent;
    transition: border-color 0.15s ease, color 0.15s ease;
}
.single-food-map__canvas .leaflet-popup-content a:hover,
.arr-map .leaflet-popup-content a:hover {
    color: var(--c-accent, #ef7e15);
    border-bottom-color: var(--c-accent, #ef7e15);
}
.single-food-map__canvas .leaflet-popup-tip,
.arr-map .leaflet-popup-tip { box-shadow: none; }
.single-food-map__canvas .leaflet-control-attribution,
.arr-map .leaflet-control-attribution {
    font-size: 10px;
    background: rgba(255, 255, 255, 0.85);
    padding: 2px 8px;
}
.single-food-map__canvas .leaflet-control-attribution a,
.arr-map .leaflet-control-attribution a { color: var(--c-text-soft, #555); }
.single-food-map__canvas .leaflet-control-zoom,
.arr-map .leaflet-control-zoom {
    border: 0;
    box-shadow: 0 4px 12px -6px rgba(30, 32, 29, 0.25);
    border-radius: 8px;
    overflow: hidden;
}
.single-food-map__canvas .leaflet-control-zoom a,
.arr-map .leaflet-control-zoom a {
    background: #fff;
    color: var(--c-text, #1e201d);
    border: 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    font-weight: 700;
    transition: background 0.12s ease, color 0.12s ease;
}
.single-food-map__canvas .leaflet-control-zoom a:last-child,
.arr-map .leaflet-control-zoom a:last-child { border-bottom: 0; }
.single-food-map__canvas .leaflet-control-zoom a:hover,
.arr-map .leaflet-control-zoom a:hover {
    background: var(--c-accent, #ef7e15);
    color: #fff;
}

/* .arr-map utilise le layout riche #info-bulle-* (cf. map.css). Padding global
   autour du contenu (le layout 44 % + 44 % s'ajuste à la largeur restante). */
.arr-map .leaflet-popup-content {
    margin: 0;
    padding: 0;
    min-width: 320px;
}
.arr-map .leaflet-popup-content-wrapper { padding: 14px; }
.arr-map .leaflet-popup.leaflet-zoom-animated { padding: 6px; }

/* === VUE CARTE (markers Leaflet + OSM) === */
.arr-map {
    display: none;
    /* `isolation: isolate` force un contexte d'empilement propre — TOUS les
       éléments Leaflet (popups z-700, controls z-1000, panes z-200-650)
       restent confinés sous la barre sticky des boutons (z-index 100). */
    position: relative;
    z-index: 0;
    isolation: isolate;
    width: 100%;
    height: min(70vh, 640px);
    min-height: 420px;
    border-radius: 12px;
    overflow: hidden;
    background: #ece9e3;
}
.arr-index__sections.is-view-map .arr-section {
    display: none;
}
.arr-index__sections.is-view-map .arr-map {
    display: block;
}
.arr-map img { max-width: none; }

/* === Préfixe « 77200 (Torcy) – » pour les items Banlieue ===
   Le rendu varie par vue : en grille le préfixe est mis au-dessus du titre
   comme un petit eyebrow. En liste / compact il reste inline avec le titre,
   collé au titre par le séparateur « – ». */
.arr-card__prefix {
    font-weight: 700;
}
.is-view-grid .arr-card--has-prefix .arr-card__title {
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.is-view-grid .arr-card--has-prefix .arr-card__prefix {
    font-family: var(--font-display);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--c-accent, #ef7e15);
    order: -1;
}
.is-view-grid .arr-card--has-prefix .arr-card__sep {
    display: none;
}
.is-view-list .arr-card__prefix,
.is-view-compact .arr-card__prefix {
    color: var(--c-text-soft, #555);
}

/* ==========================================================================
   Bouton « Retour en haut »
   ========================================================================== */
.back-to-top {
    position: fixed;
    right: 24px;
    bottom: 24px;
    z-index: 999;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: none;
    border-radius: 50%;
    background: var(--c-accent, #ef7e15);
    color: #fff;
    cursor: pointer;
    box-shadow: 0 4px 14px rgba(30, 32, 29, 0.28);
    opacity: 0;
    transform: translateY(12px);
    transition: opacity 0.25s ease, transform 0.25s ease, background-color 0.2s ease;
}
.back-to-top.is-visible {
    opacity: 1;
    transform: translateY(0);
}
.back-to-top:hover,
.back-to-top:focus-visible {
    background: var(--c-accent-dark, #fc6911);
}
.back-to-top:focus-visible {
    outline: 2px solid #fff;
    outline-offset: 2px;
}
.back-to-top__icon {
    display: block;
}
@media (max-width: 600px) {
    .back-to-top {
        right: 16px;
        bottom: 16px;
        width: 44px;
        height: 44px;
    }
}
@media (prefers-reduced-motion: reduce) {
    .back-to-top {
        transition: opacity 0.2s ease;
        transform: none;
    }
    .back-to-top.is-visible {
        transform: none;
    }
}

/* ==========================================================================
   Template « Tours LVP » — grille de tours + carte des lieux
   ========================================================================== */
/* Wrapper élargi pour ce template (vs la largeur de lecture 760px). */
.entry--lvp-tours {
    max-width: var(--container-max, 1100px);
}
.entry--lvp-tours .lvp-tours {
    margin: var(--s-2xl, 64px) 0;
}
.lvp-tours__title {
    font-size: 1.4rem;
    font-weight: 700;
    color: var(--c-text, #1e201d);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin: 0 0 var(--s-md, 16px);
}
.lvp-tours__map {
    margin: 0 0 var(--s-lg, 24px);
}
/* Carte OpenStreetMap (Leaflet) */
.lvp-tours__leaflet {
    width: 100%;
    height: 440px;
    border-radius: 14px;
    overflow: hidden;
    border: 1px solid var(--c-border, #ebe7df);
    box-shadow: 0 8px 24px -16px rgba(30, 32, 29, 0.25);
    background: #e8eef0;
    z-index: 0; /* garde la carte sous l'éventuelle barre fixe du site */
}
.lvp-tours__leaflet .leaflet-popup-content {
    font-size: 14px;
    line-height: 1.4;
    margin: 17px;
}
/* Popup tour : image + titre + durée + lien */
.lvp-popup {
    width: 200px;
}
.lvp-popup__img {
    display: block;
    width: 100%;
    height: 110px;
    object-fit: cover;
    border-radius: 8px;
    margin: 0 0 8px;
}
.lvp-popup__title {
    display: block;
    font-size: 14px;
    line-height: 1.25;
    color: #1e201d;
    font-weight: 700;
}
.lvp-popup__duree {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin-top: 6px;
    padding: 3px 9px;
    border-radius: 999px;
    background: #fff5e9;
    color: #c8610a;
    font-size: 12px;
    font-weight: 600;
}
.lvp-popup__duree::before {
    content: "";
    width: 12px;
    height: 12px;
    background-color: currentColor;
    -webkit-mask: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm0 18a8 8 0 1 1 0-16 8 8 0 0 1 0 16zm.5-13H11v6l5.2 3.1.8-1.3-4.5-2.7z'/></svg>") center / contain no-repeat;
    mask: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm0 18a8 8 0 1 1 0-16 8 8 0 0 1 0 16zm.5-13H11v6l5.2 3.1.8-1.3-4.5-2.7z'/></svg>") center / contain no-repeat;
}
.lvp-popup__link {
    display: block;
    margin-top: 8px;
    color: var(--c-accent, #ef7e15);
    font-weight: 600;
    font-size: 13px;
    text-decoration: none;
}
.lvp-popup__link:hover { color: #d96d0d; }
@media (max-width: 600px) {
    .lvp-tours__leaflet { height: 340px; }
}
.lvp-tours__list {
    list-style: none;
    margin: 0 0 var(--s-xl, 40px);
    padding: 0;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 18px;
}
.lvp-tour-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    background: #fff;
    border: 1px solid var(--c-border, #ebe7df);
    border-radius: 12px;
    overflow: hidden;
    text-decoration: none;
    color: inherit;
    box-shadow: 0 8px 22px -16px rgba(30, 32, 29, 0.28);
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}
a.lvp-tour-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 18px 34px -20px rgba(30, 32, 29, 0.42);
    border-color: var(--c-accent, #ef7e15);
}
.lvp-tour-card__media {
    position: relative;
    display: block;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    background: #f4efe5;
}
/* Badge durée — pastille en bas à gauche de l'image */
.lvp-tour-card__duree {
    position: absolute;
    left: 10px;
    bottom: 10px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 10px;
    border-radius: 999px;
    background: rgba(30, 32, 29, 0.82);
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.01em;
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
}
.lvp-tour-card__duree::before {
    content: "";
    width: 13px;
    height: 13px;
    flex-shrink: 0;
    background-color: currentColor;
    -webkit-mask: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm0 18a8 8 0 1 1 0-16 8 8 0 0 1 0 16zm.5-13H11v6l5.2 3.1.8-1.3-4.5-2.7z'/></svg>") center / contain no-repeat;
    mask: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm0 18a8 8 0 1 1 0-16 8 8 0 0 1 0 16zm.5-13H11v6l5.2 3.1.8-1.3-4.5-2.7z'/></svg>") center / contain no-repeat;
}
/* Version sans image : pastille claire dans le corps de carte */
.lvp-tour-card__duree--inline {
    position: static;
    align-self: flex-start;
    background: #fff5e9;
    color: #c8610a;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}
.lvp-tour-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.4s ease;
}
a.lvp-tour-card:hover .lvp-tour-card__media img {
    transform: scale(1.05);
}
.lvp-tour-card__body {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 14px 16px 16px;
    flex: 1;
}
.lvp-tour-card__title {
    font-family: var(--font-display, inherit);
    font-size: 16px;
    line-height: 1.2;
    font-weight: 700;
    color: var(--c-text, #1e201d);
    text-transform: uppercase;
    letter-spacing: 0.02em;
}
.lvp-tour-card__desc {
    font-size: 13.5px;
    line-height: 1.45;
    color: var(--c-text-soft, #5a5a52);
    flex: 1;
}
.lvp-tour-card__cta {
    margin-top: 4px;
    font-weight: 600;
    font-size: 13px;
    color: var(--c-accent, #ef7e15);
}
.lvp-tour-card__cta::after { content: "  \2192"; }
a.lvp-tour-card:hover .lvp-tour-card__cta { color: #d96d0d; }

@media (max-width: 480px) {
    .lvp-tours__list { grid-template-columns: 1fr 1fr; gap: 12px; }
    .lvp-tour-card__body { padding: 10px 12px 12px; }
    .lvp-tour-card__title { font-size: 14px; }
    .lvp-tour-card__desc { display: none; }
}

/* ==========================================================================
   Home — slider « Voyages » (Swiper) — teinte « monde » teal
   ========================================================================== */
.home-voyages {
    --monde: #0e97a7;
    /* Déborde de la colonne (1100px) pour une section plus large, centrée
       sur la fenêtre, jusqu'à 1400px. */
    width: min(1400px, calc(100vw - 40px));
    max-width: none;
    margin-left: 50%;
    transform: translateX(-50%);
    margin-top: var(--s-2xl, 64px);
    margin-bottom: var(--s-2xl, 64px);
}
.home-voyages__title {
    display: flex;
    align-items: center;
    gap: 14px;
    margin: 0 0 var(--s-xl, 40px);
    font-size: clamp(1.3rem, 2.2vw, 1.7rem);
    font-weight: 800;
    letter-spacing: -0.01em;
    color: #1e201d;
}
.home-voyages__title::after {
    content: "";
    flex: 1;
    height: 2px;
    background: linear-gradient(90deg, var(--monde), transparent);
    border-radius: 2px;
}
.home-voyages__swiper { overflow: hidden; }
.home-voyages__card {
    display: block;
    text-decoration: none;
    color: inherit;
}
.home-voyages__media {
    display: block;
    aspect-ratio: 4 / 5;
    border-radius: 14px;
    background: #e6eff0 center / cover no-repeat;
    box-shadow: 0 12px 30px -18px rgba(30, 32, 29, 0.4);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.home-voyages__card:hover .home-voyages__media {
    transform: translateY(-3px);
    box-shadow: 0 18px 34px -18px rgba(14, 151, 167, 0.45);
}
.home-voyages__name {
    display: block;
    margin-top: 12px;
    font-family: var(--font-display, inherit);
    font-size: 15px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0.01em;
    text-transform: uppercase;
    color: #1e201d;
    transition: color 0.2s ease;
}
.home-voyages__card:hover .home-voyages__name { color: var(--monde); }

/* Barre de navigation : flèches + lien carte au centre */
.home-voyages__nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    margin-top: var(--s-lg, 24px);
}
.home-voyages__arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    border: 1px solid rgba(14, 151, 167, 0.35);
    background: #fff;
    color: var(--monde);
    cursor: pointer;
    transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease, opacity 0.2s ease;
}
.home-voyages__arrow svg { width: 20px; height: 20px; }
.home-voyages__arrow:hover {
    background: var(--monde);
    color: #fff;
    transform: translateY(-1px);
}
.home-voyages__arrow.swiper-button-disabled {
    opacity: 0.4;
    cursor: default;
}
.home-voyages__map-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 11px 20px;
    border-radius: 999px;
    background: var(--monde);
    color: #fff;
    text-decoration: none;
    font-weight: 700;
    font-size: 14px;
    letter-spacing: 0.02em;
    box-shadow: 0 10px 22px -12px rgba(14, 151, 167, 0.6);
    transition: background 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}
.home-voyages__map-link svg { width: 17px; height: 17px; }
.home-voyages__map-link:hover {
    background: #0b7d8c;
    transform: translateY(-1px);
    box-shadow: 0 14px 28px -12px rgba(14, 151, 167, 0.7);
}
@media (max-width: 560px) {
    .home-voyages__map-link { font-size: 13px; padding: 10px 15px; }
    .home-voyages__arrow { width: 38px; height: 38px; }
}

/* ==========================================================================
   Articles « Monde » (voyage + musique) — teinte teal
   ========================================================================== */
.entry--monde {
    --c-accent: #0e97a7;
    --c-accent-dark: #0b7d8c;
}
/* Sections : icônes + titres en teal (surcharge les couleurs par catégorie) */
.entry.has-toc.entry--monde .entry-section,
.entry.has-toc.entry--monde .entry-section-title {
    --cat-color: 14, 151, 167;
}
/* Barre de progression de lecture (hors article) */
.reading-progress--monde .reading-progress__bar {
    background: linear-gradient(90deg, #0e97a7 0%, #17b3c4 100%);
}
/* Sommaire : fond teal clair */
.entry--monde .entry-toc {
    background: #eef8f9;
    border-color: #cbe8ec;
}
.entry--monde .entry-toc__label::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%230e97a7'><path d='M3 5h18v2H3zm0 6h12v2H3zm0 6h18v2H3z'/></svg>");
}
.entry--monde .entry-toc__list a:hover {
    color: #0e97a7;
    background: rgba(14, 151, 167, 0.06);
}
.entry--monde .entry-toc__list a.is-active {
    color: #0e97a7;
    background: rgba(14, 151, 167, 0.1);
}
.entry--monde .entry-toc__list a.is-active::before { color: #0e97a7; }
/* Accordéon extras (sauf Instagram qui garde son dégradé de marque) */
.entry--monde .entry-extra:not(.entry-extra--instagram) .entry-extra__visual {
    background: rgba(14, 151, 167, 0.12);
    color: #0e97a7;
}
.entry--monde .entry-extra:not(.entry-extra--instagram) .entry-extra__cta { color: #0e97a7; }
.entry--monde .entry-extra.is-open { border-color: rgba(14, 151, 167, 0.4); }
/* Carte « Le guide » en bas : accent teal */
.entry--monde .entry-map-card__eyebrow { color: #7fe3ee; }
.entry--monde .entry-map-card:hover .entry-map-card__cta { color: #a7ecf4; }
/* Bouton newsletter de l'en-tête */
.entry--monde .entry-header__newsletter {
    background: linear-gradient(135deg, #0e97a7, #3fc2cf);
    box-shadow: 0 10px 22px -12px rgba(14, 151, 167, 0.7);
}
/* « À lire ensuite » (related-posts, rendu après l'article) */
.entry--monde + .related-posts {
    --c-accent: #0e97a7;
    --c-accent-dark: #0b7d8c;
}
.entry--monde + .related-posts .related-posts__title::before,
.entry--monde + .related-posts .related-posts__title::after {
    background: linear-gradient(90deg, transparent, rgba(14, 151, 167, 0.45), transparent);
}
.entry--monde + .related-posts .entry-list-card:hover {
    border-color: rgba(14, 151, 167, 0.4);
}
.entry--monde + .related-posts .entry-list-card--no-thumb .entry-list-card__media {
    background: linear-gradient(135deg, #0e97a7, #3fc2cf);
}
/* Bouton « remonter » dans les contextes monde (footer, hors article) */
.is-monde .back-to-top { background: #0e97a7; }
.is-monde .back-to-top:hover,
.is-monde .back-to-top:focus-visible { background: #0b7d8c; }

/* Archives « Monde » (CPT voyage/musique + taxo destination) : accent teal.
   Tous les accents d'archive utilisent var(--c-accent), il suffit de le poser
   sur le conteneur (sans retinter l'en-tête/pied de page global). */
.is-monde .content--archive,
.is-monde .arr-index {
    --c-accent: #0e97a7;
    --c-accent-dark: #0b7d8c;
}
