/* Barros — carte libre sur le fond de section, défilement vertical natif. */
.brm-section{position:relative;overflow:visible;display:grid;grid-template-columns:minmax(240px,.76fr) minmax(0,1.24fr);align-items:start;gap:clamp(32px,5vw,88px);padding-block:clamp(56px,7vw,112px)}
.brm-copy{align-self:start}
.brm-copy h2{font-family:var(--serif);font-weight:600;font-size:clamp(34px,3.8vw,58px);line-height:1.13;letter-spacing:-.045em;max-width:13ch;margin:18px 0 25px}
.brm-copy>p:not(.eyebrow){max-width:42ch}
.brm-territories{list-style:none;margin:30px 0;padding:0;display:grid;gap:20px}
.brm-territories li{display:grid;grid-template-columns:22px 1fr;align-items:start;gap:14px;margin:0;padding:0}
.brm-territories strong{display:block;font-size:14px;font-weight:650;color:var(--ink)}
.brm-territories small{display:block;color:var(--muted);font-size:12px;margin-top:3px}
.brm-territory-point,.brm-territory-ring,.brm-territory-line{display:block;place-self:start center;margin-top:6px;color:var(--accent)}
.brm-territory-point{width:8px;height:8px;border-radius:50%;background:currentColor;box-shadow:0 0 0 5px color-mix(in srgb,var(--accent) 11%,transparent)}
.brm-territory-ring{width:17px;height:17px;border:1px solid currentColor;border-radius:50%;margin-top:2px}
.brm-territory-line{width:20px;height:9px;border-top:1px solid currentColor;border-bottom:1px solid currentColor;margin-top:5px}
.brm-copy .brm-national{font-size:13px;color:var(--muted);padding-top:19px;border-top:1px solid var(--line)}
.brm-contact{display:inline-flex;gap:18px;align-items:center;margin-top:10px;color:var(--ink);text-decoration:none;font-size:14px;font-weight:650;border-bottom:1px solid var(--accent);padding-bottom:7px}
.brm-contact svg{flex:none;transition:transform .25s ease}
.brm-contact:hover svg{transform:translateX(4px)}
.brm-contact:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.brm-map-track{min-width:0;position:relative}
.brm-shell{
  --brm-sticky-top:112px;--brm-land:#e0dfd6;--brm-brittany:#ede3ce;--brm-depth:#aaafa9;--brm-depth-near:#c3c7be;
  --brm-map-line:#9daba4;--brm-dot:#727d77;--brm-shadow:rgba(53,58,49,.13);--brm-halo:.2;
  position:relative;isolation:isolate;min-width:0;width:100%;background:transparent;border:0;border-radius:0;box-shadow:none;
}
:root[data-theme=dark] .brm-shell{--brm-land:#364447;--brm-brittany:#414b47;--brm-depth:#121c20;--brm-depth-near:#263337;--brm-map-line:#73827f;--brm-dot:#aebbb2;--brm-shadow:rgba(0,0,0,.45);--brm-halo:.26}
.brm-section[data-brm-scroll=sticky] .brm-shell{position:sticky;top:var(--brm-sticky-top)}
.brm-section[data-brm-copy-sticky=true]>.brm-copy{position:sticky;top:112px}
.brm-shell::before{content:"";position:absolute;z-index:-1;pointer-events:none;inset:0 -13% -8% -18%;background:radial-gradient(ellipse at 48% 57%,rgba(247,148,29,.85),rgba(247,148,29,.23) 35%,transparent 67%);opacity:var(--brm-halo);filter:blur(35px);transition:opacity .9s ease}
.brm-stage{position:relative;isolation:isolate;aspect-ratio:900/620;min-height:360px;overflow:hidden}
.brm-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;overflow:visible;transform:perspective(1100px) rotateX(12deg) rotateZ(-1deg);transform-origin:50% 54%}
.brm-depth{stroke:none;transition:fill .7s ease}
.brm-depth-far{fill:var(--brm-depth);filter:drop-shadow(0 12px 11px var(--brm-shadow))}
.brm-depth-near{fill:var(--brm-depth-near)}
.brm-region{fill:var(--brm-land);stroke:var(--brm-map-line);stroke-width:.7px;vector-effect:non-scaling-stroke;transition:fill .7s ease,stroke .7s ease}
.brm-bretagne{fill:var(--brm-brittany)}
.brm-mesh{opacity:.2}
.brm-dots{opacity:.48}
.brm-grid-dot{fill:var(--brm-dot);transition:fill .7s ease}
.brm-grid-mesh{stroke:var(--brm-dot);transition:stroke .7s ease}
.brm-national-spread{fill:var(--accent);opacity:.07}
.brm-spread-land{fill:var(--accent);opacity:.22}
.brm-spread-dots{opacity:.3}
.brm-spread-core-dots{opacity:.9}
.brm-wave-rings circle{fill:none;stroke:var(--accent);stroke-width:1.3px;vector-effect:non-scaling-stroke}
.brm-wave-rings circle:nth-child(2){opacity:.42;stroke-width:.9px}
.brm-wave-rings circle:nth-child(3){opacity:.16;stroke-width:.8px}
.brm-departments{fill:none;stroke:var(--brm-map-line);stroke-width:.65px;opacity:.75;transition:stroke .7s ease}
.brm-departments path{vector-effect:non-scaling-stroke}
.brm-bretagne-outline{fill:none;stroke:var(--accent);stroke-width:1.2px;vector-effect:non-scaling-stroke;opacity:.9}
.brm-region-name{fill:var(--muted);font-family:var(--sans);font-weight:600;font-size:11px;letter-spacing:3px;transition:fill .7s ease}
.brm-france-name{opacity:0}
.brm-bretagne-name{opacity:.78;fill:var(--ink);font-size:10px;letter-spacing:2px}
.brm-location{font-family:var(--sans)}
.brm-location-orbit{fill:none;stroke:var(--accent);stroke-width:.8}
.brm-location-dot{fill:var(--accent);stroke:var(--surface);stroke-width:1.7}
.brm-location-leader{stroke:var(--accent);stroke-width:1.2;fill:none}
.brm-location-plate{fill:var(--surface);stroke:var(--line);stroke-width:.8;transition:fill .7s ease,stroke .7s ease}
.brm-location-name{font-family:var(--serif);font-size:17px;font-weight:600;letter-spacing:-.45px;fill:var(--ink);transition:fill .7s ease}
.brm-location-detail{font-size:11px;fill:var(--muted);letter-spacing:.2px;transition:fill .7s ease}
.brm-compass{position:absolute;bottom:18px;right:16px;color:var(--muted);opacity:.5;pointer-events:none}
@media(max-width:1050px) and (min-width:761px){.brm-section{grid-template-columns:minmax(200px,.8fr) minmax(0,1.2fr);gap:26px}.brm-copy h2{font-size:38px}.brm-stage{min-height:350px}}
@media(max-width:760px){.brm-section{grid-template-columns:1fr;gap:16px;padding-block:54px}.brm-section[data-brm-copy-sticky=true]>.brm-copy{position:static}.brm-copy h2{font-size:36px;max-width:13ch}.brm-copy>p:not(.eyebrow){max-width:52ch}.brm-territories{gap:16px;margin-block:24px}.brm-shell{--brm-sticky-top:84px}.brm-stage{min-height:300px;max-height:420px}.brm-compass{bottom:12px;right:12px}.brm-shell::before{inset:2% -6% 0 -6%;filter:blur(26px)}}
@media(prefers-reduced-motion:reduce){.brm-section .brm-shell,.brm-section .brm-copy{position:relative!important;top:auto!important}.brm-map-track{height:auto!important}.brm-shell,.brm-shell::before,.brm-shell *{transition:none!important;animation:none!important}.brm-canvas{transform:none!important}.brm-contact:hover svg{transform:none}}
