.perigord-barbelle-preview {
	--barbelle-ink: #24352c;
	--barbelle-muted: #5d6a62;
	--barbelle-accent: #426b50;
	--barbelle-line: #dce4dd;
	--barbelle-card: #fff;
	color: var(--barbelle-ink);
}
.perigord-barbelle-preview .entry-header { max-width: 1120px; margin: 0 auto 1.5rem; padding: 1.25rem 0 0; }
.perigord-barbelle-preview .single-categories-breadcrumb { display:flex; flex-wrap:wrap; gap:.45rem; margin:0 0 .75rem; color:var(--barbelle-muted); font-size:.9rem; }
.perigord-barbelle-preview .entry-title { margin:0 0 .55rem; font-size:clamp(2rem,4vw,3rem); line-height:1.12; letter-spacing:-.025em; }
.perigord-barbelle-preview .entry-subtitle { margin:.4rem 0 .8rem; color:var(--barbelle-muted); font-size:1.1rem; }
.perigord-barbelle-preview__cuisine { display:flex; align-items:center; gap:.45rem; margin:-.3rem 0 .8rem; color:var(--barbelle-ink); font-size:.98rem; line-height:1.45; }
.perigord-barbelle-preview__cuisine svg { width:17px; height:17px; flex:none; fill:none; stroke:var(--barbelle-accent); stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.perigord-barbelle-preview__location { display:flex; align-items:center; gap:.55rem; margin:.8rem 0; color:var(--barbelle-ink); font-weight:600; line-height:1.55; }
.perigord-barbelle-preview__location svg { width:19px; height:19px; flex:none; fill:none; stroke:var(--barbelle-accent); stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.perigord-barbelle-preview .single-meta { display:flex; justify-content:flex-start; flex-wrap:wrap; align-items:center; gap:.65rem 1rem; margin:.85rem 0 0; }
.perigord-barbelle-preview .perigord-barbelle-preview__gallery { max-width:1120px; margin:0 auto 2.5rem; }
.perigord-barbelle-preview__layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(270px,340px); gap:clamp(1.5rem,4vw,3.5rem); max-width:1120px; margin:0 auto; align-items:start; }
.perigord-barbelle-preview__main { min-width:0; }
.perigord-barbelle-preview__main .job_description { max-width:75ch; font-size:1.05rem; line-height:1.8; color:#35443b; }
.perigord-barbelle-preview__main .job_description p { margin:0 0 1.15em; }
.perigord-barbelle-preview__map-section { margin:0 0 1rem; }
.perigord-barbelle-preview__map-section h2,.perigord-barbelle-preview__illustrated-info>h2,.perigord-barbelle-preview__online>h2 { margin:0 0 .75rem; color:var(--barbelle-ink); font-size:1.35rem; line-height:1.3; }
.perigord-barbelle-preview__map-section #map.listing-map { display:block; width:100%; max-width:none; height:340px; overflow:hidden; border:1px solid var(--barbelle-line); border-radius:12px; background:#edf1ee; }
.perigord-barbelle-preview__illustrated-info,.perigord-barbelle-preview__online { margin:1.75rem 0; }
.perigord-barbelle-preview__legacy-widgets { margin:.5rem 0 0; padding:0; }
.perigord-barbelle-preview__legacy-widgets>.widget { box-sizing:border-box; min-width:0; margin:0 0 1rem; padding:22px; border:1px solid var(--barbelle-line); border-radius:10px; background:#fff; box-shadow:0 4px 14px rgba(29,51,37,.04); }
.perigord-barbelle-preview__legacy-widgets>.widget:last-child { margin-bottom:0; }
.perigord-barbelle-preview__legacy-widgets>.widget>h2,.perigord-barbelle-preview__legacy-widgets>.widget>.widget-title,.perigord-barbelle-preview__legacy-widgets>.widget>.widgettitle { margin:0 0 .85rem; }
.perigord-barbelle-preview__legacy-widgets .lodging_info_widget_row { min-width:0; }
.perigord-barbelle-preview__legacy-widgets .wpbs-container,.perigord-barbelle-preview__legacy-widgets .wpbs-calendars { max-width:100%; min-width:0; }
.perigord-barbelle-preview__legacy-widgets .lodging_info_widget_row:last-child { border-bottom:0; }
.perigord-barbelle-preview__legacy-widgets .listing-tag-list { margin:0; padding:0; }
.perigord-barbelle-preview__legacy-widgets .listing-tag-list li { list-style:none; }
.perigord-barbelle-preview__legacy-widgets .wpbs-container .wpbs-calendars { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.perigord-barbelle-preview__legacy-widgets .wpbs-container[data-columns="2"] .wpbs-calendar { float:none !important; width:auto !important; min-width:0 !important; }
.perigord-barbelle-preview__legacy-widgets #availability_calendar { max-width:100%; overflow-x:auto; }
.perigord-barbelle-preview__online ul { display:flex; flex-wrap:wrap; gap:.45rem; margin:0; padding:0; list-style:none; }
.perigord-barbelle-preview__online li { margin:0; }
.perigord-barbelle-preview__online a { display:inline-flex; padding:.4rem .65rem; border:1px solid var(--barbelle-line); border-radius:5px; color:var(--barbelle-accent); }
.perigord-barbelle-preview__event-details { margin:.8rem 0 0; padding:.75rem 0 0; border-top:1px solid var(--barbelle-line); }
.perigord-barbelle-preview__event-details p { margin:.3rem 0; }
.perigord-barbelle-preview__contact { position:sticky; top:1.25rem; min-width:0; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; }
.perigord-barbelle-preview__contact .listing-sidebar { margin:0 0 1rem; }
.perigord-barbelle-preview__contact .listing-sidebar:last-child { margin-bottom:0; }
.perigord-barbelle-preview__contact>.listing-sidebar--bottom { margin:0; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; }
.perigord-barbelle-preview .listing-contact { display:inline-flex; align-items:center; min-height:0; margin:0; padding:0; border:0; border-radius:0; background:transparent; color:#202720; font-weight:500; text-decoration:none; }
.perigord-barbelle-preview .listing-contact.listing--phone,.perigord-barbelle-preview .listing-contact.listing--phone-mobile { box-sizing:border-box; width:auto; justify-content:flex-start; }
.perigord-barbelle-preview__phone-list { display:flex; flex-direction:column; align-items:flex-start; gap:.3rem; margin:0; }
.perigord-barbelle-preview__phone-list .listing-contact { margin:0; }
.perigord-barbelle-preview__phone-list .listing-contact.listing--phone::before,.perigord-barbelle-preview__phone-list .listing-contact.listing--phone-mobile::before { display:inline-block; width:15px; margin-right:.5rem; color:#4b8758; font-size:14px; line-height:1; text-align:center; }
.perigord-barbelle-preview__phone-list .listing-contact.listing--phone::before { content:"\260e"; }
.perigord-barbelle-preview__phone-list .listing-contact.listing--phone-mobile::before { content:"\260e"; }
.perigord-barbelle-preview__phone-list .listing-contact:hover,.perigord-barbelle-preview__phone-list .listing-contact:focus-visible { background:transparent; color:#202720; text-decoration:underline; }
.perigord-barbelle-preview__location-related { display:grid; grid-template-columns:minmax(0,1fr) minmax(240px,280px); align-items:center; column-gap:clamp(1rem,2vw,1.5rem); margin:.65rem 0 0; min-width:0; }
.perigord-barbelle-preview__territory { display:flex; flex:1 1 260px; align-items:center; gap:.75rem; margin:0; min-width:0; }
.perigord-barbelle-preview__territory-map { display:block; flex:0 0 80px; width:80px; height:84px; object-fit:contain; background:#f5f4ef; border:1px solid var(--barbelle-line); border-radius:6px; }
.perigord-barbelle-preview__territory-copy { display:flex; flex-direction:column; align-items:flex-start; gap:.2rem; min-width:0; }
.perigord-barbelle-preview__google-rating { display:flex; flex:1 1 240px; align-items:center; min-width:0; }
.perigord-barbelle-preview__google-rating .pgr-google-rating { max-width:100%; }
.perigord-barbelle-preview__map-section .perigord-barbelle-preview__territory-link { display:inline-flex; align-items:center; margin:0; color:var(--barbelle-muted); font-size:.9rem; line-height:1.4; overflow-wrap:anywhere; text-decoration:underline; text-decoration-color:#aab7ad; text-underline-offset:3px; }
.perigord-barbelle-preview__territory-note { color:var(--barbelle-muted); font-size:.75rem; line-height:1.35; }
.perigord-barbelle-preview__map-section .perigord-barbelle-preview__territory-link:hover,.perigord-barbelle-preview__map-section .perigord-barbelle-preview__territory-link:focus-visible { color:var(--barbelle-accent); }
.perigord-barbelle-preview__contact #custom_html-2 { margin:0; padding:1rem; border:1px solid var(--barbelle-line); border-radius:10px; background:#fff; box-shadow:0 6px 20px rgba(29,51,37,.055); }
.perigord-barbelle-preview__contact-title { margin:0 0 .75rem; color:var(--barbelle-ink); font-size:1.35rem; line-height:1.3; }
.perigord-barbelle-preview__contact-heading { display:inline-flex; align-items:center; gap:.55rem; }
.perigord-barbelle-preview__contact-heading svg { width:19px; height:19px; flex:none; fill:none; stroke:var(--barbelle-accent); stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.perigord-barbelle-preview__contact #custom_html-2 .wpcf7 form { margin:0; }
.perigord-barbelle-preview__contact #custom_html-2 .wpcf7 form p { margin:0 0 .55rem; }
.perigord-barbelle-preview__contact-method h3,.perigord-barbelle-preview__email-heading { margin:.25rem 0 .45rem; color:var(--barbelle-muted); font-size:.88rem; font-weight:700; line-height:1.35; }
.perigord-barbelle-preview__email-heading { display:flex; align-items:center; gap:.45rem; margin-top:0; }
.perigord-barbelle-preview__email-heading svg { width:16px; height:16px; flex:none; fill:none; stroke:var(--barbelle-accent); stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.perigord-barbelle-preview__contact-method { margin:0; }
.perigord-barbelle-preview__contact-divider { height:0; margin:.85rem 0; border:0; border-top:1px solid var(--barbelle-line); }


.perigord-barbelle-preview__contact #custom_html-2 .wpcf7 form .perigord-preview-cf7-label { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.perigord-barbelle-preview__contact #custom_html-2 .wpcf7-form-control-wrap { display:block; width:100%; margin-top:0; }
.perigord-barbelle-preview__contact #custom_html-2 input.wpcf7-text,.perigord-barbelle-preview__contact #custom_html-2 input.wpcf7-email,.perigord-barbelle-preview__contact #custom_html-2 input.wpcf7-tel,.perigord-barbelle-preview__contact #custom_html-2 input.wpcf7-url,.perigord-barbelle-preview__contact #custom_html-2 textarea.wpcf7-form-control { box-sizing:border-box; display:block; width:100%; min-width:0; min-height:42px; margin:0; padding:.65rem .75rem; border:1px solid #cbd6cd; border-radius:6px; background:#fff; color:var(--barbelle-ink); font-family:inherit; font-size:15px; font-weight:400; line-height:1.35; }
.perigord-barbelle-preview__contact #custom_html-2 textarea.wpcf7-form-control { height:88px; min-height:88px; resize:vertical; }
.perigord-barbelle-preview__contact #custom_html-2 .wpcf7-form-control::placeholder { color:#68766d; opacity:1; }
.perigord-barbelle-preview__contact #custom_html-2 .wpcf7-form-control:focus { border-color:var(--barbelle-accent); outline:2px solid rgba(66,107,80,.18); outline-offset:1px; }
.perigord-barbelle-preview__contact #custom_html-2 input[type="submit"],.perigord-barbelle-preview__contact #custom_html-2 .wpcf7-submit { display:flex; align-items:center; justify-content:center; box-sizing:border-box; width:100%; min-height:44px; margin:.15rem 0 0; padding:.7rem 1rem; border:1px solid #171a18; border-radius:8px; background:#171a18; color:#fff; font-size:15px; font-weight:700; line-height:1.2; cursor:pointer; transition:background-color .15s ease,border-color .15s ease; }
.perigord-barbelle-preview__contact #custom_html-2 input[type="submit"]:hover,.perigord-barbelle-preview__contact #custom_html-2 .wpcf7-submit:hover { border-color:#343a36; background:#343a36; }
.perigord-barbelle-preview__contact #custom_html-2 .wpcf7-not-valid-tip { margin:.2rem 0 0; font-size:13px; line-height:1.4; }
.perigord-barbelle-preview__contact #custom_html-2 .wpcf7-response-output { margin:.65rem 0 0; padding:.5rem .65rem; font-size:13px; line-height:1.4; }
.perigord-barbelle-preview .listing-contact:hover,.perigord-barbelle-preview .listing-contact:focus-visible { background:#eef4ef; }
.perigord-barbelle-preview__close { position:absolute; top:1rem; right:1rem; }
.perigord-barbelle-preview :focus-visible { outline:3px solid #c28a38; outline-offset:3px; }
@media(max-width:800px) {
	.perigord-barbelle-preview .entry-header,.perigord-barbelle-preview__layout { width:calc(100% - 2rem); }
	.perigord-barbelle-preview__location-related { grid-template-columns:minmax(0,1fr); align-items:stretch; row-gap:.75rem; }
	.perigord-barbelle-preview__territory,.perigord-barbelle-preview__google-rating { box-sizing:border-box; width:100%; flex:0 1 auto; }
	.perigord-barbelle-preview__layout { grid-template-columns:minmax(0,1fr); }
	.perigord-barbelle-preview__contact { position:static; }
	.perigord-barbelle-preview__phone-list { gap:.35rem; }
	.perigord-barbelle-preview__map-section #map.listing-map { height:300px; }
	.perigord-barbelle-preview__legacy-widgets .lodging_info_widget_label { float:none; width:auto; }
	.perigord-barbelle-preview__legacy-widgets .lodging_info_widget_row_content { margin-left:0; }
}
@media(max-width:480px) {
	.perigord-barbelle-preview .entry-header,.perigord-barbelle-preview__layout { width:calc(100% - 1.25rem); }
	.perigord-barbelle-preview__map-section #map.listing-map { height:250px; }
	.perigord-barbelle-preview__legacy-widgets .wpbs-container .wpbs-calendars { grid-template-columns:minmax(0,1fr); }
	.perigord-barbelle-preview__legacy-widgets .wpbs-container[data-columns="2"] .wpbs-calendar { float:none !important; width:100% !important; min-width:0 !important; }
}
.perigord-barbelle-preview .phe-regions .phe-color-vert { background:#e3e8dc; }
.perigord-barbelle-preview .phe-regions .phe-color-blanc { background:#eee9dd; }
.perigord-barbelle-preview .phe-regions .phe-color-pourpre { background:#ecdee1; }
.perigord-barbelle-preview .phe-regions .phe-color-noir { background:#e0e3de; }
.perigord-barbelle-preview__contact a#jmfe-custom-job_reserver { box-sizing:border-box; display:flex; align-items:center; justify-content:center; gap:.65rem; width:100%; min-height:52px; margin:0 0 1rem; padding:.85rem 1rem; border:1px solid var(--barbelle-accent); border-radius:9px; background:var(--barbelle-accent); color:#fff; font-weight:700; line-height:1.35; text-align:center; text-decoration:none; transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease; }
.perigord-barbelle-preview__contact a#jmfe-custom-job_reserver::before { content:"\f073"; flex:none; font-family:FontAwesome; font-size:1rem; font-weight:400; line-height:1; }
.perigord-barbelle-preview__contact a#jmfe-custom-job_reserver:hover { border-color:#31563d; background:#31563d; color:#fff; }
.perigord-barbelle-preview__contact a#jmfe-custom-job_reserver:focus-visible { outline:3px solid rgba(66,107,80,.35); outline-offset:3px; }
