:root{
  --ab-red:#e30613;
  --ab-red-dark:#b8000b;
  --ab-black:#0d0f12;
  --ab-ink:#17191d;
  --ab-muted:#5d626b;
  --ab-paper:#fff;
  --ab-soft:#f3f4f6;
  --ab-line:#dfe2e6;
  --ab-max:1480px;
  --ab-shadow:0 18px 48px rgba(14,18,25,.09);
}

html{scroll-behavior:smooth}
body.ab-site{margin:0!important;background:#fff!important;color:var(--ab-ink)!important;font-family:Arial,"Helvetica Neue",sans-serif!important;font-size:16px!important;line-height:1.55!important;-webkit-font-smoothing:antialiased}
.ab-site *{box-sizing:border-box}
.ab-site img{max-width:100%;height:auto}
.ab-site a{text-decoration:none}
.ab-wrap{width:min(var(--ab-max),calc(100% - 64px));margin-inline:auto}
.ab-skip-link{position:fixed;z-index:9999;top:10px;left:10px;padding:10px 16px;background:#fff;color:#111;transform:translateY(-160%)}
.ab-skip-link:focus{transform:none}

/* Promotion : visible uniquement quand elle est activée en administration. */
.ab-promo{min-height:38px;display:flex;align-items:center;justify-content:center;padding:7px 24px;background:var(--ab-red);color:#fff;font-size:.76rem;font-weight:800;letter-spacing:.09em;text-align:center;text-transform:uppercase}
.ab-promo span:after{content:"→";margin-left:15px}

/* En-tête compact et signature de l'atelier. */
.ab-header{position:relative;z-index:80;background:#fff}
.ab-utility{background:#0b0d10;color:#bec2c9}
.ab-utility-inner{min-height:32px;display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:.72rem}
.ab-utility-inner>div{display:flex;align-items:center;gap:20px}
.ab-utility a{color:#c9ccd2!important;transition:color .18s}
.ab-utility a:hover{color:#fff!important}
.ab-account{padding-left:20px;border-left:1px solid #34373d}
.ab-admin{padding:4px 9px;border:1px solid rgba(255,255,255,.25);color:#fff!important;font-size:.62rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}

.ab-brand-banner{position:relative;overflow:hidden;background-image:linear-gradient(90deg,rgba(3,4,6,.15),rgba(3,4,6,.60) 28%,rgba(3,4,6,.72) 50%,rgba(3,4,6,.60) 72%,rgba(3,4,6,.15)),url('/images/banniere-automobiles-bazin.jpg');background-position:center 48%;background-size:cover;border-bottom:3px solid var(--ab-red);color:#fff}
.ab-brand-banner:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.46),transparent 50%,rgba(0,0,0,.18));pointer-events:none}
.ab-brand-inner{min-height:108px;position:relative;z-index:1;display:grid;grid-template-columns:1fr minmax(620px,790px) 1fr;align-items:center;gap:28px}
.ab-brand-rule{height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.38))}
.ab-brand-rule:last-child{background:linear-gradient(90deg,rgba(255,255,255,.38),transparent)}
.ab-signature{display:block;padding:10px 22px;border:1px solid rgba(255,255,255,.17);background:rgba(3,5,7,.56);box-shadow:0 9px 28px rgba(0,0,0,.3);color:#fff!important;text-align:center;text-shadow:0 2px 9px #000;backdrop-filter:blur(2px)}
.ab-signature small{display:block;margin-bottom:3px;color:#d9dbe0;font-size:.57rem;font-weight:800;letter-spacing:.23em;text-transform:uppercase}
.ab-signature strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.8rem,2.35vw,2.65rem);font-weight:700;letter-spacing:.045em;line-height:1.06;text-transform:uppercase}
.ab-signature strong em{color:#f01824;font-style:normal}
.ab-signature>span{display:block;margin-top:6px;color:#d4d6da;font-size:.56rem;font-weight:700;letter-spacing:.095em;text-transform:uppercase}
.ab-signature>span i{margin:0 7px;color:var(--ab-red);font-style:normal}

.ab-main-nav{position:relative;background:#fff;border-bottom:1px solid #e4e6e9;box-shadow:0 7px 20px rgba(0,0,0,.055)}
.ab-nav-inner{min-height:58px;display:flex;align-items:center;justify-content:center}
.ab-menu{min-height:58px;display:flex;align-items:stretch;justify-content:center;gap:34px}
.ab-menu>a,.ab-explore-toggle{position:relative;display:flex;align-items:center;padding:0;border:0;background:none;color:#17191d!important;font-size:1rem;font-weight:800;letter-spacing:.035em;text-transform:uppercase;white-space:nowrap;cursor:pointer}
.ab-menu>a:after{content:"";position:absolute;right:0;bottom:0;left:0;height:3px;background:var(--ab-red);transform:scaleX(0);transition:transform .18s}
.ab-menu>a:hover:after,.ab-menu>a.active:after{transform:scaleX(1)}
.ab-explore-toggle span{margin-left:7px;color:var(--ab-red);font-size:1.08rem;transition:transform .18s}
.ab-explore-toggle[aria-expanded="true"] span{transform:rotate(45deg)}
.ab-mobile-brand,.ab-menu-toggle{display:none}

.ab-explore{position:absolute;z-index:90;right:0;left:0;top:100%;padding:23px 0 25px;background:#14161a;color:#c7cad0;box-shadow:0 22px 42px rgba(0,0,0,.30)}
.ab-explore[hidden]{display:none!important}
.ab-explore-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:38px}
.ab-explore-grid>div{display:grid;grid-template-columns:1fr 1fr;align-content:start;column-gap:18px}
.ab-explore h2{grid-column:1/-1;margin:0 0 9px;padding-bottom:8px;border-bottom:1px solid #383b41;color:#fff;font-size:.82rem;letter-spacing:.1em;text-transform:uppercase}
.ab-explore a{padding:4px 0;color:#c7cad0!important;font-size:.92rem;transition:.18s}
.ab-explore a:hover{color:#fff!important;transform:translateX(3px)}

/* Titre de rubrique : court, net et sans écran vide. */
.ab-page-heading{position:relative;overflow:hidden;padding:20px 0 21px;background:#17191d;color:#fff;border-bottom:1px solid #292c31}
.ab-page-heading:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(227,6,19,.12),transparent 34%),repeating-linear-gradient(115deg,transparent 0 66px,rgba(255,255,255,.018) 66px 67px)}
.ab-page-heading .ab-wrap{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:32px}
.ab-page-heading p{grid-column:1;margin:0 0 3px;color:#ff3440;font-size:.64rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
.ab-page-heading h1{grid-column:1;margin:0;color:#fff;font-size:clamp(1.8rem,2.75vw,2.85rem);font-weight:750;letter-spacing:-.035em;line-height:1.04}
.ab-page-heading nav{grid-column:2;grid-row:1/3;display:flex;align-items:center;gap:9px;margin:0;color:#8e939c;font-size:.72rem}
.ab-page-heading nav a{color:#c7cad0!important}
.ab-page-heading nav strong{color:#fff;font-weight:600}
.ab-page-heading nav span{color:var(--ab-red)}

/* Navigation technique et corps de page. */
.ab-layout{display:block;padding-block:24px 66px}
.ab-topic-nav{min-height:52px;display:flex;align-items:stretch;justify-content:center;flex-wrap:wrap;gap:9px;margin-bottom:28px;padding:0;border:0;background:transparent;box-shadow:none}
.ab-topic-nav>a,.ab-directory-toggle{min-width:142px;min-height:50px;display:flex;align-items:center;justify-content:center;padding:8px 21px;border:1px solid #d7dbe0;border-radius:6px;background:#fff;color:#2f3339!important;box-shadow:0 5px 14px rgba(17,22,30,.045);font-size:.9rem;font-weight:800;letter-spacing:.025em;text-align:center;text-transform:uppercase;white-space:nowrap;transition:background .18s,border-color .18s,color .18s,transform .18s}
.ab-topic-nav>a:hover{border-color:#25282d;background:#25282d;color:#fff!important;transform:translateY(-1px)}
.ab-topic-nav>a.active{border-color:#202329;background:#202329;color:#fff!important;box-shadow:inset 0 -3px 0 var(--ab-red)}
.ab-directory-toggle{min-width:206px;border-color:var(--ab-red);background:var(--ab-red);color:#fff!important;cursor:pointer}
.ab-directory-toggle:hover{border-color:var(--ab-red-dark);background:var(--ab-red-dark);transform:translateY(-1px)}
.ab-directory-toggle span{margin-left:9px;color:var(--ab-red);font-size:1rem;transition:transform .18s}
.ab-directory-toggle[aria-expanded="true"] span{transform:rotate(45deg)}
.ab-directory{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:-27px 0 28px;border:1px solid #33363c;background:#17191d;color:#c4c7cd;box-shadow:0 18px 40px rgba(0,0,0,.16)}
.ab-directory[hidden]{display:none!important}
.ab-directory section{padding:20px 24px;border-right:1px solid #33363c}
.ab-directory section:last-child{border-right:0}
.ab-directory h2{margin:0 0 9px;padding-bottom:8px;border-bottom:1px solid #3b3e44;color:#fff;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase}
.ab-directory a{display:block;position:relative;padding:4px 16px 4px 0;color:#c2c5cb!important;font-size:.91rem}
.ab-directory a:after{content:"→";position:absolute;right:0;color:var(--ab-red);opacity:0;transition:.18s}
.ab-directory a:hover{color:#fff!important}
.ab-directory a:hover:after{opacity:1}

.ab-main-content{min-width:0!important;width:100%!important;float:none!important;padding:0!important}
.ab-content-card{min-height:260px;overflow:visible;padding:0;background:transparent;border:0;box-shadow:none}
.ab-content-card:after{content:"";display:table;clear:both}
.ab-content-card>h1:first-child,.ab-content-card>h2:first-child{margin-top:0}
.ab-content-card h1{color:#17191d;font-size:clamp(2rem,3.4vw,3.25rem);letter-spacing:-.035em;line-height:1.08}
.ab-content-card h2{color:#17191d;font-size:clamp(1.6rem,2.5vw,2.55rem);letter-spacing:-.025em;line-height:1.12}
.ab-content-card h3{color:#17191d}
.ab-content-card p,.ab-content-card li{color:#50555d;line-height:1.65}
.ab-content-card a:not(.ab-page-refusee-btn){color:#b9000b}
.ab-content-card img{max-width:100%!important;height:auto!important}
.ab-content-card table{max-width:100%}
.ab-content-card .cont_heading_table{display:none!important}
.ab-content-card input[type="text"],.ab-content-card input[type="email"],.ab-content-card input[type="tel"],.ab-content-card input[type="password"],.ab-content-card select,.ab-content-card textarea{max-width:100%;padding:10px 12px;border:1px solid #cfd2d7;border-radius:0;background:#fff;color:#1b1d21}
.ab-content-card input[type="submit"],.ab-content-card button{min-height:42px;padding:9px 18px;border:0;border-radius:0;background:var(--ab-red);color:#fff;font-weight:800;cursor:pointer}

/* Messages techniques et zones protégées. */
.ab-system-notice{margin:0 0 24px;padding:16px 18px;border-left:4px solid var(--ab-red);background:#fff2f3;color:#4c2023}
.ab-system-notice strong{display:block;color:#9f0009;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase}
.ab-system-notice p{margin:6px 0!important;color:#4c2023!important}
.ab-system-notice small{color:#7a6668}
.ab-page-refusee{max-width:760px;margin:15px auto}
.ab-page-refusee-card{overflow:hidden;border:1px solid #e1b4b8;background:#fff;box-shadow:0 15px 35px rgba(49,14,17,.1)}
.ab-page-refusee-head{display:flex;align-items:center;gap:12px;padding:17px 20px;background:#191b20;color:#fff;font-size:1rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.ab-page-refusee-head:before{content:"!";display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--ab-red);color:#fff}
.ab-page-refusee-head img{display:none!important}
.ab-page-refusee-body{padding:24px}
.ab-page-refusee-body p{margin:0 0 20px;color:#4d5158}
.ab-page-refusee-actions{display:flex;flex-wrap:wrap;gap:10px}
.ab-page-refusee-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 17px;background:var(--ab-red);color:#fff!important;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.ab-page-refusee-btn.secondary{border:1px solid #cfd2d7;background:#fff;color:#191b20!important}

/* Page Visitez nos ateliers. */
.ab-content-card .atelier-page{font-family:Arial,"Helvetica Neue",sans-serif!important;color:#222!important}
.ab-content-card .atelier-page .atelier-intro{max-width:1160px;margin:0 auto 32px!important;padding:7px 0 27px!important;background:transparent!important;border:0!important;border-bottom:1px solid #dfe1e4!important;border-radius:0!important;box-shadow:none!important;color:#535861!important;font-size:1.05rem!important;line-height:1.68!important}
.ab-content-card .atelier-page .atelier-intro h1{margin:0 0 12px!important;color:#15171b!important;font-size:clamp(2.05rem,3.3vw,3.35rem)!important;letter-spacing:-.04em!important;line-height:1.05!important}
.ab-content-card .atelier-page .atelier-list{display:grid!important;grid-template-columns:1fr!important;gap:18px!important;margin:0!important;padding:0!important}
.ab-content-card .atelier-page .atelier-list>li{margin:0!important;padding:0!important;list-style:none!important}
.ab-content-card .atelier-page .atelier-card{min-height:300px;display:flex!important;align-items:stretch!important;gap:0!important;overflow:hidden!important;background:#f1f2f4!important;border:0!important;border-radius:0!important;box-shadow:none!important}
.ab-content-card .atelier-page .atelier-list>li:nth-child(even) .atelier-card{flex-direction:row-reverse!important}
.ab-content-card .atelier-page .atelier-media{flex:0 0 42%!important;max-width:42%!important;background:#111318!important;border:0!important}
.ab-content-card .atelier-page .atelier-media img,.ab-content-card .atelier-page .atelier-media iframe,.ab-content-card .atelier-page .atelier-media video{display:block!important;width:100%!important;height:100%!important;min-height:300px!important;object-fit:cover!important;background:#111318!important}
.ab-content-card .atelier-page .atelier-content{display:flex!important;flex-direction:column!important;justify-content:center!important;padding:33px 42px!important;background:#f1f2f4!important}
.ab-content-card .atelier-page .atelier-title{margin:0 0 10px!important;color:#15171b!important;font-size:clamp(1.7rem,2.45vw,2.65rem)!important;letter-spacing:-.035em!important;line-height:1.08!important}
.ab-content-card .atelier-page .atelier-subtitle{margin-bottom:11px!important;color:#646971!important;font-size:.9rem!important;font-weight:800!important;letter-spacing:.07em!important;text-transform:uppercase!important}
.ab-content-card .atelier-page .atelier-text,.ab-content-card .atelier-page .atelier-highlight,.ab-content-card .atelier-page .atelier-phone-line{font-size:.98rem!important;line-height:1.62!important}
.ab-content-card .atelier-page .atelier-phone{margin:5px 0 14px!important;padding:9px 15px!important;background:#17191d!important;color:#fff!important;border-radius:0!important;font-size:.95rem!important;letter-spacing:.05em!important}
.ab-content-card .atelier-page .atelier-links{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
.ab-content-card .atelier-page .atelier-links a{padding:10px 15px!important;background:#fff!important;border:1px solid #cfd2d6!important;border-radius:0!important;color:#15171b!important;font-size:.72rem!important;font-weight:800!important;letter-spacing:.045em!important;text-transform:uppercase!important}
.ab-content-card .atelier-page .atelier-links a:hover{background:var(--ab-red)!important;border-color:var(--ab-red)!important;color:#fff!important}

/* Page Notre savoir-faire. */
.ab-content-card .savoir-faire-page{width:100%!important;font-family:Arial,"Helvetica Neue",sans-serif!important;color:#222!important}
.ab-content-card .savoir-faire-page .seo-intro{max-width:1160px;margin:0 auto 32px!important;padding:7px 0 27px!important;background:transparent!important;border:0!important;border-bottom:1px solid #dfe1e4!important;border-radius:0!important;box-shadow:none!important;font-size:1.05rem!important;line-height:1.68!important}
.ab-content-card .savoir-faire-page .seo-intro h1{margin:0 0 12px!important;color:#15171b!important;font-size:clamp(2.05rem,3.3vw,3.35rem)!important;letter-spacing:-.04em!important;line-height:1.05!important}
.ab-content-card .savoir-faire-page .service-list{display:grid!important;grid-template-columns:1fr!important;gap:18px!important;margin:0!important;padding:0!important}
.ab-content-card .savoir-faire-page .service-list>li{margin:0!important;padding:0!important;list-style:none!important}
.ab-content-card .savoir-faire-page .service-card{min-height:290px;display:flex!important;align-items:stretch!important;gap:0!important;overflow:hidden!important;background:#f1f2f4!important;border:0!important;border-radius:0!important;box-shadow:none!important}
.ab-content-card .savoir-faire-page .service-list>li:nth-child(even) .service-card{flex-direction:row-reverse!important}
.ab-content-card .savoir-faire-page .service-media{flex:0 0 42%!important;max-width:42%!important;background:#111318!important;border:0!important}
.ab-content-card .savoir-faire-page .service-media img,.ab-content-card .savoir-faire-page .service-media iframe,.ab-content-card .savoir-faire-page .service-media video{display:block!important;width:100%!important;height:100%!important;min-height:290px!important;object-fit:cover!important;background:#111318!important}
.ab-content-card .savoir-faire-page .service-content{display:flex!important;flex-direction:column!important;justify-content:center!important;padding:33px 42px!important}
.ab-content-card .savoir-faire-page .service-title{margin:0 0 9px!important;color:#15171b!important;font-size:clamp(1.7rem,2.45vw,2.65rem)!important;letter-spacing:-.035em!important;line-height:1.08!important}
.ab-content-card .savoir-faire-page .service-subtitle{margin:0 0 10px!important;color:#5e636c!important;font-size:1rem!important;font-weight:700!important;line-height:1.45!important}
.ab-content-card .savoir-faire-page .service-text,.ab-content-card .savoir-faire-page .service-highlight{margin:0 0 10px!important;color:#50555d!important;font-size:.98rem!important;line-height:1.62!important}
.ab-content-card .savoir-faire-page .service-highlight{color:#202329!important;font-weight:700!important}
.ab-content-card .savoir-faire-page .service-links{display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin-top:4px!important}
.ab-content-card .savoir-faire-page .service-links a{display:inline-flex!important;align-items:center!important;min-height:40px!important;padding:9px 15px!important;background:#fff!important;border:1px solid #cfd2d6!important;border-radius:0!important;color:#15171b!important;font-size:.72rem!important;font-weight:800!important;letter-spacing:.045em!important;text-transform:uppercase!important}
.ab-content-card .savoir-faire-page .service-links a:hover{background:var(--ab-red)!important;border-color:var(--ab-red)!important;color:#fff!important}
.ab-content-card .savoir-faire-page .facebook-block{margin:24px 0!important;text-align:center!important}
.ab-content-card .savoir-faire-page .btn-facebook{display:inline-flex!important;padding:12px 20px!important;background:#17191d!important;border-radius:0!important;color:#fff!important;font-size:.75rem!important;font-weight:800!important;text-transform:uppercase!important}

/* Pages galeries et moteurs déjà structurées. */
.ab-content-card .refection-page-modern{max-width:none!important;padding:0!important;font-family:Arial,"Helvetica Neue",sans-serif!important}
.ab-content-card .refection-head-modern{position:relative;margin:0 0 24px!important;padding:26px 31px!important;overflow:hidden;background:linear-gradient(105deg,#edf4fb 0%,#fff 66%,#e5eef9 100%)!important;border:1px solid #d8e3ee!important;border-left:5px solid #2e69a4!important;border-radius:13px!important;box-shadow:0 10px 28px rgba(25,68,113,.09)!important}
.ab-content-card .refection-head-modern:before{content:"";position:absolute;top:0;bottom:0;left:0;width:5px;background:var(--ab-red)}
.ab-content-card .refection-head-modern h1{margin:0!important;color:#17202b!important;font-size:clamp(1.9rem,2.8vw,3rem)!important;letter-spacing:-.035em!important;line-height:1.06!important}
.ab-content-card .refection-head-modern p{max-width:980px;margin:11px 0 0!important;color:#4f5b68!important;font-size:1.08rem!important;line-height:1.65!important}
.ab-content-card .refection-intro-modern{margin:0 0 24px!important;padding:24px 28px!important;background:#f4f6f8!important;border:1px solid #e0e4e9!important;border-radius:14px!important;box-shadow:0 8px 24px rgba(17,22,30,.05)!important}
.ab-content-card .refection-intro-modern li{font-size:1.06rem!important;line-height:1.7!important}
.ab-content-card .refection-gallery-modern{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important;align-items:stretch!important}
.ab-content-card .refection-card-modern{width:auto!important;min-width:0!important;overflow:hidden!important;background:#111318!important;border:0!important;border-radius:0!important;box-shadow:none!important;transition:transform .2s!important}
.ab-content-card .refection-card-modern:hover{transform:translateY(-3px)!important;box-shadow:none!important}
.ab-content-card .refection-card-modern img{width:100%!important;height:200px!important;object-fit:cover!important;background:#111318!important;filter:brightness(.94) saturate(.98)!important;transition:filter .2s,transform .25s!important}
.ab-content-card .refection-card-modern:hover img{filter:brightness(1.08) saturate(1.08)!important;transform:scale(1.025)!important}

/* Ateliers : conserver une identité colorée différente pour chaque métier. */
.ab-content-card .meca-wrap,.ab-content-card .carrosserie-wrap,.ab-content-card .frein-wrap{width:100%!important;max-width:1320px!important;margin:0 auto 32px!important;font-family:Arial,"Helvetica Neue",sans-serif!important}
.ab-content-card .meca-hero{background:linear-gradient(105deg,#ebf4fb 0%,#fff 66%,#dcecf9 100%)!important;border-left-color:#2870aa!important}
.ab-content-card .carrosserie-hero{background:linear-gradient(105deg,#fff1f3 0%,#fff 64%,#f3eafa 100%)!important;border-left-color:#cc4055!important}
.ab-content-card .frein-hero{background:linear-gradient(105deg,#edf3f8 0%,#fff 64%,#f7eaec 100%)!important;border-left-color:#9b4651!important}
.ab-content-card .meca-hero,.ab-content-card .carrosserie-hero,.ab-content-card .frein-hero{margin-bottom:24px!important;padding:25px 30px 23px!important;border:1px solid #dce1e6!important;border-left-width:5px!important;border-left-style:solid!important;border-radius:13px!important;box-shadow:0 10px 28px rgba(24,49,82,.08)!important}
.ab-content-card .meca-hero{border-left-color:#2870aa!important}
.ab-content-card .carrosserie-hero{border-left-color:#cc4055!important}
.ab-content-card .frein-hero{border-left-color:#9b4651!important}
.ab-content-card .meca-hero-kicker,.ab-content-card .carrosserie-hero-kicker,.ab-content-card .frein-hero-kicker{background:#fff!important;border:1px solid #d9dee4!important;color:#555d66!important;font-size:.75rem!important}
.ab-content-card .meca-hero-title,.ab-content-card .carrosserie-hero-title,.ab-content-card .frein-hero-title{color:#17202b!important;font-size:clamp(2rem,2.8vw,3rem)!important;text-shadow:none!important}
.ab-content-card .meca-hero-text,.ab-content-card .carrosserie-hero-text,.ab-content-card .frein-hero-text{max-width:1050px!important;color:#505a64!important;font-size:1.08rem!important;line-height:1.65!important}
.ab-content-card .meca-intro,.ab-content-card .intro-box,.ab-content-card .section-box{font-size:1.06rem!important;line-height:1.7!important}
.ab-content-card .meca-intro h1,.ab-content-card .intro-box h1,.ab-content-card .section-box h2{font-size:clamp(1.85rem,2.5vw,2.55rem)!important}
.ab-content-card .meca-intro p,.ab-content-card .intro-box p,.ab-content-card .section-box p{font-size:1.06rem!important;line-height:1.7!important}
.ab-content-card .meca-caption{font-size:.84rem!important}
.ab-content-card .gallery-link:hover .gallery-thumb img,.ab-content-card .meca-card:hover .meca-thumb{opacity:1!important;filter:brightness(1.06) saturate(1.06)!important}

/* Appel à l'action et pied de page. */
.ab-contact-band{background:var(--ab-red);color:#fff}
.ab-contact-band>.ab-wrap{min-height:174px;display:flex;align-items:center;justify-content:space-between;gap:45px}
.ab-contact-band small{display:block;margin-bottom:8px;color:#ffd1d4;font-size:.69rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.ab-contact-band h2{margin:0;color:#fff;font-size:clamp(2rem,3.4vw,3.35rem);letter-spacing:-.04em;line-height:1}
.ab-contact-band>.ab-wrap>div:last-child{display:flex;gap:10px}
.ab-button{min-height:54px;display:inline-flex;align-items:center;justify-content:center;padding:0 27px;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.ab-button-white{background:#fff;color:#111!important}
.ab-button-outline{border:1px solid rgba(255,255,255,.8);color:#fff!important}

.ab-footer{position:relative;padding-top:54px;background:#0e1013;color:#b1b5bd}
.ab-footer:before{content:"";position:absolute;top:0;right:0;left:0;height:3px;background:linear-gradient(90deg,var(--ab-red) 0 24%,#363940 24%)}
.ab-footer-grid{display:grid;grid-template-columns:1.2fr .9fr 1fr .9fr;gap:58px}
.ab-footer h2{margin:0 0 16px;padding-bottom:10px;border-bottom:1px solid #33363c;color:#fff;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}
.ab-footer p{color:#c0c3c9}
.ab-footer ul{margin:0;padding:0;list-style:none}
.ab-footer li{margin:0 0 8px}
.ab-footer a{color:#b8bcc3!important;transition:color .18s}
.ab-footer a:hover{color:#fff!important}
.ab-footer address{margin:0 0 16px;color:#b8bcc3;font-style:normal}
.ab-footer address strong{display:block;margin-bottom:4px;color:#fff}
.ab-footer-brand img{display:block;width:84px!important;height:84px!important;object-fit:contain;background:#fff}
.ab-footer-brand p{max-width:310px;margin:15px 0 18px}
.ab-footer-arrow{display:inline-flex;align-items:center;gap:9px;padding-bottom:4px;border-bottom:1px solid #555;color:#fff!important;font-size:.68rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.ab-footer-arrow span{color:var(--ab-red)}
.ab-footer-contact li{margin-bottom:12px}
.ab-footer-contact small{display:block;color:#737983;font-size:.62rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.ab-footer-contact a{display:block;color:#fff!important;font-size:1rem}
.ab-footer-bottom{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:42px;border-top:1px solid #2d3035;font-size:.7rem}
.ab-footer-bottom p{margin:0;color:#747982}
.ab-footer-bottom>div{display:flex;flex-wrap:wrap;gap:22px}
.ab-back-top{position:fixed;z-index:60;right:22px;bottom:20px;width:48px;height:48px;display:grid;place-items:center;border:1px solid #d9dce0;background:#fff;color:#17191d!important;box-shadow:0 10px 28px rgba(0,0,0,.1);font-size:1.05rem}

/* Neutralisation ciblée des restes du thème historique. */
.ab-site #center_column ul,.ab-site #center_column ol{list-style-position:outside}
.ab-site #center_column .container{max-width:100%!important;width:100%!important}
.ab-site #center_column .row{margin-right:0;margin-left:0}
.ab-site #center_column [class*="col-"]{max-width:100%}
.ab-site .breadcrumb{margin:0;padding:0;border:0;background:none}

@media(max-width:1220px){
  .ab-wrap{width:calc(100% - 48px)}
  .ab-brand-inner{grid-template-columns:1fr minmax(560px,720px) 1fr}
  .ab-menu{gap:21px}
  .ab-menu>a,.ab-explore-toggle{font-size:.88rem}
  .ab-explore-grid{gap:26px}
  .ab-directory{grid-template-columns:repeat(2,1fr)}
  .ab-directory section:nth-child(2){border-right:0}
  .ab-directory section:nth-child(-n+2){border-bottom:1px solid #33363c}
  .ab-footer-grid{grid-template-columns:1fr 1fr;gap:40px 54px}
  .ab-content-card .refection-gallery-modern{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

@media(max-width:900px){
  .ab-wrap{width:calc(100% - 36px)}
  .ab-brand-inner{min-height:96px;display:flex;justify-content:center}
  .ab-brand-rule{display:none}
  .ab-signature{width:min(760px,100%)}
  .ab-signature strong{font-size:1.75rem}
  .ab-signature>span{font-size:.52rem}
  .ab-menu{gap:14px}
  .ab-page-heading nav{display:none}
  .ab-contact-band>.ab-wrap{align-items:flex-start;flex-direction:column;justify-content:center;padding-block:38px}
}

@media(max-width:780px){
  .ab-wrap{width:calc(100% - 28px)}
  .ab-promo{min-height:34px;padding:6px 14px;font-size:.64rem;line-height:1.35}
  .ab-utility{display:none}
  .ab-brand-inner{min-height:72px}
  .ab-signature{padding:7px 10px;background:rgba(3,5,7,.48)}
  .ab-signature small,.ab-signature>span{display:none}
  .ab-signature strong{font-size:1.28rem;letter-spacing:.035em}
  .ab-nav-inner{min-height:56px;justify-content:space-between}
  .ab-mobile-brand{width:40px;height:40px;display:grid;place-items:center;background:#17191d;color:#fff!important;font-size:.68rem;font-weight:900;letter-spacing:.08em}
  .ab-menu-toggle{display:flex;align-items:center;flex-direction:column;justify-content:center;width:46px;height:46px;border:0;background:#fff;cursor:pointer}
  .ab-menu-toggle span{width:25px;height:2px;margin:3px 0;background:#17191d;transition:.2s}
  .ab-menu-toggle b{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .ab-menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(8px) rotate(45deg)}
  .ab-menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
  .ab-menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
  .ab-menu{position:absolute;display:none;top:100%;right:0;left:0;min-height:0;padding:10px 14px 16px;background:#fff;box-shadow:0 18px 30px rgba(0,0,0,.16)}
  .ab-menu.open{display:block}
  .ab-menu>a,.ab-explore-toggle{width:100%;min-height:47px;padding:0 6px;border-bottom:1px solid #eceef0;font-size:.86rem}
  .ab-menu>a:after{display:none}
  .ab-explore{position:fixed;top:0;bottom:0;overflow:auto;padding:62px 0 26px}
  .ab-explore-grid{grid-template-columns:1fr 1fr;gap:25px 20px}
  .ab-explore-grid>div{display:flex;flex-direction:column}
  .ab-explore h2{font-size:.68rem}
  .ab-explore a{font-size:.8rem}
  .ab-page-heading{padding:15px 0 16px}
  .ab-page-heading .ab-wrap{display:block}
  .ab-page-heading p{font-size:.58rem}
  .ab-page-heading h1{font-size:1.75rem}
  .ab-layout{padding-block:15px 46px}
  .ab-topic-nav{display:flex;justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;min-height:48px;margin:0 -14px 20px;padding:2px 14px 8px;border-right:0;border-left:0;scroll-snap-type:x mandatory;scrollbar-width:none}
  .ab-topic-nav::-webkit-scrollbar{display:none}
  .ab-topic-nav>a,.ab-directory-toggle{flex:0 0 auto;min-width:138px;min-height:48px;padding:7px 17px;font-size:.8rem;scroll-snap-align:start}
  .ab-directory-toggle{min-width:190px}
  .ab-directory{grid-template-columns:1fr;margin:-21px 0 22px}
  .ab-directory section,.ab-directory section:nth-child(2){border-right:0;border-bottom:1px solid #33363c}
  .ab-directory section:last-child{border-bottom:0}
  .ab-content-card .atelier-page .atelier-intro,.ab-content-card .savoir-faire-page .seo-intro{margin-bottom:22px!important;padding:5px 1px 20px!important;font-size:.95rem!important}
  .ab-content-card .atelier-page .atelier-intro h1,.ab-content-card .savoir-faire-page .seo-intro h1{font-size:1.85rem!important}
  .ab-content-card .atelier-page .atelier-card,.ab-content-card .atelier-page .atelier-list>li:nth-child(even) .atelier-card,.ab-content-card .savoir-faire-page .service-card,.ab-content-card .savoir-faire-page .service-list>li:nth-child(even) .service-card{min-height:0;display:block!important}
  .ab-content-card .atelier-page .atelier-media,.ab-content-card .savoir-faire-page .service-media{max-width:100%!important}
  .ab-content-card .atelier-page .atelier-media img,.ab-content-card .atelier-page .atelier-media iframe,.ab-content-card .atelier-page .atelier-media video,.ab-content-card .savoir-faire-page .service-media img,.ab-content-card .savoir-faire-page .service-media iframe,.ab-content-card .savoir-faire-page .service-media video{height:180px!important;min-height:180px!important;object-fit:cover!important}
  .ab-content-card .atelier-page .atelier-content,.ab-content-card .savoir-faire-page .service-content{padding:22px 20px 24px!important}
  .ab-content-card .atelier-page .atelier-title,.ab-content-card .savoir-faire-page .service-title{font-size:1.55rem!important}
  .ab-content-card .refection-head-modern{padding:23px 22px!important}
  .ab-content-card .refection-head-modern h1{font-size:1.8rem!important}
  .ab-content-card .refection-gallery-modern{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .ab-content-card .refection-card-modern img{height:140px!important}
  .ab-content-card .meca-hero,.ab-content-card .carrosserie-hero,.ab-content-card .frein-hero{padding:24px 23px 22px!important;border-radius:15px!important}
  .ab-content-card .meca-hero-title,.ab-content-card .carrosserie-hero-title,.ab-content-card .frein-hero-title{font-size:1.85rem!important}
  .ab-content-card .meca-hero-text,.ab-content-card .carrosserie-hero-text,.ab-content-card .frein-hero-text{font-size:1rem!important}
  .ab-contact-band>.ab-wrap>div:last-child{width:100%;display:grid;grid-template-columns:1fr 1fr}
  .ab-button{min-height:50px;padding:0 14px;text-align:center;white-space:normal}
  .ab-footer{padding-top:42px}
  .ab-footer-grid{grid-template-columns:1fr 1fr;gap:34px 26px}
  .ab-footer-bottom{align-items:flex-start;flex-direction:column;justify-content:center;padding-block:22px}
  .ab-back-top{right:14px;bottom:14px;width:44px;height:44px}
}

@media(max-width:520px){
  .ab-brand-inner{min-height:66px}
  .ab-signature strong{font-size:1.05rem}
  .ab-page-heading h1{font-size:1.5rem}
  .ab-page-heading p{letter-spacing:.13em}
  .ab-content-card .atelier-page .atelier-intro h1,.ab-content-card .savoir-faire-page .seo-intro h1{font-size:1.65rem!important}
  .ab-content-card .atelier-page .atelier-media img,.ab-content-card .atelier-page .atelier-media iframe,.ab-content-card .atelier-page .atelier-media video,.ab-content-card .savoir-faire-page .service-media img,.ab-content-card .savoir-faire-page .service-media iframe,.ab-content-card .savoir-faire-page .service-media video{height:155px!important;min-height:155px!important}
  .ab-content-card .atelier-page .atelier-content,.ab-content-card .savoir-faire-page .service-content{padding:19px 17px 21px!important}
  .ab-content-card .atelier-page .atelier-title,.ab-content-card .savoir-faire-page .service-title{font-size:1.4rem!important}
  .ab-content-card .atelier-page .atelier-links,.ab-content-card .savoir-faire-page .service-links{display:block!important}
  .ab-content-card .atelier-page .atelier-links a,.ab-content-card .savoir-faire-page .service-links a{display:flex!important;justify-content:center!important;width:100%!important;margin-top:7px!important;text-align:center!important}
  .ab-content-card .refection-head-modern{padding:20px 17px!important}
  .ab-content-card .refection-head-modern h1{font-size:1.55rem!important}
  .ab-content-card .refection-intro-modern{padding:17px!important}
  .ab-content-card .refection-gallery-modern{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .ab-content-card .refection-card-modern img{height:108px!important}
  .ab-content-card .meca-hero,.ab-content-card .carrosserie-hero,.ab-content-card .frein-hero{padding:21px 18px 19px!important;border-radius:12px!important}
  .ab-content-card .meca-hero-title,.ab-content-card .carrosserie-hero-title,.ab-content-card .frein-hero-title{font-size:1.6rem!important}
  .ab-content-card .meca-hero-text,.ab-content-card .carrosserie-hero-text,.ab-content-card .frein-hero-text{font-size:.97rem!important;line-height:1.58!important}
  .ab-contact-band h2{font-size:2rem}
  .ab-contact-band>.ab-wrap>div:last-child{grid-template-columns:1fr}
  .ab-footer-grid{grid-template-columns:1fr}
  .ab-footer-brand img{width:70px!important;height:70px!important}
  .ab-footer-bottom>div{gap:13px}
}
