*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:#132b46;background:#f5f7fa}a{color:inherit}.wrap{width:min(1450px,calc(100% - 52px));margin-inline:auto}.site-header{background:#fff;box-shadow:0 2px 12px #14283d12;position:relative;z-index:5}.header-inner{width:min(1500px,calc(100% - 42px));min-height:114px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{flex:0 0 330px}.brand img{display:block;width:100%;height:auto;max-height:100px;object-fit:contain}.nav{display:flex;align-items:center;gap:3px;flex-wrap:wrap;justify-content:center}.nav a{text-decoration:none;text-transform:uppercase;font-weight:800;font-size:13px;letter-spacing:.15px;padding:15px 12px;border-radius:6px;white-space:nowrap}.nav a:hover,.nav a.active{background:#d91e2a;color:#fff}.header-contact{flex:0 0 220px;text-align:right;font-size:12px;line-height:1.45;color:#25405d}.phone{display:block;color:#d91e2a;text-decoration:none;font-weight:900;font-size:24px;white-space:nowrap;margin-bottom:4px}.hero{position:relative;overflow:hidden;background:#19314b}.hero-photo{display:block;width:100%;height:clamp(430px,42vw,625px);object-fit:cover;object-position:center 54%}.hero-shade{position:absolute;bottom:0;left:0;right:0;color:#fff;background:linear-gradient(0deg,rgba(12,35,59,.96),rgba(12,35,59,.83) 64%,rgba(12,35,59,0));padding:65px 0 21px}.hero h1{font-size:clamp(25px,3.1vw,45px);line-height:1.16;margin:0 0 26px;text-align:center;text-shadow:0 2px 9px #001b32b3}.hero-benefits{display:grid;grid-template-columns:repeat(4,1fr)}.hero-benefits span{display:flex;align-items:center;justify-content:center;gap:13px;min-height:58px;font-size:17px;font-weight:700;line-height:1.35;border-right:1px solid #ffffff66}.hero-benefits span:last-child{border:0}.hero-benefits b{font-size:34px;font-weight:normal}.services{padding:18px 0 8px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.service-card{height:278px;position:relative;overflow:hidden;border-radius:13px;text-decoration:none;background:#183452;box-shadow:0 5px 15px #10243821;display:block;isolation:isolate}.service-card>img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.service-card:hover>img,.service-card:focus-visible>img{transform:scale(1.045)}.service-card:focus-visible{outline:3px solid #e02430;outline-offset:3px}.card-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:24px;background:linear-gradient(0deg,rgba(2,15,31,.88),rgba(2,15,31,.08) 95%);color:white}.card-icon{display:flex;align-items:center;justify-content:center;width:55px;height:55px;border:2px solid white;border-radius:50%;background:#0e385b;font-size:29px;margin-bottom:auto}.card-overlay h2{font-size:clamp(21px,2vw,30px);line-height:1.08;margin:10px 0 15px;text-shadow:0 2px 4px #0008}.card-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;background:#e3222d;color:#fff;font-size:16px;font-weight:800;padding:13px 16px;border-radius:8px;min-width:240px}.card-cta b{font-size:23px;line-height:1}.welcome{text-align:center;padding:24px 0 45px}.welcome h2{font-size:27px;margin:5px 0 8px}.welcome p{font-size:17px;line-height:1.6;max-width:880px;margin:auto}.welcome a{color:#c51625;font-weight:bold}.site-footer{background:#102e4b;color:white}.footer-inner{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;padding:22px 0;font-size:13px}.site-footer a{color:#fff}.section{padding:55px 0 80px}.section h1{font-size:clamp(30px,4vw,44px);margin:0 0 20px}.section h2{margin-top:0}.intro{font-size:18px;line-height:1.6}.panel{background:#fff;padding:30px;border-radius:14px;box-shadow:0 4px 18px #10243813;line-height:1.7}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}.grid2 img{width:100%;border-radius:14px}.btn{display:inline-block;padding:13px 21px;border-radius:8px;background:#d91e2a;color:#fff;text-decoration:none;font-weight:700}.notice{font-size:14px;color:#576777}.panel a:not(.btn){color:#b51726}@media(max-width:1170px){.header-inner{flex-wrap:wrap;justify-content:center;padding:12px 0}.brand{flex-basis:270px}.header-contact{flex-basis:205px}.nav{order:3;width:100%}.hero-photo{height:500px}}@media(max-width:700px){.wrap{width:min(100% - 28px,1450px)}.header-inner{width:calc(100% - 22px);gap:8px}.brand{flex-basis:220px}.header-contact{flex:1 1 170px}.phone{font-size:19px}.nav a{font-size:11px;padding:10px 9px}.hero-photo{height:420px;object-position:center}.hero-shade{padding:55px 0 12px}.hero h1{font-size:26px;margin-bottom:16px}.desktop-only{display:none}.hero-benefits{grid-template-columns:repeat(2,1fr);gap:9px 0}.hero-benefits span{font-size:12px;gap:8px;min-height:43px}.hero-benefits span:nth-child(2){border:0}.hero-benefits b{font-size:23px}.service-grid{grid-template-columns:1fr}.service-card{height:260px}.card-overlay h2{font-size:27px}.grid2{grid-template-columns:1fr}.section{padding:30px 0 55px}.footer-inner{flex-direction:column}.welcome{padding-bottom:30px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Version 4 : contenu historique, promotions originales sans marque tierce, cartes grises */
.intro-original{margin:24px auto 10px;padding:24px 30px;border-radius:15px;background:#f2f6fb;color:#17304a;font-size:clamp(16px,1.55vw,20px);line-height:1.5;text-align:center;box-shadow:0 4px 16px #122b4520}
.intro-original p{margin:0 0 12px}.news-banner{display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:center;align-items:center;padding:13px 18px;background:#fff;border-left:5px solid #dc1825;border-radius:9px}.news-banner strong{color:#c81926}
.promo-banner{display:block;width:100%;height:auto;border-radius:14px;box-shadow:0 8px 24px #172b4030;margin:20px 0}.promo-grid,.cg-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:24px 0}
.cg-document{display:flex;flex-direction:column;align-items:center;gap:12px;padding:20px;background:#f3f6fa;border:1px solid #d7e1ed;border-radius:15px;color:#12375a;text-decoration:none;font-weight:750;box-shadow:0 4px 14px #172b4018;transition:transform .15s,box-shadow .15s}.cg-document:hover{transform:translateY(-3px);box-shadow:0 10px 22px #172b4028}.cg-document img{width:100%;max-width:320px;max-height:350px;object-fit:contain;border-radius:6px}.cg-note{color:#596b7c;font-size:.95rem}
@media(max-width:680px){.intro-original{padding:18px 16px}.promo-grid,.cg-grid{grid-template-columns:1fr}}

/* V5 : texte d'accueil intégré dans le bandeau de la photographie */
.hero-shade{padding-top:95px;padding-bottom:18px;background:linear-gradient(0deg,rgba(12,35,59,.98) 0%,rgba(12,35,59,.92) 62%,rgba(12,35,59,0) 100%)}
.hero h1{margin-bottom:13px}
.hero-description{max-width:1080px;margin:0 auto 18px;text-align:center;font-size:clamp(13px,1.05vw,16px);line-height:1.4;color:#fff;text-shadow:0 1px 4px #06172c}
.hero-description p{margin:0 0 5px}
.hero-description strong{color:#fff;font-weight:800}
@media(max-width:700px){.hero-photo{height:520px}.hero-shade{padding-top:80px;padding-bottom:12px}.hero h1{font-size:clamp(22px,5.3vw,26px);margin-bottom:10px}.hero-description{font-size:12px;line-height:1.28;margin-bottom:11px}.hero-description p{margin-bottom:5px}.hero-benefits span{font-size:11px}}

/* V6 : pages prestations, promotions et pied de page */
.prestation-content{display:flex;flex-direction:column;align-items:center;gap:24px;max-width:960px;margin:22px auto 0}
.prestation-photo{display:block;width:min(100%,490px);max-height:310px;object-fit:cover;border-radius:14px;box-shadow:0 5px 18px #10243820}
.prestation-details{width:100%;text-align:left}
.prestation-details .btn{margin-top:12px}
.promo-banner-small{width:min(50%,620px);max-width:100%;margin:22px auto 28px}
.footer-phone{white-space:nowrap}
.legal-page{max-width:960px}
.legal-page h2{margin-top:24px;margin-bottom:8px;color:#153553}
.legal-page h2:first-child{margin-top:0}
@media(max-width:700px){.promo-banner-small{width:100%}.prestation-photo{width:100%}.legal-page .panel{padding:20px}}

/* V7 — retouches de présentation demandées */
.contact-page h1,.contact-page .panel{text-align:center}
.legal-page h1,.legal-page .panel{text-align:center}
.prestations-page h1,.prestations-page .intro{text-align:center}
.prestations-page .prestation-content{max-width:960px}
.prestations-page .prestation-photo{width:100%;max-height:none;object-fit:contain}
.promotions-page h1,.promotions-page .intro{text-align:center}
.promotions-page .promo-banner-small{width:min(62.5%,775px);max-width:100%}
.cartesgrises-page h1,.cartesgrises-page .intro{text-align:center}
@media(max-width:700px){.promotions-page .promo-banner-small{width:100%}}

/* V8 — bouton promotions et centrage des mentions légales */
.promotions-page .promo-contact-action{text-align:center;margin:28px 0 0}
.legal-page{margin-inline:auto;text-align:center}
.legal-page .panel,.legal-page .panel p,.legal-page .panel h2{text-align:center}
.site-footer .footer-inner>span:last-child{text-align:center}
