/*
Theme Name: Audit Paie RH
Theme URI: https://www.auditpaierh.fr
Author: Audit Paie RH
Author URI: https://www.auditpaierh.fr
Description: Theme sur-mesure pour le cabinet AUDIT PAIE RH, cabinet d'externalisation de la paie, conseils RH et audit social base a Montpellier.
Version: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: audit-paie-rh
*/
:root{
  --navy:#1B3054;
  --navy-deep:#0F1E33;
  --gray:#6F7070;
  --gray-light:#9CA0A3;
  --orange:#DD7500;
  --orange-light:#F0993A;
  --paper:#F5F5F3;
  --paper-alt:#EFEEEA;
  --line:#DADCDC;
  --white:#FFFFFF;
  --radius:2px;
  --maxw:1180px;
}

*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  font-family:'Montserrat',sans-serif;
  color:var(--navy);
  background:var(--paper);
  line-height:1.6;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
.mono{font-family:'IBM Plex Mono',monospace;}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 32px;}
h1,h2,h3{font-weight:700;line-height:1.15;letter-spacing:-0.01em;}
h2{font-size:clamp(28px,3.4vw,42px);}
h3{font-size:20px;}
.eyebrow{
  font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.12em;
  text-transform:uppercase;color:var(--orange);font-weight:500;
  display:flex;align-items:center;gap:10px;margin-bottom:16px;
}
.eyebrow::before{content:"";width:22px;height:1px;background:var(--orange);display:inline-block;}
:focus-visible{outline:2px solid var(--orange);outline-offset:3px;}

/* ---------- HEADER ---------- */
.top-bar{
  background:var(--orange);color:var(--white);text-align:center;
  padding:11px 20px;font-size:13px;font-weight:600;
  display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;justify-content:center;
}
.top-bar a{color:var(--white);text-decoration:underline;white-space:nowrap;}
.top-bar a:hover{color:var(--navy-deep);}
header{position:sticky;top:0;z-index:100;background:rgba(245,245,243,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);}
.nav{display:flex;align-items:center;justify-content:space-between;padding:4px 32px;max-width:var(--maxw);margin:0 auto;}
.nav img{height:150px;width:auto;}
@media(max-width:640px){.nav img{height:80px;}}
.nav-links{display:none;gap:36px;align-items:center;}
@media(min-width:920px){.nav-links{display:flex;}}
.nav-links a{font-size:14px;font-weight:500;color:var(--navy);position:relative;padding:4px 0;}
.nav-links a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:2px;background:var(--orange);transition:width .25s ease;}
.nav-links a:hover::after,.nav-links a.active::after{width:100%;}
.nav-links a.active{color:var(--orange);}

.nav-item{position:relative;}
.nav-item>a{display:inline-flex;align-items:center;gap:5px;}
.nav-item .chevron{width:11px;height:11px;stroke:var(--navy);transition:transform .2s ease;}
.nav-item:hover .chevron,.nav-item:focus-within .chevron{transform:rotate(180deg);}
.nav-item .submenu{
  position:absolute;top:100%;left:0;margin-top:16px;
  background:var(--white);border:1px solid var(--line);
  min-width:270px;padding:8px 0;
  opacity:0;visibility:hidden;transform:translateY(-6px);
  transition:opacity .2s ease, transform .2s ease, visibility .2s;
  z-index:50;
}
.nav-item:hover .submenu,.nav-item:focus-within .submenu{
  opacity:1;visibility:visible;transform:translateY(0);
}
.nav-item .submenu a{
  display:block;padding:11px 20px;font-size:13.5px;font-weight:500;
  color:var(--navy);white-space:nowrap;
}
.nav-item .submenu a::after{display:none;}
.nav-item .submenu a:hover{background:var(--paper-alt);color:var(--orange);}

.mobile-menu a.submenu-link-mobile{
  padding-left:52px;font-size:14px;color:var(--gray);
  border-bottom:1px solid var(--line);
}
.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;font-size:14px;font-weight:600;border-radius:var(--radius);border:1px solid transparent;cursor:pointer;transition:transform .2s ease, background .2s ease, color .2s ease;}
.btn-primary{background:var(--orange);color:var(--white);}
.btn-primary:hover{background:var(--navy);}
.btn-ghost{border-color:var(--navy);color:var(--navy);}
.btn-ghost:hover{background:var(--navy);color:var(--white);}
.nav-cta{display:none;}
@media(min-width:920px){.nav-cta{display:inline-flex;}}
.burger{display:flex;background:none;border:none;cursor:pointer;padding:8px;}
@media(min-width:920px){.burger{display:none;}}
.burger span{width:22px;height:2px;background:var(--navy);display:block;margin:4px 0;}
.mobile-menu{display:none;flex-direction:column;gap:0;background:var(--white);border-top:1px solid var(--line);}
.mobile-menu.open{display:flex;}
.mobile-menu a{padding:16px 32px;border-bottom:1px solid var(--line);font-size:15px;font-weight:500;}

/* ---------- HERO (home) ---------- */
.hero{
  padding:96px 0 80px;overflow:hidden;
  background:
    radial-gradient(circle at 85% 15%, rgba(221,117,0,.07), transparent 45%),
    linear-gradient(90deg, rgba(245,245,243,.98) 0%, rgba(245,245,243,.93) 45%, rgba(245,245,243,.68) 100%),
    url('https://images.unsplash.com/photo-1454165804606-c3d57bc86b40?auto=format&fit=crop&w=1600&q=60') right center/cover no-repeat,
    var(--paper);
}
.hero .wrap{display:grid;grid-template-columns:1fr;gap:56px;align-items:center;}
@media(min-width:960px){.hero .wrap{grid-template-columns:1.05fr .95fr;}}
.hero h1{font-size:clamp(38px,5.4vw,60px);margin-bottom:22px;}
.hero h1 em{font-style:normal;color:var(--orange);}
.hero p.lead{font-size:18px;color:var(--gray);max-width:520px;margin-bottom:36px;}
.hero-ctas{display:flex;flex-wrap:wrap;gap:16px;}

/* ---------- PAGE HERO (sous-pages) ---------- */
.page-hero{padding:64px 0 52px;border-bottom:1px solid var(--line);background:radial-gradient(circle at 90% 10%, rgba(221,117,0,.06), transparent 45%), var(--paper);}
.page-hero h1{font-size:clamp(32px,4.4vw,48px);margin-bottom:16px;}
.page-hero p{font-size:16.5px;color:var(--gray);max-width:600px;}
.breadcrumb{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--gray-light);margin-bottom:18px;}
.breadcrumb a{color:var(--gray);}
.breadcrumb a:hover{color:var(--orange);}

/* Signature element: payslip-style summary card */
.payslip{background:var(--white);border:1px solid var(--line);box-shadow:0 24px 60px -20px rgba(27,48,84,.25);position:relative;}
.payslip::before{content:"";position:absolute;top:-14px;left:-14px;right:14px;bottom:14px;border:1px solid var(--line);z-index:-1;}
.payslip-head{background:var(--navy);color:var(--white);padding:20px 26px;display:flex;align-items:center;justify-content:space-between;}
.payslip-head .mono{font-size:11px;letter-spacing:.08em;color:#B9C3D2;text-transform:uppercase;}
.payslip-head strong{font-size:15px;font-weight:700;}
.payslip-triangle{width:14px;height:14px;background:var(--orange);clip-path:polygon(50% 0,100% 100%,0 100%);}
.payslip-body{padding:28px 26px 8px;}
.payslip-row{display:flex;align-items:baseline;gap:8px;padding:13px 0;border-bottom:1px dashed var(--line);font-size:14px;}
.payslip-row .label{color:var(--gray);white-space:nowrap;}
.payslip-row .dots{flex:1;border-bottom:1px dotted #C7CBCD;height:0;transform:translateY(-4px);}
.payslip-row .val{font-family:'IBM Plex Mono',monospace;font-weight:500;white-space:nowrap;color:var(--navy);}
.payslip-total{display:flex;justify-content:space-between;align-items:center;background:var(--paper-alt);margin:8px -26px -1px;padding:20px 26px;border-top:2px solid var(--navy);}
.payslip-total .label{font-weight:700;font-size:15px;}
.payslip-total .val{font-family:'IBM Plex Mono',monospace;font-weight:600;color:var(--orange);font-size:15px;}

/* ---------- SECTION GENERIC ---------- */
section{padding:88px 0;}
.section-head{max-width:640px;margin-bottom:56px;}
.section-head p{color:var(--gray);font-size:16px;margin-top:14px;}
.divider{border:none;border-top:1px solid var(--line);}

/* ---------- RISKS ---------- */
.risks{
  background:
    linear-gradient(rgba(255,255,255,.95), rgba(255,255,255,.95)),
    url('https://images.unsplash.com/photo-1454165804606-c3d57bc86b40?auto=format&fit=crop&w=1600&q=40') center/cover no-repeat,
    var(--white);
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);
}
.risk-grid{display:grid;grid-template-columns:1fr;gap:0;border:1px solid var(--line);}
@media(min-width:760px){.risk-grid{grid-template-columns:repeat(2,1fr);}}
.risk-item{padding:32px;border-bottom:1px solid var(--line);display:flex;gap:18px;}
@media(min-width:760px){.risk-item:nth-child(odd){border-right:1px solid var(--line);}}
.risk-num{font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--orange);flex-shrink:0;padding-top:2px;}
.risk-item h3{margin-bottom:8px;font-size:17px;}
.risk-item p{color:var(--gray);font-size:14.5px;}

/* ---------- SERVICES ---------- */
.services-grid{display:grid;grid-template-columns:1fr;gap:24px;}
@media(min-width:640px){.services-grid{grid-template-columns:repeat(2,1fr);}}
@media(min-width:1080px){.services-grid{grid-template-columns:repeat(4,1fr);}}
.service-card{background:var(--white);border:1px solid var(--line);padding:36px 30px;display:flex;flex-direction:column;transition:border-color .2s ease, transform .2s ease;}
.service-card:hover{border-color:var(--orange);transform:translateY(-4px);}
.service-mark{width:38px;height:38px;background:var(--paper-alt);display:flex;align-items:center;justify-content:center;margin-bottom:22px;}
.service-mark svg{width:20px;height:20px;stroke:var(--navy);}
.service-card h3{margin-bottom:12px;}
.service-card p{color:var(--gray);font-size:14.5px;margin-bottom:20px;flex:1;}
.service-list{list-style:none;font-size:13.5px;color:var(--navy);display:flex;flex-direction:column;gap:8px;}
.service-list li{padding-left:16px;position:relative;}
.service-list li::before{content:"";position:absolute;left:0;top:8px;width:6px;height:6px;background:var(--orange);}
.service-card .btn{margin-top:22px;align-self:flex-start;}

/* ---------- SERVICE DETAIL BLOCKS (page services) ---------- */
.service-detail{
  padding:64px 0;border-bottom:1px solid var(--line);
  background:
    linear-gradient(rgba(245,245,243,.96), rgba(245,245,243,.96)),
    url('https://images.unsplash.com/photo-1709880945165-d2208c6ad2ec?auto=format&fit=crop&w=1600&q=40') center/cover no-repeat,
    var(--paper);
}
.service-detail:last-of-type{border-bottom:none;}
.service-detail .wrap{display:block;}
.service-detail .num{font-family:'IBM Plex Mono',monospace;color:var(--orange);font-size:14px;margin-bottom:10px;display:block;}
.service-detail h2{margin-bottom:14px;}
.service-detail-grid{display:grid;grid-template-columns:1fr;gap:32px;align-items:center;margin-bottom:40px;}
@media(min-width:900px){.service-detail-grid{grid-template-columns:.95fr 1.05fr;}}
.service-detail-grid p{color:var(--gray);font-size:15.5px;margin-bottom:14px;}
.service-detail-grid p:last-child{margin-bottom:0;}
.service-detail-photo{border:1px solid var(--line);overflow:hidden;aspect-ratio:4/3;}
.service-detail-photo img{width:100%;height:100%;object-fit:cover;display:block;}
.detail-list{display:grid;grid-template-columns:1fr;gap:14px;}
@media(min-width:600px){.detail-list{grid-template-columns:1fr 1fr;}}
.detail-item{border:1px solid var(--line);background:var(--white);padding:20px;}
.detail-item h4{font-size:14.5px;margin-bottom:6px;}
.detail-item p{font-size:13.5px;color:var(--gray);}

/* ---------- PROCESS ---------- */
.process{
  background:
    linear-gradient(rgba(255,255,255,.95), rgba(255,255,255,.95)),
    url('https://images.unsplash.com/photo-1716703435453-a7733d600d68?auto=format&fit=crop&w=1600&q=40') center/cover no-repeat,
    var(--white);
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);
}
.process-list{display:grid;grid-template-columns:1fr;gap:0;counter-reset:step;}
@media(min-width:760px){.process-list{grid-template-columns:repeat(4,1fr);}}
.process-step{padding:28px 26px;border-right:1px solid var(--line);position:relative;}
.process-list .process-step:last-child{border-right:none;}
@media(max-width:759px){.process-step{border-right:none;border-bottom:1px solid var(--line);}}
.process-step .step-num{font-family:'IBM Plex Mono',monospace;color:var(--orange);font-size:13px;display:block;margin-bottom:12px;}
.process-step h4{font-size:15px;margin-bottom:8px;}
.process-step p{font-size:13.5px;color:var(--gray);}

/* ---------- WHY US (ledger style) ---------- */
.why{
  background:
    linear-gradient(rgba(15,30,51,.93), rgba(15,30,51,.93)),
    url('https://images.unsplash.com/photo-1521737604893-d14cc237f11d?auto=format&fit=crop&w=1600&q=40') center/cover no-repeat,
    var(--navy);
  color:var(--white);
}
.why .section-head h2{color:var(--white);}
.why .section-head p{color:#B9C3D2;}
.why .eyebrow{color:var(--orange-light);}
.why .eyebrow::before{background:var(--orange-light);}
.why-grid{display:grid;grid-template-columns:1fr;}
@media(min-width:760px){.why-grid{grid-template-columns:1fr 1fr;column-gap:60px;}}
.why-row{display:flex;align-items:baseline;gap:8px;padding:20px 0;border-bottom:1px dashed rgba(255,255,255,.22);}
.why-row .label{font-size:16px;font-weight:500;white-space:nowrap;}
.why-row .dots{flex:1;border-bottom:1px dotted rgba(255,255,255,.3);height:0;transform:translateY(-6px);}
.why-row .val{font-family:'IBM Plex Mono',monospace;color:var(--orange-light);font-size:14px;white-space:nowrap;}

/* ---------- ABOUT ---------- */
.about .wrap{display:grid;grid-template-columns:1fr;gap:48px;}
@media(min-width:900px){.about .wrap{grid-template-columns:.9fr 1.1fr;align-items:center;}}
.about-visual{aspect-ratio:4/5;background:var(--paper-alt);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;padding:40px;}
.about-visual .tri{width:60%;height:auto;}
.about p{color:var(--gray);margin-bottom:16px;font-size:15.5px;}
.about-stats{display:flex;gap:40px;margin-top:32px;flex-wrap:wrap;}
.about-stats div strong{display:block;font-family:'IBM Plex Mono',monospace;font-size:28px;color:var(--orange);}
.about-stats div span{font-size:13px;color:var(--gray);}

/* ---------- VALUES (page cabinet) ---------- */
.values-grid{display:grid;grid-template-columns:1fr;gap:24px;justify-content:center;}
@media(min-width:760px){.values-grid{grid-template-columns:repeat(3,1fr);}}
.value-card{padding:30px;border:1px solid var(--line);background:var(--white);}
.value-card .letter{font-family:'IBM Plex Mono',monospace;color:var(--orange);font-size:22px;display:block;margin-bottom:14px;}
.value-card h3{font-size:16px;margin-bottom:8px;}
.value-card p{font-size:13.5px;color:var(--gray);}

.value-card-icon{
  padding:34px 28px;background:var(--paper-alt);border:1px solid var(--line);
  text-align:center;
}
.value-icon{
  width:52px;height:52px;margin:0 auto 20px;
  background:var(--white);border:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;
}
.value-icon svg{width:24px;height:24px;stroke:var(--navy);}
.value-card-icon h3{
  font-size:16px;margin-bottom:10px;position:relative;display:inline-block;padding-bottom:10px;
}
.value-card-icon h3::after{
  content:"";position:absolute;left:50%;bottom:0;transform:translateX(-50%);
  width:28px;height:2px;background:var(--orange);
}
.value-card-icon p{font-size:13.5px;color:var(--gray);}
.values-lead{
  max-width:700px;margin:44px auto 0;text-align:center;
  font-size:15.5px;color:var(--navy);line-height:1.8;
}
.values-lead strong{color:var(--orange);}

/* ---------- SECTORS ---------- */
.sectors-section{background:var(--white);border-bottom:1px solid var(--line);}
.sector-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;}
@media(min-width:760px){.sector-grid{grid-template-columns:repeat(4,1fr);}}
.sector-card{
  position:relative;aspect-ratio:4/3;overflow:hidden;
  border:1px solid var(--line);background:var(--paper-alt);
}
.sector-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease;}
.sector-card:hover img{transform:scale(1.06);}
.sector-card .overlay{
  position:absolute;inset:0;
  background:linear-gradient(180deg, rgba(27,48,84,0) 35%, rgba(15,30,51,.92) 100%);
}
.sector-card .label{
  position:absolute;left:0;right:0;bottom:0;padding:12px 14px;
  color:var(--white);font-size:13px;font-weight:600;line-height:1.3;
}

/* ---------- CTA STRIP (bandeau navy inversé au-dessus du footer) ---------- */
.cta-strip{padding:60px 0;background:var(--paper);}
.cta-strip-inner{
  background:var(--navy);border:1px solid var(--navy);border-radius:20px;
  display:flex;flex-wrap:wrap;gap:28px;align-items:center;justify-content:space-between;
  padding:40px 48px;
}
.cta-strip h2{
  font-size:clamp(22px,3vw,29px);color:var(--white);margin:0;line-height:1.35;
  max-width:560px;
}
.cta-strip .accent{color:var(--orange-light);}
.btn-pill{
  display:inline-flex;align-items:center;gap:10px;flex-shrink:0;white-space:nowrap;
  background:var(--orange);color:var(--white);
  padding:17px 30px;border-radius:40px;font-size:14.5px;font-weight:600;
  transition:background .2s ease;
}
.btn-pill:hover{background:var(--orange-light);}
.btn-pill svg{width:15px;height:15px;stroke:var(--white);flex-shrink:0;}
@media(max-width:640px){
  .cta-strip-inner{flex-direction:column;align-items:flex-start;padding:32px 26px;}
  .btn-pill{width:100%;justify-content:center;}
}

/* ---------- CONTACT ---------- */
.contact{
  background:
    linear-gradient(rgba(239,238,234,.96), rgba(239,238,234,.96)),
    url('https://images.unsplash.com/photo-1454165804606-c3d57bc86b40?auto=format&fit=crop&w=1600&q=40') center/cover no-repeat,
    var(--paper-alt);
  border-top:1px solid var(--line);
}

/* ---------- CONTACT HERO (image + accent) ---------- */
.contact-hero-grid{display:grid;grid-template-columns:1fr;gap:32px;align-items:center;margin-bottom:28px;}
@media(min-width:900px){.contact-hero-grid{grid-template-columns:1.1fr .9fr;}}
.headline-accent{position:relative;display:inline-block;}
.headline-accent::after{
  content:"";position:absolute;left:0;right:0;bottom:6px;height:14px;
  background:rgba(221,117,0,.28);z-index:-1;
}
.contact-hero-img{border:1px solid var(--line);overflow:hidden;aspect-ratio:16/10;}
.contact-hero-img img{width:100%;height:100%;object-fit:cover;display:block;}
.contact-hero-lead{font-size:16.5px;color:var(--navy);max-width:760px;padding-top:8px;border-top:1px solid var(--line);}

/* ---------- CONTACT SPLIT (carte + formulaire) ---------- */
.contact-split{display:grid;grid-template-columns:1fr;gap:24px;align-items:stretch;}
@media(min-width:900px){.contact-split{grid-template-columns:.85fr 1.15fr;}}

/* Page Contact uniquement : empêche l'encart bleu de s'étirer sur toute la hauteur du formulaire */
.contact-split--stacked .contact-card{
  align-self:start;
  justify-content:flex-start;
  gap:22px;
}

/* Page Contact uniquement : bleu empilé au-dessus du formulaire, sur toutes les tailles d'écran */
@media(min-width:900px){
  .contact-split--stacked{grid-template-columns:1fr !important;}
}
.contact-split--stacked{gap:20px !important;}
.contact-card{
  background:var(--navy);color:var(--white);
  padding:40px 34px;
  display:flex;flex-direction:column;justify-content:space-between;gap:32px;
}
.contact-card h3{color:var(--white);font-size:23px;line-height:1.3;margin:10px 0 14px;}
.contact-card h3 .accent{color:var(--orange-light);}
.contact-card>div>p{color:#B9C3D2;font-size:14.5px;}
.card-items{display:flex;flex-direction:column;gap:16px;}
.card-items .item{display:flex;align-items:center;gap:12px;}
.card-items .ic{width:34px;height:34px;flex-shrink:0;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;}
.card-items .ic svg{width:16px;height:16px;stroke:var(--orange-light);}
.card-items a,.card-items span{color:var(--white);font-size:14.5px;font-weight:500;}
.card-items a:hover{color:var(--orange-light);}

.consent{display:flex;align-items:flex-start;gap:10px;margin-bottom:20px;cursor:pointer;}
.consent input{width:16px;height:16px;flex-shrink:0;margin-top:2px;accent-color:var(--orange);}
.consent span{font-size:12.5px;color:var(--gray);line-height:1.6;}
.consent a{color:var(--navy);text-decoration:underline;}
.consent a:hover{color:var(--orange);}

/* ---------- Contact Form 7 : alignement sur le style du site ---------- */
.wpcf7-row{display:grid;grid-template-columns:1fr;gap:16px;margin-bottom:16px;}
@media(min-width:520px){.wpcf7-row{grid-template-columns:1fr 1fr;}}
.wpcf7-field{margin-bottom:16px;}
.wpcf7-field label{display:block;font-size:12px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--gray);margin-bottom:6px;}
.wpcf7-form-control-wrap{display:block;}
.wpcf7 input[type="text"],.wpcf7 input[type="email"],.wpcf7 input[type="tel"],.wpcf7 textarea{
  width:100%;border:1px solid var(--line);background:var(--paper);
  padding:12px 14px;font-family:'Montserrat',sans-serif;font-size:14px;color:var(--navy);
}
.wpcf7 input[type="text"]:focus,.wpcf7 input[type="email"]:focus,.wpcf7 input[type="tel"]:focus,.wpcf7 textarea:focus{
  outline:none;border-color:var(--orange);background:var(--white);
}
.wpcf7 textarea{min-height:110px;resize:vertical;}
.wpcf7-acceptance .wpcf7-list-item{display:flex;align-items:flex-start;gap:10px;margin:8px 0 20px;list-style:none;}
.wpcf7-acceptance input[type="checkbox"]{width:16px;height:16px;flex-shrink:0;margin-top:2px;accent-color:var(--orange);}
.wpcf7-acceptance .wpcf7-list-item-label{font-size:12.5px;color:var(--gray);line-height:1.6;}
.wpcf7-acceptance .wpcf7-list-item-label a{color:var(--navy);text-decoration:underline;}
.wpcf7-acceptance .wpcf7-list-item-label a:hover{color:var(--orange);}
.wpcf7-not-valid-tip{font-size:12px;color:var(--orange);margin-top:4px;display:block;}
.wpcf7 input[type="submit"]{
  width:100%;justify-content:center;
  display:inline-flex;align-items:center;gap:8px;
  padding:12px 24px;font-size:14px;font-weight:600;
  border-radius:2px;border:none;cursor:pointer;
  background:var(--orange);color:var(--white);
  transition:background .2s ease;
}
.wpcf7 input[type="submit"]:hover{background:var(--navy);}
.wpcf7-response-output{border:1px solid var(--line);padding:14px 18px;font-size:13.5px;margin-top:20px;}


.contact .wrap{display:grid;grid-template-columns:1fr;gap:48px;}
@media(min-width:900px){.contact .wrap{grid-template-columns:.9fr 1.1fr;}}

/* Page Diagnostic flash uniquement : empêche l'encart bleu de s'étirer sur toute la hauteur du formulaire */
.contact-flash--stacked .contact-card{
  align-self:start;
  justify-content:flex-start;
  gap:22px;
}

/* Page Diagnostic flash uniquement : bleu empilé au-dessus du formulaire, sur toutes les tailles d'écran */
@media(min-width:900px){
  .contact-flash--stacked{grid-template-columns:1fr !important;}
}
.contact-flash--stacked{gap:20px !important;}
.contact-info{display:flex;flex-direction:column;gap:22px;}
.contact-info .item{display:flex;gap:14px;}
.contact-info .ic{width:36px;height:36px;flex-shrink:0;background:var(--navy);display:flex;align-items:center;justify-content:center;}
.contact-info .ic svg{width:16px;height:16px;stroke:var(--white);}
.contact-info .item strong{display:block;font-size:14px;margin-bottom:2px;}
.contact-info .item span, .contact-info .item a{font-size:14px;color:var(--gray);}
form{background:var(--white);border:1px solid var(--line);padding:36px;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;}
@media(max-width:520px){.form-row{grid-template-columns:1fr;}}
label{display:block;font-size:12px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--gray);margin-bottom:6px;}
input,textarea,select{width:100%;border:1px solid var(--line);background:var(--paper);padding:12px 14px;font-family:'Montserrat',sans-serif;font-size:14px;color:var(--navy);}
input:focus,textarea:focus,select:focus{outline:none;border-color:var(--orange);background:var(--white);}
.field{margin-bottom:16px;}
textarea{min-height:110px;resize:vertical;}
form .btn-primary{width:100%;justify-content:center;margin-top:6px;}
.map-block{border:1px solid var(--line);background:var(--paper-alt);aspect-ratio:16/8;display:flex;align-items:center;justify-content:center;margin-top:32px;}
.map-block span{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--gray);}
.faq-item{border-bottom:1px solid var(--line);padding:22px 0;}
.faq-item h4{font-size:15px;margin-bottom:8px;}
.faq-item p{font-size:14px;color:var(--gray);}

/* ---------- FOOTER ---------- */
footer{background:var(--navy-deep);color:#B9C3D2;padding:56px 0 28px;}
.footer-top{display:grid;grid-template-columns:1fr;gap:40px;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,.12);margin-bottom:24px;}
@media(min-width:760px){.footer-top{grid-template-columns:1.3fr 1fr 1fr;}}
footer img{height:38px;margin-bottom:16px;}
footer p{font-size:13.5px;line-height:1.7;max-width:320px;}
.footer-social{
  display:inline-flex;align-items:center;gap:8px;margin-top:18px;
  font-size:13px;font-weight:600;color:var(--white);
}
.footer-social svg{width:18px;height:18px;stroke:var(--orange-light);}
.footer-social:hover{color:var(--orange-light);}
footer h4{color:var(--white);font-size:13px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:16px;}
footer ul{list-style:none;display:flex;flex-direction:column;gap:10px;}
footer ul a{font-size:14px;}
footer ul a:hover{color:var(--orange-light);}
.footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:12.5px;color:#7C8AA0;}
.footer-bottom a{color:#7C8AA0;text-decoration:underline;}
.footer-bottom a:hover{color:var(--orange-light);}

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto;}
  *{transition:none !important;animation:none !important;}
}

/* ---------- BLOG ---------- */
.blog-grid{display:grid;grid-template-columns:1fr;gap:28px;}
@media(min-width:760px){.blog-grid{grid-template-columns:repeat(2,1fr);}}
@media(min-width:1040px){.blog-grid{grid-template-columns:repeat(3,1fr);}}
.blog-card{background:var(--white);border:1px solid var(--line);display:flex;flex-direction:column;transition:border-color .2s ease, transform .2s ease;}
.blog-card:hover{border-color:var(--orange);transform:translateY(-4px);}
.blog-card-thumb{aspect-ratio:16/10;background:var(--paper-alt);overflow:hidden;}
.blog-card-thumb img{width:100%;height:100%;object-fit:cover;}
.blog-card-body{padding:24px;display:flex;flex-direction:column;flex:1;}
.blog-meta{font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--orange);margin-bottom:10px;}
.blog-card h3{font-size:17px;margin-bottom:10px;line-height:1.3;}
.blog-card h3 a{color:var(--navy);}
.blog-card h3 a:hover{color:var(--orange);}
.blog-card p{color:var(--gray);font-size:14px;flex:1;margin-bottom:16px;}
.blog-card .read-more{font-family:'IBM Plex Mono',monospace;font-size:12.5px;color:var(--navy);display:inline-flex;align-items:center;gap:6px;}
.blog-card .read-more:hover{color:var(--orange);}

.single-post-header{max-width:760px;margin:0 auto 40px;}
.single-post-header .breadcrumb{margin-bottom:18px;}
.single-post-header h1{font-size:clamp(28px,4vw,44px);margin-bottom:16px;}
.single-post-meta{font-family:'IBM Plex Mono',monospace;font-size:12.5px;color:var(--gray);text-transform:uppercase;letter-spacing:.04em;}
.single-post-content{max-width:760px;margin:0 auto;font-size:16px;color:var(--navy);line-height:1.8;}
.single-post-content p{margin-bottom:22px;color:var(--navy);}
.single-post-content h2{font-size:26px;margin:40px 0 18px;}
.single-post-content h3{font-size:20px;margin:32px 0 14px;}
.single-post-content ul,.single-post-content ol{margin:0 0 22px 22px;color:var(--navy);}
.single-post-content li{margin-bottom:8px;}
.single-post-content img{width:100%;height:auto;margin:24px 0;border:1px solid var(--line);}
.single-post-content a{color:var(--orange);text-decoration:underline;}
.post-nav-back{max-width:760px;margin:0 auto 32px;}
.post-nav-back a{font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--gray);}
.post-nav-back a:hover{color:var(--orange);}

.pagination-wrap{display:flex;justify-content:center;gap:10px;margin-top:56px;flex-wrap:wrap;}
.pagination-wrap a,.pagination-wrap span{
  font-family:'IBM Plex Mono',monospace;font-size:13px;
  padding:10px 16px;border:1px solid var(--line);color:var(--navy);
}
.pagination-wrap .current{background:var(--navy);color:var(--white);border-color:var(--navy);}
.pagination-wrap a:hover{border-color:var(--orange);color:var(--orange);}

.no-posts{text-align:center;padding:60px 0;color:var(--gray);}

/* ---------- Espace client ---------- */
.client-portal{padding:64px 0;}
.client-portal-card{
  background:var(--white);border:1px solid var(--line);
  padding:40px;max-width:640px;margin:0 auto;
}
.client-portal-card h3{font-size:22px;margin:8px 0 10px;color:var(--navy);}
.client-portal-sub{color:var(--gray);font-size:14.5px;margin-bottom:24px;}
.client-portal-header{
  display:flex;align-items:flex-start;justify-content:space-between;gap:16px;
  flex-wrap:wrap;margin-bottom:8px;
}
#client-login-form p{margin-bottom:16px;}
#client-login-form label{display:block;font-size:12px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--gray);margin-bottom:6px;}
#client-login-form input[type="text"],
#client-login-form input[type="password"]{
  width:100%;border:1px solid var(--line);background:var(--paper);
  padding:12px 14px;font-family:'Montserrat',sans-serif;font-size:14px;color:var(--navy);
}
#client-login-form input[type="text"]:focus,
#client-login-form input[type="password"]:focus{outline:none;border-color:var(--orange);background:var(--white);}
#client-login-form .login-remember{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--gray);}
#client-login-form .login-remember input{width:auto;}
#client-login-form .login-submit input[type="submit"]{
  width:100%;justify-content:center;display:inline-flex;align-items:center;gap:8px;
  padding:12px 24px;font-size:14px;font-weight:600;border-radius:2px;border:none;cursor:pointer;
  background:var(--orange);color:var(--white);transition:background .2s ease;
}
#client-login-form .login-submit input[type="submit"]:hover{background:var(--navy);}
.client-portal-lostpass{margin-top:6px;font-size:13.5px;}
.client-portal-lostpass a{color:var(--navy);text-decoration:underline;}
.client-portal-lostpass a:hover{color:var(--orange);}
.client-portal-note{margin-top:24px;padding-top:20px;border-top:1px solid var(--line);font-size:13px;color:var(--gray);}
.client-portal-form{margin-top:8px;}
.client-portal-gdpr{margin-top:24px;padding-top:20px;border-top:1px solid var(--line);font-size:12.5px;color:var(--gray);line-height:1.6;}
.client-portal-gdpr a{color:var(--navy);text-decoration:underline;}

/* ---------- Note "inclus dans toutes nos prestations" (page Nos prestations) ---------- */
.services-included-note{
  margin-top:14px;font-size:14.5px;color:var(--navy);font-weight:600;
}
.services-included-note a{color:var(--orange);text-decoration:underline;}
.services-included-note a:hover{color:var(--orange-light);}

/* ---------- Encart "Avantages d'un audit" (page Audit paie & RH) ---------- */
.audit-benefits{
  background:var(--navy);border-radius:20px;
  display:grid;grid-template-columns:1fr;gap:32px;
  padding:44px 40px;
}
@media(min-width:900px){.audit-benefits{grid-template-columns:.9fr 1.1fr;padding:52px;}}
.audit-benefits-text h3{color:var(--white);font-size:24px;line-height:1.3;margin:10px 0 14px;}
.audit-benefits-text p{color:#B9C3D2;font-size:14.5px;max-width:400px;}
.audit-benefits-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px;}
.audit-benefits-list li{
  position:relative;padding-left:30px;color:var(--white);font-size:15px;line-height:1.5;
}
.audit-benefits-list li::before{
  content:"";position:absolute;left:0;top:4px;width:18px;height:18px;border-radius:50%;
  background:var(--orange);
}
.audit-benefits-list li::after{
  content:"";position:absolute;left:6px;top:8px;width:6px;height:10px;
  border-right:2px solid var(--white);border-bottom:2px solid var(--white);
  transform:rotate(45deg);
}

/* ---------- Filigrane en fond (page Audit paie & RH) ---------- */
.page-hero--audit{
  position:relative;
  background:
    radial-gradient(circle at 88% 8%, rgba(221,117,0,.06), transparent 45%),
    linear-gradient(90deg, rgba(245,245,243,.97) 0%, rgba(245,245,243,.9) 40%, rgba(245,245,243,.55) 100%),
    url('https://images.unsplash.com/photo-1554224155-1696413565d3?auto=format&fit=crop&w=1600&q=40') right center/cover no-repeat,
    var(--paper);
}

