/* Hug²O — thème enfant Divi (piste A « éditorial premium »). Polices auto-hébergées (RGPD, performance). */
@font-face{font-family:'Fraunces';font-style:normal;font-weight:100 900;font-display:swap;src:url('../fonts/fraunces-latin-opsz-normal.woff2') format('woff2-variations'),url('../fonts/fraunces-latin-opsz-normal.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url('../fonts/inter-latin-wght-normal.woff2') format('woff2-variations'),url('../fonts/inter-latin-wght-normal.woff2') format('woff2');}

:root{
  --hg-ivory:#F7F4EE; --hg-ivory2:#EFEAE0; --hg-deep:#0F2A3D; --hg-deep2:#0C2231;
  --hg-water:#5C93B8; --hg-muted:#6B6A64; --hg-line:#E4DFD3; --hg-ink:#1A1A18;
  --hg-accent:#C97B4A; --hg-accent-d:#A8613A;
  --hg-serif:'Fraunces',Georgia,'Times New Roman',serif; --hg-sans:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  --hg-header-h:76px;
}
html{ scroll-behavior:smooth; }
body, #page-container{ background:var(--hg-ivory); font-family:var(--hg-sans); color:var(--hg-ink); -webkit-font-smoothing:antialiased; }
#main-content .et_pb_text, #main-content .et_pb_text p{ font-family:var(--hg-sans); font-size:16.5px; line-height:1.65; color:var(--hg-ink); }
h1,h2,h3,h4{ font-family:var(--hg-serif) !important; font-weight:500; letter-spacing:-.01em; color:var(--hg-deep); padding-bottom:0; }
h1{ font-size:clamp(42px,6.4vw,88px); line-height:1.02; }
h2{ font-size:clamp(30px,3.6vw,46px); line-height:1.1; }
h3{ font-size:21px; line-height:1.25; }
body .et_pb_row{ width:90%; max-width:1320px; }
body .et_pb_section{ padding:0; }
.hg-ivory{ background:var(--hg-ivory) !important; padding:clamp(56px,7vw,104px) 0 !important; }
.hg-white{ background:#fff !important; padding:clamp(56px,7vw,104px) 0 !important; }
.hg-dark{ background:var(--hg-deep) !important; padding:clamp(56px,7vw,104px) 0 !important; }
.hg-dark h1,.hg-dark h2,.hg-dark h3{ color:#fff; }
.hg-dark, .hg-dark .et_pb_text, .hg-dark .et_pb_text p{ color:rgba(255,255,255,.78) !important; }
.hg-hero{ min-height:88vh; display:flex; align-items:flex-end; padding:120px 0 96px !important; }
.hg-hero .et_pb_row{ padding:0; }
.hg-hero h1{ max-width:6.4em; }
.hg-hero-sm{ padding:clamp(72px,10vw,150px) 0 clamp(56px,7vw,100px) !important; }
.hg-center, .hg-center .et_pb_text_inner{ text-align:center; }
.hg-center .hg-lead{ margin-left:auto; margin-right:auto; }

/* textes utilitaires */
.hg-eyebrow{ font-size:13px !important; letter-spacing:.14em; text-transform:uppercase; font-weight:600; color:var(--hg-water) !important; margin-bottom:18px; }
.hg-lead{ font-size:clamp(17px,1.6vw,20px) !important; max-width:560px; line-height:1.55; }
.hg-seo-line{ font-size:15px !important; opacity:.8; margin-top:10px; }
.hg-muted{ color:var(--hg-muted) !important; }
.hg-proof{ font-size:13px !important; letter-spacing:.02em; color:rgba(255,255,255,.55) !important; margin-top:48px; }
.hg-sr{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.hg-crumbs{ font-size:13px !important; margin-bottom:28px; opacity:.75; }
.hg-crumbs a{ color:inherit; text-decoration:underline; text-underline-offset:3px; }
.hg-link{ font-weight:600; color:var(--hg-accent); }
.hg-link:hover{ color:var(--hg-accent-d); }
#main-content a.hg-link{ text-decoration:none; }

/* boutons (modules Bouton Divi) */
.hg-btn{ display:inline-block; margin:0 12px 12px 0; }
.hg-btn .et_pb_button{ font-family:var(--hg-sans) !important; font-size:15px !important; font-weight:600; letter-spacing:.01em; padding:16px 30px !important; border-radius:2px !important; border:1px solid transparent !important; line-height:1.2 !important; transition:background .2s, border-color .2s, transform .2s; }
.hg-btn .et_pb_button:after{ display:none !important; }
.hg-btn .et_pb_button:hover{ padding:16px 30px !important; transform:translateY(-1px); }
.hg-btn-primary .et_pb_button{ background:var(--hg-accent) !important; color:#fff !important; }
.hg-btn-primary .et_pb_button:hover{ background:var(--hg-accent-d) !important; }
.hg-btn-ghost .et_pb_button{ background:transparent !important; color:var(--hg-deep) !important; border-color:rgba(15,42,61,.3) !important; }
.hg-btn-ghost .et_pb_button:hover{ background:transparent !important; border-color:var(--hg-deep) !important; }
.hg-btn-ghost-dark .et_pb_button{ background:transparent !important; color:#fff !important; border-color:rgba(255,255,255,.55) !important; }
.hg-btn-ghost-dark .et_pb_button:hover{ background:transparent !important; border-color:#fff !important; }

/* cartes, produits, badges */
.hg-card, .hg-product{ transition:transform .35s cubic-bezier(.16,1,.3,1), box-shadow .35s; }
.hg-card{ background:#fff; border:1px solid var(--hg-line); height:100%; }
.hg-card h3, .hg-card p, .hg-card .hg-badges, .hg-card .hg-link{ margin-left:26px; margin-right:26px; }
.hg-card h3{ margin-top:24px; }
.hg-card p{ color:var(--hg-muted); font-size:14.5px !important; margin-top:8px; }
.hg-card .hg-link{ display:inline-block; margin-top:18px; margin-bottom:26px; }
.hg-card:hover, .hg-product:hover{ transform:translateY(-3px); box-shadow:0 18px 40px rgba(15,42,61,.10); }
.hg-card-dark{ background:var(--hg-deep); border-color:var(--hg-deep); }
.hg-card-dark h3{ color:#fff; } .hg-card-dark p{ color:rgba(255,255,255,.7) !important; } .hg-card-dark .hg-link{ color:#fff; }
.hg-product h3{ margin-top:20px; letter-spacing:.02em; }
.hg-product p{ color:var(--hg-ink); font-size:15px !important; margin-top:8px; }
.hg-product .hg-link{ display:inline-block; margin-top:14px; }
.hg-badges{ display:flex; flex-wrap:wrap; gap:8px; margin-top:16px; }
.hg-badge{ font-size:12px; font-weight:600; color:var(--hg-deep); background:var(--hg-ivory2); border:1px solid #DCD5C4; padding:5px 11px; border-radius:20px; }
.hg-card-dark .hg-badge{ background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.2); color:#fff; }

/* listes, tableaux, étapes, avantages */
.hg-list{ list-style:none; margin:0; padding:0; }
.hg-list li{ padding:12px 0 12px 30px; border-bottom:1px solid var(--hg-line); position:relative; line-height:1.5; }
.hg-ticks li:before{ content:""; position:absolute; left:2px; top:20px; width:11px; height:6px; border-left:2px solid var(--hg-water); border-bottom:2px solid var(--hg-water); transform:rotate(-45deg); }
.hg-spec{ width:100%; border-collapse:collapse; margin-top:24px; font-size:14.5px; }
.hg-spec th, .hg-spec td{ text-align:left; padding:12px 14px 12px 0; border-bottom:1px solid var(--hg-line); vertical-align:top; }
.hg-spec th{ font-weight:500; color:var(--hg-muted); width:48%; }
.hg-spec td{ font-weight:600; color:var(--hg-deep); }
.hg-step{ border-top:1px solid var(--hg-deep); padding-top:22px; }
.hg-step span{ font-family:var(--hg-serif); font-size:34px; color:var(--hg-water); }
.hg-step h3{ margin-top:10px; } .hg-step p{ color:var(--hg-muted); font-size:14.5px !important; }
.hg-why h3{ font-size:17px; font-family:var(--hg-sans) !important; font-weight:600; } .hg-why p{ color:var(--hg-muted); font-size:14.5px !important; margin-top:6px; }
.hg-benefit{ border-top:1px solid var(--hg-line); padding-top:16px; } .hg-benefit h3{ font-size:16px; font-family:var(--hg-sans) !important; font-weight:500; line-height:1.4; }
.hg-timeline{ display:flex; gap:40px; margin:28px 0; } .hg-timeline b{ display:block; font-family:var(--hg-serif); font-size:30px; color:var(--hg-deep); font-weight:500; } .hg-timeline span{ font-size:13.5px; color:var(--hg-muted); }
.hg-aud{ padding:8px 0; } .hg-aud-dark{ background:var(--hg-deep); padding:40px; } .hg-aud-dark h2{ color:#fff; } .hg-aud-dark p{ color:rgba(255,255,255,.75) !important; }

/* CTA final + formulaire */
.hg-cta-final{ padding:clamp(80px,12vw,170px) 0 !important; text-align:center; }
.hg-cta-final h2{ font-size:clamp(34px,5vw,56px); max-width:780px; margin:0 auto; }
.hg-cta-final .hg-lead{ margin:24px auto 36px; }
.hg-cta-final .hg-btn{ display:inline-block; }
/* animations sobres */
@media (prefers-reduced-motion:reduce){ *{ transition:none !important; animation:none !important; scroll-behavior:auto !important; } }

/* ===== Liens dans le contenu ===== */
#main-content .et_pb_text a:not(.hg-link):not(.et_pb_button){color:var(--hg-deep);text-decoration:underline;text-decoration-color:var(--hg-water);text-underline-offset:3px;text-decoration-thickness:1px}
#main-content .et_pb_text a:not(.hg-link):not(.et_pb_button):hover{color:var(--hg-accent-d)}
#main-content .hg-dark .et_pb_text a:not(.hg-link):not(.et_pb_button){color:#fff}
#main-content .hg-crumbs a{color:inherit}

/* ===== En-tête ===== */
.hg-skip{position:absolute;left:-9999px;top:8px;z-index:100000;background:var(--hg-deep);color:#fff;padding:12px 18px}
.hg-skip:focus{left:8px}
.hg-header{position:sticky;top:0;z-index:9990;background:rgba(247,244,238,.94);backdrop-filter:saturate(1.2) blur(8px);-webkit-backdrop-filter:saturate(1.2) blur(8px);border-bottom:1px solid var(--hg-line);transition:box-shadow .25s}
.admin-bar .hg-header{top:32px}@media(max-width:782px){.admin-bar .hg-header{top:46px}}
.hg-header.is-scrolled{box-shadow:0 8px 30px rgba(15,42,61,.08)}
.hg-header-in{max-width:1320px;margin:0 auto;padding:0 5%;min-height:var(--hg-header-h);display:flex;align-items:center;gap:32px;justify-content:space-between}
.hg-logo{font-family:var(--hg-serif);font-weight:500;font-size:26px;letter-spacing:-.01em;color:var(--hg-deep);text-decoration:none;white-space:nowrap}
.hg-logo sup{font-size:.55em;color:var(--hg-accent);margin:0 1px;vertical-align:.55em}
.hg-logo img{display:block;max-height:44px;width:auto}
.hg-nav{display:flex;align-items:center}
.hg-menu,.hg-menu ul{list-style:none;margin:0;padding:0}
.hg-menu{display:flex;align-items:center;gap:6px}
.hg-menu>li{position:relative}
.hg-menu a{display:block;padding:12px 12px;font:500 14px/1.2 var(--hg-sans);color:var(--hg-deep);text-decoration:none;opacity:.88;white-space:nowrap}
.hg-menu a:hover,.hg-menu a:focus-visible,.hg-menu .current-menu-item>a,.hg-menu .current-menu-ancestor>a{opacity:1}
.hg-menu .current-menu-item>a:not(.x),.hg-menu .current-menu-ancestor>a{box-shadow:inset 0 -2px 0 var(--hg-accent)}
.hg-menu .menu-item-has-children>a:after{content:"";display:inline-block;width:5px;height:5px;margin:0 0 3px 8px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg)}
.hg-menu .sub-menu{position:absolute;left:0;top:100%;min-width:230px;background:var(--hg-ivory);border-top:2px solid var(--hg-water);box-shadow:0 18px 40px rgba(15,42,61,.12);padding:8px 0;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .18s,transform .18s,visibility .18s}
.hg-menu li:hover>.sub-menu,.hg-menu li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}
.hg-menu .sub-menu a{padding:11px 20px;font-weight:400}
.hg-menu .sub-menu a:hover{background:var(--hg-ivory2)}
.hg-menu>li.hg-cta>a{background:var(--hg-accent);color:#fff;opacity:1;padding:12px 22px;border-radius:2px;font-weight:600;margin-left:10px;box-shadow:none}
.hg-menu>li.hg-cta>a:hover{background:var(--hg-accent-d)}
.hg-burger{display:none;appearance:none;background:none;border:1px solid rgba(15,42,61,.25);width:46px;height:46px;border-radius:2px;cursor:pointer;position:relative;padding:0}
.hg-burger span,.hg-burger span:before,.hg-burger span:after{position:absolute;left:12px;right:12px;height:2px;background:var(--hg-deep);content:"";transition:transform .2s,opacity .2s}
.hg-burger span{top:21px}.hg-burger span:before{left:0;right:0;top:-7px}.hg-burger span:after{left:0;right:0;top:7px}
.hg-header.nav-open .hg-burger span{background:transparent}
.hg-header.nav-open .hg-burger span:before{transform:translateY(7px) rotate(45deg)}
.hg-header.nav-open .hg-burger span:after{transform:translateY(-7px) rotate(-45deg)}
.hg-burger:focus-visible,.hg-menu a:focus-visible,.hg-footer a:focus-visible{outline:3px solid var(--hg-accent);outline-offset:2px}
@media (max-width:1080px){
  .hg-header{backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--hg-ivory)}
  .hg-burger{display:block}
  .hg-nav{position:fixed;left:0;right:0;top:var(--hg-header-h);bottom:0;background:var(--hg-ivory);overflow:auto;padding:18px 5% 40px;display:none;flex-direction:column;align-items:stretch}
  .admin-bar .hg-nav{top:calc(var(--hg-header-h) + 32px)}
  .hg-header.nav-open .hg-nav{display:flex}
  .hg-menu{flex-direction:column;align-items:stretch;gap:0}
  .hg-menu a{padding:16px 4px;font-size:18px;border-bottom:1px solid var(--hg-line);white-space:normal}
  .hg-menu .sub-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;background:none;padding:0 0 0 14px}
  .hg-menu .sub-menu a{font-size:16px;padding:12px 4px}
  .hg-menu>li.hg-cta>a{margin:20px 0 0;text-align:center;border-bottom:0}
  body.hg-nav-lock{overflow:hidden}
}

/* ===== Pied de page ===== */
.hg-footer{background:#0B2130;color:rgba(255,255,255,.72);padding:clamp(56px,7vw,96px) 0 28px;font-size:15px;line-height:1.6}
.hg-footer a{color:rgba(255,255,255,.78);text-decoration:none}.hg-footer a:hover{color:#fff;text-decoration:underline}
.hg-footer-in{max-width:1320px;margin:0 auto;padding:0 5%}
.hg-footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px}
.hg-footer h2{font:600 12.5px/1 var(--hg-sans)!important;letter-spacing:.14em;text-transform:uppercase;color:var(--hg-water)!important;margin:0 0 18px}
.hg-footer ul{list-style:none;margin:0;padding:0}.hg-footer li{margin:0 0 9px}
.hg-footer .hg-logo{color:#fff;font-size:30px;display:inline-block;margin-bottom:14px}
.hg-footer-claim{max-width:320px;margin:0}
.hg-footer-bottom{margin-top:56px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);display:flex;flex-wrap:wrap;gap:8px 28px;justify-content:space-between;font-size:13px;color:rgba(255,255,255,.5)}
@media (max-width:980px){.hg-footer-grid{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.hg-footer-grid{grid-template-columns:1fr}}

/* ===== Page, rythme, mobile ===== */
#main-content .container:before{display:none}
#main-content>.container{padding-top:0}
.et_pb_section.hg-ivory,.et_pb_section.hg-white,.et_pb_section.hg-dark{padding-left:0;padding-right:0}
@media (max-width:980px){
  .hg-hero{min-height:auto;padding-top:80px!important}
  .hg-timeline{flex-direction:column;gap:18px}
  .hg-photo-tall{min-height:260px}
}
/* barre devis mobile */
#hg-sticky-devis{display:none;position:fixed;left:0;right:0;bottom:0;z-index:9980;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:var(--hg-deep);text-align:center}
#hg-sticky-devis a{display:block;background:var(--hg-accent);color:#fff;font-weight:600;padding:14px;border-radius:2px;text-decoration:none}
@media (max-width:767px){#hg-sticky-devis{display:block}body{padding-bottom:70px}body.hg-no-sticky{padding-bottom:0}body.hg-no-sticky #hg-sticky-devis{display:none}}

/* ===== Animations sobres (activées uniquement si JS) ===== */
.js .hg-reveal{opacity:0;transform:translateY(18px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}
.js .hg-reveal.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.js .hg-reveal{opacity:1;transform:none;transition:none}}
:focus-visible{outline-color:var(--hg-accent)}

/* Communes (liste départementale + voisines) */
.hg-chips{ display:flex; flex-wrap:wrap; gap:8px; margin:0 0 18px; }
.hg-chip{ font-size:14px; font-weight:600; color:var(--hg-deep); background:var(--hg-ivory2); border:1px solid #DCD5C4; padding:7px 14px; border-radius:20px; text-decoration:none !important; transition:background .2s,border-color .2s; }
.hg-chip:hover{ background:#fff; border-color:var(--hg-water); color:var(--hg-accent-d); }
.hg-commune-list{ list-style:none; margin:0 !important; padding:0 !important; columns:3 220px; column-gap:28px; font-size:15px; }
.hg-commune-list li{ break-inside:avoid; padding:3px 0; margin:0; }
.hg-commune-list a{ color:var(--hg-deep); text-decoration:none !important; }
.hg-commune-list a:hover{ color:var(--hg-accent-d); text-decoration:underline !important; }
.hg-cta-final.hg-center, .hg-cta-final.hg-center .et_pb_text_inner{ text-align:center; }


/* ===== Passe finition (alignement sur la maquette Piste A) ===== */
body{ margin:0; }
h1,h2,h3,h4{ font-optical-sizing:auto; }
/* rythme vertical : Divi ajoute 27px de padding de rangée et 30px de marge de module */
body .et_pb_row{ padding:0; }
body .et_pb_module, body .et_pb_text{ margin-bottom:0; }
#main-content .et_pb_text p{ padding-bottom:0; margin:0 0 1em; }
#main-content .et_pb_text p:last-child{ margin-bottom:0; }
#main-content .et_pb_text h2{ margin:0 0 .5em; }
#main-content .et_pb_text .hg-eyebrow{ margin-bottom:14px; }
.et_pb_row + .et_pb_row{ margin-top:clamp(36px,4.5vw,64px); }
.hg-hero-sm .et_pb_row + .et_pb_row{ margin-top:0; }
/* cartes de même hauteur dans une rangée */
body .et_pb_row{ align-items:stretch; }
body .et_pb_column > .et_pb_text:only-child, body .et_pb_column > .et_pb_text:only-child .et_pb_text_inner{ height:100%; }
.hg-card{ display:flex; flex-direction:column; }
#main-content .hg-card h3, #main-content .hg-card p, #main-content .hg-card .hg-badges{ margin-left:26px; margin-right:26px; }
#main-content .hg-card p{ margin-top:8px; margin-bottom:0; }
#main-content .hg-card p:last-child{ margin-top:auto; padding-top:18px; padding-bottom:26px; }
#main-content .hg-card p .hg-link{ margin:0; }
#main-content .hg-product p{ margin:8px 0 0; }
#main-content .hg-product p:last-child{ margin-top:14px; }
.hg-benefit h3:before{ content:""; display:block; width:26px; height:26px; margin-bottom:14px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235C93B8' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3.5c3.2 4 5.5 7 5.5 10a5.5 5.5 0 0 1-11 0c0-3 2.3-6 5.5-10z'/%3E%3C/svg%3E") no-repeat center/contain; }
/* boutons : cible uniquement le lien (le conteneur Divi ne doit pas avoir de bordure) */
.et_pb_button_module_wrapper.hg-btn{ border:0 !important; padding:0 !important; background:none !important; }
.hg-btn a.et_pb_button{ display:inline-block; }
/* menu principal comme la maquette : espacement généreux, soulignement animé */
.hg-header-in{ gap:24px; }
.hg-nav{ margin-left:auto; }
.hg-menu{ gap:0; }
.hg-menu>li:not(.hg-cta)>a{ padding:12px 15px; background:linear-gradient(var(--hg-accent),var(--hg-accent)) no-repeat 15px calc(100% - 7px)/0 1px; transition:background-size .3s ease,opacity .2s; }
.hg-menu>li:not(.hg-cta)>a:hover,.hg-menu>li:not(.hg-cta)>a:focus-visible,.hg-menu>li.current-menu-item>a,.hg-menu>li.current-menu-ancestor>a{ background-size:calc(100% - 30px) 1px; box-shadow:none; }
.hg-menu>li.hg-cta>a{ margin-left:18px; padding:13px 26px; }
@media (max-width:1240px){ .hg-menu>li:not(.hg-cta)>a{ padding:12px 10px; background-position:10px calc(100% - 7px); font-size:13.5px; } .hg-menu>li.hg-cta>a{ margin-left:8px; padding:12px 18px; } .hg-menu>li:not(.hg-cta)>a:hover{ background-size:calc(100% - 20px) 1px; } }

/* menu mobile : plein écran bleu profond, grands liens, téléphone en haut, devis en bas (maquette) */
.hg-nav-tel{ display:none; }
@media (max-width:1080px){
  .hg-nav{ background:var(--hg-deep); padding:8px 7% 120px; }
  .hg-nav-tel{ display:block; color:#fff; font:600 17px/1 var(--hg-sans); text-decoration:none; padding:18px 0 22px; border-bottom:1px solid rgba(255,255,255,.14); }
  .hg-nav-tel:before{ content:"Appeler : "; font-weight:400; opacity:.65; }
  .hg-menu{ margin-top:6px; }
  .hg-menu a, .hg-menu>li:not(.hg-cta)>a{ color:#fff; opacity:1; font:400 clamp(28px,7.5vw,38px)/1.15 var(--hg-serif); padding:16px 0; border-bottom:1px solid rgba(255,255,255,.1); background-image:none; }
  .hg-menu .sub-menu a{ font:400 20px/1.2 var(--hg-sans); color:rgba(255,255,255,.78); border:0; padding:10px 0; }
  .hg-menu .sub-menu a:hover{ background:none; color:#fff; }
  .hg-menu .menu-item-has-children>a:after{ display:none; }
  .hg-menu>li.hg-cta{ position:fixed; left:0; right:0; bottom:0; padding:14px 7% calc(14px + env(safe-area-inset-bottom)); background:var(--hg-deep); border-top:1px solid rgba(255,255,255,.14); z-index:2; }
  .hg-menu>li.hg-cta>a{ margin:0; display:block; font:600 16px/1.2 var(--hg-sans); padding:16px; border:0; }
  .hg-header.nav-open ~ #hg-sticky-devis, body.hg-nav-lock #hg-sticky-devis{ display:none; }
}
.et_pb_text + .et_pb_button_module_wrapper{ margin-top:28px; }
.hg-btn{ margin-bottom:0; }
#main-content .hg-cta-final h2{ margin:0 auto .5em; }
#main-content .hg-cta-final .hg-lead{ margin:24px auto 36px; }
#main-content .hg-center .hg-lead{ margin-left:auto; margin-right:auto; }
#main-content .hg-center h2{ margin-left:auto; margin-right:auto; }

/* ===== Modèles globaux Divi Theme Builder (importés depuis l'onglet « Menu & pied de page ») ===== */
.et-l--header{ position:sticky; top:0; z-index:9990; }
.admin-bar .et-l--header{ top:32px; } @media(max-width:782px){ .admin-bar .et-l--header{ top:46px; } }
.et-l--header .hg-header-tb{ position:relative; top:auto; }
.et-l--header .et_pb_section, .et-l--header .et_pb_row, .et-l--header .et_pb_text{ padding:0 !important; margin:0 !important; width:100% !important; max-width:none !important; background:none; }
.et-l--header .hg-header-in{ padding-left:5%; padding-right:5%; }
.hg-tb-footer.et_pb_section{ background:#0B2130 !important; padding:clamp(56px,7vw,96px) 0 28px !important; color:rgba(255,255,255,.72); }
.hg-tb-footer .et_pb_row{ width:90%; max-width:1320px; padding:0; }
.hg-tb-footer .et_pb_text, .hg-tb-footer .et_pb_text p, .hg-tb-footer .et_pb_text li{ color:rgba(255,255,255,.72); font:400 15px/1.6 var(--hg-sans); }
.hg-tb-footer a{ color:rgba(255,255,255,.78); text-decoration:none; } .hg-tb-footer a:hover{ color:#fff; text-decoration:underline; }
.hg-tb-footer h2{ font:600 12.5px/1 var(--hg-sans) !important; letter-spacing:.14em; text-transform:uppercase; color:var(--hg-water) !important; margin:0 0 18px; padding:0; }
.hg-tb-footer ul{ list-style:none; margin:0; padding:0; } .hg-tb-footer li{ margin:0 0 9px; padding:0; }
.hg-tb-footer .hg-logo{ color:#fff; font-size:30px; display:inline-block; }
.hg-tb-footer .hg-footer-bottom{ margin-top:40px; padding-top:22px; border-top:1px solid rgba(255,255,255,.12); display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px 28px; font-size:13px; color:rgba(255,255,255,.5); }
.hg-tb-footer .hg-footer-claim{ max-width:320px; }
@media (max-width:980px){ .hg-tb-footer .hg-footer-grid-tb .et_pb_column{ width:48% !important; margin-right:2% !important; margin-bottom:32px; } }
@media (max-width:600px){ .hg-tb-footer .hg-footer-grid-tb .et_pb_column{ width:100% !important; } }

/* ===== Mobile : respirations entre blocs empilés, boutons pleine largeur ===== */
.hg-btn{ margin:0 12px 14px 0; }
@media (max-width:980px){
  body .et_pb_row .et_pb_column{ margin-bottom:26px; }
  body .et_pb_row .et_pb_column:last-child{ margin-bottom:0; }
  .hg-photo-prod.is-placeholder,.hg-photo-prod.has-img .hg-photo-img{ min-height:0 !important; aspect-ratio:4/3; }
  .hg-photo-card.is-placeholder,.hg-photo-card.has-img .hg-photo-img{ min-height:0 !important; aspect-ratio:16/10; }
  .hg-photo-tall.is-placeholder,.hg-photo-tall.has-img .hg-photo-img,.hg-photo-wide.is-placeholder{ min-height:0 !important; aspect-ratio:4/3; }
  .hg-hero .et_pb_text + .et_pb_button_module_wrapper{ margin-top:6px; }
}
@media (max-width:600px){
  .hg-hero .hg-btn, .hg-cta-final .hg-btn, .hg-hero-sm .hg-btn{ display:block; margin:0 0 12px; }
  .hg-hero .hg-btn a.et_pb_button, .hg-cta-final .hg-btn a.et_pb_button, .hg-hero-sm .hg-btn a.et_pb_button{ display:block; text-align:center; }
  .hg-hero .hg-proof{ margin-top:28px; }
}
.hg-why p, .hg-step p{ color:#55544F; }
@media (max-width:600px){ .hg-hero .hg-btn:first-of-type, .hg-hero-sm .hg-btn:first-of-type, .hg-cta-final .hg-btn:first-of-type{ margin-top:28px; } }
