.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;
				}
			}
/* lesriads.fr — design « Majorelle » : bleu Majorelle, jaune citron des jarres, blanc de chaux ; photos en arc de patio.
   Toutes les règles sont sous .lr (en-tête, contenu, pied) pour ne rien toucher d'Oxygen. */
@font-face { font-family: "Gloock"; font-style: normal; font-weight: 400; font-display: swap;
  src: url(/wp-content/uploads/lr-polices/gloock-latin.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Gloock"; font-style: normal; font-weight: 400; font-display: swap;
  src: url(/wp-content/uploads/lr-polices/gloock-latin-ext.woff2) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Albert Sans"; font-style: normal; font-weight: 400 700; font-display: swap;
  src: url(/wp-content/uploads/lr-polices/albert-sans-latin.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Albert Sans"; font-style: normal; font-weight: 400 700; font-display: swap;
  src: url(/wp-content/uploads/lr-polices/albert-sans-latin-ext.woff2) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }

.lr { --maj: #1D3B9E; --maj-f: #142B78; --citron: #F2C12E; --citron-f: #E5AF12; --chaux: #FFFFFF; --encre: #14183A; --texte: #33375A;
  --doux: #5A5F7A; --sable: #F5F1EA; --trait: #E3E0EE; --pise: #F1DCC4; --pise-f: #DDB894; --ciel: #EEF0F8;
  --f-titre: "Gloock", Georgia, "Times New Roman", serif; --f-texte: "Albert Sans", "Segoe UI", system-ui, sans-serif;
  color: var(--encre); font: 16px/1.55 var(--f-texte); background: var(--chaux); -webkit-font-smoothing: antialiased; }
.lr *, .lr *::before, .lr *::after { box-sizing: border-box; }
.lr h1, .lr h2, .lr h3 { font-family: var(--f-titre); font-weight: 400; margin: 0; text-wrap: balance; color: var(--maj-f); }
.lr p { margin: 0; }
.lr a { color: var(--maj); }
.lr img { max-width: 100%; display: block; }
.lr :focus-visible { outline: 2px solid var(--maj); outline-offset: 2px; }
.lr-cadre { width: 100%; max-width: 1200px; margin: 0 auto; padding-inline: 20px; }

/* ---------- en-tête ---------- */
.lr-tete { border-bottom: 1px solid var(--trait); background: var(--chaux); }
.lr-tete .lr-cadre { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 24px; padding-block: 14px; }
.lr-logo { display: inline-flex; align-items: center; gap: 9px; font: 27px/1 var(--f-titre); color: var(--maj) !important; text-decoration: none; }
.lr-logo svg { width: 18px; height: 22px; flex: none; }
.lr-nav { display: flex; flex-wrap: wrap; gap: 6px 20px; font-size: 15px; }
.lr-nav a { color: var(--encre); text-decoration: none; padding-block: 4px; }
.lr-nav a[aria-current="page"] { color: var(--maj); box-shadow: inset 0 -2px var(--citron); }
.lr-nav a:hover { color: var(--maj); }

/* ---------- pied ---------- */
.lr-pied { background: var(--maj-f); color: #D5DCF7; margin-top: 0; }
.lr-pied .lr-cadre { padding-block: 34px; display: grid; gap: 16px; }
.lr-pied .lr-logo { color: #fff !important; }
.lr-pied nav { display: flex; flex-wrap: wrap; gap: 8px 22px; font-size: 15px; }
.lr-pied a { color: #fff; text-decoration: none; }
.lr-pied a:hover { text-decoration: underline; }
.lr-pied small { font-size: 13px; line-height: 1.5; max-width: 72ch; }

/* ---------- page de ville ---------- */
.lr-hero { background: var(--sable); }
.lr-hero .lr-cadre { display: grid; gap: 26px; padding-block: 26px 32px; }
.lr-fil { font-size: 13px; color: var(--doux); }
.lr-fil a { color: var(--doux); }
.lr-hero h1 { font-size: 40px; line-height: 1.04; margin: 8px 0 12px; }
.lr-chapo { font-size: 17px; color: var(--texte); max-width: 58ch; }
.lr-trio { display: grid; grid-template-columns: 1fr 1.25fr 1fr; gap: 10px; align-items: end; }
.lr-arche { border-radius: 999px 999px 4px 4px; overflow: hidden; background: var(--pise); box-shadow: 0 0 0 4px var(--chaux), 0 0 0 5px var(--trait); }
.lr-arche img { width: 100%; height: 100%; object-fit: cover; }
.lr-trio .lr-arche { aspect-ratio: 3 / 4.6; }
.lr-trio .lr-arche:nth-child(2) { aspect-ratio: 3 / 5.2; box-shadow: 0 0 0 4px var(--chaux), 0 0 0 5px var(--citron); }

.lr-combien { border: 0; padding: 0; margin: 20px 0 0; display: flex; flex-wrap: wrap; gap: 8px; min-width: 0; }
.lr-combien legend { padding: 0; margin-bottom: 10px; font: 25px/1.1 var(--f-titre); color: var(--maj-f); }
.lr-combien label { position: relative; }
.lr-combien input { position: absolute; inset: 0; opacity: 0; margin: 0; cursor: pointer; }
.lr-combien span { display: inline-block; padding: 9px 17px; border-radius: 999px; border: 1.5px solid var(--maj); background: var(--chaux); color: var(--maj); font-weight: 600; font-size: 15px; }
.lr-combien input:checked + span { background: var(--maj); color: #fff; box-shadow: inset 0 -3px 0 var(--citron); }
.lr-combien input:focus-visible + span { outline: 2px solid var(--maj); outline-offset: 3px; }
.lr-option { position: relative; display: inline-block; margin-top: 12px; }
.lr-option input { position: absolute; inset: 0; opacity: 0; margin: 0; cursor: pointer; }
.lr-option span { display: inline-flex; align-items: center; gap: 9px; padding: 9px 17px 9px 13px; border-radius: 999px; border: 1.5px dashed var(--maj); background: var(--chaux); color: var(--maj); font-weight: 600; font-size: 15px; }
.lr-option span::before { content: ""; width: 16px; height: 16px; border-radius: 4px; border: 1.5px solid var(--maj); background: #fff; flex: none; }
.lr-option small { font-weight: 400; font-size: 13px; opacity: .8; }
.lr-option input:checked + span { border-style: solid; background: var(--maj); color: #fff; box-shadow: inset 0 -3px 0 var(--citron); }
.lr-option input:checked + span::before { background: var(--citron) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5l3 3 6-7' fill='none' stroke='%231D3B9E' stroke-width='2.2'/%3E%3C/svg%3E") center/12px no-repeat; border-color: var(--citron); }
.lr-option input:focus-visible + span { outline: 2px solid var(--maj); outline-offset: 3px; }

.lr-sec { padding-block: 36px; }
.lr-sec-tete { display: grid; gap: 6px; margin-bottom: 24px; }
.lr-sec-tete h2 { font-size: 30px; }
.lr-sec-tete p { color: var(--doux); font-size: 15px; }
.lr-sec-tete b { color: var(--encre); }
.lr-tri { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; font-size: 14px; color: var(--doux); }
.lr-tri select { font: inherit; color: var(--encre); border: 1px solid var(--trait); border-radius: 8px; padding: 6px 10px; background: var(--chaux); }

.lr-deux { display: grid; gap: 28px; }
.lr-plan-fig { margin: 0; display: grid; gap: 8px; align-content: start; }
.lr-plan-fig figcaption { font-size: 13px; color: var(--doux); }
.lr-plan { width: 100%; height: auto; display: block; background: var(--ciel); border-radius: 18px; }
.lr-med-t { fill: none; stroke: var(--pise-f); stroke-width: 6; stroke-linejoin: round; }
.lr-med { fill: var(--pise); }
.lr-plan .lr-med { stroke: none; }
.lr-iso { fill: none; stroke: var(--maj); stroke-width: 1.3; stroke-dasharray: 5 4; opacity: .6; }
.lr-iso-t { font: 600 11px var(--f-texte); fill: var(--maj); }
.lr-porte rect { fill: var(--encre); }
.lr-porte text { font: 700 8.5px var(--f-texte); fill: #fff; }
.lr-porte-t { font: 500 10.5px var(--f-texte); fill: var(--encre); }
.lr-place { fill: var(--citron); stroke: var(--encre); stroke-width: 1.5; }
.lr-place-t { font: 14px var(--f-titre); fill: var(--maj-f); }
.lr-kou { fill: #8E5E44; }
.lr-mur { fill: none; stroke: var(--pise-f); stroke-width: 3; stroke-linejoin: round; stroke-linecap: round; }
.lr-anneau { fill: none; stroke: var(--maj); stroke-width: 1.2; stroke-dasharray: 5 4; opacity: .45; }
.lr-zone-t { font: 600 11px var(--f-texte); fill: var(--maj-f); letter-spacing: .02em; paint-order: stroke; stroke: var(--ciel); stroke-width: 3px; stroke-linejoin: round; }
.lr-duo .lr-btn { display: inline-block; margin-top: 14px; }
.lr-duo-liens { display: flex; flex-wrap: wrap; gap: 10px; }
.lr-iso-t, .lr-porte-t, .lr-place-t { paint-order: stroke; stroke: var(--ciel); stroke-width: 3px; stroke-linejoin: round; }
.lr-pt { fill: var(--maj); stroke: #fff; stroke-width: 1.4; transition: r .15s, fill .15s; }
.lr-pt.on { fill: var(--citron); stroke: var(--maj); stroke-width: 2; r: 8; }
.lr-pt.off { opacity: .12; }

.lr-grille { display: grid; gap: 36px 22px; align-content: start; list-style: none; margin: 0; padding: 0; }
/* oxygen.css impose « :is(li, div._important) { display: list-item } » (spécificité 0,1,1) : il faut deux classes */
.lr .lr-carte { display: grid; gap: 6px; align-content: start; }
.lr .lr-carte[hidden] { display: none; }
.lr-carte .lr-arche { aspect-ratio: 4 / 4.3; margin-bottom: 10px; }
.lr-secteur { font-size: 11.5px; letter-spacing: .12em; text-transform: uppercase; color: var(--maj); font-weight: 700; }
.lr-carte h3 { font-size: 23px; line-height: 1.12; overflow-wrap: anywhere; }
.lr-faits { font-size: 14.5px; color: var(--texte); }
.lr-pied-carte { font-size: 14px; font-weight: 600; }
.lr-pied-carte::before { content: ""; display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: var(--citron); margin-right: 7px; vertical-align: 1px; }
.lr-taxi { font-size: 13.5px; color: var(--doux); }
.lr-note { font-size: 13.5px; color: var(--doux); }
.lr-note b { color: var(--encre); }
.lr-prix { font-size: 14px; color: var(--doux); }
.lr-prix b { color: var(--encre); font-size: 18px; }
.lr-prix span { display: block; font-size: 13.5px; }
.lr-btn { justify-self: start; margin-top: 6px; background: var(--citron); color: var(--encre) !important; font-weight: 700; font-size: 14.5px; text-decoration: none; padding: 10px 17px; border-radius: 999px; }
.lr-btn:hover { background: var(--citron-f); }
.lr-vide { padding: 18px; border: 1px dashed var(--trait); border-radius: 12px; color: var(--doux); }

.lr-texte { background: var(--sable); }
.lr-texte .lr-cadre { display: grid; gap: 14px; padding-block: 40px 48px; }
.lr-texte h2 { font-size: 30px; margin-top: 12px; }
.lr-texte h3 { font-size: 22px; margin-top: 8px; }
.lr-texte p { font-size: 16.5px; color: var(--texte); max-width: 68ch; }
.lr-faq { display: grid; gap: 10px; max-width: 760px; }
.lr-faq details { background: var(--chaux); border: 1px solid var(--trait); border-radius: 12px; padding: 14px 18px; }
.lr-faq summary { cursor: pointer; font-weight: 700; color: var(--encre); }
.lr-faq details p { margin-top: 8px; }

/* ---------- pages de texte et formulaire ---------- */
.lr-page { padding-block: 34px 56px; }
.lr-page h1 { font-size: 40px; line-height: 1.08; margin: 8px 0 22px; }
.lr-prose { max-width: 68ch; display: grid; gap: 14px; }
.lr-prose h2 { font-size: 26px; margin-top: 18px; }
.lr-prose p, .lr-prose li { font-size: 16.5px; color: var(--texte); }
.lr-prose ul { margin: 0; padding-left: 20px; display: grid; gap: 8px; }
.lr-prose .wpcf7 { margin-top: 8px; }
.lr-prose .wpcf7-form { display: grid; gap: 14px; }
.lr-prose .wpcf7-form p { display: grid; gap: 6px; color: var(--encre); font-weight: 600; font-size: 15px; }
.lr-prose input[type="text"], .lr-prose input[type="email"], .lr-prose textarea { width: 100%; font: 400 16px/1.4 var(--f-texte); color: var(--encre); background: var(--chaux); border: 1.5px solid var(--trait); border-radius: 12px; padding: 11px 14px; }
.lr-prose input:focus, .lr-prose textarea:focus { border-color: var(--maj); outline: none; box-shadow: 0 0 0 3px rgba(29, 59, 158, .15); }
.lr-prose textarea { min-height: 170px; resize: vertical; }
.lr-prose input[type="submit"] { justify-self: start; cursor: pointer; border: 0; background: var(--citron); color: var(--encre); font: 700 15px var(--f-texte); padding: 12px 22px; border-radius: 999px; }
.lr-prose input[type="submit"]:hover { background: var(--citron-f); }
.lr-prose .wpcf7-response-output { margin: 4px 0 0 !important; border-radius: 10px; padding: 10px 14px !important; font-size: 15px; }

/* ---------- accueil ---------- */
.lr-combien-liens { margin-top: 22px; display: grid; gap: 10px; }
.lr-combien-liens p { font: 25px/1.1 var(--f-titre); color: var(--maj-f); }
.lr-combien-liens nav { display: flex; flex-wrap: wrap; gap: 8px; }
.lr-combien-liens a { padding: 9px 17px; border-radius: 999px; border: 1.5px solid var(--maj); background: var(--chaux); color: var(--maj); font-weight: 600; font-size: 15px; text-decoration: none; }
.lr-combien-liens a:hover { background: var(--maj); color: #fff; box-shadow: inset 0 -3px 0 var(--citron); }
.lr-geo { display: grid; gap: 28px; }
.lr-mc { width: 100%; height: auto; display: block; background: var(--ciel); border-radius: 18px; }
.lr-mc-pays { fill: var(--pise); stroke: var(--pise-f); stroke-width: 2; stroke-linejoin: round; }
.lr-mc-v { fill: var(--maj); fill-opacity: .28; stroke: var(--maj); stroke-width: 1.2; }
.lr-mc-v.ouv { fill-opacity: 1; stroke: var(--citron); stroke-width: 3; }
.lr-mc-t { font: 500 12px var(--f-texte); fill: var(--encre); paint-order: stroke; stroke: var(--pise); stroke-width: 3px; stroke-linejoin: round; }
.lr-mc-t tspan { fill: var(--doux); font-weight: 400; }
.lr-mc-t.ouv { font: 19px var(--f-titre); fill: var(--maj-f); }
.lr-mc-t.ouv tspan { font: 600 12px var(--f-texte); fill: var(--maj); }
.lr-mc-mer { font: italic 12px var(--f-titre); fill: #8A90AE; letter-spacing: .04em; }
/* villes de l'accueil : cartes compactes, tout entières cliquables (la liste s'allonge à chaque ville) */
.lr-villes { display: grid; gap: 12px; align-content: start; }
.lr-ville { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 16px; align-items: center; padding: 14px 18px 14px 14px; border: 1px solid var(--trait); border-radius: 16px 16px 6px 6px; text-decoration: none; color: inherit; }
.lr-ville:not(:has(.lr-ville-ph)) { grid-template-columns: minmax(0, 1fr); }
.lr-ville.ouv { border-color: var(--maj); box-shadow: inset 0 3px 0 var(--citron); transition: background .15s; }
.lr-ville.ouv:hover { background: var(--sable); }
.lr-ville-ph { display: block; aspect-ratio: 3 / 3.6; box-shadow: none; }
.lr-ville-txt { display: grid; gap: 3px; min-width: 0; }
.lr-ville h3 { font-size: 21px; line-height: 1.15; }
.lr-ville:not(.ouv) h3 { color: var(--doux); }
.lr-ville .lr-faits { font-size: 14px; }
.lr-ville .lr-faits b { color: var(--encre); }
.lr-ville-voir { font-size: 14px; font-weight: 700; color: var(--maj); }
.lr-ville.ouv:hover .lr-ville-voir { text-decoration: underline; }
.lr-bientot { font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--doux); }
.lr-sable { background: var(--sable); }
.lr-six { list-style: none; margin: 0; padding: 0; display: grid; gap: 20px; }
.lr .lr-six li { display: grid; gap: 4px; padding-left: 44px; position: relative; }
.lr .lr-six li::before { content: ""; position: absolute; left: 4px; top: 0; width: 22px; height: 28px; border-radius: 999px 999px 2px 2px; background: var(--maj); box-shadow: inset 0 -6px 0 var(--citron); }
.lr-six b { font: 20px/1.2 var(--f-titre); color: var(--maj-f); }
.lr-six span { font-size: 15px; color: var(--texte); }
.lr-bleu { background: var(--maj); }
.lr-bleu .lr-sec-tete h2 { color: #fff; }
.lr-bleu .lr-sec-tete p { color: #D5DCF7; }
.lr-duo { display: grid; gap: 24px; }
.lr-duo h3 { font-size: 27px; color: var(--citron); margin-bottom: 6px; }
.lr-duo p { color: #E3E8FA; font-size: 16px; max-width: 46ch; }
.lr-carte-lien { display: block; }
.lr-voisins { border-top: 1px solid var(--trait); }
.lr-voisins .lr-sec-tete p { max-width: 70ch; }

@media (min-width: 860px) {
  .lr-geo { grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: 44px; align-items: start; }
  .lr-geo .lr-plan-fig { grid-column: 1; grid-row: 1; position: sticky; top: 24px; }   /* la carte reste à l'écran pendant qu'on parcourt les villes */
  .lr-geo .lr-villes { grid-column: 2; grid-row: 1; }
  .lr-six { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px 40px; }
  .lr-duo { grid-template-columns: 1fr 1fr; gap: 48px; }
  .lr-grille.lr-grille-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (min-width: 860px) {
  .lr-cadre { padding-inline: 40px; }
  .lr-tete .lr-cadre { padding-block: 18px; }
  .lr-hero .lr-cadre { grid-template-columns: 1.05fr 1fr; align-items: end; gap: 52px; padding-block: 48px 54px; }
  .lr-hero h1 { font-size: 60px; }
  .lr-sec { padding-block: 54px; }
  .lr-sec-tete:has(> .lr-tri) { grid-template-columns: 1fr auto; align-items: end; }   /* titre à gauche, tri à droite */
  .lr-sec-tete h2 { font-size: 40px; }
  .lr-deux { grid-template-columns: minmax(0, 1fr) 380px; gap: 44px; align-items: start; }
  .lr-plan-fig { grid-column: 2; grid-row: 1; position: sticky; top: 24px; }
  .lr-grille { grid-column: 1; grid-row: 1; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 48px 30px; }
  .lr-texte h2 { font-size: 36px; }
  .lr-page { padding-block: 48px 72px; }
  .lr-page h1 { font-size: 54px; }
}
@media (min-width: 1180px) { .lr-deux { grid-template-columns: minmax(0, 1fr) 420px; } }
@media (prefers-reduced-motion: reduce) { .lr-pt { transition: none; } }

/* ---------- guide : page, rubriques, articles ---------- */
.lr-hero-guide .lr-cadre { grid-template-columns: 1fr !important; }
.lr-rubs { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }
.lr-rubs a { padding: 8px 15px; border-radius: 999px; border: 1.5px solid var(--maj); background: var(--chaux); color: var(--maj); font-weight: 600; font-size: 14.5px; text-decoration: none; }
.lr-rubs a:hover { background: var(--maj); color: #fff; box-shadow: inset 0 -3px 0 var(--citron); }
.lr-sec-rub { border-top: 1px solid var(--trait); }
.lr-sec-rub .lr-sec-tete a { font-weight: 600; white-space: nowrap; }
.lr .lr-arts { list-style: none; margin: 0; padding: 0; display: grid; gap: 32px 24px; }
.lr .lr-art a { display: grid; gap: 7px; color: inherit; text-decoration: none; }
.lr-art-ph { display: block; aspect-ratio: 16 / 10; border-radius: 120px 120px 6px 6px; overflow: hidden; background: var(--pise); box-shadow: 0 0 0 4px var(--chaux), 0 0 0 5px var(--trait); margin-bottom: 6px; }
.lr-art-ph img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.lr-art-vide { display: block; width: 100%; height: 100%; background: linear-gradient(160deg, var(--pise), var(--pise-f)); }
.lr-art h3 { font-size: 22px; line-height: 1.15; }
.lr-art a:hover h3 { color: var(--maj); text-decoration: underline; text-decoration-color: var(--citron); text-decoration-thickness: 2px; text-underline-offset: 4px; }
.lr-art a:hover img { transform: scale(1.03); }
.lr-art-ex { font-size: 15px; color: var(--doux); }
.lr-pagination ul { list-style: none; display: flex; flex-wrap: wrap; gap: 8px; padding: 0; margin: 36px 0 0; }
.lr-pagination a, .lr-pagination span { display: inline-block; padding: 8px 14px; border-radius: 999px; border: 1.5px solid var(--trait); text-decoration: none; font-weight: 600; font-size: 14.5px; }
.lr-pagination .current { background: var(--maj); border-color: var(--maj); color: #fff; }

.lr-article-tete { padding-block: 28px 8px; display: grid; gap: 12px; max-width: 920px; }
.lr-article-tete h1 { font-size: 36px; line-height: 1.06; }
.lr-article-meta { font-size: 13.5px; color: var(--doux); }
.lr-une { margin: 10px 0 0; border-radius: 28px 28px 6px 6px; overflow: hidden; background: var(--pise); box-shadow: 0 0 0 4px var(--chaux), 0 0 0 5px var(--trait); aspect-ratio: 16 / 9; }
.lr-une img { width: 100%; height: 100%; object-fit: cover; }
.lr-article-corps { display: grid; gap: 34px; padding-block: 26px 52px; }
.lr-prose-article { gap: 16px; }
.lr-prose-article h2 { font-size: 28px; line-height: 1.12; margin-top: 22px; scroll-margin-top: 20px; }
.lr-prose-article h3 { font-size: 21px; line-height: 1.2; margin-top: 8px; color: var(--encre); }
.lr-prose-article ol { margin: 0; padding-left: 22px; display: grid; gap: 8px; }
.lr-prose-article strong { color: var(--encre); }
.lr-prose-article a { text-decoration-color: var(--citron); text-decoration-thickness: 2px; text-underline-offset: 3px; }
.lr-prose-article table { width: 100%; border-collapse: collapse; font-size: 15px; display: block; overflow-x: auto; }
.lr-prose-article th, .lr-prose-article td { text-align: left; padding: 9px 12px; border-bottom: 1px solid var(--trait); vertical-align: top; }
.lr-prose-article th { background: var(--ciel); color: var(--maj-f); font-weight: 700; }
.lr-prose-article aside { border-radius: 14px; padding: 14px 18px; border-left: 4px solid var(--citron); background: #FFF8E1; }
.lr-prose-article aside.lr-alerte { border-left-color: #C2410C; background: #FFF1EA; }
.lr-prose-article aside p { font-size: 16px; }
.lr-dormir { display: grid; gap: 14px; align-content: start; background: var(--sable); border-radius: 18px; padding: 18px; }
.lr-dormir-ph { display: block; aspect-ratio: 4 / 3; border-radius: 120px 120px 6px 6px; }
.lr-dormir-t { font: 22px/1.15 var(--f-titre); color: var(--maj-f); }
.lr-dormir p { font-size: 15px; color: var(--texte); }
.lr-dormir div { display: grid; gap: 8px; }
@media (min-width: 640px) { .lr .lr-arts { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 860px) {
  .lr .lr-arts { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 44px 30px; }
  .lr-article-tete { padding-block: 44px 8px; }
  .lr-article-tete h1 { font-size: 50px; }
  .lr-article-corps { grid-template-columns: minmax(0, 68ch) 300px; justify-content: space-between; gap: 56px; padding-block: 40px 72px; }
  .lr-article-cote { position: sticky; top: 24px; align-self: start; }
  .lr-prose-article h2 { font-size: 32px; }
}
