/*
Theme Name: City Paris
Theme URI: https://www.city-paris.fr
Author: City Paris
Description: Thème complet du guide City Paris : accueil avec slider, météo, pages article, catégories, recherche, drapeaux de langues (compatible Polylang/WPML).
Version: 1.93
Requires at least: 5.8
Requires PHP: 7.4
Text Domain: city-paris
*/
body{margin:0;background:#f7f5f3}
.screen-reader-text{position:absolute;left:-9999px}
.cp{--red:#e11d2e;--navy:#14213d;--mut:#6b7280;font-family:Georgia,'Times New Roman',serif;color:var(--navy);background:#f7f5f3;min-height:100vh}
.cp *{box-sizing:border-box}.cp a{color:inherit;text-decoration:none}.cp ul{list-style:none;margin:0;padding:0}
.cp-top{display:flex;justify-content:space-between;align-items:center;padding:10px 4%;font:13px system-ui,sans-serif;border-bottom:1px solid #eee;background:#faf8f6}
.cp-top>div span{margin-right:18px}.cp-top nav{display:flex;align-items:center;gap:18px}
.cp-lang{position:relative}.cp-lang button{background:none;border:0;font:inherit;cursor:pointer;padding:0;color:inherit}
.cp-lang ul{display:none;position:absolute;right:0;top:100%;background:#fff;box-shadow:0 4px 14px rgba(0,0,0,.12);border-radius:6px;padding:6px 0;z-index:50;min-width:90px}
.cp-lang:hover ul,.cp-lang:focus-within ul{display:block}.cp-lang li a{display:block;padding:7px 14px}.cp-lang li a:hover{background:#f3f0ed}
.cp-top .soc{display:inline-flex}
.cp-head{display:flex;align-items:center;gap:40px;padding:14px 4%;background:#fff;border-bottom:1px solid #eee}
.cp-logo{display:flex;align-items:center;gap:12px;font-size:34px;font-weight:700}.cp-logo b{color:var(--red)}
.cp-logo small{display:block;font:10px system-ui,sans-serif;letter-spacing:4px;color:var(--mut);font-weight:400}
.custom-logo-link img{max-height:70px;width:auto}
.cp-nav{flex:1}.cp-menu{display:flex;gap:30px;font-size:16px}.cp-menu li{position:relative}
.cp-menu .menu-item-has-children>a:after{content:' ▾';font-size:12px}
.cp-menu .sub-menu{display:none;position:absolute;left:0;top:100%;background:#fff;box-shadow:0 4px 14px rgba(0,0,0,.12);min-width:220px;padding:8px 0;z-index:50}
.cp-menu li:hover>.sub-menu{display:block}.cp-menu .sub-menu a{display:block;padding:8px 18px}
.cp-burger{width:52px;height:52px;border-radius:50%;background:var(--red);color:#fff!important;display:grid;place-items:center;font-size:22px}
.cp-main{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:24px;padding:24px 4%}
.cp-slider{position:relative;min-height:570px;border-radius:6px;overflow:hidden;background:#222}
.cp-slide{position:absolute;inset:0;background-size:cover;background-position:center;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;padding:36px;opacity:0;transition:opacity .6s;pointer-events:none}
.cp-slide.on{opacity:1;pointer-events:auto}
.cp-tag{align-self:flex-start;background:var(--red);padding:6px 12px;border-radius:5px;font:600 12px system-ui,sans-serif;text-transform:uppercase;margin-bottom:14px}
.cp-slide h1{font-size:44px;line-height:1.1;margin:0 0 12px;max-width:600px;color:#fff}
.cp-slide p{margin:0 0 20px;max-width:600px;font-size:16px;color:#fff}
.cp-btn{align-self:flex-start;background:var(--red);padding:14px 22px;border-radius:5px;font:600 15px system-ui,sans-serif;color:#fff}
.cp-arrows{position:absolute;right:28px;bottom:28px;display:flex;gap:12px;z-index:5}
.cp-arrows i{width:48px;height:48px;border:1px solid #fff;border-radius:50%;display:grid;place-items:center;font-style:normal;background:rgba(0,0,0,.3);color:#fff;cursor:pointer}
.cp-dots{position:absolute;right:140px;bottom:46px;display:flex;gap:8px;z-index:5}
.cp-dots i{width:9px;height:9px;border-radius:5px;background:rgba(255,255,255,.6);cursor:pointer}.cp-dots i.on{width:20px;background:var(--red)}
.cp-card{background:#fff;border-radius:8px;border-top:3px solid var(--red);padding:24px;margin-bottom:24px;box-shadow:0 1px 6px rgba(0,0,0,.05)}
.cp-card.w{border-top:3px solid var(--red)}
.cp-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.cp-row h2{margin:0;font-size:24px}
.cp-row a{font:13px system-ui,sans-serif;border-bottom:1px solid #ccc;color:var(--mut)}
.cp-temp{display:flex;align-items:center;gap:20px;font-size:54px;font-weight:700}.cp-temp sup{font-size:18px;font-weight:400}
.cp-hl{font:22px Georgia,serif;margin-left:auto}.cp-hl .hi{color:var(--red)}.cp-hl .lo{color:#3b82f6}
.cp-stats{display:flex;justify-content:space-around;font:14px system-ui,sans-serif;color:var(--mut);padding:14px 0;border-bottom:1px solid #eee}
.cp-days{display:grid;grid-template-columns:repeat(5,1fr);text-align:center;background:#faf8f6;padding:14px 4px;margin-top:14px;font:13px system-ui,sans-serif;border-radius:6px}
.cp-days b{display:block;font-size:17px;margin-top:6px;font-family:Georgia,serif}
.cp-art{display:flex;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid #eee}.cp-art:last-child{border:0}
.cp-art img{width:126px;height:82px;object-fit:cover;border-radius:5px;flex:none}
.cp-art h3{margin:0 0 6px;font-size:16px;font-weight:400;line-height:1.3}.cp-art small{font:13px system-ui,sans-serif;color:var(--mut)}
.cp-une{padding:0 4% 40px}.cp-une h2{margin:0;font-size:26px;display:flex;align-items:center;gap:14px}.cp-une h2:after{content:"";width:46px;height:2px;background:var(--red)}
.cp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.cp-grid .th{height:200px;border-radius:8px;position:relative;background-size:cover;background-position:center}
.cp-grid .th span{position:absolute;left:14px;bottom:-12px;background:#fff;padding:6px 12px;border-radius:6px;font:600 12px system-ui,sans-serif;text-transform:uppercase}
@media(max-width:900px){.cp-main{grid-template-columns:1fr}.cp-top>div{display:none}.cp-top{justify-content:flex-end}.cp-grid{grid-template-columns:1fr}.cp-slide h1{font-size:30px}.cp-slider{min-height:480px}
.cp-head{flex-wrap:wrap;gap:16px;justify-content:space-between}.cp-nav{display:none;order:3;flex-basis:100%}.cp-head.open .cp-nav{display:block}.cp-menu{flex-direction:column;gap:12px}
.cp-menu .sub-menu{display:block;position:static;box-shadow:none;padding-left:14px}}

/* ---------- Page article ---------- */
.cp-wrap{max-width:none;width:100%;margin:0;padding:24px 4%}
.cp-layout{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:32px;align-items:start}
.cp-post{background:#fff;border-radius:8px;padding:32px;box-shadow:0 1px 6px rgba(0,0,0,.05)}
.cp-crumb{font:13px system-ui,sans-serif;color:var(--mut);margin-bottom:14px}.cp-crumb a:hover{color:var(--red)}
.cp-title{font-size:40px;line-height:1.15;margin:0 0 14px;color:var(--navy)}
.cp-meta{display:flex;flex-wrap:wrap;gap:18px;font:14px system-ui,sans-serif;color:var(--mut);margin-bottom:16px}
.cp-share{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font:13px system-ui,sans-serif;margin-bottom:22px}
.cp-share a{border:1px solid #e5e1dc;padding:7px 14px;border-radius:20px}.cp-share a:hover{background:var(--red);border-color:var(--red);color:#fff}
.cp-feat{margin:0 0 22px}.cp-feat img{width:100%;height:auto;border-radius:8px;display:block}
.cp-feat figcaption{font:italic 13px system-ui,sans-serif;color:var(--mut);margin-top:8px}
.cp-content{font-size:18px;line-height:1.75;color:#222}
.cp-content h2{font-size:28px;line-height:1.25;color:var(--navy);margin:38px 0 14px;padding-left:14px;border-left:4px solid var(--red)}
.cp-content h3{font-size:22px;color:var(--navy);margin:28px 0 10px}
.cp-content p{margin:0 0 18px}.cp-content a{color:var(--red);text-decoration:underline}
.cp-content ul,.cp-content ol{margin:0 0 20px 22px}.cp-content ul{list-style:disc}.cp-content ol{list-style:decimal}
.cp-content li{margin-bottom:8px}.cp-content strong{color:var(--navy)}
.cp-content img{max-width:100%;height:auto;border-radius:8px}
.cp-content iframe{width:100%;max-width:100%;min-height:360px;border:0;border-radius:8px}
.cp-content table{width:100%;border-collapse:collapse;display:block;overflow-x:auto}
.cp-content th,.cp-content td{border:1px solid #e5e1dc;padding:10px 12px}.cp-content th{background:#faf8f6}
.cp-content blockquote{border-left:4px solid var(--red);margin:0 0 20px;padding:6px 18px;background:#faf8f6}
.cp-tags{display:flex;flex-wrap:wrap;gap:8px;margin:30px 0 10px;font:13px system-ui,sans-serif}
.cp-tags a{background:#f3f0ed;padding:6px 12px;border-radius:16px}.cp-tags a:hover{background:var(--red);color:#fff}
.cp-related{margin-top:36px}.cp-related h2{margin:0;font-size:24px}
.cp-related .th{height:150px}.cp-related h3{font-size:16px;font-weight:400;margin:22px 0 0;line-height:1.3}
.cp-side{position:static}
@media(max-width:900px){.cp-layout{grid-template-columns:1fr}.cp-post{padding:20px}.cp-title{font-size:30px}.cp-content{font-size:17px}.cp-side{position:static}.cp-related .cp-grid{grid-template-columns:1fr}}

/* ---------- Recherche, listes, pagination, pages ---------- */
.cp-searchbtn{width:52px;height:52px;border-radius:50%;border:1px solid #e5e1dc;background:#fff;font-size:26px;cursor:pointer;color:var(--navy)}
#cp-search{display:none;padding:14px 4%;background:#fff;border-bottom:1px solid #eee}#cp-search.open{display:block}
.cp-searchform{display:flex;gap:10px;max-width:640px;margin:0 auto}
.cp-searchform input{flex:1;padding:12px 16px;border:1px solid #d9d4ce;border-radius:24px;font:16px system-ui,sans-serif}
.cp-searchform button{background:var(--red);color:#fff;border:0;border-radius:24px;padding:0 22px;font:600 15px system-ui,sans-serif;cursor:pointer}
.cp-pagehead{margin-bottom:24px}.cp-pagetitle{font-size:36px;margin:0 0 8px;display:flex;align-items:center;gap:14px}.cp-pagetitle:after{content:"";width:46px;height:2px;background:var(--red)}
.cp-pagehead p{color:var(--mut);font:16px/1.6 system-ui,sans-serif;max-width:760px}
.cp-list{row-gap:34px}.cp-cardlink h3{font-size:19px;font-weight:400;line-height:1.3;margin:24px 0 6px}.cp-cardlink small{font:13px system-ui,sans-serif;color:var(--mut)}
.cp-grid .th{background-color:#e9e4de}
.navigation.pagination{margin:34px 0;text-align:center;font:15px system-ui,sans-serif}
.navigation .page-numbers{display:inline-block;min-width:40px;padding:9px 12px;margin:0 3px;border-radius:20px;background:#fff;border:1px solid #e5e1dc}
.navigation .page-numbers.current,.navigation .page-numbers:hover{background:var(--red);border-color:var(--red);color:#fff}
.cp-narrow{max-width:860px;margin:0 auto}
.cp-comments{margin-top:40px;font:16px/1.6 system-ui,sans-serif}.cp-comments h2,.cp-comments .comment-reply-title{font:700 24px Georgia,serif;color:var(--navy)}
.cp-comments ol{list-style:none;padding:0}.cp-comments li{padding:14px 0;border-bottom:1px solid #eee}
.cp-comments input[type=text],.cp-comments input[type=email],.cp-comments input[type=url],.cp-comments textarea{width:100%;padding:10px 14px;border:1px solid #d9d4ce;border-radius:8px;font:inherit}
.cp-comments .submit{background:var(--red);color:#fff;border:0;border-radius:6px;padding:12px 22px;font-weight:600;cursor:pointer}
.alignleft{float:left;margin:0 20px 10px 0}.alignright{float:right;margin:0 0 10px 20px}.aligncenter{display:block;margin:0 auto}
.wp-caption{max-width:100%}.wp-caption-text{font:italic 13px system-ui,sans-serif;color:var(--mut)}
.cp-side .widget{font:15px/1.6 system-ui,sans-serif}.cp-side .widget ul{list-style:none;padding:0}.cp-side .widget li{padding:6px 0;border-bottom:1px solid #f0ece8}
@media(max-width:900px){.cp-searchbtn{width:44px;height:44px}.cp-pagetitle{font-size:28px}}

/* ---------- Pied de page (clair) ---------- */
.cp-foot{background:#fff;border-top:4px solid var(--red);margin-top:30px}
.cp-fcols{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:48px;padding:36px 0 20px}
.cp-flogo{display:flex;align-items:center;gap:14px}.cp-flogo .custom-logo-link img{max-height:64px;width:auto}
.cp-wordmark{font-size:30px;font-weight:700;line-height:1.1}.cp-wordmark b{color:var(--red)}
.cp-wordmark small{display:block;font:10px system-ui,sans-serif;letter-spacing:4px;color:var(--mut);font-weight:400}
.cp-fbrand p{font:14px/1.7 system-ui,sans-serif;color:#444;margin:16px 0;max-width:460px}
.cp-fsoc{display:flex;gap:10px}.cp-fsoc a{width:40px;height:40px;border-radius:50%;background:#f3f0ed;display:grid;place-items:center}.cp-fsoc a:hover{background:var(--red);color:#fff}
.cp-fcols h4{font:700 13px system-ui,sans-serif;letter-spacing:2px;text-transform:uppercase;margin:0 0 16px;color:var(--navy)}
.cp-flist li{margin:0 0 10px;font:15px system-ui,sans-serif}.cp-flist a:hover,.cp-fnav a:hover{color:var(--red)}
.cp-fbar{border-top:1px solid #eee;font:13px system-ui,sans-serif;color:var(--mut)}
.cp-fbar-in{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;padding:18px 4%}
.cp-fnav{display:flex;flex-wrap:wrap;gap:20px}.cp-fflags{display:flex;gap:10px}
@media(max-width:800px){.cp-fcols{grid-template-columns:1fr 1fr;gap:28px}.cp-fbrand{grid-column:1/-1}.cp-fbar-in{justify-content:center;text-align:center}}

/* ---------- v1.3 ---------- */
.cp-slidelink{position:absolute;inset:0;z-index:1}
.cp-slide>*:not(.cp-slidelink){position:relative;z-index:2;pointer-events:none}
.cp-slide h1 a,.cp-slide .cp-btn{pointer-events:auto}
.cp-hl{display:flex;flex-direction:column;gap:8px;font-size:22px}
.cp-hl .ic{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;margin-right:8px;vertical-align:middle}
.cp-hl .ic svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.cp-hl .hi .ic{background:#fde8ea;color:var(--red)}.cp-hl .lo .ic{background:#e3eeff;color:#3b82f6}
.cp-zoom{display:block;cursor:zoom-in}
.cp-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.88);z-index:99999;display:grid;place-items:center;cursor:zoom-out}
.cp-lightbox img{max-width:94vw;max-height:92vh;border-radius:6px}
.cp-lightbox span{position:absolute;top:14px;right:28px;color:#fff;font-size:44px;line-height:1}

/* ---------- v1.4 : encart Communiquez ---------- */
.cp-promoimg{display:block;border-radius:8px;overflow:hidden;margin-bottom:14px}
.cp-promoimg img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .3s}.cp-promoimg:hover img{transform:scale(1.03)}
.cp-promoph{display:grid;place-items:center;aspect-ratio:4/3;text-align:center;color:#fff;font:600 18px/1.4 Georgia,serif;background:linear-gradient(135deg,var(--navy),#3b4a7a 60%,var(--red))}
.cp-promo p{font:15px/1.6 system-ui,sans-serif;color:#444;margin:0 0 16px}
.cp-promo .cp-btn{display:inline-block}

/* ---------- v1.5 ---------- */
.cp-slider{height:430px;min-height:0}
.cp-slide h1{font-size:38px}
.cp-left{min-width:0}.cp-left .cp-une{padding:34px 0 0}
.cp-une .cp-grid{row-gap:34px}
.cp-post{border-top:3px solid var(--red)}
.cp-brand{display:flex;align-items:center;gap:14px}
.cp-wordmark{font-size:30px;font-weight:700;line-height:1.1;color:var(--navy)}.cp-wordmark b{color:var(--red)}
.cp-head .cp-wordmark{font-size:34px}
.cp-wordmark small{display:block;font:10px system-ui,sans-serif;letter-spacing:4px;color:var(--mut);font-weight:400;margin-top:3px}
.cp-foot .custom-logo-link img{max-height:64px;width:auto}
.cp-promoph{background:linear-gradient(135deg,#fff4ea,#ffe0d2 55%,#ffd0d4);color:var(--navy);flex-direction:column;gap:10px;border:1px solid #f3d9cf}
.cp-promoph{display:flex;align-items:center;justify-content:center}.cp-promoph em{font-style:normal;font-size:44px}
.cp-promo p{margin:0}
@media(max-width:900px){.cp-slider{height:340px}.cp-slide{padding:22px}.cp-slide h1{font-size:26px}.cp-slide p{display:none}.cp-wordmark,.cp-head .cp-wordmark{font-size:24px}.cp-wordmark small{display:none}}

/* ---------- v1.6 ---------- */
.cp-wordmark .tld{font-style:normal;font-weight:400;color:var(--mut)}
.cp-banner{display:block;height:190px;border-radius:8px;overflow:hidden;margin-top:34px;border-top:3px solid var(--red);background:#fff}
.cp-banner img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s}.cp-banner:hover img{transform:scale(1.02)}
.cp-bph{display:flex;align-items:center;justify-content:center;gap:18px;height:100%;padding:0 20px;text-align:center;background:linear-gradient(135deg,#fff4ea,#ffe0d2 55%,#ffd0d4);color:var(--navy);font:600 26px/1.3 Georgia,serif}
.cp-bph em{font-style:normal;font-size:46px}
@media(max-width:900px){.cp-banner{height:140px}.cp-bph{font-size:18px}.cp-bph em{font-size:32px}}

/* ---------- v1.7 : burger masqué sur PC, mobile retravaillé ---------- */
.cp-burger{display:none}.cp-sub{display:none}
@media(max-width:900px){
 .cp-burger{display:grid;width:44px;height:44px;font-size:20px}
 .cp-top{padding:8px 4%}.cp-top nav>a:not(.soc){display:none}.cp-top nav{gap:14px}
 .cp-head{padding:10px 4%;gap:10px;flex-wrap:wrap;justify-content:flex-start}
 .cp-head .cp-brand,.cp-head .cp-logo{flex:1;min-width:0}
 .cp-brand .custom-logo-link img{max-height:46px}.cp-logo svg{width:30px;height:48px}
 .cp-nav{order:3;flex-basis:100%}
 .cp-menu{gap:0}.cp-menu>li{border-top:1px solid #eee}.cp-menu li>a{display:block;padding:13px 4px;font-size:17px}
 .cp-menu .menu-item-has-children>a:after{content:''}
 .cp-menu .sub-menu{display:none;position:static;box-shadow:none;padding:0 0 8px 14px;min-width:0}
 .cp-menu li.open>.sub-menu{display:block}
 .cp-menu li{position:relative}
 .cp-sub{display:block;position:absolute;right:0;top:3px;width:44px;height:44px;border:0;background:none;font-size:18px;color:var(--navy);cursor:pointer}
 .cp-menu li.open>.cp-sub{transform:rotate(180deg)}
 .cp-grid{grid-template-columns:1fr 1fr;gap:16px}.cp-une .cp-grid{row-gap:28px}.cp-grid .th{height:130px}
 .cp-cardlink h3{font-size:16px;margin-top:20px}
 .cp-fcols{grid-template-columns:1fr 1fr;gap:26px 20px;padding:26px 0 10px}
 .cp-fbrand{grid-column:1/-1;text-align:center}.cp-fbrand .cp-brand,.cp-fbrand .cp-logo{justify-content:center}
 .cp-fbrand p{margin:12px auto}.cp-fsoc{justify-content:center}.cp-fcols h4{margin-bottom:10px}
 .cp-fbar-in{flex-direction:column;gap:14px;text-align:center}.cp-fnav{justify-content:center;gap:10px 18px}.cp-fflags{justify-content:center}
 .cp-card{padding:18px}.cp-temp{font-size:44px}
 .cp-post{padding:18px}
}
@media(max-width:560px){.cp-grid{grid-template-columns:1fr}.cp-grid .th{height:190px}.cp-cardlink h3{font-size:18px}}

/* ---------- v1.8 : page météo pleine largeur ---------- */
.cp-meteo-page .cp-narrow{max-width:none;background:none;box-shadow:none;border-top:0;padding:0}
.cp-meteo-page .cp-title{position:absolute;left:-9999px}
.cp-meteo-page .cp-content{font-size:inherit;line-height:1.5}

/* ---------- v1.9 : méga-menu (largeur adaptée au nombre de colonnes) ---------- */
.cp-head{position:relative;z-index:60}
@media(min-width:901px){
 .cp-menu>li.cp-mega{position:relative}
 .cp-menu>li.cp-mega>.sub-menu{display:none;left:0;right:auto;top:100%;width:max-content;min-width:260px;max-width:92vw;padding:24px 30px;border-top:3px solid var(--red);border-radius:0 0 12px 12px;gap:10px 44px;box-shadow:0 14px 30px rgba(20,33,61,.16);margin-top:0}
 .cp-menu>li.cp-mega:hover>.sub-menu,.cp-menu>li.cp-mega:focus-within>.sub-menu{display:flex;align-items:flex-start}
 .cp-menu>li.cp-mega:nth-last-child(-n+2)>.sub-menu{left:auto;right:0}
 .cp-menu>li.cp-mega>.sub-menu:before{content:"";position:absolute;left:0;right:0;top:-40px;height:40px}
 .cp-mega>.sub-menu>li{min-width:190px}
 .cp-mega>.sub-menu>li>a{display:block;padding:0 0 8px;margin-bottom:8px;border-bottom:2px solid #f0ece8;font:700 13px system-ui,sans-serif;letter-spacing:1.5px;text-transform:uppercase;color:var(--red);white-space:nowrap}
 .cp-mega>.sub-menu>li>a:after{content:""!important}
 .cp-mega .sub-menu .sub-menu{display:block;position:static;box-shadow:none;padding:0;min-width:0;border:0}
 .cp-mega .sub-menu .sub-menu a{padding:6px 0;font:15px system-ui,sans-serif;white-space:nowrap}.cp-mega .sub-menu .sub-menu a:hover{color:var(--red)}
 .cp-menu>li.cp-mega>a:after{content:' ▾';font-size:12px}
}

/* ---------- v1.9.3 : menu des langues au premier plan + encart Booking ---------- */
.cp-top{position:relative;z-index:80}
.cp-lang ul{z-index:90;min-width:100px;padding:6px 0}.cp-lang li a{display:flex;align-items:center;gap:8px;white-space:nowrap}

/* ---------- v1.10 : encart Booking ---------- */
.cp-bkcard{padding:14px}
.cp-bkvis{display:block;border-radius:12px;overflow:hidden;margin-bottom:14px}
.cp-bkvis img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .3s}.cp-bkvis:hover img{transform:scale(1.03)}
.cp-bkph{display:flex;flex-direction:column;align-items:center;gap:6px;padding:24px 20px 26px;text-align:center;color:#fff;background:radial-gradient(circle at 88% 6%,rgba(255,210,77,.38),transparent 42%),radial-gradient(circle at 8% 100%,rgba(255,255,255,.14),transparent 45%),linear-gradient(145deg,#002a6e,#0050c8 65%,#2f80ed)}
.cp-bkrib{background:rgba(255,255,255,.16);padding:5px 14px;border-radius:20px;font:600 13px system-ui,sans-serif;letter-spacing:.5px}
.cp-bkph b{font:700 78px/1 Georgia,serif;color:#ffd24d;text-shadow:0 3px 14px rgba(0,0,0,.3);margin-top:8px}
.cp-bkph i{font:600 19px system-ui,sans-serif;font-style:normal}
.cp-bkbadge{background:#2e9e5b;color:#fff;padding:7px 16px;border-radius:20px;font:700 14px system-ui,sans-serif;letter-spacing:.3px;box-shadow:0 2px 8px rgba(0,0,0,.25);margin-top:4px}
.cp-bkph u{text-decoration:none;margin-top:14px;background:#ffb700;color:#14213d;padding:12px 26px;border-radius:8px;font:700 15px system-ui,sans-serif;box-shadow:0 4px 12px rgba(0,0,0,.28);transition:transform .15s}
.cp-bkvis:hover u{transform:translateY(-2px)}
.cp-bkcard p{margin:0 6px 6px;font:15px/1.6 system-ui,sans-serif;color:#444;text-align:center}

/* v1.13 – partage en icônes */
.cp-share a,.cp-share button{width:40px;height:40px;padding:0;border-radius:50%;display:inline-grid;place-items:center;border:1px solid #e5e1dc;background:#fff;color:var(--navy);cursor:pointer;transition:.15s}
.cp-share a,.cp-share button{color:var(--navy)}.cp-share svg{width:19px;height:19px;fill:currentColor}
.cp-share a:hover,.cp-share button:hover{background:var(--red);border-color:var(--red);color:#fff;transform:translateY(-2px)}
.cp-share .s-cp.ok{background:var(--navy);border-color:var(--navy);color:#fff}

/* v1.14 – boutons et formulaires aux couleurs du site */
.cp-content button:not(.s-cp),.cp-content input[type=submit],.cp-content input[type=button],.cp-content .button,.cp-content .wp-block-button__link,.cp-content .wpcf7-submit,.cp-content .wpforms-submit,.cp-content .forminator-button,.cp-content .ff-btn-submit,.cp-content .nf-form-content input[type=button]{background:var(--red)!important;color:#fff!important;border:0!important;border-radius:6px!important;padding:14px 26px!important;font:600 15px system-ui,sans-serif!important;cursor:pointer;width:auto;min-width:200px;box-shadow:none;transition:background .15s,transform .15s}
.cp-content button:not(.s-cp):hover,.cp-content input[type=submit]:hover,.cp-content input[type=button]:hover,.cp-content .button:hover,.cp-content .wp-block-button__link:hover,.cp-content .wpcf7-submit:hover,.cp-content .wpforms-submit:hover{background:var(--navy)!important;transform:translateY(-1px)}
.cp-content input[type=text],.cp-content input[type=email],.cp-content input[type=tel],.cp-content input[type=url],.cp-content input[type=number],.cp-content select,.cp-content textarea{width:100%;max-width:100%;padding:11px 14px;border:1px solid #d9d4ce;border-radius:8px;font:inherit;background:#fff}
.cp-content input:focus,.cp-content select:focus,.cp-content textarea:focus{outline:0;border-color:var(--red);box-shadow:0 0 0 3px rgba(225,29,46,.15)}
.cp-content label{font:600 14px system-ui,sans-serif;color:var(--navy)}

/* v1.15 – publications similaires (YARPP, Contextual Related Posts, Jetpack, Related Posts) en grille du thème */
.cp-content .yarpp-related,.cp-content .crp_related,.cp-content #jp-relatedposts,.cp-content .rpwe-block,.cp-content .related-posts{margin:40px 0 0;clear:both}
.cp-content .yarpp-related h3,.cp-content .yarpp-related h2,.cp-content .crp_related h3,.cp-content .crp_related h2,.cp-content #jp-relatedposts h3{font-size:24px;text-decoration:none!important;border:0;margin:0 0 18px;display:flex;align-items:center;gap:14px;color:var(--navy)}
.cp-content .yarpp-related h3:after,.cp-content .yarpp-related h2:after,.cp-content .crp_related h3:after,.cp-content .crp_related h2:after{content:"";width:46px;height:2px;background:var(--red)}
.cp-content .yarpp-thumbnails-horizontal,.cp-content .crp_related ul,.cp-content .related-posts-list{display:grid!important;grid-template-columns:repeat(3,1fr);gap:20px;list-style:none;margin:0!important;padding:0!important}
.cp-content .yarpp-thumbnail,.cp-content .crp_related li{display:block!important;width:auto!important;height:auto!important;margin:0!important;padding:0!important;background:#fff;border:0!important;border-top:3px solid var(--red)!important;border-radius:8px;overflow:hidden;box-shadow:0 1px 6px rgba(0,0,0,.06);text-decoration:none}
.cp-content .yarpp-thumbnail a,.cp-content .crp_related li a{display:block;text-decoration:none!important}
.cp-content .yarpp-thumbnail img,.cp-content .crp_related li img{width:100%!important;height:180px!important;object-fit:cover;border-radius:0!important;display:block;margin:0!important}
.cp-content .yarpp-thumbnail-title,.cp-content .crp_related .crp_title{display:block!important;position:static!important;max-width:none!important;width:auto!important;height:auto!important;padding:12px 14px 14px!important;margin:0!important;font:600 16px/1.35 Georgia,serif!important;color:var(--navy)!important;text-decoration:none!important;background:none!important}
.cp-content .yarpp-thumbnail:hover .yarpp-thumbnail-title,.cp-content .crp_related li:hover .crp_title{color:var(--red)!important}
@media(max-width:900px){.cp-content .yarpp-thumbnails-horizontal,.cp-content .crp_related ul,.cp-content .related-posts-list{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.cp-content .yarpp-thumbnails-horizontal,.cp-content .crp_related ul,.cp-content .related-posts-list{grid-template-columns:1fr}}

/* v1.16 – page météo pleine largeur */
.cp-layout.cp-nosidebar{grid-template-columns:minmax(0,1fr)}
.cp-meteo-page .cp-share,.cp-meteo-page .cp-meta{display:none}

/* v1.17 – plan des arrondissements */
.cp-left .cp-arr{padding:34px 0 0}
.cp-arr h2{margin:0;font-size:26px;display:flex;align-items:center;gap:14px}.cp-arr h2:after{content:"";width:46px;height:2px;background:var(--red)}
.cp-arrhint{margin:8px 0 14px;font:14px system-ui,sans-serif;color:var(--mut)}
.cp-arrbox{background:#fff;border-top:3px solid var(--red);border-radius:8px;padding:18px;box-shadow:0 1px 6px rgba(0,0,0,.06)}
.cpa-svg{display:block;width:100%;height:auto}
.cpa{cursor:pointer;outline:none}
.cpa path{fill:#e11d2e;stroke:#fff;stroke-width:3;stroke-linejoin:round;transition:fill .18s}
.cpa text{fill:#fff;font-family:Georgia,'Times New Roman',serif;font-weight:700;text-anchor:middle;dominant-baseline:central;pointer-events:none}
.cpa:hover path,.cpa:focus path{fill:#14213d}
.cpa .cpa-b{fill:#f1a9b0}.cpa:hover .cpa-b,.cpa:focus .cpa-b{fill:#8b96b2}
.cpa-seine{fill:none;stroke:#8fc3f2;stroke-width:6;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
@media(max-width:560px){.cp-arrbox{padding:10px}.cpa text:not(.s){font-size:50px}.cpa text.s{font-size:42px}}

/* v1.18 – image alignée à gauche dans le texte */
.cp-content img.alignleft,.cp-content .alignleft img{border-radius:8px}
.cp-content img.alignleft{float:left;margin:4px 26px 14px 0;max-width:42%;height:auto}
.cp-content h2{clear:none}
@media(max-width:600px){.cp-content img.alignleft{float:none;display:block;max-width:100%;margin:0 0 16px}}

/* v1.19 – image de tête des pages arrondissement (image mise en avant, alignée à gauche) */
.cp-content .cp-arrimg{float:left;margin:4px 26px 14px 0;max-width:42%}.cp-content .cp-arrimg img{display:block;width:100%;height:auto;border-radius:8px}
@media(max-width:600px){.cp-content .cp-arrimg{float:none;max-width:100%;margin:0 0 16px}}

/* v1.33 — menu : une seule colonne étroite, alignée à gauche sous son parent */
@media(min-width:901px){
.cp-menu>li.cp-mega{position:relative!important}
.cp-menu>li.cp-mega>.sub-menu,.cp-menu>li.cp-mega:nth-last-child(-n+2)>.sub-menu{left:0!important;right:auto!important;width:290px!important;min-width:0!important;max-width:calc(100vw - 24px)!important;padding:10px 0 12px!important;gap:0!important;max-height:76vh;overflow-y:auto;text-align:left}
.cp-menu>li.cp-mega:hover>.sub-menu,.cp-menu>li.cp-mega:focus-within>.sub-menu{display:flex!important;flex-direction:column!important;align-items:stretch!important}
.cp-mega>.sub-menu>li{min-width:0!important;width:100%}
.cp-mega>.sub-menu>li>a{padding:12px 22px 6px!important;margin:0!important;border:0!important;font-size:12px!important;white-space:normal!important;text-align:left}
.cp-mega>.sub-menu>li+li>a{border-top:1px solid #f0ece8!important;margin-top:6px!important}
.cp-mega .sub-menu .sub-menu{display:block!important;position:static!important;width:auto!important;max-height:none!important;overflow:visible!important;padding:0!important;margin:0!important;box-shadow:none!important}
.cp-mega .sub-menu .sub-menu a{display:block;padding:7px 22px 7px 34px!important;white-space:normal!important;text-align:left}
.cp-mega .sub-menu .sub-menu a:hover{background:#fdf3f4;color:var(--red)}
}

/* v1.34 */
.cp-bkvis img.cp-bkimg{aspect-ratio:auto;height:auto;object-fit:contain}

/* v1.36 */
.cp-bkcard .cp-bkvis{margin-bottom:0}

/* v1.38 */
.cp-promoimg img.cp-bkimg{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;border-radius:12px}

/* v1.42 — menus déroulants plus beaux (bureau) */
@media(min-width:901px){
 .cp-menu>li>a{position:relative;display:block;padding:10px 2px;font-weight:600;transition:color .2s}
 .cp-menu>li>a:before{content:"";position:absolute;left:0;right:0;bottom:2px;height:2px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .25s}
 .cp-menu>li:hover>a,.cp-menu>li:focus-within>a{color:var(--red)}
 .cp-menu>li:hover>a:before,.cp-menu>li:focus-within>a:before{transform:scaleX(1)}
 .cp-menu>li.menu-item-has-children>a:after{display:inline-block;margin-left:5px;font-size:10px;transition:transform .25s}
 .cp-menu>li.menu-item-has-children:hover>a:after{transform:rotate(180deg)}
 .cp-menu>li:not(.cp-mega)>.sub-menu{display:block!important;visibility:hidden;opacity:0;transform:translateY(8px);transition:opacity .22s,transform .22s,visibility .22s;left:-14px;top:100%;margin-top:6px;min-width:250px;padding:8px;background:#fff;border:1px solid #f0e8e4;border-top:3px solid var(--red);border-radius:0 0 14px 14px;box-shadow:0 18px 40px rgba(20,33,61,.18)}
 .cp-menu>li:not(.cp-mega)>.sub-menu:before{content:"";position:absolute;left:0;right:0;top:-14px;height:14px}
 .cp-menu>li:not(.cp-mega):hover>.sub-menu,.cp-menu>li:not(.cp-mega):focus-within>.sub-menu{visibility:visible;opacity:1;transform:none}
 .cp-menu>li:not(.cp-mega)>.sub-menu>li>a{display:block;padding:10px 16px;border-radius:9px;font:500 15px system-ui,sans-serif;color:#222;white-space:nowrap;transition:background .15s,color .15s,padding .15s}
 .cp-menu>li:not(.cp-mega)>.sub-menu>li>a:hover{background:#fdf0f1;color:var(--red);padding-left:22px}
 .cp-menu>li.cp-cols>.sub-menu{display:grid!important;grid-template-columns:repeat(2,minmax(190px,1fr));gap:2px 8px;min-width:420px}
 .cp-menu>li:nth-last-child(-n+2)>.sub-menu{left:auto;right:-14px}
}

/* ---------- v1.50 : menu mobile — le sous-menu s'ouvre ET se referme (le :hover collant du tactile ne le force plus ouvert) ---------- */
@media(max-width:900px){
 .cp-menu li:hover>.sub-menu,.cp-menu li:focus-within>.sub-menu,.cp-menu>li:hover>.sub-menu,.cp-menu>li.cp-mega:hover>.sub-menu,.cp-menu>li.cp-mega:focus-within>.sub-menu{display:none!important;visibility:visible;opacity:1;transform:none}
 .cp-menu li.open>.sub-menu,.cp-menu>li.open>.sub-menu,.cp-menu>li.cp-mega.open>.sub-menu{display:block!important;position:static;visibility:visible;opacity:1;transform:none;box-shadow:none;border:0;width:auto;max-width:none}
 .cp-menu>li.menu-item-has-children>a{padding-right:52px}
 .cp-menu li.open>.cp-sub{transform:rotate(180deg)}
 .cp-menu>li>a:before{display:none}
}

/* ---------- v1.50 : page « Où dormir » (articles guide hôtels) ---------- */
.cps{--n:#14213d;--r:#e11d2e;--g:#6b6560;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#2b2b2b}
.cps *{box-sizing:border-box}
.cps h2,.cps h3{text-decoration:none;border:0}
.cps .cps-hero{position:relative;overflow:hidden;border-radius:18px;padding:34px 32px;margin:0 0 34px;color:#fff;background:radial-gradient(circle at 92% 8%,rgba(255,210,77,.35),transparent 40%),radial-gradient(circle at 4% 100%,rgba(225,29,46,.55),transparent 45%),linear-gradient(135deg,#14213d,#223a6b)}
.cps .cps-lead{margin:0 0 20px;font-size:19px;line-height:1.6;max-width:760px;color:#fff}
.cps .cps-chips{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin:0;padding:0}
.cps .cps-chips li{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.28);padding:7px 16px;border-radius:30px;font-size:14px;font-weight:600;letter-spacing:.2px;margin:0}
.cps h2.cps-h{display:flex;align-items:center;gap:14px;font-size:26px;line-height:1.25;color:var(--n);margin:44px 0 20px}
.cps h2.cps-h:after{content:"";flex:1;height:2px;background:linear-gradient(90deg,var(--r),transparent)}
.cps .cps-picks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.cps .cps-pick{background:#fff;border:1px solid #eee7e1;border-top:4px solid var(--r);border-radius:14px;padding:20px 18px;box-shadow:0 6px 18px rgba(20,33,61,.07);display:flex;flex-direction:column}
.cps .cps-ic{font-size:30px;line-height:1;margin-bottom:8px}
.cps .cps-pick h3{margin:0 0 6px;font-size:18px;color:var(--n)}
.cps .cps-pick p{margin:0 0 14px;font-size:15px;line-height:1.5;color:var(--g);flex:1}
.cps .cps-pick a{font-weight:700;font-size:15px;color:var(--r);text-decoration:none}
.cps .cps-pick a:hover{text-decoration:underline}
.cps .cps-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.cps .cps-card{background:#fff;border:1px solid #eee7e1;border-radius:16px;padding:22px;box-shadow:0 8px 22px rgba(20,33,61,.07);transition:transform .18s,box-shadow .18s;display:flex;flex-direction:column}
.cps .cps-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(20,33,61,.13)}
.cps .cps-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.cps .cps-arr{background:#fdecee;color:var(--r);font-weight:700;font-size:13px;padding:4px 12px;border-radius:20px}
.cps .cps-bud{font-weight:800;font-size:15px;color:#2e9e5b;letter-spacing:1px}
.cps .cps-card h3{margin:0 0 6px;font-size:22px;color:var(--n)}
.cps .cps-card p{margin:0 0 12px;font-size:15.5px;line-height:1.55;color:#444}
.cps .cps-card dl{margin:0 0 16px;display:grid;grid-template-columns:auto 1fr;gap:6px 14px;font-size:14px}
.cps .cps-card dt{color:var(--g);font-weight:600}.cps .cps-card dd{margin:0;color:var(--n);font-weight:600}
.cps a.cps-btn{display:block;text-align:center;background:var(--r);color:#fff!important;font-weight:700;font-size:15px;padding:12px 18px;border-radius:10px;text-decoration:none!important;transition:background .15s,transform .15s;margin-top:auto}
.cps a.cps-btn:hover{background:var(--n);transform:translateY(-1px)}
.cps a.cps-sub{display:block;text-align:center;margin-top:10px;font-size:14px;font-weight:600;color:var(--n);text-decoration:none}
.cps a.cps-sub:hover{color:var(--r)}
.cps .cps-tw{overflow-x:auto;border:1px solid #eee7e1;border-radius:14px}
.cps table.cps-t{width:100%;border-collapse:collapse;min-width:680px;font-size:14.5px;margin:0}
.cps .cps-t th{background:var(--n);color:#fff;text-align:left;padding:12px 14px;font-size:13px;letter-spacing:.6px;text-transform:uppercase;border:0}
.cps .cps-t td{padding:12px 14px;border:0;border-top:1px solid #f0ebe5;vertical-align:top;line-height:1.45}
.cps .cps-t tbody tr:nth-child(even){background:#faf7f4}
.cps .cps-t small{color:var(--g)}.cps .cps-t td.cps-b{font-weight:800;color:#2e9e5b;white-space:nowrap}
.cps .cps-note{font-size:13px;color:var(--g);margin:10px 4px 0}
.cps ol.cps-tips{list-style:none;counter-reset:t;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0;padding:0}
.cps .cps-tips li{counter-increment:t;position:relative;background:#faf7f4;border-radius:12px;padding:16px 16px 16px 62px;margin:0;display:flex;flex-direction:column;gap:3px}
.cps .cps-tips li:before{content:counter(t);position:absolute;left:16px;top:16px;width:32px;height:32px;border-radius:50%;background:var(--r);color:#fff;font-weight:800;display:grid;place-items:center}
.cps .cps-tips b{color:var(--n);font-size:16px}.cps .cps-tips span{font-size:14.5px;line-height:1.5;color:#555}
.cps .cps-cta{margin:46px 0 10px;border-radius:18px;padding:34px 30px;text-align:center;color:#fff;background:radial-gradient(circle at 15% 0%,rgba(255,210,77,.25),transparent 45%),linear-gradient(135deg,#e11d2e,#a50f20)}
.cps .cps-cta h2{margin:0 0 8px;font-size:30px;color:#fff;border:0;text-decoration:none}
.cps .cps-cta p{margin:0 0 20px;font-size:17px;color:#fff;opacity:.95}
.cps .cps-cta>div{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
.cps .cps-cta a.cps-btn{display:inline-block;margin:0;background:#fff;color:var(--n)!important;padding:13px 24px}
.cps .cps-cta a.cps-btn:hover{background:var(--n);color:#fff!important}
.cps .cps-cta a.cps-yel{background:#ffb700;color:var(--n)!important}
.cps .cps-cta a.cps-ghost{background:rgba(255,255,255,.16);color:#fff!important;border:1px solid rgba(255,255,255,.5)}
.cps .cps-faq{display:grid;gap:12px}
.cps .cps-q{border:1px solid #eee7e1;border-left:4px solid var(--r);border-radius:10px;padding:16px 20px;background:#fff}
.cps .cps-q h3{margin:0 0 6px;font-size:18px;color:var(--n)}.cps .cps-q p{margin:0;font-size:15.5px;line-height:1.6;color:#444}
.cps .cps-disc{margin:26px 0 0;font-size:12.5px;line-height:1.5;color:var(--g);text-align:center}
@media(max-width:900px){.cps .cps-picks{grid-template-columns:repeat(2,minmax(0,1fr))}.cps .cps-grid,.cps ol.cps-tips{grid-template-columns:1fr}.cps .cps-hero{padding:26px 20px}.cps .cps-lead{font-size:17px}.cps h2.cps-h{font-size:22px}.cps .cps-cta{padding:26px 18px}.cps .cps-cta h2{font-size:24px}}
@media(max-width:520px){.cps .cps-picks{grid-template-columns:1fr}}

/* ---------- v1.51 : page offre Booking (go-booking) — clair, sans cadre, couleurs City-Paris ---------- */
.cpo{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;max-width:720px;margin:0 auto;text-align:center;color:#14213d}
.cpo *{box-sizing:border-box}
.cpo .cpo-brand{display:inline-flex;align-items:center;gap:8px;font-weight:800;letter-spacing:1.6px;font-size:14px;margin:0 0 16px;color:#14213d}
.cpo .cpo-brand i{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#2e9e5b;color:#fff;font-style:normal;font-size:13px}
.cpo .cpo-badge{display:inline-block;color:#e11d2e;background:#fdecee;padding:7px 18px;border-radius:30px;font-weight:700;font-size:13px;letter-spacing:1.2px;margin:0 0 20px}
.cpo h2.cpo-t{margin:0 0 12px;border:0;text-decoration:none;font:800 34px/1.25 Georgia,serif;color:#14213d}
.cpo h2.cpo-t b{color:#e11d2e;font-size:1.2em}
.cpo .cpo-sub{margin:0;font-size:20px;font-weight:700;color:#14213d}
.cpo .cpo-p{margin:14px auto 28px;max-width:540px;font-size:17px;line-height:1.65;color:#555}
.cpo a.cpo-btn{display:inline-block;background:#e11d2e;color:#fff!important;font-weight:800;font-size:18px;padding:17px 34px;border-radius:12px;text-decoration:none!important;box-shadow:0 8px 20px rgba(225,29,46,.28);transition:transform .15s,background .15s}
.cpo a.cpo-btn:hover{background:#14213d;transform:translateY(-2px)}
.cpo .cpo-ok{margin:18px 0 0;font-size:14.5px;font-weight:600;color:#2e9e5b}
.cpo .cpo-ok:before{content:"✓ ";font-weight:800}
.cpo .cpo-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin:44px 0 0;padding:34px 0 0;border-top:1px solid #eee7e1;list-style:none;text-align:left}
.cpo .cpo-steps li{margin:0;padding:0}
.cpo .cpo-steps b{display:block;color:#14213d;font-size:16px;margin-bottom:6px}
.cpo .cpo-steps b:before{content:"";display:block;width:34px;height:3px;background:#e11d2e;border-radius:2px;margin-bottom:10px}
.cpo .cpo-steps span{font-size:15px;line-height:1.55;color:#666}
.cpo .cpo-note{margin:30px 0 0;font-size:13px;line-height:1.5;color:#8a847e}
@media(max-width:700px){.cpo h2.cpo-t{font-size:28px}.cpo .cpo-sub{font-size:18px}.cpo a.cpo-btn{display:block;font-size:17px;padding:16px}.cpo .cpo-steps{grid-template-columns:1fr;gap:20px}}

/* ---------- v1.70 : menu mobile sur toute la largeur de l'écran ---------- */
@media(max-width:900px){
 .cp-head .cp-nav{margin-left:-4vw;margin-right:-4vw;flex-basis:calc(100% + 8vw);width:calc(100% + 8vw);max-width:100vw}
 .cp-head .cp-menu{width:100%}
 .cp-head .cp-menu>li{border-top:1px solid #eee}
 .cp-head .cp-menu>li>a{padding:15px 4vw;font-size:18px}
 .cp-head .cp-menu>li.menu-item-has-children>a{padding-right:64px}
 .cp-head .cp-menu .cp-sub{right:2vw;top:5px}
 .cp-head .cp-menu .sub-menu{padding:0 0 8px 0;background:#faf8f6;width:100%}
 .cp-head .cp-menu .sub-menu a{padding:12px 4vw 12px calc(4vw + 14px)}
 .cp-head .cp-menu .sub-menu .sub-menu a{padding-left:calc(4vw + 28px)}
}

/* ---------- v1.71 : « Une erreur à signaler ? » (fil d'Ariane) + page de signalement ---------- */
.cp-crumb{display:flex;justify-content:space-between;align-items:baseline;gap:14px;flex-wrap:wrap}
.cp-crumb .cp-reportlink{margin-left:auto;font-size:12px;color:#9a948e;text-decoration:underline;text-decoration-color:#ddd6cf;text-underline-offset:3px;white-space:nowrap}
.cp-crumb .cp-reportlink:hover{color:var(--red);text-decoration-color:var(--red)}
.cp-rep{max-width:680px;font-family:system-ui,-apple-system,"Segoe UI",sans-serif}
.cp-rep-intro{font-size:17px;line-height:1.65;color:#444;margin:0 0 20px}
.cp-rep-form label{display:block;font-weight:700;font-size:14px;color:#14213d;margin:18px 0 6px}
.cp-rep-url{background:#faf7f4;border:1px solid #eee7e1;border-radius:10px;padding:11px 14px;font-size:14px;word-break:break-all}
.cp-rep-url a{color:#14213d;text-decoration:underline;text-decoration-color:#14213d}
.cp-rep-form select,.cp-rep-form textarea,.cp-rep-form input[type=email]{width:100%;box-sizing:border-box;border:1px solid #d9d2cb;border-radius:10px;padding:12px 14px;font:16px system-ui,sans-serif;background:#fff;color:#222}
.cp-rep-form textarea{resize:vertical;min-height:140px}
.cp-rep-form .cp-rep-btn{margin-top:22px;background:#e11d2e!important;color:#fff!important;border:0!important;border-radius:10px!important;padding:14px 26px!important;font:700 16px system-ui,sans-serif!important;cursor:pointer;width:auto!important}
.cp-rep-form .cp-rep-btn:hover{background:#c8101f!important}
.cp-rep-hp{position:absolute!important;left:-9999px!important;height:0;overflow:hidden}
.cp-rep-msg{padding:13px 16px;border-radius:10px;font-size:15px;margin:0 0 18px}.cp-rep-msg.ok{background:#eaf7ee;color:#17623a}.cp-rep-msg.ko{background:#fdecee;color:#a1121f}
.cp-rep-back{color:#14213d;font-weight:600;text-decoration:underline}
.cp-rep-form .cp-rep-ans{max-width:140px}
/* lien « Une erreur à signaler ? » en rouge (discret : petit) */
.cp-crumb .cp-reportlink{color:var(--red)!important;text-decoration-color:rgba(225,29,46,.4)!important}
.cp-crumb .cp-reportlink:hover{color:#b3101e!important;text-decoration-color:#b3101e!important}

/* Bandeau Booking dans l'article (coupon) */
.cp-content a.cp-bk{position:relative;display:flex;align-items:stretch;margin:30px 0;border:1.5px solid var(--red);border-radius:14px;background:#fff;box-shadow:0 8px 22px rgba(225,29,46,.12);text-decoration:none;color:var(--navy);transition:transform .2s,box-shadow .2s}
.cp-content a.cp-bk:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(225,29,46,.2)}
.cp-bk *{text-decoration:none!important}
.cp-bk .l{flex:none;width:150px;border-radius:12px 0 0 12px;background:radial-gradient(circle at 15% 10%,rgba(255,255,255,.22),transparent 45%),repeating-linear-gradient(135deg,rgba(255,255,255,.05) 0 10px,transparent 10px 20px),linear-gradient(150deg,#f0303f,#b80f1d);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:18px 10px;position:relative}
.cp-bk .l svg{width:26px;height:26px;margin-bottom:8px;opacity:.9}
.cp-bk .l b{font:700 40px/1 Georgia,serif;color:#fff}
.cp-bk .l i{display:block;width:26px;height:2px;background:rgba(255,255,255,.55);margin:10px 0 0;border-radius:2px}
.cp-bk .l small{font:700 10.5px/1 system-ui,sans-serif;letter-spacing:.16em;margin-top:8px;color:#fff}
.cp-bk .l::before,.cp-bk .l::after{content:"";position:absolute;right:-11px;width:20px;height:20px;border-radius:50%;background:#fff;border:1.5px solid var(--red);z-index:2}
.cp-bk .l::before{top:-11px;clip-path:inset(50% 0 0 0)}
.cp-bk .l::after{bottom:-11px;clip-path:inset(0 0 50% 0)}
.cp-bk .m{flex:1;min-width:0;padding:20px 24px 20px 28px;border-left:2px dashed #f0b3b9;display:grid;grid-template-columns:1fr auto;column-gap:28px;align-items:center}
.cp-bk .m>small,.cp-bk .m>strong,.cp-bk .m>ul{grid-column:1}
.cp-bk .m small{font:700 11px/1 system-ui,sans-serif;letter-spacing:.14em;color:var(--red);text-transform:uppercase;margin-bottom:8px}
.cp-bk .m strong{font:700 21px/1.25 Georgia,serif;color:var(--navy)}
.cp-bk .m ul{list-style:none;display:flex;flex-wrap:wrap;gap:6px 16px;margin:10px 0 0;padding:0;font:600 13px/1 system-ui,sans-serif;color:var(--navy)}
.cp-bk .m li{margin:0;padding:0}.cp-bk .m li:before{content:'✓';color:var(--red);font-weight:800;margin-right:6px}
.cp-bk .m .b{grid-column:2;grid-row:1/span 3;align-self:center;justify-self:end;margin:0;background:var(--red);color:#fff;font:700 14.5px/1 system-ui,sans-serif;padding:12px 20px;border-radius:8px;box-shadow:0 3px 8px rgba(225,29,46,.3)}
.cp-bk .m .b span{display:inline-block;transition:transform .2s}
.cp-content a.cp-bk:hover .b{background:#c4101f}.cp-content a.cp-bk:hover .b span{transform:translateX(4px)}
@media(max-width:600px){.cp-content a.cp-bk{margin:24px 0}.cp-bk .l{width:96px;padding:14px 6px}.cp-bk .l svg{width:22px;height:22px;margin-bottom:6px}.cp-bk .l b{font-size:27px}.cp-bk .l small{font-size:9px;letter-spacing:.1em}.cp-bk .m{padding:14px 14px 14px 18px}.cp-bk .m strong{font-size:16.5px}.cp-bk .m ul{font-size:12.5px}.cp-bk .m{grid-template-columns:1fr}.cp-bk .m .b{grid-column:1;grid-row:auto;justify-self:stretch;text-align:center;margin-top:12px}}

@media(min-width:901px){.cp-menu{flex-wrap:wrap;gap:8px 24px}}

/* Mention discrète « Article mis en valeur » */
.cp-meta .cp-flag{display:inline-block;margin-left:12px;padding:2px 10px;border:1px solid #e5e7eb;border-radius:99px;font:12px/1.6 system-ui,sans-serif;color:#6b7280;text-decoration:none}
.cp-meta .cp-flag:hover{color:#e11d2e;border-color:#e11d2e}
