/* Pages boutique — refonte (15/10/2026). Palette de la charte « Almanach » (almanach.css) : vert forêt #1f5135, terre cuite #a8492b, or #b9842b, papier #fbf7ec. */
.lbt-sh-wrap,.dokan-store-wrap{--c-green:#1f5135;--c-earth:#a8492b;--c-honey:#b9842b;--c-paper:#fbf7ec;--c-line:#e5dcc2;--c-ink:#26301f;--c-muted:#5a5646}
.dokan-store-wrap{display:block!important;max-width:1100px;margin:0 auto;padding:0 16px 40px}
.dokan-store-wrap #dokan-primary,.dokan-store-wrap #dokan-secondary{width:100%!important;float:none!important;margin:0!important;padding:0!important}
.dokan-store-wrap .store-page-wrap{padding:0}

/* ── En-tête : UNE carte (couverture en haut, identité dessous), sans chevauchement ── */
.lbt-sh-wrap{margin:0 0 22px;background:var(--c-paper);border:1px solid var(--c-line);border-radius:20px;overflow:hidden;box-shadow:0 8px 24px rgba(31,81,53,.1)}
.lbt-sh-cover{position:relative;height:250px;background:var(--lbt-c,#1f5135);overflow:hidden}
/* Image de couverture : fond flou de la même image + image entière au premier plan (jamais coupée en deux, même pour une photo d'enseigne) */
.lbt-sh-cover::before{content:"";position:absolute;inset:-20px;background:var(--lbt-img,none) center/cover no-repeat;filter:blur(22px) saturate(1.1);opacity:.75;transform:scale(1.05)}
.lbt-sh-cover img{position:relative;z-index:1;display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.lbt-sh-cover.no-image::before{display:none}
.lbt-sh-cover.no-image{background:radial-gradient(circle at 20% 20%,rgba(255,255,255,.18),transparent 45%),linear-gradient(135deg,var(--lbt-c,#1f5135),#12281b)}
.lbt-sh-cover::after{content:"";position:absolute;z-index:2;left:0;right:0;bottom:0;height:40px;background:linear-gradient(180deg,rgba(251,247,236,0),rgba(251,247,236,.9))}
.lbt-sh-card{position:relative;display:grid;grid-template-columns:auto 1fr;gap:6px 18px;align-items:start;margin:0;padding:6px 24px 22px;background:transparent;border:0;box-shadow:none;border-radius:0}
.lbt-sh-logo{width:72px;height:72px;margin:0;border-radius:50%;border:3px solid #fff;background:var(--lbt-c,#1f5135);color:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden;font:700 34px/1 "Fraunces",Georgia,serif;box-shadow:0 2px 10px rgba(0,0,0,.18)}
.lbt-sh-logo img{width:100%;height:100%;object-fit:cover}
.lbt-sh-name{margin:2px 0 2px;font:700 clamp(1.4rem,3vw,1.85rem)/1.2 "Fraunces",Georgia,serif;color:var(--c-green)!important}
.lbt-sh-tag{margin:0 0 8px;color:var(--c-earth);font-weight:700;font-size:.95rem}
.lbt-sh-desc{margin:0 0 14px;color:var(--c-ink);line-height:1.55;max-width:60ch}
.lbt-sh-main{min-width:0}
.lbt-sh-actions{display:flex;flex-wrap:wrap;gap:8px}
.lbt-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;border-radius:999px;border:1.5px solid var(--c-green);background:#fff;color:var(--c-green)!important;font-weight:700;font-size:.92rem;text-decoration:none!important;transition:transform .15s,box-shadow .15s}
.lbt-btn:hover,.lbt-btn:focus-visible{transform:translateY(-1px);box-shadow:0 4px 12px rgba(31,81,53,.18)}
.lbt-sh-wrap .lbt-btn-main,.lbt-sh-wrap .lbt-btn-main:visited{background:var(--c-green);color:#fff!important;border-color:var(--c-green)}
.lbt-btn-ico{padding:9px 12px}
.lbt-sh-infos{grid-column:1/-1;background:#fff;border:1px solid var(--c-line);border-radius:14px;padding:14px 18px;margin-top:10px}
.lbt-sh-infos .lbt-sh-line{display:inline-block;margin:0 18px 6px 0}
.lbt-sh-infos-title{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 8px;font:700 1rem "Fraunces",Georgia,serif;color:var(--c-green)}
.lbt-sh-line{font-size:.93rem;color:var(--c-ink);line-height:1.4}
.lbt-sh-line a{color:var(--c-green);font-weight:700}
.lbt-sh{list-style:none;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin:10px 0 0;padding:0}
.lbt-sh-day{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 2px;border-radius:8px;font-size:.72rem;line-height:1.15;text-align:center}
.lbt-sh-day.is-open{background:#e7f1ea;color:var(--c-green)}.lbt-sh-day.is-closed{background:#f1eee4;color:#6b6453}
.lbt-sh-day.is-today{outline:2px solid var(--c-honey);outline-offset:1px}
.lbt-sh-d{font-weight:800;text-transform:capitalize}.lbt-sh-t{font-variant-numeric:tabular-nums}
.lbt-sh-wrap .dokan-store-tabs{padding:0 24px 12px}
@media(max-width:860px){.lbt-sh-cover{height:190px}.lbt-sh-card{padding:4px 16px 18px}}
@media(max-width:520px){.lbt-sh-card{grid-template-columns:1fr}.lbt-sh-logo{width:60px;height:60px;font-size:28px}.lbt-sh-cover{height:170px}}

/* ── Pastilles de catégories, bandeau, rayons ── */
.lbt-pills{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 8px}
.lbt-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:999px;border:1.5px solid var(--c-line);background:#fff;color:var(--c-ink)!important;font-weight:600;font-size:.9rem;text-decoration:none!important}
.lbt-pill b{background:#efe8d3;border-radius:999px;padding:0 7px;font-size:.78rem}
.lbt-pill:hover{border-color:var(--c-green)}.lbt-pill.is-on{background:var(--c-green);border-color:var(--c-green);color:#fff!important}.lbt-pill.is-on b{background:rgba(255,255,255,.22)}
.lbt-band{margin:18px 0 26px;padding:16px 18px 18px;background:linear-gradient(135deg,#f3f6f1,var(--c-paper));border:1px solid var(--c-line);border-left:6px solid var(--c-honey);border-radius:16px}
.lbt-band-title,.lbt-rayon-title{margin:0 0 12px;font:700 1.25rem "Fraunces",Georgia,serif;color:var(--c-green)}
.lbt-rayon{margin:0 0 30px}.lbt-rayon-title{padding-bottom:6px;border-bottom:3px solid var(--c-honey)}.lbt-rayon-title small{font:600 .75rem system-ui;background:#efe8d3;border-radius:999px;padding:2px 9px;color:var(--c-muted);vertical-align:middle}
.lbt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(172px,1fr));gap:16px}

/* ── Contact ── */
.lbt-contact{margin:34px 0 0;padding:20px 22px;background:var(--c-paper);border:1px solid var(--c-line);border-radius:16px;max-width:620px;scroll-margin-top:90px}
.lbt-contact h2{margin:0 0 10px;font:700 1.2rem "Fraunces",Georgia,serif;color:var(--c-green)}
.lbt-contact .widget-title{display:none}
.lbt-contact input,.lbt-contact textarea{width:100%;border:1.5px solid var(--c-line);border-radius:10px;padding:10px 12px;background:#fff;font:inherit}
.lbt-contact .dokan-btn,.lbt-contact input[type=submit]{background:var(--c-green)!important;color:#fff!important;border:0!important;border-radius:999px!important;padding:10px 22px!important;font-weight:700}
.lbt-store-practical-info,.lbt-store-bio{max-width:1000px}

/* Le thème force la couleur des liens de la boutique avec :not(.button…) !important : ces règles à identifiant (#dokan-primary) reprennent la main sur nos pastilles et boutons. */
#dokan-primary .lbt-sh-wrap .lbt-btn-main,#dokan-primary .lbt-sh-wrap .lbt-btn-main:hover{color:#fff!important;background:var(--c-green)}
#dokan-primary .lbt-pills .lbt-pill.is-on,#dokan-primary .lbt-pills .lbt-pill.is-on:hover{color:#fff!important;background:var(--c-green)}
#dokan-primary .lbt-pills .lbt-pill:not(.is-on){color:var(--c-ink)!important}
#dokan-primary .lbt-pills .lbt-pill.is-on b{color:#fff}
#dokan-primary .lbt-product-card .add_to_cart_button{color:#fff!important}
#dokan-primary .lbt-sh-line a{color:var(--c-green)!important}
#dokan-primary .lbt-pc-link,#dokan-primary .lbt-pc-link:hover{color:inherit!important;text-decoration:none!important}
/* Formulaire de contact : le widget Dokan a son propre cadre étroit — on le laisse prendre toute la largeur de notre bloc. */
.lbt-contact .widget,.lbt-contact .dokan-store-widget,.lbt-contact aside,.lbt-contact .dokan-store-contact{width:100%!important;max-width:none!important;border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;margin:0!important}
.lbt-contact form{width:100%}.lbt-contact textarea{min-height:130px}
.lbt-contact .dokan-btn,.lbt-contact input[type=submit]{display:inline-block;margin-top:10px}

/* ── Liste des boutiques (/boutique/) ── */
.ll-dir-card-logo{position:absolute;left:16px;top:108px;z-index:2;width:58px;height:58px;border-radius:50%;border:4px solid #fff;background:var(--lbt-c,#1f5135);color:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden;font:700 26px/1 "Fraunces",Georgia,serif;box-shadow:0 3px 10px rgba(0,0,0,.22)}
.ll-dir-card-logo img{width:100%;height:100%;object-fit:cover}
.ll-dir-card .ll-dir-card-body{padding-top:36px}
.ll-dir-card-banner-placeholder{background:radial-gradient(circle at 25% 20%,rgba(255,255,255,.2),transparent 50%),linear-gradient(135deg,#2d6a4f,#12281b)!important}
.ll-dir-card-banner-placeholder span{opacity:.35}
.ll-dir-toggle{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:999px;border:1.5px solid #1f5135;background:#fff;color:#1f5135;font-weight:700;font-size:13px;cursor:pointer}
.ll-dir-toggle:hover{background:#f3f6f1}.ll-dir-toggle.active{background:#1f5135;color:#fff}
.ll-dir-cats-filter{display:flex;flex-wrap:wrap;gap:8px}
@media(max-width:640px){.ll-dir-filter-row{flex-direction:column;align-items:stretch}.ll-dir-proximity-wrap{flex-wrap:wrap}.ll-dir-proximity-wrap .ll-prox-ac-wrap{flex:1 1 100%}}

#ll-boutique-dir .ll-dir-toggle{background:#fff;color:#1f5135;border:1.5px solid #1f5135;box-shadow:none;font-family:inherit;line-height:1.2}
#ll-boutique-dir .ll-dir-toggle:hover{background:#f3f6f1}
#ll-boutique-dir .ll-dir-toggle.active{background:#1f5135;color:#fff}
/* Filtres de la liste : recherche + proximité sur une ligne, champs de même hauteur (le thème étirait les champs en colonne). */
#ll-boutique-dir .ll-dir-filter-row{display:grid;grid-template-columns:minmax(200px,1.1fr) minmax(320px,2fr);gap:10px;align-items:stretch}
#ll-boutique-dir .ll-dir-proximity-wrap{display:flex;flex-wrap:nowrap;gap:8px;align-items:stretch}
#ll-boutique-dir .ll-prox-ac-wrap{flex:1 1 auto;min-width:0}
#ll-boutique-dir #ll-boutique-search,#ll-boutique-dir .ll-dir-prox-input{width:100%;height:44px;box-sizing:border-box;border-radius:999px;padding:0 16px;border:1.5px solid #e5dcc2;background:#fff;margin:0}
#ll-boutique-dir .ll-dir-prox-radius{width:92px;height:44px;border-radius:999px;border:1.5px solid #e5dcc2;padding:0 10px;background:#fff;margin:0}
#ll-boutique-dir .ll-dir-prox-btn{height:44px;border-radius:999px;padding:0 18px;white-space:nowrap;margin:0}
@media(max-width:700px){#ll-boutique-dir .ll-dir-filter-row{grid-template-columns:1fr}#ll-boutique-dir .ll-dir-proximity-wrap{display:grid;grid-template-columns:1fr 1fr;gap:8px}#ll-boutique-dir .ll-prox-ac-wrap{grid-column:1/-1}#ll-boutique-dir .ll-dir-prox-radius,#ll-boutique-dir .ll-dir-prox-btn{width:100%;min-width:0;padding:0 10px}#ll-boutique-dir .ll-dir-prox-clear{grid-column:1/-1}}
@media(max-width:700px){#ll-boutique-dir .ll-dir-cats-filter{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px;scroll-snap-type:x proximity}#ll-boutique-dir .ll-dir-cats-filter>*{flex:0 0 auto;scroll-snap-align:start}}

#dokan-primary a.lbt-follow-login{color:#fff!important}

/* Téléphone masqué (révélé au clic) */
.lbt-linkbtn{background:none!important;border:0!important;padding:0!important;color:var(--c-green)!important;font:inherit;font-weight:700;text-decoration:underline;cursor:pointer;box-shadow:none!important}
.lbt-rp-masked{font-variant-numeric:tabular-nums;letter-spacing:.02em}
.lbt-rp-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
#dokan-primary .lbt-contact .lbt-btn-main,#dokan-secondary .lbt-contact .lbt-btn-main{color:#fff!important;background:#1f5135}.lbt-contact-login-txt{margin:0 0 12px;color:#26301f}

/* ── Barre de recherche et de tri (remplace celle de Dokan, sans effet sur cette présentation) ── */
.dokan-store-products-filter-area{display:none!important}
.lbt-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch;margin:18px 0 6px}
.lbt-search{flex:1 1 240px;position:relative;display:block}
.lbt-search::before{content:"🔍";position:absolute;left:14px;top:50%;transform:translateY(-50%);font-size:15px;pointer-events:none}
.lbt-search input{width:100%;height:44px;box-sizing:border-box;padding:0 16px 0 40px;border:1.5px solid var(--c-line);border-radius:999px;background:#fff;font:inherit;margin:0}
.lbt-sort select{height:44px;padding:0 14px;border:1.5px solid var(--c-line);border-radius:999px;background:#fff;font:inherit;margin:0;min-width:170px}
.lbt-toolbar .lbt-btn{height:44px;cursor:pointer}
#dokan-primary .lbt-toolbar .lbt-btn-main{color:#fff!important}

/* ── Infos pratiques : paiement, retrait, où nous trouver — cartes colorées, pastilles, carte réelle ── */
.lbt-store-practical-info{max-width:none!important;margin:8px 0 22px!important}
.lbt-loc-grid-2{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.lbt-loc-section{position:relative;background:#fff!important;border:1px solid var(--c-line)!important;border-radius:18px!important;padding:18px 20px 20px!important;box-shadow:0 2px 10px rgba(31,81,53,.06);overflow:hidden}
.lbt-loc-section::before{content:"";position:absolute;left:0;top:0;right:0;height:5px;background:var(--c-green)}
.lbt-loc-grid-2 .lbt-loc-section:nth-child(2)::before{background:var(--c-honey)}
.lbt-loc-section-title{margin:6px 0 12px!important;font:700 1.15rem "Fraunces",Georgia,serif!important;color:var(--c-green)!important;border:0!important;padding:0!important}
.lbt-loc-pay-item,.lbt-loc-deliv-item{display:inline-flex!important;align-items:center;gap:6px;margin:0 8px 8px 0!important;padding:7px 14px!important;background:#f3f6f1;border:1px solid #d8e5dc;border-radius:999px;font-size:.92rem;line-height:1.3}
.lbt-loc-grid-2 .lbt-loc-section:nth-child(2) .lbt-loc-deliv-item{background:#fbf1de;border-color:#ecd6a6}
.lbt-loc-item-label{font-weight:700;color:var(--c-ink)}.lbt-loc-item-detail{font-size:.82rem;color:var(--c-muted)}
.lbt-where{margin:0 0 22px;background:#fff;border:1px solid var(--c-line);border-radius:18px;overflow:hidden;box-shadow:0 2px 10px rgba(31,81,53,.06)}
.lbt-where-title{margin:0;padding:16px 20px 0;font:700 1.15rem "Fraunces",Georgia,serif;color:var(--c-green)}
.lbt-where-body{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:18px;padding:14px 20px 20px;align-items:stretch}
.lbt-where-side{display:flex;flex-direction:column;justify-content:center;gap:10px}
.lbt-where-addr{margin:0;font-size:1rem;line-height:1.45;color:var(--c-ink)}.lbt-where-note{margin:0;font-size:.85rem;color:var(--c-muted)}
.lbt-smap{position:relative;height:210px;border-radius:14px;overflow:hidden;background:#e8e6df;border:1px solid var(--c-line)}
.lbt-smap-grid{position:absolute;display:grid;grid-template-columns:repeat(3,256px);grid-auto-rows:256px;width:768px;height:768px}
.lbt-smap-grid img,.lbt-smap-grid i{display:block;width:256px;height:256px}
.lbt-smap-pin{position:absolute;left:50%;top:50%;transform:translate(-50%,-100%);filter:drop-shadow(0 3px 4px rgba(0,0,0,.35))}
.lbt-smap-zone{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;border:2px dashed var(--c-green);background:rgba(31,81,53,.18)}
.lbt-smap-credit{position:absolute;right:6px;bottom:4px;font-size:10px;background:rgba(255,255,255,.85);padding:1px 6px;border-radius:6px;color:#444!important;text-decoration:none}
@media(max-width:700px){.lbt-where-body{grid-template-columns:1fr}.lbt-smap{height:190px}}

/* ── Suivre / avis / mot du producteur ── */
.lbt-follow-wrap,.lbt-store-bio{max-width:none!important}
.lbt-follow-wrap{margin:0 0 22px!important;padding:14px 18px;background:#fff;border:1px solid var(--c-line);border-radius:16px}
#lbt-follow-btn,#dokan-primary a.lbt-follow-login{border-radius:999px!important;padding:9px 20px!important;font-weight:700!important}
.lbt-store-bio{border-left:5px solid var(--c-honey)!important;background:var(--c-paper)!important;border-radius:14px!important;padding:16px 20px!important;margin:0 0 22px!important;font-size:1rem;line-height:1.6}
/* Colonne « contact » : plus de cadre gris autour de notre bloc (il faisait un cadre dans le cadre) */
#dokan-secondary.lbt-store-sidebar,.lbt-store-sidebar .dokan-widget-area{border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;margin:0!important}
.lbt-contact{max-width:none!important}
#dokan-primary a.lbt-follow-login{background:var(--c-green)!important;color:#fff!important}
.lbt-smap-view{position:absolute;inset:0}

/* ── Fiche lieu ── */
.lbt-sh-pills{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 12px}
.lbt-pill-info{display:inline-flex;align-items:center;gap:5px;padding:4px 12px;border-radius:999px;background:#fff;border:1px solid var(--c-line);font-size:12.5px;font-weight:700;color:var(--c-green)}
.lbt-pill-info small{font-weight:500;color:var(--c-muted)}
.lbt-loc-intro{margin:0 0 18px;padding:16px 20px;background:var(--c-paper);border-left:5px solid var(--c-honey);border-radius:14px;font-size:1.05rem;line-height:1.6;color:var(--c-ink)}
.lbt-loc-body{margin:0 0 22px;line-height:1.7;color:var(--c-ink)}
.lbt-loc-shop-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:0 0 14px}
.lbt-loc-shop-head .lbt-band-title{margin:0}
.lbt-community{margin:0 0 22px;padding:18px 20px;background:#fff;border:1px solid var(--c-line);border-radius:18px;box-shadow:0 2px 10px rgba(31,81,53,.06)}
.lbt-community .lbt-loc-section{all:unset}
.lbt-share{position:relative;display:inline-block}.lbt-share>summary{list-style:none;cursor:pointer}.lbt-share>summary::-webkit-details-marker{display:none}
.lbt-share-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.lbt-nearby{margin:0 0 22px}
.lbt-nearby-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
.lbt-near-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--c-line);border-radius:16px;overflow:hidden;text-decoration:none!important;color:inherit;transition:transform .15s,box-shadow .15s}
.lbt-near-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(31,81,53,.14)}
.lbt-near-img{display:flex;align-items:center;justify-content:center;height:120px;background:var(--c-paper);font-size:30px}.lbt-near-img img{width:100%;height:100%;object-fit:cover}
.lbt-near-body{display:flex;flex-direction:column;gap:3px;padding:10px 14px 14px}.lbt-near-body strong{font:700 1rem "Fraunces",Georgia,serif;color:var(--c-green)}.lbt-near-body small{color:var(--c-muted)}
.single-liberta_location .entry-header{display:none}
body.single-liberta_location .lbt-sh-card .lbt-sh-actions{margin-top:4px}
#lbt-where{margin-top:0}
body a.lbt-btn.lbt-btn-main,body a.lbt-btn.lbt-btn-main:visited,body button.lbt-btn.lbt-btn-main{background:var(--c-green,#1f5135)!important;color:#fff!important;border-color:var(--c-green,#1f5135)!important}
