/* Deployment finishing: supplied visuals, contact review and accessible navigation. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.founders-photo-frame{margin:0;aspect-ratio:4/3;border-radius:var(--r);overflow:hidden;background:#b9bdc2}
.founders-photo-frame img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 62%}
.founders-photo-about{max-width:820px}
.about-page .hero>.wrap:first-child{transform:none!important;opacity:1!important;will-change:auto}
.skip-link{position:fixed;top:-100px;left:18px;z-index:1000;padding:12px 20px;border-radius:8px;background:#fff;color:#1270cf;box-shadow:0 2px 16px #0003}
.skip-link:focus{top:10px}
:focus-visible{outline:3px solid #3795ef;outline-offset:5px}
main:focus{outline:none}
[id]{scroll-margin-top:80px}
.site-photo{width:100%;height:100%;object-fit:cover;display:block}
.slot>.site-photo{position:absolute;inset:0}
.h-card-media>.site-photo{width:100%;height:100%;object-fit:cover}
.team-pair{width:100%;height:100%;display:grid;grid-template-columns:1fr 1fr;gap:3px;background:#eef0f3;overflow:hidden}
.team-pair img{width:100%;height:100%;min-height:0;object-fit:cover;object-position:center 30%}
.slot>.team-pair{position:absolute;inset:0}
.slot:has(>.site-photo[src*="team-"]){min-height:0;aspect-ratio:1}
.slot>.site-photo[src*="team-"]{object-position:50% 22%}
.stock-contact{display:grid;grid-template-columns:1.1fr 1fr;align-items:stretch;gap:36px;background:#f5f5f7;border-radius:24px;overflow:hidden}
.stock-contact>div{padding:48px 0 48px 44px}
.stock-contact h2{font-size:clamp(32px,4vw,50px);margin-top:16px}
.stock-contact .sub{font-size:19px;margin:22px 0 28px}
.stock-contact>img{height:100%;width:100%;object-fit:cover}
.map-card{margin-top:30px;padding:32px;border:1px solid #d2d2d7;border-radius:22px;background:linear-gradient(120deg,#f5f5f7,#e8edf3);display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.map-card strong{font-size:24px;line-height:1.25;font-weight:500}
.map-card .lnk{font-size:15px}
.form-channel-note{margin-bottom:24px;padding:14px 16px;background:#f1f6fc;border-radius:12px;font-size:14px;line-height:1.55;color:#3d536b}
.review-dialog{border:0;border-radius:24px;padding:38px;width:min(640px,calc(100% - 28px));max-height:calc(100svh - 28px);overflow:auto;color:#1d1d1f;background:#fff;box-shadow:0 24px 100px #0004}
.review-dialog::backdrop{background:#0e0f11b8;backdrop-filter:blur(6px)}
.review-dialog h2{font-size:34px;margin:14px 0 18px;padding-right:16px}
.review-dialog>.muted{font-size:16px;line-height:1.6;margin-bottom:24px}
.review-close{position:absolute;right:16px;top:12px;width:36px;height:36px;border:0;border-radius:50%;background:#f1f1f4;font-size:26px;cursor:pointer;color:#333}
.review-dialog .review-text{min-height:200px;background:#f7f8fa;font-size:14px;line-height:1.55;resize:vertical;color:#1d1d1f}
.review-note{font-size:13px;color:#6e6e73;margin:0 0 20px}
.review-dialog .actions{gap:10px}
.review-dialog .btn{font-size:14px;padding:0 20px}
.review-status{min-height:22px;margin-top:14px;color:#166b2f}
.review-edit,.clear-draft{border:0;background:none;color:#1270cf;padding:12px 0;font:inherit;font-size:14px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.clear-draft{margin-top:18px;display:block}
.nav-dm{visibility:hidden}
.nav-drop.on .nav-dm,.nav-drop:hover .nav-dm,.nav-drop:focus-within .nav-dm{visibility:visible}
@media(max-width:900px){
 .h-sim,.h-ben,.h-panel,.h-state,.h-contact,.h-faq{grid-template-columns:minmax(0,1fr)}
 .h-faq>*,.h-contact>*,.h-sim>*{min-width:0}
 .h-tabs{max-width:100%}
}
@media(max-width:700px){
 .stock-contact{grid-template-columns:1fr;gap:0}
 .stock-contact>div{padding:30px 24px}
 .stock-contact>img{max-height:250px;aspect-ratio:4/3}
 .review-dialog{padding:30px 22px}
 .review-dialog h2{font-size:29px}
 .review-dialog .actions{display:grid;grid-template-columns:1fr}
 .map-card{padding:24px}
 .map-card .lnk{overflow-wrap:anywhere}
 .h-lines{font-size:clamp(36px,9vw,58px)}
 .h-hero-txt .actions{gap:10px}
 .h-hero-txt .btn{font-size:14px;padding:0 19px}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 .rv{opacity:1!important;transform:none!important}
 .h-line{filter:none!important;transition:none!important}
}

/* Navigation tactile et lecture des formulaires */
body.menu{overflow:hidden}
body.menu .mbar,body.menu .wfloat{visibility:hidden}
body.menu .drawer{overscroll-behavior:contain;padding-bottom:calc(28px + env(safe-area-inset-bottom))}
a,button,input,select,textarea{touch-action:manipulation}
.review-dialog .review-text{font-size:16px}
.review-dialog a:not(.btn),.stack a,.form-channel-note a{text-decoration:underline;text-underline-offset:.17em}
.review-dialog .btn{white-space:normal}
.mbar{padding-left:max(10px,env(safe-area-inset-left));padding-right:max(10px,env(safe-area-inset-right))}
@media(max-width:700px){
 .field input,.field select,.field textarea{font-size:16px}
 .field,.row>*{min-width:0}
 form.card[style]{padding:clamp(18px,5vw,30px)!important}
 .review-dialog{padding-bottom:max(22px,env(safe-area-inset-bottom))}
 body{padding-bottom:calc(74px + env(safe-area-inset-bottom))}
 .h-card-media img[src*="/remise"]{object-position:center 48%}
}
@media(prefers-reduced-motion:no-preference) and (min-width:901px){
 .h-track,.mq-track{animation:ev-scroll-marques 90s linear infinite}
 .h-track:hover,.mq-track:hover{animation-play-state:paused}
}
@keyframes ev-scroll-marques{to{transform:translateX(-50%)}}
@media(max-width:700px){
 html{scroll-behavior:auto}
 .chk{min-height:44px;align-items:flex-start;gap:11px}
 .chk input[type=checkbox]{width:22px;height:22px;flex:0 0 22px;accent-color:var(--blue)}
 .chk span{cursor:pointer}
}
