/* Extensions Symfony du template officiel MFC Couverture. */
.site-flashes{position:fixed;z-index:12000;top:92px;right:22px;width:min(430px,calc(100% - 32px));display:grid;gap:10px}.site-flash{display:flex;align-items:center;gap:12px;padding:15px 17px;border:1px solid #333;border-left:5px solid var(--yellow);background:#0a0a0a;color:#fff;box-shadow:0 14px 35px #0007}.site-flash button{margin-left:auto;border:0;background:none;color:#fff;font-size:24px}.site-flash--error{border-left-color:#ef5555}

.footer-contact a,.footer-contact span{color:#ddd}.footer-contact a:hover{color:var(--yellow)}.footer-consent-manage{padding:0;border:0;background:none;color:#ccc;font:inherit;cursor:pointer}.footer-consent-manage:hover{color:var(--yellow)}.footer-zone .footer-map-button{display:inline-flex;align-items:center;gap:7px}.footer-zone .footer-map-button .icon{width:13px;height:13px}

.google-consent[hidden]{display:none!important}.google-consent{position:fixed;z-index:13000;left:50%;bottom:22px;width:min(1040px,calc(100% - 32px));display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:20px;padding:22px;border:1px solid #3a3a3a;border-left:5px solid var(--yellow);background:#080808;color:#fff;box-shadow:0 22px 60px #000a;opacity:0;transform:translate(-50%,24px);transition:.2s ease}.google-consent.is-visible{opacity:1;transform:translate(-50%,0)}.google-consent__icon{width:56px;height:56px;display:grid;place-items:center;border:2px solid var(--yellow);border-radius:50%;color:var(--yellow)}.google-consent__icon .icon{width:31px;height:31px}.google-consent__content strong{display:block;margin-bottom:6px;font:900 21px/1 var(--condensed);text-transform:uppercase}.google-consent__content p{margin:0;color:#d7d7d7;font-size:14px;line-height:1.5}.google-consent__content a{display:inline-block;margin-top:5px;color:var(--yellow);font-weight:800}.google-consent__actions{display:flex;gap:10px}.google-consent__actions .btn,.google-consent__actions .outline-button{min-width:145px;min-height:48px;padding-inline:16px}

.google-consent.has-settings-open{max-height:calc(100vh - 32px);overflow:auto}.google-consent__settings[hidden]{display:none!important}.google-consent__settings{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding-top:17px;border-top:1px solid #343434}.google-consent__setting{min-height:82px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px;border:1px solid #3b3b3b;background:#111;color:#fff}.google-consent__setting strong{display:block;margin-bottom:5px;font:900 15px/1.1 var(--condensed);text-transform:uppercase}.google-consent__setting span{color:#bbb;font-size:12px;line-height:1.4}.google-consent__setting--required b{color:var(--yellow);font-size:12px;text-transform:uppercase}.google-consent__setting input{position:absolute;width:1px;height:1px;opacity:0}.google-consent__switch{position:relative;width:46px;height:25px;border:1px solid #666;border-radius:999px;background:#2b2b2b;cursor:pointer;transition:.18s ease}.google-consent__switch:before{content:"";position:absolute;top:3px;left:3px;width:17px;height:17px;border-radius:50%;background:#fff;transition:.18s ease}.google-consent__setting input:checked+.google-consent__switch{border-color:var(--yellow);background:var(--yellow)}.google-consent__setting input:checked+.google-consent__switch:before{left:24px;background:#050505}.google-consent__setting input:focus-visible+.google-consent__switch{outline:3px solid #ffc40066;outline-offset:2px}.google-consent__save{grid-column:1/-1;justify-self:end;min-width:220px}

.local-offer-popup{position:fixed;z-index:12500;inset:0;display:grid;place-items:center;padding:24px;opacity:0;visibility:hidden;pointer-events:none;transition:.25s ease}.local-offer-popup.is-open{opacity:1;visibility:visible;pointer-events:auto}.local-offer-popup__overlay{position:absolute;inset:0;border:0;background:#000c}.local-offer-popup__panel{position:relative;width:min(970px,100%);max-height:calc(100vh - 48px);display:grid;grid-template-columns:1fr 1fr;overflow:auto;border:1px solid #3c3c3c;border-top:5px solid var(--yellow);background:#090909;color:#fff;box-shadow:0 30px 90px #000}.local-offer-popup__close{position:absolute;z-index:3;top:12px;right:12px;width:42px;height:42px;border:1px solid #555;border-radius:50%;background:#050505;color:#fff;font-size:28px;line-height:1}.local-offer-popup__content{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:42px}.local-offer-popup__logo{width:220px;height:auto;margin-bottom:20px}.local-offer-popup .offer-pill{display:inline-block;margin-bottom:12px;padding:7px 12px;background:var(--yellow);color:#050505;font:900 12px/1 var(--condensed);text-transform:uppercase}.local-offer-popup h2{margin:5px 0 12px;color:#fff;font:900 clamp(30px,4vw,52px)/.98 var(--display);text-transform:uppercase}.local-offer-popup p{margin:5px 0 15px;color:#e8e8e8}.local-offer-popup .offer-place{font-size:14px}.local-offer-popup .offer-place strong,.local-offer-popup .offer-discount strong{color:var(--yellow)}.local-offer-popup .offer-discount strong{font-size:32px}.local-offer-popup .offer-note{margin-top:14px;color:#aaa}.local-offer-popup__image{min-height:480px}.local-offer-popup__image>img{width:100%;height:100%;object-fit:cover}.local-offer-popup__media--video{display:grid;place-items:center;padding:20px;background:#000}.local-offer-video{width:100%;aspect-ratio:16/9;border:1px solid #4b4b4b;background:#000}.local-offer-video iframe{display:block;width:100%;height:100%;border:0}.local-offer-open{overflow:hidden}

.field>div{width:100%}.field ul,.quote-admin-form>ul,.contact-form form>ul{margin:6px 0 0;padding:0;list-style:none;color:#c21818;font-size:13px;font-weight:700}.field input,.field select,.field textarea{width:100%}.quote-admin-form .quote-wide,.quote-admin-form .field.full{grid-column:1/-1}.quote-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}.quote-form-notice{display:flex;align-items:flex-start;gap:12px;margin:18px 0;padding:15px;border-left:4px solid var(--yellow);background:#fff9dd;color:#151515}.quote-form-notice--error{border-left-color:#d94343;background:#fff0f0}.quote-form-notice strong,.quote-form-notice span{display:block}.quote-form-notice span{margin-top:3px;font-size:14px}.quote-submit[disabled]{opacity:.72;cursor:wait}.quote-file>div{width:100%}.quote-file input{padding:10px}.quote-file ul{grid-column:1/-1}.quote-consent>div{display:flex;align-items:flex-start;gap:9px}.quote-consent input{width:19px;height:19px;accent-color:var(--yellow)}

.project-photo--custom{background-image:var(--project-image)!important;background-position:center!important;background-size:cover!important}.project-card>a{display:flex;height:100%;color:inherit;flex-direction:column;text-decoration:none}.project-card>a>.project-info{flex:1}.project-card-link{display:block}.project-card-link .project-card{height:100%}.project-description{margin:8px 0 0!important;color:#666!important;font-size:13px!important}.projects-load-more[hidden],.review-card.is-hidden{display:none!important}.cms-empty{grid-column:1/-1;padding:38px;border:1px solid var(--line);background:#fff;text-align:center}.before-after-section .before-after{min-width:0}

.review-card footer{margin-top:auto;padding-top:13px;border-top:1px solid #e2e2e2;color:#666;font-size:12px;font-weight:800}.review-card{display:flex;flex-direction:column}.review-card .review-place{display:flex;align-items:center;gap:6px}.reviews-load-more{text-align:center;margin-top:25px}.reviews-load-more[hidden]{display:none}.reviews-grid .review-card.animate__animated{animation-duration:.65s}

.service-detail-photo img{width:100%;height:100%;object-fit:cover}.service-feature .round-icon{margin-inline:auto}.service-feature{text-align:center}.service-detail-steps article>span{color:var(--yellow)}

.realisation-detail{display:grid;grid-template-columns:1.05fr .95fr;gap:42px;align-items:start}.realisation-detail__photo{min-height:520px}.realisation-detail__photo img{width:100%;height:100%;min-height:520px;object-fit:cover}.realisation-detail__copy{padding:30px}.realisation-detail__meta{display:flex;gap:18px;flex-wrap:wrap;margin:18px 0;color:#666}.realisation-detail__facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:25px 0}.realisation-detail__facts span{padding:15px;border:1px solid var(--line);text-align:center}.realisation-detail__facts b{display:block;color:#050505}

.local-city-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(330px,.9fr);gap:42px;align-items:center}.local-city-copy ul{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0;list-style:none}.local-city-copy li{position:relative;padding-left:20px}.local-city-copy li:before{content:'✓';position:absolute;left:0;color:#a68200;font-weight:900}.mfc-city-hall{margin:0;border:1px solid var(--line);background:#050505;box-shadow:12px 12px 0 var(--yellow)}.mfc-city-hall img{width:100%;height:420px;object-fit:cover}.mfc-city-hall figcaption{padding:13px 16px;color:var(--yellow);font-weight:900;text-transform:uppercase}.city-directory{margin-top:36px}.zone-city-list{display:flex;flex-wrap:wrap;gap:9px}.zone-city-list a{padding:8px 10px;border:1px solid var(--line);background:#fff}.zone-city-list a:hover{border-color:var(--yellow);background:var(--yellow)}

.legal-content a,.legal-block a,.quote-lead a,.privacy a{color:#8f6e00;text-decoration:underline}.legal-content .footer-consent-manage{color:#6c5200;text-decoration:underline}.legal-nav{position:sticky;top:20px}

.review-submit-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:28px}.review-submit-form,.review-submit-note{padding:30px}.review-submit-form form{display:grid;gap:18px}.review-submit-form textarea{width:100%;min-height:150px}.review-submit-form select{width:100%;min-height:52px}.review-submit-note .round-icon{margin-bottom:18px}

.mfc-auth{min-height:100vh;background:#050505}.mfc-auth .site-header,.mfc-auth .site-footer{display:none}.mfc-login{min-height:100vh;display:grid;place-items:center;padding:32px;background:linear-gradient(90deg,#050505f5,#050505c9),url('hero-chantier.webp') center/cover}.mfc-login__shell{width:min(1020px,100%);display:grid;grid-template-columns:1.1fr .9fr;overflow:hidden;border:1px solid #393939;background:#090909;color:#fff;box-shadow:0 30px 80px #000}.mfc-login__brand,.mfc-login__card{padding:48px}.mfc-login__brand{border-right:1px solid #333}.mfc-login__brand>img{width:220px;margin-bottom:35px}.mfc-login__brand>span{color:var(--yellow);font-weight:900}.mfc-login__brand h1{font:900 45px/1 var(--display);text-transform:uppercase}.mfc-login__brand h1 em{color:var(--yellow);font-style:normal}.mfc-login__brand ul{display:grid;gap:12px;padding:0;list-style:none}.mfc-login__brand li:before{content:'✓';margin-right:9px;color:var(--yellow)}.mfc-login__card h2{font:900 31px/1 var(--display);text-transform:uppercase}.mfc-login__form{display:grid;gap:12px}.mfc-login__field{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;border:1px solid #555;background:#111}.mfc-login__field>i{display:none}.mfc-login__field:before{content:'•';color:var(--yellow);text-align:center}.mfc-login__field input{width:100%;height:54px;border:0;background:transparent;color:#fff}.admin-password-toggle{border:0;background:none;color:#fff}.mfc-login__remember{display:flex;gap:8px}.mfc-login__error{padding:12px;border-left:4px solid #e54e4e;background:#451919}.mfc-login__back{position:absolute;top:24px;left:24px;color:#fff}

@media(max-width:980px){.google-consent{grid-template-columns:48px 1fr}.google-consent__actions{grid-column:1/-1;flex-wrap:wrap}.google-consent__settings{grid-template-columns:1fr}.local-offer-popup__panel{grid-template-columns:1fr}.local-offer-popup__image{min-height:260px}.local-city-layout,.realisation-detail,.review-submit-layout,.mfc-login__shell{grid-template-columns:1fr}.mfc-login__brand{display:none}.mfc-login__card{padding:34px}.legal-nav{position:static}.realisation-detail__photo,.realisation-detail__photo img{min-height:340px}}
@media(max-width:680px){.site-flashes{top:78px;right:16px}.google-consent{bottom:10px;grid-template-columns:1fr;padding:17px}.google-consent__icon{display:none}.google-consent__actions{display:grid;grid-template-columns:1fr}.google-consent__actions .btn,.google-consent__actions .outline-button,.google-consent__save{width:100%;min-width:0}.local-offer-popup{padding:10px}.local-offer-popup__content{padding:32px 22px}.local-offer-popup__image{min-height:210px}.local-city-copy ul,.realisation-detail__facts{grid-template-columns:1fr}.mfc-city-hall img{height:290px}}
