/* ========================================================================== MHGAZ SERVICE — CSS additionnel Mis a jour le 2026-08-24. ========================================================================== */ /* === Tailles des logos ==================================================== Le !important est OBLIGATOIRE ici, ce n est pas de la negligence. Quelque chose sur ce site (optimiseur de l hebergeur ou extension) impose `height:auto !important` a toutes les images : sans !important, la regle perd et le logo sort a sa taille naturelle, 1072x768 px. Verifie le 2026-08-24 : regle injectee sans !important -> 768 px ; avec !important -> 116 px. C est pour cette raison que l ancien bloc en etait truffe. Ce qui a change par rapport a l ancien bloc : on pilote la HAUTEUR et la largeur suit. L ancien imposait width ET height aux logos fabricants, ce qui ecrasait les carres (Chappee 225x225 tombait a 50x50 avec du vide). Rendu mesure a 1362 px de large : header 162x116, pied 171x123. ========================================================================== */ .brand-logo{height:clamp(100px,8.5vw,124px) !important;width:auto !important;max-width:none !important;max-height:none !important;object-fit:contain} .footer-logo{height:clamp(96px,9vw,128px) !important;width:auto !important;max-width:none !important;max-height:none !important;object-fit:contain} .marquee__logo{height:clamp(52px,6vw,72px) !important;width:auto !important;max-width:none !important;max-height:none !important;object-fit:contain;flex-shrink:0 !important} @media (max-width:768px){.brand-logo{height:clamp(72px,17vw,88px) !important}} /* === FIX images : performance === */ img { max-width: 100%; height: auto; } .service-card__media img, .desembouage__visual img, .why__visual img { width: 100%; height: 100%; object-fit: cover; } /* === FIX cartes contrats === */ .contrat-card { background: #fff; padding: 30px 28px; border-radius: 16px; box-shadow: 0 14px 34px rgba(8, 48, 91, 0.06); border: 1px solid rgba(8, 48, 91, 0.04); display: flex; flex-direction: column; gap: 18px; } .contrat-card__head { display: flex; flex-direction: column; gap: 6px; padding-bottom: 18px; border-bottom: 1px solid #eef2f8; } .contrat-card__name { font-size: 22px; font-weight: 800; color: #0b315b; text-transform: uppercase; letter-spacing: 0.05em; } .contrat-card__sub { font-size: 14px; color: #7b8694; } .contrat-card--featured { border: 2px solid #f26522; position: relative; } .contrat-card__ribbon { position: absolute; top: -12px; left: 50%; transform: translateX(-50%); background: #f26522; color: #fff; padding: 6px 16px; border-radius: 999px; font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.1em; } /* === FIX MOBILE CONTRATS TABLEAUX === */ @media (max-width: 768px) { .contrats-grid { grid-template-columns: 1fr !important; gap: 24px !important; } .contrat-card { padding: 22px 18px !important; } .contrat-card__pricing { border-collapse: separate !important; border-spacing: 0 !important; border: none !important; width: 100%; background: #f5f7fb; border-radius: 12px; overflow: hidden; margin-top: 12px; } .contrat-card__pricing tr { border-bottom: 1px solid #e6ebf3; } .contrat-card__pricing tr:last-child { border-bottom: none; } .contrat-card__pricing td { border: none !important; padding: 12px 14px !important; font-size: 13px !important; line-height: 1.3 !important; vertical-align: middle !important; } .contrat-card__pricing td:first-child { color: #445368 !important; width: 65% !important; } .contrat-card__pricing td:last-child { text-align: right !important; width: 35% !important; white-space: nowrap !important; } .contrat-card__pricing td strong { color: #f26522 !important; font-size: 15px !important; font-weight: 800 !important; } /* CTA buttons full width on mobile */ .contrat-card .btn { width: 100% !important; justify-content: center !important; } } /* Desktop : retire aussi les barres moches du tableau */ .contrat-card__pricing { border-collapse: separate; border-spacing: 0; border: none; width: 100%; background: #f5f7fb; border-radius: 12px; overflow: hidden; margin-top: 12px; } .contrat-card__pricing tr { border-bottom: 1px solid #e6ebf3; } .contrat-card__pricing tr:last-child { border-bottom: none; } .contrat-card__pricing td { border: none; padding: 12px 14px; vertical-align: middle; } .contrat-card__pricing td:first-child { color: #445368; } .contrat-card__pricing td:last-child { text-align: right; white-space: nowrap; } .contrat-card__pricing td strong { color: #f26522; font-weight: 800; } /* === FIX FORMULAIRE WPFORMS sur fond bleu foncé === */ .section-contact .wpforms-container, .section-contact .wpforms-form { color: #fff !important; } .section-contact .wpforms-field-label, .section-contact .wpforms-field label, .section-contact .wpforms-field-sublabel { color: #fff !important; font-weight: 600 !important; font-size: 14px !important; letter-spacing: 0.02em !important; } .section-contact .wpforms-required-label { color: #f26522 !important; } .section-contact .wpforms-field input[type="text"], .section-contact .wpforms-field input[type="email"], .section-contact .wpforms-field input[type="tel"], .section-contact .wpforms-field input[type="url"], .section-contact .wpforms-field input[type="number"], .section-contact .wpforms-field textarea, .section-contact .wpforms-field select { background: #fff !important; color: #0b315b !important; border: 1px solid rgba(255,255,255,0.2) !important; border-radius: 10px !important; padding: 12px 14px !important; font-size: 15px !important; width: 100% !important; box-shadow: 0 2px 8px rgba(0,0,0,0.08); } .section-contact .wpforms-field input:focus, .section-contact .wpforms-field textarea:focus { outline: none !important; border-color: #f26522 !important; box-shadow: 0 0 0 3px rgba(242,101,34,0.25) !important; } .section-contact .wpforms-submit-container { text-align: center; margin-top: 12px; } .section-contact .wpforms-submit { background: #f26522 !important; color: #fff !important; border: none !important; border-radius: 999px !important; padding: 14px 32px !important; font-size: 16px !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: 0.05em !important; cursor: pointer !important; transition: all 0.2s ease !important; box-shadow: 0 10px 28px rgba(242,101,34,0.35) !important; width: auto !important; min-width: 200px !important; } .section-contact .wpforms-submit:hover { background: #e25818 !important; transform: translateY(-1px) !important; box-shadow: 0 14px 34px rgba(242,101,34,0.45) !important; } .section-contact .wpforms-field-description { color: rgba(255,255,255,0.7) !important; font-size: 13px !important; } .section-contact .wpforms-error { color: #ffb09c !important; } /* Mobile : bouton pleine largeur */ @media (max-width: 768px) { .section-contact .wpforms-submit { width: 100% !important; } } /* === FIX MENU BURGER MOBILE (v2 - scroll lock proper) === */ @media (max-width: 1024px) { .desktop-nav { display: none !important; } .mobile-menu-btn { display: flex !important; flex-direction: column; justify-content: center; gap: 5px; width: 44px; height: 44px; background: transparent; border: none; cursor: pointer; padding: 0; z-index: 10001; position: relative; } .mobile-menu-btn span { display: block; width: 24px; height: 2px; background: #0b315b; transition: all 0.3s ease; } .mobile-menu-btn.is-open span:nth-child(1) { transform: translateY(7px) rotate(45deg); } .mobile-menu-btn.is-open span:nth-child(2) { opacity: 0; } .mobile-menu-btn.is-open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); } /* Overlay background */ .mobile-menu::before { content: ''; position: fixed; inset: 0; background: rgba(0,0,0,0.5); opacity: 0; pointer-events: none; transition: opacity 0.3s ease; z-index: -1; } .mobile-menu.is-open::before { opacity: 1; pointer-events: auto; } .mobile-menu { position: fixed !important; top: 0 !important; right: 0 !important; left: auto !important; width: 85% !important; max-width: 360px !important; height: 100vh !important; height: 100dvh !important; background: #0b315b !important; padding: 90px 30px 30px !important; transform: translateX(100%) !important; transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important; z-index: 10000 !important; overflow-y: auto !important; -webkit-overflow-scrolling: touch !important; visibility: hidden; box-shadow: -10px 0 40px rgba(0,0,0,0.2); display: block !important; } .mobile-menu.is-open { transform: translateX(0) !important; visibility: visible; } .mobile-menu .nav-link { display: block !important; color: #fff !important; font-size: 18px !important; font-weight: 600 !important; padding: 14px 0 !important; border-bottom: 1px solid rgba(255,255,255,0.1) !important; text-decoration: none !important; } .mobile-menu .nav-link:hover { color: #f26522 !important; } .mobile-menu .btn { margin-top: 24px !important; display: inline-flex !important; width: 100% !important; justify-content: center !important; } /* Body scroll lock when menu open */ body.menu-open { overflow: hidden !important; position: fixed !important; width: 100% !important; height: 100% !important; } } @media (min-width: 1025px) { .mobile-menu-btn { display: none !important; } .mobile-menu { display: none !important; } }