.ct-section {
width:100%;
background-size:cover;
background-repeat:repeat;
}
.ct-section>.ct-section-inner-wrap {
display:flex;
flex-direction:column;
align-items:flex-start;
}
.ct-div-block {
display:flex;
flex-wrap:nowrap;
flex-direction:column;
align-items:flex-start;
}
.ct-new-columns {
display:flex;
width:100%;
flex-direction:row;
align-items:stretch;
justify-content:center;
flex-wrap:wrap;
}
.ct-link-text {
display:inline-block;
}
.ct-link {
display:flex;
flex-wrap:wrap;
text-align:center;
text-decoration:none;
flex-direction:column;
align-items:center;
justify-content:center;
}
.ct-link-button {
display:inline-block;
text-align:center;
text-decoration:none;
}
.ct-link-button {
background-color: #1e73be;
border: 1px solid #1e73be;
color: #ffffff;
padding: 10px 16px;
}
.ct-image {
max-width:100%;
}
.ct-fancy-icon>svg {
width:55px;height:55px;}
.ct-inner-content {
width:100%;
}
.ct-slide {
display:flex;
flex-wrap:wrap;
text-align:center;
flex-direction:column;
align-items:center;
justify-content:center;
}
.ct-nestable-shortcode {
display:flex;
flex-wrap:nowrap;
flex-direction:column;
align-items:flex-start;
}
.oxy-comments {
width:100%;
text-align:left;
}
.oxy-comment-form {
width:100%;
}
.oxy-login-form {
width:100%;
}
.oxy-search-form {
width:100%;
}
.oxy-tabs-contents {
display:flex;
width:100%;
flex-wrap:nowrap;
flex-direction:column;
align-items:flex-start;
}
.oxy-tab {
display:flex;
flex-wrap:nowrap;
flex-direction:column;
align-items:flex-start;
}
.oxy-tab-content {
display:flex;
width:100%;
flex-wrap:nowrap;
flex-direction:column;
align-items:flex-start;
}
.oxy-testimonial {
width:100%;
}
.oxy-icon-box {
width:100%;
}
.oxy-pricing-box {
width:100%;
}
.oxy-posts-grid {
width:100%;
}
.oxy-gallery {
width:100%;
}
.ct-slider {
width:100%;
}
.oxy-tabs {
display:flex;
flex-wrap:nowrap;
flex-direction:row;
align-items:stretch;
}
.ct-modal {
flex-direction:column;
align-items:flex-start;
}
.ct-span {
display:inline-block;
text-decoration:inherit;
}
.ct-widget {
width:100%;
}
.oxy-dynamic-list {
width:100%;
}
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
			.ct-div-block,
			.oxy-post-content,
			.ct-text-block,
			.ct-headline,
			.oxy-rich-text,
			.ct-link-text { max-width: 100%; }
			img { flex-shrink: 0; }
			body * { min-height: 1px; }
		}            .oxy-testimonial {
                flex-direction: row;
                align-items: center;
            }
                        .oxy-testimonial .oxy-testimonial-photo-wrap {
                order: 1;
            }
            
                        .oxy-testimonial .oxy-testimonial-photo {
                width: 125px;                height: 125px;                margin-right: 20px;
            }
            
                        .oxy-testimonial .oxy-testimonial-photo-wrap, 
            .oxy-testimonial .oxy-testimonial-author-wrap, 
            .oxy-testimonial .oxy-testimonial-content-wrap {
                align-items: flex-start;                text-align: left;            }
            
                                                            .oxy-testimonial .oxy-testimonial-text {
                margin-bottom:8px;font-size: 21px;
line-height: 1.4;
-webkit-font-smoothing: subpixel-antialiased;
            }
            
                                    .oxy-testimonial .oxy-testimonial-author {
                font-size: 18px;
-webkit-font-smoothing: subpixel-antialiased;
            }
                            

                                                .oxy-testimonial .oxy-testimonial-author-info {
                font-size: 12px;
-webkit-font-smoothing: subpixel-antialiased;
            }
            
             
            
                        .oxy-icon-box {
                text-align: left;                flex-direction: column;            }
            
                        .oxy-icon-box .oxy-icon-box-icon {
                margin-bottom: 12px;
                align-self: flex-start;            }
            
                                                                        .oxy-icon-box .oxy-icon-box-heading {
                font-size: 21px;
margin-bottom: 12px;            }
            
                                                                                    .oxy-icon-box .oxy-icon-box-text {
                font-size: 16px;
margin-bottom: 12px;align-self: flex-start;            }
            
                        .oxy-icon-box .oxy-icon-box-link {
                margin-top: 20px;                            }
            
            
            /* GLOBALS */

                                                            .oxy-pricing-box .oxy-pricing-box-section {
                padding-top: 20px;
padding-left: 20px;
padding-right: 20px;
padding-bottom: 20px;
text-align: center;            }
                        
                        .oxy-pricing-box .oxy-pricing-box-section.oxy-pricing-box-price {
                justify-content: center;            }
            
            /* IMAGE */
                                                                                    .oxy-pricing-box .oxy-pricing-box-section.oxy-pricing-box-graphic {
                justify-content: center;            }
            
            /* TITLE */
                                                            
                                    .oxy-pricing-box .oxy-pricing-box-title-title {
                font-size: 48px;
            }
            
                                    .oxy-pricing-box .oxy-pricing-box-title-subtitle {
                font-size: 24px;
            }
            

            /* PRICE */
                                                .oxy-pricing-box .oxy-pricing-box-section.oxy-pricing-box-price {
                                                flex-direction: row;                                            }
            
                                    .oxy-pricing-box .oxy-pricing-box-currency {
                font-size: 28px;
            }
            
                                    .oxy-pricing-box .oxy-pricing-box-amount-main {
                font-size: 80px;
line-height: 0.7;
            }
            
                                    .oxy-pricing-box .oxy-pricing-box-amount-decimal {
                font-size: 13px;
            }
                        
                                    .oxy-pricing-box .oxy-pricing-box-term {
                font-size: 16px;
            }
            
                                    .oxy-pricing-box .oxy-pricing-box-sale-price {
                font-size: 12px;
color: rgba(0,0,0,0.5);
                margin-bottom: 20px;            }
            
            /* CONTENT */

                                                                        .oxy-pricing-box .oxy-pricing-box-section.oxy-pricing-box-content {
                font-size: 16px;
color: rgba(0,0,0,0.5);
            }
            
            /* CTA */

                                                                        .oxy-pricing-box .oxy-pricing-box-section.oxy-pricing-box-cta {
                justify-content: center;            }
            
        
                                .oxy-progress-bar .oxy-progress-bar-background {
            background-color: #000000;            background-image: linear-gradient(-45deg,rgba(255,255,255,.12) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.12) 50%,rgba(255,255,255,.12) 75%,transparent 75%,transparent);            animation: none 0s paused;        }
                
                .oxy-progress-bar .oxy-progress-bar-progress-wrap {
            width: 85%;        }
        
                                                        .oxy-progress-bar .oxy-progress-bar-progress {
            background-color: #66aaff;padding: 40px;animation: none 0s paused, none 0s paused;            background-image: linear-gradient(-45deg,rgba(255,255,255,.12) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.12) 50%,rgba(255,255,255,.12) 75%,transparent 75%,transparent);        
        }
                
                        .oxy-progress-bar .oxy-progress-bar-overlay-text {
            font-size: 30px;
font-weight: 900;
-webkit-font-smoothing: subpixel-antialiased;
        }
        
                        .oxy-progress-bar .oxy-progress-bar-overlay-percent {
            font-size: 12px;
        }
        
        .ct-slider .unslider-nav ol li {border-color: #ffffff; }.ct-slider .unslider-nav ol li.unslider-active {background-color: #ffffff; }.ct-slider .ct-slide {
				padding: 0px;			}
		
                        .oxy-superbox .oxy-superbox-secondary, 
            .oxy-superbox .oxy-superbox-primary {
                transition-duration: 0.5s;            }
            
            
            
            
            
        
        
        
        
            .oxy-shape-divider {
                width: 0px;
                height: 0px;
                
            }
            
            .oxy_shape_divider svg {
                width: 100%;
            }
            .oxy-pro-menu .oxy-pro-menu-container:not(.oxy-pro-menu-open-container):not(.oxy-pro-menu-off-canvas-container) .sub-menu{
box-shadow:px px px px ;}

.oxy-pro-menu .oxy-pro-menu-show-dropdown .oxy-pro-menu-list .menu-item-has-children > a svg{
transition-duration:0.4s;
}

.oxy-pro-menu .oxy-pro-menu-show-dropdown .oxy-pro-menu-list .menu-item-has-children > a div{
margin-left:0px;
}

.oxy-pro-menu .oxy-pro-menu-mobile-open-icon svg{
width:30px;
height:30px;
}

.oxy-pro-menu .oxy-pro-menu-mobile-open-icon{
padding-top:15px;
padding-right:15px;
padding-bottom:15px;
padding-left:15px;
}

.oxy-pro-menu .oxy-pro-menu-mobile-open-icon, .oxy-pro-menu .oxy-pro-menu-mobile-open-icon svg{
transition-duration:0.4s;
}

.oxy-pro-menu .oxy-pro-menu-mobile-close-icon{
top:20px;
left:20px;
}

.oxy-pro-menu .oxy-pro-menu-mobile-close-icon svg{
width:24px;
height:24px;
}

.oxy-pro-menu .oxy-pro-menu-mobile-close-icon, .oxy-pro-menu .oxy-pro-menu-mobile-close-icon svg{
transition-duration:0.4s;
}

.oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-off-canvas-container, .oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-open-container{
background-color:#ffffff;
}

.oxy-pro-menu .oxy-pro-menu-off-canvas-container, .oxy-pro-menu .oxy-pro-menu-open-container{
background-image:url();
}

.oxy-pro-menu .oxy-pro-menu-off-canvas-container .oxy-pro-menu-list .menu-item-has-children > a svg, .oxy-pro-menu .oxy-pro-menu-open-container .oxy-pro-menu-list .menu-item-has-children > a svg{
font-size:24px;
}

.oxy-pro-menu .oxy-pro-menu-dropdown-links-toggle.oxy-pro-menu-open-container .menu-item-has-children ul, .oxy-pro-menu .oxy-pro-menu-dropdown-links-toggle.oxy-pro-menu-off-canvas-container .menu-item-has-children ul{
background-color:rgba(0,0,0,0.2);
border-top-style:solid;
}

.oxy-pro-menu .oxy-pro-menu-container:not(.oxy-pro-menu-open-container):not(.oxy-pro-menu-off-canvas-container) .oxy-pro-menu-list{
                    flex-direction: row;
               }
.oxy-pro-menu .oxy-pro-menu-container .menu-item a{
                    text-align: left;
                    justify-content: flex-start;
                }
.oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-open-container .menu-item, .oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-off-canvas-container .menu-item{
                    align-items: flex-start;
                }

            .oxy-pro-menu .oxy-pro-menu-off-canvas-container{
                    top: 0;
                    bottom: 0;
                    right: auto;
                    left: 0;
               }
.oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-open-container .oxy-pro-menu-list .menu-item a, .oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-off-canvas-container .oxy-pro-menu-list .menu-item a{
                    text-align: left;
                    justify-content: flex-start;
                }

            .oxy-site-navigation {
--oxynav-brand-color:#4831B0;
--oxynav-neutral-color:#FFFFFF;
--oxynav-activehover-color:#EFEDF4;
--oxynav-background-color:#4831B0;
--oxynav-border-radius:0px;
--oxynav-other-spacing:8px;
--oxynav-transition-duration:0.3s;
--oxynav-transition-timing-function:cubic-bezier(.84,.05,.31,.93);
}

.oxy-site-navigation .oxy-site-navigation__mobile-close-wrapper{
text-align:left;
}

.oxy-site-navigation > ul{ left: 0; }
.oxy-site-navigation {
                        --oxynav-animation-name: none; 
                    }

                .oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(1){ 
                    background-color: var(--oxynav-brand-color);
                    transition: var(--oxynav-transition-duration);
                    margin-left: var(--oxynav-other-spacing);
                    border: none;
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(2){ 
                    background: transparent;
                    border: 1px solid currentColor;
                    transition: var(--oxynav-transition-duration);
                    margin-left: var(--oxynav-other-spacing);
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(2):not(:hover) > img{
                    filter: invert(0) !important;
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:hover{
                    background-color: var(--oxynav-activehover-color);
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(1) > a{
                    color: var(--oxynav-neutral-color);
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(2) > a{
                    color: var(--oxynav-brand-color);
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:hover > a{
                    color: var(--oxynav-brand-color);
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(1) > a::after{
                    color: var(--oxynav-neutral-color);   
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(2) > a::after{
                    color: var(--oxynav-brand-color);   
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:hover > a::after{
                    color: var(--oxynav-brand-color);   
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true'] > ul{
                    display: none;
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true'] > button, .oxy-site-navigation > ul:not(.open) > li[data-cta='true'] > ul{
                    display: none;
                }

                .ct-section-inner-wrap, .oxy-header-container{
  max-width: 1120px;
}
body {font-family: 'Open Sans';}body {line-height: 1.6;font-size: 16px;font-weight: 400;color: #404040;}.oxy-nav-menu-hamburger-line {background-color: #404040;}h1, h2, h3, h4, h5, h6 {font-family: 'Source Sans 3';font-size: 36px;font-weight: 700;}h2, h3, h4, h5, h6{font-size: 30px;}h3, h4, h5, h6{font-size: 24px;}h4, h5, h6{font-size: 20px;}h5, h6{font-size: 18px;}h6{font-size: 16px;}a {color: #0074db;text-decoration: none;}a:hover {text-decoration: none;}.ct-link-text {text-decoration: ;}.ct-link {text-decoration: ;}.ct-link-button {border-radius: 3px;}.ct-section-inner-wrap {
padding-top: 75px;
padding-right: 20px;
padding-bottom: 75px;
padding-left: 20px;
}.ct-new-columns > .ct-div-block {
padding-top: 20px;
padding-right: 20px;
padding-bottom: 20px;
padding-left: 20px;
}.oxy-header-container {
padding-right: 20px;
padding-left: 20px;
}@media (max-width: 992px) {
				.ct-columns-inner-wrap {
					display: block !important;
				}
				.ct-columns-inner-wrap:after {
					display: table;
					clear: both;
					content: "";
				}
				.ct-column {
					width: 100% !important;
					margin: 0 !important;
				}
				.ct-columns-inner-wrap {
					margin: 0 !important;
				}
			}
/* =============================================================================
   love-bordeaux.fr — feuille de styles du site
   -----------------------------------------------------------------------------
   OÙ LA METTRE
     Oxygen > Manage > Stylesheets, une seule feuille nommée « love-bordeaux ».

   CE QU'ELLE COUVRE
     L'en-tête, le pied, les pages, la fiche d'une adresse, le cahier. Le registre apporte son
     propre habillage, servi par snippet-annonce-love-bordeaux.php : ne le dupliquez pas ici,
     les deux divergeraient.

   LES PRÉFIXES
     pbl-      les pages et les gabarits (ce fichier)
     pbl-fi-   la fiche d'une adresse, et rien d'autre
     pbl__     le moteur du registre — RÉSERVÉ, il ne doit apparaître nulle part ici

   LA PALETTE
     Aucun rouge, nulle part. C'est le parti pris du site : le réflexe « bordeaux = vin » est
     déjà servi trois fois ailleurs. Les valeurs ci-dessous sont mesurées, pas estimées — l'or
     et le gris de la maquette échouaient au contraste sur des libellés de 11 px.
============================================================================= */

:root{
  --pbl-papier:#FBF8F2;
  --pbl-pierre:#E9DFCB;
  --pbl-ardoise:#39434D;
  --pbl-ardoise-2:#28313A;
  --pbl-or:#8A6A34;
  --pbl-encre:#1C2126;
  --pbl-texte:#4E5761;
  --pbl-gris:#666E76;
  --pbl-filet:#DED5C2;

  --pbl-titre:'Spectral', Georgia, 'Times New Roman', serif;
  --pbl-courant:'Archivo', system-ui, -apple-system, 'Segoe UI', sans-serif;
}

/* Contrastes sur papier : encre 15,5:1 · texte 6,9:1 · ardoise 9,3:1 · or 4,8:1 · gris 4,9:1 */

body{
  background:var(--pbl-papier);
  color:var(--pbl-texte);
  font-family:var(--pbl-courant);
  font-size:16px;
  line-height:1.6;
  margin:0;
  -webkit-font-smoothing:antialiased;
}

h1,h2,h3,h4{font-family:var(--pbl-titre);font-weight:400;color:var(--pbl-encre);letter-spacing:-.005em}
img{max-width:100%;height:auto}

/* -----------------------------------------------------------------------------
   LES LIENS DANS LE TEXTE
   -----------------------------------------------------------------------------
   Ils étaient en ardoise (#39434D) au milieu d'un texte en #4E5761 : 1,4:1 entre les deux,
   et aucun soulignement. Personne ne les voyait.

   L'or les distingue nettement du texte courant (4,7:1 sur papier, 5,0:1 sur blanc), mais
   l'écart entre le lien et le texte qui l'entoure reste à 1,5:1 — sous le seuil de 3:1 qui
   autoriserait la couleur seule. LE SOULIGNEMENT N'EST DONC PAS DÉCORATIF, il est ce qui rend
   le lien identifiable pour qui distingue mal les teintes. Ne le retirez pas.

   Le trait est posé en retrait et aminci pour ne pas hacher la lecture ; il s'épaissit au
   survol, où la couleur fonce jusqu'à 10,6:1.
----------------------------------------------------------------------------- */
a{
  color:var(--pbl-or);
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
  text-decoration-color:rgba(138,106,52,.5);
}
a:hover,a:focus{
  color:#4A3818;
  text-decoration-thickness:2px;
  text-decoration-color:currentColor;
}
a:focus-visible{outline:2px solid var(--pbl-or);outline-offset:2px;border-radius:1px}

/* Les liens qui ne sont pas des liens de texte : navigation, boutons, titres de liste. Ils
   portent déjà leur propre couleur et n'ont pas à être soulignés. */
.pbl-marque,.pbl-nav a,.pbl-sous-in a,.pbl-pied a,.pbl-cta,.pbl-fi-reserver,
.pbl-billet a,.pbl-billet-vue,.pbl-resultat a{text-decoration:none}

.pbl-large{max-width:1180px;margin:0 auto;padding:0 24px}
.pbl-etroit{max-width:760px;margin:0 auto;padding:0 24px}

/* -----------------------------------------------------------------------------
   L'en-tête : deux barres, la haute pour l'identité, la basse pour la navigation.
----------------------------------------------------------------------------- */
.pbl-haut{background:var(--pbl-ardoise);color:#EFE9DC}
.pbl-haut-in{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0}
.pbl-marque{font-family:var(--pbl-titre);font-size:21px;letter-spacing:.02em;color:#F3EEE3;text-decoration:none}
.pbl-marque b{font-weight:400}
.pbl-nav{display:flex;flex-wrap:wrap;gap:20px;font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.pbl-nav a{color:#DCD5C6;text-decoration:none}
.pbl-nav a:hover,.pbl-nav a[aria-current="page"]{color:#fff;text-decoration:underline;text-underline-offset:4px}
.pbl-burger{display:none;background:0;border:1px solid rgba(255,255,255,.35);color:#EFE9DC;font:inherit;font-size:12px;letter-spacing:.12em;text-transform:uppercase;padding:8px 14px;cursor:pointer}

.pbl-sous{border-bottom:1px solid var(--pbl-filet);background:var(--pbl-papier)}
.pbl-sous-in{display:flex;flex-wrap:wrap;gap:18px;padding:11px 0;font-size:13px;color:var(--pbl-gris)}
.pbl-sous-in a{color:var(--pbl-ardoise);text-decoration:none}
.pbl-sous-in a:hover{text-decoration:underline;text-underline-offset:3px}

/* -----------------------------------------------------------------------------
   Les pages
----------------------------------------------------------------------------- */
.pbl-tete{padding:44px 0 26px;border-bottom:1px solid var(--pbl-filet)}
.pbl-surtitre{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--pbl-or);margin:0 0 10px}
.pbl-tete h1{font-size:clamp(30px,4.4vw,42px);line-height:1.1;margin:0 0 14px;max-width:18ch}
.pbl-chapo{margin:0;max-width:62ch;font-size:17px;line-height:1.6}

.pbl-section{padding:40px 0 8px}
.pbl-section h2{font-size:clamp(22px,2.8vw,29px);line-height:1.2;margin:0 0 14px;max-width:24ch}
.pbl-section h3{font-size:19px;margin:26px 0 8px}
.pbl-section p{max-width:70ch;margin:0 0 14px}
.pbl-section ul{max-width:70ch;padding-left:20px}
.pbl-section li{margin:0 0 7px}

.pbl-filet{border:0;border-top:1px solid var(--pbl-filet);margin:38px 0}

.pbl-methode{background:#fff;border:1px solid var(--pbl-filet);padding:22px 24px;margin:30px 0;max-width:74ch}
.pbl-methode h2{font-family:var(--pbl-courant);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--pbl-ardoise);margin:0 0 10px}
.pbl-methode p{font-size:14.5px;margin:0 0 10px}
.pbl-methode p:last-child{margin:0}

.pbl-chiffres{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:26px 0 6px}
.pbl-chiffres div{border-top:2px solid var(--pbl-ardoise);padding-top:11px}
.pbl-chiffres b{display:block;font-family:var(--pbl-titre);font-size:27px;color:var(--pbl-encre);line-height:1.1}
.pbl-chiffres span{font-size:11px;letter-spacing:.11em;text-transform:uppercase;color:var(--pbl-gris)}

/* -----------------------------------------------------------------------------
   L'en-tête de l'accueil, à la une (2026-09-11)
   Le texte à gauche, l'image dans une FENÊTRE CINTRÉE à droite : l'arc en plein cintre des
   façades XVIIIe de la place de la Bourse. Un cadre d'or décalé vers le bas et la gauche dit la
   pierre de taille, un appui de pierre ferme la baie. Aucune ombre portée : le cadre suffit.
   Arc : pour une image au rapport 4/5, un demi-cercle exact demande un rayon horizontal de 50 %
   et un rayon vertical de 40 % (la moitié de la largeur, rapportée à la hauteur).
----------------------------------------------------------------------------- */
.pbl-tete--une{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:30px 64px;align-items:center;padding:52px 0 56px}
.pbl-tete--sans-image{display:block}
.pbl-une-texte{min-width:0}
.pbl-tete--une h1{font-size:clamp(36px,5.2vw,62px);line-height:1.03;max-width:11ch;margin:0 0 6px}
.pbl-tete--une .pbl-chiffres{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 30px;max-width:440px;margin:32px 0 34px}
.pbl-tete--une .pbl-chiffres b{font-size:30px}
.pbl-une-actions{margin:0}
.pbl-une-actions .pbl-cta{padding:15px 30px}

.pbl-une-fenetre{margin:14px 14px 0 0;justify-self:end;width:100%;max-width:470px}
/* La baie porte le cadre et l'appui ; posés sur la figure, ils descendaient jusqu'à la légende. */
.pbl-une-baie{position:relative;display:block}
.pbl-une-baie img{position:relative;z-index:1;display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:34% 50%;border-radius:50% 50% 0 0/40% 40% 0 0;background:var(--pbl-pierre)}
/* Le cadre d'or suit l'arc à 12 px sur trois côtés et s'arrête à l'appui. Rayon vertical
   recalculé pour la boîte agrandie : (largeur + 24) / 2, rapporté à (hauteur + 12) ≈ 41 %. */
.pbl-une-baie::before{content:"";position:absolute;z-index:0;top:-12px;right:-12px;bottom:0;left:-12px;border:1px solid var(--pbl-or);border-bottom:0;border-radius:50% 50% 0 0/41% 41% 0 0}
/* L'appui de fenêtre : une tablette de pierre, plus large que la baie. */
.pbl-une-baie::after{content:"";position:absolute;z-index:2;left:-24px;right:-24px;bottom:-9px;height:9px;background:var(--pbl-pierre);border-top:1px solid var(--pbl-filet)}
.pbl-une-fenetre figcaption{margin-top:20px;text-align:right;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--pbl-gris)}

.pbl-tableau{width:100%;border-collapse:collapse;margin:20px 0;font-size:15px}
.pbl-tableau th,.pbl-tableau td{text-align:left;padding:11px 12px;border-bottom:1px solid var(--pbl-filet);vertical-align:top}
.pbl-tableau th{font-family:var(--pbl-courant);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--pbl-ardoise);border-bottom:2px solid var(--pbl-ardoise)}

.pbl-cta{display:inline-block;background:var(--pbl-ardoise);color:#F3EEE3;padding:12px 24px;font-size:12px;letter-spacing:.13em;text-transform:uppercase;text-decoration:none}
.pbl-cta:hover{background:var(--pbl-ardoise-2);color:#fff}
.pbl-cta--clair{background:0;border:1px solid var(--pbl-ardoise);color:var(--pbl-ardoise)}
.pbl-cta--clair:hover{background:var(--pbl-ardoise);color:#F3EEE3}

/* -----------------------------------------------------------------------------
   Le cahier
----------------------------------------------------------------------------- */
.pbl-cahier{display:grid;grid-template-columns:repeat(2,1fr);gap:30px;padding:24px 0}
.pbl-billet{border-top:1px solid var(--pbl-filet);padding-top:16px}
.pbl-billet-vue{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--pbl-pierre);border:1px solid var(--pbl-filet);margin:0 0 14px}
.pbl-billet-vue img{width:100%;height:100%;object-fit:cover;display:block}
.pbl-billet-vue--vide{display:block;width:100%;height:100%;background:repeating-linear-gradient(120deg,#E9DFCB,#E9DFCB 10px,#E0D4BB 10px,#E0D4BB 20px)}
.pbl-billet a{text-decoration:none}
.pbl-billet h3{margin:0 0 6px;font-size:21px;line-height:1.25}
.pbl-billet time{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--pbl-gris)}
.pbl-billet p{margin:8px 0 0;font-size:14.5px}

.pbl-article{padding:12px 0 40px}
.pbl-article .pbl-corps{max-width:66ch;font-size:17px}
.pbl-article .pbl-corps p{margin:0 0 18px}
.pbl-article .pbl-corps h2{margin:34px 0 10px}
.pbl-article .pbl-corps h3{margin:26px 0 8px}
.pbl-article .pbl-corps blockquote{margin:24px 0;padding-left:20px;border-left:3px solid var(--pbl-or);font-size:18px;color:var(--pbl-encre)}

/* -----------------------------------------------------------------------------
   La fiche d'une adresse
   Un bandeau panoramique en tête, puis deux colonnes de journal. Rien de collant :
   ni barre en bas, ni colonne de réservation qui suit le défilement.
----------------------------------------------------------------------------- */
.pbl-fi-bandeau{position:relative;width:100%;aspect-ratio:21/9;overflow:hidden;background:var(--pbl-pierre);border-bottom:1px solid var(--pbl-filet)}
.pbl-fi-bandeau img{width:100%;height:100%;object-fit:cover;display:block}
.pbl-fi-marque{position:absolute;left:0;bottom:0;background:var(--pbl-or);color:#FBF8F2;font-size:11px;letter-spacing:.16em;text-transform:uppercase;padding:6px 14px}

.pbl-fi-tete{padding:30px 0 22px;border-bottom:1px solid var(--pbl-filet)}
.pbl-fi-tete h1{font-size:clamp(28px,4vw,38px);line-height:1.12;margin:0 0 8px}
.pbl-fi-ou{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--pbl-gris)}

.pbl-fi-corps{columns:2;column-gap:44px;padding:28px 0 10px;max-width:1000px}
.pbl-fi-corps p{margin:0 0 16px;break-inside:avoid}
.pbl-fi-corps h2{font-size:20px;margin:0 0 10px;column-span:all}

/* La bande de réservation : pleine largeur, sur fond ardoise, sous le titre. Elle a remplacé
   un bloc coincé en tête de la première colonne de texte, où le bouton se perdait. */
.pbl-fi-offre{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px 30px;background:var(--pbl-ardoise);color:#EFE9DC;padding:22px 28px;margin:26px 0 0}
.pbl-fi-montant{display:block;font-family:var(--pbl-titre);font-size:36px;line-height:1;color:#fff}
.pbl-fi-offre small{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#CDC6B8;margin-top:6px}
.pbl-fi-reserver{display:inline-block;background:var(--pbl-or);color:#fff;padding:16px 36px;font-size:13px;letter-spacing:.14em;text-transform:uppercase;text-decoration:none}
.pbl-fi-reserver:hover{background:#6F5429;color:#fff}
.pbl-fi-par{width:100%;font-size:12.5px;color:#CDC6B8;margin:0}
/* La barre de réservation mobile (2026-09-11) : absente au-dessus de 900 px, voir le bloc
   Mobile. visibility:hidden, quand elle est rentrée, la retire aussi de la tabulation. */
.pbl-fi-barre{display:none}

/* La galerie : un défilé horizontal avec accrochage. Aucune visionneuse, aucun JavaScript. */
.pbl-fi-galerie{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding:22px 0 6px;margin:0}
.pbl-fi-vue{flex:0 0 auto;width:min(62%,620px);aspect-ratio:3/2;object-fit:cover;scroll-snap-align:start;border:1px solid var(--pbl-filet);display:block}

.pbl-fi-essentiel{margin:26px 0;border-top:1px solid var(--pbl-filet);padding-top:18px}
.pbl-fi-essentiel dl{display:grid;grid-template-columns:auto 1fr;gap:8px 22px;margin:0;max-width:70ch}
.pbl-fi-essentiel dt{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--pbl-gris);padding-top:3px}
.pbl-fi-essentiel dd{margin:0;color:var(--pbl-encre)}

.pbl-fi-carte{height:340px;border:1px solid var(--pbl-filet);margin:26px 0 10px;background:#fff}
.pbl-fi-legende{font-size:12.5px;color:var(--pbl-gris);margin:0 0 26px}

.pbl-fi-ecrire{max-width:660px;margin:14px 0 0}
.pbl-fi-duo{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:0 0 14px}
.pbl-fi-ecrire label{display:block}
.pbl-fi-ecrire span{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--pbl-gris);margin:0 0 5px}
.pbl-fi-ecrire input,.pbl-fi-ecrire textarea{font:inherit;font-size:15px;width:100%;border:1px solid var(--pbl-filet);background:#fff;padding:10px 12px;color:var(--pbl-encre)}
.pbl-fi-ecrire textarea{resize:vertical}
.pbl-fi-bloc{margin:0 0 14px}
.pbl-fi-appat{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.pbl-fi-mention{font-size:13px;color:var(--pbl-gris);max-width:60ch;margin:0 0 16px}
.pbl-fi-envoyer{font:inherit;font-size:12px;letter-spacing:.13em;text-transform:uppercase;background:var(--pbl-ardoise);color:#F3EEE3;border:0;padding:12px 26px;cursor:pointer}
.pbl-fi-envoyer:hover{background:var(--pbl-ardoise-2)}
.pbl-fi-avis{padding:12px 16px;margin:0 0 18px;font-size:14.5px;border-left:3px solid var(--pbl-or);background:#fff}
.pbl-fi-avis--ok{border-left-color:var(--pbl-or)}
.pbl-fi-avis--ko{border-left-color:var(--pbl-ardoise);background:#F4F1EA}

/* -----------------------------------------------------------------------------
   Le pied
----------------------------------------------------------------------------- */
.pbl-pied{background:var(--pbl-ardoise);color:#CDC6B8;margin-top:56px;padding:40px 0 30px;font-size:14px}
.pbl-pied-in{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:34px}
.pbl-pied h2{font-family:var(--pbl-courant);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#EFE9DC;margin:0 0 12px}
.pbl-pied a{color:#DCD5C6;text-decoration:none;display:inline-block;margin:0 0 7px}
.pbl-pied a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.pbl-pied p{margin:0 0 12px;max-width:46ch}
.pbl-bas{border-top:1px solid rgba(255,255,255,.14);margin-top:30px;padding-top:18px;font-size:12.5px;color:#AFA89A;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}

/* -----------------------------------------------------------------------------
   LES BLOCS DU GUIDE DE L'ACCUEIL
   -----------------------------------------------------------------------------
   L'accueil porte un long texte de fond. Servi en paragraphes successifs, il se lit comme un
   mur et donne à la page l'allure d'un article optimisé plutôt que d'une page d'accueil.

   Ces composants découpent la même matière en objets distincts : une comparaison en deux
   volets, une grille de communes, une grille d'équipements, une suite d'étapes. Le lecteur
   balaie, s'arrête où ça l'intéresse, et le texte reste entier pour qui le lit en continu.
----------------------------------------------------------------------------- */

/* Le chapeau d'une grande section : un titre, une phrase, et de l'air avant les blocs. */
.pbl-amorce{max-width:74ch;margin:0 0 26px}
.pbl-amorce p{font-size:17px;line-height:1.62;margin:0 0 14px}
.pbl-amorce p:last-child{margin:0}

/* La comparaison en deux volets. */
.pbl-duo{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:26px 0 8px;border-top:2px solid var(--pbl-ardoise)}
.pbl-duo > div{padding:22px 26px 22px 0}
.pbl-duo > div + div{padding-left:26px;border-left:1px solid var(--pbl-filet)}
.pbl-duo h3{font-size:20px;margin:0 0 4px}
.pbl-duo p{font-size:14.8px;line-height:1.62;margin:0 0 12px;max-width:none}
.pbl-duo p:last-child{margin:0}

/* La grille des communes. */
.pbl-cartes{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:0 34px;margin:8px 0 0}
.pbl-carte{border-top:1px solid var(--pbl-filet);padding:20px 0 22px}
.pbl-carte h3{font-size:21px;margin:0 0 3px;line-height:1.2}
.pbl-carte p{font-size:14.8px;line-height:1.62;margin:0;max-width:none}

/* La grille des équipements. */
.pbl-defs{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;margin:8px 0 0}
.pbl-def{border-top:2px solid var(--pbl-ardoise);padding:18px 0 24px}
.pbl-def h3{font-size:19px;margin:0 0 10px;line-height:1.25}
.pbl-def p{font-size:14.8px;line-height:1.62;margin:0 0 12px;max-width:none}
.pbl-def p:last-child{margin:0}

/* Les trois motifs de réservation : plus courts, alignés en colonnes. */
.pbl-motifs{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin:8px 0 0}
.pbl-motif{border-top:2px solid var(--pbl-or);padding:16px 0 0}
.pbl-motif h3{font-size:18px;margin:0 0 8px;line-height:1.25}
.pbl-motif p{font-size:14.8px;line-height:1.6;margin:0;max-width:none}

/* Les étapes numérotées. */
.pbl-etapes{list-style:none;counter-reset:pbl;padding:0;margin:18px 0 0;max-width:74ch}
.pbl-etapes li{counter-increment:pbl;position:relative;padding:0 0 18px 56px;border-bottom:1px solid var(--pbl-filet);margin:0 0 18px}
.pbl-etapes li:last-child{border-bottom:0;margin-bottom:0}
.pbl-etapes li::before{content:counter(pbl);position:absolute;left:0;top:-2px;font-family:var(--pbl-titre);font-size:26px;color:var(--pbl-or);line-height:1}
.pbl-etapes b{display:block;color:var(--pbl-encre);font-weight:600;margin:0 0 4px}
.pbl-etapes p{margin:0;font-size:14.8px;max-width:none}

/* Le signe qui ouvre un bloc d'argument. Le site n'a par ailleurs aucune icône — les repères
   sont typographiques. Ces caractères viennent du texte fourni ; ils sont rendus discrets. */
.pbl-def-signe{display:block;font-size:24px;line-height:1;margin:0 0 12px}

/* La bande d'appel : fond ardoise, pleine largeur, centrée. Elle clôt une page de conversion
   et ne sert que là — un site d'annuaire n'a pas à interpeller son lecteur à chaque section. */
.pbl-appel{background:var(--pbl-ardoise);color:#EFE9DC;padding:38px 30px;margin:40px 0 0;text-align:center}
.pbl-appel h2{color:#fff;margin:0 0 10px;font-size:clamp(22px,2.8vw,29px);line-height:1.2}
.pbl-appel p{color:#CDC6B8;margin:0 auto 22px;max-width:56ch}
.pbl-appel .pbl-cta{background:var(--pbl-or);color:#fff}
.pbl-appel .pbl-cta:hover{background:#6F5429;color:#fff}

/* Les questions : un filet par question, pas de <details> — le contenu doit être lisible
   d'emblée, et un accordéon cache le texte aux lecteurs comme aux moteurs. */
.pbl-questions{margin:8px 0 0;max-width:78ch}
.pbl-question{border-top:1px solid var(--pbl-filet);padding:20px 0 4px}
.pbl-question h3{font-size:19px;margin:0 0 8px;line-height:1.3}
.pbl-question p{font-size:15px;margin:0 0 14px;max-width:none}

/* -----------------------------------------------------------------------------
   404 et recherche
----------------------------------------------------------------------------- */
.pbl-404{padding:70px 0 40px;max-width:60ch}
.pbl-404 h1{font-size:clamp(28px,4vw,38px);margin:0 0 14px}
.pbl-recherche{padding:34px 0 10px}
.pbl-resultat{border-bottom:1px solid var(--pbl-filet);padding:16px 0}
.pbl-resultat h2{font-size:20px;margin:0 0 4px}
.pbl-resultat a{text-decoration:none}
.pbl-resultat p{margin:4px 0 0;font-size:14.5px}
.pbl-champ-recherche{display:flex;gap:10px;max-width:520px;margin:18px 0 0}
.pbl-champ-recherche input{font:inherit;flex:1;border:1px solid var(--pbl-filet);background:#fff;padding:11px 13px}
.pbl-champ-recherche button{font:inherit;font-size:12px;letter-spacing:.13em;text-transform:uppercase;background:var(--pbl-ardoise);color:#F3EEE3;border:0;padding:11px 22px;cursor:pointer}

/* -----------------------------------------------------------------------------
   Mobile
   88 % des clics de ce site viennent du téléphone, et la position moyenne y est trois fois
   meilleure que sur ordinateur. Ce bloc n'est pas une adaptation, c'est le cas principal.
----------------------------------------------------------------------------- */
@media (max-width:900px){
  .pbl-nav{display:none}
  .pbl-nav.pbl-nav--ouvert{display:flex;flex-direction:column;gap:14px;width:100%;padding:14px 0 4px}
  .pbl-burger{display:inline-block}
  .pbl-haut-in{flex-wrap:wrap}
  .pbl-chiffres{grid-template-columns:repeat(2,1fr)}
  .pbl-cahier{grid-template-columns:1fr;gap:22px}
  .pbl-fi-corps{columns:1}
  .pbl-fi-duo{grid-template-columns:1fr}
  .pbl-fi-bandeau{aspect-ratio:3/2}
  .pbl-fi-offre{padding:20px 20px;gap:14px}
  .pbl-fi-montant{font-size:30px}
  .pbl-fi-reserver{width:100%;text-align:center;padding:16px 20px}
  .pbl-fi-vue{width:88%}
  /* La barre de réservation : la bande ardoise de la fiche, fixée en bas, filet d'or en tête,
     escamotée vers le bas tant que la bande du haut n'a pas été dépassée. */
  .pbl-fi-barre{display:flex;align-items:center;gap:14px;position:fixed;left:0;right:0;bottom:0;z-index:90;
    padding:12px 18px calc(12px + env(safe-area-inset-bottom));background:var(--pbl-ardoise);color:#EFE9DC;
    border-top:3px solid var(--pbl-or);transform:translateY(110%);visibility:hidden;
    transition:transform .28s ease,visibility 0s linear .28s}
  .pbl-fi-barre--vue{transform:none;visibility:visible;transition:transform .28s ease}
  .pbl-fi-barre-prix{margin:0;flex:1 1 auto;min-width:0;font-family:var(--pbl-titre);font-size:24px;line-height:1.1;color:#fff}
  .pbl-fi-barre-prix small{font-family:var(--pbl-courant);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#CDC6B8;margin-left:6px}
  .pbl-fi-barre-via{display:block;margin-top:4px;font-family:var(--pbl-courant);font-size:11.5px;color:#CDC6B8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .pbl-fi-barre-cta{flex:0 0 auto;background:var(--pbl-or);color:#fff;padding:14px 22px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;text-decoration:none}
  .pbl-fi-barre-cta:hover{background:#6F5429;color:#fff}
  /* La barre couvre le bas de l'écran : on rend cette hauteur à la page. */
  body:has(#pbl-fi-barre){padding-bottom:84px}
  .pbl-pied-in{grid-template-columns:1fr;gap:26px}
  .pbl-tableau{display:block;overflow-x:auto}
  .pbl-duo{grid-template-columns:1fr}
  .pbl-duo > div{padding:20px 0}
  .pbl-duo > div + div{padding-left:0;border-left:0;border-top:1px solid var(--pbl-filet)}
  .pbl-cartes{grid-template-columns:1fr;gap:0}
  .pbl-defs{grid-template-columns:1fr;gap:0}
  .pbl-motifs{grid-template-columns:1fr;gap:26px}
  .pbl-etapes li{padding-left:44px}
  .pbl-etapes li::before{font-size:22px}
  .pbl-appel{padding:30px 20px}
  .pbl-appel .pbl-cta{display:block}
  /* L'accueil à la une, sur téléphone : titre, IMAGE, chiffres, bouton. Le bloc de texte
     s'efface (display:contents) pour que l'image vienne s'intercaler entre ses enfants. La baie
     devient un arc surbaissé : un plein cintre sur une image large mangerait l'écran. */
  .pbl-tete--une{grid-template-columns:1fr;gap:0;padding:30px 0 34px}
  .pbl-tete--une .pbl-une-texte{display:contents}
  .pbl-tete--une .pbl-surtitre{order:1}
  .pbl-tete--une h1{order:2;max-width:none;margin:0 0 22px}
  .pbl-une-fenetre{order:3;justify-self:stretch;width:auto;max-width:none;margin:10px 10px 0}
  .pbl-tete--une .pbl-chiffres{order:4;max-width:none;margin:40px 0 26px;gap:18px 22px}
  .pbl-tete--une .pbl-chiffres b{font-size:26px}
  .pbl-une-actions{order:5}
  .pbl-une-actions .pbl-cta{display:block;text-align:center}
  .pbl-une-baie img{aspect-ratio:4/3;object-position:30% 55%;border-radius:50% 50% 0 0/20% 20% 0 0}
  .pbl-une-baie::before{top:-8px;right:-8px;left:-8px;border-radius:50% 50% 0 0/22% 22% 0 0}
  .pbl-une-baie::after{left:-14px;right:-14px;bottom:-7px;height:7px}
  .pbl-une-fenetre figcaption{margin-top:16px}
}
