
/* Approved identity and content layout. */
[hidden]{display:none!important}
.brand-with-logo{flex-direction:row;align-items:center;gap:14px;max-width:430px}
.brand-text{display:flex;flex-direction:column;min-width:0}
.brand-logo{width:68px;height:40px;object-fit:contain;flex:0 0 68px}
.brand-with-logo .brand-name{font-size:26px;letter-spacing:0}
.brand-with-logo .brand-legal{max-width:320px}
.hero{grid-template-columns:1.1fr 1.15fr;gap:48px}
.hero-photo{min-width:0}.hero-photo img{width:100%;height:auto;aspect-ratio:1.5;object-fit:contain}
.hero-photo figcaption{font-size:11px;color:var(--color-muted);margin-top:12px}
summary{cursor:pointer;min-height:44px;padding-block:12px;color:var(--color-gold);font-size:13px}
summary:focus-visible{outline:2px solid var(--color-gold);outline-offset:4px}
details{margin-top:12px}details p,.section-copy{color:var(--color-muted);font-size:14px;margin-top:16px;max-width:680px}
.business{background:var(--color-surface)}.business h2{margin-bottom:24px}
.profile-id{color:var(--color-gold)!important}
#equipe .office-photo{max-width:380px}#equipe .office-photo img{max-height:500px;object-fit:contain}
.gallery .al-copy{font-size:14px;color:var(--color-muted);margin-top:24px}
.gallery .al-label{font-size:10px;letter-spacing:.2em;color:var(--color-gold);margin-bottom:24px}
.gallery button{cursor:pointer;color:var(--color-text);background:transparent;min-height:44px}
.gallery .al-gallery-large button{border:1px solid var(--color-line);padding:10px 16px;margin-bottom:16px}
.map-consent{width:100%;margin-top:24px;padding:24px;border:1px solid var(--color-line);font-size:13px;color:var(--color-muted)}
.map-consent .button{margin-top:18px;cursor:pointer;border:0}.map-consent:has(iframe){padding:0}.map-consent iframe{margin-top:0}
.privacy{padding-block:24px}.privacy details p{max-width:900px}

.gallery .al-gallery-head{display:flex;justify-content:space-between;gap:20px;align-items:end}
.gallery .al-gallery-window{overflow:hidden;position:relative;margin-top:24px;touch-action:pan-y}
.gallery .al-gallery-row{display:flex;gap:16px;transition:transform 950ms cubic-bezier(.22,.61,.36,1);will-change:transform}
.gallery .al-gallery-row figure{flex:0 0 calc((100% - 32px)/3);min-width:0}
.gallery .al-gallery-row button{display:block;padding:0;border:0;width:100%;text-align:left;touch-action:pan-y}
.gallery .al-gallery-row img{width:100%;height:230px;display:block;object-fit:contain;background:var(--color-surface);user-select:none;-webkit-user-drag:none}
.gallery .al-gallery-row figcaption{font-size:12px;color:var(--color-muted);padding-block:10px}
.gallery .al-gallery-large{margin-top:20px;border-top:1px solid var(--color-line);padding-top:20px}
.gallery .al-gallery-large img{width:100%;max-height:470px;object-fit:contain;display:block;background:var(--color-surface)}
.gallery .al-gallery-large figcaption{font-size:13px;color:var(--color-muted);margin-top:12px}
/* Progressive enhancement: all photos remain available without scripts. */
.gallery:not(.gallery-ready) .al-gallery-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));transform:none}
@media(max-width:760px){
 .brand-with-logo{max-width:calc(100% - 90px);gap:10px}.brand-logo{width:54px;height:32px;flex-basis:54px}
 .brand-with-logo .brand-name{font-size:clamp(17px,4vw,23px)}.hero{grid-template-columns:1fr;gap:32px}
 #equipe .office-photo{order:0;justify-self:center}.hero-photo{width:100%}
 .gallery .al-gallery-row figure{display:block;flex-basis:100%}.gallery .al-gallery-row img{height:330px;object-fit:contain}
 .gallery:not(.gallery-ready) .al-gallery-row{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.gallery .al-gallery-row{transition:none;will-change:auto}}

/* Keep the brand and menu trigger in the same mobile header row. */
@media (max-width:760px) {
 .site-header .header-inner {
  display:grid;
  grid-template-columns:minmax(0,1fr) 44px;
  column-gap:12px;
  align-items:center;
 }
 .site-header .brand-with-logo {
  grid-column:1;
  grid-row:1;
  max-width:none;
  width:100%;
  min-width:0;
 }
 .js .site-header .menu-toggle {
  grid-column:2;
  grid-row:1;
  justify-self:end;
  justify-content:center;
  width:44px;
  height:44px;
  min-width:44px;
  padding:0;
  gap:0;
  font-size:0;
 }
 .site-header .menu-toggle span {font-size:20px;line-height:1}
 .site-header .navigation {grid-column:1 / -1;min-width:0}
}

/* Translucent navigation stays at the outside edges of the visible photos. */
.gallery .gallery-arrow {
 position:absolute;top:115px;transform:translateY(-50%);z-index:2;
 display:flex;align-items:center;justify-content:center;
 width:44px;height:44px;min-height:44px;padding:0;border-radius:50%;
 background:rgba(11,11,11,.28);border:1px solid rgba(196,167,108,.45);
 color:var(--color-text);opacity:.65;cursor:pointer;
 transition:opacity .2s ease,background .2s ease,border-color .2s ease;
}
.gallery #gallery-prev {left:10px}
.gallery #gallery-next {right:10px}
.gallery .gallery-arrow:hover,.gallery .gallery-arrow:focus-visible {
 opacity:1;background:rgba(11,11,11,.75);border-color:var(--color-gold);
}
.gallery .gallery-arrow:focus-visible {outline:2px solid var(--color-gold);outline-offset:3px}
.gallery .gallery-arrow svg {pointer-events:none;flex-shrink:0}
@media(max-width:760px){.gallery .gallery-arrow{top:165px}}
