
/* Galerie métier : complément visuel au site existant, sans suivi ni dépendance externe */
.showcase-figure{position:relative;margin:34px 0 0;overflow:hidden;background:#122f43;isolation:isolate;min-height:260px;max-height:410px;box-shadow:0 20px 44px rgba(15,43,59,.13)}
.showcase-figure img{width:100%;height:350px;object-fit:cover;object-position:center;display:block;filter:saturate(.96)}
.showcase-figure::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,31,48,.82),rgba(9,31,48,.08) 72%);pointer-events:none}
.showcase-caption{position:absolute;left:30px;bottom:26px;right:25px;z-index:2;color:white;max-width:570px}
.showcase-caption .small{display:block;color:#a9daef;text-transform:uppercase;letter-spacing:.17em;font-size:10px;font-weight:800}
.showcase-caption strong{display:block;margin-top:9px;font-size:clamp(24px,3.8vw,42px);line-height:1.1;letter-spacing:-.02em}
.showcase-caption span:last-child{display:block;font-size:12px;color:#d1e7f3;margin-top:12px}
.image-section{padding:76px 0;background:#f2f7f9}
.image-section .sect-head{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap;margin-bottom:25px}
.image-section .sect-head p{max-width:540px;line-height:1.65;color:#607786;margin:0}
.image-section h2{font-size:clamp(27px,3.3vw,42px);letter-spacing:-.03em;line-height:1.15;margin:0}
.visual-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.visual-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.visual-card{display:flex;flex-direction:column;min-width:0;background:white;border:1px solid #d8e4e9;color:#193d54;overflow:hidden}
.visual-card .visual-frame{display:block;height:228px;background:#1c4057;overflow:hidden}
.visual-card img{height:100%;width:100%;object-fit:cover;transition:transform .25s ease;display:block}
.visual-card:hover img{transform:scale(1.035)}
.visual-copy{padding:21px 22px 24px}
.visual-copy .visual-label{display:block;color:#377a9b;font-size:10px;font-weight:850;letter-spacing:.16em;text-transform:uppercase}
.visual-copy h3{font-size:20px;margin:8px 0 9px;letter-spacing:-.022em}
.visual-copy p{color:#617886;line-height:1.7;font-size:13px;margin:0}
.visual-copy a{display:inline-block;margin-top:14px;color:#236d92;font-size:13px;font-weight:800}
.visual-disclaimer{font-size:11px;line-height:1.7;color:#708491;margin:20px 0 0}
.doc-spotlight{display:grid;grid-template-columns:1fr 1fr;gap:0;background:#123247;color:white;overflow:hidden;margin-top:32px}
.doc-spotlight>img{display:block;width:100%;height:100%;min-height:310px;object-fit:cover}
.doc-spotlight .doc-copy{padding:40px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.doc-spotlight .doc-copy small{font-size:11px;color:#a5dbed;letter-spacing:.18em;font-weight:850}
.doc-spotlight .doc-copy h3{font-size:clamp(24px,3.1vw,37px);margin:15px 0 13px;letter-spacing:-.025em;line-height:1.1}
.doc-spotlight .doc-copy p{color:#c7dce7;line-height:1.7;font-size:14px}
.doc-spotlight a{padding:15px 20px;background:#e5f4fa;color:#163e56;font-size:12px;font-weight:850;display:inline-flex;margin-top:12px}
.book-visual{margin-top:32px;background:#0f3045;border:1px solid #32637e;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;color:#fff;min-height:320px;overflow:hidden}
.book-cover{height:100%;padding:40px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(145deg,#153c53,#265e80)}
.book-cover .book-kicker{font-size:12px;letter-spacing:.17em;color:#b5deee;font-weight:850}
.book-cover strong{font-size:clamp(43px,6vw,75px);line-height:.97;letter-spacing:-.06em}
.book-cover strong em{color:#9cd2e7;font-style:normal}
.book-cover small{font-size:12px;color:#c5deea}
.book-flow{padding:35px;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.book-flow>div{border:1px solid #5d96b1;padding:23px 14px;background:#ffffff0b}
.book-flow b{font-size:14px;letter-spacing:.02em}
.book-flow span{display:block;font-size:11px;margin-top:7px;color:#c7dce5}
.book-flow .index{display:block;font-size:12px;color:#a2d8ea;font-weight:800;margin-bottom:10px}
.quick-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.quick-links a{padding:12px 18px;border:1px solid #96b6c7;color:#244f69;font-size:12px;font-weight:850}
/* Accueil : grandes images sur les six accès, sans changer leur destination. */
.gateway.gateway-visual{padding:0;min-height:360px;}
.gateway.gateway-visual:before{display:none}
.gateway.gateway-visual>.gateway-thumb{height:138px;width:100%;overflow:hidden;background:#1d4760;display:block}
.gateway.gateway-visual>.gateway-thumb img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s}
.gateway.gateway-visual:hover>.gateway-thumb img{transform:scale(1.04)}
.gateway.gateway-visual>.eyenum,.gateway.gateway-visual>.gateway-icon,.gateway.gateway-visual>h3,.gateway.gateway-visual>p,.gateway.gateway-visual>.explore{margin-left:24px;margin-right:24px}
.gateway.gateway-visual>.eyenum{margin-top:19px}
.gateway.gateway-visual>.gateway-icon{display:none}
.gateway.gateway-visual>h3{margin-top:12px}
.gateway.gateway-visual>p{margin-top:7px}
.gateway.gateway-visual>.explore{margin-bottom:22px;margin-top:auto}
.contact-art{display:grid;grid-template-columns:1.15fr 1fr;gap:25px;align-items:stretch;margin-top:30px;background:#153d54;color:#e5f3f9}
.contact-art img{width:100%;height:100%;min-height:260px;object-fit:cover;display:block}
.contact-art div{padding:38px;display:flex;flex-direction:column;justify-content:center}
.contact-art strong{font-size:30px;line-height:1.16;letter-spacing:-.026em}
.contact-art p{font-size:14px;line-height:1.8;color:#c8deea}
.contact-art a{font-size:13px;color:#a9dcf0;font-weight:800}
@media(max-width:830px){.visual-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.doc-spotlight,.contact-art{grid-template-columns:1fr 1fr}.showcase-figure img{height:290px}}
@media(max-width:620px){.image-section{padding:52px 0}.visual-grid,.visual-grid.two,.doc-spotlight,.book-visual,.contact-art{grid-template-columns:1fr}.visual-card .visual-frame{height:215px}.doc-spotlight>img,.contact-art img{height:220px;min-height:0}.doc-spotlight .doc-copy,.contact-art div{padding:26px}.showcase-caption{left:20px;bottom:19px}.showcase-figure img{height:245px}.book-cover{min-height:300px;padding:29px}.book-flow{padding:22px}.gateway.gateway-visual{min-height:330px}}
@media(prefers-reduced-motion:reduce){.visual-card img,.gateway.gateway-visual img{transition:none}}
