/* Cintu PIC - Affichage public. Tout est scope sous .pic-pub */
.pic-pub{--p-rasp:#C2185B;--p-rasp-d:#9E1048;--p-soft:#FBE8F0;--p-ink:#1B1F2A;--p-mut:#5E6472;--p-bg:#F6F4F1;--p-card:#fff;--p-line:#E1DCD6;--p-amber:#7A4E00;--p-amber-bg:#FFF0D2;--p-amber-line:#D9A441;
 font-family:'DM Sans',system-ui,sans-serif;color:var(--p-ink);background:var(--p-bg);line-height:1.55;font-size:16px}
.pic-pub *,.pic-pub *::before,.pic-pub *::after{box-sizing:border-box}
.pic-pub h1,.pic-pub h2{font-family:'Source Serif 4',Georgia,serif;font-weight:600;line-height:1.2;margin:0;color:var(--p-ink)}
.pic-pub h1{font-size:clamp(26px,4vw,38px)}
.pic-pub h2{font-size:22px;margin-bottom:14px}
.pic-pub h3,.pic-pub h4{font-family:inherit;margin:0}
.pic-pub a{color:var(--p-rasp-d)}
.pic-pub a:hover{color:var(--p-rasp)}
.pic-pub .pp-wrap{max-width:1180px;margin:0 auto;padding:16px 16px 90px}
.pic-pub .pp-muted{color:var(--p-mut);font-size:14px}
.pic-pub .screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.pic-pub .pp-bc{font-size:13px;color:var(--p-mut);margin:4px 0 14px}
.pic-pub .pp-bc a{color:var(--p-mut)}

/* Galerie : mise en page selon le nombre de photos */
.pic-pub .pp-gallery{display:grid;gap:6px;border-radius:14px;overflow:hidden;margin-bottom:22px;height:420px;grid-template-columns:1fr;grid-template-rows:1fr}
.pic-pub .pp-gallery-n2{grid-template-columns:1fr 1fr}
.pic-pub .pp-gallery-n3{grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr}
.pic-pub .pp-gallery-n5{grid-template-columns:2fr 1fr 1fr;grid-template-rows:1fr 1fr}
.pic-pub .pp-gallery-n3 .pp-g0,.pic-pub .pp-gallery-n5 .pp-g0{grid-row:1 / 3}
.pic-pub .pp-g{position:relative;display:block;overflow:hidden;background:#ddd;min-height:0}
.pic-pub .pp-g img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.pic-pub .pp-more{position:absolute;right:10px;bottom:10px;background:rgba(0,0,0,.62);color:#fff;border-radius:99px;padding:4px 11px;font-size:13px;font-weight:700}
@media (min-width:861px){.pic-pub .pp-hd,.pic-pub .pp-more-m{display:none}}

/* Lightbox */
.pic-pub .pp-lightbox,.pp-lightbox{border:0;padding:0;margin:0;background:#000;color:#fff;width:100vw;height:100vh;height:100dvh;max-width:none;max-height:none}
.pp-lightbox::backdrop{background:#000}
.pp-lightbox img{position:absolute;inset:0;margin:auto;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;touch-action:pan-y}
.pp-lb-x,.pp-lb-n{position:absolute;z-index:2;background:rgba(20,20,20,.75);color:#fff;border:2px solid rgba(255,255,255,.85);width:52px;height:52px;border-radius:50%;font-size:30px;line-height:1;cursor:pointer;display:grid;place-items:center;padding:0}
.pp-lb-x{top:14px;right:14px}
.pp-lb-prev{left:12px;top:calc(50% - 26px)}
.pp-lb-next{right:12px;top:calc(50% - 26px)}
.pp-lb-c{position:absolute;z-index:2;left:0;right:0;bottom:16px;text-align:center;font:600 14px/1 'DM Sans',system-ui,sans-serif;text-shadow:0 1px 3px #000}

/* Colonnes */
.pic-pub .pp-cols{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:32px;align-items:start}
.pic-pub .pp-side-in{position:sticky;top:16px;display:grid;gap:14px}
.pic-pub .pp-head{margin-bottom:8px}
.pic-pub .pp-head-label,.pic-pub .pp-card-label{margin:0 0 6px;font-size:14px}
.pic-pub .pp-label{display:inline-block;margin-right:12px}
.pic-pub .pp-label-k{color:var(--p-mut);font-size:13px;text-transform:none}
.pic-pub .pp-loc{margin:6px 0 0;color:var(--p-mut)}
.pic-pub .pp-facts{list-style:none;margin:18px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}
.pic-pub .pp-facts li{background:var(--p-card);border:1px solid var(--p-line);border-radius:10px;padding:10px 12px;display:grid}
.pic-pub .pp-facts span{font-size:12px;color:var(--p-mut)}
.pic-pub .pp-facts strong{font-size:17px}
.pic-pub .pp-chips{margin:14px 0 0;display:flex;flex-wrap:wrap;gap:6px}
.pic-pub .pp-chip-s{background:var(--p-soft);color:var(--p-rasp-d);border-radius:99px;padding:3px 11px;font-size:13px;font-weight:500}
.pic-pub .pp-sec{margin-top:34px}
.pic-pub .pp-prose{max-width:70ch}
.pic-pub .pp-list{margin:0;padding-left:20px;display:grid;gap:6px}
.pic-pub .pp-dl{display:grid;grid-template-columns:max-content 1fr;gap:6px 18px;margin:0}
.pic-pub .pp-dl dt{color:var(--p-mut)}
.pic-pub .pp-dl dd{margin:0}
.pic-pub .pp-map{height:320px;border-radius:12px;overflow:hidden;border:1px solid var(--p-line)}
.pic-pub .pp-faq{background:var(--p-card);border:1px solid var(--p-line);border-radius:10px;padding:0;margin-bottom:8px}
.pic-pub .pp-faq summary{cursor:pointer;font-weight:600;font-size:16px;color:var(--p-ink);list-style:none;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px}
.pic-pub .pp-faq summary::-webkit-details-marker{display:none}
.pic-pub .pp-faq summary::after{content:"";flex:none;width:8px;height:8px;border-right:2px solid var(--p-mut);border-bottom:2px solid var(--p-mut);transform:rotate(45deg);margin:-4px 4px 0 0;transition:transform .2s}
.pic-pub .pp-faq[open] summary{color:var(--p-rasp-d)}
.pic-pub .pp-faq[open] summary::after{transform:rotate(-135deg);margin-top:4px;border-color:var(--p-rasp-d)}
.pic-pub .pp-faq>div{padding:0 16px 14px;font-size:14px;line-height:1.6;color:var(--p-mut)}
.pic-pub .pp-faq>div>:first-child{margin-top:0}
.pic-pub .pp-faq>div>:last-child{margin-bottom:0}
.pic-pub .pp-faq>div p{font-size:14px;color:var(--p-mut)}

/* Blocs d'informations */
.pic-pub .pp-infos{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;align-items:start}
.pic-pub .pp-info{background:var(--p-card);border:1px solid var(--p-line);border-radius:14px;padding:16px}
.pic-pub .pp-info h3{font-size:15px;margin-bottom:10px}
.pic-pub .pp-info dl{display:grid;grid-template-columns:max-content 1fr;gap:8px 16px;margin:0 0 10px;align-items:center}
.pic-pub .pp-info dt{color:var(--p-mut);font-size:14px}
.pic-pub .pp-info dd{margin:0;font-weight:500}
.pic-pub .pp-pills{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.pic-pub .pp-pills li{background:var(--p-soft);color:var(--p-rasp-d);border-radius:99px;padding:4px 12px;font-size:13px;font-weight:500}
.pic-pub .pp-pills li::before{content:"\2713";margin-right:6px;font-weight:700}
.pic-pub .pp-dpe{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:8px;color:#fff;font-weight:700}
.pic-pub .pp-dpe-a{background:#2a9d4e}.pic-pub .pp-dpe-b{background:#5fb03d}.pic-pub .pp-dpe-c{background:#9bbf2f;color:#1b1f2a}
.pic-pub .pp-dpe-d{background:#e8c91c;color:#1b1f2a}.pic-pub .pp-dpe-e{background:#f0a020}.pic-pub .pp-dpe-f{background:#e8641c}.pic-pub .pp-dpe-g{background:#d2252b}

/* Prix et colonne laterale */
.pic-pub .pp-pricebox,.pic-pub .pp-form,.pic-pub .pp-procard{background:var(--p-card);border:1px solid var(--p-line);border-radius:14px;padding:18px}
.pic-pub .pp-from{margin:0;font-size:13px;color:var(--p-mut)}
.pic-pub .pp-price{margin:0;font-family:'Source Serif 4',Georgia,serif;font-size:30px;font-weight:600;color:var(--p-rasp-d)}
.pic-pub .pp-price-sm{font-size:22px}
.pic-pub .pp-form{padding:18px}
.pic-pub .pp-form .pic-lead{max-width:none!important;width:100%;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important}
.pic-pub .pp-form .pic-lead h2{font-size:19px!important;margin:0 0 6px!important}
.pic-pub .pp-form .pic-lead .pic-sub{margin:0 0 16px!important;font-size:14px}
.pic-pub .pp-form .pic-lead .pic-grid{grid-template-columns:minmax(0,1fr)!important;gap:12px!important}
.pic-pub .pp-form .pic-lead .pic-full{grid-column:auto!important}
.pic-pub .pp-form .pic-lead button{width:100%;margin-top:10px}
.pic-pub .pp-procard{display:flex;gap:14px;align-items:center}
.pic-pub .pp-procard p{margin:0}
.pic-pub .pp-pc-logo{flex:0 0 56px;width:56px;height:56px;border-radius:12px;background:var(--p-soft);color:var(--p-rasp-d);display:grid;place-items:center;font-family:'Source Serif 4',Georgia,serif;font-size:22px;font-weight:600;overflow:hidden}
.pic-pub .pp-pc-logo img{width:100%;height:100%;object-fit:contain;background:#fff}
.pic-pub .pp-pc-txt{min-width:0}
.pic-pub .pp-procard .pp-pro-n{margin:1px 0 4px;font-weight:700}

/* Boutons */
.pic-pub .pp-btn{display:inline-block;background:var(--p-rasp);color:#fff!important;border:0;border-radius:10px;padding:11px 18px;font:inherit;font-weight:700;cursor:pointer;text-decoration:none;text-align:center}
.pic-pub .pp-btn:hover{background:var(--p-rasp-d)}

/* Grille de disponibilite */
.pic-pub .pp-legend{display:flex;flex-wrap:wrap;gap:14px;font-size:13px;margin-bottom:12px}
.pic-pub .pp-lg::before{content:"";display:inline-block;width:14px;height:14px;border-radius:4px;margin-right:6px;vertical-align:-2px;border:2px solid var(--p-rasp)}
.pic-pub .pp-lg-o::before{border:2px dashed var(--p-amber-line);background:var(--p-amber-bg)}
.pic-pub .pp-lg-r::before{border:2px solid #b9b4ad;background:repeating-linear-gradient(135deg,#e5e1dc 0 3px,#f3f1ee 3px 6px)}
.pic-pub .pp-types{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}
.pic-pub .pp-chip{background:var(--p-card);border:1px solid var(--p-line);border-radius:99px;padding:6px 14px;font:inherit;font-size:14px;cursor:pointer;color:var(--p-ink)}
.pic-pub .pp-chip.is-on{background:var(--p-rasp);border-color:var(--p-rasp);color:#fff}
.pic-pub .pp-bat{background:var(--p-card);border:1px solid var(--p-line);border-radius:14px;padding:14px;margin-bottom:14px}
.pic-pub .pp-bat h3{font-size:16px;margin-bottom:10px}
.pic-pub .pp-floor{display:flex;gap:10px;align-items:flex-start;padding:6px 0;border-top:1px dashed var(--p-line)}
.pic-pub .pp-floor:first-of-type{border-top:0}
.pic-pub .pp-floor-l{flex:0 0 64px;font-size:13px;color:var(--p-mut);padding-top:10px}
.pic-pub .pp-cells{display:flex;flex-wrap:wrap;gap:6px}
.pic-pub .pp-lc{width:72px;min-height:54px;border-radius:8px;border:2px solid var(--p-rasp);background:#fff;color:var(--p-ink);font:inherit;cursor:pointer;display:grid;place-items:center;padding:4px;line-height:1.15}
.pic-pub .pp-lc i{order:1;font-style:normal;font-size:14px;font-weight:700;line-height:1.25;color:inherit}
.pic-pub .pp-lc b{order:2;font-size:11px;font-weight:500;line-height:1.25;color:inherit;opacity:.75}
.pic-pub .pp-lc.pp-s-d:hover{background:var(--p-soft)}
.pic-pub .pp-lc.pp-s-o{border:2px dashed var(--p-amber-line);background:var(--p-amber-bg);color:var(--p-amber)}
.pic-pub .pp-lc.pp-s-r{border:2px solid #b9b4ad;background:repeating-linear-gradient(135deg,#e5e1dc 0 3px,#f3f1ee 3px 6px);color:#6b665f}
.pic-pub .pp-lc.is-sel{box-shadow:0 0 0 3px var(--p-soft),0 0 0 5px var(--p-rasp)}
.pic-pub .pp-lc.is-match{box-shadow:0 0 0 3px var(--p-rasp)}
.pic-pub .pp-lc.pp-s-d.is-match{background:var(--p-soft)}
.pic-pub .pp-lc.is-match.is-sel{box-shadow:0 0 0 3px var(--p-soft),0 0 0 6px var(--p-rasp)}
.pic-pub .pp-chip .pp-n{opacity:.7;margin-left:4px}
.pic-pub .pp-details{margin-top:6px}
.pic-pub .pp-detail{background:var(--p-card);border:1px solid var(--p-rasp);border-radius:14px;padding:16px}
.pic-pub .pp-detail[hidden]{display:none}
.pic-pub .pp-detail dl{display:grid;grid-template-columns:max-content 1fr;gap:4px 16px;margin:10px 0 14px}
.pic-pub .pp-detail dt{color:var(--p-mut)}
.pic-pub .pp-detail dd{margin:0}
.pic-pub .pp-detail-st{display:inline-block;margin:6px 0 0;padding:2px 10px;border-radius:99px;font-size:13px;font-weight:700;background:var(--p-soft);color:var(--p-rasp-d)}
.pic-pub .pp-detail-st.pp-s-o{background:var(--p-amber-bg);color:var(--p-amber)}
.pic-pub .pp-detail-st.pp-s-r{background:#ebe8e4;color:#6b665f}
.pic-pub .pp-typos{display:grid;gap:6px}
.pic-pub .pp-typo{display:flex;justify-content:space-between;gap:10px;width:100%;text-align:left;font:inherit;color:inherit;cursor:pointer;background:var(--p-card);border:1px solid var(--p-line);border-radius:10px;padding:10px 14px}
.pic-pub .pp-typo:hover{border-color:var(--p-rasp);background:var(--p-soft)}
.pic-pub .pp-typo-go{margin-left:8px;color:var(--p-rasp);font-weight:700}

/* Cartes */
.pic-pub .pp-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.pic-pub .pp-card{background:var(--p-card);border:1px solid var(--p-line);border-radius:14px;overflow:hidden}
.pic-pub .pp-card[hidden]{display:none}
.pic-pub .pp-card-img{display:block;position:relative;aspect-ratio:4/3;background:#ddd}
.pic-pub .pp-card-img img{width:100%;height:100%;object-fit:cover;display:block}
.pic-pub .pp-badges{position:absolute;top:10px;left:10px;display:flex;gap:6px;flex-wrap:wrap}
.pic-pub .pp-badge{background:rgba(255,255,255,.94);border-radius:99px;padding:3px 10px;font-size:12px;font-weight:700;color:var(--p-ink)}
.pic-pub .pp-badge-hot{background:var(--p-rasp);color:#fff}
.pic-pub .pp-card-body{padding:12px 14px 14px}
.pic-pub .pp-card-body h3{font-size:17px}
.pic-pub .pp-card-body h3 a{color:var(--p-ink);text-decoration:none}
.pic-pub .pp-card-ville{margin:2px 0 6px;color:var(--p-mut);font-size:14px}
.pic-pub .pp-card-prix{margin:8px 0 0}

/* Vitrine */
.pic-pub .pp-vhead{display:flex;gap:18px;align-items:center;margin:8px 0 20px}
.pic-pub .pp-logo{flex:none;width:84px;min-width:84px;height:84px;border-radius:16px;background:var(--p-soft);color:var(--p-rasp-d);display:grid;place-items:center;font-family:'Source Serif 4',Georgia,serif;font-size:30px;font-weight:600;overflow:hidden}
.pic-pub .pp-logo img{width:100%;height:100%;object-fit:contain;background:#fff}

/* Barre mobile */
.pic-pub .pp-mbar{display:none}

@media (max-width:860px){
 .pic-pub .pp-cols{grid-template-columns:1fr}
 .pic-pub .pp-side-in{position:static}
 .pic-pub .pp-hm,.pic-pub .pp-more-d{display:none}
 .pic-pub .pp-gallery{height:auto;grid-template-rows:auto}
 .pic-pub .pp-gallery-n1 .pp-g{aspect-ratio:4/3}
 .pic-pub .pp-gallery-n2{grid-template-columns:1fr 1fr}
 .pic-pub .pp-gallery-n2 .pp-g{aspect-ratio:1/1}
 .pic-pub .pp-gallery-n3,.pic-pub .pp-gallery-n5{grid-template-columns:1fr 1fr;grid-template-rows:auto}
 .pic-pub .pp-gallery-n3 .pp-g0,.pic-pub .pp-gallery-n5 .pp-g0{grid-column:1 / 3;grid-row:auto;aspect-ratio:16/10}
 .pic-pub .pp-gallery-n3 .pp-g1,.pic-pub .pp-gallery-n3 .pp-g2,.pic-pub .pp-gallery-n5 .pp-g1,.pic-pub .pp-gallery-n5 .pp-g2{aspect-ratio:4/3}
 .pic-pub .pp-mbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:50;background:#fff;border-top:1px solid var(--p-line);padding:10px 16px;justify-content:space-between;align-items:center}
}
@media (max-width:620px){
 .pic-pub .pp-dl{grid-template-columns:1fr}
 .pic-pub .pp-detail dl{gap:4px 12px}
 .pic-pub .pp-info dl{grid-template-columns:max-content 1fr}
 .pic-pub .pp-lc{width:66px;min-height:50px}
 .pic-pub .pp-floor{align-items:center;gap:10px}
 .pic-pub .pp-floor-l{flex:0 0 52px;padding-top:0}
 .pic-pub .pp-vhead{flex-direction:column;align-items:flex-start}
}

/* Zones et specialites de la fiche pro */
.pic-pub .pp-tags{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.pic-pub .pp-tag{background:var(--p-card);border:1px solid var(--p-line);border-radius:99px;padding:5px 13px;font-size:14px}
.pic-pub .pp-tag-z{background:var(--p-soft);border-color:transparent;color:var(--p-rasp-d);font-weight:500}

/* Fiche professionnel : bandeau + deux colonnes */
.pic-pub .pp-vband{background:linear-gradient(135deg,var(--p-soft) 0%,#fff 70%);border:1px solid var(--p-line);border-radius:18px;padding:26px 28px;margin:8px 0 28px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.pic-pub .pp-vband-in{display:flex;gap:22px;align-items:center;min-width:0;flex:1 1 420px}
.pic-pub .pp-logo-l{width:104px;min-width:104px;height:104px;border-radius:20px;background:#fff;border:1px solid var(--p-line);font-size:36px}
.pic-pub .pp-vband-txt{min-width:0}
.pic-pub .pp-vtype{margin:0 0 4px;font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--p-rasp-d)}
.pic-pub .pp-vlinks{margin:16px 0 0;display:flex;flex-wrap:wrap;gap:12px 18px;align-items:center}
.pic-pub .pp-vlink{font-weight:600}
.pic-pub .pp-vfig{list-style:none;margin:0;padding:0;display:flex;gap:10px;flex-wrap:wrap}
.pic-pub .pp-vfig li{background:#fff;border:1px solid var(--p-line);border-radius:12px;padding:10px 16px;display:grid;min-width:104px}
.pic-pub .pp-vfig strong{font-size:22px;font-family:'Source Serif 4',Georgia,serif;line-height:1.1}
.pic-pub .pp-vfig span{font-size:12px;color:var(--p-mut)}
.pic-pub .pp-sec-first{margin-top:0}
.pic-pub .pp-form{background:var(--p-card);border:1px solid var(--p-line);border-radius:14px;padding:20px}
.pic-pub .pp-vtel{margin:0;font-size:15px;text-align:center}
.pic-pub .pp-vtel span{color:var(--p-mut);margin-right:6px}
.pic-pub .pp-vitrine .pp-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}
@media (max-width:860px){
 .pic-pub .pp-vband{padding:20px 18px}
 .pic-pub .pp-vband-in{flex-basis:100%}
 .pic-pub .pp-vfig{width:100%}
 .pic-pub .pp-vfig li{flex:1 1 0;min-width:0}
}
@media (max-width:620px){
 .pic-pub .pp-vband-in{flex-direction:column;align-items:flex-start;gap:14px}
 .pic-pub .pp-logo-l{width:84px;min-width:84px;height:84px}
}

/* Telephone du professionnel, en haut de sa fiche (0.6.0) */
.pic-pub .pp-btn-line{display:inline-flex;align-items:center;gap:8px;background:#fff;color:var(--p-ink)!important;border:1.5px solid var(--p-ink);border-radius:10px;padding:10px 16px;font:inherit;font-weight:700;text-decoration:none;white-space:nowrap}
.pic-pub .pp-btn-line:hover{background:var(--p-ink);color:#fff!important}
.pic-pub .pp-vphone{font-variant-numeric:tabular-nums}
.pic-pub .pp-mbar-a{display:flex;gap:8px;flex:none}
.pic-pub .pp-mbar .pp-btn-line,.pic-pub .pp-mbar .pp-btn{padding:9px 14px}

/* Fiche programme 0.7.0 : menu de sections, emplacement, proximite */
.pic-pub .pp-snav{position:sticky;top:var(--wp-admin--admin-bar--height,0px);z-index:40;background:rgba(246,244,241,.97);border-bottom:1px solid var(--p-line);margin:-8px 0 22px}
.pic-pub .pp-snav-in{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.pic-pub .pp-snav-in::-webkit-scrollbar{display:none}
.pic-pub .pp-snav a{flex:none;padding:13px 12px 11px;font-weight:700;font-size:15px;color:var(--p-ink);text-decoration:none;border-bottom:3px solid transparent;white-space:nowrap}
.pic-pub .pp-snav a:hover{color:var(--p-rasp-d)}
.pic-pub .pp-snav a.is-on{border-bottom-color:var(--p-rasp);color:var(--p-rasp-d)}
.pic-pub.pp-fiche .pp-sec,.pic-pub.pp-fiche #proximite{scroll-margin-top:calc(var(--wp-admin--admin-bar--height,0px) + 64px)}
.pic-pub.pp-fiche .pp-side-in{top:calc(var(--wp-admin--admin-bar--height,0px) + 64px)}
.pic-pub .pp-h3{font-size:16px;font-weight:700;margin:22px 0 10px}
.pic-pub .pp-emp-l{margin:-6px 0 12px}
.pic-pub .pp-map-l{height:420px}
.pic-pub .pp-facts a{color:inherit;text-decoration:underline;text-decoration-color:var(--p-rasp);text-underline-offset:3px}
.pic-pub .pp-near{position:relative;display:flex;flex-direction:column}
.pic-pub .pp-near .pp-card{flex:1}
.pic-pub .pp-km{position:absolute;top:10px;right:10px;margin:0;background:var(--p-ink);color:#fff;font-size:12px;font-weight:700;border-radius:999px;padding:3px 10px}
@media (max-width:860px){.pic-pub .pp-map-l{height:300px}.pic-pub .pp-snav{margin-left:-16px;margin-right:-16px;padding:0 8px}}
/* Carte 3D de la fiche */
.pic-pub .pp-map-l{position:relative;background:#EDEAE4}
.pp-pin3d{width:30px;height:30px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:#C2185B;border:3px solid #fff;box-shadow:0 3px 10px rgba(27,31,42,.35);margin-bottom:14px}
.pic-pub .pp-map-2d{position:absolute;left:10px;top:10px;z-index:2;background:#fff;color:#1B1F2A;border:1px solid #B9B2AA;border-radius:8px;padding:7px 12px;font:700 13px/1 'DM Sans',system-ui,sans-serif;cursor:pointer;box-shadow:0 1px 4px rgba(0,0,0,.12)}
.pic-pub .pp-map-2d:hover{background:#F6F4F1}
.pic-pub .maplibregl-ctrl-attrib a{color:inherit}

/* 0.8.0 : brochure, alertes, marche, quartier */
.pic-pub .pp-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.pic-pub .pp-ctabs{display:none}
.js-pp .pic-pub .pp-ctabs,.pic-pub .pp-ctabs.is-js{display:grid;grid-template-columns:1fr 1fr;gap:4px;background:#ECE8E2;border-radius:12px;padding:4px}
.pic-pub .pp-ctabs button{border:0;background:transparent;border-radius:9px;padding:10px 8px;font:inherit;font-weight:700;font-size:14px;color:var(--p-mut);cursor:pointer}
.pic-pub .pp-ctabs button[aria-selected="true"]{background:#fff;color:var(--p-ink);box-shadow:0 1px 3px rgba(27,31,42,.12)}
.pic-pub .pp-form[hidden]{display:none}
.pic-pub .pp-broch h2{font-size:19px;margin-bottom:6px}
.pic-pub .pp-broch-inc{margin:4px 0 12px;font-size:13px;font-weight:600;color:var(--p-rasp-d)}
.pic-pub .pp-mini-form{display:grid;gap:6px}
.pic-pub .pp-mini-form label{font-size:14px;font-weight:600;margin-top:6px}
.pic-pub .pp-mini-form input[type=text],.pic-pub .pp-mini-form input[type=email],.pic-pub .pp-mini-form input[type=tel]{width:100%;border:1px solid #cfd5dd;border-radius:10px;padding:11px 12px;font:inherit;background:#fff;color:inherit}
.pic-pub .pp-mini-form .pp-btn{margin-top:10px;width:100%}
.pic-pub .pp-consent{display:flex!important;gap:10px;align-items:flex-start;font-weight:400!important;font-size:13px!important;line-height:1.45;color:var(--p-mut)}
.pic-pub .pp-consent input{margin-top:2px;flex:none;width:18px;height:18px;accent-color:var(--p-rasp)}
.pic-pub .pp-okmsg,.pic-pub .pp-komsg{border-radius:10px;padding:12px 14px;margin:8px 0 12px;font-size:14px;line-height:1.5}
.pic-pub .pp-okmsg{background:#e8f6ee;color:#155d34;border:1px solid #bfe3cd}
.pic-pub .pp-komsg{background:#fdecec;color:#8a1f1f;border:1px solid #f3c1c1}
.pic-pub .pp-alert{display:block;background:#fff;color:var(--p-ink);border:1px solid var(--p-line);border-radius:14px;padding:16px 20px;margin-top:18px}
.pic-pub .pp-alert>h3{display:flex;align-items:center;gap:10px;font-family:'Source Serif 4',Georgia,serif;font-size:17px;font-weight:600;color:var(--p-ink);margin:0}
.pic-pub .pp-alert>h3::before{content:"";flex:none;width:34px;height:34px;border-radius:50%;background:var(--p-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239E1048' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 8a6 6 0 0 1 12 0c0 7 3 9 3 9H3s3-2 3-9'/%3E%3Cpath d='M10.3 21a1.94 1.94 0 0 0 3.4 0'/%3E%3C/svg%3E") center/18px no-repeat}
.pic-pub .pp-alert>.pp-alert-f{margin-top:12px}
.pic-pub .pp-alert>.pp-alert-t{margin:2px 0 0 44px;color:var(--p-mut);font-size:14px}
.pic-pub .pp-alert>.pp-state{margin-top:12px}
.pic-pub .pp-alert-row{display:flex;gap:8px;flex-wrap:wrap}
.pic-pub .pp-alert-row input{flex:1 1 170px;min-height:44px;border-radius:10px;border:1px solid #CFC8C0;padding:0 12px;font:inherit;background:#fff;color:var(--p-ink)}
.pic-pub .pp-alert-row .pp-btn{min-height:44px;padding:0 18px}
.pic-pub .pp-alert .pp-consent{color:var(--p-mut);margin-top:10px}
.pic-pub .pp-alert-legal{margin:6px 0 0;font-size:12px;color:var(--p-mut)}
.pic-pub .pp-alert-c{padding:16px}

.pic-pub .pp-detail .pp-btn-line{margin-top:4px}
.pic-pub .pp-mkt{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}
.pic-pub .pp-mkt-c{background:var(--p-card);border:1px solid var(--p-line);border-radius:14px;padding:14px 16px;display:grid;gap:2px;align-content:start}
.pic-pub .pp-mkt-c strong{font-family:'Source Serif 4',Georgia,serif;font-size:24px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--p-ink)}
.pic-pub .pp-mkt-c span{font-size:14px;font-weight:600}
.pic-pub .pp-mkt-c small{font-size:12px;color:var(--p-mut)}
.pic-pub .pp-mkt-c.is-prog{border-color:var(--p-rasp);background:var(--p-soft)}
.pic-pub .pp-mkt-c.is-prog strong{color:var(--p-rasp-d)}
.pic-pub .pp-mkt-s{margin:14px 0 0;font-weight:600}
.pic-pub .pp-src{margin:10px 0 0;font-size:12px;color:var(--p-mut);line-height:1.45}
.pic-pub .pp-qgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;align-items:start}
.pic-pub .pp-qcard{background:var(--p-card);border:1px solid var(--p-line);border-radius:14px;padding:16px}
.pic-pub .pp-qcard h3{font-size:15px;margin:0 0 10px}
.pic-pub .pp-qcard p{margin:0 0 6px;font-size:14px}
.pic-pub .pp-zone{display:inline-block;font-weight:700;border-radius:8px;padding:4px 10px;background:#E4F4EA;color:#14663A}
.pic-pub .pp-zone-1{background:#FFF6DA;color:#7A5A00}
.pic-pub .pp-zone-2{background:#FFE8D4;color:#8A4200}
.pic-pub .pp-zone-3{background:var(--p-soft);color:var(--p-rasp-d)}
.pic-pub .pp-ecoles{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.pic-pub .pp-ecoles li{display:flex;justify-content:space-between;gap:10px;font-size:14px;border-bottom:1px dashed var(--p-line);padding-bottom:6px}
.pic-pub .pp-ecoles em{display:block;font-style:normal;font-size:12px;color:var(--p-mut)}
.pic-pub .pp-ecoles b{white-space:nowrap;font-weight:600}
.pic-pub .pp-qgrid-2{grid-template-columns:1fr 1fr;align-items:start}
@media (max-width:760px){.pic-pub .pp-qgrid-2{grid-template-columns:1fr}}
.pic-pub .pp-qcol{display:grid;gap:14px;align-content:start}
.pic-pub .pp-risq{list-style:none;margin:0 0 8px;padding:0;display:grid;gap:8px}
.pic-pub .pp-risq li{font-size:14px;padding-left:14px;position:relative}
.pic-pub .pp-risq li::before{content:"";position:absolute;left:0;top:.6em;width:6px;height:6px;border-radius:50%;background:#9AA0AC}
.pic-pub .pp-risq li b{font-weight:600;color:var(--p-ink)}
.pic-pub .pp-risq li span{display:block;font-size:13px;color:var(--p-mut)}
.pic-pub .pp-risq-more summary{cursor:pointer;font-size:14px;font-weight:600;color:var(--p-rasp-d);margin:0 0 8px}
.pic-pub .pp-info-sub{font-size:15px;margin:14px 0 8px}


/* Page de confirmation d'alerte (lien d'e-mail) */
.pic-pub.pp-alpage{padding:48px 16px 72px}
.pic-pub.pp-alpage .pp-wrap{max-width:560px;margin:0 auto}
.pic-pub.pp-alpage .pp-alert{padding:28px}
.pic-pub.pp-alpage .pp-alert h3{font-size:24px}
.pic-pub.pp-alpage .pp-btn{width:auto;padding:13px 24px;margin-top:6px}

/* Etats des formulaires (envoye, confirme, erreur) */
.pic-pub .pp-state{display:flex;gap:12px;align-items:flex-start;border-radius:12px;padding:14px 16px;margin:8px 0 4px;border:1px solid;text-align:left}
.pic-pub .pp-state-i{flex:none;width:24px;height:24px;margin-top:1px}
.pic-pub .pp-state-i svg{display:block;width:24px;height:24px}
.pic-pub .pp-state strong{display:block;font-size:15px;font-weight:700;line-height:1.35}
.pic-pub .pp-state p{margin:4px 0 0;font-size:14px;line-height:1.5}
.pic-pub .pp-state-a{display:inline-block;margin-top:8px;font-size:14px;font-weight:600;text-decoration:underline}
.pic-pub .pp-state-wait{background:#FFF6DA;border-color:#F1D98A;color:#5E4500}
.pic-pub .pp-state-wait .pp-state-i,.pic-pub .pp-state-wait .pp-state-a{color:#8A6400}
.pic-pub .pp-state-ok{background:#E8F6EE;border-color:#BFE3CD;color:#155D34}
.pic-pub .pp-state-ok .pp-state-i{color:#1E8A4C}
.pic-pub .pp-state-ok .pp-state-a{color:#155D34}
.pic-pub .pp-state-ko{background:#FDECEC;border-color:#F3C1C1;color:#8A1F1F}
.pic-pub .pp-state-ko .pp-state-i{color:#C2362F}
.pic-pub .pp-state-info{background:#F1F2F4;border-color:#DADDE2;color:#363B45}
.pic-pub .pp-state-info .pp-state-i{color:#6B7280}

/* Carte de la fiche : molette active apres un clic (0.11.3) */
.pic-pub .pp-map-hint{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);z-index:500;margin:0;background:rgba(27,31,42,.82);color:#fff;font-size:13px;border-radius:99px;padding:6px 14px;pointer-events:none;transition:opacity .2s;white-space:nowrap}
.pic-pub .is-active>.pp-map-hint{opacity:0}

/* 0.13.0 : terrains a batir (lignes d'informations, plan de masse, carte de programme) */
.pic-pub .pp-lines{margin:14px 0 4px;border-top:1px solid var(--p-line)}
.pic-pub .pp-lines>div{display:grid;grid-template-columns:minmax(120px,32%) minmax(0,1fr);gap:16px;align-items:baseline;padding:10px 0;border-bottom:1px solid var(--p-line)}
.pic-pub .pp-lines dt{font-size:14px;color:var(--p-mut)}
.pic-pub .pp-lines dd{margin:0;font-size:15px;color:var(--p-ink);font-variant-numeric:tabular-nums;min-width:0}
@media (max-width:480px){.pic-pub .pp-lines>div{grid-template-columns:minmax(0,1fr);gap:2px}}
.pic-pub .pp-card-kind{margin:2px 0 6px;font-size:13px;color:var(--p-mut)}
.pic-pub .pp-planm{margin:0 0 18px;border:1px solid var(--p-line);border-radius:14px;overflow:hidden;background:#fff}
.pic-pub .pp-planm img{display:block;width:100%;height:auto;max-height:560px;object-fit:contain;background:#fff}
.pic-pub .pp-planm figcaption{font-size:13px;color:var(--p-mut);padding:8px 12px;border-top:1px solid var(--p-line)}
.pic-pub .pp-bat-flat .pp-floor-l{min-width:72px}
