/* L'agence (design v3 "Noir"): small additions on top of app.css, scoped to this page. Tokens of app.css only. */
.p-agence figure{margin:0}
.p-agence .ag-split{align-items:stretch}

/* map box: the office photo as the cover, the Google map appended by site.js only after the tap */
.p-agence .x-map{position:relative;min-height:340px;border-radius:6px;overflow:hidden;background:var(--graphite);color:var(--on-dark);isolation:isolate}
.p-agence .x-map-ph{position:absolute;inset:0;z-index:-1}
.p-agence .x-map-ph img{width:100%;height:100%;object-fit:cover;filter:saturate(.85);transition:transform 1.6s var(--ease-out)}
.p-agence .x-map:hover .x-map-ph img{transform:scale(1.03)}
.p-agence .x-map-ph:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,10,11,.92) 0%,rgba(10,10,11,.55) 42%,rgba(10,10,11,0) 75%)}
.p-agence .x-map-in{position:absolute;left:0;right:0;bottom:0;padding:20px 22px 18px}
.p-agence .x-map-k{display:flex;align-items:center;gap:8px;margin:0 0 4px;font:700 20px/1.1 var(--serif);color:#fff}
.p-agence .x-map-k svg{width:18px;height:18px;color:#e05a63;flex:none}
.p-agence .x-map-a{margin:0 0 14px;font-size:14.5px;color:#dedad4}
.p-agence .x-map-b{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px}
.p-agence .x-map-b .link{color:#f0b8bc}
.p-agence .x-map-n{margin:12px 0 0;font-size:12px;color:var(--muted-d)}
.p-agence .x-map iframe{position:absolute;inset:0;z-index:3;width:100%;height:100%;border:0;background:var(--stone)}
@media (min-width:900px){.p-agence .x-map{min-height:420px}}

/* hours line in the light pane, reviews band */
.p-agence .ag-hours{display:flex;justify-content:space-between;gap:12px;margin:16px 0 0;padding:12px 0 0;border-top:1px solid var(--line);font-size:15px}
.p-agence .ag-hours span{font:600 11px/1.8 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.p-agence .ag-hours b{color:var(--ink)}
.p-agence .pane .cta-btns{margin-top:16px}
.p-agence .ag-avis{display:grid;gap:18px;align-items:center}
.p-agence .ag-avis h2{margin-bottom:8px}
.p-agence .ag-avis .prose p:last-child{margin:0}
@media (min-width:860px){.p-agence .ag-avis{grid-template-columns:1fr auto;gap:40px}}
.p-agence .x-map-ph img{object-position:0% 50%}
/* phones: the photo stays whole above the text (the overlay would cover the logo) */
@media (max-width:759px){
  .p-agence .x-map{min-height:0}
  .p-agence .x-map-ph{position:relative;inset:auto;z-index:0;display:block;aspect-ratio:1}
  .p-agence .x-map-ph:after{background:linear-gradient(0deg,var(--graphite) 0%,rgba(27,27,30,0) 30%)}
  .p-agence .x-map-in{position:relative;padding:4px 18px 18px}
}
/* the two panes keep one height; the last line sits at the bottom */
.p-agence .grid-2>.pane{display:flex;flex-direction:column}
.p-agence .grid-2>.pane>.ag-hours,.p-agence .grid-2>.pane>.cta-btns{margin-top:auto;padding-top:16px}
.p-agence .grid-2>.pane>.prose{margin-bottom:8px}
