.sos-consent[hidden]{display:none!important}.sos-consent{position:fixed;z-index:10000;bottom:85px;left:16px;right:16px;max-width:720px;margin:auto;padding:18px 22px;background:#fff;color:#15283c;border:1px solid #bdc8d3;border-radius:12px;box-shadow:0 8px 40px #10203033;font:15px/1.5 system-ui,sans-serif}.sos-consent p{margin:0 0 12px}.sos-consent a{color:#174767;text-decoration:underline}.sos-consent>div{display:flex;gap:12px}.sos-consent button{flex:1;min-height:44px;border:1px solid #173f59;background:#173f59;color:white;border-radius:6px;font:inherit;cursor:pointer}.sos-cookie-settings{position:fixed;bottom:84px;left:12px;z-index:9998;padding:7px 12px;border:1px solid #8798aa;background:white;color:#173047;border-radius:20px;font:13px system-ui;cursor:pointer}.sos-contact-form{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:780px;margin:24px 0}.sos-contact-form label{display:flex;flex-direction:column;gap:6px;font-weight:600}.sos-contact-form input,.sos-contact-form textarea{width:100%;box-sizing:border-box;padding:12px;font:inherit;border:1px solid #8999aa;border-radius:6px;background:#fff;color:#172b40}.sos-contact-form .sos-full{grid-column:1/-1}.sos-contact-form .sos-check{flex-direction:row;align-items:flex-start;font-weight:400}.sos-contact-form .sos-check input{width:auto;min-width:20px;margin-top:5px}.sos-contact-form .sos-hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.sos-contact-form button{min-height:48px;padding:12px 20px;background:#173f59;color:#fff;border:0;border-radius:6px;font:inherit;cursor:pointer}.sos-contact-form button:disabled{opacity:.6;cursor:wait}.sos-contact-form [role=status]{margin:0}.sos-consent button:focus-visible,.sos-cookie-settings:focus-visible,.sos-contact-form :focus-visible{outline:3px solid #bd7b00;outline-offset:3px}@media(max-width:600px){.sos-contact-form{grid-template-columns:1fr}.sos-consent{padding:15px;left:8px;right:8px;bottom:78px}.sos-cookie-settings{bottom:78px}}

.sos-email-fallback[hidden]{display:none!important}.sos-email-fallback{padding:18px;border:1px solid #bdc8d3;border-radius:8px}.sos-email-fallback a{color:#174767;text-decoration:underline}.sos-email-fallback textarea{margin-bottom:12px}
/* Contact and complaint forms */
#demande-contact,#reclamation.form-layout{box-sizing:border-box;display:grid;grid-template-columns:minmax(220px,.68fr) minmax(0,1.32fr);gap:clamp(24px,5vw,72px);align-items:start;max-width:1180px;width:calc(100% - 48px);margin:clamp(36px,6vw,80px) auto;padding:0;background:transparent}
.form-layout .form-intro{padding-top:16px;border-top:3px solid #874119;color:#183246}
.form-layout .form-intro h2{font-size:clamp(26px,3vw,38px);line-height:1.15;margin:8px 0 16px}
.form-layout .form-intro p{line-height:1.6;margin:0 0 18px}
.form-layout .form-intro a{display:inline-block;color:#173f59;font-weight:700;padding:8px 0}
.form-layout form:is(.sos-contact-form,.complaint-form){box-sizing:border-box;min-width:0;width:100%;max-width:none;margin:0;padding:clamp(18px,3vw,38px);background:white;border:1px solid #c8d1d4;border-radius:10px;color:#173246}
.form-layout .sos-contact-form,.form-layout .complaint-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px}
.form-layout form label:not(.complaint-consent):not(.sos-check){font-size:15px;line-height:1.45;margin:0;min-width:0}
.form-layout .complaint-grid{margin-bottom:20px}
.form-layout form input:not([type=checkbox]),.form-layout form textarea{box-sizing:border-box;width:100%;min-width:0;min-height:46px;font:inherit;font-size:16px;background:#fbfcfc;color:#172b40;border:1px solid #829398;border-radius:5px;padding:10px 12px}
.form-layout form textarea{resize:vertical}
.form-layout :focus-visible{outline:3px solid #874119;outline-offset:2px}
.form-layout form :is(.sos-check,.complaint-consent){display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:10px;font-size:14px;line-height:1.5;font-weight:400}
.form-layout form .complaint-consent{margin:20px 0}
.form-layout form input[type=checkbox]{width:18px;height:18px;margin:2px 0 0;accent-color:#173f59}
.form-layout form button{min-height:48px}
.form-layout form [role=status]:empty{display:none}
.form-layout form button+p{font-size:14px;line-height:1.5;margin:10px 0 0}
@media(max-width:760px){#demande-contact,#reclamation.form-layout{grid-template-columns:minmax(0,1fr);width:calc(100% - 32px);gap:12px}.form-layout .sos-contact-form,.form-layout .complaint-grid{grid-template-columns:minmax(0,1fr)}.form-layout form button[type=submit]{width:100%}}

.sos-consent{box-sizing:border-box;max-width:840px;padding:20px 24px;border:1px solid #9baab8;border-top:4px solid #173f59;background:#fff;color:#15283c;font-size:16px;box-shadow:0 6px 32px #10203040}
.sos-consent button{min-height:46px;font-weight:650}
@media(max-width:780px){.sos-consent{bottom:calc(68px + env(safe-area-inset-bottom));left:10px;right:10px;padding:14px 16px;max-height:calc(100dvh - 86px - env(safe-area-inset-bottom));overflow:auto}}
.sos-consent:not([hidden])+.sos-cookie-settings{display:none}
