/*
Theme Name: Libéos National
Theme URI: https://libeos.fr/
Author: Libéos
Description: Thème WordPress sur mesure pour les cabinets et locaux professionnels.
Version: 1.23.0
Requires at least: 6.2
Requires PHP: 8.0
Text Domain: libeos
*/
@font-face{font-family:Kollektif;src:url('assets/fonts/Kollektif.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Kollektif;src:url('assets/fonts/Kollektif-Bold.ttf') format('truetype');font-style:normal;font-weight:700;font-display:swap}@font-face{font-family:Kollektif;src:url('assets/fonts/Kollektif-Italic.ttf') format('truetype');font-style:italic;font-weight:400;font-display:swap}@font-face{font-family:Kollektif;src:url('assets/fonts/Kollektif-BoldItalic.ttf') format('truetype');font-style:italic;font-weight:700;font-display:swap}
:root{--ink:#4b374a;--forest:#4b374a;--sage:#c7bbd5;--sage-pale:#eee4ec;--cream:#f5e9df;--paper:#fff;--line:#dfd0d9;--muted:#776777;--orange:#ec693a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font:16px/1.6 Kollektif,Arial,sans-serif}a{color:inherit;text-decoration:none}a:hover{color:#ec693a}button,input,select{font:inherit}button{cursor:pointer}.wrap{width:min(1240px,100% - 56px);margin:auto}.skip-link{position:absolute;top:-100px;left:10px;background:white;padding:10px;z-index:100}.skip-link:focus{top:10px}.site-header{background:var(--cream);border-bottom:1px solid var(--line);position:relative;z-index:10}.header-inner{min-height:94px;display:flex;justify-content:space-between;align-items:center;gap:20px}.logo{font-size:39px;font-weight:700;letter-spacing:-2.6px;line-height:1}.logo span,.brand-dot{color:#ec693a}.nav{display:flex;align-items:center;gap:35px;font-size:14px}.nav>a:not(.btn):hover{text-decoration:underline;text-underline-offset:6px}.menu-toggle{display:none;background:transparent;border:1px solid var(--line);border-radius:4px;padding:7px 12px;font-size:22px}.btn{display:inline-flex;justify-content:center;align-items:center;gap:10px;padding:14px 23px;border:1px solid var(--forest);background:var(--forest);color:#fff!important;font-size:14px;font-weight:700;transition:background .2s,border-color .2s}.btn:hover{background:#654a63;border-color:#654a63}.btn.outline{background:transparent;color:var(--forest)!important}.btn.outline:hover{background:var(--sage-pale)}.btn-light{background:var(--cream);color:var(--forest)!important;border-color:var(--cream)}h1,h2,h3{line-height:1.13;letter-spacing:-.035em}h1{font-size:clamp(52px,6.2vw,94px);font-weight:700;margin:22px 0 22px}h1 em{font-weight:400}h2{font-size:clamp(32px,3.8vw,54px);font-weight:700;margin:10px 0 20px}h3{font-size:25px;margin:10px 0}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2.2px;color:#9d6e8e}.eyebrow-line{display:inline-block;width:26px;height:1px;background:#9d6e8e;vertical-align:middle;margin-right:10px}.hero{padding:70px 0 66px;background:#f5e9df;overflow:hidden}.hero-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;min-height:390px;align-items:center}.hero-copy{padding:15px 0 20px}.lead{font-size:19px;color:#776777;max-width:640px;line-height:1.65}.hero-highlights{display:flex;flex-wrap:wrap;gap:16px 25px;margin-top:35px;color:#4b374a;font-size:13px}.hero-art{height:395px;position:relative;background:#c7bbd5;overflow:hidden;border-radius:190px 190px 4px 4px}.arch{position:absolute;border-radius:200px 200px 0 0}.arch-one{height:310px;width:260px;right:70px;bottom:-40px;background:#ec693a}.arch-two{height:265px;width:195px;right:102px;bottom:-55px;background:#f5e9df;box-shadow:-18px -10px 0 #4b374a}.hero-art-label{position:absolute;bottom:34px;left:35px;font-size:13px;line-height:1.5;letter-spacing:2px;font-weight:700}.hero-art-label span{font-size:25px;display:block}.search-intro{display:flex;justify-content:space-between;gap:15px;margin-top:36px;font-size:14px}.search-intro span{color:var(--muted)}.search-panel{background:white;padding:20px;box-shadow:0 18px 50px #4b374a12;margin-top:12px;border:1px solid var(--line)}.search-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr auto;gap:12px;align-items:end}.field{display:flex;flex-direction:column;gap:7px}.field label{font-size:12px;font-weight:700}.field input,.field select{width:100%;height:49px;border:1px solid #dfd0d9;border-radius:0;background:#fff;padding:0 13px;color:var(--ink);min-width:0}.search-grid>.btn{min-height:49px}.section{padding:90px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:35px}.section-head h2{margin-bottom:0}.section-note{max-width:220px;color:var(--muted);font-size:14px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.tile{min-height:340px;padding:30px;background:white;border:1px solid var(--line);display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.tile:hover{transform:translateY(-3px);box-shadow:0 12px 35px #4b374a12}.tile-number{color:#aa7d9e;font-size:11px;font-weight:700;letter-spacing:1.5px}.tile-icon{font-size:53px;color:#c7bbd5;margin:18px 0 5px}.tile h3{max-width:240px}.tile p{font-size:15px;color:var(--muted);margin:0 0 25px}.tile-arrow{margin-top:auto;font-size:13px;font-weight:700}.results-section{background:#f0e1e9}.text-link{font-size:14px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:5px}.listing{background:white;border:1px solid var(--line)}.listing-media{height:200px;background:linear-gradient(135deg,#c7bbd5,#f5e9df);display:flex;align-items:center;justify-content:center;overflow:hidden}.listing-media img{width:100%;height:100%;object-fit:cover}.listing-body{padding:23px}.listing h3{font-size:24px}.pill{display:inline-block;background:#f0e1e9;color:#4b374a;font-size:11px;font-weight:700;padding:6px 10px}.listing-meta{color:var(--muted);font-size:13px}.listing-footer{display:flex;justify-content:space-between;gap:12px;margin-top:18px;border-top:1px solid var(--line);padding-top:15px;font-size:13px;font-weight:700}.empty{grid-column:1/-1;background:white;border:1px solid var(--line);padding:55px;text-align:center}.empty-icon{font-size:54px;color:#c7bbd5}.empty h3{margin:10px 0}.empty p{color:var(--muted)}.empty .btn{margin-top:10px}.brand-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.brand-visual{height:430px;background:#c7bbd5;position:relative;display:flex;justify-content:center;align-items:end;overflow:hidden}.brand-arch{position:absolute;bottom:-90px;width:62%;height:390px;background:#ec693a;border-radius:200px 200px 0 0}.brand-visual>span{z-index:1;font-size:75px;font-weight:700;letter-spacing:-6px;color:#f5e9df;margin-bottom:90px}.brand-grid p{color:var(--muted);max-width:490px}.brand-grid .btn{margin-top:18px}.cta-section{background:var(--forest);color:white;padding:75px 0}.cta-section .eyebrow{color:#f5e9df}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:25px}.cta-inner h2{margin-bottom:0}.site-footer{background:#4b374a;color:#fff;padding:65px 0 25px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:35px}.footer-grid p{color:#eee0e8;font-size:14px}.footer-grid h3{font-size:15px;letter-spacing:0}.footer-logo{font-size:43px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #80687f;margin-top:50px;padding-top:22px;font-size:12px;color:#eee0e8}.archive-hero{background:#f0e1e9;padding:65px 0}.archive-hero h1{font-size:clamp(46px,5vw,72px)}.archive-section{padding-top:40px}.archive-section .search-panel{margin-top:0;margin-bottom:55px}.archive-results-head{margin-top:25px}.result-count{font-size:14px;color:var(--muted)}.pagination{margin:40px 0}.pagination .page-numbers{display:inline-block;padding:9px 13px;border:1px solid var(--line);margin-right:5px}.single-content{max-width:900px;background:white;border:1px solid var(--line);padding:50px;margin:65px auto}.single-content h1{font-size:clamp(38px,5vw,60px)}.single-photo{width:100%;max-height:460px;object-fit:cover}.notice{background:#f0e1e9;padding:18px;margin:25px 0;font-size:14px}.muted{color:var(--muted)}.wp-block-image img{max-width:100%;height:auto}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ec693a;outline-offset:3px}@media(max-width:1080px){.search-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.search-grid>.btn{grid-column:1/-1}.nav{gap:16px}.hero-art{height:340px}}@media(max-width:760px){.wrap{width:min(100% - 36px,1240px)}.header-inner{min-height:76px}.menu-toggle{display:block}.nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--cream);padding:20px;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line)}.nav.is-open{display:flex}.hero{padding:45px 0}.hero-inner{grid-template-columns:1fr;gap:25px}.hero-art{height:260px;border-radius:130px 130px 0 0;max-width:420px;width:100%;margin:auto}.hero-art .arch-one{right:80px}.hero-art .arch-two{right:115px}.search-intro{flex-direction:column}.section{padding:55px 0}.section-head{align-items:start;flex-direction:column}.grid{grid-template-columns:1fr}.tile{min-height:280px}.brand-grid{grid-template-columns:1fr;gap:35px}.brand-visual{height:300px}.cta-inner{align-items:start;flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column}.single-content{padding:24px;margin:25px auto}}@media(max-width:480px){.search-grid{grid-template-columns:1fr}.search-grid>.btn{grid-column:auto}.hero-highlights{gap:8px 16px}.hero-art{height:220px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.empty{padding:28px}}

/* Libéos original brand accents — palette sampled from supplied reference */
.logo span,.brand-dot{color:#ec693a}.btn:not(.outline){background:#ec693a;border-color:#ec693a;color:#4b374a!important}.btn:not(.outline):hover{background:#d9582d;border-color:#d9582d}.btn.outline{color:#4b374a!important;border-color:#4b374a}.hero-art{background:#c7bbd5}.arch-one{background:#ec693a}.arch-two{background:#4b374a;box-shadow:-18px -10px 0 #f5e9df}.cta-section{background:#4b374a}.site-footer{background:#4b374a}.eyebrow{color:#9d5684}

/* Official Libéos logo: original white PNG, legible on plum background */
.site-header{background:#4b374a;border-bottom-color:#4b374a}
.site-header .nav>a:not(.btn){color:#fff}
.site-header .nav .btn.outline{color:#fff!important;border-color:#c7bbd5}
.site-header .nav .btn.outline:hover{background:#634a61}
.site-header .menu-toggle{color:#fff;border-color:#c7bbd5}
.logo{display:inline-flex;align-items:center;line-height:1;flex-shrink:0}
.brand-logo-image{display:block;width:154px;height:auto;max-height:75px;object-fit:contain}
.footer-logo .brand-logo-image{width:178px}
@media(max-width:760px){.site-header .nav{background:#4b374a}.brand-logo-image{width:138px}}
/* Pages de villes — Libéos SEO */
.city-directory{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin-top:26px}
.city-link{display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid rgba(75,55,74,.14);border-radius:14px;padding:18px 20px;color:#4B374A;font-weight:700;text-decoration:none}
.city-link span{font-weight:400;font-size:.85rem;opacity:.75}
.city-link:hover{border-color:#EC693A}
.city-editorial{max-width:820px;margin:52px 0 24px;line-height:1.75}
.city-editorial h2{margin-top:30px}.city-editorial h3{margin-top:24px}
/* V0.8 : dépôt public de bureau */
.submit-hero{background:#f5e9df;padding:66px 0 48px}.submit-hero h1{font-size:clamp(45px,5vw,76px)}.submit-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:46px;align-items:start;padding-top:55px;padding-bottom:90px}.submit-main{min-width:0}.submit-form fieldset{border:0;padding:0 0 38px;margin:0 0 34px;border-bottom:1px solid #e4d5dd;min-width:0}.submit-form legend{display:flex;align-items:center;gap:13px;font-size:25px;font-weight:700;margin-bottom:23px;color:#4b374a}.submit-number{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;width:40px;height:40px;background:#c7bbd5;font-size:14px}.submit-fields{display:grid;grid-template-columns:1fr 1fr;gap:17px}.submit-fields label,.submit-full-label{display:flex;flex-direction:column;gap:9px;font-size:14px;font-weight:700}.submit-wide{grid-column:1/-1}.submit-form label strong{color:#ec693a}.submit-form input:not([type=checkbox]),.submit-form textarea{width:100%;padding:13px 15px;border:1px solid #d7c9d2;border-radius:8px;background:#fff;font:inherit;font-weight:400;color:#4b374a}.submit-form textarea{resize:vertical}.submit-checks{display:flex;gap:10px;flex-wrap:wrap;margin:15px 0 20px}.submit-checks label{cursor:pointer}.submit-checks input{position:absolute;opacity:0}.submit-checks span{display:block;padding:12px 15px;border:1px solid #d7c9d2;background:white;border-radius:9px;font-size:14px}.submit-checks input:checked+span{background:#4b374a;color:white;border-color:#4b374a}.submit-checks input:focus-visible+span{outline:3px solid #ec693a;outline-offset:2px}.submit-hint{color:#776777;font-size:13px;margin:8px 0 18px}.submit-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.submit-actions p{font-size:12px;color:#776777;max-width:240px}.submit-aside-card{background:#f0e1e9;padding:28px;position:sticky;top:120px}.submit-aside-card h3{font-size:28px}.submit-aside-card p{font-size:14px;line-height:1.7}.submit-feedback{padding:40px;background:#f0e1e9}.submit-feedback h2{font-size:32px}.submit-error{padding:18px;background:#fff1e9;border-left:4px solid #ec693a;margin-bottom:24px}.hidden-honeypot{position:absolute;left:-99999px;opacity:0}@media(max-width:850px){.submit-layout{grid-template-columns:1fr}.submit-aside{display:none}}@media(max-width:540px){.submit-fields{grid-template-columns:1fr}.submit-wide{grid-column:auto}.submit-hero{padding:40px 0}.submit-layout{padding-top:32px}.submit-form legend{font-size:21px}}

/* V0.9 — espace propriétaire et demandes */
.libeos-account-page{padding:65px 0 90px;min-height:65vh}.libeos-account-page h1{font-size:clamp(42px,5vw,68px)}.libeos-account-page h2{font-size:30px;margin-top:48px}.libeos-auth{max-width:620px;background:#fff;padding:36px;border:1px solid var(--line)}.libeos-auth h1{margin-top:12px}.libeos-contact-form{display:grid;gap:16px;margin-top:20px}.libeos-contact-form>label:not(.libeos-consent){display:grid;gap:7px;font-weight:700;font-size:14px}.libeos-contact-form input:not([type=checkbox]),.libeos-contact-form textarea{width:100%;border:1px solid var(--line);padding:13px;background:#fff;border-radius:6px;color:var(--ink);font:inherit}.libeos-consent{display:flex;gap:10px;align-items:flex-start;font-size:13px}.libeos-consent input{margin-top:5px}.libeos-contact-box{background:#f0e1e9;padding:28px;margin-top:32px}.libeos-contact-box h2{font-size:30px}.libeos-account-actions{display:flex;gap:12px;flex-wrap:wrap;margin:25px 0}.libeos-owner-list{display:grid;gap:12px}.libeos-owner-card{background:#fff;border:1px solid var(--line);padding:22px;display:flex;align-items:start;justify-content:space-between;gap:24px}.libeos-owner-card p{margin:7px 0}.libeos-owner-controls{display:flex;gap:14px;flex-wrap:wrap;align-items:center;font-size:14px}.libeos-owner-controls button{border:0;background:none;color:var(--ink);padding:0;text-decoration:underline}.libeos-owner-controls a{text-decoration:underline}.libeos-edit{margin:30px 0}@media(max-width:700px){.libeos-auth{padding:22px}.libeos-owner-card{flex-direction:column}.libeos-account-page{padding:35px 0}}

/* V1.0.3 — Menu simplifie et accueil mobile corrige */
.site-header .header-inner{gap:24px}
.site-header .nav{gap:clamp(14px,2.2vw,32px);font-size:15px}
.site-header .nav .nav-submit{white-space:nowrap;padding:13px 19px}
.site-header .brand-logo-image{max-width:175px;height:auto}
@media(max-width:760px){
 html,body{max-width:100%;overflow-x:clip}
 .site-header .header-inner{min-height:70px}
 .site-header .brand-logo-image{max-width:136px;height:auto}
 .site-header .nav{gap:0;padding:12px 18px 20px;box-shadow:0 16px 24px #4b374a25}
 .site-header .nav>a:not(.btn){padding:13px 5px;border-bottom:1px solid #ffffff30}
 .site-header .nav .nav-submit{margin-top:15px;width:100%;padding:14px}
 .hero{padding:24px 0 38px}
 .hero-inner{display:block;min-height:0}
 .hero-copy{padding:0}
 .hero-copy .eyebrow{font-size:9px;letter-spacing:1.2px}
 .hero-copy h1{font-size:clamp(35px,9.2vw,55px);line-height:1.05;letter-spacing:-.045em;margin:14px 0 15px}
 .hero-copy .lead{font-size:16px;line-height:1.5;margin:0;max-width:34rem}
 .hero-highlights{margin-top:15px;gap:5px 14px;font-size:11px}
 .hero-art{display:none!important}
 .hero .search-intro{margin-top:25px;gap:4px;font-size:13px}
 .hero .search-intro strong{font-size:17px}
 .hero .search-panel{margin-top:12px;padding:16px}
 .hero .search-grid{grid-template-columns:1fr;gap:12px}
 .hero .search-grid>.btn{grid-column:auto;width:100%}
}
@media(max-width:380px){.hero-copy h1{font-size:clamp(32px,9vw,40px)}.hero-highlights{font-size:10px}}

/* Blog Libéos V1.0.4 */

/* Libéos 1.0.6 : accueil mobile et recherche location / achat */
.transaction-switch{display:flex;gap:10px;margin-bottom:17px;flex-wrap:wrap}
.transaction-switch label{cursor:pointer;position:relative}
.transaction-switch input{position:absolute;opacity:0}
.transaction-switch span{display:inline-block;padding:11px 26px;border:1px solid #c7bbd5;border-radius:10px;background:#fff;color:#4b374a;font-weight:700}
.transaction-switch input:checked+span{background:#4b374a;color:#fff;border-color:#4b374a}
.transaction-switch input:focus-visible+span{outline:3px solid #ec693a;outline-offset:2px}
.submit-form select{width:100%;padding:13px 15px;border:1px solid #d7c9d2;border-radius:8px;background:#fff;color:#4b374a}
@media(max-width:760px){
  html,body{overflow-x:clip;max-width:100%}
  .hero{padding:25px 0 34px;overflow:hidden}
  .hero-inner{display:block;min-height:0}
  .hero-art,.hero-art .arch,.hero-art-label{display:none!important}
  .hero-copy{padding:0}
  .hero-copy h1{font-size:clamp(34px,9vw,49px)!important;line-height:1.08;letter-spacing:-.04em;margin:15px 0}
  .hero-copy .lead{font-size:16px;line-height:1.5}
  .hero-highlights{margin-top:14px;gap:6px 12px;font-size:11px}
  .hero .search-intro{margin-top:22px;gap:4px}
  .hero .search-panel{margin-top:12px;padding:15px}
  .hero .search-grid{grid-template-columns:1fr;gap:12px}
  .hero .search-grid>.btn{grid-column:auto;width:100%}
  .transaction-switch{display:grid;grid-template-columns:1fr 1fr}
  .transaction-switch span{display:block;text-align:center;padding:12px}
}

.libeos-rhythm-field[hidden]{display:none!important}

.libeos-rhythm-field[hidden],.libeos-budget-field[hidden],.libeos-submit-rhythm[hidden]{display:none!important}
@media(max-width:760px){.hero-art,.hero-art .arch,.hero-art-label{display:none!important}.hero-inner{display:block!important}.hero-copy{max-width:100%!important}}

/* ===== Blog & articles — V1.1.0 ===== */
.blog-hero{background:linear-gradient(180deg,#eee4ec 0%,var(--cream) 100%);padding:64px 0 48px;border-bottom:1px solid var(--line)}
.blog-hero h1{font-size:clamp(40px,5.4vw,72px);margin:16px 0 14px}
.blog-hero p{max-width:640px;color:#5f4b5e;font-size:19px;margin:0}
.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.blog-grid--archive{padding:52px 0 72px}
.blog-card{background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}
.blog-card:hover{transform:translateY(-3px);box-shadow:0 14px 38px #4b374a14}
.blog-card-media{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:linear-gradient(135deg,#c7bbd5 0%,#eee4ec 55%,#f5e9df 100%)}
.blog-card-media img{width:100%;height:100%;object-fit:cover;display:block}
.blog-card-arch{position:absolute;bottom:-1px;right:18%;width:34%;height:78%;background:#4b374a;border-radius:999px 999px 0 0;opacity:.9}
.blog-card-arch--small{right:6%;width:18%;height:46%;background:#ec693a;opacity:1}
.blog-card:nth-child(3n+2) .blog-card-arch{right:44%;background:#ec693a}.blog-card:nth-child(3n+2) .blog-card-arch--small{right:12%;background:#4b374a}
.blog-card:nth-child(3n) .blog-card-arch{right:auto;left:12%;background:#f5e9df;opacity:1}.blog-card:nth-child(3n) .blog-card-arch--small{background:#4b374a}
.blog-card-body{padding:26px 26px 28px;display:flex;flex-direction:column;gap:12px;flex:1}
.blog-card-meta{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#9d5684}
.blog-card-meta span+span{color:var(--muted);font-weight:400;letter-spacing:0;text-transform:none}
.blog-card h2{font-size:24px;line-height:1.2;margin:0}
.blog-card p{margin:0;color:var(--muted)}
.blog-card .text-link{margin-top:auto;align-self:flex-start}

.article-hero{background:linear-gradient(180deg,#eee4ec 0%,var(--cream) 100%);padding:34px 0 56px;border-bottom:1px solid var(--line)}
.breadcrumb{display:flex;flex-wrap:wrap;gap:8px;font-size:13px;color:var(--muted);margin-bottom:34px}
.breadcrumb a{text-decoration:underline;text-underline-offset:3px}
.breadcrumb [aria-current]{max-width:46ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.article-hero h1{font-size:clamp(36px,4.8vw,66px);max-width:960px;margin:16px 0 20px;line-height:1.06}
.article-chapo{font-size:clamp(18px,1.5vw,21px);line-height:1.55;max-width:760px;color:#5f4b5e;margin:0}
.article-meta{display:flex;flex-wrap:wrap;gap:8px 0;margin-top:28px;font-size:14px;color:var(--muted)}
.article-meta span+span::before{content:"·";margin:0 12px;color:var(--orange);font-weight:700}
.article-cover{margin-top:-28px}.article-cover img{width:100%;height:auto;max-height:520px;object-fit:cover;display:block}

.article-hero .wrap,.article-cover{max-width:1062px}
.article-layout{display:grid;grid-template-columns:250px minmax(0,740px);gap:72px;justify-content:center;padding:60px 0 90px}
.article-layout--single{grid-template-columns:minmax(0,740px)}
.article-aside{position:relative}
.toc,.aside-cta{position:sticky;top:28px}
.toc-title{font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#9d5684;margin:0 0 14px}
.toc ol,.toc-mobile ol{list-style:none;margin:0;padding:0;counter-reset:toc}
.toc li a{display:block;padding:9px 0 9px 16px;border-left:2px solid var(--line);font-size:14px;line-height:1.4;color:var(--muted);transition:color .15s,border-color .15s}
.toc li a:hover,.toc li a.is-active{color:var(--ink);border-left-color:var(--orange)}
.toc li a.is-active{font-weight:700}
.aside-cta{top:auto;margin-top:34px;padding:22px;background:#fff;border:1px solid var(--line)}
.aside-cta p{margin:0 0 14px;font-weight:700;line-height:1.35}
.aside-cta .btn{width:100%;padding:12px 16px}
.toc-mobile{display:none}

.article-body{font-size:18px;line-height:1.75;counter-reset:section;min-width:0}
.article-body>p:first-of-type{font-size:20px;line-height:1.65}
.article-body p{margin:0 0 20px}
.article-body a:not(.btn){text-decoration:underline;text-decoration-color:var(--orange);text-underline-offset:3px}
.article-body h2{font-size:clamp(27px,2.6vw,36px);line-height:1.15;margin:64px 0 20px;scroll-margin-top:24px}
.article-body h2:not(.no-num){counter-increment:section}
.article-body h2:not(.no-num)::before{content:counter(section,decimal-leading-zero);display:block;font-size:13px;font-weight:700;letter-spacing:2px;color:var(--orange);margin-bottom:10px}
.article-body h3{font-size:22px;margin:32px 0 10px}
.article-body ul,.article-body ol{margin:0 0 24px;padding:0}
.article-body ul{list-style:none}
.article-body ul li{position:relative;padding-left:26px;margin-bottom:10px}
.article-body ul li::before{content:"";position:absolute;left:4px;top:.72em;width:8px;height:8px;border-radius:50%;background:var(--orange)}
.article-body ol{padding-left:24px}.article-body ol li{margin-bottom:10px;padding-left:4px}
.article-body strong{color:var(--ink)}
.callout{background:#fff;border:1px solid var(--line);border-left:4px solid var(--sage);padding:24px 28px;margin:32px 0}
.callout--accent{background:#4b374a;border-color:#4b374a;color:#f5e9df}
.callout--accent strong{color:#fff}
.callout-title{font-size:12px!important;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#9d5684;margin:0 0 10px!important}
.callout--accent .callout-title{color:#ec693a}
.callout p:last-child,.callout ul:last-child{margin-bottom:0}
.callout ul li{margin-bottom:6px}
.table-wrap{overflow-x:auto;margin:28px 0;border:1px solid var(--line);background:#fff}
.article-body table{width:100%;border-collapse:collapse;font-size:16px;line-height:1.5}
.article-body th{background:#eee4ec;text-align:left;padding:14px 18px;font-size:13px;letter-spacing:.04em;text-transform:uppercase}
.article-body td{padding:14px 18px;border-top:1px solid var(--line);vertical-align:top}
.article-body td:first-child{font-weight:700;white-space:nowrap}
.article-body ul.checklist{background:#fff;border:1px solid var(--line);padding:10px 28px;margin:24px 0 32px}
.article-body ul.checklist li{padding:14px 0 14px 40px;margin:0;border-bottom:1px solid #efe4ea}
.article-body ul.checklist li:last-child{border-bottom:0}
.article-body ul.checklist li::before{left:0;top:15px;width:22px;height:22px;border-radius:5px;background:transparent;border:2px solid var(--sage)}
.article-body ul.checklist li::after{content:"";position:absolute;left:7px;top:19px;width:6px;height:11px;border:solid var(--orange);border-width:0 2.5px 2.5px 0;transform:rotate(45deg)}
.faq-item{background:#fff;border:1px solid var(--line);margin:0 0 12px}
.faq-item summary{cursor:pointer;list-style:none;padding:20px 56px 20px 24px;font-weight:700;font-size:18px;line-height:1.4;position:relative}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";position:absolute;right:22px;top:50%;transform:translateY(-50%);width:28px;height:28px;border-radius:50%;background:#eee4ec;color:var(--ink);display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:400;line-height:1}
.faq-item[open] summary::after{content:"−";background:var(--orange);color:#fff}
.faq-item p{padding:0 24px 22px;margin:0;font-size:17px;color:#5f4b5e}
.faq-item summary:focus-visible{outline:3px solid var(--orange);outline-offset:2px}

.article-cta{margin-top:64px;background:#4b374a;color:#f5e9df;padding:38px 40px;display:grid;grid-template-columns:1fr auto;gap:28px;align-items:end}
.article-cta .eyebrow{color:#ec693a}
.article-cta-title{font-size:30px!important;font-weight:700;line-height:1.15;letter-spacing:-.03em;color:#fff;margin:10px 0 10px!important}
.article-cta p{margin:0;font-size:16px;line-height:1.55}
.article-cta-actions{display:flex;flex-direction:column;gap:10px}
.article-cta .btn-ghost{background:transparent;border-color:#f5e9df66;color:#f5e9df!important}
.article-cta .btn-ghost:hover{background:#ffffff14;border-color:#f5e9df}
.related-posts{background:#eee4ec;padding:72px 0 80px;border-top:1px solid var(--line)}
.related-posts .section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:30px}
.related-posts .section-head h2{font-size:clamp(28px,3vw,42px);margin:10px 0 0}

@media(max-width:1080px){.article-layout{grid-template-columns:200px minmax(0,1fr);gap:44px}.article-hero .wrap,.article-cover{max-width:none}}
@media(max-width:860px){
  .blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .article-layout{grid-template-columns:minmax(0,1fr);padding:34px 0 60px}
  .article-aside{display:none}
  .toc-mobile{display:block;background:#fff;border:1px solid var(--line);margin:0 0 30px}
  .toc-mobile summary{cursor:pointer;padding:16px 20px;font-weight:700}
  .toc-mobile ol{padding:0 20px 14px}
  .toc-mobile li a{display:block;padding:8px 0;border-top:1px solid #efe4ea;font-size:15px;text-decoration:none!important}
  .toc-mobile li{padding-left:0!important;margin:0!important}.toc-mobile li::before{display:none}
  .article-cta{grid-template-columns:1fr;padding:30px 24px}
}
@media(max-width:600px){
  .blog-grid{grid-template-columns:1fr}
  .blog-hero{padding:38px 0 30px}
  .article-hero{padding:22px 0 38px}
  .breadcrumb{margin-bottom:20px}
  .breadcrumb [aria-current]{max-width:24ch}
  .article-body{font-size:17px}
  .article-body>p:first-of-type{font-size:18px}
  .article-body h2{margin-top:48px}
  .callout{padding:20px}
  .article-body ul.checklist{padding:6px 18px}
  .article-body td:first-child{white-space:normal}
  .related-posts .section-head{display:block}
}

/* ===== Page d'accueil — V1.2.0 ===== */
.home-hero{background:var(--cream);padding:72px 0 0;position:relative}
.home-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:120px;background:#fff;z-index:0}
.home-hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:64px;align-items:end;position:relative;z-index:1}
.home-hero-copy{padding-bottom:150px}
.home-hero h1{font-size:clamp(40px,5.2vw,78px);line-height:1.02;letter-spacing:-.045em;margin:0 0 26px;max-width:13.5em}
.home-lead{font-size:clamp(18px,1.6vw,22px);line-height:1.5;color:#5f4b5e;max-width:34em;margin:0}

.facade{align-self:stretch;display:flex;align-items:flex-end}
.facade-arch{width:100%;background:#4b374a;border-radius:240px 240px 0 0;padding:110px 15% 170px;position:relative;min-height:520px}
.plaques{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.plaques li{position:relative;background:#c7bbd5;color:#4b374a;padding:13px 18px 12px 30px;display:flex;flex-direction:column;line-height:1.2;box-shadow:inset 0 -3px 0 #a99abb}
.plaques li::before,.plaques li::after{content:"";position:absolute;left:11px;width:6px;height:6px;border-radius:50%;background:#8f7ea3}
.plaques li::before{top:11px}.plaques li::after{bottom:11px}
.plaques strong{font-size:17px;letter-spacing:.01em}
.plaques span{font-size:12px;opacity:.75;margin-top:3px}
.plaques .plaque-free{background:#ec693a;color:#fff;box-shadow:inset 0 -3px 0 #c9532a}
.plaques .plaque-free::before,.plaques .plaque-free::after{background:#fff;opacity:.6}
.plaques .plaque-free span{opacity:.9}
.facade-bell{position:absolute;right:13%;bottom:118px;width:26px;height:42px;border-radius:13px;background:#f5e9df;box-shadow:inset 0 0 0 7px #f5e9df,inset 0 0 0 13px #c7bbd5}

.home-search{position:relative;z-index:2;margin-top:-120px}
.home-search .search-panel{margin:0;padding:26px 28px 28px;border:0;box-shadow:0 24px 60px #4b374a1f}
.home-search .search-grid{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) auto}
.home-search .search-grid>.btn{padding:0 34px;font-size:15px}

.home-section{padding:96px 0}
.home-rhythms{background:#fff;padding-top:110px}
.home-head{max-width:620px;margin-bottom:44px}
.home-head h2{font-size:clamp(32px,3.6vw,52px);line-height:1.05;letter-spacing:-.04em;margin:0 0 14px}
.home-head p{font-size:18px;line-height:1.55;color:var(--muted);margin:0 0 18px}
.home-head--row{max-width:none;display:flex;justify-content:space-between;align-items:baseline;gap:24px}
.home-head--row h2{margin:0}
.home-head .text-link,.home-head--row .text-link{white-space:nowrap}

.rhythm-list{border-top:2px solid #4b374a}
.rhythm{display:grid;grid-template-columns:200px 250px minmax(0,1fr) auto;gap:32px;align-items:center;padding:30px 4px;border-bottom:1px solid var(--line);transition:background .2s}
.rhythm:hover{background:var(--cream);color:inherit}
.rhythm-name{font-size:28px;font-weight:700;letter-spacing:-.03em}
.week{display:flex;gap:6px}
.day{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;border:1.5px solid #c7bbd5;color:#9a8aa8}
.day.is-on{background:#4b374a;border-color:#4b374a;color:#fff}
.week--own{align-items:center;gap:12px;font-size:14px;font-weight:700}
.key{width:34px;height:34px;border-radius:50%;background:#ec693a;position:relative;flex:none}
.key::after{content:"";position:absolute;left:11px;top:11px;width:12px;height:12px;border-radius:50%;border:3px solid #fff;box-sizing:border-box}
.rhythm-text{color:var(--muted);line-height:1.5;max-width:36em}
.rhythm-link{font-size:14px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:3px;white-space:nowrap}
.rhythm:hover .rhythm-link{color:#ec693a}

.home-listings{background:var(--cream)}
.home-cities{background:#fff}
.home-cities-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:64px;align-items:start}
.city-pills{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.city-pills a{display:inline-flex;align-items:center;gap:10px;padding:11px 18px;border:1.5px solid #c7bbd5;border-radius:999px;font-weight:700;font-size:15px;transition:background .15s,border-color .15s}
.city-pills a:hover{background:#4b374a;border-color:#4b374a;color:#fff}
.city-pills span{font-size:12px;font-weight:700;background:#f5e9df;color:#4b374a;border-radius:999px;padding:2px 8px}
.home-guides{background:var(--cream)}

.home-owner{background:#4b374a;color:#f5e9df;padding:88px 0}
.home-owner-grid{display:grid;grid-template-columns:auto minmax(0,1fr);gap:72px;align-items:center;max-width:1000px}
.home-owner h2{color:#fff;font-size:clamp(30px,3.4vw,48px);line-height:1.08;letter-spacing:-.04em;margin:0 0 16px}
.home-owner p{font-size:18px;line-height:1.55;margin:0 0 28px;max-width:32em}
.owner-plaque{width:280px;background:#ec693a;color:#fff;padding:26px 28px 24px 44px;position:relative;transform:rotate(-3deg);box-shadow:inset 0 -4px 0 #c9532a,0 30px 50px #00000030}
.owner-plaque::before,.owner-plaque::after{content:"";position:absolute;left:16px;width:8px;height:8px;border-radius:50%;background:#fff;opacity:.6}
.owner-plaque::before{top:16px}.owner-plaque::after{bottom:16px}
.owner-plaque strong{display:block;font-size:24px;letter-spacing:-.02em}
.owner-plaque span{display:block;font-size:14px;margin-top:4px;opacity:.9}

.home-hero h1:focus-visible,.rhythm:focus-visible,.city-pills a:focus-visible{outline:3px solid #ec693a;outline-offset:3px}
@media(prefers-reduced-motion:reduce){.rhythm,.city-pills a{transition:none}}

@media(max-width:1080px){
  .home-hero-grid{grid-template-columns:minmax(0,1fr) 300px;gap:40px}
  .facade-arch{min-height:440px;padding:90px 12% 160px}
  .rhythm{grid-template-columns:170px minmax(0,1fr) auto;gap:20px 28px}
  .rhythm-text{grid-column:1/-1;grid-row:2}
}
@media(max-width:860px){
  .home-hero{padding-top:40px}
  .home-hero::after{display:none}
  .home-hero-grid{grid-template-columns:1fr;gap:0}
  .home-hero-copy{padding-bottom:28px}
  .facade{display:none}
  .home-search{margin-top:0;padding-bottom:44px}
  .home-search .search-grid{grid-template-columns:1fr}
  .home-search .search-grid>.btn{min-height:52px;width:100%}
  .home-search .search-panel{padding:18px}
  .home-section{padding:64px 0}
  .home-rhythms{padding-top:64px}
  .rhythm{grid-template-columns:1fr auto;gap:14px;padding:24px 0}
  .rhythm-name{font-size:24px}
  .rhythm .week{grid-column:2;grid-row:1}
  .rhythm-text{grid-column:1/-1;grid-row:2}
  .rhythm-link{grid-column:1/-1;grid-row:3;justify-self:start}
  .day{width:28px;height:28px;font-size:11px}
  .home-head--row{display:block}
  .home-head--row .text-link{display:inline-block;margin-top:14px}
  .home-cities-grid{grid-template-columns:1fr;gap:8px}
  .home-owner{padding:60px 0}
  .home-owner-grid{grid-template-columns:1fr;gap:40px}
  .owner-plaque{width:240px;margin-left:8px}
}
@media(max-width:480px){.week--own{font-size:0;gap:0}.rhythm .week{gap:4px}.day{width:24px;height:24px;font-size:10px}}
.listing-media{background:#c7bbd5}
.listing-plaque{position:relative;background:#f5e9df;color:#4b374a;padding:14px 22px 13px 34px;min-width:58%;display:flex;flex-direction:column;line-height:1.2;box-shadow:inset 0 -3px 0 #e2cdbd,0 10px 24px #4b374a1f}
.listing-plaque::before,.listing-plaque::after{content:"";position:absolute;left:13px;width:6px;height:6px;border-radius:50%;background:#c7bbd5}
.listing-plaque::before{top:12px}.listing-plaque::after{bottom:12px}
.listing-plaque strong{font-size:20px;letter-spacing:-.01em}
.listing-plaque span{font-size:12px;opacity:.75;margin-top:3px}
.listing:nth-child(3n+2) .listing-media{background:#4b374a}
.listing:nth-child(3n) .listing-media{background:#eee4ec}

/* ===== Page annonces — V1.3.0 ===== */
.listings-hero{background:var(--cream);padding:56px 0 0;position:relative}
.listings-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:90px;background:#fff}
.listings-hero h1{font-size:clamp(34px,4.4vw,62px);line-height:1.04;letter-spacing:-.045em;max-width:16em;margin:0 0 12px}
.listings-count{font-size:18px;color:var(--muted);margin:0 0 34px}
.listings-search{position:relative;z-index:1}
.listings-search .search-panel{margin:0;padding:22px 26px 24px;border:0;box-shadow:0 24px 60px #4b374a1f}
.listings-search .search-grid{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) auto}
.listings-search .search-grid>.btn{padding:0 34px;font-size:15px}
.listings-results{background:#fff;padding:40px 0 90px}
.listings-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 24px;margin-bottom:34px;padding-bottom:22px;border-bottom:1px solid var(--line)}
.rhythm-tabs{display:flex;gap:6px;flex-wrap:wrap}
.rhythm-tabs a{padding:9px 16px;border-radius:999px;font-size:14px;font-weight:700;color:var(--muted)}
.rhythm-tabs a:hover{color:var(--ink);background:var(--cream)}
.rhythm-tabs a[aria-current]{background:#4b374a;color:#fff}
.filter-chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.filter-chips a{display:inline-flex;align-items:center;gap:8px;padding:7px 8px 7px 14px;border:1.5px solid #c7bbd5;border-radius:999px;font-size:14px;font-weight:700}
.filter-chips a span{width:20px;height:20px;border-radius:50%;background:#eee4ec;display:inline-flex;align-items:center;justify-content:center;font-size:14px;line-height:1}
.filter-chips a:hover span{background:#ec693a;color:#fff}
.filter-chips .chips-reset{border:0;padding:7px 4px;font-weight:400;text-decoration:underline;text-underline-offset:3px;color:var(--muted)}

.listings-grid{gap:26px}
.listing{display:flex;flex-direction:column;border:1px solid var(--line);background:#fff;transition:box-shadow .2s}
.listing:hover{box-shadow:0 16px 40px #4b374a14}
.listing-media{display:flex;aspect-ratio:16/10;height:auto}
.listing-body{padding:20px 22px 18px;display:flex;flex-direction:column;flex:1}
.listing-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.listing-tags span{font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;background:#eee4ec;color:#4b374a}
.listing-tags span+span{background:transparent;border:1px solid #dfd0d9;color:var(--muted)}
.listing h3{font-size:21px;line-height:1.22;letter-spacing:-.02em;margin:0 0 12px}
.listing-facts{display:flex;align-items:baseline;gap:14px;margin:0 0 16px}
.listing-facts strong{font-size:22px;letter-spacing:-.02em}
.listing-facts span{color:var(--muted);font-size:15px}
.listing-footer{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid var(--line);padding-top:14px;font-size:14px;font-weight:700}
.listing-footer>a:first-child{border-bottom:1px solid currentColor;padding-bottom:2px}
.listing-source,.listing-direct{font-weight:400;color:var(--muted);font-size:13px;text-align:right}
.listing-source{text-decoration:underline;text-underline-offset:3px}
.listing-direct{color:#9d5684;font-weight:700}

.listing-cta{background:#4b374a;color:#f5e9df;padding:30px 28px;display:flex;flex-direction:column;justify-content:flex-end}
.listing-cta h3{color:#fff;font-size:24px;line-height:1.15;letter-spacing:-.03em;margin:28px 0 10px}
.listing-cta p{margin:0 0 22px;line-height:1.5}
.listing-cta .btn{align-self:flex-start}
.listing-cta-plaque{align-self:flex-start;position:relative;background:#ec693a;color:#fff;padding:14px 22px 13px 34px;transform:rotate(-3deg);box-shadow:inset 0 -3px 0 #c9532a;line-height:1.2}
.listing-cta-plaque::before,.listing-cta-plaque::after{content:"";position:absolute;left:13px;width:6px;height:6px;border-radius:50%;background:#fff;opacity:.6}
.listing-cta-plaque::before{top:12px}.listing-cta-plaque::after{bottom:12px}
.listing-cta-plaque strong{display:block;font-size:18px}.listing-cta-plaque span{font-size:12px;opacity:.9}

.listings-empty{max-width:640px;padding:30px 0 10px}
.listings-empty h2{font-size:clamp(28px,3vw,40px);line-height:1.1;letter-spacing:-.035em;margin:0 0 14px}
.listings-empty p{font-size:18px;color:var(--muted);line-height:1.55;margin:0 0 26px}
.listings-empty-actions{display:flex;flex-wrap:wrap;gap:12px}

.pagination{margin:48px 0 0}
.pagination .nav-links{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.pagination .page-numbers{min-width:44px;height:44px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;border:1.5px solid #dfd0d9;border-radius:999px;margin:0;font-weight:700;font-size:14px}
.pagination .page-numbers.current{background:#4b374a;border-color:#4b374a;color:#fff}
.pagination a.page-numbers:hover{border-color:#4b374a;color:#4b374a}
.pagination .dots{border:0}
.listings-cities{background:var(--cream)}
.rhythm-tabs a:focus-visible,.filter-chips a:focus-visible,.pagination a:focus-visible{outline:3px solid #ec693a;outline-offset:2px}

@media(max-width:1080px){.listings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:860px){
  .listings-hero{padding-top:34px}.listings-hero::after{display:none}
  .listings-count{margin-bottom:22px}
  .listings-search{padding-bottom:30px}
  .listings-search .search-grid{grid-template-columns:1fr}
  .listings-search .search-grid>.btn{min-height:52px;width:100%}
  .listings-search .search-panel{padding:18px}
  .listings-results{padding:28px 0 64px}
}
@media(max-width:620px){
  .listings-grid{grid-template-columns:1fr}
  .rhythm-tabs{width:100%;overflow-x:auto;flex-wrap:nowrap}
  .rhythm-tabs a{white-space:nowrap}
}
@media(max-width:620px){.listing-media{aspect-ratio:21/9}.listing-media:has(img){aspect-ratio:16/10}}

/* ===== Professions libérales — V1.4.0 ===== */
.home-search .search-grid,.listings-search .search-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1.1fr) minmax(0,1fr) auto}
.home-professions{background:#fff;padding-top:120px;padding-bottom:40px}
.home-professions+.home-rhythms{padding-top:56px}
.profession-families{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:2px solid #4b374a}
.profession-family{padding:30px 26px 10px 0}
.profession-family+.profession-family{padding-left:26px;border-left:1px solid var(--line)}
.family-plaque{position:relative;display:inline-block;background:#c7bbd5;color:#4b374a;font-weight:700;font-size:17px;padding:11px 18px 10px 28px;box-shadow:inset 0 -3px 0 #a99abb;margin-bottom:18px}
.family-plaque::before,.family-plaque::after{content:"";position:absolute;left:10px;width:6px;height:6px;border-radius:50%;background:#8f7ea3}
.family-plaque::before{top:9px}.family-plaque::after{bottom:9px}
.family-plaque:hover{background:#ec693a;color:#fff;box-shadow:inset 0 -3px 0 #c9532a}
.family-plaque:hover::before,.family-plaque:hover::after{background:#fff}
.profession-family ul{list-style:none;margin:0;padding:0}
.profession-family li a{display:block;padding:7px 0;color:var(--muted);font-size:16px}
.profession-family li a:hover{color:#4b374a;text-decoration:underline;text-underline-offset:4px}
.submit-professions{display:flex;flex-direction:column;gap:10px}
.submit-label{font-weight:700;font-size:14px}.submit-label small{font-weight:400;color:var(--muted)}
@media(max-width:1080px){.home-search .search-grid,.listings-search .search-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-search .search-grid>.btn,.listings-search .search-grid>.btn{grid-column:1/-1}.profession-families{grid-template-columns:repeat(2,minmax(0,1fr))}.profession-family:nth-child(3){padding-left:0;border-left:0}.profession-family:nth-child(n+3){border-top:1px solid var(--line)}}
@media(max-width:860px){.home-search .search-grid,.listings-search .search-grid{grid-template-columns:1fr}.home-professions{padding-top:56px}}
@media(max-width:560px){.profession-families{grid-template-columns:1fr}.profession-family,.profession-family+.profession-family{padding:22px 0 6px;border-left:0}.profession-family+.profession-family{border-top:1px solid var(--line)}}

/* ===== Guides SEO — V1.5.0 ===== */
.article-meta a{text-decoration:underline;text-underline-offset:3px}
.author-box{display:grid;grid-template-columns:64px minmax(0,1fr);gap:20px;align-items:start;margin-top:56px;padding:26px;background:#fff;border:1px solid var(--line)}
.author-initials{width:64px;height:64px;border-radius:50%;background:#4b374a;color:#f5e9df;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:20px}
.author-box p{margin:0 0 10px;font-size:16px;line-height:1.6}
.author-name{font-weight:700;font-size:18px!important;margin-bottom:4px!important}
.guide-listings{margin-top:48px}
.guide-listings-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.guide-listings .listing h3{font-size:18px}
.article-body .listing-tags span::before,.article-body .listing ul li::before{display:none}
@media(max-width:620px){.guide-listings-grid{grid-template-columns:1fr!important}.author-box{grid-template-columns:1fr}}
.footer-grid{grid-template-columns:2fr 1fr 1fr 1fr}
@media(max-width:760px){.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.footer-grid{grid-template-columns:1fr}}

/* ===== Pages par profession — V1.6.0 ===== */
.listings-hero .breadcrumb{margin-bottom:24px}
.profession-intro{font-size:clamp(17px,1.4vw,20px);line-height:1.55;color:#5f4b5e;max-width:46em;margin:0 0 14px}
.profession-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:32px;padding-bottom:22px;border-bottom:1px solid var(--line)}
.profession-chips a{padding:8px 15px;border:1.5px solid #c7bbd5;border-radius:999px;font-size:14px;font-weight:700}
.profession-chips a:hover{background:#4b374a;border-color:#4b374a;color:#fff}
.profession-more{margin:36px 0 0;text-align:center}
.profession-note{margin:22px 0 0;font-size:14px;color:var(--muted);max-width:60em}
.profession-guide{margin-top:56px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;background:var(--cream);border-left:4px solid #ec693a;padding:30px 34px}
.profession-guide-label{font-size:13px;font-weight:700;color:#9d5684;margin:0 0 6px}
.profession-guide h2{font-size:clamp(22px,2.2vw,30px);line-height:1.15;letter-spacing:-.03em;margin:0 0 8px}
.profession-guide p{margin:0;color:var(--muted)}
@media(max-width:760px){.profession-guide{grid-template-columns:1fr;padding:24px}.profession-guide .btn{justify-self:start}}
.mv-stats{display:flex;flex-wrap:wrap;gap:10px 34px;margin:0 0 30px;padding:18px 22px;background:var(--cream);border-left:4px solid #4b374a}
.mv-stats p{margin:0;font-size:15px;color:#5f4b5e}.mv-stats strong{color:#4b374a}
.city-pills a[aria-current]{background:#4b374a;border-color:#4b374a;color:#fff}

/* ===== Dépôt d'annonce — V1.8.0 ===== */
.deposit-hero{background:linear-gradient(180deg,#eee4ec 0%,var(--cream) 100%);padding:54px 0 48px;border-bottom:1px solid var(--line)}
.deposit-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:56px;align-items:center}
.deposit-hero h1{font-size:clamp(32px,4.4vw,58px);line-height:1.05;letter-spacing:-.04em;margin:0 0 18px;max-width:15em}
.deposit-lead{font-size:clamp(17px,1.5vw,20px);line-height:1.55;color:#5f4b5e;max-width:36em;margin:0 0 20px}
.deposit-points{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px 22px}
.deposit-points li{position:relative;padding-left:22px;font-size:15px}
.deposit-points li::before{content:"";position:absolute;left:0;top:.45em;width:11px;height:6px;border:solid #ec693a;border-width:0 0 2.5px 2.5px;transform:rotate(-45deg)}
.deposit-plaque{position:relative;background:#ec693a;color:#fff;padding:22px 30px 20px 44px;transform:rotate(-3deg);box-shadow:inset 0 -4px 0 #c9532a,0 24px 40px #4b374a26;line-height:1.2}
.deposit-plaque::before,.deposit-plaque::after{content:"";position:absolute;left:16px;width:8px;height:8px;border-radius:50%;background:#fff;opacity:.6}
.deposit-plaque::before{top:15px}.deposit-plaque::after{bottom:15px}
.deposit-plaque strong{display:block;font-size:24px}.deposit-plaque span{font-size:14px}
.deposit-layout{display:grid;grid-template-columns:minmax(0,760px) 300px;gap:56px;justify-content:center;padding-top:44px;padding-bottom:90px}
.deposit-main{min-width:0}
.deposit-step{border:0;margin:0 0 22px;padding:26px 28px 28px;background:#fff;border:1px solid var(--line);min-width:0}
.deposit-step legend{float:left;width:100%;display:flex;align-items:center;gap:12px;font-size:21px;font-weight:700;color:#4b374a;margin:0 0 18px;padding:0}
.deposit-step legend span{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:#4b374a;color:#fff;font-size:15px;flex:none}
.deposit-step>*:not(legend){clear:both}
.deposit-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.deposit-cards label{cursor:pointer;position:relative}
.deposit-cards input,.deposit-chips input,.week-picker input{position:absolute;opacity:0;pointer-events:none}
.deposit-cards span{display:flex;flex-direction:column;gap:4px;height:100%;padding:16px 18px;border:2px solid #dfd0d9;background:#fff;transition:border-color .15s,background .15s}
.deposit-cards strong{font-size:17px}.deposit-cards small{color:var(--muted);font-size:13px;line-height:1.4}
.deposit-cards input:checked+span{border-color:#4b374a;background:#f6eff4}
.deposit-cards input:focus-visible+span,.deposit-chips input:focus-visible+span,.week-picker input:focus-visible+span{outline:3px solid #ec693a;outline-offset:2px}
.deposit-cards--small{margin-top:14px}
.deposit-rhythm[hidden]{display:none}
.deposit-days{margin-top:18px}
.deposit-label{display:block;font-size:14px;font-weight:700;margin-bottom:10px}
.deposit-label small,.deposit-field small{font-weight:400;color:var(--muted)}
.week-picker{display:flex;flex-wrap:wrap;gap:8px}
.week-picker label{cursor:pointer;position:relative}
.week-picker span{display:flex;align-items:center;justify-content:center;width:52px;height:44px;border-radius:999px;border:2px solid #c7bbd5;font-weight:700;font-size:14px}
.week-picker input:checked+span{background:#4b374a;border-color:#4b374a;color:#fff}
.deposit-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.deposit-wide{grid-column:1/-1}
.deposit-field{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:700;position:relative;margin-top:16px}
.deposit-grid .deposit-field{margin-top:0}
.deposit-field b{color:#ec693a}
.deposit-form input:not([type=checkbox]):not([type=radio]):not([type=file]),.deposit-form textarea,.deposit-form select{width:100%;padding:13px 14px;border:1.5px solid #d7c9d2;border-radius:8px;background:#fff;font:inherit;font-size:16px;font-weight:400;color:#4b374a}
.deposit-form textarea{resize:vertical;min-height:150px;line-height:1.5}
.deposit-form input:focus,.deposit-form textarea:focus,.deposit-form select:focus{outline:none;border-color:#4b374a;box-shadow:0 0 0 3px #c7bbd5}
.deposit-form [aria-invalid="true"]{border-color:#ec693a!important;background:#fff6f1!important}
.deposit-err{display:none;font-style:normal;font-weight:400;font-size:13px;color:#c9532a}
.deposit-form [aria-invalid="true"]~.deposit-err{display:block}
.deposit-price{display:flex;align-items:center;gap:8px}
.deposit-price input{flex:1 1 90px;min-width:0}
.deposit-price span{font-weight:700}
.deposit-price select{flex:1 1 140px;width:auto!important}
.deposit-counter{font-size:12px;font-weight:400;color:#c9532a}
.deposit-counter.is-ok{color:var(--muted)}
.deposit-tips{font-size:13px;color:var(--muted);background:var(--cream);padding:12px 14px;line-height:1.6}
.deposit-tips span{font-weight:700;color:#4b374a}
.deposit-photo input[type=file]{font-weight:400;font-size:14px;padding:12px;border:1.5px dashed #c7bbd5;border-radius:8px;background:#fff}
.deposit-chips{display:flex;flex-wrap:wrap;gap:10px}
.deposit-chips label{cursor:pointer;position:relative}
.deposit-chips span{display:block;padding:11px 16px;border:2px solid #dfd0d9;border-radius:999px;font-weight:700;font-size:14px;background:#fff}
.deposit-chips input:checked+span{background:#4b374a;border-color:#4b374a;color:#fff}
.deposit-hint{font-size:13px;color:var(--muted);margin:0 0 14px}
.deposit-step .deposit-hint:last-child{margin:14px 0 0}
.deposit-submit{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-top:8px}
.deposit-submit .btn{font-size:17px;padding:18px 30px;min-height:58px}
.deposit-submit .btn[disabled]{opacity:.7;cursor:wait}
.deposit-submit p{margin:0;font-size:13px;color:var(--muted)}
.deposit-aside-card{position:sticky;top:28px;background:#4b374a;color:#f5e9df;padding:28px}
.deposit-aside-card h2{color:#fff;font-size:22px;margin:0 0 16px}
.deposit-aside-card ol{margin:0 0 18px;padding-left:20px}
.deposit-aside-card li{margin-bottom:10px;line-height:1.5}
.deposit-aside-card strong{color:#fff}
.deposit-aside-card p{margin:0;font-size:14px;line-height:1.6}
.deposit-done{padding:36px;background:#fff;border:1px solid var(--line);border-left:4px solid #ec693a}
.deposit-done h2{font-size:clamp(24px,3vw,32px);margin:0 0 12px}
.deposit-done-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
@media(max-width:980px){.deposit-layout{grid-template-columns:minmax(0,1fr)}.deposit-aside{order:1}.deposit-aside-card{position:static;padding:20px 22px}.deposit-aside-card p{display:none}}
@media(max-width:700px){
  .deposit-hero{padding:30px 0 28px}.deposit-hero-grid{grid-template-columns:1fr;gap:0}.deposit-plaque{display:none}
  .deposit-points{flex-direction:column;gap:6px}
  .deposit-layout{padding-top:20px;padding-bottom:60px;gap:20px}
  .deposit-step{padding:20px 16px 22px;margin-left:-4px;margin-right:-4px}
  .deposit-step legend{font-size:18px}
  .deposit-cards,.deposit-grid{grid-template-columns:1fr}
  .week-picker span{width:46px;height:42px}
  .deposit-submit .btn{width:100%;justify-content:center}
}
.deposit-field{display:block}
.deposit-field>input,.deposit-field>textarea,.deposit-field>select{display:block;margin-top:8px}
.deposit-field>.deposit-price{margin-top:0}
.deposit-field>.deposit-label{margin-bottom:8px}
.deposit-counter{display:block;margin-top:6px}
.deposit-err{margin-top:6px}
.deposit-cards input:checked+span{box-shadow:inset 0 0 0 1px #4b374a}

/* ===== Services et fiche annonce — V1.9.0 ===== */
.svc-icon{flex:none;display:block}
.svc-group{margin:0 0 16px}
.svc-group:last-child{margin-bottom:0}
.svc-group-title{display:block;font-size:13px;font-weight:700;color:#9d5684;margin:0 0 8px}
.svc-checks{display:flex;flex-wrap:wrap;gap:8px}
.svc-check{cursor:pointer;position:relative}
.svc-check input{position:absolute;opacity:0;pointer-events:none}
.svc-check span{display:inline-flex;align-items:center;gap:8px;padding:9px 14px 9px 11px;border:2px solid #dfd0d9;border-radius:999px;background:#fff;font-size:14px;font-weight:700;color:#4b374a;transition:background .15s,border-color .15s}
.svc-check span .svc-icon{color:#9d5684}
.svc-check input:checked+span{background:#4b374a;border-color:#4b374a;color:#fff}
.svc-check input:checked+span .svc-icon{color:#ec693a}
.svc-check input:focus-visible+span{outline:3px solid #ec693a;outline-offset:2px}
.svc-mini{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px;padding:0}
.svc-mini li{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#eee4ec;color:#4b374a}
.svc-mini li.svc-more{width:auto;padding:0 10px;font-size:12px;font-weight:700}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}

.listing-hero{background:linear-gradient(180deg,#eee4ec 0%,var(--cream) 100%);padding:30px 0 38px;border-bottom:1px solid var(--line)}
.listing-hero .breadcrumb{margin-bottom:22px}
.listing-hero h1{font-size:clamp(28px,3.6vw,48px);line-height:1.08;letter-spacing:-.035em;margin:12px 0 14px;max-width:22em}
.listing-hero-facts{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 20px;margin:0;font-size:16px;color:#5f4b5e}
.listing-hero-facts strong{font-size:26px;color:#4b374a;letter-spacing:-.02em}
.listing-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:48px;padding-top:36px;padding-bottom:70px;align-items:start}
.listing-main{min-width:0}
.listing-visual{aspect-ratio:16/9;background:#c7bbd5;display:flex;align-items:center;justify-content:center;overflow:hidden;margin-bottom:18px}
.listing-visual img{width:100%;height:100%;object-fit:cover;display:block}
.listing-visual .listing-plaque{min-width:44%}
.listing-main h2{font-size:24px;letter-spacing:-.02em;margin:0 0 14px}
.listing-description{margin:20px 0 36px;font-size:17px;line-height:1.7}
.svc-display{margin:0 0 36px;padding:26px 28px;background:#fff;border:1px solid var(--line)}
.svc-display-group+.svc-display-group{margin-top:20px}
.svc-display h3{font-size:13px;font-weight:700;color:#9d5684;margin:0 0 10px;letter-spacing:.02em}
.svc-display ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px 18px}
.svc-display li{display:flex;align-items:center;gap:12px;font-size:15px}
.svc-display li .svc-icon{width:38px;height:38px;padding:8px;border-radius:50%;background:#f5e9df;color:#4b374a;box-sizing:border-box}
.svc-note{margin:18px 0 0;font-size:13px;color:var(--muted)}
.listing-infos dl{margin:0;border-top:2px solid #4b374a}
.listing-infos dl div{display:grid;grid-template-columns:180px minmax(0,1fr);gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}
.listing-infos dt{font-weight:700;font-size:14px}
.listing-infos dd{margin:0;color:#5f4b5e}
.listing-aside-card{position:sticky;top:24px;background:#fff;border:1px solid var(--line);padding:24px}
.listing-aside-price{font-size:28px;font-weight:700;letter-spacing:-.02em;margin:0 0 14px}
.listing-aside-note{font-size:14px;color:var(--muted);line-height:1.55;margin:0 0 16px}
.listing-aside-card .btn{width:100%;justify-content:center}
.listing-aside-card .libeos-contact-box{margin:0;padding:0;background:none;border:0}
.listing-aside-card .libeos-contact-box h2{font-size:20px;margin:0 0 6px}
.listing-aside-own{font-size:14px;color:var(--muted);margin:16px 4px 0}
.listing-aside-own a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:900px){.listing-layout{grid-template-columns:minmax(0,1fr);gap:28px}.listing-aside-card{position:static}.listing-infos dl div{grid-template-columns:130px minmax(0,1fr)}}
@media(max-width:600px){.svc-display{padding:20px 16px}.svc-display ul{grid-template-columns:1fr 1fr}.svc-check span{font-size:13px;padding:8px 12px 8px 9px}}
.listing-visual--empty{aspect-ratio:21/8}@media(max-width:600px){.listing-visual--empty{aspect-ratio:16/7}}
.listing-tags .tag-demo{background:transparent!important;border:0!important;color:#9a8aa8!important;font-weight:400!important;font-size:11px!important;padding:4px 2px!important}
.listing-map{margin:0 0 36px}
.map-frame{position:relative;aspect-ratio:16/8;background:#eee4ec;border:1px solid var(--line);overflow:hidden}
.map-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.map-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;padding:20px;color:#4b374a;background:radial-gradient(circle at 50% 45%,#f5e9df 0,#eee4ec 60%)}
.map-placeholder svg{color:#ec693a}
.map-placeholder p{margin:0;font-size:17px}
.map-placeholder small{font-size:12px;color:var(--muted);max-width:30em}
.map-note{font-size:13px;color:var(--muted);margin:10px 0 0}
@media(max-width:600px){.map-frame{aspect-ratio:4/3}}

/* ===== Plateforme d'installation — V1.13.0 ===== */
.agency-box{margin-top:48px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:26px;align-items:center;background:#fff;border:1px solid var(--line);border-top:4px solid #ec693a;padding:28px 30px}
.agency-box-label{font-size:13px;font-weight:700;color:#9d5684;margin:0 0 6px!important}
.agency-box-title{font-size:22px!important;font-weight:700;line-height:1.2;letter-spacing:-.02em;margin:0 0 8px!important}
.agency-box p{margin:0;font-size:16px;line-height:1.55}
.home-install{background:#fff}
.install-links{list-style:none;margin:0;padding:0;border-top:2px solid #4b374a}
.install-links li{border-bottom:1px solid var(--line)}
.install-links a{display:flex;justify-content:space-between;gap:16px;padding:15px 4px;font-weight:700;font-size:17px}
.install-links a::after{content:"→";color:#ec693a}
.install-links a:hover{background:var(--cream);color:inherit}
@media(max-width:700px){.agency-box{grid-template-columns:1fr;padding:22px}.agency-box .btn{justify-self:start}}
.article-body .news-sources{font-size:14px;color:var(--muted);border-top:1px solid var(--line);padding-top:16px;margin-top:36px}
.profession-guide+.profession-guide{margin-top:16px}
.profession-news{margin-top:40px}
.profession-news h2{font-size:24px;letter-spacing:-.02em;margin:0 0 12px}
.profession-news ul{list-style:none;margin:0;padding:0;border-top:2px solid #4b374a}
.profession-news li{display:flex;justify-content:space-between;gap:16px;padding:14px 2px;border-bottom:1px solid var(--line)}
.profession-news li a{font-weight:700}
.profession-news li a:hover{color:#ec693a}
.profession-news li span{color:var(--muted);font-size:14px;white-space:nowrap}
@media(max-width:600px){.profession-news li{flex-direction:column;gap:4px}}

/* ===== Maillage interne — V1.16.0 ===== */
.related-links{margin:48px 0 0;padding:26px 28px;background:#fff;border:1px solid var(--line)}
.related-links-title{font-size:20px!important;font-weight:700;letter-spacing:-.02em;margin:0 0 16px!important}
.related-links-group+.related-links-group{margin-top:16px;padding-top:16px;border-top:1px solid #efe4ea}
.related-links-group>span{display:block;font-size:13px;font-weight:700;color:#9d5684;margin:0 0 8px}
.related-links ul{list-style:none!important;margin:0!important;padding:0!important;display:flex;flex-wrap:wrap;gap:8px}
.related-links li{margin:0!important;padding:0!important}
.related-links li::before{display:none!important}
.related-links li a{display:inline-block;padding:8px 14px;border:1.5px solid #dfd0d9;border-radius:999px;font-size:14px;font-weight:700;text-decoration:none!important;color:#4b374a}
.related-links li a:hover{background:#4b374a;border-color:#4b374a;color:#fff}
.listing-main .related-links{margin:0 0 36px}
@media(max-width:600px){.related-links{padding:20px 16px}}

/* ===== Pages légales, partenaires — V1.18.0 ===== */
.simple-body ul,.simple-body ol{margin-bottom:24px}
.footer-legal{display:flex;flex-wrap:wrap;gap:8px 22px;padding:18px 0 26px;border-top:1px solid #ffffff22;font-size:13px}
.footer-legal a{opacity:.8}
.footer-legal a:hover{opacity:1;text-decoration:underline}
.lead-form{background:#fff;border:1px solid var(--line);padding:26px 28px;margin:20px 0 10px}
.lead-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
.lead-grid label{display:block;font-size:14px;font-weight:700}
.lead-grid label b{color:#ec693a}
.lead-grid input,.lead-grid textarea{display:block;width:100%;margin-top:8px;padding:12px 14px;border:1.5px solid #d7c9d2;border-radius:8px;font:inherit;font-size:16px;font-weight:400;color:#4b374a;background:#fff}
.lead-wide{grid-column:1/-1}
.lead-consent,.deposit-cgu{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.5;margin:0 0 18px}
.lead-consent input,.deposit-cgu input{margin-top:4px;flex:none;width:18px;height:18px}
.deposit-cgu{background:#fff;border:1px solid var(--line);padding:16px 18px}
.deposit-cgu a,.lead-consent a{text-decoration:underline}
.deposit-cgu-err{display:none;margin:-10px 0 16px}
.deposit-cgu:has(input[aria-invalid="true"])+.deposit-cgu-err{display:block}
.lead-done{background:#fff;border:1px solid var(--line);border-left:4px solid #ec693a;padding:24px 26px;margin:20px 0}
.lead-done-title{font-weight:700;font-size:20px!important;margin:0 0 6px!important}
@media(max-width:700px){.lead-grid{grid-template-columns:1fr}.lead-form{padding:20px 16px}}

/* ===== Page d'arrivée publicitaire et consentement — V1.19.0 ===== */
.lp-hero{background:linear-gradient(180deg,#eee4ec 0%,var(--cream) 100%);padding:56px 0 52px;border-bottom:1px solid var(--line)}
.lp-hero h1{font-size:clamp(32px,4.6vw,60px);line-height:1.04;letter-spacing:-.045em;max-width:16em;margin:0 0 14px}
.lp-lead{font-size:clamp(17px,1.5vw,20px);color:#5f4b5e;max-width:40em;margin:0 0 30px}
.lp-choice{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:980px}
.lp-choice-card{display:flex;flex-direction:column;gap:6px;padding:26px 28px;background:#fff;border:2px solid #dfd0d9;transition:border-color .15s,transform .15s}
.lp-choice-card:hover{border-color:#4b374a;transform:translateY(-2px);color:inherit}
.lp-choice-card strong{font-size:24px;letter-spacing:-.02em;line-height:1.15}
.lp-choice-card span:last-child{color:var(--muted);font-size:15px}
.lp-choice-label{font-size:13px;font-weight:700;color:#9d5684}
.lp-choice-card--owner{background:#4b374a;border-color:#4b374a;color:#f5e9df}
.lp-choice-card--owner strong{color:#fff}.lp-choice-card--owner .lp-choice-label{color:#ec693a}.lp-choice-card--owner span:last-child{color:#e9dbe4}
.lp-choice-card--owner:hover{color:#f5e9df;border-color:#ec693a}
.lp-market{background:#fff;padding:56px 0}
.lp-market h2{font-size:clamp(26px,3vw,40px);letter-spacing:-.035em;margin:0 0 24px}
.lp-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:22px}
.lp-stats div{padding:20px 22px;background:var(--cream);border-left:4px solid #ec693a}
.lp-stats strong{display:block;font-size:28px;letter-spacing:-.02em}
.lp-stats span{color:var(--muted);font-size:15px}
.lp-services{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-bottom:12px}
.lp-services>span{font-weight:700}
.lp-services ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.lp-services li{display:inline-flex;align-items:center;gap:8px;padding:7px 13px;border-radius:999px;background:#eee4ec;font-size:14px;font-weight:700}
.lp-note,.lp-empty{color:var(--muted);font-size:14px;margin:0}
.lp-empty{font-size:17px;max-width:40em}
.lp-faq{background:var(--cream)}
.lp-faq-inner{max-width:820px}
.lp-faq h2{font-size:clamp(26px,3vw,40px);letter-spacing:-.035em;margin:0 0 20px}
.lp-faq .faq-item p a{text-decoration:underline}
.owner-callout{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 20px;background:#fff;border:1px solid var(--line);border-left:4px solid #ec693a;padding:16px 20px;margin:0 0 28px}
.owner-callout p{margin:0!important;font-size:16px!important;max-width:34em}
.consent-banner{position:fixed;left:16px;right:16px;bottom:16px;z-index:9999;max-width:760px;margin:0 auto;background:#fff;border:1px solid var(--line);box-shadow:0 20px 50px #4b374a33;padding:18px 20px;display:flex;flex-wrap:wrap;gap:14px 20px;align-items:center}
.consent-banner[hidden]{display:none}
.consent-banner p{margin:0;font-size:14px;line-height:1.5;flex:1 1 340px;color:#4b374a}
.consent-banner a{text-decoration:underline}
.consent-actions{display:flex;gap:10px}
.btn-consent{min-width:110px;justify-content:center;background:#4b374a!important;border-color:#4b374a!important;color:#fff!important}
@media(max-width:760px){.lp-choice,.lp-stats{grid-template-columns:1fr}.consent-actions{width:100%}.btn-consent{flex:1}}
.consent-banner .btn.btn-consent:not(.outline){background:#4b374a;border-color:#4b374a;color:#fff!important}.consent-banner .btn.btn-consent:hover{background:#ec693a;border-color:#ec693a}
.profession-editorial{margin-top:48px;max-width:880px}
.profession-editorial h2{font-size:clamp(24px,2.6vw,32px);letter-spacing:-.03em;margin:0 0 14px}
.profession-editorial p{font-size:17px;line-height:1.7;color:#5f4b5e}
.profession-editorial a{text-decoration:underline;text-underline-offset:3px;text-decoration-color:#ec693a;color:#4b374a}
.glossary{margin:0 0 32px;border-top:2px solid #4b374a}
.glossary dt{font-weight:700;font-size:18px;margin:0;padding:18px 0 4px;scroll-margin-top:24px}
.glossary dd{margin:0;padding:0 0 18px;border-bottom:1px solid var(--line);color:#5f4b5e;line-height:1.65}
.glossary dd a{text-decoration:underline;text-decoration-color:#ec693a;text-underline-offset:3px;color:#4b374a}
.short-answer{background:#4b374a;color:#f5e9df;padding:22px 26px;margin:0 0 30px;border-left:4px solid #ec693a}
.short-answer-title{font-size:12px!important;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#ec693a;margin:0 0 8px!important}
.short-answer p{margin:0}
.short-answer strong{color:#fff}
