/* Maquette 5 · ÉDITORIAL : typo massive, blocs orange, étiquettes [ entre crochets ], motifs carrés. Palette Flameburst. Chargé après site.css. */
:root{--ink:#050505;--ink2:#3a3a3a;--orange:#fd5102;--orange-d:#d94400;--grey:#ededed;--page:#fafafa;--line:#050505;--mute:#6f6f6f;--white:#fafafa}
body{background:var(--page);color:#3a3a3a;font-size:16px}
h1,h2,h3{color:var(--ink);letter-spacing:-.5px}
h2{font-size:46px;text-transform:uppercase;line-height:1;letter-spacing:-1px;margin-bottom:18px}
h2 .dot{color:var(--orange)}
h3{text-transform:uppercase;letter-spacing:0}
section{padding:100px 0}
.grey{background:var(--grey)}
.wrap{max-width:1240px}
/* étiquettes [ entre crochets ] */
.eyebrow,.kicker,.enbref b,.related b,.coords b,.fields .f,.search label,footer h2,.badge,.chip,.acts a,.menu a,.crumbs,.kpi span,.trust li{font-family:Inter,sans-serif;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;font-size:11px}
.eyebrow{color:var(--ink);margin-bottom:22px;gap:0}
.eyebrow:before{content:"[ ";width:auto;height:auto;background:none;color:var(--orange)}
.eyebrow:after{content:" ]";color:var(--orange)}
.kicker{color:var(--ink);margin-bottom:22px}.kicker:before{content:"[ ";color:var(--orange)}.kicker:after{content:" ]";color:var(--orange)}
/* boutons carrés */
.btn{border-radius:0;background:var(--ink);color:#fff;font-size:12px;letter-spacing:2px;padding:16px 22px;justify-content:space-between;min-width:200px;transition:background .2s,color .2s}
.btn:after{content:"↘";font-size:14px}
.btn:hover{background:var(--orange);color:#fff}
.btn.ghost{background:transparent;border:1px solid currentColor}
.btn.light{background:transparent;color:var(--ink);border:1px solid var(--ink)}.btn.light:hover{background:var(--ink);color:#fff}
.search .btn:after,.callbar a:after,.consult .btn:after,.fields .btn:after{display:none}
/* en-tête clair, filet noir */
header.top{background:var(--page);color:var(--ink);border-bottom:1px solid var(--ink)}
header.top .wrap{height:76px}
.menu{gap:26px}
.menu a{border:0;padding:4px 0;opacity:1;border-bottom:2px solid transparent}
.menu a:hover,.menu a:focus-visible{border-color:var(--orange)}
.has-sub>a:after{content:" ↓";font-size:10px}
.submenu{background:var(--page);color:var(--ink);border:1px solid var(--ink);box-shadow:none;left:0;padding:8px 0}
.submenu a{display:block;padding:9px 16px;border:0;font-size:11px}.submenu a:hover,.submenu a[aria-current]{background:var(--orange);color:#fff}
header.top .phone{background:transparent;border:1px solid var(--ink);color:var(--ink);font-size:12px;letter-spacing:1.5px;padding:11px 16px}
header.top .phone:hover{background:var(--orange);border-color:var(--orange);color:#fff}
.menu-btn{border-color:var(--ink);color:var(--ink);border-radius:0}
.logo .ha{color:var(--orange)}.logo .inv{background:var(--ink)}
/* héros : photo pleine largeur filtrée (noir et blanc + voile sombre), grande typo blanche */
.hero{background:var(--ink);color:#fff;border-bottom:1px solid var(--ink);min-height:78vh;display:flex;align-items:center}
.hero.small{min-height:0}
.hero img.bg{object-position:center;animation:kb 26s ease-in-out infinite alternate}
@keyframes kb{from{transform:scale(1)}to{transform:scale(1.08)}}
.hero .shade{background:linear-gradient(180deg,rgba(5,5,5,.55) 0%,rgba(5,5,5,.45) 40%,rgba(5,5,5,.88) 100%),linear-gradient(90deg,rgba(253,81,2,.18),transparent 60%)}
.hero .wrap{padding-top:96px;padding-bottom:72px;max-width:1240px;width:100%}
.hero .kicker{color:#fff}
.hero h1{font-size:92px;line-height:.92;letter-spacing:-4px;max-width:1100px;color:#fff}
.hero h1 em{color:var(--orange)}
.hero.small .wrap{padding-top:64px;padding-bottom:64px}
.hero.small h1{font-size:60px;text-transform:uppercase;letter-spacing:-2.5px;line-height:.95}
.hero .sub{color:#e6e6e6;font-size:21px;max-width:640px;margin:26px 0 34px}
.crumbs{color:#bdbdbd;margin-bottom:22px}.crumbs span[aria-current]{color:#fff}
.hero .kicker,.hero h1,.hero .sub,.hero .search,.hero .trust,.hero>.wrap>.btn,.hero .crumbs{animation:up .7s cubic-bezier(.2,.7,.2,1) both}
.hero h1{animation-delay:.08s}.hero .sub{animation-delay:.18s}.hero .search,.hero>.wrap>.btn{animation-delay:.28s}.hero .trust{animation-delay:.38s}
@keyframes up{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
.hero>.wrap>.btn{background:var(--orange)}.hero>.wrap>.btn:hover{background:#fff;color:var(--ink)}
/* recherche : barre blanche large, lisible sur grand écran */
.search{background:#fff;color:var(--ink);box-shadow:0 30px 60px rgba(0,0,0,.45);border:0;max-width:1000px;grid-template-columns:1.1fr 1.2fr 1fr auto;align-items:stretch}
.search label{border-right:1px solid #dcdcdc;color:var(--mute);padding:18px 22px;font-size:11px}
.search select{font:600 17px Inter;color:var(--ink);background:transparent;margin-top:6px}
.search .btn{border-radius:0;min-width:0;padding:0 34px;font-size:13px;background:var(--orange)}
.search .btn:hover{background:var(--ink)}
.trust{margin-top:24px;gap:8px 26px;color:#d6d6d6}
.trust li:before{content:"— ";color:var(--orange)}
/* en bref : sans cadre, titre en gros avec crochets orange */
.enbref{margin:0;max-width:none;background:var(--page);border:0;box-shadow:none;padding:56px 32px 48px;display:grid;grid-template-columns:1fr 2fr;gap:40px;align-items:start;max-width:1240px;margin:0 auto}
.hero+.wrap{padding:0;max-width:none}
.enbref b{margin:0;color:var(--ink);font:800 44px/1 Montserrat,sans-serif;letter-spacing:-1.5px;text-transform:uppercase}
.enbref b:before{content:"[ ";color:var(--orange)}.enbref b:after{content:" ]";color:var(--orange)}
.enbref p{font-size:20px;line-height:1.55;color:#3a3a3a}
/* chiffres clés : dégradé orange, motif carrés */
.kpis{background:linear-gradient(110deg,var(--orange) 0%,#ff8a52 55%,#cfcfcf 100%);color:var(--ink);position:relative;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.kpis .wrap{padding-top:56px;padding-bottom:56px;position:relative}
.kpi{border-left:1px solid rgba(5,5,5,.45);padding-left:22px}
.kpi b{font-size:64px;letter-spacing:-3px;color:var(--ink)}
.kpi{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}.kpi.in{opacity:1;transform:none}.kpi:nth-child(2){transition-delay:.25s}.kpi:nth-child(3){transition-delay:.5s}.kpi:nth-child(4){transition-delay:.75s}
.kpi span{color:var(--ink)}
.marquee{overflow:hidden;white-space:nowrap;background:var(--ink);color:#fff;font:600 12px/1 Inter;letter-spacing:3px;text-transform:uppercase;padding:14px 0;border-bottom:1px solid var(--ink)}.marquee div{display:inline-block;animation:mq 40s linear infinite;padding-left:100%}.marquee span{margin:0 22px}.marquee span:after{content:"■";color:var(--orange);font-size:8px;vertical-align:middle;margin-left:44px}@keyframes mq{to{transform:translateX(-100%)}}
/* cartes carrées, filetées, numérotées */
.lots,.xcards,.cards,.why,.reviews{counter-reset:n}
.lot,.xcard,.card,.review,.why .c,.related,.access div,.fields,.noresult,.person{border:1px solid var(--ink);background:var(--page);border-radius:0;box-shadow:none}
.lot,.xcard,.card,.review{transition:background .25s,color .25s;overflow:hidden}
.lot:hover,.xcard:hover,.card:hover{background:var(--ink);color:#fff}
.lot:hover h3,.lot:hover .specs b,.xcard:hover h3,.card:hover h3,.lot:hover h3 a,.xcard:hover h3 a{color:#fff}
.lot:hover .city,.lot:hover .specs div,.xcard:hover p,.card:hover p{color:#bdbdbd}
.xcard:hover .more,.card:hover .more{color:#ff8a52}
.lot .ph,.xcard img{border-bottom:1px solid var(--ink)}
.lot .ph img,.xcard img,.gal img,.side img,.review img{transition:transform .7s}
.lot:hover .ph img,.xcard:hover img{transform:scale(1.04)}
.lot h3{font-size:22px}
.lot .body,.xcard>div{padding:20px 22px 22px}
.xcard h3:before,.why .c h3:before,.card h3:before{counter-increment:n;content:"[ 0" counter(n) " ] ";color:var(--orange);font:600 11px Inter;letter-spacing:1.5px;display:block;margin-bottom:8px}
.badge{border-radius:0;background:var(--page);border:1px solid var(--ink);color:var(--ink)}.badge.asd{background:var(--orange);border-color:var(--orange);color:#fff}
.specs{border-color:var(--ink);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.specs b{font-family:Montserrat,sans-serif;font-size:17px}
.acts a{border-radius:0;border:1px solid currentColor;padding:10px 14px}
.acts a.main{background:var(--orange);border-color:var(--orange)}
.lot:hover .acts a{color:#fff}
.chip{border-radius:0;border-color:var(--ink);background:transparent;color:var(--ink);padding:9px 14px}
.chip:before{content:"[ "}.chip:after{content:" ]"}
.chip[aria-pressed=true]{background:var(--orange);border-color:var(--orange);color:#fff}
.why{gap:0}.why .c{padding:28px;margin-left:-1px;border-top:1px solid var(--ink)}
.why .c:nth-child(2){background:var(--orange);color:#fff}.why .c:nth-child(2) h3,.why .c:nth-child(2) p{color:#fff}.why .c:nth-child(2) h3:before{color:#fff}
.why p{color:#3a3a3a}
.person{background:var(--ink);color:#fff;border-radius:0;margin-top:0;border-top:0;position:relative;overflow:hidden}
.person>*{position:relative}.person .btn{background:var(--orange)}.person .btn:hover{background:#fff;color:var(--ink)}
.avatar{border-radius:0;background:var(--orange);color:#fff;border:1px solid var(--ink)}
.more{color:var(--ink);text-transform:uppercase;font-size:12px;letter-spacing:1.5px}.more:after{content:" ↘";color:var(--orange)}
.review{padding:22px}.review:before{color:var(--orange)}
.gal figure{border:1px solid var(--ink)}
.facts th,.facts td{border-color:#bdbdbd}
.access div{background:var(--page)}
.fields{padding:28px;background:#fff}
.fields input,.fields select,.fields textarea{border:1px solid var(--ink);border-radius:0;background:var(--page)}
.fields .btn{background:var(--orange)}
.faq details{border-bottom:1px solid var(--ink)}.faq details:first-child{border-top:1px solid var(--ink)}
.faq summary{font-family:Montserrat,sans-serif;text-transform:uppercase;font-size:15px;letter-spacing:0}
.faq summary:after{color:var(--orange)}
.prose h2{font-size:34px;letter-spacing:-.5px}.prose a,.local a,.faq a{color:var(--orange-d)}
.cta{background:var(--ink);position:relative;overflow:hidden;padding:64px 0;border-top:1px solid var(--ink)}
.cta .wrap{position:relative}.cta h2{color:#fff;font-size:40px}.cta .btn{background:var(--orange)}.cta .btn.ghost{background:transparent}
.band{background:linear-gradient(110deg,var(--orange),#ff8a52);color:var(--ink)}
.band h2{color:var(--ink)}.band p{color:#3a3a3a}.band .eyebrow{color:var(--ink)!important}
footer{background:var(--page);color:#3a3a3a;border-top:1px solid var(--ink)}
footer h2{color:var(--ink);font-size:11px}footer .nap b{color:var(--ink)}
footer .legal{border-color:var(--ink);color:var(--mute)}
footer .logo .inv{background:var(--ink)}
.callbar{background:var(--ink)}.callbar a:first-child{background:var(--orange)}
.rv{opacity:0;transform:translateY(22px);transition:opacity .6s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1)}
.rv.in{opacity:1;transform:none}.rv.d1{transition-delay:.08s}.rv.d2{transition-delay:.16s}.rv.d3{transition-delay:.24s}
@media(max-width:900px){
 .hero{min-height:0}.hero .wrap,.hero.small .wrap{padding:56px 16px 44px}
 .hero h1{font-size:44px;letter-spacing:-2px}.hero.small h1{font-size:34px}.hero .sub{font-size:17px}
 .search{grid-template-columns:1fr}.search label{border-right:0;border-bottom:1px solid #dcdcdc}.search .btn{padding:16px}
 .enbref b{font-size:30px}.enbref p{font-size:17px}
 h2{font-size:30px}section{padding:60px 0}
 header.top nav{background:var(--page);border-bottom:1px solid var(--ink)}
 .enbref{grid-template-columns:1fr;gap:8px;padding:20px 16px;margin:0 16px}
 .kpis .wrap{grid-template-columns:1fr 1fr;gap:20px}.kpi{border:0;padding:0}.kpi b{font-size:42px}
 .why .c{margin:0;border-left:1px solid var(--ink)}
 .person{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.rv{opacity:1;transform:none}}

/* expertises (accueil) : étiquette plus grosse, blocs de couleur numérotés, sans photo */
.expertises .eyebrow{font-size:18px;letter-spacing:2px;margin-bottom:26px}
.expertises h2{font-size:54px}
.expertises .xcards{counter-reset:n;gap:16px}
.expertises .xcard{min-height:320px;padding:28px;background:var(--orange);color:#fff;border-color:var(--orange);position:relative;overflow:hidden}
.expertises .xcard img{display:none}
.expertises .xcard{justify-content:space-between}
.expertises .xcard:before{counter-increment:n;content:"0" counter(n);display:block;font:800 130px/.8 Montserrat,sans-serif;letter-spacing:-7px;opacity:.35;margin-bottom:28px;transform-origin:left top;transition:transform .5s,opacity .5s}
.expertises .xcard:hover:before{transform:scale(1.06);opacity:.6}
.expertises .xcard>div{padding:0;flex:0 0 auto;position:relative}
.expertises .xcard h3{font-size:24px;color:#fff;margin-bottom:10px}
.expertises .xcard h3:before{display:none}
.expertises .xcard h3 a{color:inherit}
.expertises .xcard p{color:rgba(255,255,255,.85);font-size:15px;flex:0}
.expertises .xcard .more{color:#fff}.expertises .xcard .more:after{color:#fff}
.expertises .xcard:nth-child(3n+2){background:var(--ink);border-color:var(--ink)}
.expertises .xcard:nth-child(3n+2):before{color:var(--orange);opacity:.9}
.expertises .xcard:nth-child(3n+2):hover:before{opacity:1}
.expertises .xcard:nth-child(3n){background:var(--page);color:var(--ink);border-color:var(--ink)}
.expertises .xcard:nth-child(3n) h3,.expertises .xcard:nth-child(3n) .more{color:var(--ink)}
.expertises .xcard:nth-child(3n) p{color:#3a3a3a}
.expertises .xcard:nth-child(3n):before{color:var(--orange);opacity:.9}
.expertises .xcard:nth-child(3n) .more:after{color:var(--orange)}
.expertises .xcard:hover{background:inherit}
.expertises .xcard:nth-child(3n+1):hover{background:var(--orange-d)}
.expertises .xcard:nth-child(3n+2):hover{background:#1a1a1a}
.expertises .xcard:nth-child(3n):hover{background:#fff;color:var(--ink)}
.expertises .xcard:nth-child(3n):hover h3,.expertises .xcard:nth-child(3n):hover .more{color:var(--ink)}
.expertises .xcard:nth-child(3n):hover p{color:#3a3a3a}
@media(max-width:900px){.expertises h2{font-size:32px}.expertises .eyebrow{font-size:14px}.expertises .xcard{min-height:0}.expertises .xcard:before{font-size:90px;margin-bottom:20px}}

.person h3,.person h2{color:#fff!important}.person p{color:#bdbdbd}
img.avatar{width:160px;height:160px;border:0;background:none}
.person{grid-template-columns:160px 1fr auto}

/* retours du 27/10 */
.p-batiment-a-vendre-bordeaux .hero h1,.p-batiment-a-vendre-bordeaux .hero h1 em{color:var(--orange)}
.big-head .eyebrow{font-size:18px;letter-spacing:2px;margin-bottom:26px}
.big-head h2{font-size:54px;letter-spacing:-1.5px;line-height:1.02}
.big-head .why .c h3,.big-head .card h3{font-size:22px}
.big-head .why .c p,.big-head .card p{font-size:16.5px}
.cards.four{grid-template-columns:repeat(2,1fr)}
.local .two-col>div>:first-child{margin-top:0}
img[src*="guide-"]{filter:none!important}
/* bouton burger */
.menu-btn{width:46px;height:42px;padding:0;display:none;flex-direction:column;justify-content:center;align-items:center;gap:6px;background:none;border:1px solid var(--ink)}
.menu-btn span{display:block;width:22px;height:2px;margin:0;background:var(--ink);transition:transform .3s,opacity .3s}
.menu-btn[aria-expanded="true"] span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.menu-btn[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-btn[aria-expanded="true"] span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
@media(max-width:900px){
 .menu-btn{display:flex}
 header.top nav{position:fixed;top:var(--hh,72px);bottom:0;left:0;right:0;max-height:none;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:20px 16px 110px;z-index:60}
 body.nav-open{overflow:hidden}
 .big-head h2{font-size:34px}.big-head .eyebrow{font-size:14px}
 .cards.four{grid-template-columns:1fr}
 .person{grid-template-columns:1fr;gap:18px;padding:26px 20px}
 .person>*{min-width:0}.person p,.person h2,.person h3{overflow-wrap:anywhere}
 img.avatar{width:120px;height:120px}
}
.menu>li.on>a:not(:hover),.menu>li>a[aria-current]:not(:hover){border-color:transparent}
.p-locaux-a-louer-bordeaux .expertises .xcards{grid-template-columns:repeat(4,1fr)}
.p-locaux-a-louer-bordeaux .expertises .xcard:before{font-size:100px}
@media(max-width:900px){.p-locaux-a-louer-bordeaux .expertises .xcards{grid-template-columns:1fr}}
.hero+.wrap.cover{max-width:1240px;padding:0 32px;margin-top:48px}.cover img{border:1px solid var(--ink);max-width:980px}
@media(max-width:900px){.hero+.wrap.cover{padding:0 16px;margin-top:28px}}

/* 29/10 : accueil = photo en couleur, accroche en haut (dans le ciel) */
.p-index .hero{align-items:flex-start}
.p-index .hero .shade{background:linear-gradient(180deg,rgba(5,5,5,.62) 0%,rgba(5,5,5,.25) 45%,rgba(5,5,5,.7) 100%)}
.p-index .hero .wrap{padding-top:72px}
/* 29/10 : pages des sites = grande photo claire, titre dessous */
.site-photo{border-bottom:1px solid var(--ink);background:var(--ink)}
.site-photo img{display:block;width:100%;height:62vh;min-height:320px;max-height:680px;object-fit:cover}
.site-photo+.hero.small{border-top:0}
@media(max-width:900px){.site-photo img{height:42vh;min-height:220px}}
/* logos des startups (business angel) */
.logos{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.logos li{display:flex;align-items:center;justify-content:center;height:110px;padding:14px;background:#fff;border:1px solid var(--ink)}
.logos li img{max-width:100%;max-height:80px;object-fit:contain}
@media(max-width:600px){.logos{grid-template-columns:repeat(2,1fr)}}
.logos li b{font:800 20px Montserrat,Inter,sans-serif;letter-spacing:-.5px}
.logos li{padding:0}
.logos li a{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:14px;color:inherit;text-decoration:none;transition:background .2s}
.logos li a:hover{background:#f3f3f3}
