/*
Theme Name: MSF Menuiserie Premium
Theme URI: https://www.msfmenuiserie.fr/
Author: MSF / Teamalf
Description: Refonte moderne sur mesure pour MSF Menuiserie.
Version: 1.2.16
Text Domain: msf-premium
*/
:root{--navy:#063b66;--navy2:#022c4e;--green:#42a62a;--blue:#078cc2;--ink:#17344d;--muted:#657586;--bg:#f7f9fa;--white:#fff;--line:#e7edf1;--radius:18px;--shadow:0 14px 40px rgba(2,44,78,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;line-height:1.55}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}.wrap{width:min(1180px,calc(100% - 40px));margin:auto}.topbar{font-size:13px;padding:8px 0;border-bottom:1px solid var(--line)}.topbar .wrap{display:flex;justify-content:flex-end;gap:28px}.header{position:relative;z-index:50;background:rgba(255,255,255,.98);box-shadow:0 2px 18px rgba(0,0,0,.04);overflow:visible}.nav{min-height:78px;display:flex;align-items:center;gap:26px;position:relative;padding-left:190px}.brand{position:absolute;left:0;top:-30px;z-index:80;display:flex;align-items:center;justify-content:center;width:170px;height:170px;border-radius:50%;background:#fff;box-shadow:0 10px 28px rgba(2,44,78,.18);overflow:hidden}.brand img{width:170px;height:170px;object-fit:contain}.menu{display:flex;gap:22px;align-items:center;font-size:14px}.menu a:hover{color:var(--green)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;padding:14px 23px;font-weight:700;border:1px solid transparent;transition:.2s}.btn-green{background:var(--green);color:white}.btn-green:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(66,166,42,.25)}.btn-outline{border-color:white;color:white}.hero{position:relative;z-index:1;min-height:590px;background:linear-gradient(90deg,rgba(18,21,20,.75),rgba(18,21,20,.12)),url('https://www.msfmenuiserie.fr/wp-content/uploads/2024/11/bandeau-11-scaled.jpg') center/cover;display:flex;align-items:center;color:white}.hero-inner{max-width:640px;padding:70px 0}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:12px;font-weight:700;color:#31b979}.hero .eyebrow{color:white}.hero h1{font-size:clamp(44px,6vw,72px);line-height:.98;margin:18px 0 24px;letter-spacing:-.035em}.hero p{font-size:19px;max-width:560px}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.trust{background:white;border-bottom:1px solid var(--line)}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}.trust-item{padding:26px 24px;display:flex;gap:14px;align-items:center;border-right:1px solid var(--line)}.trust-item:last-child{border:0}.icon{font-size:30px;color:var(--navy)}.trust-item strong{display:block;color:var(--navy)}section{padding:80px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}.section-head h2,.split h2,.contact h2{font-size:clamp(32px,4vw,48px);line-height:1.08;margin:8px 0;color:var(--navy2);letter-spacing:-.025em}.section-head p{max-width:430px;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:white;box-shadow:0 8px 25px rgba(2,44,78,.05);transition:.2s}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.card img{width:100%;height:230px;object-fit:cover}.card-body{padding:20px}.card h3{margin:0 0 7px;color:var(--navy);font-size:20px}.card p{margin:0;color:var(--muted);font-size:14px}.split{padding:0;display:grid;grid-template-columns:1fr 1.15fr;background:var(--navy);color:white}.split-copy{padding:70px max(40px,calc((100vw - 1180px)/2));padding-right:60px}.split h2{color:white}.split p{color:#d9e5ec}.split-img{min-height:480px;background:url('https://www.msfmenuiserie.fr/wp-content/uploads/2024/11/bandeau-11-scaled.jpg') center/cover}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.gallery img{height:260px;width:100%;object-fit:cover;border-radius:14px}.quote{background:#f2f7f9;padding:45px 0}.quote blockquote{margin:0 auto;max-width:800px;font-size:20px;font-style:italic;text-align:center;color:var(--navy)}.contact{background:linear-gradient(135deg,var(--navy2),#075487);color:white}.contact h2{color:white}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px}.contact-info p{color:#d9e5ec}.contact-list{margin-top:25px;display:grid;gap:12px}.form{background:white;padding:28px;border-radius:var(--radius);display:grid;grid-template-columns:1fr 1fr;gap:14px}.form input,.form textarea,.form select{width:100%;border:1px solid #dbe3e8;border-radius:10px;padding:14px;font:inherit}.form textarea,.form .full{grid-column:1/-1}.form textarea{min-height:120px;resize:vertical}.form button{cursor:pointer}.notice{grid-column:1/-1;padding:12px;border-radius:8px;background:#eef8ea;color:#246c16}.footer{background:#012743;color:#d7e2e9;padding:42px 0 25px}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:40px}.footer img{width:90px;background:white;border-radius:50%}.footer h4{color:white;margin-top:0}.footer a{display:block;margin:8px 0;font-size:14px}.copyright{border-top:1px solid rgba(255,255,255,.15);margin-top:30px;padding-top:20px;font-size:12px}.mobile-toggle{display:none}.page-hero{padding:85px 0;background:var(--bg)}.page-content{padding:60px 0}.page-content h1{color:var(--navy);font-size:48px}
@media(max-width:900px){.topbar{display:none}.nav{padding-left:112px;min-height:76px}.brand{width:116px;height:116px;top:-20px}.brand img{width:116px;height:116px}.menu{display:none;position:absolute;top:76px;left:0;right:0;background:white;padding:25px;box-shadow:var(--shadow);flex-direction:column;align-items:flex-start}.menu.open{display:flex}.mobile-toggle{display:block;border:0;background:none;font-size:28px}.nav>.btn{display:none}.cards,.gallery{grid-template-columns:1fr 1fr}.trust-grid{grid-template-columns:1fr 1fr}.split,.contact-grid{grid-template-columns:1fr}.split-copy{padding:55px 30px}.footer-grid{grid-template-columns:1fr}.hero{min-height:540px}}
@media(max-width:560px){.wrap{width:min(100% - 28px,1180px)}.nav{padding-left:84px;min-height:70px}.brand{width:92px;height:92px;top:-12px}.brand img{width:92px;height:92px}.menu{top:70px}.hero h1{font-size:45px}.cards,.gallery,.trust-grid{grid-template-columns:1fr}.trust-item{border-right:0;border-bottom:1px solid var(--line)}.section-head{display:block}.form{grid-template-columns:1fr}.form>*{grid-column:1/-1}.gallery img{height:230px}section{padding:58px 0}}
/* V1.2 — pages & orientation agencement */
.card h3 a{color:inherit;text-decoration:none}.card h3 a:hover{color:#079447}.page-hero{min-height:520px;display:flex;align-items:center;background-size:cover;background-position:center;position:relative;color:#fff}.page-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,30,50,.88),rgba(3,30,50,.35),rgba(3,30,50,.08))}.page-hero .wrap{position:relative;z-index:1;width:100%}.page-hero-copy{max-width:650px}.page-hero h1{font-size:clamp(42px,5.2vw,72px);line-height:1.02;margin:.2em 0}.page-hero p{font-size:19px;line-height:1.6;max-width:650px}.page-hero.compact{min-height:340px;background:linear-gradient(135deg,#073d63,#0b5a83)}.page-hero.compact:before{display:none}.agencement-hero{background-image:url('https://www.msfmenuiserie.fr/wp-content/uploads/2024/11/cuisine-4.webp')}.decor-hero{background-image:url('https://www.msfmenuiserie.fr/wp-content/uploads/2024/11/IMG-20241003-WA0169_resultat.webp')}.windows-hero{background-image:url('https://www.msfmenuiserie.fr/wp-content/uploads/2024/11/bandeau-11-scaled.jpg')}.gate-hero{background:linear-gradient(120deg,#052f4d,#0b5479)}.cards-3{grid-template-columns:repeat(3,1fr)}.process{background:#f3f7f9}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:30px}.steps>div,.features-grid>div,.about-panel{background:#fff;border:1px solid #e4ecef;border-radius:18px;padding:28px;box-shadow:0 8px 28px rgba(0,42,70,.06)}.steps b{font-size:34px;color:#0aa34f}.steps h3,.features-grid h3{color:#063e67}.cta-band{background:#073f68;color:#fff;padding:46px 0}.cta-band .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta-band h2{margin:5px 0 0;color:#fff}.features-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.gallery-3{grid-template-columns:repeat(3,1fr)}.projects-gallery{grid-template-columns:repeat(2,1fr)}.projects-gallery img{height:420px}.about-grid{display:grid;grid-template-columns:1.4fr .8fr;gap:60px;align-items:start}.prose{max-width:900px}.front-page #agencement{padding-top:72px}
@media(max-width:900px){.cards-3,.steps,.features-grid,.gallery-3{grid-template-columns:1fr 1fr}.about-grid{grid-template-columns:1fr}.page-hero{min-height:460px}.cta-band .wrap{align-items:flex-start;flex-direction:column}.projects-gallery{grid-template-columns:1fr}}
@media(max-width:600px){.cards-3,.steps,.features-grid,.gallery-3{grid-template-columns:1fr}.page-hero h1{font-size:40px}.page-hero p{font-size:17px}.projects-gallery img{height:280px}}
\n/* V1.2.1 — header sticky, navigation aérée, sans CTA devis */
.header{position:sticky;top:0;z-index:999;transition:min-height .25s ease,box-shadow .25s ease;background:rgba(255,255,255,.98);backdrop-filter:saturate(150%) blur(10px)}
body.admin-bar .header{top:32px}
.nav{min-height:88px;padding-left:190px;gap:20px;transition:min-height .25s ease,padding-left .25s ease}
.menu{flex:1;justify-content:space-between;gap:15px;font-size:13px;line-height:1.15}
.menu a{white-space:nowrap}
.brand{width:170px;height:170px;top:-38px;transition:width .25s ease,height .25s ease,top .25s ease,box-shadow .25s ease}
.brand img{width:170px;height:170px;transition:width .25s ease,height .25s ease}
.header.is-scrolled{box-shadow:0 8px 28px rgba(2,44,78,.13)}
.header.is-scrolled .nav{min-height:66px;padding-left:128px}
.header.is-scrolled .brand{width:112px;height:112px;top:-18px;box-shadow:0 7px 22px rgba(2,44,78,.15)}
.header.is-scrolled .brand img{width:112px;height:112px}
@media(max-width:900px){body.admin-bar .header{top:46px}.header{position:sticky}.nav{padding-left:118px;min-height:76px}.brand{width:120px;height:120px;top:-22px}.brand img{width:120px;height:120px}.header.is-scrolled .nav{min-height:66px;padding-left:88px}.header.is-scrolled .brand{width:86px;height:86px;top:-10px}.header.is-scrolled .brand img{width:86px;height:86px}.menu{top:76px;z-index:1000}.header.is-scrolled .menu{top:66px}}
@media(max-width:782px){body.admin-bar .header{top:46px}}
@media(max-width:600px){body.admin-bar .header{top:0}}
@media(max-width:560px){.nav{padding-left:90px;min-height:70px}.brand{width:96px;height:96px;top:-14px}.brand img{width:96px;height:96px}.header.is-scrolled .nav{padding-left:76px}.header.is-scrolled .brand{width:74px;height:74px;top:-6px}.header.is-scrolled .brand img{width:74px;height:74px}.menu{top:70px}.header.is-scrolled .menu{top:66px}}

/* V1.2.2 — fixed header fallback: remains visible on every scroll */
.site-fixed-header{position:fixed;top:0;left:0;right:0;z-index:9999;background:#fff}
.site-fixed-header .header{position:relative;top:auto;z-index:2}
.site-header-spacer{height:var(--msf-fixed-header-height,120px)}
body.admin-bar .site-fixed-header{top:32px}
@media(max-width:782px){body.admin-bar .site-fixed-header{top:46px}}
@media(max-width:600px){body.admin-bar .site-fixed-header{top:0}}

/* V1.2.3 — hero d'accueil plus compact */
.front-page .hero{min-height:410px;background-position:center 48%}
.front-page .hero-inner{padding:48px 0;max-width:650px}
.front-page .hero h1{font-size:clamp(38px,4.6vw,58px);margin:12px 0 16px;line-height:1.02}
.front-page .hero p{font-size:17px;line-height:1.5;max-width:590px;margin:0}
.front-page .hero .actions{margin-top:22px}
@media(max-width:900px){.front-page .hero{min-height:430px}.front-page .hero-inner{padding:52px 0}.front-page .hero h1{font-size:clamp(38px,7vw,54px)}}
@media(max-width:560px){.front-page .hero{min-height:450px;background-position:center}.front-page .hero-inner{padding:50px 0}.front-page .hero h1{font-size:40px}.front-page .hero p{font-size:16px}}


/* V1.2.5 — signature manuscrite à droite du hero */
.front-page .hero .wrap{position:relative;width:min(1180px,calc(100% - 40px))}
.front-page .hero-signature{position:absolute;right:8px;top:50%;transform:translateY(-50%) rotate(-5deg);z-index:3;width:205px;text-align:center;color:#fff;font-family:"Segoe Print","Bradley Hand","Comic Sans MS",cursive;font-style:italic;font-weight:500;font-size:30px;line-height:1.08;letter-spacing:.01em;text-shadow:0 2px 10px rgba(0,0,0,.32);pointer-events:none}
.front-page .hero-signature span{display:block}.front-page .hero-signature span:nth-child(2){margin-left:22px}.front-page .hero-signature span:nth-child(3){margin-left:42px}
.front-page .hero-signature i{display:block;width:150px;height:4px;margin:12px 0 0 48px;border-radius:99px;background:#10a94f;transform:rotate(-7deg);box-shadow:0 1px 3px rgba(0,0,0,.15)}
@media(max-width:1100px){.front-page .hero-signature{right:12px;width:175px;font-size:25px}.front-page .hero-inner{max-width:570px}}
@media(max-width:820px){.front-page .hero-signature{display:none}}

/* V1.2.5 — hero final compact + signature droite (sélecteurs WordPress robustes) */
.hero{min-height:330px!important;background-position:center 48%!important}
.hero>.wrap{position:relative!important;width:min(1180px,calc(100% - 40px))!important}
.hero-inner{padding:38px 0!important;max-width:650px!important}
.hero h1{font-size:clamp(36px,4vw,52px)!important;margin:10px 0 14px!important;line-height:1.01!important}
.hero p{font-size:16px!important;line-height:1.45!important;max-width:590px!important;margin:0!important}
.hero .actions{margin-top:18px!important}
.hero-signature{display:block!important;position:absolute!important;right:4px!important;top:50%!important;transform:translateY(-50%) rotate(-5deg)!important;z-index:5!important;width:210px!important;text-align:center!important;color:#fff!important;font-family:"Segoe Print","Bradley Hand","Comic Sans MS",cursive!important;font-style:italic!important;font-weight:500!important;font-size:30px!important;line-height:1.08!important;text-shadow:0 2px 10px rgba(0,0,0,.38)!important;pointer-events:none!important}
.hero-signature span{display:block!important}.hero-signature span:nth-child(2){margin-left:22px!important}.hero-signature span:nth-child(3){margin-left:42px!important}
.hero-signature i{display:block!important;width:150px!important;height:4px!important;margin:12px 0 0 48px!important;border-radius:99px!important;background:#10a94f!important;transform:rotate(-7deg)!important}
@media(max-width:1100px){.hero-signature{right:0!important;width:175px!important;font-size:25px!important}.hero-inner{max-width:560px!important}}
@media(max-width:820px){.hero{min-height:390px!important}.hero-signature{display:none!important}.hero-inner{padding:42px 0!important}}
@media(max-width:560px){.hero{min-height:430px!important;background-position:center!important}.hero h1{font-size:38px!important}.hero p{font-size:16px!important}}

/* V1.2.7 — Galeries modernes */
.card-link{color:inherit;text-decoration:none;display:block}.card-link h3{display:flex;justify-content:space-between;gap:12px}.card-link h3 span{color:var(--green)}
.gallery-hero{height:410px;min-height:410px;background-size:cover;background-position:center;position:relative}.gallery-hero>.wrap{height:100%;display:flex;align-items:center;justify-content:space-between;position:relative}.gallery-hero .page-hero-copy{max-width:650px}.hero-signature{position:absolute;right:4%;top:50%;transform:translateY(-50%) rotate(-5deg);display:flex;flex-direction:column;color:#fff;font-family:cursive;font-style:italic;font-size:30px;line-height:1.05;text-align:center;text-shadow:0 2px 10px rgba(0,0,0,.3)}.hero-signature i{display:block;width:130px;height:4px;background:#13a84c;border-radius:9px;margin:12px 0 0 15px;transform:rotate(-8deg)}
.gallery-category-nav{background:#f7fbfe;border-bottom:1px solid #e7eef4}.gallery-category-nav .wrap{display:flex;align-items:stretch;justify-content:center;gap:8px;overflow-x:auto;padding-top:10px;padding-bottom:10px}.gallery-category-nav a{white-space:nowrap;text-decoration:none;color:#073e68;padding:14px 17px;border-radius:10px;font-weight:700;font-size:13px;transition:.2s}.gallery-category-nav a:hover,.gallery-category-nav a.active{background:#074a78;color:#fff;box-shadow:0 8px 22px rgba(7,74,120,.14)}
.gallery-section{padding:56px 0 70px}.gallery-heading{text-align:left;margin-bottom:28px}.gallery-heading h2{font-size:38px;margin:5px 0 6px}.gallery-heading p{color:#65717c;max-width:760px}.modern-gallery{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:250px;gap:14px}.gallery-tile{border:0;padding:0;position:relative;overflow:hidden;border-radius:14px;background:#eef3f6;cursor:pointer;box-shadow:0 5px 18px rgba(10,35,55,.08);text-align:left}.gallery-tile.gallery-featured{grid-row:span 2}.gallery-tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease}.gallery-tile:hover img{transform:scale(1.035)}.gallery-overlay{position:absolute;inset:auto 0 0 0;min-height:90px;padding:38px 18px 16px;display:flex;align-items:flex-end;justify-content:space-between;color:#fff;background:linear-gradient(transparent,rgba(4,17,28,.82))}.gallery-overlay strong{font-size:18px;line-height:1.15}.gallery-overlay em{font-style:normal;width:38px;height:38px;border:2px solid rgba(255,255,255,.9);border-radius:50%;display:grid;place-items:center;font-size:22px}.gallery-empty{border:1px dashed #b8cad8;border-radius:18px;text-align:center;padding:65px 25px;background:#f8fbfd;color:#506170}.gallery-empty span{font-size:46px;color:#0a5687}.gallery-empty h3{font-size:24px;color:#073e68;margin:10px 0}.msf-lightbox{position:fixed;inset:0;background:rgba(2,12,20,.92);z-index:99999;display:none;align-items:center;justify-content:center;padding:35px}.msf-lightbox.open{display:flex}.msf-lightbox img{max-width:94vw;max-height:90vh;border-radius:12px;box-shadow:0 20px 80px #000}.msf-lightbox button{position:absolute;right:25px;top:18px;border:0;background:none;color:#fff;font-size:46px;cursor:pointer}.gallery-section+.cta-band p{margin:4px 0 0;color:#607080}
@media(max-width:900px){.gallery-hero{height:360px;min-height:360px}.hero-signature{font-size:22px;right:3%}.modern-gallery{grid-template-columns:repeat(2,1fr);grid-auto-rows:220px}.gallery-heading h2{font-size:32px}}
@media(max-width:640px){.gallery-hero{height:330px;min-height:330px}.hero-signature{display:none}.gallery-category-nav .wrap{justify-content:flex-start}.modern-gallery{grid-template-columns:1fr;grid-auto-rows:240px}.gallery-tile.gallery-featured{grid-row:span 1}.gallery-section{padding:38px 0 50px}}

/* V1.2.8 — harmonisation des heroes intérieurs avec l'accueil */
.page-hero,.gallery-hero{height:330px!important;min-height:330px!important;padding:0!important;display:flex!important;align-items:center!important;background-size:cover!important}
.page-hero .page-hero-copy,.gallery-hero .page-hero-copy{margin-left:46px}
.page-hero h1{font-size:clamp(36px,4vw,52px)!important;line-height:1.01!important;margin:10px 0 14px!important}
.page-hero p{font-size:16px!important;line-height:1.45!important;margin:0 0 18px!important}
@media(max-width:820px){.page-hero,.gallery-hero{height:390px!important;min-height:390px!important}.page-hero .page-hero-copy,.gallery-hero .page-hero-copy{margin-left:20px;margin-right:20px}}
@media(max-width:560px){.page-hero,.gallery-hero{height:430px!important;min-height:430px!important}.page-hero .page-hero-copy,.gallery-hero .page-hero-copy{margin-left:0;margin-right:0}}

/* V1.2.10 — centrage des 2 dernières cartes Agencement */
@media(min-width:901px){
  .agencement-gallery-cards{grid-template-columns:repeat(6,1fr);}
  .agencement-gallery-cards>.card{grid-column:span 2;}
  .agencement-gallery-cards>.card:nth-child(4){grid-column:2 / span 2;}
  .agencement-gallery-cards>.card:nth-child(5){grid-column:4 / span 2;}
}

/* V1.2.11 — Décoration & meubles : 5 galeries, 3 + 2 centrées */
@media(min-width:901px){
  .decor-gallery-cards{grid-template-columns:repeat(6,1fr);}
  .decor-gallery-cards>.card{grid-column:span 2;}
  .decor-gallery-cards>.card:nth-child(4){grid-column:2 / span 2;}
  .decor-gallery-cards>.card:nth-child(5){grid-column:4 / span 2;}
}

/* V1.2.12 — Fenêtres : 5 galeries, 3 + 2 centrées */
@media(min-width:901px){
  .windows-gallery-cards{grid-template-columns:repeat(6,1fr);}
  .windows-gallery-cards>.card{grid-column:span 2;}
  .windows-gallery-cards>.card:nth-child(4){grid-column:2 / span 2;}
  .windows-gallery-cards>.card:nth-child(5){grid-column:4 / span 2;}
}

/* V1.2.13 — Portails & portes de garage : 5 galeries, 3 + 2 centrées */
@media(min-width:901px){
  .gates-gallery-cards{grid-template-columns:repeat(6,1fr);}
  .gates-gallery-cards>.card{grid-column:span 2;}
  .gates-gallery-cards>.card:nth-child(4){grid-column:2 / span 2;}
  .gates-gallery-cards>.card:nth-child(5){grid-column:4 / span 2;}
  .brand{width:178px;height:178px;top:-40px;}
  .brand img{width:178px;height:178px;}
  .header.is-scrolled .brand{width:116px;height:116px;}
  .header.is-scrolled .brand img{width:116px;height:116px;}
}

/* V1.2.16 — hero accueil = gabarit maître pour toutes les pages
   Même hauteur, même largeur utile, mêmes espacements et mêmes règles responsive. */
.page-hero,
.gallery-hero{
  height:330px!important;
  min-height:330px!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  background-size:cover!important;
  background-position:center 48%!important;
}
.page-hero>.wrap,
.gallery-hero>.wrap{
  position:relative!important;
  z-index:2!important;
  width:min(1180px,calc(100% - 40px))!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.page-hero .page-hero-copy,
.gallery-hero .page-hero-copy{
  max-width:650px!important;
  margin-left:0!important;
  margin-right:0!important;
  padding:38px 0!important;
}
/* Les pages compactes ont le texte directement dans .wrap. */
.page-hero.compact>.wrap{
  max-width:1180px!important;
  padding-top:38px!important;
  padding-bottom:38px!important;
}
.page-hero h1,
.gallery-hero h1{
  font-size:clamp(36px,4vw,52px)!important;
  line-height:1.01!important;
  margin:10px 0 14px!important;
}
.page-hero p,
.gallery-hero p{
  font-size:16px!important;
  line-height:1.45!important;
  max-width:590px!important;
  margin:0 0 18px!important;
}
@media(max-width:820px){
  .page-hero,.gallery-hero{height:390px!important;min-height:390px!important}
  .page-hero>.wrap,.gallery-hero>.wrap{width:min(1180px,calc(100% - 40px))!important}
  .page-hero .page-hero-copy,.gallery-hero .page-hero-copy{padding:42px 0!important}
  .page-hero.compact>.wrap{padding-top:42px!important;padding-bottom:42px!important}
}
@media(max-width:560px){
  .page-hero,.gallery-hero{height:430px!important;min-height:430px!important;background-position:center!important}
  .page-hero>.wrap,.gallery-hero>.wrap{width:min(100% - 28px,1180px)!important}
  .page-hero h1,.gallery-hero h1{font-size:38px!important}
  .page-hero p,.gallery-hero p{font-size:16px!important}
}

/* V1.2.16 — éviter le chevauchement logo / titres des heroes intérieurs
   Le hero d'accueil reste inchangé. Sur grand écran, le contenu des heroes
   intérieurs commence après l'emprise visuelle du logo débordant. */
@media (min-width:821px){
  body:not(.front-page) .page-hero>.wrap,
  body:not(.front-page) .gallery-hero>.wrap{
    padding-left:190px!important;
  }
  body:not(.front-page) .page-hero .page-hero-copy,
  body:not(.front-page) .gallery-hero .page-hero-copy{
    max-width:650px!important;
  }
  body:not(.front-page) .page-hero.compact>.wrap{
    padding-left:190px!important;
  }
}
@media (min-width:821px) and (max-width:1050px){
  body:not(.front-page) .page-hero>.wrap,
  body:not(.front-page) .gallery-hero>.wrap,
  body:not(.front-page) .page-hero.compact>.wrap{
    padding-left:160px!important;
  }
}
@media (max-width:820px){
  body:not(.front-page) .page-hero>.wrap,
  body:not(.front-page) .gallery-hero>.wrap,
  body:not(.front-page) .page-hero.compact>.wrap{
    padding-left:0!important;
  }
}
