/*
Theme Name: KERE-ASSOCIES (thème enfant Astra)
Theme URI: https://kere-avocats.net
Description: Thème enfant d'Astra pour la SCPA KERE-ASSOCIES. Style « Prime Lawyers », charte bordeaux et anthracite, police Jost, carrousel d'accueil en CSS.
Author: Serge
Template: astra
Version: 1.0.0
Text Domain: kere
*/

@font-face{font-family:'Jost';font-weight:400;font-style:normal;font-display:swap;src:url(assets/fonts/jost-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Jost';font-weight:500;font-style:normal;font-display:swap;src:url(assets/fonts/jost-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Jost';font-weight:600;font-style:normal;font-display:swap;src:url(assets/fonts/jost-latin-600-normal.woff2) format('woff2')}

:root{
 --k-red:#602428;--k-red-d:#3E1519;--k-pink:#D9A9AE;--k-pink-l:#F0DEE0;
 --k-ink:#2B2724;--k-dark:#1C1A19;--k-darker:#141211;--k-soft:#F7F3F1;--k-line:#E6DEDA;--k-muted:#5E5752;--k-body:#4F4A45;
 --k-font:'Jost','Century Gothic',sans-serif;
}

/* ---------- Réinitialisation locale (hors Astra) ---------- */
body.kere{margin:0;font-family:var(--k-font);color:var(--k-ink);background:#fff;-webkit-font-smoothing:antialiased}
body.kere #masthead,body.kere .site-footer,body.kere #colophon,body.kere .ast-above-header-wrap,body.kere .ast-breadcrumbs-wrapper{display:none!important}
.kere-main,.kere-main *{box-sizing:border-box}
.kere-main{font-family:var(--k-font);font-size:17px;line-height:1.6;color:var(--k-ink)}
.kere-main h1,.kere-main h2,.kere-main h3,.kere-main p,.kere-main ul{margin:0}
.kere-main h1,.kere-main h2,.kere-main h3{font-family:var(--k-font);font-weight:600;color:inherit;line-height:1.15}
.kere-main .wp-block-group{margin:0}
.kere-main a{color:var(--k-red)}
.kere-main img{max-width:100%;height:auto}

/* ---------- Mise en page ---------- */
.ks{width:100%}
.ks-dark{background:var(--k-dark);color:#fff}
.ks-soft{background:var(--k-soft)}
.ks-red{background:var(--k-red);color:#fff}
.kw{max-width:1200px;margin:0 auto;padding:96px 24px;display:flex;flex-direction:column;gap:40px}
.kw.tight{padding:64px 24px}
.kw.mid{padding:80px 24px}
.kw.row{flex-direction:row;flex-wrap:wrap;align-items:center;gap:32px}
.k-head{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}
.k-eyebrow{font-size:15px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--k-red)}
.ks-dark .k-eyebrow,.kc-hero .k-eyebrow,.ks-red .k-eyebrow{color:var(--k-pink)}
.kere-main h2.k-h2{font-size:44px}
.k-lead{font-size:18px;line-height:1.7;color:var(--k-body);max-width:760px}
.k-row{display:flex;flex-wrap:wrap;gap:24px}
.k-col{flex:1 1 300px;min-width:0}
.k-row.g32{gap:32px}
.k-stack{display:flex;flex-direction:column;gap:16px}

/* ---------- Boutons ---------- */
.kere-main .wp-block-buttons{display:flex;flex-wrap:wrap;gap:14px;margin:0}
.kere-main .wp-block-button__link{display:inline-flex;align-items:center;min-height:54px;padding:0 28px;border-radius:0;font-family:var(--k-font);font-weight:600;font-size:16px;text-decoration:none;line-height:1.2;border:1px solid transparent;transition:background .2s,color .2s}
.kere-main .btn-primary .wp-block-button__link{background:var(--k-red);color:#fff}
.kere-main .btn-primary .wp-block-button__link:hover{background:var(--k-red-d);color:#fff}
.kere-main .btn-ghost .wp-block-button__link{background:transparent;color:#fff;border-color:#fff;font-weight:500}
.kere-main .btn-ghost .wp-block-button__link:hover{background:#fff;color:var(--k-red)}
.kere-main .btn-outline .wp-block-button__link{background:transparent;color:var(--k-red);border-color:var(--k-red)}
.kere-main .btn-outline .wp-block-button__link:hover{background:var(--k-red);color:#fff}
.kere-main .btn-white .wp-block-button__link{background:#fff;color:var(--k-red)}
.kere-main .btn-white .wp-block-button__link:hover{background:var(--k-pink-l)}

/* ---------- Bandeau haut + en-tête ---------- */
.kt-top{background:var(--k-darker);color:#DCD4CF;font-size:14px;border-bottom:1px solid #2E2A28}
.kt-top .in{max-width:1200px;margin:0 auto;padding:8px 24px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 24px}
.kt-top .l,.kt-top .r{display:flex;flex-wrap:wrap;align-items:center;gap:6px 22px}
.kt-top .r{gap:10px}
.kt-top .soc{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 14px;border:1px solid #4A433F;border-radius:18px;color:#fff;text-decoration:none;font-size:13px}
.kt-top .soc:hover{border-color:var(--k-pink)}
.kt-top .soc svg{stroke:var(--k-pink)}
.kt-top .cta{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 16px;background:var(--k-red);border-radius:18px;color:#fff;text-decoration:none;font-size:13px;font-weight:600}
.kt-top .sep{width:1px;height:22px;background:#3A3532}
.kt-head{background:var(--k-dark);position:relative;z-index:20}
.kt-head .in{max-width:1200px;margin:0 auto;padding:20px 24px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}
.kt-head img{height:48px;width:auto;display:block}
.kt-nav{display:flex;flex-wrap:wrap;align-items:center;gap:8px 28px;font-size:15px;font-weight:500}
.kt-nav a{color:#E4DDD9;text-decoration:none}
.kt-nav a:hover,.kt-nav a.on{color:#fff}
.kt-nav a.on{border-bottom:2px solid var(--k-pink);padding-bottom:2px}
.kt-nav .lang{font-size:14px;color:#8A817C}
.kt-nav .lang a{color:#B9AFAA}.kt-nav .lang a.on,.kt-nav .lang strong{color:#fff;font-weight:600;border:0}

/* ---------- Carrousel d'accueil (CSS seul) ---------- */
.kc-hero{position:relative;background:var(--k-dark);color:#fff;overflow:hidden}
.kc-hero::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(44,26,34,.86) 0%,rgba(44,26,34,.72) 32%,rgba(44,26,34,.38) 60%,rgba(44,26,34,.10) 85%,rgba(44,26,34,0) 100%)}
.kc-hero .kc-bg{position:absolute;inset:0;background-size:cover;background-position:right center;opacity:0;animation:kbg 24s infinite}
.kc-hero .kc-bg1{background-image:url(assets/img/hero-prime.svg);filter:brightness(2.3) contrast(.92)}
.kc-hero .kc-bg2{background-image:url(assets/img/hero-prime.svg);filter:brightness(2.3) contrast(.92);animation-delay:6s}
.kc-hero .kc-bg3{background-image:url(assets/img/hero-photo.jpg);background-position:center 35%;left:26%;animation-delay:12s;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 38%);mask-image:linear-gradient(90deg,transparent 0,#000 38%)}
.kc-hero .kc-bg4{background-image:url(assets/img/hero-prime.svg);filter:brightness(2.3) contrast(.92);animation-delay:18s}
.kc-hero .kc-in{position:relative;z-index:2;max-width:1200px;margin:0 auto;padding:96px 24px 0;display:flex;flex-direction:column;gap:30px}
.kc-hero .kc-slides{display:grid;min-height:330px;align-content:start}
.kc-hero .kc-slide{grid-area:1/1;display:flex;flex-direction:column;gap:26px;opacity:0;pointer-events:none;animation:kslide 24s infinite}
.kc-hero .kc-s2{animation-delay:6s}.kc-hero .kc-s3{animation-delay:12s}.kc-hero .kc-s4{animation-delay:18s}
.kc-hero .kc-slide .k-eyebrow{color:#F0C9CD}
.kere-main .kc-hero h1{font-size:60px;line-height:1.08;max-width:900px}
.kc-hero .kc-dots{display:flex;gap:10px}
.kc-hero .kc-dot{width:34px;height:4px;background:rgba(255,255,255,.35);animation:kdot 24s infinite}
.kc-hero .kc-d2{animation-delay:6s}.kc-hero .kc-d3{animation-delay:12s}.kc-hero .kc-d4{animation-delay:18s}
.kc-hero:hover .kc-slide,.kc-hero:hover .kc-dot,.kc-hero:hover .kc-bg{animation-play-state:paused}
@keyframes kbg{0%{opacity:0}4%{opacity:1}25%{opacity:1}29%{opacity:0}100%{opacity:0}}
@keyframes kslide{0%{opacity:0;transform:translateY(14px);pointer-events:none}3%{opacity:1;transform:none;pointer-events:auto}22%{opacity:1;transform:none;pointer-events:auto}26%{opacity:0;transform:translateY(-8px);pointer-events:none}100%{opacity:0}}
@keyframes kdot{0%{background:rgba(255,255,255,.35)}3%{background:#fff}22%{background:#fff}26%{background:rgba(255,255,255,.35)}100%{background:rgba(255,255,255,.35)}}
@media (prefers-reduced-motion:reduce){.kc-hero .kc-slide,.kc-hero .kc-dot,.kc-hero .kc-bg{animation:none}.kc-hero .kc-s1{opacity:1;pointer-events:auto}.kc-hero .kc-bg1{opacity:1}.kc-hero .kc-d1{background:#fff}}
.kc-bar{position:relative;z-index:2;max-width:1200px;margin:0 auto;padding:72px 24px}
.kc-bar .row{display:flex;flex-wrap:wrap;background:#2A2624;border-top:3px solid var(--k-red)}
.kc-bar .cell{flex:1 1 300px;min-width:0;padding:28px 32px;display:flex;flex-direction:column;gap:6px;border-right:1px solid #3D3835}
.kc-bar .cell:last-child{border-right:0}
.kc-bar .cell .k-label{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--k-pink)}
.kc-bar .cell p{font-size:18px;color:#fff}
.kc-hero-end{height:72px}

/* ---------- En-tête de page secondaire ---------- */
.kp-hero{position:relative;background:var(--k-dark);color:#fff;overflow:hidden}
.kp-hero::before{content:"";position:absolute;inset:0;background:url(assets/img/hero-prime.svg) right center/cover;filter:brightness(2.3) contrast(.92)}
.kp-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(44,26,34,.86) 0%,rgba(44,26,34,.6) 45%,rgba(44,26,34,.15) 100%)}
.kp-hero .kw{position:relative;z-index:2;padding:72px 24px;gap:14px}
.kp-hero .k-crumb{font-size:14px;color:#CFC7C2}
.kp-hero .k-crumb a{color:#CFC7C2}
.kere-main .kp-hero h1{font-size:52px}
.kp-hero .k-intro{font-size:18px;color:#DCD4CF;max-width:680px;line-height:1.6}

/* ---------- Cartes ---------- */
.kcard{display:flex;flex-direction:column;gap:14px;text-decoration:none;color:inherit}
.kcard.dark{flex:1 1 260px;min-width:0;background:#2A2624;border-top:3px solid var(--k-red);padding:34px 30px;color:#fff}
.kcard.dark p{color:#DCD4CF}
.kcard.dark .more{color:var(--k-pink);font-weight:600}
.kcard.dark h3{font-size:24px}
.kcard.feat{min-width:0;background:var(--k-red);border-top:3px solid var(--k-pink);padding:38px 34px;flex:1.5 1 420px}
.kcard.feat p{color:var(--k-pink-l)}
.kcard.feat h3{font-size:28px}
.kcard.feat .tag{align-self:flex-start;font-size:13px;letter-spacing:.14em;text-transform:uppercase;background:#fff;color:var(--k-red);padding:5px 12px;font-weight:600}
.kcard.light.t4{flex:1 1 220px;padding:30px 26px}
.kcard.light{min-width:0;background:var(--k-soft);border-top:3px solid var(--k-red);padding:38px 36px}
.kcard.light h3{font-size:28px}
.kcard.light p{color:var(--k-muted)}
.kcard.light ul{padding-left:20px;line-height:1.8;color:var(--k-body);font-size:16px}
.kcard.exp{background:#fff;padding:32px 28px;border-bottom:3px solid var(--k-red);color:var(--k-ink);flex:1 1 260px}
.kcard.exp h3{font-size:21px}
.kcard.exp .dept{font-size:15px;color:var(--k-muted)}
.kcard.exp .ico,.kicon{width:36px;height:36px;color:var(--k-red)}
.kcard.exp.more-card{background:var(--k-red);color:#fff;justify-content:center}
.kbanner{display:flex;flex-wrap:wrap;align-items:center;gap:24px 40px;background:var(--k-red);color:#fff;padding:36px 40px;border-left:8px solid var(--k-pink)}
.kbanner .txt{flex:1 1 480px;min-width:0;display:flex;flex-direction:column;gap:8px}
.kbanner .k-eyebrow{font-size:14px;color:var(--k-pink-l)}
.kbanner h3{font-size:30px}
.kbanner p{color:var(--k-pink-l)}
.kribbon .kw{padding:26px 24px;flex-direction:row;flex-wrap:wrap;justify-content:center;gap:8px 40px;font-size:18px;letter-spacing:.08em;text-transform:uppercase;font-weight:500}
.kribbon p{font-size:18px}
.kwhy{flex:1 1 300px;min-width:0;display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;padding:8px 12px}
.kwhy h3{font-size:23px}.kwhy p{color:var(--k-muted)}
.kstat{flex:1 1 220px;min-width:0;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}
.kstat .n{font-size:56px;font-weight:300;color:var(--k-red);line-height:1}
.kstat .t{font-size:17px;color:var(--k-body)}
.kteam{flex:1 1 250px;min-width:0;display:flex;flex-direction:column;gap:10px}
.kteam .ph,.kph{background:#E3D9D5;color:var(--k-muted);font-size:15px;display:flex;align-items:center;justify-content:center;text-align:center;padding:16px}
.kteam .ph{height:300px}
.kph.h520{min-height:520px}.kph.h460{min-height:460px}.kph.h260{min-height:260px}.kph.vis{height:190px}
.kteam .nm{font-size:20px;font-weight:600}.kteam .rl{font-size:16px;color:var(--k-muted)}
.kdept{flex:1 1 340px;min-width:0;background:var(--k-soft);padding:28px;display:flex;flex-direction:column;gap:12px;border-top:3px solid var(--k-red)}
.kdept h3{font-size:21px}.kdept ul{padding-left:20px;line-height:1.8;color:var(--k-body);font-size:16px}
.kpub{flex:1 1 320px;min-width:0;background:#fff;color:var(--k-ink);display:flex;flex-direction:column;text-decoration:none}
.kpub .vis{height:190px}.kpub .bd{padding:26px;display:flex;flex-direction:column;gap:10px}
.kpub .kind{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--k-red);font-weight:600}
.kpub .ttl{font-size:21px;font-weight:600;line-height:1.35}
.kcta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px}
.kcta .txt{flex:1 1 520px;min-width:0;display:flex;flex-direction:column;gap:8px}
.kcta h2{font-size:32px}.kcta p{color:var(--k-pink-l)}
.kcall{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:32px}
.kcall .l{flex:1 1 440px;display:flex;flex-direction:column;gap:12px}
.kcall .big{font-size:44px;font-weight:600}
.kcall .or{font-size:18px;color:#A39A95;font-weight:600}
.kcall .r{flex:1 1 360px;display:flex;flex-direction:column;gap:16px}
.kcall .r .t{font-size:26px;font-weight:600}
.kstep{flex:1 1 260px;min-width:0;display:flex;flex-direction:column;gap:10px;padding-top:16px;border-top:2px solid var(--k-red)}
.kstep .n{font-size:40px;font-weight:300;color:var(--k-red);line-height:1}
.kstep h3{font-size:20px}.kstep p{font-size:16px;line-height:1.6;color:var(--k-muted)}
.kinfo{display:flex;flex-direction:column;gap:6px}
.kinfo .k-label{font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:var(--k-red);font-weight:600}
.kinfo p{font-size:18px}
.kform{background:var(--k-soft);padding:40px}
.kform h2{font-size:30px;margin-bottom:20px}
.koffer{background:#fff;border:1px solid var(--k-line);border-left:4px solid var(--k-red);padding:22px 24px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px}
.koffer .t{font-size:20px;font-weight:600}.koffer .d{font-size:15px;color:var(--k-red);font-weight:600}.koffer .m{font-size:14px;color:var(--k-muted)}
.koffer a.btn{display:inline-flex;align-items:center;min-height:44px;padding:0 20px;border:1px solid var(--k-red);color:var(--k-red);text-decoration:none;font-weight:600;font-size:15px}
.koffer a.btn:hover{background:var(--k-red);color:#fff}
.kaside{display:flex;flex-direction:column;gap:24px}
.kaside .box{background:var(--k-soft);padding:28px;display:flex;flex-direction:column;gap:10px}
.kaside .box.dark{background:var(--k-dark);color:#fff;gap:14px}
.kaside .box .ttl{font-size:18px;font-weight:600}
.kmain{display:flex;flex-wrap:wrap;align-items:flex-start;gap:48px}
.kmain>.body{flex:999 1 620px;min-width:0;display:flex;flex-direction:column;gap:40px}
.kmain>.kaside{flex:1 1 300px;min-width:0}
.kbook{max-width:1000px;margin:0 auto;padding:56px 24px 88px}
.kbook iframe{width:100%;min-height:900px;border:0;background:#fff}

/* ---------- Pied de page ---------- */
.kf{background:var(--k-dark);color:#DCD4CF}
.kf .in{max-width:1200px;margin:0 auto;padding:64px 24px 28px;display:flex;flex-direction:column;gap:36px}
.kf .cols{display:flex;flex-wrap:wrap;gap:40px}
.kf .col{flex:1 1 240px;min-width:0;display:flex;flex-direction:column;gap:8px;font-size:15px}
.kf .col.brand{flex-basis:280px;gap:16px}
.kf .col .ttl{font-size:16px;font-weight:600;color:#fff}
.kf img{height:44px;width:auto;align-self:flex-start}
.kf a{color:#DCD4CF;text-decoration:none}.kf a:hover{color:#fff}
.kf .soc{display:flex;flex-wrap:wrap;gap:10px}
.kf .soc a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 18px;border:1px solid #5A514D;border-radius:22px;color:#fff;font-size:14px}
.kf .rdv{align-self:flex-start;display:inline-flex;align-items:center;min-height:46px;margin-top:8px;padding:0 22px;background:var(--k-red);color:#fff;font-weight:600}
.kf .bot{border-top:1px solid #3A3532;padding-top:18px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:13px;color:#A39A95}
.kf .bot a{color:#A39A95;text-decoration:underline}

/* ---------- Assistant ---------- */
.kassist-btn{position:fixed;right:24px;bottom:24px;z-index:50;display:inline-flex;align-items:center;gap:10px;min-height:56px;padding:0 22px 0 14px;background:var(--k-red);color:#fff;border:0;border-radius:28px;font:600 16px var(--k-font);cursor:pointer;box-shadow:0 8px 26px rgba(0,0,0,.3)}
.kassist-btn span.ic{width:34px;height:34px;border-radius:17px;background:#fff;display:flex;align-items:center;justify-content:center}
.kassist{position:fixed;right:24px;bottom:96px;z-index:51;width:380px;max-width:calc(100% - 48px);background:#fff;color:var(--k-ink);box-shadow:0 12px 40px rgba(0,0,0,.35);border-radius:8px;overflow:hidden;display:none;font-family:var(--k-font)}
.kassist.open{display:block}
.kassist .hd{background:var(--k-red);color:#fff;padding:14px 16px;display:flex;justify-content:space-between;align-items:center;font-weight:600}
.kassist .hd button{background:none;border:0;color:#fff;font-size:22px;cursor:pointer}
.kassist .bd{padding:16px;font-size:14px;line-height:1.5;display:flex;flex-direction:column;gap:10px}
.kassist .msg{background:#F3EEEC;padding:10px 14px;border-radius:4px 14px 14px 14px}
.kassist .note{font-size:11px;color:#6B6560}

/* ---------- Responsive ---------- */
@media (max-width:900px){
 .kere-main h2.k-h2{font-size:34px}
 .kere-main .kc-hero h1{font-size:40px}
 .kere-main .kp-hero h1{font-size:38px}
 .kw{padding:64px 20px}
 .kc-bar .cell{border-right:0;border-bottom:1px solid #3D3835}
 .kc-hero .kc-slides{min-height:380px}
 .kc-hero::after{background:rgba(44,26,34,.72)}
}

/* Compléments */
.kere-main .kcard a{text-decoration:none}
.kere-main .kcard.feat a{color:#fff}
.kaside .box.dark .k-eyebrow{color:var(--k-pink)}
.kaside .box.dark a{color:var(--k-pink)}
.kere-main .kaside .box a{color:var(--k-red)}
.kere-main .kaside .box.dark a{color:var(--k-pink)}
.kere-main .kaside .box.dark .wp-block-button__link{color:#fff}

/* Pleine largeur : neutralise les conteneurs et marges d'Astra autour de nos pages */
body.kere #content,body.kere .site-content{margin:0!important;padding:0!important}
body.kere #content .ast-container,body.kere .site-content .ast-container,body.kere .ast-container{max-width:100%!important;width:100%!important;padding:0!important;margin:0!important;display:block!important}
body.kere #primary,body.kere .content-area{width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;float:none!important}
body.kere #secondary,body.kere .widget-area{display:none!important}
body.kere .site-main,body.kere main.kere-main{margin:0!important;padding:0!important;max-width:100%!important}
body.kere.ast-separate-container,body.kere.ast-separate-container .site-content{background:#fff!important}
body.kere.ast-separate-container #primary,body.kere.ast-separate-container .ast-article-single{padding:0!important;margin:0!important;background:transparent!important}
body.kere .entry-content{margin:0!important;padding:0!important}
body.kere .kere-main > .wp-block-group,body.kere .kere-main > *{max-width:100%!important;margin-left:0!important;margin-right:0!important}
body.kere .kere-main .wp-block-group.kw{max-width:1200px!important;margin-left:auto!important;margin-right:auto!important}
body.kere .kere-main .kc-in,body.kere .kere-main .kc-bar{max-width:1200px!important;margin-left:auto!important;margin-right:auto!important}
