.efg-gallery-page{max-width:1250px;margin:0 auto;padding:clamp(8px,2vw,26px);color:inherit}
.efg-gallery-nav{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0 32px}
.efg-gallery-nav a{padding:12px 20px;border-radius:999px;border:1px solid rgba(61,95,133,.22);background:linear-gradient(125deg,#f5f8fb,#eaf4fd);text-decoration:none;color:#173f64;font-weight:650;transition:transform .15s}
.efg-gallery-nav a:hover,.efg-gallery-nav a:focus-visible{transform:translateY(-2px);outline-offset:3px}
.efg-gallery-section{scroll-margin-top:110px;padding:22px 0 44px;border-bottom:1px solid rgba(88,123,153,.17)}
.efg-gallery-section h2{font-size:clamp(1.5rem,3vw,2.15rem);margin:0 0 12px}
.efg-gallery-section>p{max-width:850px;line-height:1.7;margin:0 0 26px}
.efg-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.efg-gallery-card{border:1px solid rgba(93,111,145,.18);border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 10px 26px rgba(24,45,73,.065)}
.efg-gallery-card img,.efg-gallery-video,.efg-gallery-media{display:block;width:100%;aspect-ratio:4/3;object-fit:contain;background:#f0f3f8}
.efg-gallery-card a:focus-visible{outline:3px solid #005c98;outline-offset:-3px}
.efg-gallery-card-copy{padding:16px 18px 19px;color:#173249}
.efg-gallery-card h3{font-size:1.12rem;line-height:1.35;margin:0 0 7px}
.efg-gallery-card p{font-size:.93rem;line-height:1.5;margin:.3rem 0}
/* Titres pastel de la charte Echografilm et mention discrète par photo — v1.3.149. */
.efg-gallery-card{--efg-gallery-title-bg:rgba(255,85,118,.18);--efg-gallery-title-accent:var(--efg-pink,#ff5576)}
.efg-gallery-grid>.efg-gallery-card:nth-child(5n+2){--efg-gallery-title-bg:rgba(243,157,52,.19);--efg-gallery-title-accent:var(--efg-orange,#f39d34)}
.efg-gallery-grid>.efg-gallery-card:nth-child(5n+3){--efg-gallery-title-bg:rgba(103,186,252,.20);--efg-gallery-title-accent:var(--efg-sky,#67bafc)}
.efg-gallery-grid>.efg-gallery-card:nth-child(5n+4){--efg-gallery-title-bg:rgba(168,203,45,.20);--efg-gallery-title-accent:var(--efg-green,#a8cb2d)}
.efg-gallery-grid>.efg-gallery-card:nth-child(5n+5){--efg-gallery-title-bg:rgba(239,196,77,.22);--efg-gallery-title-accent:var(--efg-yellow,#efc44d)}
.efg-gallery-card .efg-gallery-card-title{margin:-16px -18px 14px;padding:14px 16px;border-left:4px solid var(--efg-gallery-title-accent);background:var(--efg-gallery-title-bg);color:#3f3f47;font-size:1.12rem;line-height:1.35;letter-spacing:0;overflow-wrap:anywhere}
.efg-gallery-card .efg-gallery-note-marker{font-family:Arial,sans-serif;font-size:.7em;line-height:0;vertical-align:super}
.efg-gallery-card .efg-gallery-photo-note{margin:12px 0 0;color:#626875;font-size:13px;line-height:1.45;font-weight:400}
.efg-gallery-photo-note small{display:block;font-size:inherit;line-height:inherit}
.efg-gallery-card .efg-gallery-week{font-weight:650;color:#235b8c}
.efg-gallery-placeholder,.efg-gallery-empty{display:grid;place-items:center;text-align:center;color:#526879;background:#f6f8fa;padding:26px;border-radius:12px;min-height:100px}
.efg-gallery-final-note{font-size:.9rem;line-height:1.6;opacity:.85;margin:24px 0}
/* Palette du site ; priorité sur la couleur bleue des liens du contenu du thème. */
.efg-gallery-page .efg-gallery-cta a{display:inline-block;max-width:100%;border-radius:999px;padding:14px 25px;background:var(--efg-orange,#f39d34);color:#20243a!important;text-decoration:none!important;font-weight:700;line-height:1.4;overflow-wrap:anywhere;transition:box-shadow .15s ease}
.efg-gallery-page .efg-gallery-cta--booking a{background:var(--efg-pink,#ff5576)}
.efg-gallery-page .efg-gallery-cta a:hover{color:#20243a!important;box-shadow:0 5px 16px rgba(32,36,58,.2)}
.efg-gallery-page .efg-gallery-cta a:focus-visible{outline:3px solid #20243a;outline-offset:4px;color:#20243a!important}
.efg-gallery-section .efg-compare-carousel{max-width:920px;margin:10px auto}
.efg-gallery-lightbox{width:min(94vw,1200px);max-width:1200px;max-height:94vh;padding:30px 15px 15px;border:0;border-radius:16px;background:#111;overflow:auto}
.efg-gallery-lightbox::backdrop{background:rgba(4,13,27,.89)}
.efg-gallery-lightbox img{display:block;max-width:100%;max-height:83vh;width:auto;height:auto;margin:auto;object-fit:contain}
.efg-gallery-lightbox-close{position:absolute;right:6px;top:0;border:0;background:transparent;color:#fff;cursor:pointer;font-size:2.25rem;line-height:1}
@media(max-width:900px){.efg-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.efg-gallery-grid{grid-template-columns:1fr}.efg-gallery-nav a{padding:10px 14px;font-size:.9rem}.efg-gallery-section{padding-top:18px}}
@media(prefers-reduced-motion:reduce){.efg-gallery-nav a{transition:none}}

.efg-real-pairs{grid-template-columns:repeat(2,minmax(0,1fr))}
.efg-gallery-pair-compare{padding:0 12px}
.efg-real-pairs .efg-compare-carousel{margin:0}
.efg-real-pairs .efg-before-after{min-height:0;border-radius:12px;box-shadow:none}
/* Les règles des photos seules ne doivent pas déformer les calques du comparateur. */
.efg-real-pairs .efg-before-after img{position:absolute;inset:0;width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:contain;background:#111}
.efg-real-pairs .efg-compare-label{top:10px;padding:7px 9px;font-size:11px}
.efg-real-pairs .efg-compare-label-before{left:10px}.efg-real-pairs .efg-compare-label-after{right:10px}
.efg-real-pairs .efg-compare-divider span{width:40px;height:40px;font-size:20px}
.efg-real-pairs .efg-compare-help{padding:0;font-size:12px}
.efg-gallery-cta a{margin-bottom:8px}
@media(max-width:600px){.efg-real-pairs{grid-template-columns:1fr}}
