
.site-logo-container img,.site-logo-container img.default-logo,[data-id="logo"] img.default-logo{max-width:205px!important;width:205px!important;height:auto!important}.site-logo-container{overflow:visible!important}@media(max-width:767px){.site-logo-container img,.site-logo-container img.default-logo,[data-id="logo"] img.default-logo{max-width:135px!important;width:135px!important}}
.lr28{--green:#0a3d35;--green-dark:#0a3d35;--ink:#15130f;--text:#534c43;--muted:#756c62;--cream:#f7f1e8;--paper:#fffaf4;--line:#e2d4c2;--gold:#b9a46c;font-family:'Montserrat',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--text);background:#fff;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}.lr28 *{box-sizing:border-box}.lr28 a{text-decoration:none}.lr28 img{display:block;width:100%;height:auto}.lr28 .wrap{width:min(1080px,calc(100% - 34px));margin:0 auto}.lr28 .wrap-wide{width:min(1180px,calc(100% - 34px));margin:0 auto}.lr28 .wrap-narrow{width:min(820px,calc(100% - 34px));margin:0 auto}.lr28 .center{text-align:center}.lr28 .section{padding:76px 0}.lr28 .soft{background:var(--cream)}.lr28 .paper{background:var(--paper)}.lr28 .dark{background:#141711;color:#fff}.lr28 .eyebrow{margin:0 0 12px;font-size:12px;line-height:1.25;letter-spacing:.24em;text-transform:uppercase;font-weight:800;color:var(--gold)}.lr28 h1,.lr28 h2,.lr28 h3{font-family:'Cormorant Garamond',Georgia,serif;color:var(--ink);font-weight:700;line-height:1.04;margin:0}.lr28 .dark h1,.lr28 .dark h2,.lr28 .dark h3{color:#fff}.lr28 h1{font-size:clamp(42px,7vw,74px);letter-spacing:.004em}.lr28 h2{font-size:clamp(34px,5.2vw,58px)}.lr28 h3{font-size:clamp(27px,4vw,38px)}.lr28 p{margin:0;font-size:clamp(15.8px,1.34vw,18px);color:var(--text)}.lr28 .dark p{color:#e7dfd5}.lr28 p+p{margin-top:14px}.lr28 .lead{font-size:clamp(17px,2vw,21px);max-width:780px;margin:18px auto 0;color:#5b534b}.lr28 .dark .lead{color:#eee}.lr28 .fine{font-size:14px;color:var(--muted)}.lr28 .lr-btn,.lr28 .green-nav a{display:inline-flex;align-items:center;justify-content:center;min-width:220px;min-height:52px;padding:14px 24px;border-radius:999px;background:var(--green);border:1px solid var(--green);color:#fff!important;font-family:'Montserrat',system-ui,sans-serif;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;text-align:center;line-height:1.15;box-shadow:0 14px 28px rgba(17,87,77,.17)}.lr28 .lr-btn.secondary{background:#fff;color:var(--green)!important;box-shadow:none}.lr28 .button-row{display:flex;justify-content:center;align-items:center;gap:13px;flex-wrap:wrap;margin-top:28px}.lr28 .card-action{margin-top:auto;padding-top:22px;display:flex;justify-content:center;width:100%}.lr28 .topnav{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:24px auto 0}.lr28 .topnav a{font-size:11px;text-transform:uppercase;letter-spacing:.11em;font-weight:800;color:var(--green);padding:8px 8px;border-bottom:1px solid transparent}.lr28 .topnav a:hover{border-color:var(--green)}
.lr28 .hero{padding:30px 0 36px;background:linear-gradient(180deg,#f7f1e8 0,#fff 100%)}.lr28 .hero-card{width:min(1080px,calc(100% - 34px));margin:0 auto;background:#fff;border:1px solid rgba(0,0,0,.08);box-shadow:0 24px 68px rgba(30,26,20,.12);overflow:hidden}.lr28 .hero-photo{margin:12px;position:relative;overflow:hidden}.lr28 .hero-photo img{height:clamp(320px,58vw,610px);object-fit:cover;object-position:center center}.lr28 .hero-photo:after{content:'';position:absolute;inset:13px;border:1px solid rgba(255,255,255,.72);pointer-events:none}.lr28 .hero-copy{padding:42px 26px 48px;text-align:center;background:#fff}.lr28 .hero-copy h1{max-width:900px;margin:0 auto}.lr28 .hero-copy p{max-width:760px;margin:18px auto 0}.lr28 .signature{padding:62px 0 42px}.lr28 .signature .line{width:72px;height:1px;background:var(--gold);margin:0 auto 26px}.lr28 .signature .quote{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(31px,5.6vw,52px);line-height:1.15;text-align:center;color:var(--ink)}.lr28 .signature .sub{max-width:760px;margin:22px auto 0;text-align:center;color:#5b534a}.lr28 .cards{display:grid;grid-template-columns:1fr;gap:22px;margin-top:36px}.lr28 .property-card{background:#fff;border:1px solid var(--line);box-shadow:0 16px 45px rgba(30,26,20,.07);display:flex;flex-direction:column;min-height:100%;overflow:hidden}.lr28 .property-card .img img{height:260px;object-fit:cover;object-position:center center}.lr28 .property-card .body{padding:26px;display:flex;flex-direction:column;flex:1;text-align:center}.lr28 .property-card .body p{margin-top:13px}.lr28 .property-card .tag{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);font-weight:800;margin-bottom:10px}.lr28 .facts{display:grid;grid-template-columns:1fr;gap:14px;margin-top:34px}.lr28 .fact{background:#fff;border:1px solid var(--line);padding:22px;text-align:center}.lr28 .fact strong{display:block;font-family:'Cormorant Garamond',Georgia,serif;color:var(--ink);font-size:27px;line-height:1.1;margin-bottom:6px}.lr28 .page-hero{background:var(--cream);padding:34px 0}.lr28 .page-hero-card{width:min(1080px,calc(100% - 34px));margin:0 auto;background:#fff;border:1px solid var(--line);box-shadow:0 20px 52px rgba(30,26,20,.10);overflow:hidden}.lr28 .page-hero-image img{height:clamp(320px,58vw,570px);object-fit:cover;object-position:center center}.lr28 .page-hero-copy{padding:38px 26px 44px;text-align:center}.lr28 .page-hero-copy p{max-width:760px;margin:18px auto 0}.lr28 .story{display:grid;grid-template-columns:1fr;gap:24px;align-items:center;margin:0 0 56px}.lr28 .story:last-child{margin-bottom:0}.lr28 .story .photo{background:#fff;border:10px solid #fff;box-shadow:0 20px 50px rgba(30,26,20,.10);overflow:hidden}.lr28 .story .photo img{height:360px;object-fit:cover;object-position:center center}.lr28 .story .copy{background:#fff;padding:30px;border:1px solid var(--line);box-shadow:0 15px 38px rgba(30,26,20,.07)}.lr28 .dark .story .copy{background:#1d2118;border-color:rgba(255,255,255,.12)}.lr28 .gallery{display:grid;grid-template-columns:1fr;gap:14px;margin-top:34px}.lr28 .gallery figure{margin:0;background:#fff;border:8px solid #fff;box-shadow:0 14px 32px rgba(30,26,20,.08);overflow:hidden}.lr28 .gallery img{height:280px;object-fit:cover;object-position:center center}.lr28 .gallery .tall img{height:420px}.lr28 .gallery .wide img{height:300px}.lr28 .calendar-box{margin:26px auto 0;border:1px solid var(--line);background:#fff;padding:18px;box-shadow:0 12px 32px rgba(30,26,20,.06)}.lr28 .contact-grid{display:grid;grid-template-columns:1fr;gap:22px}.lr28 .contact-card,.lr28 .social-block{background:#fff;border:1px solid var(--line);padding:28px;box-shadow:0 15px 38px rgba(30,26,20,.07)}.lr28 .contact-list{display:grid;gap:12px;margin-top:22px}.lr28 .contact-list a{color:var(--green);font-weight:800}.lr28 pre{white-space:pre-wrap;font-family:'Montserrat',system-ui,sans-serif;color:var(--text);background:#f7f1e8;border:1px solid var(--line);padding:18px;margin:16px 0 0;line-height:1.6}.lr28 .lr-nav-section{padding:42px 0 62px;background:#fff}.lr28 .green-nav{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.lr28 .no-photo-panel{padding:56px 26px;text-align:center;background:#fff}.lr28 .no-photo-panel p{max-width:760px;margin:18px auto 0}.lr28 .checklist{display:grid;grid-template-columns:1fr;gap:14px;margin-top:28px}.lr28 .check{border:1px solid var(--line);background:#fff;padding:19px;text-align:center}.lr28 .check strong{display:block;color:var(--green);margin-bottom:4px;text-transform:uppercase;font-size:12px;letter-spacing:.12em}
@media(min-width:760px){.lr28 .cards{grid-template-columns:repeat(2,1fr)}.lr28 .facts{grid-template-columns:repeat(3,1fr)}.lr28 .contact-grid{grid-template-columns:1fr 1fr}.lr28 .gallery{grid-template-columns:repeat(3,1fr)}.lr28 .gallery .wide{grid-column:span 2}.lr28 .gallery .tall{grid-row:span 2}.lr28 .checklist{grid-template-columns:repeat(3,1fr)}}
@media(min-width:920px){.lr28 .hero-card{display:grid;grid-template-columns:1.05fr .95fr;align-items:center}.lr28 .hero-photo{grid-column:2;grid-row:1;margin:12px}.lr28 .hero-copy{grid-column:1;grid-row:1;text-align:left;padding:62px 48px}.lr28 .hero-copy p{margin-left:0;margin-right:0}.lr28 .hero-copy .button-row{justify-content:flex-start}.lr28 .hero-copy .topnav{justify-content:flex-start}.lr28 .cards{grid-template-columns:repeat(4,1fr)}.lr28 .story{grid-template-columns:1.05fr .95fr;gap:38px}.lr28 .story.reverse{grid-template-columns:.95fr 1.05fr}.lr28 .story.reverse .photo{grid-column:2}.lr28 .story.reverse .copy{grid-column:1;grid-row:1}.lr28 .story .photo img{height:455px}.lr28 .story .copy{padding:46px}.lr28 .page-hero-card{display:grid;grid-template-columns:1.05fr .95fr;align-items:center}.lr28 .page-hero-image{grid-column:2;grid-row:1}.lr28 .page-hero-copy{grid-column:1;grid-row:1;text-align:left;padding:58px 48px}.lr28 .page-hero-copy p{margin-left:0;margin-right:0}.lr28 .property-card .img img{height:235px}.lr28 .gallery img{height:320px}.lr28 .gallery .wide img{height:320px}.lr28 .gallery .tall img{height:666px}}
@media(max-width:520px){.lr28 .section{padding:54px 0}.lr28 .wrap,.lr28 .wrap-narrow,.lr28 .wrap-wide{width:min(100% - 28px,1080px)}.lr28 h1{font-size:42px}.lr28 h2{font-size:36px}.lr28 h3{font-size:29px}.lr28 .hero-card,.lr28 .page-hero-card{width:min(100% - 22px,1080px)}.lr28 .hero-photo{margin:8px}.lr28 .hero-photo img{height:310px}.lr28 .hero-copy{padding:34px 22px 38px}.lr28 .lr-btn,.lr28 .green-nav a{width:100%;min-width:0}.lr28 .topnav{display:none}.lr28 .property-card .img img{height:235px}.lr28 .story .photo img{height:295px}.lr28 .gallery img,.lr28 .gallery .wide img,.lr28 .gallery .tall img{height:255px}.lr28 .contact-card,.lr28 .social-block{padding:24px}.lr28 .page-hero-copy{padding:34px 22px 38px}.lr28 p{font-size:16px}.lr28 .green-nav{display:grid;grid-template-columns:1fr;gap:10px}}

.lr28 .service-band{background:var(--green-dark);color:#fff;padding:66px 0}.lr28 .service-band h2,.lr28 .service-band h3{color:#fff}.lr28 .service-band p{color:#efe8df}.lr28 .service-grid{display:grid;grid-template-columns:1fr;gap:14px;margin-top:30px}.lr28 .service-item{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);padding:20px;text-align:center}.lr28 .service-item strong{display:block;color:#fff;font-weight:800;text-transform:uppercase;font-size:12px;letter-spacing:.12em;margin-bottom:6px}.lr28 .tariff-note{margin-top:22px;padding:18px;border:1px solid var(--line);background:#fffaf4;text-align:center}.lr28 .tariff-note strong{color:var(--green);font-weight:800}.lr28 .price-grid{display:grid;grid-template-columns:1fr;gap:18px;margin-top:34px}.lr28 .price-card{background:#fff;border:1px solid var(--line);box-shadow:0 15px 38px rgba(30,26,20,.07);padding:28px;text-align:center;display:flex;flex-direction:column}.lr28 .price-card .price{font-family:'Cormorant Garamond',Georgia,serif;font-size:40px;line-height:1;color:var(--ink);font-weight:700;margin:14px 0}.lr28 .price-card ul{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:9px}.lr28 .price-card li{border-top:1px solid var(--line);padding-top:9px;color:var(--text);font-size:15px}.lr28 .request-form{display:grid;gap:14px;margin-top:22px}.lr28 .request-form label{display:grid;gap:6px;font-size:12px;font-weight:800;letter-spacing:.10em;text-transform:uppercase;color:var(--green)}.lr28 .request-form input,.lr28 .request-form select,.lr28 .request-form textarea{width:100%;border:1px solid var(--line);background:#fffaf4;padding:14px 14px;font-family:'Montserrat',system-ui,sans-serif;font-size:16px;color:var(--ink);border-radius:0}.lr28 .request-form textarea{min-height:130px;resize:vertical}.lr28 .form-row{display:grid;grid-template-columns:1fr;gap:14px}.lr28 .form-success{background:#eef7f4;border:1px solid #b8d7cf;color:var(--green-dark);padding:16px;margin:0 0 20px;font-weight:700}.lr28 .form-error{background:#fff2f0;border:1px solid #e1b2aa;color:#7a2418;padding:16px;margin:0 0 20px;font-weight:700}.lr28 .small-note{font-size:13px;color:var(--muted);margin-top:12px}.lr28 .mini-label{display:inline-flex;align-items:center;justify-content:center;padding:7px 11px;border:1px solid var(--line);color:var(--green);font-size:11px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;margin:8px 4px 0;background:#fff}.lr28 .included{margin-top:18px;display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.lr28 .page-alert{background:#fffaf4;border:1px solid var(--line);padding:22px;text-align:center;margin-top:28px}
@media(min-width:760px){.lr28 .service-grid{grid-template-columns:repeat(3,1fr)}.lr28 .price-grid{grid-template-columns:repeat(3,1fr)}.lr28 .form-row{grid-template-columns:1fr 1fr}}


.lr28 .seo-faq{background:#fffaf4;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.lr28 .faq-list{display:grid;gap:12px;margin-top:30px}.lr28 .faq-list details{background:#fff;border:1px solid var(--line);box-shadow:0 12px 28px rgba(30,26,20,.05);padding:18px 20px}.lr28 .faq-list summary{cursor:pointer;font-weight:800;color:var(--green);letter-spacing:.04em}.lr28 .faq-list details p{margin-top:12px;font-size:15.5px;color:var(--text)}


/* V27 — image de marque renforcée */
.lr28 .brand-hero{background:linear-gradient(180deg,#fffaf4 0%,#f1eadf 100%);padding:26px 0 58px}
.lr28 .brand-hero-grid{width:min(1180px,calc(100% - 34px));margin:0 auto;display:grid;gap:18px;background:#fff;border:1px solid var(--line);box-shadow:0 30px 80px rgba(30,26,20,.13);overflow:hidden}
.lr28 .brand-hero-copy{padding:42px 26px 36px;text-align:center;align-self:center}
.lr28 .brand-hero-copy h1{font-size:clamp(48px,7vw,88px);line-height:.96;letter-spacing:-.035em;max-width:980px;margin:0 auto}
.lr28 .brand-hero-copy .lead{max-width:760px;margin:22px auto 0;font-size:19px}
.lr28 .brand-hero-image{position:relative;margin:0 12px 12px;overflow:hidden;min-height:420px}
.lr28 .brand-hero-image img{height:clamp(420px,62vw,720px);object-fit:cover;object-position:center center;filter:saturate(1.04) contrast(1.02)}
.lr28 .brand-hero-image:after{content:'';position:absolute;inset:14px;border:1px solid rgba(255,255,255,.62);pointer-events:none}
.lr28 .hero-seal{position:absolute;right:28px;bottom:28px;background:rgba(255,250,244,.88);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.7);padding:18px 20px;text-align:center;font-family:'Cormorant Garamond',Georgia,serif;font-size:25px;line-height:1;color:var(--ink);box-shadow:0 15px 38px rgba(0,0,0,.15)}
.lr28 .hero-seal span{font-family:'Montserrat',system-ui,sans-serif;font-size:10px;text-transform:uppercase;letter-spacing:.18em;color:var(--green);font-weight:800}
.lr28 .manifesto{padding:64px 0 56px;background:#fff}.lr28 .manifesto .mantra{margin:34px auto 0;max-width:760px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0;text-align:center;font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(30px,4.8vw,52px);color:var(--green-dark);line-height:1.12}.lr28 .subtle{color:var(--muted)}
.lr28 .signature-cards{display:grid;grid-template-columns:1fr;gap:18px;margin-top:38px}.lr28 .signature-cards article{background:#fff;border:1px solid var(--line);box-shadow:0 18px 44px rgba(30,26,20,.08);display:grid;grid-template-columns:1fr;overflow:hidden}.lr28 .signature-cards img{height:300px;object-fit:cover}.lr28 .signature-cards article>div{padding:28px;text-align:center}.lr28 .signature-cards h3{margin-bottom:12px}.lr28 .signature-cards a{display:inline-flex;margin-top:18px;color:var(--green);text-transform:uppercase;letter-spacing:.12em;font-weight:800;font-size:12px;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:5px}
.lr28 .editorial-split{display:grid;grid-template-columns:1fr;gap:24px;align-items:center}.lr28 .editorial-copy{background:#fff;border:1px solid var(--line);box-shadow:0 18px 44px rgba(30,26,20,.07);padding:32px}.lr28 .editorial-photo{border:12px solid #fff;box-shadow:0 24px 58px rgba(30,26,20,.12);overflow:hidden}.lr28 .editorial-photo img{height:440px;object-fit:cover}.lr28 .service-band.elevated{box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}.lr28 .final-cta{background:linear-gradient(180deg,#fffaf4,#fff)}
.lr28 .price-card.highlight{box-shadow:0 22px 60px rgba(17,87,77,.16);border-color:rgba(17,87,77,.28)}
@media(min-width:760px){.lr28 .signature-cards{grid-template-columns:repeat(2,1fr)}.lr28 .signature-cards article{grid-template-columns:1fr}.lr28 .editorial-split{grid-template-columns:.9fr 1.1fr}.lr28 .editorial-copy{padding:48px}.lr28 .editorial-photo img{height:540px}}
@media(min-width:980px){.lr28 .brand-hero-grid{grid-template-columns:.95fr 1.05fr;align-items:stretch}.lr28 .brand-hero-copy{text-align:left;padding:72px 58px}.lr28 .brand-hero-copy h1,.lr28 .brand-hero-copy .lead{margin-left:0;margin-right:0}.lr28 .brand-hero-copy .button-row,.lr28 .brand-hero-copy .topnav{justify-content:flex-start}.lr28 .brand-hero-image{margin:12px}.lr28 .signature-cards{grid-template-columns:repeat(4,1fr)}.lr28 .signature-cards img{height:255px}.lr28 .signature-cards article>div{padding:24px}.lr28 .signature-cards h3{font-size:32px}.lr28 .signature-cards p{font-size:15.5px}}
@media(max-width:520px){.lr28 .brand-hero{padding:12px 0 42px}.lr28 .brand-hero-grid{width:min(100% - 22px,1180px)}.lr28 .brand-hero-copy{padding:34px 22px}.lr28 .brand-hero-copy h1{font-size:43px}.lr28 .brand-hero-image{margin:0 8px 8px;min-height:300px}.lr28 .brand-hero-image img{height:330px}.lr28 .hero-seal{right:18px;bottom:18px;font-size:21px;padding:14px 16px}.lr28 .manifesto{padding:50px 0 42px}.lr28 .signature-cards img{height:245px}.lr28 .editorial-photo img{height:310px}.lr28 .editorial-copy{padding:26px}}


/* V28 — retour au concept d'origine, plus incarné */
.lr28 .concept-hero{background:linear-gradient(180deg,#fffaf4 0%,#f7f1e8 100%);padding:28px 0 40px}
.lr28 .concept-hero-card{width:min(1120px,calc(100% - 34px));margin:0 auto;background:#fff;border:1px solid var(--line);box-shadow:0 22px 62px rgba(30,26,20,.11);overflow:hidden;display:grid;gap:0}
.lr28 .concept-hero-copy{padding:44px 26px;text-align:center;align-self:center}.lr28 .concept-hero-copy h1{font-size:clamp(42px,6.6vw,78px);letter-spacing:-.02em;max-width:900px;margin:0 auto}.lr28 .concept-hero-copy .lead{max-width:780px;margin-top:20px}.lr28 .concept-hero-image{margin:0 12px 12px;overflow:hidden}.lr28 .concept-hero-image img{height:clamp(330px,56vw,620px);object-fit:cover;object-position:center center;filter:saturate(1.03) contrast(1.02)}
.lr28 .first-cards{padding-top:46px;background:#fff}.lr28 .origin-grid{display:grid;grid-template-columns:1fr;gap:26px;max-width:930px;margin:0 auto}.lr28 .origin-grid .property-card{box-shadow:none;border:0;background:#fff}.lr28 .origin-grid .property-card .img{display:flex;justify-content:center}.lr28 .origin-grid .property-card .img img{width:235px;height:235px;object-fit:cover}.lr28 .origin-grid .property-card .body{padding:18px 8px 0}.lr28 .origin-grid .property-card h3{font-family:'Montserrat',system-ui,sans-serif;font-size:18px;line-height:1.35;font-weight:700;color:#35312b;text-transform:none}.lr28 .origin-grid .lr-btn{min-width:120px;min-height:40px;padding:10px 16px;border-radius:0;font-size:11px;letter-spacing:.05em;text-transform:lowercase;background:var(--green);border-color:var(--green);color:#fff!important;box-shadow:none}
.lr28 .concept-original{background:#fff;padding-top:48px}.lr28 .concept-split{display:grid;grid-template-columns:1fr;gap:28px;align-items:center}.lr28 .concept-text{padding:8px 0}.lr28 .concept-text h2{font-size:clamp(30px,4vw,48px);margin-bottom:22px}.lr28 .concept-text p{font-size:clamp(16px,1.3vw,18px);line-height:1.75}.lr28 .concept-text .signature-line{font-style:italic;color:#7b7166;margin-top:22px}.lr28 .concept-photo{border:10px solid #fff;box-shadow:0 18px 48px rgba(30,26,20,.10);overflow:hidden}.lr28 .concept-photo img{height:340px;object-fit:cover;object-position:center center}
@media(min-width:760px){.lr28 .origin-grid{grid-template-columns:repeat(3,1fr)}.lr28 .concept-split{grid-template-columns:1.05fr .95fr}.lr28 .concept-photo img{height:430px}}
@media(min-width:980px){.lr28 .concept-hero-card{grid-template-columns:.94fr 1.06fr;align-items:center}.lr28 .concept-hero-copy{text-align:left;padding:64px 54px}.lr28 .concept-hero-copy h1,.lr28 .concept-hero-copy .lead{margin-left:0;margin-right:0}.lr28 .concept-hero-copy .button-row,.lr28 .concept-hero-copy .topnav{justify-content:flex-start}.lr28 .concept-hero-image{margin:12px}.lr28 .concept-hero-image img{height:620px}}
@media(max-width:520px){.lr28 .concept-hero{padding:12px 0 32px}.lr28 .concept-hero-card{width:min(100% - 22px,1120px)}.lr28 .concept-hero-copy{padding:34px 22px}.lr28 .concept-hero-copy h1{font-size:42px}.lr28 .concept-hero-image{margin:0 8px 8px}.lr28 .concept-hero-image img{height:310px}.lr28 .origin-grid .property-card .img img{width:225px;height:225px}.lr28 .concept-photo img{height:260px}}


/* V29-bis — corrections minimales, sans changement de structure ni de polices */
@media(max-width:767px){
  .site-logo-container img,.site-logo-container img.default-logo,[data-id="logo"] img.default-logo{max-width:112px!important;width:112px!important;height:auto!important}
}
.lr28 .service-band.elevated{padding:42px 0}
.lr28 .service-band.elevated h2{font-size:clamp(28px,3.8vw,44px)}
.lr28 .service-band.elevated .lead{font-size:clamp(15px,1.25vw,17px);max-width:780px}
.lr28 .page-alert{padding:15px 16px;margin-top:18px;font-size:14px}
.lr28 .page-alert p{font-size:14px}


/* V29.4 — corrections ciblées demandées : boutons verts, logo, formulaire, calendriers */
.lr28 .origin-grid .lr-btn,
.lr28 .property-card .lr-btn,
.lr28 .button-row .lr-btn,
.lr28 button.lr-btn{
  background:var(--green)!important;
  border-color:var(--green)!important;
  color:#fff!important;
}
.lr28 .request-form select{
  font-size:14px!important;
  line-height:1.25!important;
  min-width:0!important;
  height:auto!important;
  white-space:normal!important;
  padding:13px 38px 13px 12px!important;
}
.lr28 .form-row>*{min-width:0!important;}
.lr28 .calendar-box{max-width:100%;overflow-x:auto;}
@media(max-width:1024px){
  .site-logo-container img,.site-logo-container img.default-logo,[data-id="logo"] img.default-logo{max-width:110px!important;width:110px!important;height:auto!important;}
}
@media(max-width:767px){
  .site-logo-container img,.site-logo-container img.default-logo,[data-id="logo"] img.default-logo{max-width:92px!important;width:92px!important;height:auto!important;}
  .site-logo-container{max-width:96px!important;overflow:visible!important;}
  .site-logo-container + *{margin-left:6px!important;}
  .lr28 .request-form select{font-size:13px!important;}
}


/* V29.5 — corrections finales ciblées : logo, boutons verts, formulaire lisible, calendrier 3 mois */
.lr28 .lr-btn,
.lr28 .lr-btn.secondary,
.lr28 .button-row a,
.lr28 .button-row button,
.lr28 .card-action a,
.lr28 .green-nav a,
.lr28 .property-card .lr-btn,
.lr28 button.lr-btn{
  background:var(--green)!important;
  border-color:var(--green)!important;
  color:#fff!important;
  box-shadow:0 14px 28px rgba(17,87,77,.17)!important;
}
.lr28 .signature-cards a{
  color:var(--green)!important;
  border-color:var(--green)!important;
}
.lr28 .request-form select{
  font-size:13px!important;
  line-height:1.2!important;
  padding:12px 34px 12px 11px!important;
  min-height:46px!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.lr28 .request-form option{font-size:13px!important;}
.lr28 .calendar-box{max-width:100%;overflow-x:auto;padding:10px 0;}

/* Réduction prudente du logo/header sans toucher à l'organisation du thème */
.site-logo-container img,
.site-logo-container img.default-logo,
.custom-logo,
.site-logo img,
[data-id="logo"] img.default-logo{
  max-width:170px!important;
  width:auto!important;
  height:auto!important;
}
@media(max-width:1024px){
  .site-logo-container img,
  .site-logo-container img.default-logo,
  .custom-logo,
  .site-logo img,
  [data-id="logo"] img.default-logo{max-width:104px!important;width:auto!important;height:auto!important;}
  .site-branding,.site-logo-container{min-width:0!important;max-width:62vw!important;overflow:hidden!important;}
  .site-title,.site-title a{font-size:17px!important;line-height:1.05!important;white-space:nowrap!important;}
}
@media(max-width:767px){
  .site-logo-container img,
  .site-logo-container img.default-logo,
  .custom-logo,
  .site-logo img,
  [data-id="logo"] img.default-logo{max-width:76px!important;width:auto!important;height:auto!important;}
  .site-branding,.site-logo-container{min-width:0!important;max-width:56vw!important;overflow:hidden!important;}
  .site-description,.site-tagline,.header-tagline,.tagline,.site-branding .site-description{display:none!important;}
  .site-title,.site-title a{font-size:15px!important;line-height:1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
  .lr28 .request-form select{font-size:12.5px!important;}
}
@media(max-width:380px){
  .site-logo-container img,
  .site-logo-container img.default-logo,
  .custom-logo,
  .site-logo img,
  [data-id="logo"] img.default-logo{max-width:64px!important;}
  .site-title,.site-title a{font-size:14px!important;}
}

/* V29.6 — corrections lisibilité mobile, entête/logo et boutons verts
   Ne change pas l'organisation ni les polices du site : uniquement des sécurités CSS. */
.lr28 .lr-btn,
.lr28 .lr-btn.secondary,
.lr28 a.lr-btn,
.lr28 .button-row a,
.lr28 .button-row button,
.lr28 .card-action a,
.lr28 .green-nav a,
.lr28 .property-card a.lr-btn,
.lr28 .origin-grid a.lr-btn,
.lr28 input[type="submit"],
.lr28 button[type="submit"],
.lr28 .wp-block-button__link{
  background:var(--green)!important;
  border-color:var(--green)!important;
  color:#fff!important;
  box-shadow:0 14px 28px rgba(17,87,77,.17)!important;
}
.lr28 .signature-cards a{
  color:var(--green)!important;
  border-color:var(--green)!important;
}

/* Formulaire : corrige l'héritage uppercase/gras des champs et le texte coupé dans les menus sur iPhone */
.lr28 .request-form input,
.lr28 .request-form select,
.lr28 .request-form textarea{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  font-family:'Montserrat',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important;
  font-size:16px!important;
  font-weight:500!important;
  line-height:1.35!important;
  text-transform:none!important;
  letter-spacing:0!important;
  color:var(--ink)!important;
  -webkit-text-size-adjust:100%!important;
}
.lr28 .request-form select{
  height:58px!important;
  min-height:58px!important;
  padding:0 42px 0 14px!important;
  line-height:normal!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  -webkit-appearance:none!important;
  appearance:none!important;
  background-color:#fffaf4!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%2311574d' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;
  background-position:calc(100% - 16px) center!important;
  background-size:10px 7px!important;
}
.lr28 .request-form option{
  font-family:'Montserrat',system-ui,sans-serif!important;
  font-size:15px!important;
  font-weight:500!important;
  text-transform:none!important;
  letter-spacing:0!important;
}
.lr28 .request-form textarea{
  min-height:150px!important;
  padding:16px 14px!important;
}
.lr28 .request-form input::placeholder,
.lr28 .request-form textarea::placeholder{
  font-size:15px!important;
  line-height:1.45!important;
  font-weight:400!important;
  text-transform:none!important;
  letter-spacing:0!important;
  color:#9a9289!important;
  opacity:1!important;
}
.lr28 .form-row > *{min-width:0!important;}

/* Calendriers synchronisés : conserver 3 mois, éviter la casse mobile/desktop */
.lr28 .calendar-box{
  max-width:100%!important;
  overflow-x:auto!important;
  -webkit-overflow-scrolling:touch!important;
}
.lr28 .calendar-box .wpsbc-container,
.lr28 .calendar-box .wpsbc-calendars,
.lr28 .calendar-box .wpsbc-calendar{
  max-width:100%!important;
}

/* Entête/logo : le logo est dans l'entête du thème. On agrandit l'entête et on le remet au premier plan. */
body .site-header,
body header.site-header,
body #masthead,
body .main-header,
body .site-header-wrapper,
body .elementor-location-header,
body .wp-site-blocks > header{
  position:relative!important;
  z-index:9999!important;
  background:#fffaf4!important;
  overflow:visible!important;
}
body .site-branding,
body .site-logo-container,
body .custom-logo-link,
body .site-logo,
body [data-id="logo"]{
  position:relative!important;
  z-index:10000!important;
  overflow:visible!important;
  flex-shrink:0!important;
}
body .site-logo-container img,
body .site-logo-container img.default-logo,
body .custom-logo,
body .site-logo img,
body [data-id="logo"] img.default-logo{
  position:relative!important;
  z-index:10001!important;
  max-width:170px!important;
  width:auto!important;
  height:auto!important;
}
@media(max-width:1024px){
  body .site-header,
  body header.site-header,
  body #masthead,
  body .main-header,
  body .site-header-wrapper,
  body .elementor-location-header,
  body .wp-site-blocks > header{
    min-height:88px!important;
    padding-top:10px!important;
    padding-bottom:10px!important;
  }
  body .site-logo-container img,
  body .site-logo-container img.default-logo,
  body .custom-logo,
  body .site-logo img,
  body [data-id="logo"] img.default-logo{
    max-width:122px!important;
    width:auto!important;
    height:auto!important;
  }
  body .site-title,
  body .site-title a{
    font-size:16px!important;
    line-height:1.05!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
}

@media(max-width:767px){
  body .site-header,
  body header.site-header,
  body #masthead,
  body .main-header,
  body .site-header-wrapper,
  body .elementor-location-header,
  body .wp-site-blocks > header{
    min-height:96px!important;
    padding-top:12px!important;
    padding-bottom:12px!important;
  }
  body .site-logo-container,
  body .site-branding{
    max-width:72vw!important;
    overflow:visible!important;
  }
  body .site-logo-container img,
  body .site-logo-container img.default-logo,
  body .custom-logo,
  body .site-logo img,
  body [data-id="logo"] img.default-logo{
    max-width:112px!important;
    width:auto!important;
    height:auto!important;
  }
  body .site-description,
  body .site-tagline,
  body .header-tagline,
  body .tagline,
  body .site-branding .site-description{
    display:none!important;
  }
  .lr28 .request-form input,
  .lr28 .request-form select,
  .lr28 .request-form textarea{
    font-size:16px!important;
    text-transform:none!important;
    letter-spacing:0!important;
    font-weight:500!important;
  }
  .lr28 .request-form select{
    height:60px!important;
    min-height:60px!important;
    padding:0 42px 0 14px!important;
  }
  .lr28 .request-form textarea::placeholder,
  .lr28 .request-form input::placeholder{
    font-size:14.5px!important;
    font-weight:400!important;
    text-transform:none!important;
    letter-spacing:0!important;
  }
}
@media(max-width:380px){
  body .site-logo-container img,
  body .site-logo-container img.default-logo,
  body .custom-logo,
  body .site-logo img,
  body [data-id="logo"] img.default-logo{
    max-width:100px!important;
  }
  body .site-title,
  body .site-title a{font-size:14px!important;}
}

/* V29.7 — correction ciblée du logo/header mobile/tablette
   Objectif : le logo reste dans l'entête, centré verticalement,
   sans déborder sur le contenu et sans passer "derrière" la page. */
body .site-header,
body header.site-header,
body #masthead,
body .main-header,
body .site-header-wrapper,
body .elementor-location-header,
body .wp-site-blocks > header{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  overflow:hidden!important;
}
body .site-branding,
body .site-logo-container,
body .custom-logo-link,
body .site-logo,
body [data-id="logo"]{
  display:flex!important;
  align-items:center!important;
  line-height:1!important;
}
body .site-logo-container img,
body .site-logo-container img.default-logo,
body .custom-logo,
body .site-logo img,
body [data-id="logo"] img.default-logo{
  display:block!important;
  width:auto!important;
  height:auto!important;
  object-fit:contain!important;
}

@media(max-width:1024px){
  body .site-header,
  body header.site-header,
  body #masthead,
  body .main-header,
  body .site-header-wrapper,
  body .elementor-location-header,
  body .wp-site-blocks > header{
    min-height:78px!important;
    padding:10px 14px!important;
  }
  body .site-logo-container,
  body .site-branding,
  body .custom-logo-link,
  body .site-logo,
  body [data-id="logo"]{
    max-height:58px!important;
    min-height:58px!important;
  }
  body .site-logo-container img,
  body .site-logo-container img.default-logo,
  body .custom-logo,
  body .site-logo img,
  body [data-id="logo"] img.default-logo{
    max-height:56px!important;
    max-width:150px!important;
  }
}

@media(max-width:767px){
  body .site-header,
  body header.site-header,
  body #masthead,
  body .main-header,
  body .site-header-wrapper,
  body .elementor-location-header,
  body .wp-site-blocks > header{
    min-height:72px!important;
    padding:8px 12px!important;
  }
  body .site-branding,
  body .site-logo-container,
  body .custom-logo-link,
  body .site-logo,
  body [data-id="logo"]{
    max-width:calc(100vw - 84px)!important;
    min-width:0!important;
    max-height:52px!important;
    min-height:52px!important;
    overflow:hidden!important;
  }
  body .site-logo-container img,
  body .site-logo-container img.default-logo,
  body .custom-logo,
  body .site-logo img,
  body [data-id="logo"] img.default-logo{
    max-height:50px!important;
    max-width:132px!important;
  }
  body .site-title,
  body .site-title a,
  body .site-description,
  body .site-tagline,
  body .header-tagline,
  body .tagline,
  body .site-branding .site-description{
    display:none!important;
  }
  body .menu-toggle,
  body .nav-toggle,
  body .mobile-menu-toggle,
  body .hamburger,
  body .header-menu-toggle,
  body button[aria-label*="menu" i]{
    margin-left:auto!important;
    flex-shrink:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:36px!important;
    min-height:36px!important;
    position:relative!important;
    z-index:10002!important;
  }
}

@media(max-width:380px){
  body .site-logo-container img,
  body .site-logo-container img.default-logo,
  body .custom-logo,
  body .site-logo img,
  body [data-id="logo"] img.default-logo{
    max-height:46px!important;
    max-width:122px!important;
  }
}


/* V29.8 — finitions ciblées sans changement de structure */
.lr28 .service-band .eyebrow,
.lr28 .page-alert strong{
  letter-spacing:.14em;
}
.lr28 .calendar-box{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}

/* Boutons : vert homogène dans les zones du plugin uniquement */
.lr28 a.lr-btn,
.lr28 .lr-btn,
.lr28 .button-row a:first-child,
.lr28 .card-action a,
.lr28 .green-nav a{
  background:#0a3d35!important;
  border-color:#0a3d35!important;
  color:#fff!important;
}
.lr28 a.lr-btn.secondary,
.lr28 .lr-btn.secondary{
  background:transparent!important;
  color:#0a3d35!important;
  border-color:#0a3d35!important;
}

/* V29.9 — parcours disponibilités : bouton -> planning -> message */
html{scroll-behavior:smooth;}
.lr28 #disponibilites{
  scroll-margin-top:110px;
}
.lr28 .availability-note{
  max-width:760px;
  margin:22px auto 0;
  font-size:17px;
}


/* V29.12 — correction desktop uniquement : cartes d'accueil plus lisibles
   Ne touche pas au mobile. Le problème venait des 4 colonnes trop étroites sur ordinateur. */
@media (min-width: 980px) and (max-width: 1399px) {
  .lr28 .signature-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 26px !important;
    max-width: 1120px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .lr28 .signature-cards article {
    min-width: 0 !important;
  }

  .lr28 .signature-cards img {
    height: 285px !important;
  }

  .lr28 .signature-cards article > div {
    padding: 30px 28px 32px !important;
  }

  .lr28 .signature-cards h3 {
    font-size: 34px !important;
    line-height: 1.05 !important;
  }

  .lr28 .signature-cards p {
    font-size: 16px !important;
    line-height: 1.65 !important;
  }
}

/* Très grands écrans : on peut garder 4 colonnes, mais avec plus d'air. */
@media (min-width: 1400px) {
  .lr28 .signature-cards {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 22px !important;
    max-width: 1320px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .lr28 .signature-cards p {
    font-size: 15.5px !important;
    line-height: 1.55 !important;
  }
}


/* V29.13 — correction définitive ordinateur : 2 colonnes, jamais 4.
   Mobile non modifié. Cette règle est volontairement placée en fin de fichier pour écraser les anciennes règles. */
@media (min-width: 900px) {
  .lr28 .signature-cards {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 34px !important;
    max-width: 1180px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .lr28 .signature-cards article {
    min-width: 0 !important;
    width: 100% !important;
  }

  .lr28 .signature-cards img {
    height: 320px !important;
    width: 100% !important;
    object-fit: cover !important;
  }

  .lr28 .signature-cards article > div {
    padding: 34px 34px 36px !important;
  }

  .lr28 .signature-cards h3 {
    font-size: clamp(30px, 3.2vw, 42px) !important;
    line-height: 1.04 !important;
    max-width: 100% !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }

  .lr28 .signature-cards p {
    font-size: 17px !important;
    line-height: 1.7 !important;
    max-width: 100% !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }

  .lr28 .signature-cards .eyebrow {
    font-size: 12px !important;
    line-height: 1.45 !important;
    letter-spacing: .26em !important;
  }
}

/* Sur écran intermédiaire, on garde aussi 2 colonnes mais un peu plus compact. */
@media (min-width: 900px) and (max-width: 1100px) {
  .lr28 .signature-cards {
    gap: 24px !important;
  }

  .lr28 .signature-cards img {
    height: 280px !important;
  }

  .lr28 .signature-cards article > div {
    padding: 28px 26px 32px !important;
  }

  .lr28 .signature-cards h3 {
    font-size: 32px !important;
  }

  .lr28 .signature-cards p {
    font-size: 16px !important;
    line-height: 1.65 !important;
  }
}


/* V29.14 — correction desktop de l'onglet Résidences uniquement
   La page Résidences utilise .cards/.property-card, pas .signature-cards.
   On élargit les cartes sur ordinateur sans toucher au mobile. */
@media (min-width: 900px) {
  .lr28 .cards {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 34px !important;
    max-width: 1180px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .lr28 .property-card {
    min-width: 0 !important;
    width: 100% !important;
  }

  .lr28 .property-card .img img,
  .lr28 .property-card img {
    width: 100% !important;
    height: 320px !important;
    object-fit: cover !important;
  }

  .lr28 .property-card .body {
    padding: 34px 34px 36px !important;
  }

  .lr28 .property-card h3 {
    font-size: clamp(30px, 3vw, 40px) !important;
    line-height: 1.05 !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }

  .lr28 .property-card p {
    font-size: 17px !important;
    line-height: 1.65 !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }

  .lr28 .property-card .tag {
    font-size: 12px !important;
    line-height: 1.45 !important;
    letter-spacing: .22em !important;
  }
}

@media (min-width: 900px) and (max-width: 1100px) {
  .lr28 .cards {
    gap: 24px !important;
  }

  .lr28 .property-card .img img,
  .lr28 .property-card img {
    height: 280px !important;
  }

  .lr28 .property-card .body {
    padding: 28px 26px 32px !important;
  }

  .lr28 .property-card h3 {
    font-size: 32px !important;
  }

  .lr28 .property-card p {
    font-size: 16px !important;
    line-height: 1.6 !important;
  }
}


/* V29.15 — correction accueil desktop : les biens ne sont plus en colonnes étroites.
   Sur ordinateur uniquement, les cartes de l'accueil deviennent de grandes fiches horizontales.
   Mobile non modifié. */
@media (min-width: 900px) {
  .lr28 .signature-cards {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 34px !important;
    max-width: 1080px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .lr28 .signature-cards article {
    display: grid !important;
    grid-template-columns: 44% 56% !important;
    align-items: stretch !important;
    min-width: 0 !important;
    width: 100% !important;
    overflow: hidden !important;
  }

  .lr28 .signature-cards article:nth-child(even) > img {
    order: 2 !important;
  }

  .lr28 .signature-cards article:nth-child(even) > div {
    order: 1 !important;
  }

  .lr28 .signature-cards img {
    width: 100% !important;
    height: 100% !important;
    min-height: 340px !important;
    object-fit: cover !important;
  }

  .lr28 .signature-cards article > div {
    padding: 46px 52px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
  }

  .lr28 .signature-cards h3 {
    font-size: clamp(34px, 3.8vw, 52px) !important;
    line-height: 1.02 !important;
    max-width: 620px !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
  }

  .lr28 .signature-cards p {
    max-width: 620px !important;
    font-size: 18px !important;
    line-height: 1.75 !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
  }

  .lr28 .signature-cards .eyebrow {
    font-size: 12px !important;
    line-height: 1.5 !important;
    letter-spacing: .24em !important;
  }

  .lr28 .signature-cards a {
    align-self: flex-start !important;
    margin-top: 20px !important;
  }
}

/* Sur petits ordinateurs/tablettes paysage, on garde la même logique mais avec moins de marge. */
@media (min-width: 900px) and (max-width: 1080px) {
  .lr28 .signature-cards {
    max-width: calc(100% - 54px) !important;
    gap: 28px !important;
  }

  .lr28 .signature-cards article {
    grid-template-columns: 42% 58% !important;
  }

  .lr28 .signature-cards img {
    min-height: 300px !important;
  }

  .lr28 .signature-cards article > div {
    padding: 34px 36px !important;
  }

  .lr28 .signature-cards h3 {
    font-size: 38px !important;
  }

  .lr28 .signature-cards p {
    font-size: 16.5px !important;
    line-height: 1.65 !important;
  }
}


/* V29.16 — correction réelle des 3 biens sous le hero de l'accueil.
   Cette zone utilise .first-cards .origin-grid, pas .signature-cards.
   Desktop uniquement : grandes cartes horizontales lisibles.
   Mobile non modifié. */
@media (min-width: 900px) {
  .lr28 .first-cards .origin-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 30px !important;
    max-width: 1040px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .lr28 .first-cards .origin-grid .property-card {
    display: grid !important;
    grid-template-columns: 46% 54% !important;
    align-items: stretch !important;
    min-width: 0 !important;
    width: 100% !important;
    overflow: hidden !important;
  }

  .lr28 .first-cards .origin-grid .property-card:nth-child(even) .img {
    order: 2 !important;
  }

  .lr28 .first-cards .origin-grid .property-card:nth-child(even) .body {
    order: 1 !important;
  }

  .lr28 .first-cards .origin-grid .property-card .img {
    height: 100% !important;
  }

  .lr28 .first-cards .origin-grid .property-card .img img {
    width: 100% !important;
    height: 100% !important;
    min-height: 310px !important;
    object-fit: cover !important;
  }

  .lr28 .first-cards .origin-grid .property-card .body {
    padding: 42px 48px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: flex-start !important;
    text-align: left !important;
  }

  .lr28 .first-cards .origin-grid .property-card h3 {
    font-size: clamp(34px, 3.4vw, 50px) !important;
    line-height: 1.05 !important;
    letter-spacing: -.02em !important;
    max-width: 620px !important;
    margin: 0 0 22px !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
  }

  .lr28 .first-cards .origin-grid .property-card .card-action {
    margin-top: 0 !important;
  }

  .lr28 .first-cards .origin-grid .property-card .card-action a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
}

@media (min-width: 900px) and (max-width: 1080px) {
  .lr28 .first-cards .origin-grid {
    max-width: calc(100% - 54px) !important;
    gap: 24px !important;
  }

  .lr28 .first-cards .origin-grid .property-card {
    grid-template-columns: 42% 58% !important;
  }

  .lr28 .first-cards .origin-grid .property-card .img img {
    min-height: 280px !important;
  }

  .lr28 .first-cards .origin-grid .property-card .body {
    padding: 34px 36px !important;
  }

  .lr28 .first-cards .origin-grid .property-card h3 {
    font-size: 38px !important;
  }
}


/* V29.19 — logo signature sécurisé : aucun rognage de « Christelle ».
   Les règles sont placées en fin de fichier pour neutraliser les anciennes largeurs contradictoires. */
[data-id="logo"],
[data-id="logo"] .site-branding,
[data-id="logo"] .site-logo-container,
.site-branding,
.site-logo-container {
  overflow: visible !important;
}
[data-id="logo"] .site-logo-container,
.site-logo-container {
  width: auto !important;
  max-width: none !important;
  min-width: 245px !important;
  padding-left: 8px !important;
  padding-right: 8px !important;
}
.site-logo-container img,
.site-logo-container img.default-logo,
[data-id="logo"] img,
[data-id="logo"] img.default-logo {
  display: block !important;
  width: 245px !important;
  max-width: 245px !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: left center !important;
  clip-path: none !important;
}
@media (min-width: 768px) and (max-width: 1024px) {
  [data-id="logo"] .site-logo-container,
  .site-logo-container { min-width: 190px !important; }
  .site-logo-container img,
  .site-logo-container img.default-logo,
  [data-id="logo"] img,
  [data-id="logo"] img.default-logo {
    width: 190px !important;
    max-width: 190px !important;
  }
}
@media (max-width: 767px) {
  [data-id="logo"] .site-logo-container,
  .site-logo-container {
    min-width: 168px !important;
    max-width: none !important;
    padding-left: 5px !important;
    padding-right: 5px !important;
  }
  .site-logo-container img,
  .site-logo-container img.default-logo,
  [data-id="logo"] img,
  [data-id="logo"] img.default-logo {
    width: 168px !important;
    max-width: 168px !important;
  }
  .site-logo-container + * { margin-left: 0 !important; }
}

/* L'histoire est plus développée : lecture confortable sans alourdir la page. */
.lr28 .concept-original .concept-text p { max-width: 720px; }
@media (min-width: 760px) {
  .lr28 .concept-original .concept-split { grid-template-columns: 1.18fr .82fr; }
  .lr28 .concept-original .concept-photo { align-self: start; position: sticky; top: 110px; }
}
@media (max-width: 759px) {
  .lr28 .concept-original .concept-text h2 { font-size: 38px; }
}

/* V29.22 — centrage net des titres orange des résidences. */
.lr28 .signature-cards .eyebrow,
.lr28 .property-card .tag {
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
  text-wrap: balance;
}
@media (max-width: 767px) {
  .lr28 .signature-cards .eyebrow,
  .lr28 .property-card .tag {
    font-size: 10.5px !important;
    line-height: 1.55 !important;
    letter-spacing: .13em !important;
  }
}


/* V29.23 — mise en avant franche du cinéma privé A Pinnata. */
.lr28 .cinema-feature {
  margin-top: 54px;
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr);
  background: #171717;
  color: #fff;
  overflow: hidden;
  border-radius: 3px;
  box-shadow: 0 24px 60px rgba(0,0,0,.18);
}
.lr28 .cinema-feature-image img {
  width: 100%;
  height: 100%;
  min-height: 520px;
  object-fit: cover;
  display: block;
}
.lr28 .cinema-feature-copy {
  padding: clamp(34px, 5vw, 72px);
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.lr28 .cinema-feature-copy h2 { color: #fff; margin-top: 8px; }
.lr28 .cinema-feature-copy p { color: rgba(255,255,255,.82); }
.lr28 .cinema-feature-copy .eyebrow { color: #c5a56a; }
.lr28 .cinema-points {
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid rgba(255,255,255,.18);
  font-size: 12px;
  line-height: 1.7;
  letter-spacing: .08em;
  text-transform: uppercase;
}
@media (max-width: 900px) {
  .lr28 .cinema-feature { grid-template-columns: 1fr; margin-top: 34px; }
  .lr28 .cinema-feature-image img { min-height: 0; aspect-ratio: 16 / 10; }
  .lr28 .cinema-feature-copy { padding: 34px 26px 40px; }
}


/* V29.25 — identité plus élégante : titre d’accueil et boutons capsule compacts */
.lr28 .concept-hero-copy h1{
  color:var(--green-dark)!important;
  font-weight:600!important;
  letter-spacing:-.025em!important;
  text-wrap:balance;
}
.lr28 .concept-hero-copy .eyebrow{
  color:var(--gold)!important;
  letter-spacing:.28em!important;
  margin-bottom:16px!important;
}
.lr28 .concept-hero-copy .eyebrow::before{
  content:"";
  display:block;
  width:54px;
  height:1px;
  margin:0 auto 18px;
  background:var(--gold);
  opacity:.9;
}
.lr28 .lr-btn,
.lr28 a.lr-btn,
.lr28 button.lr-btn,
.lr28 .button-row a,
.lr28 .button-row button,
.lr28 .card-action a,
.lr28 .property-card .lr-btn,
.lr28 .origin-grid .lr-btn,
.lr28 input[type="submit"],
.lr28 button[type="submit"]{
  width:auto!important;
  min-width:0!important;
  min-height:44px!important;
  padding:11px 22px!important;
  border-radius:999px!important;
  font-size:11px!important;
  letter-spacing:.105em!important;
  line-height:1.15!important;
  white-space:normal;
  box-shadow:0 10px 22px rgba(17,87,77,.16)!important;
  transition:transform .2s ease,box-shadow .2s ease,filter .2s ease!important;
}
.lr28 .lr-btn:hover,
.lr28 a.lr-btn:hover,
.lr28 button.lr-btn:hover,
.lr28 .button-row a:hover,
.lr28 .card-action a:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 28px rgba(17,87,77,.2)!important;
  filter:brightness(1.04);
}
@media(min-width:980px){
  .lr28 .concept-hero-copy .eyebrow::before{margin-left:0;margin-right:0;}
}
@media(max-width:520px){
  .lr28 .button-row,
  .lr28 .card-action{gap:10px;}
  .lr28 .lr-btn,
  .lr28 a.lr-btn,
  .lr28 button.lr-btn,
  .lr28 .button-row a,
  .lr28 .button-row button,
  .lr28 .card-action a,
  .lr28 .property-card .lr-btn,
  .lr28 .origin-grid .lr-btn{
    width:auto!important;
    max-width:100%!important;
    padding:11px 20px!important;
  }
}


/* V29.26 — tous les boutons : vert foncé, compacts et ovales */
.lr28 .lr-btn,
.lr28 a.lr-btn,
.lr28 button.lr-btn,
.lr28 .lr-btn.secondary,
.lr28 a.lr-btn.secondary,
.lr28 .button-row a,
.lr28 .button-row button,
.lr28 .card-action a,
.lr28 .property-card .lr-btn,
.lr28 .origin-grid .lr-btn,
.lr28 .green-nav a,
.lr28 input[type="submit"],
.lr28 button[type="submit"],
.lr28 .wp-block-button__link{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:0!important;
  min-height:42px!important;
  padding:10px 21px!important;
  border:1px solid var(--green-dark)!important;
  border-radius:999px!important;
  background:var(--green-dark)!important;
  color:#fff!important;
  font-family:'Montserrat',system-ui,sans-serif!important;
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:.11em!important;
  line-height:1.15!important;
  text-transform:uppercase!important;
  text-align:center!important;
  box-shadow:0 9px 20px rgba(10,61,53,.18)!important;
  transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease!important;
}
.lr28 .lr-btn:hover,
.lr28 a.lr-btn:hover,
.lr28 button.lr-btn:hover,
.lr28 .lr-btn.secondary:hover,
.lr28 .button-row a:hover,
.lr28 .button-row button:hover,
.lr28 .card-action a:hover,
.lr28 .green-nav a:hover,
.lr28 input[type="submit"]:hover,
.lr28 button[type="submit"]:hover,
.lr28 .wp-block-button__link:hover{
  background:var(--green)!important;
  border-color:var(--green)!important;
  color:#fff!important;
  transform:translateY(-2px)!important;
  box-shadow:0 13px 27px rgba(10,61,53,.23)!important;
  filter:none!important;
}
@media(max-width:520px){
  .lr28 .lr-btn,
  .lr28 a.lr-btn,
  .lr28 button.lr-btn,
  .lr28 .lr-btn.secondary,
  .lr28 .button-row a,
  .lr28 .button-row button,
  .lr28 .card-action a,
  .lr28 .property-card .lr-btn,
  .lr28 .origin-grid .lr-btn,
  .lr28 .green-nav a,
  .lr28 input[type="submit"],
  .lr28 button[type="submit"],
  .lr28 .wp-block-button__link{
    width:auto!important;
    max-width:100%!important;
    min-height:42px!important;
    padding:10px 19px!important;
  }
  .lr28 .green-nav{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;}
}


/* V29.27 — uniformisation finale de TOUS les vrais boutons du site */
.lr28 .lr-btn,
.lr28 a.lr-btn,
.lr28 button.lr-btn,
.lr28 .lr-btn.secondary,
.lr28 a.lr-btn.secondary,
.lr28 .button-row > a,
.lr28 .button-row > button,
.lr28 .card-action > a,
.lr28 .property-card .card-action > a,
.lr28 .origin-grid .card-action > a,
.lr28 .signature-cards article > div > a,
.lr28 .green-nav > a,
.lr28 input[type="submit"],
.lr28 button[type="submit"],
.lr28 .wp-block-button__link {
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:0!important;
  min-height:42px!important;
  padding:10px 21px!important;
  margin:0!important;
  border:1px solid #0a3d35!important;
  border-radius:999px!important;
  background:#0a3d35!important;
  background-image:none!important;
  color:#fff!important;
  font-family:'Montserrat',system-ui,sans-serif!important;
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:.10em!important;
  line-height:1.15!important;
  text-transform:uppercase!important;
  text-align:center!important;
  box-shadow:0 9px 20px rgba(10,61,53,.18)!important;
  opacity:1!important;
}
.lr28 .signature-cards article > div > a{margin-top:18px!important;}
.lr28 .lr-btn:hover,
.lr28 a.lr-btn:hover,
.lr28 button.lr-btn:hover,
.lr28 .lr-btn.secondary:hover,
.lr28 .button-row > a:hover,
.lr28 .button-row > button:hover,
.lr28 .card-action > a:hover,
.lr28 .signature-cards article > div > a:hover,
.lr28 .green-nav > a:hover,
.lr28 input[type="submit"]:hover,
.lr28 button[type="submit"]:hover,
.lr28 .wp-block-button__link:hover {
  background:#0a3d35!important;
  border-color:#0a3d35!important;
  color:#fff!important;
  transform:translateY(-2px)!important;
  box-shadow:0 13px 27px rgba(10,61,53,.23)!important;
}
@media(max-width:520px){
  .lr28 .lr-btn,
  .lr28 a.lr-btn,
  .lr28 button.lr-btn,
  .lr28 .lr-btn.secondary,
  .lr28 .button-row > a,
  .lr28 .button-row > button,
  .lr28 .card-action > a,
  .lr28 .signature-cards article > div > a,
  .lr28 .green-nav > a,
  .lr28 input[type="submit"],
  .lr28 button[type="submit"],
  .lr28 .wp-block-button__link{
    width:auto!important;
    max-width:100%!important;
    min-height:42px!important;
    padding:10px 18px!important;
  }
}


/* V29.28 — verrouillage absolu de la couleur des boutons */
.lr28 .lr-btn,
.lr28 a.lr-btn,
.lr28 button,
.lr28 input[type="submit"],
.lr28 input[type="button"],
.lr28 .button-row > a,
.lr28 .button-row > button,
.lr28 .card-action > a,
.lr28 .green-nav > a,
.lr28 .wp-block-button__link,
.lr28 .wpsbc-container button,
.lr28 .wpsbc-container a[class*="button"],
.lr28 .wpsbc-container a[class*="prev"],
.lr28 .wpsbc-container a[class*="next"],
.lr28 .wpsbc-calendar button,
.lr28 .wpsbc-calendar a[class*="prev"],
.lr28 .wpsbc-calendar a[class*="next"]{
  background:#0a3d35!important;
  background-color:#0a3d35!important;
  background-image:none!important;
  border-color:#0a3d35!important;
  color:#fff!important;
  border-radius:999px!important;
}
.lr28 .lr-btn:hover,
.lr28 .lr-btn:focus,
.lr28 .lr-btn:active,
.lr28 a.lr-btn:hover,
.lr28 a.lr-btn:focus,
.lr28 a.lr-btn:active,
.lr28 button:hover,
.lr28 button:focus,
.lr28 button:active,
.lr28 input[type="submit"]:hover,
.lr28 input[type="submit"]:focus,
.lr28 input[type="submit"]:active,
.lr28 .button-row > a:hover,
.lr28 .button-row > a:focus,
.lr28 .button-row > a:active,
.lr28 .card-action > a:hover,
.lr28 .card-action > a:focus,
.lr28 .card-action > a:active,
.lr28 .green-nav > a:hover,
.lr28 .green-nav > a:focus,
.lr28 .green-nav > a:active,
.lr28 .wp-block-button__link:hover,
.lr28 .wp-block-button__link:focus,
.lr28 .wp-block-button__link:active,
.lr28 .wpsbc-container button:hover,
.lr28 .wpsbc-container button:focus,
.lr28 .wpsbc-container a[class*="prev"]:hover,
.lr28 .wpsbc-container a[class*="next"]:hover{
  background:#0a3d35!important;
  background-color:#0a3d35!important;
  border-color:#0a3d35!important;
  color:#fff!important;
  filter:brightness(1.08)!important;
}


/* ==========================================================
   V29.32 — CORRECTIF GLOBAL FINAL
   ========================================================== */

/* Le thème Blocksy ne doit jamais remettre les pages du site dans une colonne étroite. */
body.lr28-site-page .ct-container-full,
body.lr28-site-page .ct-container,
body.lr28-site-page #main,
body.lr28-site-page .site-main,
body.lr28-site-page article.page,
body.lr28-site-page .entry-content,
body.lr28-site-page .entry-content > .lr28 {
  width: 100% !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
body.lr28-site-page .entry-content { overflow: visible !important; }
body.lr28-site-page .lr28 { width: 100% !important; max-width: none !important; margin: 0 !important; }

/* Présentation cinéma : une seule carte lumineuse, sans double insert noir. */
.lr28 .cinema-feature {
  display: block !important;
  margin: 48px 0 58px !important;
  overflow: hidden !important;
  background: #fffaf4 !important;
  border: 1px solid #e2d4c2 !important;
  box-shadow: 0 24px 60px rgba(30,26,20,.12) !important;
}
.lr28 .cinema-feature-image { background: #171713 !important; }
.lr28 .cinema-feature-image img {
  display: block !important;
  width: 100% !important;
  height: clamp(300px, 48vw, 610px) !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  object-fit: cover !important;
  object-position: center 52% !important;
}
.lr28 .cinema-feature-copy {
  background: #fffaf4 !important;
  color: #534c43 !important;
  padding: 40px clamp(24px, 6vw, 72px) 44px !important;
  text-align: center !important;
}
.lr28 .cinema-feature-copy h2 { color: #15130f !important; max-width: 820px; margin: 6px auto 0 !important; }
.lr28 .cinema-feature-copy p { color: #534c43 !important; max-width: 820px; margin-left: auto !important; margin-right: auto !important; }
.lr28 .cinema-feature-copy .eyebrow { color: #9a7d3f !important; }
.lr28 .cinema-points {
  display: inline-flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  margin-top: 24px !important;
  padding: 11px 18px !important;
  border: 1px solid #d9c8af !important;
  background: #fff !important;
  color: #0a3d35 !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

/* Hub disponibilités : arrivée directe sur les trois vrais plannings. */
.lr28 .availability-hub { background: #f7f1e8 !important; scroll-margin-top: 110px; }
.lr28 .availability-menu {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin: 30px auto 38px;
}
.lr28 .availability-menu a,
.lr28 .availability-detail {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 11px 17px;
  border: 1px solid #0a3d35;
  border-radius: 999px;
  color: #0a3d35 !important;
  background: #fff;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.lr28 .availability-property {
  scroll-margin-top: 110px;
  margin: 0 0 26px;
  padding: clamp(24px, 4vw, 42px);
  background: #fff;
  border: 1px solid #e2d4c2;
  box-shadow: 0 16px 44px rgba(30,26,20,.08);
}
.lr28 .availability-property-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
  margin-bottom: 18px;
}
.lr28 .availability-property-head h3 { font-size: clamp(30px, 4vw, 46px); }
.lr28 .availability-property .calendar-box { margin-top: 12px !important; }
.lr28 .availability-cta {
  max-width: 850px;
  margin: 34px auto 0;
  padding: 34px clamp(22px, 5vw, 56px);
  text-align: center;
  background: #fffaf4;
  border: 1px solid #d9c8af;
}
.lr28 .availability-cta h3 { margin-bottom: 12px; }

/* Photos toujours séparées : aucun collage bord à bord. */
.lr28 .gallery { gap: 18px !important; }
.lr28 .gallery figure { border-width: 8px !important; }

@media (max-width: 767px) {
  body.lr28-site-page .ct-container-full,
  body.lr28-site-page .ct-container,
  body.lr28-site-page #main,
  body.lr28-site-page .site-main,
  body.lr28-site-page article.page,
  body.lr28-site-page .entry-content { width: 100% !important; max-width: none !important; }
  .lr28 .cinema-feature { margin: 34px 0 42px !important; }
  .lr28 .cinema-feature-image img { height: 285px !important; object-position: center center !important; }
  .lr28 .cinema-feature-copy { padding: 30px 21px 34px !important; }
  .lr28 .cinema-points { display: block !important; line-height: 1.55 !important; }
  .lr28 .availability-menu { display: grid; grid-template-columns: 1fr; }
  .lr28 .availability-menu a { width: 100%; }
  .lr28 .availability-property { padding: 22px 14px; }
  .lr28 .availability-property-head { display: block; text-align: center; }
  .lr28 .availability-detail { margin-top: 16px; width: 100%; }
}


/* ==========================================================
   V29.33 — FINITIONS ÉDITORIALES, JEUX/SPORT ET BOUTONS
   ========================================================== */
.lr28 .signature-cards article > div > a.nos-lieux-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  align-self: center !important;
  min-height: 42px !important;
  margin: 22px auto 0 !important;
  padding: 10px 21px !important;
  border: 1px solid #0a3d35 !important;
  border-radius: 999px !important;
  background: #0a3d35 !important;
  color: #fff !important;
  box-shadow: 0 10px 22px rgba(10,61,53,.16) !important;
  text-decoration: none !important;
}
.lr28 .games-sport-feature {
  margin-top: 54px !important;
  padding-top: 46px !important;
  border-top: 1px solid #e2d4c2 !important;
}
.lr28 .games-sport-feature .photo img {
  object-position: center center !important;
}
@media (max-width: 767px) {
  .lr28 .games-sport-feature {
    margin-top: 38px !important;
    padding-top: 34px !important;
  }
}


/* ==========================================================
   V30 — IDENTITÉ DE MARQUE : « LAISSEZ-VOUS INSPIRER »
   ========================================================== */
.lr28 .inspiration-section { overflow: hidden; }
.lr28 .inspiration-title { margin-bottom: 10px !important; }
.lr28 .inspiration-subtitle {
  max-width: 720px;
  margin: 0 auto 42px !important;
  color: #746c62;
  font-weight: 400;
}
.lr28 .inspiration-cards { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
.lr28 .inspiration-cards article {
  transition: transform .35s ease, box-shadow .35s ease;
}
.lr28 .inspiration-cards article img {
  transition: transform .55s ease;
}
@media (hover:hover) and (pointer:fine) {
  .lr28 .inspiration-cards article:hover {
    transform: translateY(-6px);
    box-shadow: 0 22px 52px rgba(30,26,20,.13);
  }
  .lr28 .inspiration-cards article:hover img { transform: scale(1.035); }
  .lr28 .inspiration-cards article:hover .nos-lieux-btn { transform: translateY(-1px); }
}
.lr28 .sea-experience {
  max-width: 1060px;
  margin: 38px auto 0;
  padding: 28px 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  background: #fff;
  border: 1px solid #e2d4c2;
}
.lr28 .sea-experience h3 { margin: 3px 0 7px; }
.lr28 .sea-experience p:last-child { margin-bottom: 0; }
.lr28 .sea-experience .lr-btn { flex: 0 0 auto; }
@media (max-width: 980px) {
  .lr28 .inspiration-cards { grid-template-columns: 1fr !important; max-width: 760px; margin-left: auto; margin-right: auto; }
}
@media (max-width: 767px) {
  .lr28 .inspiration-subtitle { margin-bottom: 28px !important; padding: 0 10px; }
  .lr28 .sea-experience { display: block; text-align: center; padding: 26px 20px; }
  .lr28 .sea-experience .lr-btn { width: 100%; margin-top: 18px; }
}


/* V31 — pages éditoriales Notre Histoire & Carnet de Voyage */
.editorial-page{font-size:1.05rem;line-height:1.9}
.editorial-page h2{margin-top:2.2rem;margin-bottom:.75rem}
.editorial-page p{margin:0 0 1.15rem}
.travel-cards article{height:100%}
.travel-cards article img{aspect-ratio:16/10;object-fit:cover}
@media (max-width: 760px){.editorial-page{font-size:1rem;line-height:1.75}}


/* V31.2 — Carnet premium et visuel provisoire Arc 1950 */
.carnet-premium .travel-hero{position:relative;min-height:70vh;display:flex;align-items:flex-end;overflow:hidden;background:#1f2825}
.carnet-premium .travel-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.carnet-premium .travel-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.58))}
.carnet-premium .travel-hero-overlay{position:relative;z-index:2;width:min(1180px,calc(100% - 48px));margin:0 auto;padding:0 0 72px;color:#fff}
.carnet-premium .travel-hero-overlay .eyebrow{color:#fff;opacity:.85}
.carnet-premium .travel-hero-overlay h1{font-size:clamp(3rem,7vw,6.6rem);line-height:.95;margin:.15em 0 .2em;color:#fff}
.carnet-premium .travel-hero-overlay p:last-child{max-width:680px;font-size:clamp(1.05rem,2vw,1.35rem)}
.carnet-premium .center-intro{max-width:900px;text-align:center}
.carnet-premium .travel-destination{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr);min-height:720px;background:#f6f1e9}
.carnet-premium .travel-destination.reverse{grid-template-columns:minmax(420px,.85fr) minmax(0,1.15fr);background:#fff}
.carnet-premium .travel-destination.reverse .travel-image{order:2}
.carnet-premium .travel-image img{width:100%;height:100%;min-height:720px;object-fit:cover;display:block}
.carnet-premium .travel-content{padding:76px clamp(36px,6vw,92px);align-self:center}
.carnet-premium .travel-content h2{font-size:clamp(2.4rem,4vw,4.3rem);line-height:1;margin:.15em 0 .4em}
.carnet-premium .address-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:34px}
.carnet-premium .address-card{display:flex;flex-direction:column;min-height:138px;padding:22px;border:1px solid #d9cdbd;background:rgba(255,255,255,.72);text-decoration:none!important;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.carnet-premium .address-card strong{font-family:"Cormorant Garamond",serif;font-size:1.55rem;color:#193b34}
.carnet-premium .address-card span{margin-top:4px;color:#71695f}
.carnet-premium .address-card em{margin-top:auto;padding-top:16px;font-style:normal;text-transform:uppercase;letter-spacing:.1em;font-size:.7rem;color:#0a3d35}
@media (hover:hover){.carnet-premium .address-card:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(33,42,37,.10);border-color:#9f8c73}}
@media (max-width:980px){.carnet-premium .travel-destination,.carnet-premium .travel-destination.reverse{grid-template-columns:1fr;min-height:0}.carnet-premium .travel-destination.reverse .travel-image{order:0}.carnet-premium .travel-image img{min-height:420px;max-height:62vh}.carnet-premium .travel-content{padding:54px 28px}}
@media (max-width:640px){.carnet-premium .travel-hero{min-height:62vh}.carnet-premium .travel-hero-overlay{width:calc(100% - 34px);padding-bottom:42px}.carnet-premium .address-grid{grid-template-columns:1fr}.carnet-premium .address-card{min-height:118px}.carnet-premium .travel-image img{min-height:300px}}


/* ==========================================================
   V40 — SIGNATURE EDITION
   Raffinement éditorial sans modification destructrice
   ========================================================== */
:root{
  --lr40-ink:#17352f;
  --lr40-sand:#f5f0e8;
  --lr40-line:#ded2c2;
  --lr40-gold:#b28a56;
}
.lr28{background:#fff;color:#2c312f}
.lr28 .section{padding-top:clamp(72px,8vw,124px);padding-bottom:clamp(72px,8vw,124px)}
.lr28 .wrap{max-width:1180px}
.lr28 .wrap-wide{max-width:1380px}
.lr28 h1,.lr28 h2,.lr28 h3{letter-spacing:-.018em}
.lr28 h2{font-size:clamp(2.45rem,4.8vw,5.25rem);line-height:.98}
.lr28 .eyebrow{letter-spacing:.18em;font-size:.72rem}
.lr28 .inspiration-title{max-width:900px;margin-left:auto!important;margin-right:auto!important}
.lr28 .inspiration-subtitle{font-size:clamp(1rem,1.5vw,1.2rem);letter-spacing:.015em}
.lr28 .inspiration-cards{gap:28px!important}
.lr28 .inspiration-cards article{border:1px solid rgba(170,145,112,.34)!important;background:#fff!important;box-shadow:0 18px 52px rgba(21,42,36,.07)!important;overflow:hidden}
.lr28 .inspiration-cards article img{aspect-ratio:4/5;object-fit:cover}
.lr28 .inspiration-cards article>div{padding:30px 28px 34px!important}
.lr28 .inspiration-cards article h3{font-size:clamp(2rem,2.7vw,2.8rem);line-height:1}
.lr28 .nos-lieux-btn,.lr28 .lr-btn{transition:transform .25s ease,box-shadow .25s ease,background .25s ease!important}
@media (hover:hover){.lr28 .nos-lieux-btn:hover,.lr28 .lr-btn:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(10,61,53,.2)!important}}
.lr28 .concept-split,.lr28 .split{gap:clamp(40px,7vw,100px)}
.lr28 .concept-photo img,.lr28 .split img{border-radius:0;box-shadow:0 24px 70px rgba(22,43,37,.10)}
.lr28 .lr40-why{background:var(--lr40-sand);text-align:center;border-top:1px solid var(--lr40-line);border-bottom:1px solid var(--lr40-line)}
.lr28 .lr40-why .wrap{max-width:900px}
.lr28 .lr40-why h2{font-size:clamp(2.25rem,4vw,4.4rem);margin:.22em 0 .45em}
.lr28 .lr40-why p:last-child{max-width:780px;margin:0 auto;font-size:clamp(1.05rem,1.5vw,1.28rem);line-height:1.85;color:#5f5b54}
.carnet-premium .travel-content{max-width:760px}
.carnet-premium .travel-content>p{font-size:1.08rem;line-height:1.8}
.carnet-premium .address-card{background:rgba(255,255,255,.86);border-color:rgba(178,138,86,.36)}
.editorial-page{max-width:900px;margin-left:auto;margin-right:auto}
.editorial-page>p:first-of-type{font-size:clamp(1.15rem,1.8vw,1.38rem);line-height:1.8;color:#525851}
@media (max-width:980px){
  .lr28 .section{padding-top:68px;padding-bottom:68px}
  .lr28 .inspiration-cards article img{aspect-ratio:16/11}
}
@media (max-width:640px){
  .lr28 .section{padding-top:54px;padding-bottom:54px}
  .lr28 h2{font-size:clamp(2.15rem,12vw,3.35rem)}
  .lr28 .inspiration-cards{gap:22px!important}
  .lr28 .inspiration-cards article>div{padding:24px 20px 28px!important}
  .lr28 .lr40-why p:last-child{font-size:1.02rem;line-height:1.72}
}
@media (prefers-reduced-motion:reduce){
  .lr28 *{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}

/* V41 Premium — réservation directe */
.lr28 .direct-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:38px 0}
.lr28 .direct-benefits article{padding:26px;border:1px solid rgba(30,61,47,.16);border-radius:18px;background:#fff}
.lr28 .direct-benefits h3{margin-top:0;color:#1e3d2f}
.lr28 .direct-booking-link{margin-top:24px}.lr28 .direct-booking-link a{font-weight:600;text-decoration:underline;text-underline-offset:4px}
@media(max-width:760px){.lr28 .direct-benefits{grid-template-columns:1fr}}


/* V50 SIGNATURE — ACCUEIL UNIQUEMENT */
.lr28.v50-home{background:#fff;color:#39352f}
.v50-home .center{text-align:center}
.v50-hero{position:relative;min-height:min(88vh,860px);display:grid;place-items:center;overflow:hidden;background:#111}
.v50-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.v50-hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,10,8,.20),rgba(6,10,8,.54))}
.v50-hero-content{position:relative;z-index:1;width:min(920px,calc(100% - 40px));text-align:center;color:#fff;padding:140px 0 90px}
.v50-kicker,.v50-hero-content>p{font-size:12px;letter-spacing:.24em;text-transform:uppercase;font-weight:600}
.v50-hero-content h1{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(50px,7vw,92px);line-height:.98;font-weight:500;max-width:900px;margin:24px auto;color:#fff;text-shadow:0 3px 22px rgba(0,0,0,.24)}
.v50-hero .button-row{margin-top:38px;gap:14px}.v50-hero .lr-btn{background:#fff;border-color:#fff;color:#26372c!important}.v50-hero .lr-btn.secondary{background:transparent;color:#fff!important;border-color:rgba(255,255,255,.85)}
.v50-intro{padding:110px 0 75px}.v50-intro h2{font-size:clamp(38px,5vw,62px);font-weight:500;line-height:1.12;margin-top:18px}
.v50-collection{padding:20px 0 110px}.v50-property-grid{display:grid;gap:22px}.v50-property{position:relative;overflow:hidden;background:#111}.v50-property a{display:block;position:relative;color:#fff!important}.v50-property img{width:100%;height:520px;object-fit:cover;transition:transform 1s ease}.v50-property:hover img{transform:scale(1.025)}.v50-card-overlay{position:absolute;inset:0;padding:34px;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(180deg,transparent 35%,rgba(7,10,8,.72));color:#fff}.v50-card-overlay p{font-size:11px;letter-spacing:.2em;text-transform:uppercase}.v50-card-overlay h2{color:#fff;font-size:44px;margin:7px 0 4px}.v50-card-overlay span{font-size:14px}.v50-card-overlay strong{margin-top:20px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;border-bottom:1px solid rgba(255,255,255,.7);width:max-content;padding-bottom:5px}
.v50-manifesto{padding:125px 0;background:#f5f0e8}.v50-manifesto p{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(28px,4vw,48px);color:#6c6257}.v50-manifesto h2{font-size:clamp(42px,6vw,76px);line-height:1.03;font-weight:500;margin-top:14px}
.v50-philosophy,.v50-cinema{padding:120px 0}.v50-split{display:grid;gap:55px;align-items:center}.v50-copy h2{font-size:clamp(40px,5vw,62px);line-height:1.05;font-weight:500;margin:18px 0 26px}.v50-copy>p:not(.eyebrow){font-size:18px;line-height:1.85}.v50-image img{width:100%;height:650px;object-fit:cover}.v50-pillars{display:grid;gap:11px;margin:28px 0}.v50-pillars span{padding:12px 0;border-bottom:1px solid #d8d0c6;font-size:13px;letter-spacing:.08em;text-transform:uppercase}.v50-text-link{display:inline-block;margin-top:16px;color:#304d39!important;font-size:12px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;border-bottom:1px solid #a58b5c;padding-bottom:5px}
.v50-spa{padding:35px 0 125px;background:#fff}.v50-spa-card{background:#1b2a21;color:#fff;display:grid;overflow:hidden}.v50-spa-card img{width:100%;height:600px;object-fit:cover}.v50-spa-card>div{padding:52px}.v50-spa-card h2{color:#fff;font-size:clamp(43px,5vw,66px);line-height:1.03;margin:18px 0}.v50-spa-card p:not(.eyebrow){font-family:'Cormorant Garamond',Georgia,serif;font-size:27px;line-height:1.4;color:#ece5db}.v50-spa-card .v50-text-link{color:#fff!important}
.v50-reviews{padding:120px 0;background:#f8f5ef}.v50-review-intro,.v50-review-note{text-align:center;max-width:720px;margin:20px auto 0}.v50-review-grid{display:grid;gap:18px;margin-top:48px}.v50-review-grid blockquote{margin:0;padding:38px;background:#fff;border:1px solid #e2dbd1;text-align:center}.v50-review-grid blockquote div{letter-spacing:.22em;color:#a18455}.v50-review-grid blockquote p{font-family:'Cormorant Garamond',Georgia,serif;font-size:27px;line-height:1.35;margin:22px 0}.v50-review-grid cite{font-style:normal;font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:#756d64}.v50-review-note{font-size:13px;color:#756d64;margin-top:32px}
.v50-cinema{background:#fff}.v50-journal{padding:120px 0;background:#f5f0e8}.v50-journal-grid{display:grid;gap:20px;margin-top:45px}.v50-journal-grid a{position:relative;overflow:hidden;height:430px;color:#fff!important}.v50-journal-grid img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}.v50-journal-grid a:hover img{transform:scale(1.03)}.v50-journal-grid a:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.62))}.v50-journal-grid span{position:absolute;z-index:1;left:28px;right:28px;bottom:28px;font-family:'Cormorant Garamond',Georgia,serif;font-size:31px;line-height:1.1}
.v50-final{position:relative;min-height:690px;display:grid;place-items:center;text-align:center;overflow:hidden;color:#fff}.v50-final>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.v50-final-shade{position:absolute;inset:0;background:rgba(10,12,10,.48)}.v50-final>div:last-child{position:relative;z-index:1;width:min(760px,calc(100% - 36px));padding:90px 0}.v50-final h2{font-size:clamp(48px,7vw,82px);line-height:1;color:#fff;margin:20px 0}.v50-final p:not(.eyebrow){font-size:18px;color:#fff}.v50-final .lr-btn{margin-top:30px;background:#fff;border-color:#fff;color:#26372c!important}
@media(min-width:900px){.v50-property-grid{grid-template-columns:1.35fr 1fr}.v50-property.v50-featured{grid-row:span 2}.v50-property.v50-featured img{height:762px}.v50-property:not(.v50-featured) img{height:370px}.v50-split{grid-template-columns:.9fr 1.1fr}.v50-split.reverse{grid-template-columns:1.1fr .9fr}.v50-split.reverse .v50-image{order:1}.v50-split.reverse .v50-copy{order:2}.v50-spa-card{grid-template-columns:1.45fr .75fr;align-items:center}.v50-review-grid,.v50-journal-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:899px){.v50-hero{min-height:760px}.v50-hero-content{padding:125px 0 70px}.v50-hero .button-row{display:grid}.v50-property img,.v50-property.v50-featured img{height:500px}.v50-philosophy,.v50-cinema,.v50-reviews,.v50-journal{padding:82px 0}.v50-image img{height:480px}.v50-spa-card img{height:480px}.v50-spa-card>div{padding:38px 28px}.v50-final{min-height:600px}}
@media(max-width:520px){.v50-hero{min-height:680px}.v50-hero-content h1{font-size:48px}.v50-hero .lr-btn{width:100%}.v50-intro{padding:75px 0 50px}.v50-property img,.v50-property.v50-featured img{height:420px}.v50-card-overlay{padding:25px}.v50-card-overlay h2{font-size:35px}.v50-manifesto{padding:85px 0}.v50-split{gap:30px}.v50-image img,.v50-spa-card img{height:360px}.v50-review-grid blockquote{padding:28px 22px}.v50-journal-grid a{height:340px}.v50-final{min-height:560px}}


/* V51 — lisibilité premium des cartes de résidences sur l'accueil */
.v50-property a{
  isolation:isolate;
  min-height:100%;
}
.v50-property img{
  filter:none!important;
  opacity:1!important;
}
.v50-card-overlay{
  inset:auto 0 0 0!important;
  min-height:62%;
  justify-content:flex-end;
  padding:64px 38px 36px!important;
  background:linear-gradient(180deg,rgba(6,10,8,0) 0%,rgba(6,10,8,.18) 18%,rgba(6,10,8,.78) 67%,rgba(6,10,8,.92) 100%)!important;
  text-shadow:0 2px 14px rgba(0,0,0,.62);
  pointer-events:none;
}
.v50-card-overlay p,
.v50-card-overlay span,
.v50-card-overlay h2{
  color:#fff!important;
  opacity:1!important;
  text-shadow:0 2px 14px rgba(0,0,0,.78);
}
.v50-card-overlay p{
  font-size:12px!important;
  font-weight:700!important;
  letter-spacing:.19em!important;
  line-height:1.35;
}
.v50-card-overlay h2{
  margin:10px 0 8px!important;
  font-size:clamp(38px,4vw,55px)!important;
  line-height:1!important;
}
.v50-card-overlay span{
  display:block;
  max-width:520px;
  font-size:14px!important;
  font-weight:600!important;
  line-height:1.5;
  letter-spacing:.065em;
  text-transform:uppercase;
}
.v50-card-overlay strong{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  width:max-content!important;
  margin-top:23px!important;
  padding:12px 18px 11px!important;
  border:1px solid rgba(255,255,255,.92)!important;
  border-radius:999px;
  background:rgba(255,255,255,.96)!important;
  color:#213429!important;
  font-size:11px!important;
  font-weight:800!important;
  line-height:1!important;
  letter-spacing:.14em!important;
  text-transform:uppercase;
  text-shadow:none!important;
  box-shadow:0 8px 24px rgba(0,0,0,.16);
}
.v50-property:hover .v50-card-overlay strong{
  background:#fff!important;
  transform:translateY(-1px);
}
@media(max-width:899px){
  .v50-card-overlay{
    min-height:66%;
    padding:70px 30px 30px!important;
  }
}
@media(max-width:520px){
  .v50-card-overlay{
    min-height:70%;
    padding:78px 24px 25px!important;
  }
  .v50-card-overlay p{font-size:10px!important;letter-spacing:.16em!important}
  .v50-card-overlay h2{font-size:38px!important;margin:9px 0 8px!important}
  .v50-card-overlay span{font-size:12px!important;line-height:1.55;letter-spacing:.045em}
  .v50-card-overlay strong{
    margin-top:18px!important;
    padding:11px 15px 10px!important;
    font-size:10px!important;
  }
}


/* V52 — SIGNATURE HARMONIE */
.lr28.v52-home{background:#f7f3ec;color:#29342f}
.v52-home .center{text-align:center}
.v52-intro{padding:112px 0 76px;background:linear-gradient(180deg,#f7f3ec 0%,#efe6d9 100%)}
.v52-intro h2{font-size:clamp(38px,5vw,62px);font-weight:500;line-height:1.12;margin:18px auto 0;max-width:940px}
.v52-collection{padding:0 0 120px;background:#efe6d9}
.v52-property{background:#fbf8f3;border:1px solid rgba(69,77,70,.12);box-shadow:0 18px 54px rgba(47,55,49,.08);overflow:hidden}
.v52-property-image{display:block;overflow:hidden;background:#ddd4c7}
.v52-property-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .9s ease}
.v52-property:hover .v52-property-image img{transform:scale(1.018)}
.v52-featured .v52-property-image{height:clamp(420px,52vw,720px)}
.v52-property-row{display:grid;gap:28px;margin-top:28px}
.v52-property-row .v52-property-image{height:410px}
.v52-property-copy{padding:34px 38px 38px;background:#fbf8f3}
.v52-property-copy h2{font-size:clamp(36px,4vw,54px);line-height:1.04;font-weight:500;margin:8px 0 13px;color:#29342f}
.v52-property-copy .eyebrow{color:#81725f}
.v52-facts{font-size:14px;letter-spacing:.04em;color:#635d55;margin:0 0 24px}.v52-facts span{color:#b59b6a;padding:0 7px}
.v52-discover{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 22px;border:1px solid #2f5748;border-radius:999px;background:#2f5748;color:#fff!important;font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;transition:.25s ease}
.v52-discover:hover{background:#b59b6a;border-color:#b59b6a;color:#fff!important;transform:translateY(-1px)}
.v52-reviews{padding:122px 0;background:#f7f3ec}
.v52-review-intro,.v52-review-note{text-align:center;max-width:760px;margin:20px auto 0;color:#6c655c}
.v52-review-grid{display:grid;gap:22px;margin-top:52px}
.v52-review-grid blockquote{margin:0;padding:42px 34px 34px;background:#fbf8f3;border:1px solid #ded4c6;box-shadow:0 14px 38px rgba(51,58,53,.055);text-align:left}
.v52-stars{color:#b09462;letter-spacing:.18em;font-size:15px}
.v52-review-grid blockquote p{font-family:'Cormorant Garamond',Georgia,serif;font-size:28px;line-height:1.38;margin:22px 0 28px;color:#302f2c}
.v52-review-grid footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:18px;border-top:1px solid #e4ddd2}
.v52-review-grid footer strong{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#5b5d58}
.v52-platform{display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:750;letter-spacing:.02em;background:#fff;border:1px solid #ddd4c7;color:#4b4b48}
.v52-airbnb:before{content:'⌂';font-size:14px;margin-right:5px;color:#a76565}.v52-booking:before{content:'B';display:grid;place-items:center;width:18px;height:18px;border-radius:50%;margin-right:6px;background:#173f73;color:#fff;font-size:10px;font-weight:800}
.v52-direct{padding:118px 0;background:#e9dfd0}
.v52-direct-card{display:grid;gap:34px;align-items:center;padding:58px;background:#fbf8f3;border:1px solid rgba(65,74,67,.13);box-shadow:0 20px 58px rgba(51,58,53,.07)}
.v52-direct-card h2{font-size:clamp(40px,5vw,62px);line-height:1.05;font-weight:500;margin:16px 0 20px;color:#29342f}
.v52-direct-card>div>p:not(.eyebrow){font-size:17px;line-height:1.75;color:#5e5d57}
.v52-direct-card ul{list-style:none;padding:0;margin:0;display:grid;gap:13px}.v52-direct-card li{padding:0 0 13px 24px;border-bottom:1px solid #ded4c6;position:relative;color:#414741}.v52-direct-card li:before{content:'—';position:absolute;left:0;color:#b09462}
.v52-direct-card .lr-btn{justify-self:start;background:#2f5748;border-color:#2f5748;color:#fff!important}
.v52-home .v50-manifesto{background:#e9dfd0}.v52-home .v50-philosophy,.v52-home .v50-cinema{background:#f7f3ec}.v52-home .v50-spa{background:#f7f3ec}.v52-home .v50-journal{background:#efe6d9}
@media(min-width:900px){.v52-property-row{grid-template-columns:repeat(2,minmax(0,1fr))}.v52-review-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.v52-direct-card{grid-template-columns:1.2fr .9fr;}.v52-direct-card .lr-btn{grid-column:1/-1}}
@media(max-width:899px){.v52-intro{padding:84px 0 56px}.v52-collection{padding-bottom:86px}.v52-featured .v52-property-image,.v52-property-row .v52-property-image{height:480px}.v52-property-copy{padding:28px}.v52-reviews,.v52-direct{padding:86px 0}.v52-direct-card{padding:38px 30px}}
@media(max-width:520px){.v52-featured .v52-property-image,.v52-property-row .v52-property-image{height:330px}.v52-property-copy{padding:24px 22px 27px}.v52-property-copy h2{font-size:37px}.v52-facts{font-size:12px;line-height:1.7}.v52-facts span{padding:0 3px}.v52-discover{width:100%}.v52-review-grid blockquote{padding:30px 24px}.v52-review-grid blockquote p{font-size:25px}.v52-review-grid footer{align-items:flex-start;flex-direction:column}.v52-direct-card{padding:31px 23px}.v52-direct-card .lr-btn{width:100%}}


/* V52.1 — blocs factuels SEO/GEO, sobres et cohérents avec Signature Harmonie */
.lr521-facts{background:#efe9df;padding:72px 24px;border-top:1px solid rgba(36,68,55,.08);border-bottom:1px solid rgba(36,68,55,.08)}
.lr521-facts h2{margin-bottom:34px}
.lr521-facts-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0}
.lr521-facts-grid>div{background:#f8f6f2;padding:24px 26px;border:1px solid rgba(36,68,55,.10);border-radius:3px}
.lr521-facts-grid dt{font-family:Montserrat,sans-serif;font-size:11px;line-height:1.4;letter-spacing:.13em;text-transform:uppercase;color:#9a7b48;margin-bottom:8px;font-weight:700}
.lr521-facts-grid dd{margin:0;font-family:"Cormorant Garamond",serif;font-size:21px;line-height:1.25;color:#243f34}
@media(max-width:900px){.lr521-facts{padding:52px 18px}.lr521-facts-grid{grid-template-columns:1fr 1fr}.lr521-facts-grid dd{font-size:19px}}
@media(max-width:600px){.lr521-facts-grid{grid-template-columns:1fr}.lr521-facts-grid>div{padding:20px 22px}}

/* V52.2 — identité de marque et destinations renforcées dans le hero */
.v50-kicker{display:flex;flex-direction:column;gap:7px;align-items:center;margin:0 0 18px!important;letter-spacing:.18em!important;text-shadow:0 2px 14px rgba(0,0,0,.42)}
.v50-kicker strong{font-size:17px;line-height:1.1;letter-spacing:.20em;color:#fff;font-weight:700}
.v50-kicker span{font-size:12px;line-height:1.1;letter-spacing:.30em;color:rgba(255,255,255,.94);font-weight:600}
.v52-hero-locations{display:flex;flex-direction:column;align-items:center;gap:7px;margin:0 auto 26px!important;font-size:13px!important;line-height:1.35;letter-spacing:.16em!important;text-transform:uppercase;color:#fff!important;text-shadow:0 2px 16px rgba(0,0,0,.62)}
.v52-hero-locations strong{font-size:14px;color:#fff;font-weight:700}
.v52-hero-locations span{font-size:12px;color:rgba(255,255,255,.94);font-weight:600}
@media(max-width:520px){.v50-kicker strong{font-size:14px}.v50-kicker span{font-size:10px}.v52-hero-locations strong{font-size:12px}.v52-hero-locations span{font-size:10px}.v52-hero-locations{letter-spacing:.11em!important;gap:5px;margin-bottom:22px!important}}


/* ==========================================================
   V53 — CONSOLIDATION FINALE
   Finition, cohérence de marque, footer, avis, guides et accessibilité
   ========================================================== */
:root{
  --lr53-ivory:#f8f5ef;
  --lr53-linen:#eee5d8;
  --lr53-sand:#e4d7c5;
  --lr53-forest:#274b3e;
  --lr53-forest-deep:#18372e;
  --lr53-champagne:#aa8958;
  --lr53-ink:#29342f;
  --lr53-muted:#6c665d;
  --lr53-line:rgba(41,52,47,.14);
}
body.lr53-ready{background:var(--lr53-ivory)}
body.lr53-ready .ct-footer{display:none!important}
/* Retire les composants de démonstration/recherche-compte inutiles du thème. */
body.lr53-ready .ct-header-search,
body.lr53-ready .ct-account-item,
body.lr53-ready [data-id="search"],
body.lr53-ready [data-id="account"],
body.lr53-ready .ct-search-form,
body.lr53-ready .search-form:not(.request-form),
body.lr53-ready .login-form,
body.lr53-ready .lost-password{display:none!important}

/* Hero : identité plus lisible sans alourdir la photographie. */
.v50-hero-content{padding-top:clamp(120px,14vh,170px);padding-bottom:clamp(78px,10vh,112px)}
.v50-hero-shade{background:linear-gradient(180deg,rgba(7,15,12,.18) 0%,rgba(7,15,12,.32) 48%,rgba(7,15,12,.58) 100%)}
.v50-kicker strong{font-size:clamp(17px,1.45vw,22px);letter-spacing:.17em}
.v50-kicker span{font-size:clamp(11px,.92vw,14px);letter-spacing:.27em}
.v52-hero-locations{margin-bottom:12px!important}
.v53-hero-support{max-width:680px;margin:0 auto 27px!important;font-size:clamp(14px,1.2vw,17px)!important;line-height:1.55;letter-spacing:.025em!important;text-transform:none!important;font-weight:500!important;color:rgba(255,255,255,.96)!important;text-shadow:0 2px 16px rgba(0,0,0,.62)}
.v50-hero .button-row{margin-top:26px}
.v50-hero .lr-btn{min-height:50px;padding:14px 25px;border-radius:999px;font-size:11px;letter-spacing:.115em}

/* Rythme général et micro-interactions sobres. */
.v52-intro{padding-top:clamp(88px,9vw,128px);padding-bottom:clamp(58px,6vw,82px)}
.v52-property,.v52-review-grid blockquote,.v52-direct-card{transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}
@media (hover:hover){
  .v52-property:hover{transform:translateY(-5px);box-shadow:0 28px 72px rgba(39,51,45,.12);border-color:rgba(170,137,88,.32)}
  .v52-review-grid blockquote:hover{transform:translateY(-4px);box-shadow:0 24px 58px rgba(39,51,45,.09)}
}
.v52-property-copy{min-height:230px;display:flex;flex-direction:column;align-items:flex-start}
.v52-property-copy .v52-discover{margin-top:auto}
.v52-score{display:inline-flex;align-items:center;justify-content:center;min-width:58px;min-height:32px;padding:5px 10px;border:1px solid rgba(170,137,88,.45);border-radius:999px;color:var(--lr53-champagne);font-size:12px;font-weight:800;letter-spacing:.08em}
.v52-abritel:before{content:'A';display:grid;place-items:center;width:18px;height:18px;border-radius:50%;margin-right:6px;background:#2d6b62;color:#fff;font-size:10px;font-weight:800}
.v53-reviews-link{justify-content:center;margin-top:34px}

/* Page dédiée aux avis. */
.v53-review-wall{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.v53-review-wall article{padding:38px;background:var(--lr53-ivory);border:1px solid var(--lr53-line);box-shadow:0 16px 48px rgba(39,51,45,.06)}
.v53-review-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}
.v53-review-head span{font-weight:800;color:var(--lr53-champagne);letter-spacing:.08em}
.v53-review-head b{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--lr53-forest)}
.v53-review-wall blockquote{margin:0;font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(27px,2.5vw,38px);line-height:1.28;color:var(--lr53-ink)}
.v53-review-wall article>p{margin:24px 0 0;padding-top:18px;border-top:1px solid var(--lr53-line);font-size:12px;letter-spacing:.11em;text-transform:uppercase;color:var(--lr53-muted)}
.v53-review-transparency{max-width:900px;margin:70px auto 0;padding:48px;text-align:center;background:var(--lr53-linen);border:1px solid var(--lr53-line)}
.v53-review-transparency h2{font-size:clamp(38px,5vw,62px)}

/* Guides du Carnet de Voyage. */
.v53-guides{padding:100px 24px;background:var(--lr53-linen)}
.v53-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:48px}
.v53-guide-grid a{display:flex;flex-direction:column;min-height:270px;padding:34px;background:var(--lr53-ivory);border:1px solid var(--lr53-line);text-decoration:none!important;box-shadow:0 14px 38px rgba(39,51,45,.055);transition:.3s ease}
.v53-guide-grid span{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--lr53-champagne);font-weight:750}
.v53-guide-grid strong{margin:20px 0;font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(28px,2.4vw,38px);line-height:1.05;color:var(--lr53-ink);font-weight:600}
.v53-guide-grid em{margin-top:auto;font-style:normal;font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--lr53-forest);font-weight:800}
@media (hover:hover){.v53-guide-grid a:hover{transform:translateY(-5px);box-shadow:0 24px 58px rgba(39,51,45,.10);border-color:rgba(170,137,88,.36)}}
.v53-guide-page .travel-hero{position:relative;min-height:70vh;display:flex;align-items:flex-end;overflow:hidden;background:var(--lr53-forest-deep)}
.v53-guide-page .travel-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.v53-guide-page .travel-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.60))}
.v53-guide-page .travel-hero-overlay{position:relative;z-index:2;width:min(1120px,calc(100% - 48px));margin:0 auto;padding:0 0 76px;color:#fff}
.v53-guide-page .travel-hero-overlay h1{max-width:950px;font-size:clamp(3.1rem,7vw,6.5rem);line-height:.96;color:#fff;margin:.15em 0 .2em}
.v53-guide-page .travel-hero-overlay p:last-child{max-width:720px;font-size:clamp(1.05rem,1.7vw,1.35rem)}
.v53-updated{font-size:11px!important;letter-spacing:.13em;text-transform:uppercase;color:var(--lr53-champagne)!important;font-weight:750}
.v53-guide-links{display:grid;gap:10px;margin-top:42px;padding-top:28px;border-top:1px solid var(--lr53-line)}
.v53-guide-links a{font-weight:700;color:var(--lr53-forest)!important;text-decoration:underline;text-underline-offset:5px}

/* Footer premium commun à tout le site. */
.lr53-footer{background:var(--lr53-forest-deep);color:#f7f2e9;padding:82px 28px 28px}
.lr53-footer-inner{width:min(1240px,100%);margin:0 auto}
.lr53-footer-grid{display:grid;grid-template-columns:1.25fr repeat(3,minmax(0,1fr));gap:50px;padding-bottom:55px}
.lr53-footer-brand strong{display:block;font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(32px,3.3vw,50px);line-height:1;color:#fff;font-weight:600}
.lr53-footer-brand span{display:block;margin-top:9px;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:#d7c6aa}
.lr53-footer-brand p{max-width:420px;margin:24px 0 0;line-height:1.75;color:rgba(255,255,255,.72)}
.lr53-footer h2{margin:0 0 20px;font-family:Montserrat,sans-serif;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#d7c6aa}
.lr53-footer nav,.lr53-footer-contact{display:grid;gap:12px}
.lr53-footer a{color:rgba(255,255,255,.86)!important;text-decoration:none!important;font-size:14px}
.lr53-footer a:hover{color:#fff!important;text-decoration:underline!important;text-underline-offset:5px}
.lr53-footer-bottom{display:flex;justify-content:space-between;gap:24px;padding-top:24px;border-top:1px solid rgba(255,255,255,.14);font-size:12px;color:rgba(255,255,255,.58)}

@media(max-width:900px){
  .v53-review-wall,.v53-guide-grid{grid-template-columns:1fr}
  .lr53-footer-grid{grid-template-columns:1fr 1fr}
  .v52-property-copy{min-height:0}
}
@media(max-width:620px){
  .v53-hero-support{font-size:14px!important;max-width:330px}
  .v50-hero .button-row{width:min(360px,100%);margin-left:auto;margin-right:auto}
  .v50-hero .lr-btn{width:100%}
  .v53-review-wall article{padding:28px 24px}
  .v53-review-transparency{padding:35px 24px}
  .v53-guides{padding:76px 18px}
  .v53-guide-grid a{min-height:230px;padding:28px 24px}
  .v53-guide-page .travel-hero{min-height:62vh}
  .v53-guide-page .travel-hero-overlay{width:calc(100% - 34px);padding-bottom:48px}
  .lr53-footer{padding:65px 22px 25px}
  .lr53-footer-grid{grid-template-columns:1fr;gap:34px;padding-bottom:42px}
  .lr53-footer-bottom{flex-direction:column;gap:8px}
}
@media(prefers-reduced-motion:reduce){.v52-property,.v52-review-grid blockquote,.v53-guide-grid a{transition:none!important;transform:none!important}}


/* ==========================================================
   V54 — ÉMOTION & COHÉRENCE
   Descriptions éditoriales et parcours d’action harmonisé
   ========================================================== */
.v54-promise{
  margin:12px 0 8px!important;
  max-width:720px;
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:clamp(27px,2.55vw,39px)!important;
  line-height:1.08!important;
  font-weight:600!important;
  color:var(--lr53-forest-deep,#18372e)!important;
}
.v54-description{
  max-width:760px;
  margin:0 0 20px!important;
  font-size:15px!important;
  line-height:1.75!important;
  color:var(--lr53-muted,#6c665d)!important;
}
.v52-property-copy .v52-facts{
  margin-top:0!important;
  line-height:1.65!important;
}
.v52-property-copy{min-height:340px}
.v52-property-row .v52-property-copy{min-height:390px}
.v52-discover,.lr-btn{
  text-decoration:none!important;
}
@media(max-width:900px){
  .v52-property-copy,.v52-property-row .v52-property-copy{min-height:0}
}
@media(max-width:620px){
  .v54-promise{font-size:29px!important}
  .v54-description{font-size:14px!important;line-height:1.7!important}
  .v52-property-copy{padding-top:34px!important;padding-bottom:34px!important}
}


/* ==========================================================
   V55 — HERO SIGNATURE DORÉE
   - Signature exacte issue du logo fourni par les propriétaires
   - Entête transparent sur l’accueil, sans logo en doublon
   - Menu hamburger conservé et rendu champagne
   - Contraste photographique affiné, sans assombrir excessivement
   ========================================================== */

/* Le header reste nécessaire pour la navigation. Sur l'accueil il devient
   transparent et se superpose au hero : plus de barre blanche ni de logo doublé. */
body.home #header,
body.home header#header,
body.home .ct-header,
body.home .site-header,
body.home header.site-header,
body.home #masthead,
body.home .main-header,
body.home .site-header-wrapper,
body.home .elementor-location-header,
body.home .wp-site-blocks > header{
  position:absolute!important;
  top:0!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  z-index:10020!important;
  background:transparent!important;
  background-color:transparent!important;
  border:0!important;
  box-shadow:none!important;
  min-height:0!important;
  overflow:visible!important;
}
body.home #header [data-row],
body.home #header [data-row*="middle"],
body.home .ct-header [data-row],
body.home .ct-header [data-row*="middle"],
body.home .site-header-wrapper{
  background:transparent!important;
  background-color:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body.home #header .ct-container,
body.home .ct-header .ct-container,
body.home .site-header .ct-container,
body.home .site-header > .container,
body.home header.site-header > .container{
  min-height:70px!important;
  padding-top:12px!important;
  padding-bottom:12px!important;
}
/* Le logo reste disponible sur les pages intérieures, mais pas sur l'accueil. */
body.home #header [data-id="logo"],
body.home #header .site-branding,
body.home #header .site-logo-container,
body.home #header .custom-logo-link,
body.home #header .site-logo,
body.home .ct-header [data-id="logo"],
body.home .ct-header .site-branding,
body.home .site-header .site-branding,
body.home .site-header .site-logo-container,
body.home .site-header .custom-logo-link{
  display:none!important;
}
/* Menu visible et élégant. */
body.home #header .ct-header-trigger,
body.home #header .menu-toggle,
body.home #header .mobile-menu-toggle,
body.home #header .hamburger,
body.home .ct-header .ct-header-trigger,
body.home .site-header .menu-toggle,
body.home .site-header .mobile-menu-toggle,
body.home button[aria-label*="menu" i]{
  margin-left:auto!important;
  color:#e7bd68!important;
  border-color:transparent!important;
  background:transparent!important;
  box-shadow:none!important;
  z-index:10030!important;
}
body.home #header .ct-header-trigger svg,
body.home #header .menu-toggle svg,
body.home #header .mobile-menu-toggle svg,
body.home .ct-header .ct-header-trigger svg,
body.home button[aria-label*="menu" i] svg{
  fill:#e7bd68!important;
  color:#e7bd68!important;
  stroke:#e7bd68!important;
}
/* Navigation ordinateur en surimpression, lisible mais discrète. */
body.home #header .menu > li > a,
body.home #header nav a,
body.home .ct-header .menu > li > a,
body.home .ct-header nav a{
  color:#fff!important;
  text-shadow:0 2px 14px rgba(0,0,0,.55)!important;
}
body.home #header .menu > li > a:hover,
body.home #header nav a:hover,
body.home .ct-header .menu > li > a:hover{
  color:#e7bd68!important;
}

/* Photographie : légèrement plus lumineuse dans les détails, avec un bas sombre
   destiné à protéger la lisibilité du titre et des boutons. */
.v50-hero{
  min-height:min(94vh,940px)!important;
  background:#07120f!important;
}
.v50-hero>img{
  object-position:center center!important;
  filter:brightness(.93) saturate(.91) contrast(1.035)!important;
  transform:scale(1.008);
}
.v50-hero-shade{
  background:linear-gradient(180deg,
    rgba(5,12,18,.07) 0%,
    rgba(5,12,18,.12) 30%,
    rgba(5,12,18,.30) 55%,
    rgba(4,10,9,.68) 78%,
    rgba(3,8,7,.88) 100%)!important;
}
.v50-hero-content{
  width:min(980px,calc(100% - 40px))!important;
  padding-top:clamp(105px,13vh,150px)!important;
  padding-bottom:clamp(76px,9vh,105px)!important;
}
.v55-wordmark-wrap{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  margin:0 auto 28px;
}
.v55-wordmark{
  display:block!important;
  width:min(650px,76vw)!important;
  max-width:100%!important;
  height:auto!important;
  object-fit:contain!important;
  filter:drop-shadow(0 3px 15px rgba(0,0,0,.40));
}
.v50-hero-content h1{
  margin:20px auto 24px!important;
  max-width:900px!important;
  color:#fff!important;
  text-shadow:0 3px 24px rgba(0,0,0,.38)!important;
}
.v52-hero-locations strong,
.v52-hero-locations span{
  color:#e8bd67!important;
  text-shadow:0 2px 16px rgba(0,0,0,.72)!important;
}
.v53-hero-support{
  text-shadow:0 2px 18px rgba(0,0,0,.78)!important;
}
.v50-hero .lr-btn,
.v50-hero .lr-btn.secondary{
  background:#075247!important;
  border-color:#075247!important;
  color:#fff!important;
  box-shadow:0 13px 30px rgba(0,0,0,.25)!important;
}
.v50-hero .lr-btn:hover,
.v50-hero .lr-btn.secondary:hover{
  background:#b9914d!important;
  border-color:#b9914d!important;
  color:#fff!important;
}

@media(max-width:899px){
  body.home #header .ct-container,
  body.home .ct-header .ct-container,
  body.home .site-header .ct-container{
    min-height:68px!important;
    padding:10px 16px!important;
  }
  .v50-hero{
    min-height:1120px!important;
  }
  .v50-hero>img{
    object-position:center center!important;
  }
  .v50-hero-content{
    width:min(100% - 30px,760px)!important;
    padding-top:135px!important;
    padding-bottom:62px!important;
  }
  .v55-wordmark-wrap{
    margin-bottom:26px!important;
  }
  .v55-wordmark{
    width:min(600px,91vw)!important;
  }
  .v50-hero-content h1{
    font-size:clamp(48px,11.5vw,70px)!important;
    line-height:1.02!important;
    margin-top:20px!important;
  }
  .v52-hero-locations{
    margin-top:4px!important;
  }
}
@media(max-width:520px){
  body.home #header,
  body.home header#header,
  body.home .ct-header,
  body.home .site-header,
  body.home header.site-header,
  body.home #masthead,
  body.home .main-header,
  body.home .site-header-wrapper{
    padding:0!important;
  }
  body.home #header .ct-container,
  body.home .ct-header .ct-container,
  body.home .site-header .ct-container{
    min-height:64px!important;
    padding:8px 14px!important;
  }
  .v50-hero{
    min-height:1125px!important;
  }
  .v50-hero-content{
    width:calc(100% - 28px)!important;
    padding-top:130px!important;
    padding-bottom:48px!important;
  }
  .v55-wordmark-wrap{
    margin-bottom:22px!important;
  }
  .v55-wordmark{
    width:min(520px,94vw)!important;
  }
  .v50-hero-content h1{
    font-size:clamp(47px,12.7vw,61px)!important;
    line-height:1.015!important;
    margin:18px auto 24px!important;
  }
  .v52-hero-locations{
    gap:7px!important;
    margin-bottom:22px!important;
  }
  .v52-hero-locations strong{
    font-size:12px!important;
    line-height:1.45!important;
  }
  .v52-hero-locations span{
    font-size:11px!important;
  }
  .v53-hero-support{
    max-width:340px!important;
    font-size:15px!important;
    line-height:1.6!important;
    margin-bottom:27px!important;
  }
  .v50-hero .button-row{
    width:100%!important;
    gap:14px!important;
    margin-top:22px!important;
  }
  .v50-hero .lr-btn{
    min-height:66px!important;
    padding:15px 16px!important;
    font-size:11px!important;
    line-height:1.3!important;
  }
}

/* V55.1 — placement final validé : signature au-dessus du soleil,
   contenu principal dans la partie basse du panorama. */
.v50-hero-content{
  height:100%!important;
  min-height:inherit!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-end!important;
  padding-top:0!important;
  padding-bottom:clamp(70px,8vh,96px)!important;
}
.v55-wordmark-wrap{
  position:absolute!important;
  top:12%!important;
  left:0!important;
  right:0!important;
  margin:0 auto!important;
  pointer-events:none;
}
@media(max-width:899px){
  .v50-hero-content{
    padding-top:0!important;
    padding-bottom:52px!important;
  }
  .v55-wordmark-wrap{top:19%!important}
}
@media(max-width:520px){
  .v50-hero-content{
    padding-top:0!important;
    padding-bottom:46px!important;
  }
  .v55-wordmark-wrap{top:18%!important}
}


/* ==========================================================
   V55.1 — HERO SIGNATURE SANS MENU
   - Aucun header ni menu sur la page d'accueil
   - Suppression complète de toute bande blanche supérieure
   - Hero V55 conservé avec la signature dorée
   ========================================================== */

/* On masque complètement l'en-tête sur l'accueil uniquement. */
body.home #header,
body.home header#header,
body.home .ct-header,
body.home .site-header,
body.home header.site-header,
body.home #masthead,
body.home .main-header,
body.home .site-header-wrapper,
body.home .elementor-location-header,
body.home .wp-site-blocks > header{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  box-shadow:none!important;
  overflow:hidden!important;
}

/* Évite tout retrait ou marge haute laissé par le thème. */
body.home,
body.home .site,
body.home .site-content,
body.home .content-area,
body.home .entry-content,
body.home main,
body.home .wp-site-blocks{
  margin-top:0!important;
  padding-top:0!important;
  border-top:0!important;
}
body.home.admin-bar .v50-hero{
  min-height:calc(min(94vh,940px) + 0px)!important;
}
.v50-hero{
  margin-top:0!important;
}

/* Hero légèrement remonté maintenant que le menu a disparu. */
.v50-hero-content{
  padding-top:clamp(88px,10.5vh,122px)!important;
}
@media(max-width:899px){
  .v50-hero-content{
    padding-top:112px!important;
  }
}
@media(max-width:520px){
  .v50-hero-content{
    padding-top:106px!important;
  }
}


/* ==========================================================
   V55.2 — HERO MOBILE SIGNATURE
   Correction ciblée, sans modifier le rendu ordinateur validé.
   ========================================================== */

/* Suppression renforcée des espaces blancs créés par le thème sur l'accueil. */
html:has(body.home),
body.home,
body.home #page,
body.home .site,
body.home .site-container,
body.home .site-content,
body.home #content,
body.home #primary,
body.home #main,
body.home main,
body.home article,
body.home .entry-content,
body.home .ct-container-full,
body.home .content-area{
  margin:0!important;
  padding-top:0!important;
  border-top:0!important;
  background:#07120f!important;
}
body.home #page:before,
body.home #page:after,
body.home .site:before,
body.home .site:after,
body.home #content:before,
body.home #content:after,
body.home main:before,
body.home main:after{
  display:none!important;
  content:none!important;
}
body.home .v50-hero:first-child{
  margin-top:0!important;
}

/* Le desktop reste strictement celui de la V55.1. */
@media(max-width:899px){
  .v50-hero{
    min-height:1040px!important;
    height:auto!important;
    background:#07120f!important;
    overflow:hidden!important;
  }
  .v50-hero>img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center 43%!important;
    filter:brightness(.98) saturate(.94) contrast(1.02)!important;
    transform:scale(1.002)!important;
  }
  /* Dégradé beaucoup plus léger : le paysage reste présent jusqu'aux boutons. */
  .v50-hero-shade{
    background:linear-gradient(180deg,
      rgba(4,10,15,.03) 0%,
      rgba(4,10,15,.06) 30%,
      rgba(4,10,15,.13) 48%,
      rgba(3,9,9,.30) 64%,
      rgba(3,9,8,.56) 82%,
      rgba(3,8,7,.72) 100%)!important;
  }
  .v50-hero-content{
    min-height:1040px!important;
    height:1040px!important;
    justify-content:flex-end!important;
    padding:0 15px 44px!important;
  }
  .v55-wordmark-wrap{
    top:8.5%!important;
  }
  .v55-wordmark{
    width:min(520px,91vw)!important;
  }
  .v50-hero-content h1{
    font-size:clamp(46px,11.8vw,66px)!important;
    line-height:1.015!important;
    max-width:690px!important;
    margin:0 auto 22px!important;
  }
  .v52-hero-locations{
    margin-bottom:16px!important;
  }
  .v53-hero-support{
    margin-bottom:22px!important;
  }
  .v50-hero .button-row{
    margin-top:14px!important;
  }
}

@media(max-width:520px){
  .v50-hero{
    min-height:970px!important;
  }
  .v50-hero>img{
    object-position:center 40%!important;
  }
  .v50-hero-content{
    min-height:970px!important;
    height:970px!important;
    padding:0 14px 34px!important;
  }
  .v55-wordmark-wrap{
    top:7.5%!important;
  }
  .v55-wordmark{
    width:min(470px,92vw)!important;
  }
  .v50-hero-content h1{
    font-size:clamp(43px,12vw,58px)!important;
    line-height:1.02!important;
    margin-bottom:18px!important;
  }
  .v52-hero-locations{
    gap:5px!important;
    margin-bottom:14px!important;
  }
  .v53-hero-support{
    font-size:14px!important;
    line-height:1.48!important;
    margin-bottom:18px!important;
  }
  .v50-hero .button-row{
    gap:11px!important;
    margin-top:12px!important;
  }
  .v50-hero .lr-btn{
    min-height:59px!important;
    padding:13px 12px!important;
  }
}

/* Safari mobile : évite un espace blanc lié aux marges de blocs. */
@supports (height:100svh){
  @media(max-width:520px){
    .v50-hero,
    .v50-hero-content{
      min-height:max(930px,100svh)!important;
      height:max(930px,100svh)!important;
    }
  }
}

/* V56.1 — Appartement Premium Arc 1950 */
.v56-arc .v56-arc-facts{display:flex;justify-content:center;align-items:center;gap:10px 14px;flex-wrap:wrap;margin:22px auto 0!important;max-width:900px;color:#4f473e}.v56-arc .v56-arc-facts strong{font-size:13px;letter-spacing:.05em;text-transform:uppercase}.v56-arc .v56-arc-facts span{color:var(--gold)}.v56-arc .page-hero-image img{object-position:center 58%}.v56-arc .v56-arc-gallery img{filter:saturate(.96) contrast(1.01)}.v56-arc .v56-sleeping{grid-template-columns:repeat(3,1fr)}
@media(max-width:767px){.v56-arc .v56-arc-facts{gap:8px 10px}.v56-arc .v56-arc-facts strong{font-size:11px}.v56-arc .v56-sleeping{grid-template-columns:1fr}.v56-arc .page-hero-image img{height:390px;object-position:center center}}


/* ==========================================================
   V57 — ARC 1950 & LES JARDINS DE LA CASCADE
   ========================================================== */
.v57-arc .page-hero-copy{max-width:980px}.v57-arc .page-hero-copy>p:not(.eyebrow):not(.v56-arc-facts){max-width:820px;margin-left:auto;margin-right:auto}.v57-arc .button-row{flex-wrap:wrap}.v57-intro-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:54px;align-items:start}.v57-keyfacts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.v57-keyfacts>div{background:#fff;border:1px solid rgba(153,125,75,.22);border-radius:18px;padding:20px;box-shadow:0 14px 34px rgba(29,35,31,.06)}.v57-keyfacts strong{display:block;font-family:"Cormorant Garamond",serif;font-size:29px;line-height:1;color:var(--green);margin-bottom:7px}.v57-keyfacts span{font-size:12px;line-height:1.45;letter-spacing:.055em;text-transform:uppercase;color:#6f675d}.v57-gallery-note{max-width:760px;margin:0 auto 34px}.v57-official-feature{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:56px;align-items:center}.v57-official-feature.reverse{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)}.v57-official-feature.reverse figure{order:2}.v57-official-feature figure{margin:0}.v57-official-feature figure img{width:100%;height:500px;object-fit:cover;border-radius:28px;box-shadow:0 24px 60px rgba(26,36,30,.13)}.v57-official-feature figcaption,.v57-guide-figure figcaption,.v57-carnet-arc .travel-image small{display:block;margin-top:9px;font-size:11px;line-height:1.45;color:#766f66;text-align:right}.v57-amenities{display:flex;flex-wrap:wrap;gap:9px;margin-top:26px}.v57-amenities span{padding:10px 13px;border-radius:999px;background:#f3efe7;border:1px solid rgba(153,125,75,.22);font-size:12px;font-weight:700;color:#3f473f}.v57-clarity{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:42px}.v57-clarity>div{padding:26px;border-radius:22px;background:#fff;border:1px solid rgba(153,125,75,.18)}.v57-clarity h3,.v57-equipment-grid h3{margin-top:0;color:var(--green)}.v57-equipment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:34px}.v57-equipment-grid article{padding:28px;border-radius:22px;background:#f8f5ef;border:1px solid rgba(153,125,75,.18)}.v57-village{background:linear-gradient(180deg,#f8f4ec 0%,#fff 100%)}.v57-inline-link{font-weight:800;color:var(--green)!important;text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:5px}.v57-carnet-arc .travel-image{position:relative}.v57-carnet-arc .travel-image small{padding:0 12px 8px}.v57-arc-guide .travel-hero img{object-position:center 48%}.v57-guide-figure{margin:42px 0}.v57-guide-figure img{width:100%;max-height:520px;object-fit:cover;border-radius:24px;box-shadow:0 18px 48px rgba(26,36,30,.12)}.v57-timeline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:32px 0 44px}.v57-timeline>div{padding:20px 15px;border-top:3px solid var(--gold);background:#f7f3eb;border-radius:0 0 16px 16px}.v57-timeline strong{display:block;color:var(--green);font-size:15px;margin-bottom:8px}.v57-timeline span{font-size:13px;line-height:1.45}.v57-guide-callout{margin:34px 0;padding:26px 28px;border-left:4px solid var(--gold);background:#f6f1e8;border-radius:0 18px 18px 0}.v57-guide-callout strong{font-size:17px;color:var(--green)}.v57-guide-callout p{margin:8px 0 0!important}
@media(max-width:900px){.v57-intro-grid,.v57-official-feature,.v57-official-feature.reverse{grid-template-columns:1fr;gap:34px}.v57-official-feature.reverse figure{order:0}.v57-official-feature figure img{height:420px}.v57-equipment-grid{grid-template-columns:1fr}.v57-timeline{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.v57-keyfacts,.v57-clarity,.v57-timeline{grid-template-columns:1fr}.v57-keyfacts>div{padding:17px}.v57-keyfacts strong{font-size:25px}.v57-official-feature figure img{height:290px;border-radius:20px}.v57-clarity{margin-top:28px}.v57-arc .page-hero-copy .button-row .lr-btn{width:100%}.v57-guide-figure{margin:30px 0}.v57-guide-figure img{border-radius:18px}.v57-timeline>div{padding:18px}.v57-carnet-arc .travel-image small{text-align:left}}


/* V60.3 — Page Kristopolo : trois formules illustrées, sans grille tarifaire */
.boat-formula-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:38px}
.boat-formula-card{background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 14px 38px rgba(24,39,31,.09);height:100%}
.boat-formula-card img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.boat-formula-card .body{padding:25px 24px 28px}
.boat-formula-card h3{margin:.25rem 0 .8rem}
.boat-formula-card p:last-child{margin-bottom:0}
.boat-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 22px;padding:0;margin:24px 0 0;list-style:none}
.boat-features li{position:relative;padding-left:19px}
.boat-features li:before{content:'•';position:absolute;left:0;color:#9b7a38;font-weight:700}
.boat-photo-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:34px 0 26px}
.boat-photo-strip figure{margin:0;position:relative;border-radius:20px;overflow:hidden;min-height:300px}
.boat-photo-strip img{width:100%;height:100%;min-height:300px;object-fit:cover;display:block}
.boat-photo-strip figcaption{position:absolute;left:18px;right:18px;bottom:16px;padding:11px 14px;border-radius:999px;background:rgba(18,32,25,.76);color:#fff;text-align:center;font-weight:600;backdrop-filter:blur(6px)}
@media(max-width:900px){.boat-formula-grid,.boat-photo-strip{grid-template-columns:1fr}.boat-formula-card img{aspect-ratio:16/10}.boat-photo-strip figure,.boat-photo-strip img{min-height:240px}.boat-features{grid-template-columns:1fr}}

/* ==========================================================
   V63 — AMBIANCE PREMIUM : IVOIRE & VERT TRÈS PÂLE
   Contenus, SEO, structure et responsive inchangés.
   ========================================================== */
:root{
  --lr63-ivory:#f8f5ee;
  --lr63-green-mist:#eef4ef;
  --lr63-green-mist-soft:#f3f7f3;
  --lr63-paper:#fffdf9;
  --lr63-line:rgba(43,76,61,.14);
  --lr63-shadow:rgba(27,48,38,.075);
}
body.lr53-ready{background:var(--lr63-ivory)!important}
.lr28{background:var(--lr63-ivory);--cream:var(--lr63-green-mist);--paper:var(--lr63-paper);--line:var(--lr63-line)}

/* Accueil : alternance douce, sans toucher aux blocs photographiques. */
.lr28.v52-home{background:var(--lr63-ivory)!important}
.v52-intro{background:linear-gradient(180deg,var(--lr63-ivory) 0%,var(--lr63-green-mist) 100%)!important}
.v52-collection{background:var(--lr63-green-mist)!important}
.v52-reviews{background:var(--lr63-ivory)!important}
.v52-direct{background:var(--lr63-green-mist)!important}
.v52-home .v50-manifesto{background:var(--lr63-green-mist)!important}
.v52-home .v50-philosophy{background:var(--lr63-ivory)!important}
.v52-home .v50-cinema{background:var(--lr63-green-mist-soft)!important}
.v52-home .v50-journal{background:var(--lr63-green-mist)!important}

/* Pages intérieures : fond général ivoire et sections secondaires vert brume. */
.lr28 .section{background:var(--lr63-ivory)}
.lr28 .section.soft,.lr28 .soft{background:var(--lr63-green-mist)!important}
.lr28 .section.paper,.lr28 .paper{background:var(--lr63-paper)!important}
.lr28 .page-hero{background:var(--lr63-green-mist)!important}
.lr28 .lr-nav-section{background:var(--lr63-ivory)!important}
.v53-guides,.v53-review-transparency,.lr521-facts{background:var(--lr63-green-mist)!important}
.v57-village{background:linear-gradient(180deg,var(--lr63-green-mist) 0%,var(--lr63-ivory) 100%)!important}

/* Cartes : blanc chaud, ombres plus légères et bordures végétales très discrètes. */
.v52-property,.v52-property-copy,.v52-review-grid blockquote,.v52-direct-card,
.lr28 .property-card,.lr28 .fact,.lr28 .story .copy,.lr28 .calendar-box,
.lr28 .contact-card,.lr28 .social-block,.lr28 .check,.lr28 .no-photo-panel,
.v53-review-wall article,.v53-guide-grid a,.v57-keyfacts>div,.v57-clarity>div,
.boat-formula-card{background:var(--lr63-paper)!important;border-color:var(--lr63-line)!important}
.v52-property,.v52-review-grid blockquote,.v52-direct-card,.lr28 .property-card,
.lr28 .story .copy,.lr28 .contact-card,.lr28 .social-block,.v53-review-wall article,
.v53-guide-grid a,.boat-formula-card{box-shadow:0 16px 46px var(--lr63-shadow)!important}

/* Détails : boutons inchangés dans leur identité, mais survol plus feutré. */
.lr28 .lr-btn,.lr28 .green-nav a,.v52-discover{transition:transform .25s ease,box-shadow .25s ease,background-color .25s ease,border-color .25s ease}
@media (hover:hover){
  .lr28 .lr-btn:hover,.lr28 .green-nav a:hover,.v52-discover:hover{transform:translateY(-2px);box-shadow:0 16px 32px rgba(22,67,50,.16)}
}

/* Mobile : conserver un contraste franc et éviter tout effet de bandes. */
@media(max-width:767px){
  .v52-intro{background:var(--lr63-ivory)!important}
  .v52-collection,.v52-direct,.v52-home .v50-manifesto,.v52-home .v50-cinema,.v52-home .v50-journal{background:var(--lr63-green-mist)!important}
}

/* V64 — fiches d'identité harmonisées des trois résidences */
.v64-property-identity .v57-intro-grid>div:first-child{position:sticky;top:32px}
.v64-property-identity .v57-keyfacts>div,.v57-arc .v57-keyfacts>div{min-height:128px;display:flex;flex-direction:column;justify-content:center;background:rgba(255,253,249,.96);border-color:rgba(38,94,76,.16);box-shadow:0 16px 38px rgba(28,50,41,.07);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.v64-property-identity .v57-keyfacts>div:hover,.v57-arc .v57-keyfacts>div:hover{transform:translateY(-3px);box-shadow:0 21px 46px rgba(28,50,41,.11);border-color:rgba(183,154,99,.38)}
.v64-property-identity .v57-keyfacts strong,.v57-arc .v57-keyfacts strong{font-size:31px;letter-spacing:-.01em}
.v64-property-identity .v57-keyfacts span,.v57-arc .v57-keyfacts span{max-width:240px}
@media(max-width:900px){.v64-property-identity .v57-intro-grid>div:first-child{position:static}.v64-property-identity .v57-keyfacts>div,.v57-arc .v57-keyfacts>div{min-height:112px}}
@media(max-width:620px){.v64-property-identity .v57-keyfacts>div,.v57-arc .v57-keyfacts>div{min-height:0;padding:24px 28px;border-radius:26px}.v64-property-identity .v57-keyfacts strong,.v57-arc .v57-keyfacts strong{font-size:31px}.v64-property-identity .v57-keyfacts span,.v57-arc .v57-keyfacts span{font-size:13px;letter-spacing:.08em}}

/* V67 — page Avis voyageurs */
.v53-review-source-note{max-width:820px;margin:34px auto 0;text-align:center;font-size:13px;line-height:1.7;color:#756d64}
.v53-review-platforms{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin:24px auto 42px}
.v53-review-platforms a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 20px;border:1px solid #d9d0c2;border-radius:999px;background:#fbf8f3;color:#41433f;text-decoration:none;font-size:12px;font-weight:600;letter-spacing:.05em;transition:transform .2s ease,box-shadow .2s ease}
.v53-review-platforms a:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(45,50,46,.09)}
@media(max-width:520px){.v53-review-platforms{display:grid}.v53-review-platforms a{width:100%}}


/* V67.1 — Avis voyageurs premium, sans sortie vers les plateformes */
.v671-reviews-page .v671-review-property{padding-top:78px;padding-bottom:78px}
.v671-review-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);gap:54px;align-items:center;margin-bottom:38px}
.v671-review-intro-reverse{grid-template-columns:minmax(320px,.8fr) minmax(0,1fr)}
.v671-review-intro-reverse>div{order:2}.v671-review-intro-reverse>img{order:1}
.v671-review-intro h2{margin:4px 0 16px;font-family:'Cormorant Garamond',serif;font-size:clamp(38px,5vw,62px);line-height:1;color:#2c463b}
.v671-review-intro p:not(.eyebrow){max-width:660px;font-size:17px;line-height:1.8;color:#625f59}
.v671-review-intro img{width:100%;height:310px;object-fit:cover;border-radius:34px;box-shadow:0 24px 58px rgba(31,53,44,.14)}
.v671-review-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:1120px;margin:0 auto}
.v671-review-grid article{min-height:250px;display:flex;flex-direction:column;justify-content:space-between}
.v671-review-grid blockquote{font-size:18px;line-height:1.7}
.v671-review-actions{justify-content:center;margin-top:36px}
.v671-new-property-card{max-width:820px;margin:0 auto;padding:28px 34px;border:1px solid rgba(183,154,99,.32);border-radius:28px;background:rgba(255,253,249,.95);text-align:center;box-shadow:0 16px 38px rgba(28,50,41,.07)}
.v671-new-property-card p{margin:0;font-size:17px;line-height:1.8;color:#625f59}
.v671-review-final{text-align:center;padding-top:70px;padding-bottom:90px}
.v671-review-final .v53-review-source-note{font-size:14px;max-width:900px}
.v671-review-final .button-row{justify-content:center;margin-top:28px}
@media(max-width:900px){.v671-review-intro,.v671-review-intro-reverse{grid-template-columns:1fr;gap:28px}.v671-review-intro-reverse>div,.v671-review-intro-reverse>img{order:initial}.v671-review-grid{grid-template-columns:1fr}.v671-review-intro img{height:280px}}
@media(max-width:620px){.v671-reviews-page .v671-review-property{padding-top:54px;padding-bottom:54px}.v671-review-intro img{height:220px;border-radius:24px}.v671-review-intro h2{font-size:40px}.v671-review-grid blockquote{font-size:16px}.v671-new-property-card{padding:24px 22px}.v671-review-actions{display:grid}.v671-review-actions a{width:100%}}


/* V68 — Page Avis voyageurs enrichie */
.v68-reviews-page .page-hero-copy p{max-width:640px}
.v68-review-overview{padding-top:76px;padding-bottom:76px}
.v68-scoreboard{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:34px 0 20px}
.v68-score-card{background:#fff;border:1px solid rgba(29,69,59,.13);border-radius:22px;padding:28px 22px;text-align:center;box-shadow:0 16px 40px rgba(20,50,42,.07)}
.v68-score-card strong{display:block;font-family:Georgia,serif;font-size:34px;color:#1f5145;line-height:1.05;margin-bottom:8px}
.v68-score-card span{display:block;font-weight:700;color:#253b35;margin-bottom:7px}
.v68-score-card small{display:block;color:#6f7e78;line-height:1.45}
.v68-data-note,.v68-footnote{font-size:13px;color:#718079;text-align:center;max-width:850px;margin:18px auto 0}
.v68-review-property{padding:82px 0}
.v68-property-head{display:grid;grid-template-columns:1.05fr .95fr;gap:52px;align-items:center;margin-bottom:32px}
.v68-property-head-reverse>div{order:2}.v68-property-head-reverse>img{order:1}
.v68-property-head img{width:100%;height:330px;object-fit:cover;border-radius:26px;box-shadow:0 20px 55px rgba(20,50,42,.12)}
.v68-theme-row{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0 26px}
.v68-theme-row span{background:#edf3ef;border:1px solid rgba(31,81,69,.13);color:#1f5145;border-radius:999px;padding:9px 14px;font-size:13px;font-weight:700}
.v68-rating-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:0 0 30px}
.v68-rating-grid div{background:#fff;border:1px solid rgba(29,69,59,.11);border-radius:16px;padding:16px 10px;text-align:center}
.v68-rating-grid b{display:block;font-family:Georgia,serif;font-size:24px;color:#b08a3f}.v68-rating-grid span{font-size:12px;color:#5d6d67}
.v68-review-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.v68-review-grid article{height:100%}
.v68-insight-card{background:linear-gradient(145deg,#173f35,#235f50)!important;color:#fff!important;border:none!important}
.v68-insight-card .eyebrow,.v68-insight-card h3,.v68-insight-card p{color:#fff!important}.v68-insight-card h3{font-family:Georgia,serif;font-size:25px;margin:8px 0 12px}
.v68-review-actions{margin-top:30px}
.v68-new-property{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:25px 0 12px}
.v68-new-property div{background:#fff;border:1px solid rgba(29,69,59,.11);border-radius:18px;padding:22px;text-align:center}.v68-new-property strong{display:block;color:#1f5145;font-family:Georgia,serif;font-size:22px;margin-bottom:7px}.v68-new-property span{font-size:13px;color:#68766f}
.v68-review-final{text-align:center;padding-bottom:90px}
@media(max-width:900px){.v68-scoreboard{grid-template-columns:repeat(2,1fr)}.v68-property-head{grid-template-columns:1fr;gap:24px}.v68-property-head-reverse>div,.v68-property-head-reverse>img{order:initial}.v68-rating-grid{grid-template-columns:repeat(3,1fr)}.v68-new-property{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.v68-scoreboard,.v68-review-grid,.v68-new-property{grid-template-columns:1fr}.v68-rating-grid{grid-template-columns:repeat(2,1fr)}.v68-property-head img{height:240px}.v68-review-property{padding:58px 0}}


/* V69 — Avis plus denses, lisibles et finitions desktop/mobile */
.v69-reviews-page .v68-review-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.v69-reviews-page .v53-review-wall article{padding:25px 23px;min-height:0;background:#fffdf9!important;color:#29342f!important;border:1px solid rgba(29,69,59,.14)!important;box-shadow:0 12px 32px rgba(20,50,42,.055)}
.v69-reviews-page .v53-review-wall blockquote{font-size:19px;line-height:1.48;color:#2f3531!important}
.v69-reviews-page .v53-review-wall article>p{margin-top:18px;padding-top:14px;color:#6b746f!important}
.v69-reviews-page .v53-review-head{margin-bottom:16px}
.v69-reviews-page .v53-review-head span{font-size:14px}.v69-reviews-page .v53-review-head b{font-size:11px}
.v69-reviews-page .v69-summary-card{background:#eef3ef!important;color:#263c35!important}
.v69-reviews-page .v69-summary-card .eyebrow{color:#9b783d!important}
.v69-reviews-page .v69-summary-card h3{font-family:Georgia,serif;font-size:23px;line-height:1.2;margin:8px 0 10px;color:#1f5145!important}
.v69-reviews-page .v69-summary-card p{color:#51615b!important;line-height:1.65}
.v69-reviews-page .v69-main-count{border:2px solid rgba(176,138,63,.35)}
.v69-reviews-page .v68-score-card small{font-size:12px}
.v69-reviews-page .v68-review-property{padding:64px 0}
.v69-reviews-page .v68-property-head{margin-bottom:24px}
.v69-reviews-page .v68-rating-grid{margin-bottom:22px}
.v69-reviews-page .v68-theme-row{margin-bottom:20px}
/* Empêche toute bande sombre résiduelle sous les cartes de l’accueil sur ordinateur. */
@media(min-width:900px){
  .v52-property,.v52-property-copy,.v52-property-row,.v52-collection{background-color:#fbf8f3!important}
  .v52-property{padding-bottom:0!important}
  .v52-property-copy{margin-bottom:0!important}
}
@media(max-width:980px){.v69-reviews-page .v68-review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){
  .v69-reviews-page .v68-review-grid{grid-template-columns:1fr;gap:14px}
  .v69-reviews-page .v53-review-wall article{padding:21px 19px}
  .v69-reviews-page .v53-review-wall blockquote{font-size:17px;line-height:1.5}
  .v69-reviews-page .v68-review-property{padding:48px 0}
  .v69-reviews-page .v68-score-card{padding:22px 18px}
  .v69-reviews-page .v68-score-card strong{font-size:31px}
}


/* V70.2 — corrections ciblées : polices, espacements, cadres et mobile */
.v69-reviews-page .v68-score-card{height:auto;min-height:0;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
.v69-reviews-page .v68-score-card strong,.v69-reviews-page .v68-score-card span,.v69-reviews-page .v68-score-card small{max-width:100%;overflow-wrap:break-word}
.v69-reviews-page .v68-review-final .wrap-narrow{max-width:860px}
.v69-reviews-page .v68-review-final h2{max-width:760px;margin-left:auto;margin-right:auto}
.v69-reviews-page .v68-review-final .v53-review-source-note{margin-top:22px}
@media(max-width:620px){
  .v69-reviews-page .page-hero{padding-bottom:36px}
  .v69-reviews-page .page-hero-copy{padding:30px 22px 34px}
  .v69-reviews-page .page-hero-copy h1{font-size:clamp(42px,12vw,58px);line-height:.98;letter-spacing:-.025em;margin:10px 0 18px}
  .v69-reviews-page .page-hero-copy p{font-size:16px;line-height:1.55;margin:0}
  .v69-reviews-page .v68-review-overview{padding-top:44px;padding-bottom:48px}
  .v69-reviews-page .v68-review-overview h2{font-size:clamp(40px,11vw,55px);line-height:1.02;letter-spacing:-.02em;margin:12px auto 26px;max-width:92%}
  .v69-reviews-page .v68-scoreboard{gap:18px;margin:26px 0 18px}
  .v69-reviews-page .v68-score-card{padding:26px 22px 28px;border-radius:26px}
  .v69-reviews-page .v68-score-card strong{font-size:50px;line-height:1;margin:0 0 10px}
  .v69-reviews-page .v68-score-card span{font-size:21px;line-height:1.18;margin:0 0 12px}
  .v69-reviews-page .v68-score-card small{font-size:15px;line-height:1.48;margin:0 auto}
  .v69-reviews-page .v68-data-note{font-size:13px;line-height:1.6;margin-top:18px}
  .v69-reviews-page .v68-property-head{gap:18px;margin-bottom:20px}
  .v69-reviews-page .v68-property-head h2{font-size:38px;line-height:1.04;margin:8px 0 12px}
  .v69-reviews-page .v68-property-head p{line-height:1.6}
  .v69-reviews-page .v68-property-head img{height:220px;border-radius:22px}
  .v69-reviews-page .v53-review-wall article{padding:22px 20px 24px;border-radius:22px;overflow:hidden}
  .v69-reviews-page .v53-review-wall blockquote{margin:0;font-size:17px;line-height:1.52}
  .v69-reviews-page .v53-review-wall article>p{margin-top:15px;padding-top:12px;line-height:1.45}
  .v69-reviews-page .v68-footnote{font-size:13px;line-height:1.58;margin:22px auto 0}
  .v69-reviews-page .v68-review-actions{margin-top:24px;gap:12px}
  .v69-reviews-page .v68-review-actions .lr-btn{width:100%;max-width:100%;white-space:normal;line-height:1.25;padding:15px 18px}
  .v69-reviews-page .v68-review-final{padding-top:52px;padding-bottom:56px}
  .v69-reviews-page .v68-review-final .wrap-narrow{padding-left:22px;padding-right:22px}
  .v69-reviews-page .v68-review-final h2{font-size:clamp(39px,10.8vw,54px);line-height:1.02;letter-spacing:-.02em;margin:12px auto 18px}
  .v69-reviews-page .v68-review-final .v53-review-source-note{font-size:16px;line-height:1.62;margin:18px auto 0}
  .v69-reviews-page .v68-review-final .button-row{margin-top:26px;gap:12px}
  .v69-reviews-page .v68-review-final .lr-btn{width:100%;max-width:100%;white-space:normal;padding:15px 18px}
}


/* V70.3 — synthèse des notes plus compacte et rythme visuel harmonisé */
.v69-reviews-page .v68-scoreboard{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:960px;margin:28px auto 18px}
.v69-reviews-page .v68-score-card{padding:20px 20px 21px;border-radius:20px;box-shadow:0 12px 30px rgba(20,50,42,.055)}
.v69-reviews-page .v68-score-card strong{font-size:30px;line-height:1;margin:0 0 6px}
.v69-reviews-page .v68-score-card span{font-size:16px;line-height:1.25;margin:0 0 6px}
.v69-reviews-page .v68-score-card small{font-size:12px;line-height:1.45;margin:0 auto;max-width:420px}
.v69-reviews-page .v68-review-overview{padding-top:58px;padding-bottom:58px}
.v69-reviews-page .v68-review-overview h2{margin-bottom:22px}
.v69-reviews-page .v68-property-head{gap:38px}
.v69-reviews-page .v68-property-head>div{min-width:0}
.v69-reviews-page .v68-property-head p,.v69-reviews-page .v53-review-wall blockquote,.v69-reviews-page .v53-review-wall article>p{overflow-wrap:anywhere;word-break:normal}
.v69-reviews-page .v53-review-wall article{box-sizing:border-box}
@media(max-width:620px){
  .v69-reviews-page .v68-scoreboard{grid-template-columns:1fr;gap:12px;margin:22px 0 16px}
  .v69-reviews-page .v68-score-card{padding:17px 18px 18px;border-radius:20px}
  .v69-reviews-page .v68-score-card strong{font-size:38px;margin-bottom:5px}
  .v69-reviews-page .v68-score-card span{font-size:18px;margin-bottom:5px}
  .v69-reviews-page .v68-score-card small{font-size:13px;line-height:1.42}
  .v69-reviews-page .v68-review-overview{padding-top:38px;padding-bottom:42px}
  .v69-reviews-page .v68-review-overview h2{font-size:clamp(36px,10vw,48px);margin:10px auto 18px}
  .v69-reviews-page .v68-property-head{gap:16px}
  .v69-reviews-page .v68-property-head img{margin-top:2px}
  .v69-reviews-page .v53-review-wall article{padding:20px 19px 21px}
}

/* V70.4 — finitions ciblées : histoire, témoignages et rythme mobile */
.v52-reviews h2.center{
  max-width:820px;
  margin:12px auto 0;
}
.v52-review-intro{
  max-width:520px;
  margin:14px auto 0;
  font-size:16px;
  line-height:1.5;
}
.v52-review-note{
  max-width:760px;
  margin:28px auto 0;
  font-size:16px;
  line-height:1.65;
}
.v50-philosophy .v704-story-link{
  display:flex;
  align-items:center;
  justify-content:space-between;
  box-sizing:border-box;
  width:min(100%,440px);
  min-height:54px;
  margin:24px auto 0;
  padding:14px 22px 14px 25px;
  border:1px solid rgba(176,138,63,.72);
  border-radius:999px;
  background:linear-gradient(180deg,rgba(255,253,249,.98),rgba(248,243,233,.96));
  color:#214d40!important;
  box-shadow:0 8px 20px rgba(40,57,49,.08);
  font-size:12px;
  font-weight:750;
  line-height:1.25;
  letter-spacing:.13em;
  text-align:left;
  text-decoration:none;
  text-transform:uppercase;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease,background-color .22s ease;
}
.v50-philosophy .v704-story-link::after{
  content:'→';
  flex:0 0 auto;
  margin-left:22px;
  color:#b08a3f;
  font-size:24px;
  font-weight:400;
  line-height:1;
  letter-spacing:0;
  transition:transform .22s ease;
}
@media (hover:hover){
  .v50-philosophy .v704-story-link:hover{
    transform:translateY(-1px);
    border-color:rgba(176,138,63,.9);
    box-shadow:0 11px 25px rgba(40,57,49,.11);
  }
  .v50-philosophy .v704-story-link:hover::after{transform:translateX(4px)}
}
@media(max-width:620px){
  .v52-reviews{padding-top:76px;padding-bottom:76px}
  .v52-reviews h2.center{
    max-width:94%;
    margin-top:10px;
    font-size:clamp(42px,11.2vw,56px);
    line-height:1.02;
  }
  .v52-review-intro{
    max-width:88%;
    margin-top:13px;
    font-size:15px;
    line-height:1.45;
  }
  .v52-review-grid{margin-top:38px}
  .v52-review-note{
    max-width:92%;
    margin-top:24px;
    font-size:15px;
    line-height:1.55;
  }
  .v50-philosophy .v704-story-link{
    width:min(100%,420px);
    min-height:52px;
    margin-top:22px;
    padding:13px 19px 13px 21px;
    font-size:11px;
    letter-spacing:.115em;
  }
  .v50-philosophy .v704-story-link::after{
    margin-left:16px;
    font-size:22px;
  }
}
@media(max-width:390px){
  .v50-philosophy .v704-story-link{
    padding-left:18px;
    padding-right:17px;
    font-size:10.5px;
    letter-spacing:.095em;
  }
}


/* ========================================================================== */
/* V91 — formulaire contextualisé, sans modification éditoriale               */
/* ========================================================================== */
.lr28 .lr91-form-context{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin:0 0 22px;
  padding:15px 18px;
  border:1px solid rgba(49,68,47,.18);
  background:#f7f3eb;
  color:#28352b;
}
.lr28 .lr91-form-context span{
  font-size:11px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#756b5d;
}
.lr28 .lr91-form-context strong{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:24px;
  line-height:1.1;
  font-weight:600;
  text-align:right;
}
.lr28 .request-form input:focus,
.lr28 .request-form select:focus,
.lr28 .request-form textarea:focus{
  outline:3px solid rgba(216,188,115,.34);
  outline-offset:1px;
  border-color:#8b774e;
}
@media(max-width:620px){
  .lr28 .lr91-form-context{
    align-items:flex-start;
    flex-direction:column;
    gap:6px;
    padding:15px 16px;
  }
  .lr28 .lr91-form-context strong{
    font-size:23px;
    text-align:left;
  }
}

/* ========================================================================== */
/* V92 — expérience mobile finalisée et continuité planning > formulaire      */
/* ========================================================================== */
.lr28 .availability-property.lr92-selected-planning{
  border-color:rgba(176,138,63,.72)!important;
  box-shadow:0 20px 54px rgba(46,55,45,.14),0 0 0 3px rgba(216,188,115,.16)!important;
}
.lr28 .availability-property,
.lr28 .availability-hub{
  scroll-margin-top:96px!important;
}
.lr28 .calendar-box{
  overscroll-behavior-inline:contain;
  scrollbar-width:thin;
}
.lr82-mobile-booking{
  transition:transform .22s ease,opacity .22s ease,box-shadow .22s ease;
}

@media(max-width:820px){
  body.lr92-property-mobile{
    padding-bottom:var(--lr92-booking-bar-height,calc(78px + env(safe-area-inset-bottom,0px)))!important;
  }
  body.lr92-property-mobile .lr82-mobile-booking{
    isolation:isolate;
  }
  .lr28 .availability-property,
  .lr28 .availability-hub{
    scroll-margin-top:76px!important;
  }
  .lr28 .calendar-box{
    width:100%!important;
    max-width:100%!important;
    padding:12px 8px!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-x pan-y;
  }
  .lr28 .calendar-box .wpsbc-container,
  .lr28 .calendar-box .wpsbc-calendars{
    min-width:0!important;
    max-width:100%!important;
  }
  body.lr92-contact-mobile .lr28 .request-form{
    gap:17px!important;
  }
  body.lr92-contact-mobile .lr28 .form-row{
    grid-template-columns:1fr!important;
    gap:17px!important;
  }
  body.lr92-contact-mobile .lr28 .request-form label{
    gap:8px!important;
    font-size:12px!important;
    line-height:1.35!important;
  }
  body.lr92-contact-mobile .lr28 .request-form input,
  body.lr92-contact-mobile .lr28 .request-form select,
  body.lr92-contact-mobile .lr28 .request-form textarea{
    min-height:56px!important;
    font-size:16px!important;
    border-radius:12px!important;
  }
  body.lr92-contact-mobile .lr28 .request-form textarea{
    min-height:150px!important;
  }
  body.lr92-contact-mobile .lr28 .request-form .button-row{
    margin-top:4px!important;
  }
  body.lr92-contact-mobile .lr28 .request-form button[type="submit"]{
    width:100%!important;
    min-height:58px!important;
    padding:15px 20px!important;
  }
  body.lr92-contact-mobile .lr28 .lr91-form-context{
    border-radius:14px!important;
    box-shadow:0 10px 26px rgba(30,38,31,.06)!important;
  }
}

@media(max-width:390px){
  .lr82-mobile-booking{
    grid-template-columns:.94fr 1.06fr!important;
    gap:7px!important;
    padding-left:8px!important;
    padding-right:8px!important;
  }
  .lr82-mobile-booking a{
    padding-left:8px!important;
    padding-right:8px!important;
    font-size:12px!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .lr82-mobile-booking{transition:none!important}
}


/* ==========================================================
   V99 GOLD — FINITION MOBILE DU BLOC FINAL DE L’ACCUEIL
   Le gris visible appartient à la terrasse de la photographie.
   Seul le traitement du fond est modifié : textes, bouton,
   dimensions et structure du bloc restent inchangés.
   ========================================================== */
@media(max-width:899px){
  .v52-home .v50-final{
    background:#18372e!important;
  }
  .v52-home .v50-final>img{
    filter:saturate(.94) contrast(1.035) brightness(.90)!important;
  }
  .v52-home .v50-final-shade{
    background:linear-gradient(180deg,
      rgba(7,18,15,.10) 0%,
      rgba(8,23,19,.16) 30%,
      rgba(12,32,26,.42) 52%,
      rgba(18,46,38,.78) 72%,
      rgba(24,55,46,.98) 100%)!important;
  }
  .v52-home .v50-final .eyebrow,
  .v52-home .v50-final h2,
  .v52-home .v50-final p:not(.eyebrow){
    text-shadow:0 3px 20px rgba(0,0,0,.48)!important;
  }
}
@media(max-width:520px){
  .v52-home .v50-final-shade{
    background:linear-gradient(180deg,
      rgba(7,18,15,.08) 0%,
      rgba(8,23,19,.14) 29%,
      rgba(12,32,26,.46) 50%,
      rgba(18,46,38,.84) 69%,
      rgba(24,55,46,.99) 100%)!important;
  }
}


/* ==========================================================
   V100 — LES ADRESSES DE CHRISTELLE & LAURENT
   ========================================================== */
.v100-addresses .travel-hero-overlay h1{max-width:980px;font-size:clamp(3rem,7.2vw,6.8rem)}
.v100-addresses .travel-hero-overlay p:last-child{max-width:760px}
.v100-address-intro{padding-top:8px}
.v100-address-signature{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(1.75rem,3vw,2.5rem)!important;line-height:1.15!important;color:#193b34;margin-bottom:28px!important}
.v100-category-section{padding:110px 24px;background:#f2eee5}
.v100-category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:48px}
.v100-category-card{position:relative;display:block;min-height:500px;overflow:hidden;border-radius:24px;color:#fff!important;text-decoration:none!important;background:#18352f;box-shadow:0 22px 55px rgba(24,41,35,.13)}
.v100-category-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,20,17,.04) 16%,rgba(9,20,17,.78) 100%)}
.v100-category-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
.v100-category-card>div{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:34px}
.v100-category-card span{display:block;margin-bottom:12px;font:700 .69rem/1.3 Montserrat,sans-serif;letter-spacing:.15em;text-transform:uppercase;color:#ead9b8}
.v100-category-card h3{margin:0 0 12px;font-size:clamp(2rem,2.8vw,2.7rem);line-height:1;color:#fff}
.v100-category-card p{margin:0 0 22px;font-size:.96rem;line-height:1.65;color:rgba(255,255,255,.88)}
.v100-category-card em{font:800 .7rem/1.2 Montserrat,sans-serif;letter-spacing:.13em;text-transform:uppercase;font-style:normal;color:#fff}
@media(hover:hover){.v100-category-card:hover img{transform:scale(1.045)}.v100-category-card:hover{box-shadow:0 30px 68px rgba(24,41,35,.19)}}
.v100-section-intro{max-width:780px;margin:18px auto 0;text-align:center;line-height:1.75;color:#676158}
.v100-guide-hub .v53-guide-grid{margin-top:42px}
.v100-sea-feature{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(390px,.88fr);min-height:690px;background:#173a33;color:#fff}
.v100-sea-image img{width:100%;height:100%;min-height:690px;object-fit:cover;display:block}
.v100-sea-copy{align-self:center;padding:80px clamp(38px,6vw,92px)}
.v100-sea-copy .eyebrow{color:#d8bd86}
.v100-sea-copy h2{font-size:clamp(2.7rem,4.5vw,4.8rem);line-height:.98;color:#fff;margin:.15em 0 .35em}
.v100-sea-copy p{max-width:650px;font-size:1.05rem;line-height:1.8;color:rgba(255,255,255,.86)}
.v100-sea-copy .lr-btn{background:#f0e5ce!important;color:#173a33!important;border-color:#f0e5ce!important}
.v100-address-final h3{font-size:clamp(2.4rem,4vw,4rem);line-height:1.03;margin:.2em 0 .35em;color:#193b34}
.v100-home-addresses-intro{max-width:760px;margin:18px auto 0;text-align:center;line-height:1.75;color:#5f5b53}
.v100-home-addresses .v50-journal-grid span{display:flex;flex-direction:column;gap:7px}
.v100-home-addresses .v50-journal-grid strong{font:600 31px/1.05 "Cormorant Garamond",Georgia,serif;color:#fff}
.v100-home-addresses .v50-journal-grid small{font:700 .68rem/1.25 Montserrat,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.82)}
.v100-home-addresses-button{margin-top:38px}
@media(max-width:980px){.v100-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v100-sea-feature{grid-template-columns:1fr;min-height:0}.v100-sea-image img{min-height:420px;max-height:62vh}.v100-sea-copy{padding:60px 30px}}
@media(max-width:640px){.v100-category-section{padding:78px 18px}.v100-category-grid{grid-template-columns:1fr;gap:17px;margin-top:34px}.v100-category-card{min-height:430px;border-radius:19px}.v100-category-card>div{padding:27px 24px}.v100-category-card h3{font-size:2.15rem}.v100-sea-image img{min-height:320px}.v100-sea-copy{padding:48px 22px}.v100-home-addresses .v50-journal-grid strong{font-size:28px}.v100-addresses .travel-hero-overlay h1{font-size:clamp(2.75rem,14vw,4.4rem)}}
@media(prefers-reduced-motion:reduce){.v100-category-card img{transition:none}.v100-category-card:hover img{transform:none}}

/* ==========================================================
   V101 — LES ADRESSES, MISE EN PAGE DESKTOP RECOMPOSEE
   ========================================================== */
.v101-addresses{overflow:hidden;background:#fff}
.v101-hero{position:relative;min-height:58vh;max-height:700px;display:flex;align-items:flex-end;overflow:hidden;background:#17352f}
.v101-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 54%}
.v101-hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,20,17,.08) 10%,rgba(8,20,17,.18) 48%,rgba(8,20,17,.72) 100%)}
.v101-hero-copy{position:relative;z-index:2;width:min(1180px,calc(100% - 64px));margin:0 auto;padding:0 0 64px;color:#fff}
.v101-hero-copy .eyebrow{color:#f1e1bf}
.v101-hero-copy h1{max-width:850px;margin:.16em 0 .2em;font-size:clamp(3.35rem,5.7vw,5.4rem);line-height:.94;color:#fff}
.v101-hero-copy>p:last-child{max-width:700px;margin:0;font-size:clamp(1.05rem,1.6vw,1.28rem);line-height:1.55;color:rgba(255,255,255,.92)}
.v101-intro{padding:86px 24px;background:#fff}
.v101-intro-grid{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:72px;align-items:start}
.v101-intro h2{max-width:560px;margin:.18em 0 0;font-size:clamp(2.7rem,4vw,4.15rem);line-height:1.02;color:#193b34}
.v101-intro-grid>div:last-child{max-width:670px;padding-top:30px}
.v101-intro-grid>div:last-child p{margin:0 0 18px;font-size:1.04rem;line-height:1.82;color:#5d5a53}
.v101-universes{padding:94px 24px 82px;background:#f3efe7}
.v101-section-head{text-align:center;max-width:820px;margin:0 auto 42px}
.v101-section-head h2{margin:.12em 0 0;font-size:clamp(2.7rem,4.2vw,4.25rem);line-height:1.02;color:#193b34}
.v101-category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.v101-category-card{position:relative;display:block;min-height:350px;overflow:hidden;border-radius:20px;background:#17352f;color:#fff!important;text-decoration:none!important;box-shadow:0 18px 44px rgba(28,42,35,.11)}
.v101-category-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .55s ease}
.v101-card-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,18,15,.04) 22%,rgba(7,18,15,.82) 100%)}
.v101-category-card>div{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:27px 27px 25px}
.v101-category-card small{display:block;margin-bottom:10px;font:700 .66rem/1.2 Montserrat,sans-serif;letter-spacing:.15em;text-transform:uppercase;color:#ead6ad}
.v101-category-card h3{max-width:330px;margin:0 0 17px;font-size:clamp(1.85rem,2.5vw,2.55rem);line-height:1;color:#fff}
.v101-category-card em{font:800 .66rem/1.2 Montserrat,sans-serif;letter-spacing:.12em;text-transform:uppercase;font-style:normal;color:#fff}
@media(hover:hover){.v101-category-card:hover img{transform:scale(1.045)}.v101-category-card:hover{box-shadow:0 25px 58px rgba(28,42,35,.16)}}
.v101-guide-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:26px;border-top:1px solid rgba(129,112,82,.2);border-bottom:1px solid rgba(129,112,82,.2)}
.v101-guide-strip a{display:flex;flex-direction:column;gap:7px;padding:24px 28px;text-decoration:none!important;border-right:1px solid rgba(129,112,82,.2)}
.v101-guide-strip a:last-child{border-right:0}
.v101-guide-strip span{font:800 .66rem/1.2 Montserrat,sans-serif;letter-spacing:.13em;text-transform:uppercase;color:#9a7441}
.v101-guide-strip strong{font:600 1.45rem/1.05 "Cormorant Garamond",Georgia,serif;color:#193b34}
.v101-feature{padding:104px 24px;background:#fff}
.v101-feature-corse{background:#fffaf2}
.v101-feature-arc{background:#f5f7f5}
.v101-feature-intro{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr);gap:62px;align-items:center;margin-bottom:42px}
.v101-feature-intro-reverse{grid-template-columns:minmax(380px,.92fr) minmax(0,1.08fr)}
.v101-feature-intro-reverse figure{order:2}
.v101-feature-intro figure{margin:0}
.v101-feature-intro figure img{display:block;width:100%;height:440px;object-fit:cover;border-radius:24px;box-shadow:0 20px 52px rgba(27,43,35,.12)}
.v101-feature-intro figure small{display:block;margin-top:9px;text-align:right;font-size:11px;color:#777169}
.v101-feature-intro h2{margin:.16em 0 .28em;font-size:clamp(2.85rem,4.4vw,4.7rem);line-height:.98;color:#193b34}
.v101-feature-intro p:not(.eyebrow){max-width:610px;font-size:1.04rem;line-height:1.78;color:#5e5a53}
.v101-address-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.v101-address-grid-arc{grid-template-columns:repeat(4,minmax(0,1fr))}
.v101-address-card{display:grid;grid-template-columns:1fr auto;grid-template-areas:"name link" "place link";gap:5px 18px;align-items:center;min-height:104px;padding:21px 22px;border:1px solid rgba(161,137,97,.26);border-radius:14px;background:rgba(255,255,255,.82);text-decoration:none!important;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.v101-address-card strong{grid-area:name;font:600 1.45rem/1.05 "Cormorant Garamond",Georgia,serif;color:#193b34}
.v101-address-card span{grid-area:place;font-size:.83rem;color:#756e65}
.v101-address-card em{grid-area:link;font:800 .61rem/1.3 Montserrat,sans-serif;letter-spacing:.1em;text-transform:uppercase;font-style:normal;color:#0c4b3e;text-align:right}
@media(hover:hover){.v101-address-card:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(27,43,35,.09);border-color:rgba(139,106,55,.45)}}
.v101-sea{position:relative;min-height:560px;display:flex;align-items:flex-end;overflow:hidden;background:#17352f}
.v101-sea>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 58%}
.v101-sea-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,27,22,.88) 0%,rgba(8,27,22,.56) 48%,rgba(8,27,22,.1) 100%)}
.v101-sea-copy{position:relative;z-index:2;width:min(1180px,calc(100% - 64px));margin:0 auto;padding:0 0 70px;color:#fff}
.v101-sea-copy .eyebrow{color:#ead6ad}
.v101-sea-copy h2{max-width:590px;margin:.15em 0 .25em;font-size:clamp(3.1rem,5vw,5.3rem);line-height:.95;color:#fff}
.v101-sea-copy p{max-width:570px;margin:0 0 28px;font-size:1.05rem;line-height:1.72;color:rgba(255,255,255,.9)}
.v101-sea-copy .lr-btn{background:#f0e5ce!important;color:#173a33!important;border-color:#f0e5ce!important}
.v101-final{padding:94px 24px;background:#fff}
.v101-final h2{margin:.16em 0 .3em;font-size:clamp(2.7rem,4vw,4.2rem);line-height:1;color:#193b34}
.v101-final p:not(.eyebrow){max-width:720px;margin:0 auto 28px;font-size:1.03rem;line-height:1.72;color:#625d55}
@media(max-width:1050px){.v101-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v101-feature-intro,.v101-feature-intro-reverse{grid-template-columns:1fr;gap:36px}.v101-feature-intro-reverse figure{order:0}.v101-address-grid-arc{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.v101-hero{min-height:60vh}.v101-hero-copy{width:calc(100% - 38px);padding-bottom:48px}.v101-intro{padding:70px 20px}.v101-intro-grid{grid-template-columns:1fr;gap:20px}.v101-intro-grid>div:last-child{padding-top:0}.v101-guide-strip{grid-template-columns:1fr}.v101-guide-strip a{border-right:0;border-bottom:1px solid rgba(129,112,82,.2)}.v101-guide-strip a:last-child{border-bottom:0}.v101-address-grid,.v101-address-grid-arc{grid-template-columns:repeat(2,minmax(0,1fr))}.v101-sea-copy{width:calc(100% - 38px)}}
@media(max-width:620px){.v101-hero{min-height:58vh}.v101-hero-copy h1{font-size:clamp(2.75rem,13vw,4rem)}.v101-universes,.v101-feature{padding:74px 18px}.v101-category-grid{grid-template-columns:1fr;gap:16px}.v101-category-card{min-height:330px}.v101-feature-intro figure img{height:320px;border-radius:18px}.v101-address-grid,.v101-address-grid-arc{grid-template-columns:1fr}.v101-address-card{min-height:96px}.v101-sea{min-height:520px}.v101-sea-shade{background:linear-gradient(180deg,rgba(8,27,22,.1) 18%,rgba(8,27,22,.86) 100%)}.v101-sea-copy{padding-bottom:48px}.v101-final{padding:76px 18px}}
@media(prefers-reduced-motion:reduce){.v101-category-card img,.v101-address-card{transition:none}.v101-category-card:hover img,.v101-address-card:hover{transform:none}}


/* ==========================================================
   V102 — CORRECTIF BARRE DESKTOP + SÉLECTEUR ÉDITORIAL
   ========================================================== */
/* La barre de réservation est masquée par défaut. Elle ne peut plus apparaître
   en bas d'une fiche sur ordinateur, même si le CSS injecté est retardé. */
.lr82-mobile-booking{display:none!important}
@media(max-width:820px){
  body.lr92-property-mobile .lr82-mobile-booking{display:grid!important}
}

.v102-universes{padding-top:90px;padding-bottom:86px}
.v102-section-head{max-width:900px;margin-bottom:44px}
.v102-section-head>p:last-child{max-width:660px;margin:17px auto 0;font-size:1rem;line-height:1.72;color:#6a645b}
.v102-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.v102-category-card{position:relative;display:block;min-height:390px;overflow:hidden;border-radius:22px;background:#17352f;color:#fff!important;text-decoration:none!important;box-shadow:0 18px 44px rgba(28,42,35,.11);isolation:isolate}
.v102-category-card img{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;transition:transform .55s ease}
.v102-card-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,17,14,.03) 16%,rgba(6,17,14,.28) 53%,rgba(6,17,14,.9) 100%)}
.v102-category-card>div{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:32px 34px 30px}
.v102-category-card small{display:block;margin-bottom:9px;font:700 .66rem/1.2 Montserrat,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#ead6ad}
.v102-category-card h3{margin:0 0 7px;font-size:clamp(2.25rem,3.2vw,3.35rem);line-height:.96;color:#fff}
.v102-category-card p{max-width:530px;margin:0 0 18px;font-size:.94rem;line-height:1.55;color:rgba(255,255,255,.86)}
.v102-category-card em{display:inline-flex;align-items:center;gap:9px;font:800 .64rem/1.2 Montserrat,sans-serif;letter-spacing:.13em;text-transform:uppercase;font-style:normal;color:#fff}
.v102-category-card em:after{content:'→';font-size:.9rem;transition:transform .2s ease}
.v102-secondary-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}
.v102-secondary-links a{display:grid;grid-template-columns:1fr auto;grid-template-areas:'label action' 'title action';align-items:center;gap:5px 22px;min-height:104px;padding:24px 26px;border:1px solid rgba(137,112,72,.24);border-radius:16px;background:rgba(255,255,255,.66);text-decoration:none!important;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.v102-secondary-links span{grid-area:label;font:800 .63rem/1.2 Montserrat,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#9a7441}
.v102-secondary-links strong{grid-area:title;font:600 1.65rem/1.05 "Cormorant Garamond",Georgia,serif;color:#193b34}
.v102-secondary-links em{grid-area:action;font:800 .61rem/1.3 Montserrat,sans-serif;letter-spacing:.1em;text-transform:uppercase;font-style:normal;color:#0c4b3e;text-align:right}
@media(hover:hover){
  .v102-category-card:hover img{transform:scale(1.035)}
  .v102-category-card:hover em:after{transform:translateX(4px)}
  .v102-secondary-links a:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(27,43,35,.08);border-color:rgba(139,106,55,.42)}
}
@media(max-width:820px){
  .v102-category-grid{grid-template-columns:1fr}
  .v102-secondary-links{grid-template-columns:1fr}
}
@media(max-width:620px){
  .v102-universes{padding:70px 18px}
  .v102-section-head{margin-bottom:32px}
  .v102-category-grid{gap:16px}
  .v102-category-card{min-height:340px;border-radius:18px}
  .v102-category-card>div{padding:27px 24px 25px}
  .v102-category-card h3{font-size:2.35rem}
  .v102-secondary-links a{min-height:96px;padding:21px 20px}
  .v102-secondary-links strong{font-size:1.45rem}
}
@media(prefers-reduced-motion:reduce){
  .v102-category-card img,.v102-category-card em:after,.v102-secondary-links a{transition:none!important}
  .v102-category-card:hover img,.v102-secondary-links a:hover{transform:none!important}
}


/* ==========================================================
   V103 — ALIGNEMENT DES CARTES DE RÉSIDENCES SUR ORDINATEUR
   Supprime la bande sombre visible sous Villa Mer & Tennis en
   alignant réellement les deux cartes et en neutralisant l'ombre
   basse qui apparaissait lorsque leurs contenus avaient des hauteurs
   différentes.
   ========================================================== */
@media(min-width:900px){
  .v52-property-row{align-items:stretch!important}
  .v52-property-row>.v52-property{
    display:flex!important;
    flex-direction:column!important;
    height:100%!important;
    background:#fbf8f3!important;
    box-shadow:0 14px 34px rgba(47,55,49,.065)!important;
  }
  .v52-property-row>.v52-property .v52-property-copy{
    flex:1 1 auto!important;
    display:flex!important;
    flex-direction:column!important;
    min-height:0!important;
    background:#fbf8f3!important;
  }
  .v52-property-row>.v52-property .v52-discover{margin-top:auto!important}
}


/* ==========================================================
   V104 — PRÉSENTATION STABLE DES UNIVERS
   Cartes éditoriales simples, sans mosaïque ni superposition.
   ========================================================== */
.v104-universes{padding:92px 24px 96px;background:#f3efe7}
.v104-section-head{max-width:820px;margin:0 auto 46px;text-align:center}
.v104-section-head h2{margin:.14em 0 .22em;font-size:clamp(2.8rem,4.2vw,4.35rem);line-height:1;color:#193b34}
.v104-section-head>p:last-child{max-width:690px;margin:0 auto;font-size:1.02rem;line-height:1.72;color:#676158}
.v104-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch}
.v104-category-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid rgba(145,123,88,.18);border-radius:20px;background:#fff;color:inherit!important;text-decoration:none!important;box-shadow:0 14px 38px rgba(32,45,39,.08);transition:transform .22s ease,box-shadow .22s ease}
.v104-category-card figure{margin:0;height:255px;overflow:hidden;background:#d8d6ce}
.v104-category-card img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .55s ease}
.v104-category-card>div{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:29px 31px 30px}
.v104-category-card small{display:block;margin-bottom:10px;font:800 .64rem/1.2 Montserrat,sans-serif;letter-spacing:.15em;text-transform:uppercase;color:#9b7440}
.v104-category-card h3{margin:0 0 10px;font-size:clamp(2rem,2.7vw,2.75rem);line-height:1;color:#193b34}
.v104-category-card p{max-width:520px;margin:0 0 24px;font-size:.97rem;line-height:1.65;color:#686158}
.v104-category-card span{display:inline-flex;align-items:center;gap:10px;margin-top:auto;font:800 .65rem/1.2 Montserrat,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#0d4a3d}
.v104-category-card b{font-size:.95rem;font-weight:700;transition:transform .2s ease}
@media(hover:hover){.v104-category-card:hover{transform:translateY(-3px);box-shadow:0 22px 50px rgba(32,45,39,.12)}.v104-category-card:hover img{transform:scale(1.035)}.v104-category-card:hover b{transform:translateX(4px)}}
@media(max-width:820px){.v104-category-grid{grid-template-columns:1fr}.v104-category-card figure{height:280px}}
@media(max-width:620px){.v104-universes{padding:72px 18px 76px}.v104-section-head{margin-bottom:34px}.v104-category-grid{gap:17px}.v104-category-card{border-radius:17px}.v104-category-card figure{height:230px}.v104-category-card>div{padding:25px 23px 26px}.v104-category-card h3{font-size:2.2rem}}
@media(prefers-reduced-motion:reduce){.v104-category-card,.v104-category-card img,.v104-category-card b{transition:none!important}.v104-category-card:hover,.v104-category-card:hover img{transform:none!important}}

/* =========================================================
   V106 — LES ADRESSES : ÉDITION PRESTIGE
   Présentation unique pour Corse-du-Sud et Arc 1950.
   ========================================================= */
.v106-addresses .v101-feature{
  padding:clamp(90px,9vw,138px) 24px;
}
.v106-addresses .v101-feature-corse{
  background:linear-gradient(180deg,#fbfaf7 0%,#f5f1e9 100%);
}
.v106-addresses .v101-feature-arc{
  background:linear-gradient(180deg,#f4f0e8 0%,#fbfaf7 100%);
}
.v106-addresses .v101-feature-intro,
.v106-addresses .v101-feature-intro-reverse{
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:clamp(44px,6vw,86px);
  align-items:center;
  margin-bottom:clamp(58px,7vw,92px);
}
.v106-addresses .v101-feature-intro figure{
  position:relative;
  margin:0;
}
.v106-addresses .v101-feature-intro figure:after{
  content:"";
  position:absolute;
  inset:18px -18px -18px 18px;
  border:1px solid rgba(174,139,82,.42);
  border-radius:26px;
  pointer-events:none;
  z-index:0;
}
.v106-addresses .v101-feature-intro figure img{
  position:relative;
  z-index:1;
  width:100%;
  height:clamp(390px,40vw,560px);
  object-fit:cover;
  border-radius:26px;
  box-shadow:0 28px 70px rgba(28,43,35,.14);
}
.v106-addresses .v101-feature-intro>div{
  max-width:650px;
}
.v106-addresses .v101-feature-intro h2{
  font-size:clamp(3rem,5vw,5.2rem);
  line-height:.94;
  letter-spacing:-.025em;
  margin:.18em 0 .28em;
}
.v106-addresses .v101-feature-intro p:not(.eyebrow){
  font-size:1.08rem;
  line-height:1.85;
  color:#625f57;
}
.v106-addresses .v106-address-list,
.v106-addresses .v101-address-grid-arc.v106-address-list{
  counter-reset:v106-address;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:clamp(38px,6vw,88px);
  row-gap:0;
  margin-top:0;
}
.v106-addresses .v106-address-list .v101-address-card{
  counter-increment:v106-address;
  position:relative;
  display:grid;
  grid-template-columns:58px minmax(0,1fr) auto;
  grid-template-areas:
    "number name link"
    "number place link";
  column-gap:18px;
  row-gap:5px;
  align-items:center;
  min-height:142px;
  padding:28px 2px;
  border:0;
  border-top:1px solid rgba(126,105,74,.28);
  border-radius:0;
  background:transparent;
  box-shadow:none;
  text-decoration:none!important;
  transform:none;
}
.v106-addresses .v106-address-list .v101-address-card:nth-last-child(-n+2){
  border-bottom:1px solid rgba(126,105,74,.28);
}
.v106-addresses .v106-address-list .v101-address-card:before{
  content:counter(v106-address,decimal-leading-zero);
  grid-area:number;
  align-self:start;
  padding-top:4px;
  font:700 .69rem/1 Montserrat,sans-serif;
  letter-spacing:.15em;
  color:#a78248;
}
.v106-addresses .v106-address-list .v101-address-card strong{
  grid-area:name;
  font:600 clamp(1.65rem,2.2vw,2.15rem)/1.02 "Cormorant Garamond",Georgia,serif;
  letter-spacing:-.015em;
  color:#183b33;
}
.v106-addresses .v106-address-list .v101-address-card span{
  grid-area:place;
  margin:0;
  font:500 .78rem/1.4 Montserrat,sans-serif;
  letter-spacing:.09em;
  text-transform:uppercase;
  color:#81786d;
}
.v106-addresses .v106-address-list .v101-address-card em{
  grid-area:link;
  position:relative;
  padding-right:23px;
  font:800 .61rem/1.35 Montserrat,sans-serif;
  letter-spacing:.13em;
  text-transform:uppercase;
  white-space:nowrap;
  color:#17493d;
}
.v106-addresses .v106-address-list .v101-address-card em:after{
  content:"→";
  position:absolute;
  right:0;
  top:-1px;
  font-size:1rem;
  font-weight:500;
  transition:transform .22s ease;
}
@media(hover:hover){
  .v106-addresses .v106-address-list .v101-address-card:hover{
    transform:none;
    box-shadow:none;
    border-color:rgba(154,118,61,.72);
  }
  .v106-addresses .v106-address-list .v101-address-card:hover strong{color:#9a763d}
  .v106-addresses .v106-address-list .v101-address-card:hover em:after{transform:translateX(5px)}
}
@media(max-width:980px){
  .v106-addresses .v101-feature-intro,
  .v106-addresses .v101-feature-intro-reverse{grid-template-columns:1fr;gap:42px}
  .v106-addresses .v101-feature-intro-reverse figure{order:0}
  .v106-addresses .v101-feature-intro figure:after{inset:13px -13px -13px 13px}
  .v106-addresses .v106-address-list,
  .v106-addresses .v101-address-grid-arc.v106-address-list{grid-template-columns:1fr}
  .v106-addresses .v106-address-list .v101-address-card:nth-last-child(-n+2){border-bottom:0}
  .v106-addresses .v106-address-list .v101-address-card:last-child{border-bottom:1px solid rgba(126,105,74,.28)}
}
@media(max-width:620px){
  .v106-addresses .v101-feature{padding:76px 20px}
  .v106-addresses .v101-feature-intro{margin-bottom:54px}
  .v106-addresses .v101-feature-intro figure img{height:310px;border-radius:19px}
  .v106-addresses .v101-feature-intro figure:after{inset:10px -9px -10px 9px;border-radius:19px}
  .v106-addresses .v106-address-list .v101-address-card{
    grid-template-columns:38px minmax(0,1fr);
    grid-template-areas:"number name" "number place" "number link";
    min-height:0;
    padding:25px 0;
    column-gap:12px;
  }
  .v106-addresses .v106-address-list .v101-address-card em{margin-top:8px;justify-self:start}
}


/* =========================================================
   V107 — LES ADRESSES : RAFFINEMENT DESKTOP
   Correction du titre comprimé et composition éditoriale stable.
   ========================================================= */
.v106-addresses .v106-address-list,
.v106-addresses .v101-address-grid-arc.v106-address-list{
  gap:22px 28px;
}
.v106-addresses .v106-address-list .v101-address-card{
  grid-template-columns:44px minmax(0,1fr);
  grid-template-areas:
    "number name"
    "number place"
    "number link";
  align-content:center;
  align-items:start;
  min-height:164px;
  padding:30px 32px 28px;
  column-gap:18px;
  row-gap:7px;
  border:1px solid rgba(126,105,74,.20);
  border-radius:20px;
  background:rgba(255,255,255,.64);
  box-shadow:0 16px 38px rgba(31,45,38,.055);
  overflow:hidden;
}
.v106-addresses .v106-address-list .v101-address-card:nth-last-child(-n+2),
.v106-addresses .v106-address-list .v101-address-card:last-child{
  border-bottom:1px solid rgba(126,105,74,.20);
}
.v106-addresses .v106-address-list .v101-address-card:before{
  align-self:start;
  padding-top:7px;
}
.v106-addresses .v106-address-list .v101-address-card strong{
  min-width:0;
  max-width:100%;
  font-size:clamp(1.85rem,2vw,2.35rem);
  line-height:1.02;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
}
.v106-addresses .v106-address-list .v101-address-card span{
  margin-top:1px;
}
.v106-addresses .v106-address-list .v101-address-card em{
  justify-self:start;
  margin-top:13px;
  padding-right:25px;
  white-space:nowrap;
}
@media(hover:hover){
  .v106-addresses .v106-address-list .v101-address-card:hover{
    transform:translateY(-3px);
    border-color:rgba(154,118,61,.45);
    box-shadow:0 22px 46px rgba(31,45,38,.09);
    background:rgba(255,255,255,.86);
  }
}
@media(max-width:1180px) and (min-width:981px){
  .v106-addresses .v106-address-list,
  .v106-addresses .v101-address-grid-arc.v106-address-list{
    grid-template-columns:1fr;
    max-width:900px;
    margin-inline:auto;
  }
}
@media(max-width:980px){
  .v106-addresses .v106-address-list .v101-address-card{
    min-height:150px;
  }
}
@media(max-width:620px){
  .v106-addresses .v106-address-list,
  .v106-addresses .v101-address-grid-arc.v106-address-list{
    gap:14px;
  }
  .v106-addresses .v106-address-list .v101-address-card{
    grid-template-columns:34px minmax(0,1fr);
    min-height:0;
    padding:24px 21px 23px;
    border-radius:17px;
    column-gap:11px;
  }
  .v106-addresses .v106-address-list .v101-address-card strong{
    font-size:1.75rem;
  }
}

/* ==========================================================
   V110 — FOOTER SIGNATURE DOREE
   ========================================================== */
.lr110-footer{
  --lr110-gold:#d7b15f;
  --lr110-ivory:#eee5d3;
  background:
    radial-gradient(circle at 14% 18%,rgba(125,111,57,.10),transparent 32%),
    linear-gradient(135deg,#10281f 0%,#0b2019 55%,#091a15 100%);
  color:var(--lr110-ivory);
  padding:52px 30px 24px;
  border-top:1px solid rgba(215,177,95,.26)
}
.lr110-footer .lr53-footer-inner{width:min(1320px,100%);margin:0 auto}
.lr110-footer .lr53-footer-rule{height:30px;display:flex;align-items:center;margin:0 0 38px}
.lr110-footer .lr53-footer-rule:before,.lr110-footer .lr53-footer-rule:after{content:"";height:1px;background:linear-gradient(90deg,transparent,rgba(215,177,95,.55));flex:1}
.lr110-footer .lr53-footer-rule:after{background:linear-gradient(90deg,rgba(215,177,95,.55),transparent)}
.lr110-footer .lr53-footer-rule span{width:10px;height:10px;margin:0 12px;border:1px solid var(--lr110-gold);transform:rotate(45deg);opacity:.8}
.lr110-footer .lr53-footer-grid{display:grid;grid-template-columns:minmax(280px,1.35fr) repeat(3,minmax(180px,1fr));gap:52px;padding:0 0 50px;align-items:start}
.lr110-footer .lr53-footer-brand{padding-right:14px}
.lr110-footer-logo{display:block;width:min(390px,100%);text-decoration:none!important}
.lr110-footer-monogram{display:block;width:86px;height:auto;margin:0 0 14px 18px}
.lr110-footer-wordmark{display:block;width:100%;height:auto;filter:drop-shadow(0 2px 8px rgba(0,0,0,.18))}
.lr110-footer .lr53-footer-brand p{max-width:390px;margin:30px 0 0;color:rgba(238,229,211,.82);font-size:16px;line-height:1.72}
.lr110-footer .lr110-footer-column{padding-left:34px;border-left:1px solid rgba(215,177,95,.22);min-height:260px}
.lr110-footer h2{position:relative;margin:0 0 34px;padding-bottom:17px;font-family:'Cormorant Garamond',Georgia,serif;font-size:18px;letter-spacing:.12em;text-transform:uppercase;color:var(--lr110-gold);font-weight:600}
.lr110-footer h2:after{content:"";position:absolute;left:0;bottom:0;width:34px;height:1px;background:var(--lr110-gold)}
.lr110-footer nav,.lr110-footer .lr53-footer-contact{display:grid;gap:18px}
.lr110-footer a{color:rgba(238,229,211,.88)!important;text-decoration:none!important;font-family:'Cormorant Garamond',Georgia,serif;font-size:18px;line-height:1.25;transition:color .2s ease,transform .2s ease}
.lr110-footer a:hover{color:#fff4d4!important;text-decoration:none!important;transform:translateX(3px)}
.lr110-footer-proposal{font-size:20px!important;max-width:245px}
.lr110-footer-divider{display:block;width:100%;height:1px;margin:8px 0 3px;background:linear-gradient(90deg,rgba(215,177,95,.42),transparent)}
.lr110-footer .lr53-footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:24px 0 0;border-top:1px solid rgba(215,177,95,.30);font-size:13px;color:rgba(215,177,95,.76)}
.lr110-footer-social{display:flex;align-items:center;justify-content:flex-end;gap:24px;flex-wrap:wrap}
.lr110-footer-social a{font-family:Montserrat,sans-serif!important;font-size:12px!important;letter-spacing:.03em;color:rgba(215,177,95,.78)!important}
@media (max-width:1080px){
  .lr110-footer .lr53-footer-grid{grid-template-columns:1.15fr 1fr 1fr;gap:38px}
  .lr110-footer-contact{grid-column:2/4}
  .lr110-footer .lr110-footer-column{min-height:auto}
}
@media (max-width:760px){
  .lr110-footer{padding:42px 22px 22px}
  .lr110-footer .lr53-footer-rule{margin-bottom:28px}
  .lr110-footer .lr53-footer-grid{grid-template-columns:1fr;gap:34px;padding-bottom:38px}
  .lr110-footer .lr53-footer-brand{padding-right:0}
  .lr110-footer-logo{width:min(330px,100%)}
  .lr110-footer-monogram{width:72px;margin-left:12px}
  .lr110-footer .lr110-footer-column,.lr110-footer-contact{grid-column:auto;padding-left:0;border-left:0;border-top:1px solid rgba(215,177,95,.18);padding-top:28px}
  .lr110-footer .lr53-footer-brand p{font-size:15px;margin-top:24px}
  .lr110-footer h2{margin-bottom:24px}
  .lr110-footer .lr53-footer-bottom{flex-direction:column;align-items:flex-start;gap:18px}
  .lr110-footer-social{justify-content:flex-start;gap:16px 20px}
}

/* V111 — Harmonisation photographique et netteté */

/* V112 — Footer mobile corrigé : identité centrée, monogramme non rogné */
@media (max-width: 820px){
  .lr110-footer{
    padding: 28px 24px 24px;
    background:
      radial-gradient(circle at 50% 4%, rgba(215,177,95,.055), transparent 36%),
      linear-gradient(180deg,#073326 0%,#062d22 100%);
  }
  .lr110-footer .lr53-footer-rule{margin:0 0 26px;height:20px}
  .lr110-footer .lr53-footer-grid{gap:0;padding-bottom:26px;text-align:center}
  .lr110-footer .lr53-footer-brand{padding:0 0 30px;border:0}
  .lr110-footer-logo{
    width:100%;
    max-width:620px;
    margin:0 auto;
    display:flex;
    flex-direction:column;
    align-items:center;
    overflow:visible;
  }
  .lr110-footer-monogram{
    display:block;
    width:112px;
    max-width:28vw;
    height:auto;
    margin:0 auto 18px;
    object-fit:contain;
    object-position:center;
    transform:none;
  }
  .lr110-footer-wordmark{
    display:block;
    width:min(100%,560px);
    height:auto;
    margin:0 auto;
    object-fit:contain;
    object-position:center;
    filter:drop-shadow(0 2px 7px rgba(0,0,0,.16));
  }
  .lr110-footer .lr53-footer-brand p{
    max-width:620px;
    margin:28px auto 0;
    padding:0 8px;
    font-size:16px;
    line-height:1.72;
    text-align:center;
    color:rgba(238,229,211,.9);
  }
  .lr110-footer .lr110-footer-column,
  .lr110-footer .lr110-footer-contact{
    grid-column:auto;
    padding:31px 0 30px;
    border-left:0;
    border-top:1px solid rgba(215,177,95,.26);
    text-align:center;
  }
  .lr110-footer h2{
    display:inline-block;
    margin:0 auto 25px;
    padding-bottom:14px;
    font-size:20px;
    letter-spacing:.13em;
    text-align:center;
  }
  .lr110-footer h2:after{left:50%;transform:translateX(-50%);width:44px}
  .lr110-footer nav,
  .lr110-footer .lr53-footer-contact{
    justify-items:center;
    gap:15px;
  }
  .lr110-footer a{
    font-size:19px;
    line-height:1.3;
    text-align:center;
  }
  .lr110-footer a:hover{transform:none}
  .lr110-footer-proposal{max-width:100%;font-size:19px!important}
  .lr110-footer-divider{width:min(280px,72%);margin:8px auto 4px}
  .lr110-footer .lr53-footer-bottom{
    align-items:center;
    text-align:center;
    gap:20px;
    padding-top:24px;
  }
  .lr110-footer-social{justify-content:center;gap:14px 20px}
}

@media (max-width: 430px){
  .lr110-footer{padding-left:18px;padding-right:18px}
  .lr110-footer-monogram{width:96px;max-width:30vw;margin-bottom:14px}
  .lr110-footer-wordmark{width:100%}
  .lr110-footer .lr53-footer-brand p{font-size:15px;line-height:1.65;padding:0}
  .lr110-footer h2{font-size:18px}
  .lr110-footer a{font-size:18px}
}


/* ==========================================================
   V113 — FOOTER RESPONSIVE STABILISÉ + ANTI-DÉBORDEMENT
   Corrige le cache V110 encore utilisé par la V112 et force
   une géométrie fiable à toutes les largeurs d’écran.
   ========================================================== */
.lr110-footer,
.lr110-footer *{
  box-sizing:border-box;
}
.lr110-footer{
  display:block;
  width:100%;
  max-width:100%;
  overflow-x:clip;
}
.lr110-footer .lr53-footer-inner,
.lr110-footer .lr53-footer-grid,
.lr110-footer .lr53-footer-bottom{
  width:100%;
  max-width:100%;
}
.lr110-footer .lr53-footer-grid>*{
  min-width:0;
  max-width:100%;
}
.lr110-footer-logo,
.lr110-footer-monogram,
.lr110-footer-wordmark{
  max-width:100%;
}
.lr110-footer a,
.lr110-footer .lr53-footer-bottom span{
  overflow-wrap:break-word;
  word-break:normal;
}
.lr110-footer a[href^="mailto:"]{
  font-family:Montserrat,sans-serif!important;
  font-size:14px!important;
  letter-spacing:-.015em;
  line-height:1.45;
}

/* Grand ordinateur : quatre colonnes, mais sans compression. */
@media (min-width:1181px){
  .lr110-footer .lr53-footer-grid{
    grid-template-columns:minmax(300px,1.32fr) minmax(160px,.76fr) minmax(190px,.92fr) minmax(230px,1fr);
    gap:clamp(30px,3vw,50px);
  }
  .lr110-footer .lr110-footer-column{
    padding-left:clamp(24px,2.2vw,34px);
  }
}

/* Ordinateur compact et tablette horizontale : vraie grille 2 × 2. */
@media (min-width:821px) and (max-width:1180px){
  .lr110-footer{
    padding:48px clamp(26px,4vw,44px) 24px;
  }
  .lr110-footer .lr53-footer-inner{
    max-width:960px;
  }
  .lr110-footer .lr53-footer-grid{
    grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
    gap:38px 48px;
    padding-bottom:44px;
  }
  .lr110-footer .lr53-footer-brand{
    padding:0;
  }
  .lr110-footer-logo{
    width:min(390px,100%);
  }
  .lr110-footer .lr110-footer-column,
  .lr110-footer .lr110-footer-contact{
    grid-column:auto;
    min-height:0;
    padding:0 0 0 34px;
    border-top:0;
    border-left:1px solid rgba(215,177,95,.22);
  }
  .lr110-footer .lr53-footer-grid>.lr110-footer-column:nth-child(3){
    padding:30px 0 0;
    border-left:0;
    border-top:1px solid rgba(215,177,95,.22);
  }
  .lr110-footer .lr53-footer-grid>.lr110-footer-contact{
    padding-top:30px;
    border-top:1px solid rgba(215,177,95,.22);
  }
  .lr110-footer .lr53-footer-bottom{
    flex-wrap:wrap;
  }
  .lr110-footer-social{
    justify-content:flex-end;
  }
}

/* Mobile et tablette verticale : une seule colonne explicite. */
@media (max-width:820px){
  .lr110-footer{
    padding:34px 18px 22px;
  }
  .lr110-footer .lr53-footer-inner{
    max-width:620px;
  }
  .lr110-footer .lr53-footer-grid{
    grid-template-columns:minmax(0,1fr)!important;
    gap:0!important;
  }
  .lr110-footer .lr53-footer-brand,
  .lr110-footer .lr110-footer-column,
  .lr110-footer .lr110-footer-contact{
    width:100%;
    max-width:100%;
  }
  .lr110-footer-logo{
    width:min(390px,100%);
    max-width:100%;
  }
  .lr110-footer-monogram{
    width:92px;
    max-width:26vw;
  }
  .lr110-footer-wordmark{
    width:100%;
    max-width:390px;
  }
  .lr110-footer .lr53-footer-brand p{
    max-width:540px;
  }
  .lr110-footer .lr53-footer-bottom{
    width:100%;
    flex-direction:column;
    align-items:center;
    justify-content:center;
  }
  .lr110-footer-social{
    width:100%;
    justify-content:center;
  }
}

@media (max-width:430px){
  .lr110-footer{
    padding-left:16px;
    padding-right:16px;
  }
  .lr110-footer-monogram{
    width:82px;
    max-width:25vw;
  }
  .lr110-footer-wordmark{
    width:min(100%,350px);
  }
  .lr110-footer a[href^="mailto:"]{
    font-size:13px!important;
  }
  .lr110-footer-social{
    gap:12px 16px;
  }
}


/* ==========================================================
   V114 — C&L CENTRÉ DANS LE FOOTER
   Conserve intégralement la V113 et centre le monogramme
   au-dessus du nom de marque, sur ordinateur comme sur mobile.
   ========================================================== */
.lr110-footer-monogram{
  margin-left:auto!important;
  margin-right:auto!important;
}

/* ==========================================================
   V115 — ARTICLE PLAGES PORTICCIO & ALBITRECCIA
   ========================================================== */
.v115-beaches-article .travel-hero>img{object-position:center 56%}
.v115-beach-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:42px 0 64px;padding:12px;background:#f4efe6;border:1px solid rgba(153,125,75,.18);border-radius:22px}
.v115-beach-summary a{display:flex;align-items:center;gap:11px;min-height:66px;padding:15px 16px;border-radius:15px;background:#fff;color:#193b34!important;text-decoration:none!important;font:700 .83rem/1.35 Montserrat,sans-serif;transition:transform .2s ease,box-shadow .2s ease}
.v115-beach-summary a:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(29,48,39,.09)}
.v115-beach-summary span{font-family:"Cormorant Garamond",serif;font-size:1.6rem;color:#a07d47}
.v115-beach-stop{display:grid;grid-template-columns:92px minmax(0,1fr);gap:30px;padding:58px 0;border-top:1px solid rgba(153,125,75,.24);scroll-margin-top:110px}
.v115-beach-stop:first-of-type{border-top:0}
.v115-beach-number{font-family:"Cormorant Garamond",serif;font-size:4.8rem;line-height:.8;color:rgba(160,125,71,.42)}
.v115-beach-stop h2{margin:.08em 0 .03em;font-size:clamp(2.8rem,5vw,4.5rem);line-height:.98;color:#193b34}
.v115-beach-stop h3{margin:.35em 0 1.05em;font:700 .92rem/1.5 Montserrat,sans-serif;letter-spacing:.045em;color:#796c59}
.v115-we-love{display:grid;grid-template-columns:minmax(120px,.27fr) minmax(0,1fr);gap:18px;margin-top:28px;padding:22px 24px;border-left:4px solid #b38c50;background:#f8f4ec;border-radius:0 16px 16px 0}
.v115-we-love strong{color:#193b34;font:800 .73rem/1.4 Montserrat,sans-serif;letter-spacing:.09em;text-transform:uppercase}
.v115-we-love span{font-size:.98rem;line-height:1.65;color:#55584f}
.v115-choice{margin:54px 0;padding:46px;border-radius:28px;background:#173f35;color:#fff}
.v115-choice .eyebrow,.v115-choice h2{color:#fff}
.v115-choice h2{margin:.15em 0 .55em;font-size:clamp(2.7rem,4.6vw,4.3rem);line-height:.98}
.v115-choice>p:last-child{margin:26px 0 0;color:rgba(255,255,255,.83)}
.v115-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin:30px 0 0}
.v115-choice-grid article{padding:22px;border:1px solid rgba(255,255,255,.17);border-radius:17px;background:rgba(255,255,255,.075)}
.v115-choice-grid strong{display:block;margin-bottom:7px;font-family:"Cormorant Garamond",serif;font-size:1.75rem;color:#e0bd78}
.v115-choice-grid p{margin:0!important;color:rgba(255,255,255,.82)}
.v115-stay{padding:64px 0 30px}
.v115-stay h2{margin:.15em 0 .5em;font-size:clamp(2.8rem,4.8vw,4.4rem);line-height:.98;color:#193b34}
.v115-stay-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:32px 0 28px}
.v115-stay-grid a{display:flex;flex-direction:column;min-height:280px;padding:30px;border:1px solid rgba(153,125,75,.22);border-radius:22px;background:#fff;color:inherit!important;text-decoration:none!important;box-shadow:0 16px 40px rgba(29,44,36,.07);transition:transform .22s ease,box-shadow .22s ease}
.v115-stay-grid a:hover{transform:translateY(-3px);box-shadow:0 22px 50px rgba(29,44,36,.12)}
.v115-stay-grid span{font:800 .67rem/1.3 Montserrat,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#a07d47}
.v115-stay-grid h3{margin:.42em 0 .28em;font-size:2.5rem;line-height:1;color:#193b34}
.v115-stay-grid p{margin:0 0 24px!important;color:#5f6059}
.v115-stay-grid em{margin-top:auto;font:800 .68rem/1.3 Montserrat,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#0d4a3d;font-style:normal}
.v115-signature-line{max-width:720px;margin:0 auto!important;text-align:center;font-family:"Cormorant Garamond",serif;font-size:1.55rem!important;line-height:1.45!important;color:#193b34}
.v115-sources{margin:48px 0 22px;padding:24px 26px;border:1px solid rgba(153,125,75,.22);border-radius:18px;background:#f7f4ee}
.v115-sources strong{display:block;margin-bottom:7px;color:#193b34}
.v115-sources p{margin:0!important;font-size:.92rem;line-height:1.65;color:#68645d}
.v115-sources a{color:#0d4a3d!important;text-decoration:underline;text-underline-offset:4px}
.v115-article-actions{margin-top:34px}
@media(max-width:820px){
  .v115-beach-summary{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:48px}
  .v115-beach-stop{grid-template-columns:62px minmax(0,1fr);gap:18px;padding:46px 0}
  .v115-beach-number{font-size:3.8rem}
  .v115-choice{padding:36px 28px}
}
@media(max-width:620px){
  .v115-beaches-article .travel-hero-overlay h1{font-size:clamp(2.65rem,12.5vw,4rem)}
  .v115-beach-summary{grid-template-columns:1fr;padding:9px;border-radius:17px}
  .v115-beach-summary a{min-height:58px}
  .v115-beach-stop{grid-template-columns:1fr;gap:10px;padding:42px 0}
  .v115-beach-number{font-size:3.2rem}
  .v115-beach-stop h2{font-size:2.8rem}
  .v115-beach-stop h3{font-size:.82rem}
  .v115-we-love{grid-template-columns:1fr;gap:7px;padding:20px}
  .v115-choice{margin-left:-8px;margin-right:-8px;padding:32px 22px;border-radius:22px}
  .v115-choice-grid,.v115-stay-grid{grid-template-columns:1fr}
  .v115-stay-grid a{min-height:245px;padding:25px}
  .v115-article-actions{align-items:stretch}
  .v115-article-actions .lr-btn{width:100%;text-align:center}
}
@media(prefers-reduced-motion:reduce){.v115-beach-summary a,.v115-stay-grid a{transition:none!important}.v115-beach-summary a:hover,.v115-stay-grid a:hover{transform:none!important}}



/* ==========================================================
   V116 — ARTICLE PLAGES : ÉCHELLE MOBILE PLUS ÉLÉGANTE
   Correction ciblée uniquement sous 620 px.
   ========================================================== */
@media(max-width:620px){
  .v115-beaches-article .v115-choice{
    margin-top:42px;
    margin-bottom:42px;
    margin-left:-4px;
    margin-right:-4px;
    padding:26px 18px 28px;
    border-radius:20px;
  }
  .v115-beaches-article .v115-choice h2{
    margin:.12em 0 .5em;
    font-size:2.25rem;
    line-height:1.02;
  }
  .v115-beaches-article .v115-choice-grid{
    gap:10px;
    margin-top:22px;
  }
  .v115-beaches-article .v115-choice-grid article{
    padding:18px 18px 17px;
    border-radius:15px;
  }
  .v115-beaches-article .v115-choice-grid strong{
    margin-bottom:5px;
    font-size:1.55rem;
    line-height:1.08;
  }
  .v115-beaches-article .v115-choice-grid p,
  .v115-beaches-article .v115-choice>p:last-child{
    font-size:1.05rem!important;
    line-height:1.55!important;
  }
  .v115-beaches-article .v115-choice>p:last-child{
    margin-top:22px!important;
  }
  .v115-beaches-article .v115-beach-stop h2{
    font-size:2.5rem;
  }
  .v115-beaches-article .v115-beach-stop p{
    font-size:1.05rem;
    line-height:1.68;
  }
  .v115-beaches-article .v115-we-love span{
    font-size:.96rem;
    line-height:1.58;
  }
}

/* ==========================================================
   V117 — PHOTOS DES DEUX VILLAS DANS L’ARTICLE PLAGES
   Cartes plus compactes, images visibles et hiérarchie mobile corrigée.
   ========================================================== */
.v115-beaches-article .v115-stay-grid .v117-stay-card{
  min-height:0;
  padding:0;
  overflow:hidden;
}
.v117-stay-photo{
  position:relative;
  width:100%;
  aspect-ratio:16/10;
  margin:0;
  overflow:hidden;
  background:#eee9df;
}
.v117-stay-photo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .45s ease;
}
.v117-stay-porticcio .v117-stay-photo img{object-position:center 55%}
.v117-stay-albitreccia .v117-stay-photo img{object-position:center 56%}
.v117-stay-copy{
  display:flex;
  flex:1;
  flex-direction:column;
  padding:26px 28px 28px;
}
.v115-stay-grid .v117-stay-card:hover .v117-stay-photo img{transform:scale(1.025)}
.v115-stay-grid .v117-stay-card h3{font-size:2.25rem}
.v115-stay-grid .v117-stay-card p{font-size:.98rem;line-height:1.65}
@media(max-width:620px){
  .v115-beaches-article .v115-stay{padding:48px 0 24px}
  .v115-beaches-article .v115-stay h2{font-size:2.45rem;line-height:1.02}
  .v115-beaches-article .v115-stay-grid{gap:18px;margin-top:26px}
  .v115-beaches-article .v115-stay-grid .v117-stay-card{min-height:0;padding:0}
  .v117-stay-photo{aspect-ratio:16/10}
  .v117-stay-copy{padding:22px 22px 24px}
  .v115-stay-grid .v117-stay-card h3{margin:.38em 0 .25em;font-size:2.1rem;line-height:1.02}
  .v115-stay-grid .v117-stay-card p{margin-bottom:18px!important;font-size:1rem;line-height:1.58}
  .v115-stay-grid .v117-stay-card em{font-size:.66rem}
  .v115-beaches-article .v115-signature-line{font-size:1.38rem!important;line-height:1.38!important}
}
@media(prefers-reduced-motion:reduce){
  .v117-stay-photo img{transition:none!important}
  .v115-stay-grid .v117-stay-card:hover .v117-stay-photo img{transform:none!important}
}

/* ==========================================================
   V118 — GUIDE « QUE FAIRE À PORTICCIO ? »
   Ajout éditorial ciblé : article, sommaire, expériences et lien
   depuis Les Adresses. Aucun style validé du reste du site n'est modifié.
   ========================================================== */
.v118-featured-guide{padding:18px 0 72px;background:#f6f1e8}
.v118-featured-guide a{display:grid;grid-template-columns:minmax(260px,.82fr) minmax(0,1.18fr);min-height:310px;overflow:hidden;border:1px solid rgba(151,119,65,.22);border-radius:28px;background:#173f35;color:#fff!important;text-decoration:none!important;box-shadow:0 24px 62px rgba(29,44,36,.14);transition:transform .24s ease,box-shadow .24s ease}
.v118-featured-guide figure{min-height:310px;margin:0;overflow:hidden}
.v118-featured-guide img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 54%;transition:transform .55s ease}
.v118-featured-guide a>div{display:flex;flex-direction:column;justify-content:center;padding:46px 52px}
.v118-featured-guide .eyebrow{margin-bottom:8px;color:#e0bd78}
.v118-featured-guide h2{margin:.08em 0 .2em;font-size:clamp(2.8rem,4.5vw,4.5rem);line-height:.95;color:#fff}
.v118-featured-guide p:not(.eyebrow){max-width:650px;margin:0 0 25px;color:rgba(255,255,255,.8);font-size:1.03rem;line-height:1.7}
.v118-featured-guide span{font:800 .7rem/1.35 Montserrat,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#e0bd78}
.v118-featured-guide a:hover{transform:translateY(-3px);box-shadow:0 30px 72px rgba(29,44,36,.2)}
.v118-featured-guide a:hover img{transform:scale(1.025)}

.v118-porticcio-article .travel-hero>img{object-position:center 54%}
.v118-porticcio-article .travel-hero-overlay{max-width:980px}
.v118-porticcio-article .travel-hero-overlay h1{max-width:950px}
.v118-porticcio-article .v118-opening{font-family:"Cormorant Garamond",serif;font-size:1.7rem;line-height:1.42;color:#193b34}
.v118-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:42px 0 66px;padding:12px;border:1px solid rgba(153,125,75,.18);border-radius:22px;background:#f4efe6}
.v118-summary a{display:flex;align-items:center;gap:13px;min-height:64px;padding:15px 17px;border-radius:15px;background:#fff;color:#193b34!important;text-decoration:none!important;font:700 .8rem/1.38 Montserrat,sans-serif;transition:transform .2s ease,box-shadow .2s ease}
.v118-summary a:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(29,48,39,.09)}
.v118-summary span{min-width:33px;font-family:"Cormorant Garamond",serif;font-size:1.55rem;color:#a07d47}
.v118-experience{display:grid;grid-template-columns:74px minmax(0,1fr);gap:28px;padding:60px 0;border-top:1px solid rgba(153,125,75,.24);scroll-margin-top:110px}
.v118-experience:first-of-type{border-top:0}
.v118-experience-number{font-family:"Cormorant Garamond",serif;font-size:4.7rem;line-height:.82;color:rgba(160,125,71,.4)}
.v118-experience-copy h2{margin:.08em 0 .38em;font-size:clamp(2.65rem,4.6vw,4.1rem);line-height:.98;color:#193b34}
.v118-experience-copy>p:not(.eyebrow){font-size:1.02rem;line-height:1.82;color:#52584f}
.v118-experience-copy a{color:#0d4a3d!important;text-decoration:underline;text-decoration-color:rgba(160,125,71,.55);text-underline-offset:4px}
.v118-tip{display:grid;grid-template-columns:minmax(120px,.25fr) minmax(0,1fr);gap:18px;margin-top:27px;padding:21px 23px;border-left:4px solid #b38c50;border-radius:0 16px 16px 0;background:#f8f4ec}
.v118-tip strong{color:#193b34;font:800 .71rem/1.4 Montserrat,sans-serif;letter-spacing:.09em;text-transform:uppercase}
.v118-tip span{font-size:.95rem;line-height:1.65;color:#5a5d55}
.v118-experience-with-media{grid-template-columns:74px minmax(0,1.12fr) minmax(260px,.88fr);align-items:start}
.v118-experience-media{position:sticky;top:110px;margin:7px 0 0;overflow:hidden;border-radius:22px;background:#eee9df;box-shadow:0 17px 44px rgba(29,44,36,.1)}
.v118-experience-media img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}
.v118-experience-media figcaption{padding:14px 17px;background:#fff;color:#6d685f;font-size:.75rem;line-height:1.5}
.v118-plan{margin:58px 0;padding:46px;border-radius:28px;background:#173f35;color:#fff}
.v118-plan .eyebrow,.v118-plan h2{color:#fff}
.v118-plan h2{margin:.15em 0 .52em;font-size:clamp(2.7rem,4.5vw,4.2rem);line-height:.98}
.v118-plan>p:last-child{margin:26px 0 0;color:rgba(255,255,255,.78)}
.v118-plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:28px}
.v118-plan-grid article{padding:23px 21px;border:1px solid rgba(255,255,255,.17);border-radius:17px;background:rgba(255,255,255,.07)}
.v118-plan-grid strong{display:block;margin-bottom:8px;font-family:"Cormorant Garamond",serif;font-size:1.85rem;color:#e0bd78}
.v118-plan-grid p{margin:0!important;color:rgba(255,255,255,.82);font-size:.93rem!important;line-height:1.62!important}
.v118-stay{padding:60px 0 32px}
.v118-stay h2{margin:.15em 0 .48em;font-size:clamp(2.8rem,4.8vw,4.4rem);line-height:.98;color:#193b34}
.v118-porticcio-article .v118-stay .v117-stay-card{min-height:0;padding:0;overflow:hidden}
.v118-faq{padding:52px 0 24px}
.v118-faq h2{margin:.15em 0 .48em;font-size:clamp(2.8rem,4.7vw,4.25rem);line-height:.98;color:#193b34}
.v118-sources{margin:48px 0 22px;padding:24px 26px;border:1px solid rgba(153,125,75,.22);border-radius:18px;background:#f7f4ee}
.v118-sources strong{display:block;margin-bottom:7px;color:#193b34}
.v118-sources p{margin:0!important;font-size:.92rem;line-height:1.65;color:#68645d}
.v118-sources a{color:#0d4a3d!important;text-decoration:underline;text-underline-offset:4px}
.v118-article-actions{margin-top:34px}

@media(max-width:900px){
  .v118-experience-with-media{grid-template-columns:64px minmax(0,1fr)}
  .v118-experience-with-media .v118-experience-media{position:relative;top:auto;grid-column:2;max-width:620px;margin-top:8px}
  .v118-experience-media img{aspect-ratio:16/10}
  .v118-plan-grid{grid-template-columns:1fr}
}
@media(max-width:720px){
  .v118-featured-guide{padding:8px 0 54px}
  .v118-featured-guide a{grid-template-columns:1fr;min-height:0;border-radius:22px}
  .v118-featured-guide figure{min-height:0;aspect-ratio:16/10}
  .v118-featured-guide a>div{padding:30px 27px 34px}
  .v118-summary{grid-template-columns:1fr;margin-bottom:48px;padding:9px;border-radius:17px}
  .v118-summary a{min-height:58px}
  .v118-experience,.v118-experience-with-media{grid-template-columns:1fr;gap:10px;padding:45px 0}
  .v118-experience-number{font-size:3.25rem}
  .v118-experience-with-media .v118-experience-media{grid-column:1;width:100%;margin-top:12px}
  .v118-tip{grid-template-columns:1fr;gap:7px;padding:20px}
}
@media(max-width:620px){
  .v118-porticcio-article .travel-hero-overlay h1{font-size:clamp(2.4rem,11.5vw,3.6rem);line-height:.98}
  .v118-porticcio-article .v118-opening{font-size:1.46rem;line-height:1.42}
  .v118-experience-copy h2{font-size:2.42rem;line-height:1.01}
  .v118-experience-copy>p:not(.eyebrow){font-size:1.03rem;line-height:1.69}
  .v118-experience-media{border-radius:18px}
  .v118-plan{margin-left:-4px;margin-right:-4px;padding:29px 20px 31px;border-radius:21px}
  .v118-plan h2{font-size:2.35rem}
  .v118-stay{padding:46px 0 24px}
  .v118-stay h2,.v118-faq h2{font-size:2.45rem;line-height:1.02}
  .v118-porticcio-article .v115-stay-grid{grid-template-columns:1fr;gap:18px}
  .v118-porticcio-article .v117-stay-copy{padding:22px 22px 24px}
  .v118-article-actions{align-items:stretch}
  .v118-article-actions .lr-btn{width:100%;text-align:center}
}
@media(prefers-reduced-motion:reduce){
  .v118-featured-guide a,.v118-featured-guide img,.v118-summary a{transition:none!important}
  .v118-featured-guide a:hover,.v118-featured-guide a:hover img,.v118-summary a:hover{transform:none!important}
}

/* ==========================================================
   V119 — PHOTOS VILLA MER & TENNIS
   Cadrage ciblé du nouveau panorama nocturne.
   ========================================================== */
.lr28 .gallery .v119-night-panorama{
  grid-column:1/-1!important;
}
.lr28 .gallery .v119-night-panorama img{
  width:100%;
  height:auto!important;
  aspect-ratio:21/9;
  object-fit:cover;
  object-position:center center;
}
@media(max-width:700px){
  .lr28 .gallery .v119-night-panorama img{aspect-ratio:16/9}
}

/* ==========================================================
   V120 — LISIBILITÉ DU HERO « QUE FAIRE À PORTICCIO ? »
   Correction ciblée du contraste des deux petits textes.
   ========================================================== */
.v118-porticcio-article .travel-hero:after{
  background:linear-gradient(
    180deg,
    rgba(5,28,23,.22) 0%,
    rgba(5,28,23,.34) 38%,
    rgba(4,22,18,.88) 100%
  )!important;
}
.v118-porticcio-article .travel-hero-overlay .eyebrow{
  color:#f3d79b!important;
  opacity:1!important;
  font-size:clamp(.78rem,1.05vw,.88rem)!important;
  line-height:1.45!important;
  text-shadow:0 2px 14px rgba(0,0,0,.82);
}
.v118-porticcio-article .travel-hero-overlay h1{
  text-shadow:0 3px 22px rgba(0,0,0,.48);
}
.v118-porticcio-article .travel-hero-overlay>p:last-child{
  color:#fff!important;
  opacity:1!important;
  font-weight:500!important;
  line-height:1.55!important;
  text-shadow:0 2px 16px rgba(0,0,0,.92);
}

/* ==========================================================
   V121 — ÉDITION ÉLÉGANTE : IDENTITÉ & GUIDE PORTICCIO
   Logo horizontal lisible, hero éditorial et encart Carnet robuste.
   ========================================================== */

/* Pages intérieures : signature dorée sur un bandeau vert profond. */
body:not(.home) #header{
  position:relative!important;
  z-index:9999!important;
}
body:not(.home) #header [data-device="desktop"] [data-row="middle"],
body:not(.home) #header [data-device="mobile"] [data-row="middle"]{
  background:#123f35!important;
  border-bottom:1px solid rgba(218,181,111,.42)!important;
  box-shadow:0 8px 24px rgba(12,35,29,.08)!important;
}
body:not(.home) #header [data-row="middle"]>.ct-container{
  min-height:104px!important;
  padding-left:clamp(18px,3vw,46px)!important;
  padding-right:clamp(18px,3vw,46px)!important;
}
body:not(.home) #header [data-id="logo"],
body:not(.home) #header [data-id="logo"] .site-logo-container,
body:not(.home) #header .site-branding,
body:not(.home) #header .custom-logo-link{
  width:auto!important;
  min-width:290px!important;
  max-width:290px!important;
  min-height:0!important;
  max-height:82px!important;
  padding:0!important;
  overflow:visible!important;
}
body:not(.home) #header [data-id="logo"] .site-logo-container img,
body:not(.home) #header [data-id="logo"] .site-logo-container img.default-logo,
body:not(.home) #header [data-id="logo"] .custom-logo,
body:not(.home) #header [data-id="logo"] img{
  display:block!important;
  width:290px!important;
  max-width:290px!important;
  height:auto!important;
  max-height:82px!important;
  object-fit:contain!important;
  object-position:left center!important;
}
body:not(.home) #header .header-menu-1 .ct-menu-link{
  color:#f7f0e4!important;
  font-size:.72rem!important;
  font-weight:600!important;
  letter-spacing:.065em!important;
}
body:not(.home) #header .header-menu-1 .menu-item:hover>.ct-menu-link,
body:not(.home) #header .header-menu-1 .current-menu-item>.ct-menu-link,
body:not(.home) #header .header-menu-1 .current_page_item>.ct-menu-link{
  color:#e6c47e!important;
}
body:not(.home) #header .ct-header-search,
body:not(.home) #header .ct-header-account,
body:not(.home) #header .ct-header-trigger{
  color:#f2dfb4!important;
  --theme-icon-color:#f2dfb4!important;
}
body:not(.home) #header .ct-header-search .ct-icon,
body:not(.home) #header .ct-header-account .ct-icon,
body:not(.home) #header .ct-header-trigger .ct-icon{
  fill:currentColor!important;
}

/* Ouverture du guide : composition résidentielle, sans effet d'affiche. */
.v121-guide-hero{
  padding:34px 0 70px;
  background:linear-gradient(180deg,#f6f1e8 0%,#fff 100%);
}
.v121-guide-hero-card{
  display:grid;
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
  min-height:560px;
  overflow:hidden;
  border:1px solid rgba(151,119,65,.22);
  border-radius:3px;
  background:#fbf8f2;
  box-shadow:0 26px 68px rgba(29,44,36,.12);
}
.v121-guide-hero-copy{
  position:relative;
  z-index:1;
  align-self:center;
  padding:clamp(46px,5.4vw,76px);
}
.v121-guide-hero-copy .eyebrow{
  max-width:430px;
  margin-bottom:22px;
  color:#9a7640;
  font-size:.72rem;
  line-height:1.55;
  letter-spacing:.19em;
}
.v121-guide-hero-copy h1{
  max-width:520px;
  color:#173f35;
  font-size:clamp(3.25rem,5.2vw,4.75rem);
  font-weight:600;
  line-height:.93;
  letter-spacing:-.025em;
}
.v121-guide-hero-copy h1 span{
  display:block;
  margin-top:.34em;
  color:#384a43;
  font-size:.52em;
  font-weight:500;
  line-height:1.12;
  letter-spacing:-.012em;
}
.v121-guide-hero-copy>p:not(.eyebrow){
  max-width:450px;
  margin-top:28px;
  color:#5d625d;
  font-size:1rem;
  line-height:1.75;
}
.v121-guide-hero-signature{
  width:92px;
  height:1px;
  margin-top:34px;
  background:#b58c4d;
}
.v121-guide-hero figure{
  position:relative;
  min-width:0;
  min-height:560px;
  margin:0;
  overflow:hidden;
  background:#173f35;
}
.v121-guide-hero figure:after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(14,44,37,.16),transparent 34%),linear-gradient(180deg,transparent 60%,rgba(7,24,20,.2));
}
.v121-guide-hero figure img{
  width:100%;
  height:100%;
  min-height:560px;
  object-fit:cover;
  object-position:center center;
  filter:saturate(.92) contrast(1.03);
}

/* Lien éditorial depuis Les Adresses : HTML valide et lecture maîtrisée. */
.v121-featured-guide{
  padding:24px 0 78px;
  background:#f6f1e8;
}
.v121-featured-guide-card{
  display:grid;
  grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);
  min-height:390px;
  overflow:hidden;
  border:1px solid rgba(151,119,65,.2);
  border-radius:18px;
  background:#fffdf9;
  box-shadow:0 22px 56px rgba(29,44,36,.1);
}
.v121-featured-guide-card figure{
  min-width:0;
  min-height:390px;
  margin:0;
  overflow:hidden;
  background:#173f35;
}
.v121-featured-guide-card figure a{
  display:block;
  width:100%;
  height:100%;
}
.v121-featured-guide-card figure img{
  display:block;
  width:100%;
  height:100%;
  min-height:390px;
  object-fit:cover;
  object-position:center center;
  transition:transform .55s ease;
}
.v121-featured-guide-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  padding:52px 48px;
}
.v121-featured-guide-copy .eyebrow{
  margin-bottom:14px;
  color:#9a7640;
  font-size:.7rem;
  letter-spacing:.18em;
}
.v121-featured-guide-copy h2{
  margin:0 0 18px;
  font-size:clamp(2.9rem,4.3vw,4.15rem);
  font-weight:600;
  line-height:.96;
}
.v121-featured-guide-copy h2 a{
  color:#173f35!important;
  text-decoration:none!important;
}
.v121-featured-guide-copy>p:not(.eyebrow){
  max-width:470px;
  margin:0;
  color:#61655f;
  font-size:.98rem;
  line-height:1.72;
}
.v121-featured-guide-link{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin-top:26px;
  padding-bottom:5px;
  border-bottom:1px solid rgba(154,118,64,.62);
  color:#7f6134!important;
  font:800 .7rem/1.4 Montserrat,sans-serif;
  letter-spacing:.12em;
  text-transform:uppercase;
  text-decoration:none!important;
}
.v121-featured-guide-card:hover figure img{transform:scale(1.018)}

@media(max-width:1024px){
  body:not(.home) #header [data-row="middle"]>.ct-container{
    min-height:88px!important;
    padding-left:18px!important;
    padding-right:18px!important;
  }
  body:not(.home) #header [data-id="logo"],
  body:not(.home) #header [data-id="logo"] .site-logo-container,
  body:not(.home) #header .site-branding,
  body:not(.home) #header .custom-logo-link{
    min-width:228px!important;
    max-width:228px!important;
    max-height:64px!important;
  }
  body:not(.home) #header [data-id="logo"] .site-logo-container img,
  body:not(.home) #header [data-id="logo"] .site-logo-container img.default-logo,
  body:not(.home) #header [data-id="logo"] .custom-logo,
  body:not(.home) #header [data-id="logo"] img{
    width:228px!important;
    max-width:228px!important;
    max-height:63px!important;
  }
  .v121-guide-hero-card{grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr)}
  .v121-guide-hero-copy{padding:44px}
  .v121-featured-guide-card{grid-template-columns:minmax(0,1fr) minmax(330px,.9fr)}
  .v121-featured-guide-copy{padding:42px 38px}
}

@media(max-width:820px){
  .v121-guide-hero{padding:20px 0 52px}
  .v121-guide-hero-card{grid-template-columns:1fr;min-height:0}
  .v121-guide-hero figure{grid-row:1;min-height:0;aspect-ratio:16/9}
  .v121-guide-hero figure img{min-height:0;height:100%}
  .v121-guide-hero-copy{grid-row:2;padding:42px 38px 46px}
  .v121-featured-guide{padding:12px 0 58px}
  .v121-featured-guide-card{grid-template-columns:1fr;min-height:0}
  .v121-featured-guide-card figure{min-height:0;aspect-ratio:16/9}
  .v121-featured-guide-card figure img{min-height:0}
  .v121-featured-guide-copy{padding:38px 34px 42px}
}

@media(max-width:767px){
  body:not(.home) #header [data-row="middle"]>.ct-container{
    min-height:74px!important;
    padding-left:12px!important;
    padding-right:12px!important;
  }
  body:not(.home) #header [data-id="logo"],
  body:not(.home) #header [data-id="logo"] .site-logo-container,
  body:not(.home) #header .site-branding,
  body:not(.home) #header .custom-logo-link{
    min-width:190px!important;
    max-width:190px!important;
    min-height:0!important;
    max-height:54px!important;
  }
  body:not(.home) #header [data-id="logo"] .site-logo-container img,
  body:not(.home) #header [data-id="logo"] .site-logo-container img.default-logo,
  body:not(.home) #header [data-id="logo"] .custom-logo,
  body:not(.home) #header [data-id="logo"] img{
    width:190px!important;
    max-width:190px!important;
    max-height:53px!important;
  }
}

@media(max-width:520px){
  .v121-guide-hero .wrap-wide,
  .v121-featured-guide .wrap-wide{width:min(100% - 22px,1180px)}
  .v121-guide-hero-card{border-radius:2px}
  .v121-guide-hero figure{aspect-ratio:4/3}
  .v121-guide-hero-copy{padding:34px 25px 38px}
  .v121-guide-hero-copy .eyebrow{margin-bottom:17px;font-size:.66rem;line-height:1.5}
  .v121-guide-hero-copy h1{font-size:2.72rem;line-height:.95}
  .v121-guide-hero-copy h1 span{font-size:.58em;line-height:1.14}
  .v121-guide-hero-copy>p:not(.eyebrow){margin-top:22px;font-size:.96rem;line-height:1.65}
  .v121-guide-hero-signature{margin-top:27px}
  .v121-featured-guide-card{border-radius:14px}
  .v121-featured-guide-card figure{aspect-ratio:4/3}
  .v121-featured-guide-copy{padding:31px 25px 35px}
  .v121-featured-guide-copy h2{font-size:2.65rem}
  .v121-featured-guide-copy>p:not(.eyebrow){font-size:.96rem;line-height:1.65}
}

@media(prefers-reduced-motion:reduce){
  .v121-featured-guide-card figure img{transition:none!important}
  .v121-featured-guide-card:hover figure img{transform:none!important}
}

/* ==========================================================
   V122 — LOGO DES PAGES INTÉRIEURES = SIGNATURE DU FOOTER
   Les deux fichiers d'origine sont réutilisés sans recadrage :
   monogramme couronné puis signature dorée complète.
   ========================================================== */
body:not(.home) #header [data-row="middle"]>.ct-container{
  min-height:128px!important;
}
body:not(.home) #header [data-id="logo"],
body:not(.home) #header [data-id="logo"] .site-branding,
body:not(.home) #header [data-id="logo"] .site-logo-container{
  width:250px!important;
  min-width:250px!important;
  max-width:250px!important;
  height:112px!important;
  min-height:112px!important;
  max-height:112px!important;
  overflow:visible!important;
}
body:not(.home) #header [data-id="logo"] .site-logo-container{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
  padding:0!important;
}
body:not(.home) #header [data-id="logo"] .site-logo-container:before{
  content:"";
  display:block;
  flex:0 0 auto;
  width:44px;
  height:45px;
  background:url("assets/brand-monogram-gold-transparent-v113.png") center/contain no-repeat;
}
body:not(.home) #header [data-id="logo"] .site-logo-container:after{
  content:"";
  display:block;
  flex:0 0 auto;
  width:240px;
  height:68px;
  margin-top:-2px;
  background:url("assets/brand-wordmark-gold-transparent.png") center/contain no-repeat;
}
/* Le fichier configuré dans WordPress reste présent pour l'accessibilité,
   mais il ne doit plus produire le carré visible dans l'en-tête. */
body:not(.home) #header [data-id="logo"] .site-logo-container>img{
  position:absolute!important;
  width:1px!important;
  min-width:1px!important;
  max-width:1px!important;
  height:1px!important;
  min-height:1px!important;
  max-height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
}

@media(max-width:1024px){
  body:not(.home) #header [data-row="middle"]>.ct-container{
    min-height:108px!important;
  }
  body:not(.home) #header [data-id="logo"],
  body:not(.home) #header [data-id="logo"] .site-branding,
  body:not(.home) #header [data-id="logo"] .site-logo-container{
    width:214px!important;
    min-width:214px!important;
    max-width:214px!important;
    height:96px!important;
    min-height:96px!important;
    max-height:96px!important;
  }
  body:not(.home) #header [data-id="logo"] .site-logo-container:before{
    width:37px;
    height:38px;
  }
  body:not(.home) #header [data-id="logo"] .site-logo-container:after{
    width:205px;
    height:58px;
  }
}

@media(max-width:767px){
  body:not(.home) #header [data-row="middle"]>.ct-container{
    min-height:94px!important;
  }
  body:not(.home) #header [data-id="logo"],
  body:not(.home) #header [data-id="logo"] .site-branding,
  body:not(.home) #header [data-id="logo"] .site-logo-container{
    width:178px!important;
    min-width:178px!important;
    max-width:178px!important;
    height:80px!important;
    min-height:80px!important;
    max-height:80px!important;
  }
  body:not(.home) #header [data-id="logo"] .site-logo-container:before{
    width:31px;
    height:32px;
  }
  body:not(.home) #header [data-id="logo"] .site-logo-container:after{
    width:170px;
    height:48px;
    margin-top:-1px;
  }
}

/* ==========================================================
   V123 — EN-TÊTE ÉPURÉ DES PAGES INTÉRIEURES
   Suppression du bandeau vert et de la navigation : seule la
   signature dorée issue du footer reste visible sur fond clair.
   ========================================================== */
body:not(.home) #header [data-device="desktop"] [data-row="middle"],
body:not(.home) #header [data-device="mobile"] [data-row="middle"]{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body:not(.home) #header [data-row="middle"]>.ct-container{
  justify-content:flex-start!important;
}
body:not(.home) #header [data-row="middle"] [data-column="middle"],
body:not(.home) #header [data-row="middle"] [data-column="end"],
body:not(.home) #header [data-id="menu"],
body:not(.home) #header .header-menu-1,
body:not(.home) #header .ct-header-text,
body:not(.home) #header .ct-header-search,
body:not(.home) #header .ct-header-account,
body:not(.home) #header .ct-header-trigger{
  display:none!important;
}
body:not(.home) #header [data-row="middle"] [data-column="start"]{
  display:flex!important;
  flex:0 0 auto!important;
  justify-content:flex-start!important;
}
body:not(.home) #header [data-id="logo"] .site-logo-container:before,
body:not(.home) #header [data-id="logo"] .site-logo-container:after{
  filter:drop-shadow(0 1px 0 rgba(18,63,53,.22));
}

/* ==========================================================
   V124 — LOGO PLUS NET, PLUS DENSE ET JAMAIS ROGNÉ
   L'image d'origine touche presque ses bords : le cadre est
   élargi et le visuel légèrement rentré pour lui redonner de l'air.
   ========================================================== */
body:not(.home) #header [data-device="desktop"] [data-row="middle"],
body:not(.home) #header [data-device="mobile"] [data-row="middle"],
body:not(.home) #header [data-row="middle"]>.ct-container,
body:not(.home) #header [data-row="middle"] [data-column="start"],
body:not(.home) #header [data-id="logo"],
body:not(.home) #header [data-id="logo"] .site-branding,
body:not(.home) #header [data-id="logo"] .site-logo-container{
  overflow:visible!important;
}
body:not(.home) #header [data-row="middle"]>.ct-container{
  min-height:134px!important;
}
body:not(.home) #header [data-id="logo"],
body:not(.home) #header [data-id="logo"] .site-branding,
body:not(.home) #header [data-id="logo"] .site-logo-container{
  width:276px!important;
  min-width:276px!important;
  max-width:276px!important;
  height:120px!important;
  min-height:120px!important;
  max-height:120px!important;
}
body:not(.home) #header [data-id="logo"] .site-logo-container:before{
  width:46px;
  height:47px;
  background-size:92% auto;
}
body:not(.home) #header [data-id="logo"] .site-logo-container:after{
  width:252px;
  height:72px;
  background-size:96% auto;
}
body:not(.home) #header [data-id="logo"] .site-logo-container:before,
body:not(.home) #header [data-id="logo"] .site-logo-container:after{
  opacity:1;
  filter:saturate(1.38) contrast(1.22) brightness(.91)
         drop-shadow(0 1px 0 rgba(18,63,53,.48))
         drop-shadow(0 3px 8px rgba(18,63,53,.13));
}

@media(max-width:1024px){
  body:not(.home) #header [data-row="middle"]>.ct-container{
    min-height:114px!important;
  }
  body:not(.home) #header [data-id="logo"],
  body:not(.home) #header [data-id="logo"] .site-branding,
  body:not(.home) #header [data-id="logo"] .site-logo-container{
    width:232px!important;
    min-width:232px!important;
    max-width:232px!important;
    height:102px!important;
    min-height:102px!important;
    max-height:102px!important;
  }
  body:not(.home) #header [data-id="logo"] .site-logo-container:before{
    width:40px;
    height:41px;
  }
  body:not(.home) #header [data-id="logo"] .site-logo-container:after{
    width:220px;
    height:62px;
  }
}

@media(max-width:767px){
  body:not(.home) #header [data-row="middle"]>.ct-container{
    min-height:98px!important;
  }
  body:not(.home) #header [data-id="logo"],
  body:not(.home) #header [data-id="logo"] .site-branding,
  body:not(.home) #header [data-id="logo"] .site-logo-container{
    width:198px!important;
    min-width:198px!important;
    max-width:198px!important;
    height:88px!important;
    min-height:88px!important;
    max-height:88px!important;
  }
  body:not(.home) #header [data-id="logo"] .site-logo-container:before{
    width:34px;
    height:35px;
  }
  body:not(.home) #header [data-id="logo"] .site-logo-container:after{
    width:184px;
    height:52px;
  }
}

/* ==========================================================
   V125 — RESPIRATION MOBILE SOUS LA SIGNATURE
   Le bloc graphique dépasse légèrement sa ligne : cette réserve
   claire le contient entièrement avant le début de la photographie.
   ========================================================== */
@media(max-width:767px){
  body:not(.home) #header{
    padding-bottom:18px!important;
    box-sizing:border-box!important;
  }
}


/* V126.3 — respiration CTA mobile + espacement entre les deux guides */
.v1263-featured-guide{padding-top:0}
@media(max-width:620px){
  .home .v50-hero .button-row{margin-top:18px}
  .v1263-featured-guide{padding-top:0}
}

/* ==========================================================
   V126.5 — MOBILE : CTA PLUS TÔT, CHARGEMENT CONSOLIDÉ
   - Google Fonts n'est plus importé deux fois : la feuille déjà
     déclarée par wp_enqueue_style reste l'unique source.
   - Sur smartphone, le hero gagne ~40 px sans changer son cadrage.
   ========================================================== */
@media(max-width:520px){
  .home .v50-hero,
  .home .v50-hero-content{
    min-height:930px!important;
    height:930px!important;
  }
  .home .v50-hero-content{
    padding-bottom:30px!important;
  }
  .home .v50-hero .button-row{
    margin-top:10px!important;
  }
}
@supports (height:100svh){
  @media(max-width:520px){
    .home .v50-hero,
    .home .v50-hero-content{
      min-height:max(900px,100svh)!important;
      height:max(900px,100svh)!important;
    }
  }
}

/* V127.3 — Page Avis : 3 résidences au même niveau */
.v69-reviews-page .v68-scoreboard{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:900px){.v69-reviews-page .v68-scoreboard{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.v69-reviews-page .v68-scoreboard{grid-template-columns:1fr}}

/* V128 — hero responsive performant, rendu identique */
.v50-hero>.lr128-hero-picture{position:absolute;inset:0;width:100%;height:100%;display:block}
.v50-hero>.lr128-hero-picture>img{width:100%;height:100%;object-fit:cover;object-position:center center;filter:brightness(.93) saturate(.91) contrast(1.035);transform:scale(1.008);display:block}
@media(max-width:520px){.v50-hero>.lr128-hero-picture>img{object-position:center 40%}}

/* V129 — enrichissement éditorial du guide plages */
.v129-beach-rhythm,.v129-beaches-more,.v129-beach-faq{margin-top:48px}
.v129-beach-faq details{margin:12px 0;padding:15px 18px;border:1px solid rgba(12,79,67,.15);border-radius:12px;background:#fff}
.v129-beach-faq summary{cursor:pointer;font-weight:700;color:#0c4f43}
.v129-beach-faq details p{margin:12px 0 2px}


/* ==========================================================================
   V129.2 — CONVERSION ACCUEIL
   ========================================================================== */
.v1292-hero-proof{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:0;
  flex-wrap:wrap;
  margin:18px auto 0;
  max-width:900px;
  font-size:12px;
  line-height:1.4;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:rgba(255,255,255,.9);
}
.v1292-hero-proof span{display:inline-flex;align-items:center}
.v1292-hero-proof span+span:before{
  content:"•";
  margin:0 12px;
  opacity:.65;
}
.v1292-intro-support{
  max-width:760px;
  margin:18px auto 0;
  font-size:17px;
  line-height:1.75;
}
.v1292-property-actions{
  display:flex;
  align-items:center;
  gap:18px;
  flex-wrap:wrap;
  margin-top:8px;
}
.v1292-property-actions .v52-discover{margin:0}
.v1292-availability-link{
  display:inline-flex;
  align-items:center;
  gap:5px;
  font-size:14px;
  font-weight:700;
  color:#0c4f43;
  text-decoration:none;
  border-bottom:1px solid rgba(12,79,67,.28);
  padding-bottom:2px;
}
.v1292-availability-link:hover{border-bottom-color:currentColor}
.v1292-reviews{margin-top:0}
.v1292-google{letter-spacing:.02em}
@media(max-width:767px){
  .v1292-hero-proof{
    gap:7px 0;
    margin-top:16px;
    font-size:10px;
    letter-spacing:.045em;
  }
  .v1292-hero-proof span+span:before{margin:0 8px}
  .v1292-intro-support{font-size:15px;line-height:1.65}
  .v1292-property-actions{gap:12px}
}


/* ==========================================================================
   V129.2.1 — HERO DESKTOP : ESPACEMENT LOGO / TITRE
   ========================================================================== */
@media (min-width: 900px){
  .v52-home .v50-hero-content{
    padding-top: 34px;
  }
  .v52-home .v55-wordmark-wrap{
    margin-bottom: 34px !important;
  }
  .v52-home .v55-wordmark{
    max-width: 560px !important;
    width: min(44vw,560px) !important;
  }
  .v52-home .v50-hero h1{
    margin-top: 0 !important;
    line-height: 1.05 !important;
  }
}


/* ==========================================================================
   V129.2.2 — HERO DESKTOP : SEPARATION FRANCHISE LOGO / H1
   ========================================================================== */
@media (min-width: 900px){
  .v52-home .v50-hero-content{
    padding-top: 18px !important;
  }
  .v52-home .v55-wordmark-wrap{
    margin-bottom: 58px !important;
    transform: translateY(-12px);
  }
  .v52-home .v55-wordmark{
    max-width: 500px !important;
    width: min(39vw,500px) !important;
  }
  .v52-home .v50-hero h1{
    margin-top: 0 !important;
    font-size: clamp(48px,5.1vw,72px) !important;
    line-height: 1.03 !important;
    max-width: 980px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}


/* ==========================================================================
   V129.4 — DÉCOUVRIR → DISPONIBILITÉS → PROPOSITION
   ========================================================================== */
.v1294-calendar-action{
  margin:22px auto 0;
  padding:22px 24px 24px;
  max-width:760px;
  text-align:center;
  border:1px solid rgba(12,79,67,.16);
  border-radius:14px;
  background:rgba(255,255,255,.78);
}
.v1294-calendar-action p{
  margin:0 0 15px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:24px;
  line-height:1.2;
  color:#173b34;
}
.v1294-calendar-action span{
  display:block;
  max-width:620px;
  margin:-5px auto 16px;
  font-size:14px;
  line-height:1.55;
  opacity:.78;
}
.v1294-calendar-action .lr-btn{margin-top:0}
@media(max-width:767px){
  .v1294-calendar-action{padding:18px 16px 20px;margin-top:18px}
  .v1294-calendar-action p{font-size:21px}
  .v1294-calendar-action .lr-btn{width:100%;justify-content:center}
}


/* ==========================================================================
   V129.4.4 — NAVIGATION MOBILE HOMOGÈNE
   Correction ciblée du lien « Nos Résidences »
   ========================================================================== */
@media (max-width: 767px){
  .lr-nav-section .green-nav a[href="/residences-privees/"]{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:48px !important;
    padding:14px 22px !important;
    border-radius:999px !important;
    background:#0b4d43 !important;
    color:#fff !important;
    font-weight:700 !important;
    letter-spacing:.06em !important;
    text-transform:uppercase !important;
    text-decoration:none !important;
    line-height:1 !important;
    box-shadow:none !important;
  }
}


/* ==========================================================================
   V129.4.5 — BOUTON ACTIF « NOS RÉSIDENCES » GARANTI
   ========================================================================== */
@media (max-width: 767px){
  html body .lr28 .lr-nav-section .green-nav > a.lr-nav-force-button,
  html body .lr28 .lr-nav-section .green-nav > a.lr-nav-force-button[aria-current="page"],
  html body .lr28 .lr-nav-section .green-nav > a.lr-nav-force-button.current,
  html body .lr28 .lr-nav-section .green-nav > a.lr-nav-force-button:visited{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:auto !important;
    min-width:0 !important;
    min-height:42px !important;
    padding:10px 21px !important;
    margin:0 !important;
    border:1px solid #0a3d35 !important;
    border-radius:999px !important;
    background:#0a3d35 !important;
    background-image:none !important;
    color:#fff !important;
    font-family:'Montserrat',system-ui,sans-serif !important;
    font-size:11px !important;
    font-weight:700 !important;
    letter-spacing:.10em !important;
    line-height:1.15 !important;
    text-transform:uppercase !important;
    text-align:center !important;
    text-decoration:none !important;
    box-shadow:0 9px 20px rgba(10,61,53,.18) !important;
    opacity:1 !important;
  }
}


/* ==========================================================================
   V129.4.6 — 2e LIEN NAVIGATION = BOUTON, SANS DÉPENDRE DU HREF
   ========================================================================== */
@media (max-width: 767px){
  html body .lr28 .lr-nav-section .green-nav > a:nth-of-type(2){
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:auto !important;
    min-width:0 !important;
    min-height:42px !important;
    padding:10px 21px !important;
    margin:0 !important;
    border:1px solid #0a3d35 !important;
    border-radius:999px !important;
    background:#0a3d35 !important;
    background-color:#0a3d35 !important;
    background-image:none !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    font-family:'Montserrat',system-ui,sans-serif !important;
    font-size:11px !important;
    font-weight:700 !important;
    letter-spacing:.10em !important;
    line-height:1.15 !important;
    text-transform:uppercase !important;
    text-align:center !important;
    text-decoration:none !important;
    box-shadow:0 9px 20px rgba(10,61,53,.18) !important;
    opacity:1 !important;
  }
}


/* ==========================================================================
   V129.4.7 — ÉTAT COURANT « NOS RÉSIDENCES » EN BOUTON VISUEL
   ========================================================================== */
@media (max-width: 767px){
  html body .lr28 .lr-nav-section .green-nav > .lr12947-current-nav{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:auto !important;
    min-width:0 !important;
    min-height:42px !important;
    padding:10px 21px !important;
    margin:0 !important;
    border:1px solid #0a3d35 !important;
    border-radius:999px !important;
    background:#0a3d35 !important;
    background-color:#0a3d35 !important;
    background-image:none !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    font-family:'Montserrat',system-ui,sans-serif !important;
    font-size:11px !important;
    font-weight:700 !important;
    letter-spacing:.10em !important;
    line-height:1.15 !important;
    text-transform:uppercase !important;
    text-align:center !important;
    text-decoration:none !important;
    box-shadow:0 9px 20px rgba(10,61,53,.18) !important;
    opacity:1 !important;
    cursor:default !important;
  }
}


/* ==========================================================================
   V129.4.8 — PAGE COURANTE DANS .green-nav
   La fonction lr98_remove_self_links conserve désormais un <span> stylable.
   ========================================================================== */
.lr28 .lr-nav-section .green-nav > .lr98-current-page-link{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:0 !important;
  min-height:42px !important;
  padding:10px 21px !important;
  margin:0 !important;
  border:1px solid #0a3d35 !important;
  border-radius:999px !important;
  background:#0a3d35 !important;
  background-color:#0a3d35 !important;
  background-image:none !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-family:'Montserrat',system-ui,sans-serif !important;
  font-size:11px !important;
  font-weight:700 !important;
  letter-spacing:.10em !important;
  line-height:1.15 !important;
  text-transform:uppercase !important;
  text-align:center !important;
  text-decoration:none !important;
  box-shadow:0 9px 20px rgba(10,61,53,.18) !important;
  opacity:1 !important;
  cursor:default !important;
}

@media (max-width:767px){
  .lr28 .lr-nav-section .green-nav > .lr98-current-page-link{
    width:auto !important;
    max-width:100% !important;
  }
}


/* ==========================================================================
   V129.4.9 — BOUTON NOS RÉSIDENCES CLIQUABLE
   ========================================================================== */
.lr28 .lr-nav-section .green-nav > a.lr12949-keep-self-link{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:0 !important;
  min-height:42px !important;
  padding:10px 21px !important;
  margin:0 !important;
  border:1px solid #0a3d35 !important;
  border-radius:999px !important;
  background:#0a3d35 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-family:'Montserrat',system-ui,sans-serif !important;
  font-size:11px !important;
  font-weight:700 !important;
  letter-spacing:.10em !important;
  line-height:1.15 !important;
  text-transform:uppercase !important;
  text-align:center !important;
  text-decoration:none !important;
  box-shadow:0 9px 20px rgba(10,61,53,.18) !important;
  opacity:1 !important;
  cursor:pointer !important;
}


/* ==========================================================================
   V129.5 — ACCESSIBILITÉ : CONTRASTE DES PETITS LIBELLÉS SUR FONDS CLAIRS
   Le doré historique #b9a46c reste conservé sur les fonds foncés/verts.
   ========================================================================== */
.lr28 .page-hero-copy .eyebrow,
.lr28 .section:not(.service-band):not(.dark) .eyebrow,
.lr28 .lr-nav-section .eyebrow,
.v52-intro .eyebrow,
.v52-collection .eyebrow,
.v52-reviews .eyebrow{
  color:#7c6535 !important;
}
.lr28 .dark .eyebrow,
.lr28 .service-band .eyebrow{
  color:#b9a46c !important;
}


/* ==========================================================================
   V129.6 — FALLBACK LCP EXPLICITE
   La police finale reste Cormorant Garamond ; Georgia est disponible
   immédiatement pendant son chargement asynchrone.
   ========================================================================== */
.v52-home .v1292-hero h1,
.v52-home .hero h1,
.v52-home h1{
  font-family:"Cormorant Garamond", Georgia, "Times New Roman", serif;
}


/* ==========================================================================
   V129.6.1 — ACCESSIBILITÉ LIGHTHOUSE
   ========================================================================== */

/* Scores d'avis signalés par Lighthouse */
.v52-review-grid .v52-score,
.v52-score{
  color:#5e4a23 !important;
}

/* Eyebrows signalés sur fonds clairs */
.v50-philosophy .eyebrow,
.v50-cinema .eyebrow,
.v100-home-addresses .eyebrow,
.v52-direct-card .eyebrow,
.v52-home .v50-philosophy .eyebrow,
.v52-home .v50-cinema .eyebrow,
.v52-home .v50-journal .eyebrow,
.v52-home .v52-direct .eyebrow{
  color:#6f582d !important;
}

/* Conserver l'identité dorée sur fonds sombres */
.lr28 .dark .eyebrow,
.lr28 .service-band .eyebrow{
  color:#c7ad70 !important;
}

/* Cible du skip-link : marge de confort si le header est présent */
#main,
main#main{
  scroll-margin-top:24px;
}


/* ==========================================================================
   V129.6.5 — BLOCS SEO COMMERCIAUX
   ========================================================================== */
.v12965-seo-commercial,
.v12965-ap-search,
.v12965-compare{
  padding:72px 0;
  background:#f7f3ec;
  border-top:1px solid rgba(12,79,67,.08);
  border-bottom:1px solid rgba(12,79,67,.08);
}
.v12965-ap-search{background:#fff}
.v12965-seo-commercial h2,
.v12965-ap-search h2,
.v12965-compare h2{
  margin:12px auto 22px;
  max-width:900px;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:clamp(36px,5vw,58px);
  line-height:1.05;
  font-weight:500;
  color:#29342f;
}
.v12965-seo-commercial p:not(.eyebrow),
.v12965-ap-search p:not(.eyebrow),
.v12965-compare p:not(.eyebrow){
  max-width:850px;
  margin:0 auto 16px;
  font-size:17px;
  line-height:1.75;
  color:#5f5a53;
}
.v12965-seo-links{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:10px 18px;
  margin-top:24px;
}
.v12965-seo-links a{
  color:#0c4f43;
  font-weight:700;
  text-decoration:none;
  border-bottom:1px solid rgba(12,79,67,.32);
  padding-bottom:2px;
}
.v12965-seo-links a:hover{border-bottom-color:currentColor}
@media(max-width:767px){
  .v12965-seo-commercial,
  .v12965-ap-search,
  .v12965-compare{padding:52px 0}
  .v12965-seo-commercial p:not(.eyebrow),
  .v12965-ap-search p:not(.eyebrow),
  .v12965-compare p:not(.eyebrow){font-size:15px;line-height:1.7}
  .v12965-seo-links{flex-direction:column;align-items:center}
}


/* ==========================================================================
   V129.6.6 — SEO ÉDITORIAL PORTICCIO
   ========================================================================== */
.v12966-porticcio-search-intro,
.v12966-around-porticcio{
  padding:64px 0;
  background:#f7f3ec;
  border-top:1px solid rgba(12,79,67,.08);
  border-bottom:1px solid rgba(12,79,67,.08);
}
.v12966-around-porticcio{background:#fff}
.v12966-porticcio-search-intro h2,
.v12966-around-porticcio h2{
  max-width:900px;
  margin:12px auto 22px;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:clamp(34px,4.6vw,54px);
  line-height:1.08;
  font-weight:500;
  color:#29342f;
}
.v12966-porticcio-search-intro p:not(.eyebrow),
.v12966-around-porticcio p:not(.eyebrow){
  max-width:850px;
  margin:0 auto 16px;
  font-size:17px;
  line-height:1.75;
  color:#5f5a53;
}
.v12966-porticcio-search-intro a,
.v12966-around-porticcio a{
  color:#0c4f43;
  font-weight:700;
}
.v12966-porticcio-links{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:10px 18px;
  margin-top:24px;
}
.v12966-porticcio-links a{
  text-decoration:none;
  border-bottom:1px solid rgba(12,79,67,.32);
  padding-bottom:2px;
}
@media(max-width:767px){
  .v12966-porticcio-search-intro,
  .v12966-around-porticcio{padding:48px 0}
  .v12966-porticcio-search-intro p:not(.eyebrow),
  .v12966-around-porticcio p:not(.eyebrow){font-size:15px;line-height:1.7}
  .v12966-porticcio-links{flex-direction:column;align-items:center}
}


/* ==========================================================================
   V129.6.6.1 — ACCESSIBILITÉ : CONTRASTE DES EYEBROWS SUR FONDS CLAIRS
   Le doré générique #b9a46c n'atteint pas 4.5:1 sur #f7f3ec / #fff.
   #6f582d dépasse 6:1 sur ces fonds et conserve l'identité visuelle.
   ========================================================================== */
.lr28 .v12965-seo-commercial .eyebrow,
.lr28 .v12965-ap-search .eyebrow,
.lr28 .v12965-compare .eyebrow,
.lr28 .v12966-porticcio-search-intro .eyebrow,
.lr28 .v12966-around-porticcio .eyebrow{
  color:#6f582d !important;
}


/* ==========================================================================
   V129.6.6.2 — L’OASIS D’ISOLELLA · LES ADRESSES
   ========================================================================== */
.v129667-oasis-feature{
  margin:34px 0 30px;
  padding:24px;
  border:1px solid rgba(12,79,67,.10);
  border-radius:22px;
  background:#fff;
  box-shadow:0 14px 40px rgba(31,45,40,.06);
}
.v129667-oasis-gallery{
  display:grid;
  grid-template-columns:1.45fr 1fr;
  gap:12px;
  margin-bottom:24px;
}
.v129667-oasis-gallery figure{
  margin:0;
  overflow:hidden;
  border-radius:16px;
  aspect-ratio:16/9;
  background:#eee;
}
.v129667-oasis-gallery img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.v129667-oasis-copy{
  max-width:900px;
}
.v129667-oasis-copy h3{
  margin:8px 0 12px;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:clamp(34px,4vw,50px);
  line-height:1.06;
  font-weight:600;
  color:#29342f;
}
.v129667-oasis-copy p{
  margin:0 0 16px;
  line-height:1.75;
  color:#5f5a53;
}
.v129667-oasis-copy small{
  display:block;
  margin-top:16px;
  color:#716b63;
}
.v129667-oasis-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px 18px;
  margin-top:18px;
}
.v129667-oasis-actions a{
  color:#0c4f43;
  font-weight:700;
  text-decoration:none;
  border-bottom:1px solid rgba(12,79,67,.32);
  padding-bottom:2px;
}
.v129667-oasis-actions a:hover{border-bottom-color:currentColor}
.v129667-oasis-feature .eyebrow{
  color:#6f582d !important;
}
@media(max-width:767px){
  .v129667-oasis-feature{
    padding:16px;
    border-radius:18px;
  }
  .v129667-oasis-gallery{
    grid-template-columns:1fr;
  }
  .v129667-oasis-gallery figure:nth-child(2){
    display:none;
  }
  .v129667-oasis-actions{
    flex-direction:column;
    align-items:flex-start;
  }
}


/* ==========================================================================
   V129.6.6.3 — VILLA CALAMEDEA · LES ADRESSES
   ========================================================================== */
.v129663-calamedea-feature{
  margin:34px 0 30px;
  padding:24px;
  border:1px solid rgba(12,79,67,.10);
  border-radius:22px;
  background:#fff;
  box-shadow:0 14px 40px rgba(31,45,40,.06);
}
.v129663-calamedea-gallery{
  display:grid;
  grid-template-columns:1.25fr 1fr;
  gap:12px;
  margin-bottom:24px;
}
.v129663-calamedea-gallery figure{
  margin:0;
  overflow:hidden;
  border-radius:16px;
  aspect-ratio:16/9;
  background:#111;
}
.v129663-calamedea-gallery img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.v129663-calamedea-copy h3{
  margin:8px 0 12px;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:clamp(34px,4vw,50px);
  line-height:1.06;
  font-weight:600;
  color:#29342f;
}
.v129663-calamedea-copy p{
  margin:0 0 16px;
  max-width:900px;
  line-height:1.75;
  color:#5f5a53;
}
.v129663-calamedea-copy small{
  display:block;
  margin-top:16px;
  color:#716b63;
}
.v129663-calamedea-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px 18px;
  margin-top:18px;
}
.v129663-calamedea-actions a{
  color:#0c4f43;
  font-weight:700;
  text-decoration:none;
  border-bottom:1px solid rgba(12,79,67,.32);
  padding-bottom:2px;
}
.v129663-calamedea-actions a:hover{border-bottom-color:currentColor}
.v129663-calamedea-feature .eyebrow{
  color:#6f582d !important;
}
@media(max-width:767px){
  .v129663-calamedea-feature{
    padding:16px;
    border-radius:18px;
  }
  .v129663-calamedea-gallery{
    grid-template-columns:1fr;
  }
  .v129663-calamedea-gallery figure:nth-child(2){
    display:none;
  }
}


/* ==========================================================================
   V129.6.6.5 — RÉSERVE DE SAPARELLA · LES ADRESSES
   ========================================================================== */
.v129665-saparella-feature{
  margin:34px 0 30px;
  padding:24px;
  border:1px solid rgba(12,79,67,.10);
  border-radius:22px;
  background:#fff;
  box-shadow:0 14px 40px rgba(31,45,40,.06);
}
.v129665-saparella-image figure{
  margin:0 0 24px;
  overflow:hidden;
  border-radius:16px;
  aspect-ratio:3/2;
  background:#eee;
}
.v129665-saparella-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.v129665-saparella-copy h3{
  margin:8px 0 12px;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:clamp(34px,4vw,50px);
  line-height:1.06;
  font-weight:600;
  color:#29342f;
}
.v129665-saparella-copy p{
  margin:0 0 16px;
  max-width:900px;
  line-height:1.75;
  color:#5f5a53;
}
.v129665-saparella-copy small{
  display:block;
  margin-top:16px;
  color:#716b63;
}
.v129665-saparella-actions{
  margin-top:18px;
}
.v129665-saparella-actions a{
  color:#0c4f43;
  font-weight:700;
  text-decoration:none;
  border-bottom:1px solid rgba(12,79,67,.32);
  padding-bottom:2px;
}
.v129665-saparella-actions a:hover{border-bottom-color:currentColor}
.v129665-saparella-feature .eyebrow{
  color:#6f582d !important;
}
@media(max-width:767px){
  .v129665-saparella-feature{
    padding:16px;
    border-radius:18px;
  }
}


/* ==========================================================================
   V129.6.6.6 — CHEZ VÉRO · LES ADRESSES
   ========================================================================== */
.v129666-vero-feature{
  margin:34px 0 30px;
  padding:24px;
  border:1px solid rgba(12,79,67,.10);
  border-radius:22px;
  background:#fff;
  box-shadow:0 14px 40px rgba(31,45,40,.06);
}
.v129666-vero-gallery{
  display:grid;
  grid-template-columns:1.15fr 1fr;
  gap:12px;
  margin-bottom:24px;
}
.v129666-vero-gallery figure{
  margin:0;
  overflow:hidden;
  border-radius:16px;
  aspect-ratio:16/9;
  background:#eee;
}
.v129666-vero-gallery img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.v129666-vero-copy h3{
  margin:8px 0 12px;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:clamp(34px,4vw,50px);
  line-height:1.06;
  font-weight:600;
  color:#29342f;
}
.v129666-vero-copy p{
  margin:0 0 16px;
  max-width:900px;
  line-height:1.75;
  color:#5f5a53;
}
.v129666-vero-copy small{
  display:block;
  margin-top:16px;
  color:#716b63;
}
.v129666-vero-actions{
  margin-top:18px;
}
.v129666-vero-actions a{
  color:#0c4f43;
  font-weight:700;
  text-decoration:none;
  border-bottom:1px solid rgba(12,79,67,.32);
  padding-bottom:2px;
}
.v129666-vero-feature .eyebrow{
  color:#6f582d !important;
}
@media(max-width:767px){
  .v129666-vero-feature{
    padding:16px;
    border-radius:18px;
  }
  .v129666-vero-gallery{
    grid-template-columns:1fr;
  }
  .v129666-vero-gallery figure:nth-child(2){
    display:none;
  }
}


/* ==========================================================================
   V129.6.6.8 — CHEZ MICO · HARMONISATION LES ADRESSES
   ========================================================================== */
.v129668-mico-feature{
  margin:34px 0 30px;
  padding:24px;
  border:1px solid rgba(12,79,67,.10);
  border-radius:22px;
  background:#fff;
  box-shadow:0 14px 40px rgba(31,45,40,.06);
}
.v129668-mico-image figure{
  margin:0 0 24px;
  overflow:hidden;
  border-radius:16px;
  aspect-ratio:16/9;
  background:#eee;
}
.v129668-mico-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.v129668-mico-copy h3{
  margin:8px 0 12px;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:clamp(34px,4vw,50px);
  line-height:1.06;
  font-weight:600;
  color:#29342f;
}
.v129668-mico-copy p{
  margin:0 0 16px;
  max-width:900px;
  line-height:1.75;
  color:#5f5a53;
}
.v129668-mico-copy small{
  display:block;
  margin-top:16px;
  color:#716b63;
}
.v129668-mico-actions{
  margin-top:18px;
}
.v129668-mico-actions a{
  color:#0c4f43;
  font-weight:700;
  text-decoration:none;
  border-bottom:1px solid rgba(12,79,67,.32);
  padding-bottom:2px;
}
.v129668-mico-actions a:hover{
  border-bottom-color:currentColor;
}
.v129668-mico-feature .eyebrow{
  color:#6f582d !important;
}
@media(max-width:767px){
  .v129668-mico-feature{
    padding:16px;
    border-radius:18px;
  }
}


/* ==========================================================================
   V129.6.6.9 — L’ALTA ROCCA + LA PLAGE BLANCHE
   ========================================================================== */
.v129669-alta-feature,
.v129669-plage-feature{
  margin:34px 0 30px;
  padding:24px;
  border:1px solid rgba(12,79,67,.10);
  border-radius:22px;
  background:#fff;
  box-shadow:0 14px 40px rgba(31,45,40,.06);
}
.v129669-two-gallery{
  display:grid;
  grid-template-columns:1.28fr 1fr;
  gap:12px;
  margin-bottom:24px;
}
.v129669-two-gallery figure{
  margin:0;
  overflow:hidden;
  border-radius:16px;
  aspect-ratio:16/9;
  background:#111;
}
.v129669-two-gallery img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}
.v129669-address-copy h3{
  margin:8px 0 12px;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:clamp(34px,4vw,50px);
  line-height:1.06;
  font-weight:600;
  color:#29342f;
}
.v129669-address-copy p{
  margin:0 0 16px;
  max-width:900px;
  line-height:1.75;
  color:#5f5a53;
}
.v129669-address-copy small{
  display:block;
  margin-top:16px;
  color:#716b63;
}
.v129669-address-actions{
  margin-top:18px;
}
.v129669-address-actions a{
  color:#0c4f43;
  font-weight:700;
  text-decoration:none;
  border-bottom:1px solid rgba(12,79,67,.32);
  padding-bottom:2px;
}
.v129669-address-actions a:hover{
  border-bottom-color:currentColor;
}
.v129669-alta-feature .eyebrow,
.v129669-plage-feature .eyebrow{
  color:#6f582d !important;
}
@media(max-width:767px){
  .v129669-alta-feature,
  .v129669-plage-feature{
    padding:16px;
    border-radius:18px;
  }
  .v129669-two-gallery{
    grid-template-columns:1fr;
  }
  .v129669-two-gallery figure:nth-child(2){
    display:none;
  }
}

/* V129.6.6.10 — Sofitel Golfe d’Ajaccio */
.v1296610-sofitel-feature{margin:34px 0 30px;padding:24px;border:1px solid rgba(12,79,67,.10);border-radius:22px;background:#fff;box-shadow:0 14px 40px rgba(31,45,40,.06)}
.v1296610-sofitel-gallery{display:grid;grid-template-columns:1.4fr .9fr .9fr;gap:12px;margin-bottom:24px}
.v1296610-sofitel-gallery figure{margin:0;overflow:hidden;border-radius:16px;aspect-ratio:16/9;background:#eee}
.v1296610-sofitel-gallery img{width:100%;height:100%;object-fit:cover;display:block}
.v1296610-sofitel-copy h3{margin:8px 0 12px;font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(34px,4vw,50px);line-height:1.06;font-weight:600;color:#29342f}
.v1296610-sofitel-copy p{margin:0 0 16px;max-width:900px;line-height:1.75;color:#5f5a53}
.v1296610-sofitel-copy small{display:block;margin-top:16px;color:#716b63}
.v1296610-sofitel-actions{margin-top:18px}
.v1296610-sofitel-actions a{color:#0c4f43;font-weight:700;text-decoration:none;border-bottom:1px solid rgba(12,79,67,.32);padding-bottom:2px}
.v1296610-sofitel-feature .eyebrow{color:#6f582d!important}
@media(max-width:767px){.v1296610-sofitel-feature{padding:16px;border-radius:18px}.v1296610-sofitel-gallery{grid-template-columns:1fr}.v1296610-sofitel-gallery figure:nth-child(n+2){display:none}}


/* ==========================================================================
   V129.6.6.14 — LCP HERO PAINT
   --------------------------------------------------------------------------
   Le rendu brightness/saturation/contrast a été intégré directement
   dans le WebP du hero. Sur mobile uniquement, on supprime donc le coût
   de composition du filter + transform sur la grande image LCP.
   Desktop reste inchangé.
   ========================================================================== */
@media (max-width: 767px){
  body.home .v50-hero>img{
    filter:none!important;
    transform:none!important;
  }
}



@media (max-width:520px){
  body.home .v50-hero{
    /* Même règle effective que précédemment, mais fixée en dernier
       pour éviter plusieurs règles concurrentes sur la hauteur. */
    height:max(900px,100svh)!important;
    min-height:max(900px,100svh)!important;
    max-height:max(900px,100svh)!important;
    box-sizing:border-box!important;
    contain:layout paint;
    isolation:isolate;
  }
  body.home .v50-hero-content{
    height:max(900px,100svh)!important;
    min-height:max(900px,100svh)!important;
    box-sizing:border-box!important;
  }
  body.home .v50-hero>img{
    contain:paint;
  }
}


/* ==========================================================================
   V129.6.6.27 — NOS ADRESSES : GALERIES MOBILE RÉTABLIES
   --------------------------------------------------------------------------
   Base stable V129.6.6.23.
   Réaffiche uniquement les photos supplémentaires de Nos Adresses sur mobile.
   ========================================================================== */
@media (max-width: 767px){

  body .v100-home-addresses figure,
  body .v100-home-addresses .v100-address-visual figure,
  body .v100-home-addresses .v100-address-gallery figure,
  body .v100-home-addresses [class*="address"] figure,
  body .v100-home-addresses [class*="gallery"] figure,

  body .v106-addresses figure,
  body .v106-addresses [class*="gallery"] figure,
  body .v106-addresses [class*="visual"] figure,

  body .v107-addresses figure,
  body .v107-addresses [class*="gallery"] figure,
  body .v107-addresses [class*="visual"] figure,

  body .v12966-addresses figure,
  body .v12966-addresses [class*="gallery"] figure,
  body .v12966-addresses [class*="visual"] figure{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
  }

  body .v100-home-addresses [class*="gallery"],
  body .v106-addresses [class*="gallery"],
  body .v107-addresses [class*="gallery"],
  body .v12966-addresses [class*="gallery"]{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
  }

  body .v100-home-addresses figure img,
  body .v106-addresses figure img,
  body .v107-addresses figure img,
  body .v12966-addresses figure img{
    width:100% !important;
    height:auto !important;
    max-height:none !important;
    object-fit:cover !important;
    display:block !important;
  }

  body .v100-home-addresses figure:nth-child(n),
  body .v106-addresses figure:nth-child(n),
  body .v107-addresses figure:nth-child(n),
  body .v12966-addresses figure:nth-child(n){
    display:block !important;
  }
}
