/* Okazbureau — habillage bleu électrique.
   Les contacts, données du catalogue et scripts restent ceux du site d'origine. */
:root { --navy:#14243a; --ink:#14243a; --muted:#56647a; --surface:#f5f7fa; --mist:#e8edf5; --line:#dce3ed; --accent:var(--electric-blue); --accent-hover:var(--electric-blue-hover); --blue:var(--electric-blue); --blue-hover:var(--electric-blue-hover); --radius:8px; }
h1,h2,h3 { letter-spacing:-.04em; }
.wrap { width:min(var(--width),calc(100% - 80px)); }
.announcement { background:var(--navy); font-size:11px; letter-spacing:.025em; }
.announcement .wrap { min-height:36px; }
.announcement-end { opacity:1; }
.site-header { box-shadow:0 3px 16px #14243a09; }
.header-main { min-height:108px; gap:32px; }
.brand { gap:13px; }
.brand-logo { width:82px; height:82px; }
.brand-wordmark { display:flex; flex-direction:column; gap:7px; }
.brand-wordmark strong { font-size:23px; letter-spacing:-1px; color:var(--electric-blue); }
.brand-wordmark small { font-size:9px; text-transform:uppercase; letter-spacing:.12em; color:var(--muted); }
.site-search { width:min(500px,43%); border-radius:50px; border-color:transparent; background:#f0f4fb; }
.site-search input { font-size:13px; padding:15px 22px; }
.site-search button { color:var(--accent); padding-inline:19px; }
.header-contact { border-left:1px solid var(--line); padding-left:26px; }
.header-contact > svg { color:var(--accent); width:27px; height:27px; }
.header-contact small { font-size:11px; }
.header-contact strong { font-size:17px; }
.main-nav { background:#fff; }
.nav-inner { justify-content:space-between; gap:20px; min-height:56px; }
.nav-inner > a,.catalogue-menu summary { font-size:12px; }
.nav-showroom { color:var(--accent); }
.catalogue-panel { border-radius:0 0 12px 12px; }
.hero { width:min(1400px,calc(100% - 48px)); margin:26px auto 0; min-height:530px; grid-template-columns:47% 53%; background:#edf3ff; color:var(--ink); border-radius:14px; overflow:hidden; }
.hero-copy { padding:48px clamp(28px,4vw,64px); justify-content:initial; }
.hero-copy-inner { width:auto; max-width:570px; }
.hero .eyebrow { color:var(--muted); font-size:10px; line-height:1.7; margin-bottom:25px; }
.hero .status-dot { background:var(--accent); box-shadow:none; }
.hero h1 { font-size:clamp(38px,3.8vw,58px); line-height:1.09; letter-spacing:-.055em; }
.hero h1 span { color:var(--accent); }
.hero-description { color:var(--muted); font-size:14px; line-height:1.8; max-width:400px; margin-top:23px; }
.hero-actions { gap:20px; flex-wrap:wrap; }
.btn-primary { background:var(--accent); }
.btn-primary:hover { background:var(--accent-hover); }
.hero-secondary { font-size:12px; border-bottom:1px solid #14243a60; padding-bottom:5px; }
.hero-secondary:hover { color:var(--accent); }
.hero-signature { color:var(--muted); font-size:10px; line-height:1.7; margin-top:27px; }
.signature-line { background:var(--accent); }
.hero-visual { min-height:530px; }
.discount-stamp { background:var(--accent); color:white; border-radius:8px; transform:none; top:25px; right:25px; padding:16px 20px; box-shadow:none; }
.hero-product { border-radius:8px; left:25px; right:25px; bottom:25px; padding:19px 22px; }
.hero-product small { font-size:9px; }
.hero-product strong { font-size:23px; }
.circle-arrow { background:var(--accent); }
.reassurance { background:white; border-bottom:1px solid var(--line); }
.reassurance-grid { padding-block:28px; }
.reassurance-grid svg { color:var(--accent); }
.reassurance-grid strong { font-size:13px; }
.reassurance-grid small { font-size:11px; }
.section { padding-block:70px; }
.section-head h2 { max-width:760px; font-size:clamp(28px,3vw,39px); }
.eyebrow { color:var(--accent); font-size:10px; }
.text-link { font-size:12px; }
.category-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.category-card { background:var(--surface); border-radius:10px; overflow:hidden; border:1px solid #dce3ed; }
.categories-section .category-image { background:var(--surface); border-radius:0; aspect-ratio:1.9; }
.category-copy { padding:19px 50px 21px 22px; background:#fff; }
.category-copy h3 { font-size:18px; }
.category-copy > span:first-of-type { font-size:12px; }
.categories-section .category-copy > span:last-child { top:22px; right:18px; color:var(--accent); }
.selection-section { background:var(--surface); }
.selection-tabs { gap:9px; }
.selection-tabs button { border-radius:30px; background:white; color:var(--ink); border-color:#dce3ed; font-size:12px; padding:10px 20px; }
.selection-tabs button[aria-pressed="true"],.selection-tabs button:hover { background:var(--navy); color:white; border-color:var(--navy); box-shadow:none; }
.product-card { border-radius:10px; border-color:#dce3ed; }
.product-card:hover { border-color:var(--accent); box-shadow:0 10px 25px #14243a10; }
.product-image { background:#f8f9fb; aspect-ratio:1.35; }
.product-image-label { color:var(--accent); background:#eaf1ff; border:0; border-radius:4px; font-size:8px; padding:6px 9px; }
.product-info { padding:20px; }
.product-type,.product-type > span { font-size:10px; }
.product-info h3 { font-size:17px; }
.product-bottom { margin-top:18px; }
.product-arrow { width:auto; height:auto; min-height:38px; padding:7px 13px; display:flex; gap:22px; font-size:18px; border-radius:5px; color:var(--accent); border-color:#c4d6fa; }
.product-arrow::before { content:'Voir le modèle'; font-size:11px; font-weight:700; }
.product-arrow:hover { background:var(--accent); border-color:var(--accent); }
.catalogue-note { font-size:12px; }
.category-hero { background:#edf3ff; }
.category-hero-grid { padding-block:25px 45px; }
.category-hero h1 { font-size:clamp(32px,4vw,52px); }
.category-hero h1 + p { font-size:14px; }
.catalogue-hero { background:#edf3ff; color:var(--ink); padding-bottom:45px; }
.catalogue-hero .eyebrow { color:var(--accent); }
.catalogue-hero .breadcrumb,.catalogue-hero p:last-child { color:var(--muted); }
.catalogue-filter label,.catalogue-results-head { font-size:12px; }
.catalogue-filter input,.catalogue-filter select { font-size:13px; border-radius:6px; }
.services-showcase { background:white; }
.services-showcase-card { box-shadow:none; border-radius:10px; }
.services-showcase-icon { background:var(--accent); }
.services-showcase-content { padding-bottom:30px; }
.buyback-section { background:var(--surface); }
.buyback-media { border-radius:12px; }
.buyback-copy h2 span { color:var(--accent); }
.buyback-media-tag { background:var(--navy); }
.buyback-lead { font-size:14px; }
.buyback-benefit p { font-size:12px; }
.showroom { background:#fff; }
.showroom-display { border-radius:12px; background:#edf3ff; }
.showroom-copy > p:not(.eyebrow) { font-size:14px; max-width:490px; }
.contact-lines > div { font-size:14px; }
.contact-lines > div > span > span { font-size:12px; }
.reviews-section { background:var(--surface); }
.category-cta { background:#edf3ff; }
.product-dialog { border-radius:12px; }
.dialog-copy > p:not(.eyebrow) { font-size:14px; }
.dialog-copy > small,.dialog-copy .model-ref { font-size:11px; }
.dialog-copy .btn { font-size:12px; }
.footer { border-top:5px solid var(--accent); }
.footer h2 { font-size:13px; }
.footer-top p,.footer-top > div > a:not(.brand) { font-size:12px; }
.footer-top .footer-brand > a:last-child { font-size:17px; }
@media (max-width:1100px) {
 .brand-wordmark { display:none; }
 .header-main { gap:22px; }
 .hero-copy { padding:35px; }
 .hero h1 { font-size:43px; }
 .hero-actions { flex-direction:column; align-items:flex-start; }
 .nav-inner { gap:16px; }
 .nav-inner > a,.catalogue-menu summary { font-size:11px; }
}
@media (max-width:900px) {
 .wrap { width:calc(100% - 44px); }
 .header-main { min-height:92px; }
 .site-search { width:auto; flex:1; }
 .nav-inner { align-items:stretch; }
 .hero { grid-template-columns:1fr 1fr; width:calc(100% - 32px); margin-top:16px; }
 .hero-copy { padding:30px 24px; }
 .hero h1 { font-size:36px; }
 .hero .eyebrow { font-size:9px; }
 .hero-description { font-size:13px; }
 .hero-visual { min-height:510px; }
 .category-copy h3 { font-size:16px; }
}
@media (max-width:700px) {
 html { scroll-padding-top:145px; }
 .wrap { width:calc(100% - 36px); }
 .announcement .wrap { min-height:31px; }
 .announcement { font-size:8px; }
 .header-main { gap:14px; min-height:80px; }
 .brand-logo { width:62px; height:62px; }
 .site-search input { font-size:12px; padding:12px 14px; }
 .site-search button { padding-inline:12px; }
 .hero { width:calc(100% - 24px); grid-template-columns:1fr; border-radius:10px; }
 .hero-copy { padding:32px 24px; }
 .hero h1 { font-size:clamp(37px,9vw,51px); }
 .hero-description { font-size:14px; max-width:100%; }
 .hero-actions { flex-direction:row; align-items:center; gap:18px; }
 .hero-actions .btn { font-size:12px; padding:13px 17px; }
 .hero-secondary { font-size:11px; }
 .hero-visual { min-height:350px; }
 .discount-stamp { top:18px; right:18px; padding:12px 17px; }
 .hero-product { left:18px; right:18px; bottom:18px; }
 .hero-product small { font-size:8px; }
 .hero-product strong { font-size:21px; }
 .section { padding-block:45px; }
 .section-head { gap:20px; }
 .section-head .text-link { font-size:11px; }
 .reassurance-grid { padding-block:24px; }
 .reassurance-grid strong { font-size:11px; }
 .reassurance-grid small { font-size:10px; }
 .category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
 .categories-section .category-image { aspect-ratio:1.4; }
 .category-copy { padding:14px 30px 17px 12px; }
 .category-copy h3 { font-size:14px; }
 .category-copy > span:first-of-type { font-size:10px; }
 .categories-section .category-copy > span:last-child { top:12px; right:7px; width:23px; }
 .product-info { padding:12px; }
 .product-info h3 { font-size:14px; }
 .product-type,.product-type > span { font-size:8px; }
 .product-image-label { font-size:7px; left:8px; top:8px; }
 .product-arrow { gap:10px; padding:5px 8px; }
 .product-arrow::before { font-size:10px; }
 .catalogue-controls { grid-template-columns:1fr; }
 .catalogue-results-head { font-size:11px; }
 .dialog-copy { padding:30px 22px; }
 .dialog-copy h2 { font-size:28px; }
 .footer-top { gap:30px; }
}

/* Recherche sur une ligne dédiée, sans compression du menu mobile. */
@media(max-width:900px){
 .site-search { flex:0 0 100%; width:100%; }
 .menu-toggle { margin-left:auto; }
 .header-main { min-height:140px; }
 .nav-inner > a,.catalogue-menu summary { font-size:13px; }
 .brand-wordmark { display:flex; }
 .brand-wordmark strong { font-size:19px; }
 .brand-wordmark small { font-size:8px; }
}

/* Signature centrée dans chaque pied de page. */
.footer-credit { text-align:center; padding:0 0 24px; font-size:13px; color:#fff; }
.footer-credit a { display:inline-block; padding:6px 10px; text-decoration:underline; text-underline-offset:4px; }
.footer-credit a:hover { color:#b9d0ff; }
