/* Home v3: geometry, tokens and motion extracted from Dimitri's final handoff.
   The DOM is in parts/home-v3-sections.php. */
.aec-v3{ container-type:inline-size;position:relative;width:100%;overflow:clip;background:#F7F7F5;color:#0A0A0B;font-family:"Instrument Sans",Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased; }
.aec-v3 :is(#manifeste,#dossiers,#sav,#avis,#projet,#final) h2{ color:inherit; }
/* Static PHP/no-JS value remains readable; JS controls the v4 scroll scene. */
.aec-v3 #aecSavingBox{ opacity:1 !important;transform:none !important; }
@media (prefers-reduced-motion:no-preference){
  .aec-v3.aec-v3-gain-motion #aecSavingBox{ opacity:var(--gain-opacity,1) !important;transform:translateY(var(--gain-y,0px)) !important;transition:none; }
}
.aec-v3 #aecDelta.aec-v3-gain-positive{ background:#0A0A0B !important;color:#ADE83C !important;border-color:#0A0A0B !important; }
/* Inactive method headings must also meet the text contrast floor on paper. */
.aec-v3 #methode #aecMethodeTrack h3{ color:#6E6E73 !important; }
.aec-v3 #methode #aecMethodeTrack .aec-v3-method-reached h3{ color:#0A0A0B !important; }
.aec-v3 #methode #aecMethodeTrack [data-v3-i].aec-v3-method-reached:is([data-v3-i="9-18"],[data-v3-i="9-29"],[data-v3-i="9-40"],[data-v3-i="9-51"]){ background:#ADE83C !important;border-color:#ADE83C !important;box-shadow:0 0 0 4px rgba(173,232,60,.22) !important; }
.aec-v3 #agences .aec-v3-agency-brand{ background:#0A0A0B !important; }
.aec-v3 #sav :is([data-v3-i="10-27"],[data-v3-i="10-44"]){ color:#B4B4B8 !important; }
/* Server FAQ is expanded and inert until every accordion handler is ready. */
.aec-v3 #faq [data-v3-faq-button]:disabled{ opacity:1;cursor:default; }
.aec-v3 #faq [data-v3-faq-button]:disabled > span:last-child{ display:none; }
@media (prefers-reduced-motion:reduce){
  .aec-v3 #aecSavingBox{ transition:none !important; }
  .aec-v3 #methode #aecMethodeTrack h3{ color:#0A0A0B !important;transition:none !important; }
}
.aec-v3 [data-v3-video-autoplay]{ display:none; }
.aec-v3.aec-v3-video-auto [data-v3-video-autoplay]{ display:inline; }
.aec-v3.aec-v3-video-auto [data-v3-video-manual]{ display:none; }
@media (prefers-reduced-motion:reduce){ .aec-v3.aec-v3-video-auto [data-v3-video-autoplay]{ display:none; } .aec-v3.aec-v3-video-auto [data-v3-video-manual]{ display:inline; } }
.aec-v3 #video [data-v3-i="2-10"]{ bottom:0;pointer-events:none; }
.aec-v3 #aecVideo{ cursor:pointer; }
.aec-v3 #aecVideo:focus-visible{ outline:3px solid #ADE83C;outline-offset:-5px; }
.aec-v3 #video .aec-v3-video-sound{ pointer-events:auto;flex:0 0 auto;min-height:44px;padding:12px 18px;border:1px solid rgba(255,255,255,.3);border-radius:99px;background:rgba(255,255,255,.12);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;font-size:13.5px;font-weight:600;line-height:1;cursor:pointer;transition:background .25s cubic-bezier(.16,.7,.3,1),transform .25s cubic-bezier(.16,.7,.3,1); }
.aec-v3 #video .aec-v3-video-sound:hover,.aec-v3 #video .aec-v3-video-sound:focus-visible{ background:rgba(255,255,255,.22);transform:translateY(-2px); }
.aec-v3 #video .aec-v3-video-sound[hidden]{ display:none; }
.aec-v3 #video .aec-v3-video-nojs{ position:absolute;left:16px;bottom:16px;z-index:3;padding:12px 16px;border-radius:99px;background:#fff;color:#0A0A0B;font-weight:600; }
@media (prefers-reduced-motion:reduce){ .aec-v3 #video .aec-v3-video-sound,.aec-v3 #video .aec-v3-video-sound:hover,.aec-v3 #video .aec-v3-video-sound:focus-visible{ transition:none;transform:none; } }
@media(max-width:520px){ .aec-v3 #video [data-v3-i="2-10"]{ gap:10px; } .aec-v3 #video .aec-v3-video-sound{ padding:12px 14px; } }
.aec-v3 *{ box-sizing:border-box; }
.aec-v3 a{ color:inherit;text-decoration:none; }
.aec-v3 input,.aec-v3 select,.aec-v3 button,.aec-v3 textarea{ font-family:inherit; }
.aec-v3 a:focus-visible,.aec-v3 button:focus-visible,.aec-v3 input:focus-visible,.aec-v3 select:focus-visible,.aec-v3 textarea:focus-visible{ outline:2px solid #84ae2e;outline-offset:3px;border-radius:6px; }

  
  .aec-v3 a:focus-visible,.aec-v3 button:focus-visible,.aec-v3 input:focus-visible,.aec-v3 select:focus-visible,.aec-v3 textarea:focus-visible,.aec-v3 [data-v3-team-card]:focus-visible{ outline: 2px solid #546D1E; outline-offset: 3px; border-radius: 6px; }
  .aec-v3 #manifeste a:focus-visible,.aec-v3 #manifeste button:focus-visible,.aec-v3 #dossiers a:focus-visible,.aec-v3 #dossiers button:focus-visible,.aec-v3 #avis a:focus-visible,.aec-v3 #avis button:focus-visible,.aec-v3 #projet a:focus-visible,.aec-v3 #projet button:focus-visible,.aec-v3 #final a:focus-visible,.aec-v3 #final button:focus-visible{ outline-color:#ADE83C; }
  @media  (prefers-reduced-motion: reduce) { .aec-v3 [style*="aecMarquee"],.aec-v3 [style*="aecShine"],.aec-v3 [style*="aecPulse"],.aec-v3 [style*="aecBreath"],.aec-v3 [style*="aecHalo"],.aec-v3 [style*="aecDrift"]{ animation: none !important; } }
  .aec-v3 ::selection{ background: rgba(173,232,60,.55); }
  
  
  
  
  
  
  @keyframes aecMarquee { from { transform: translate3d(0,0,0); } to { transform: translate3d(-50%,0,0); } }
  @keyframes aecLock { 0% { transform: scale(1); } 40% { transform: scale(1.35); } 70% { transform: scale(.94); } 100% { transform: scale(1); } }
  @keyframes aecPing { 0% { transform: scale(.4); opacity: .8; } 100% { transform: scale(2.4); opacity: 0; } }
  @keyframes aecUnfold { from { opacity:0; transform:perspective(1000px) rotateY(-11deg) translateX(-10px); } to { opacity:1; transform:none; } }
  @keyframes aecMaskUp { from { transform:translateY(112%); } to { transform:translateY(0); } }
  @keyframes aecRule { from { transform:scaleX(0); } to { transform:scaleX(1); } }
  @keyframes aecPulse { 0%,100% { opacity: 1; transform: scale(1); } 50% { opacity: .3; transform: scale(.7); } }
  @keyframes aecIn { from { opacity: 0; transform: translateY(22px); } to { opacity: 1; transform: none; } }
  @keyframes aecMask { from { opacity: 0; clip-path: inset(0 0 104% 0); transform: translateY(10px); } to { opacity: 1; clip-path: inset(0 0 -12% 0); transform: none; } }
  @keyframes aecBreath { 0%,100% { opacity: .4; transform: scale(.9); } 50% { opacity: 1; transform: scale(1.08); } }
  @keyframes aecHalo { 0%,100% { box-shadow: 0 16px 34px -20px rgba(10,10,11,.95), 0 0 0 0 rgba(173,232,60,.5); } 55% { box-shadow: 0 16px 34px -20px rgba(10,10,11,.95), 0 0 0 9px rgba(173,232,60,0); } }
  @keyframes aecShine { 0% { transform: translateX(-130%) skewX(-14deg); } 55%,100% { transform: translateX(320%) skewX(-14deg); } }
  @keyframes aecMarkIn { from { background-size: 0% 100%; } to { background-size: 100% 100%; } }
  @keyframes aecInB { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
  @keyframes aecFade { from { opacity: 0; } to { opacity: 1; } }
  @keyframes aecFadeB { from { opacity: 0; } to { opacity: 1; } }
  @keyframes aecRuleB { from { transform: scaleX(0); } to { transform: scaleX(1); } }
  @keyframes aecMarkInB { from { background-size: 0% 100%; } to { background-size: 100% 100%; } }
  .aec-v3 .aec-in [data-mark],.aec-v3 [data-mark].aec-in{ animation: aecMarkIn 1.05s cubic-bezier(.16,.7,.3,1) .55s forwards; }
  .aec-v3 button:hover [data-cta-arrow]{ transform: translateX(5px); }
  .aec-v3 [data-hscroll]::-webkit-scrollbar{ display: none; }
  .aec-v3 [data-hscroll] > button{ scroll-snap-align: start; scroll-margin: 0 20px; flex: 0 0 auto; }
  .aec-v3 [data-hscroll]::after{ content: ""; flex: 0 0 14px; }
  @keyframes aecLight { from { background-position: 0% 0; filter: drop-shadow(0 0 0 rgba(173,232,60,0)); } to { background-position: 100% 0; filter: drop-shadow(0 0 16px rgba(173,232,60,.5)); } }
  .aec-v3 .aec-in [data-glow],.aec-v3 [data-glow].aec-in{ animation: aecLight 1.5s cubic-bezier(.16,.7,.3,1) .7s forwards; }
  @keyframes aecStar { 0% { opacity: 0; transform: scale(.3) rotate(-30deg); } 60% { opacity: 1; transform: scale(1.3) rotate(6deg); } 100% { opacity: 1; transform: scale(1) rotate(0); } }
  .aec-v3 [data-star]{ transform-origin: 50% 55%; }
  .aec-v3.aec-v3-observe [data-star]{ opacity:0; }
  .aec-v3 .aec-in [data-star]{ animation: aecStar .55s cubic-bezier(.16,.7,.3,1) forwards; }
  .aec-v3 .aec-in [data-star]:nth-child(1){ animation-delay: .35s; } .aec-v3 .aec-in [data-star]:nth-child(2){ animation-delay: .47s; } .aec-v3 .aec-in [data-star]:nth-child(3){ animation-delay: .59s; } .aec-v3 .aec-in [data-star]:nth-child(4){ animation-delay: .71s; } .aec-v3 .aec-in [data-star]:nth-child(5){ animation-delay: .83s; }
  @media  (prefers-reduced-motion: reduce) { .aec-v3 [data-star]{ opacity: 1 !important; animation: none !important; } }
  @media  (prefers-reduced-motion: reduce) { .aec-v3 [data-glow]{ background-position: 100% 0 !important; filter: drop-shadow(0 0 16px rgba(173,232,60,.5)); } .aec-v3 .aec-in [data-glow],.aec-v3 [data-glow].aec-in{ animation: none; } }
  @media  (prefers-reduced-motion: reduce) { .aec-v3 [data-mark]{ background-size: 100% 100% !important; } .aec-v3 .aec-in [data-mark],.aec-v3 [data-mark].aec-in{ animation: none; } }
  @keyframes aecDrift { from { background-position-x: 0; } to { background-position-x: -122px; } }
  @keyframes aecRail { 0% { transform: translateX(-100%); } 58%, 100% { transform: translateX(434%); } }
  .aec-v3.aec-v3-observe [data-reveal]:not(.aec-in),.aec-v3.aec-v3-observe [data-mask]:not(.aec-in){ opacity: 0; }
  .aec-v3 [data-reveal].aec-in{ animation: aecIn .85s cubic-bezier(.16,.7,.3,1) forwards; }
  .aec-v3 [data-mask].aec-in{ animation: aecMask 1s cubic-bezier(.16,.7,.3,1) forwards; }
  .aec-v3 [data-reveal="1"].aec-in,.aec-v3 [data-mask="1"].aec-in{ animation-delay: .09s; }
  .aec-v3 [data-reveal="2"].aec-in,.aec-v3 [data-mask="2"].aec-in{ animation-delay: .18s; }
  .aec-v3 [data-reveal="4"].aec-in{ animation-delay: .36s; }
  .aec-v3 [data-reveal="5"].aec-in{ animation-delay: .45s; }
  .aec-v3 [data-reveal="3"].aec-in{ animation-delay: .27s; }
  @media  (prefers-reduced-motion: reduce) { .aec-v3 [data-reveal],.aec-v3 [data-mask],.aec-v3.aec-v3-observe [data-reveal]:not(.aec-in),.aec-v3.aec-v3-observe [data-mask]:not(.aec-in){ opacity: 1; } .aec-v3 [data-reveal].aec-in,.aec-v3 [data-mask].aec-in{ animation: none; } .aec-v3 [data-rail]{ animation: none !important; transform: translateX(117%); } }
  .aec-v3 [data-v3-marquee-viewport]{ max-width:100%; overflow-x:auto; overflow-y:hidden; }
  .aec-v3:not(.aec-v3-marquee-active) [data-v3-marquee-track="banques"] > :nth-child(n+10),.aec-v3:not(.aec-v3-marquee-active) [data-v3-marquee-track="avis"] > [aria-hidden="true"]{ display:none !important; }
  .aec-v3.aec-v3-marquee-active [data-v3-marquee-track="banques"]{ animation:aecMarquee 52s linear infinite; }
  .aec-v3.aec-v3-marquee-active [data-v3-marquee-track="avis"]{ animation:aecMarquee 68s linear infinite; }
  .aec-v3 [data-v3-marquee-track]:hover,.aec-v3 [data-v3-marquee-viewport]:focus-within [data-v3-marquee-track],.aec-v3 [data-v3-marquee-track].aec-v3-marquee-paused{ animation-play-state:paused !important; }
  .aec-v3 [data-v3-marquee-toggle]{ display:block;margin:0 24px 0 auto;padding:7px 12px;min-height:36px;border:1px solid currentColor;border-radius:99px;background:transparent;color:inherit;font-size:12px;font-weight:600;cursor:pointer; }
  .aec-v3 [data-v3-marquee-toggle][hidden]{ display:none; }
  @media (prefers-reduced-motion:reduce){
    .aec-v3 [data-v3-marquee-track],.aec-v3 [style*="animation:aecUnfold"],.aec-v3 [style*="animation:aecMaskUp"],.aec-v3 [style*="animation:aecRule"],.aec-v3 [style*="animation:aecIn"],.aec-v3 [style*="animation:aecFade"],.aec-v3 [style*="animation:aecMbIn"]{ animation:none !important; }
    .aec-v3 [data-v3-marquee-track="banques"] > :nth-child(n+10),.aec-v3 [data-v3-marquee-track="avis"] > [aria-hidden="true"]{ display:none !important; }
    .aec-v3 [data-v3-marquee-toggle]{ display:none !important; }
    .aec-v3 [data-mobile-bar]{ animation:none !important; }
    .aec-v3 [data-v3-i="0-19"]::before,.aec-v3 [data-v3-i="0-105"]::before,.aec-v3 [data-v3-i="15-46"]::before,.aec-v3 [data-v3-i="0-88"]::after{ animation:none !important; }
  }
  .aec-v3 [data-dd] > [data-dd-panel]{ opacity: 0; visibility: hidden; transform: translateY(-6px); transition: opacity .22s, transform .22s cubic-bezier(.16,.7,.3,1), visibility 0s linear .3s; }
  .aec-v3 [data-dd] > [data-dd-panel]::before{ content: ""; position: absolute; left: 0; right: 0; bottom: 100%; height: 36px; }
  .aec-v3 [data-dd]:hover > [data-dd-panel],.aec-v3 [data-dd]:focus-within > [data-dd-panel]{ opacity: 1; visibility: visible; transform: none; transition-delay: 0s; }
  /* aec-mobile : barre d'action fixe, cibles tactiles ≥ 44 px */
  @keyframes aecMbIn { from { opacity: 0; transform: translate(-50%, 26px); } to { opacity: 1; transform: translate(-50%, 0); } }
  @keyframes aecMbShine { 0% { transform: translateX(-130%) skewX(-14deg); } 55%, 100% { transform: translateX(420%) skewX(-14deg); } }
  @keyframes aecMbPulse { 0%, 100% { opacity: 1; transform: scale(1); } 50% { opacity: .45; transform: scale(.8); } }
  @media  (max-width: 759px) {
    .aec-v3 [data-mobile-bar][data-menu-open="true"]{ display: none !important; } .aec-v3 [data-mobile-bar]{ display: flex !important; bottom: 14px !important; animation: aecMbIn .7s cubic-bezier(.16,.7,.3,1) .35s both; }
    
    .aec-v3 [data-nav-cta]{ display: none !important; }
    
    .aec-v3 [data-tap],.aec-v3 nav > a:first-child,.aec-v3 footer a[href$="immobilier.dc.html"]{ position: relative; }
    .aec-v3 [data-tap]::after,.aec-v3 nav > a:first-child::after,.aec-v3 footer a[href$="immobilier.dc.html"]::after{ content: ""; position: absolute; left: -6px; right: -6px; top: -12px; bottom: -12px; }
    .aec-v3 [data-tap="chip"]{ padding: 13px 15px !important; }
    .aec-v3 [data-cta-row] > a{ flex: 1 1 100% !important; justify-content: center !important; white-space: normal !important; text-align: center; }
    .aec-v3 [data-tap="icon"]{ width: 44px !important; height: 44px !important; }
    @media  (max-width: 379px) { .aec-v3 [data-mobile-bar] > a:first-child{ font-size: 13.5px !important; padding-left: 12px !important; padding-right: 12px !important; gap: 8px !important; } }
    @media  (prefers-reduced-motion: reduce) { }
  }

.aec-v3 [data-v3-i="0-6"]:hover{transform:translateY(-2px);border-color:rgba(10,10,11,.22)}
.aec-v3 [data-v3-i="0-19"]:hover{background:#1E201E;color:#fff;transform:translateY(-3px);box-shadow:0 26px 46px -20px rgba(10,10,11,1)}
.aec-v3 [data-v3-i="0-19"]:active{transform:translateY(-1px) scale(.985)}
.aec-v3 [data-v3-i="0-19"]::before{content:"";position:absolute;top:0;left:0;width:26%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:aecShine 5s ease-in-out infinite}
.aec-v3 [data-v3-i="0-21"]:hover{border-color:#0A0A0B;transform:translateY(-3px);background:#fff;box-shadow:0 20px 40px -26px rgba(10,10,11,.6)}
.aec-v3 [data-v3-i="0-21"]:active{transform:translateY(-1px) scale(.985)}
.aec-v3 [data-v3-i="0-88"]::after{content:"";position:absolute;top:-45%;right:-18%;width:72%;aspect-ratio:1;pointer-events:none;background:radial-gradient(50% 50% at 50% 50%,rgba(173,232,60,.2),rgba(173,232,60,0) 70%);animation:aecBreath 9s ease-in-out infinite}
.aec-v3 [data-v3-i="0-105"]:hover{background:#1E201E;color:#fff;transform:translateY(-3px)}
.aec-v3 [data-v3-i="0-105"]:active{transform:translateY(-1px) scale(.985)}
.aec-v3 [data-v3-i="0-105"]::before{content:"";position:absolute;top:0;left:0;width:26%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:aecShine 4.2s ease-in-out infinite}
.aec-v3 [data-v3-i="1-8"]:hover{border-color:#ADE83C}
.aec-v3 [data-v3-i="1-13"]:hover{transform:translateY(-2px)}
.aec-v3 [data-v3-i="1-15"]:hover{transform:translateY(-2px)}
.aec-v3 [data-v3-i="1-17"]:hover{transform:translateY(-2px)}
.aec-v3 [data-v3-i="2-15"]:hover{background:rgba(255,255,255,.22);transform:translateY(-2px)}
.aec-v3 [data-v3-i="5-49"]:hover{background:#F7F7F5;transform:translateY(-2px)}
.aec-v3 [data-v3-i="5-49"]:active{transform:translateY(0) scale(.985)}
.aec-v3 [data-v3-i="6-7"]:hover{border-color:#0A0A0B}
.aec-v3 [data-v3-i="7-74"]:hover{background:#1E201E;color:#fff;transform:translateY(-2px)}
.aec-v3 [data-v3-i="9-16"]:hover{background:rgba(10,10,11,.025)}
.aec-v3 [data-v3-i="9-27"]:hover{background:rgba(10,10,11,.025)}
.aec-v3 [data-v3-i="9-38"]:hover{background:rgba(10,10,11,.025)}
.aec-v3 [data-v3-i="9-49"]:hover{background:rgba(10,10,11,.025)}
.aec-v3 [data-v3-i="10-13"]:hover{background:linear-gradient(160deg,rgba(255,255,255,.1) 0%,rgba(255,255,255,.045) 55%,rgba(173,232,60,.07) 100%);border-color:rgba(255,255,255,.16);transform:translateY(-4px);box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 30px 60px -30px rgba(173,232,60,.35)}
.aec-v3 [data-v3-i="10-28"]:hover{background:linear-gradient(160deg,rgba(255,255,255,.1) 0%,rgba(255,255,255,.045) 55%,rgba(173,232,60,.07) 100%);border-color:rgba(255,255,255,.16);transform:translateY(-4px);box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 30px 60px -30px rgba(173,232,60,.35)}
.aec-v3 [data-v3-i="11-10"]:hover{color:#0A0A0B}
.aec-v3 [data-v3-i="11-13"]:hover{color:#0A0A0B}
.aec-v3 [data-v3-i="11-35"]:hover{background:#1E201E;transform:translateY(-2px)}
.aec-v3 [data-v3-i="11-55"]:hover{background:#1E201E;transform:translateY(-2px)}
.aec-v3 [data-v3-i="11-75"]:hover{background:#1E201E;transform:translateY(-2px)}
.aec-v3 [data-v3-i="11-95"]:hover{background:#1E201E;transform:translateY(-2px)}
.aec-v3 [data-v3-i="11-115"]:hover{background:#1E201E;transform:translateY(-2px)}
.aec-v3 [data-v3-i="11-135"]:hover{background:#1E201E;transform:translateY(-2px)}
.aec-v3 [data-v3-i="11-155"]:hover{background:#1E201E;transform:translateY(-2px)}
.aec-v3 [data-v3-i="11-175"]:hover{background:#1E201E;transform:translateY(-2px)}
.aec-v3 [data-v3-i="11-195"]:hover{background:#1E201E;transform:translateY(-2px)}
.aec-v3 [data-v3-i="11-215"]:hover{background:#1E201E;transform:translateY(-2px)}
.aec-v3 [data-v3-i="12-28"]:hover{color:#C2F057;gap:12px}
.aec-v3 [data-v3-i="12-46"]:hover{color:#ADE83C}
.aec-v3 [data-v3-i="12-48"]:hover{transform:translateY(-3px);border-color:rgba(255,255,255,.3)}
.aec-v3 [data-v3-i="12-53"]:hover{transform:translateY(-3px);border-color:rgba(255,255,255,.3)}
.aec-v3 [data-v3-i="12-58"]:hover{transform:translateY(-3px);border-color:rgba(255,255,255,.3)}
.aec-v3 [data-v3-i="12-63"]:hover{transform:translateY(-3px);border-color:rgba(255,255,255,.3)}
.aec-v3 [data-v3-i="13-9"]:hover{background:#1E201E;color:#fff;transform:translateY(-3px);box-shadow:0 26px 46px -22px rgba(10,10,11,1)}
.aec-v3 [data-v3-i="13-9"]:active{transform:translateY(-1px) scale(.985)}
.aec-v3 [data-v3-i="13-12"]:hover{background:#fff}
.aec-v3 [data-v3-i="13-16"]:hover{background:#fff}
.aec-v3 [data-v3-i="13-20"]:hover{background:#fff}
.aec-v3 [data-v3-i="13-24"]:hover{background:#fff}
.aec-v3 [data-v3-i="14-8"]:hover{background:#fff;padding-left:18px}
.aec-v3 [data-v3-i="14-14"]:hover{background:#fff;padding-left:18px}
.aec-v3 [data-v3-i="14-20"]:hover{background:#fff;padding-left:18px}
.aec-v3 [data-v3-i="14-34"]:hover{background:#fff;color:#0A0A0B;transform:translateY(-2px)}
.aec-v3 [data-v3-i="15-46"]:hover{background:#1E201E;transform:translateY(-3px);box-shadow:0 26px 42px -20px rgba(10,10,11,1)}
.aec-v3 [data-v3-i="15-46"]:active{transform:translateY(-1px) scale(.985)}
.aec-v3 [data-v3-i="15-46"]::before{content:"";position:absolute;top:0;left:0;width:26%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:aecShine 5s ease-in-out 1.2s infinite}
.aec-v3 [data-v3-i="16-9"]:hover{padding-left:14px}
.aec-v3 [data-v3-i="16-14"]:hover{padding-left:14px}
.aec-v3 [data-v3-i="16-18"]:hover{padding-left:14px}
.aec-v3 [data-v3-i="16-22"]:hover{padding-left:14px}
.aec-v3 [data-v3-i="16-26"]:hover{padding-left:14px}
.aec-v3 [data-v3-i="16-30"]:hover{padding-left:14px}
.aec-v3 [data-v3-i="16-34"]:hover{padding-left:14px}
.aec-v3 [data-v3-i="16-38"]:hover{padding-left:14px}
.aec-v3 [data-v3-i="17-10"]:hover{border-color:#0A0A0B;transform:translateY(-4px);color:#0A0A0B;box-shadow:0 24px 48px -34px rgba(10,10,11,.5)}
.aec-v3 [data-v3-i="17-21"]:hover{border-color:#0A0A0B;transform:translateY(-4px);color:#0A0A0B;box-shadow:0 24px 48px -34px rgba(10,10,11,.5)}
.aec-v3 [data-v3-i="17-32"]:hover{border-color:#0A0A0B;transform:translateY(-4px);color:#0A0A0B;box-shadow:0 24px 48px -34px rgba(10,10,11,.5)}
.aec-v3 [data-v3-i="18-11"]:hover{background:#F1F1EE;color:#0A0A0B;transform:translateY(-3px);box-shadow:0 26px 46px -22px rgba(0,0,0,1)}
.aec-v3 [data-v3-i="18-11"]:active{transform:translateY(-1px) scale(.985)}
.aec-v3 [data-v3-i="18-13"]:hover{border-color:#fff;color:#fff;transform:translateY(-3px)}
.aec-v3 [data-v3-i="18-13"]:active{transform:translateY(-1px) scale(.985)}
@media  (max-width:759px){
.aec-v3 [data-v3-i="0-19"]{flex:1 1 100%!important}
.aec-v3 [data-v3-i="0-21"]{flex:1 1 100%!important}
.aec-v3 [data-v3-i="3-20"]{margin-left:0!important}
.aec-v3 [data-v3-i="4-26"]{align-items:flex-start!important}
.aec-v3 [data-v3-i="6-9"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.aec-v3 [data-v3-i="6-32"]{flex:0 0 138px!important;width:138px!important;height:58px!important}
.aec-v3 [data-v3-i="6-33"]{max-height:42px!important;max-width:112px!important}
.aec-v3 [data-v3-i="6-34"]{flex:0 0 138px!important;width:138px!important;height:58px!important}
.aec-v3 [data-v3-i="6-35"]{max-height:42px!important;max-width:112px!important}
.aec-v3 [data-v3-i="6-36"]{flex:0 0 138px!important;width:138px!important;height:58px!important}
.aec-v3 [data-v3-i="6-37"]{max-height:42px!important;max-width:112px!important}
.aec-v3 [data-v3-i="6-38"]{flex:0 0 138px!important;width:138px!important;height:58px!important}
.aec-v3 [data-v3-i="6-39"]{max-height:42px!important;max-width:112px!important}
.aec-v3 [data-v3-i="6-40"]{flex:0 0 138px!important;width:138px!important;height:58px!important}
.aec-v3 [data-v3-i="6-41"]{max-height:42px!important;max-width:112px!important}
.aec-v3 [data-v3-i="6-42"]{flex:0 0 138px!important;width:138px!important;height:58px!important}
.aec-v3 [data-v3-i="6-43"]{max-height:42px!important;max-width:112px!important}
.aec-v3 [data-v3-i="6-44"]{flex:0 0 138px!important;width:138px!important;height:58px!important}
.aec-v3 [data-v3-i="6-45"]{max-height:42px!important;max-width:112px!important}
.aec-v3 [data-v3-i="6-46"]{flex:0 0 138px!important;width:138px!important;height:58px!important}
.aec-v3 [data-v3-i="6-47"]{max-height:42px!important;max-width:112px!important}
.aec-v3 [data-v3-i="6-48"]{flex:0 0 138px!important;width:138px!important;height:58px!important}
.aec-v3 [data-v3-i="6-49"]{max-height:42px!important;max-width:112px!important}
.aec-v3 [data-v3-i="6-50"]{flex:0 0 138px!important;width:138px!important;height:58px!important}
.aec-v3 [data-v3-i="6-51"]{max-height:42px!important;max-width:112px!important}
.aec-v3 [data-v3-i="6-52"]{flex:0 0 138px!important;width:138px!important;height:58px!important}
.aec-v3 [data-v3-i="6-53"]{max-height:42px!important;max-width:112px!important}
.aec-v3 [data-v3-i="6-54"]{flex:0 0 138px!important;width:138px!important;height:58px!important}
.aec-v3 [data-v3-i="6-55"]{max-height:42px!important;max-width:112px!important}
.aec-v3 [data-v3-i="6-56"]{flex:0 0 138px!important;width:138px!important;height:58px!important}
.aec-v3 [data-v3-i="6-57"]{max-height:42px!important;max-width:112px!important}
.aec-v3 [data-v3-i="6-58"]{flex:0 0 138px!important;width:138px!important;height:58px!important}
.aec-v3 [data-v3-i="6-59"]{max-height:42px!important;max-width:112px!important}
.aec-v3 [data-v3-i="6-60"]{flex:0 0 138px!important;width:138px!important;height:58px!important}
.aec-v3 [data-v3-i="6-61"]{max-height:42px!important;max-width:112px!important}
.aec-v3 [data-v3-i="6-62"]{flex:0 0 138px!important;width:138px!important;height:58px!important}
.aec-v3 [data-v3-i="6-63"]{max-height:42px!important;max-width:112px!important}
.aec-v3 [data-v3-i="6-64"]{flex:0 0 138px!important;width:138px!important;height:58px!important}
.aec-v3 [data-v3-i="6-65"]{max-height:42px!important;max-width:112px!important}
.aec-v3 [data-v3-i="6-66"]{flex:0 0 138px!important;width:138px!important;height:58px!important}
.aec-v3 [data-v3-i="6-67"]{max-height:42px!important;max-width:112px!important}
.aec-v3 [data-v3-i="7-14"]{display:flex!important;width:100%!important}
.aec-v3 [data-v3-i="7-15"]{flex:1 1 0!important}
.aec-v3 [data-v3-i="7-17"]{flex:1 1 0!important}
.aec-v3 [data-v3-i="9-9"]{display:none!important;grid-template-columns:1fr!important}
.aec-v3 [data-v3-i="9-16"]{grid-template-columns:1fr!important}
.aec-v3 [data-v3-i="9-27"]{grid-template-columns:1fr!important}
.aec-v3 [data-v3-i="9-38"]{grid-template-columns:1fr!important}
.aec-v3 [data-v3-i="9-49"]{grid-template-columns:1fr!important}
.aec-v3 [data-v3-i="11-17"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.aec-v3 [data-v3-i="11-18"]{grid-column:span 2!important;height:470px!important;flex-direction:column!important}
.aec-v3 [data-v3-i="11-19"]{flex:0 0 186px!important}
.aec-v3 [data-v3-i="11-38"]{height:236px!important}
.aec-v3 [data-v3-i="11-58"]{height:236px!important}
.aec-v3 [data-v3-i="11-78"]{height:236px!important}
.aec-v3 [data-v3-i="11-98"]{height:236px!important}
.aec-v3 [data-v3-i="11-118"]{height:236px!important}
.aec-v3 [data-v3-i="11-138"]{height:236px!important}
.aec-v3 [data-v3-i="11-158"]{height:236px!important}
.aec-v3 [data-v3-i="11-178"]{height:236px!important}
.aec-v3 [data-v3-i="11-198"]{height:236px!important}
}

/* Le titre FAQ suit la colonne de réponses sur grand écran seulement. */
@media (min-width: 960px){.aec-v3 #faq .aec-v3-faq-intro{position:sticky;top:110px;align-self:flex-start}}
.aec-v3 #faq .aec-v3-faq-intro{flex:1 1 330px;min-width:280px}
.aec-v3 #faq .aec-v3-faq-hint{max-width:420px;margin:18px 0 0;color:#55565A;font-size:15.5px;line-height:1.55;text-wrap:pretty}

/* Horaires annoncés, sans état de présence en direct. */
.aec-v3 .aec-v3-hours{display:inline-flex;align-items:center;align-self:center;gap:9px;max-width:100%;color:#55565A;font-size:13.5px;line-height:1.45}
.aec-v3 .aec-v3-hours i{width:7px;height:7px;flex:none;border-radius:50%;background:#ADE83C}
.aec-v3 .aec-v3-hours[data-ae-hours-state="closed"] i{background:#767676}

/* Compact, interruptible controls for both moving marquees. */
.aec-v3 [data-v3-marquee-toggle]{display:grid;place-items:center;width:42px;height:42px;min-height:42px;margin:0 24px 8px auto;padding:0;font-size:0;line-height:0;border-color:rgba(10,10,11,.3)}
.aec-v3 [data-v3-marquee-toggle]::before{content:"";display:block;width:10px;height:13px;border-left:3px solid currentColor;border-right:3px solid currentColor}
.aec-v3 [data-v3-marquee-toggle][aria-pressed="true"]::before{width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:11px solid currentColor;border-right:0}
.aec-v3 #avis [data-v3-marquee-toggle]{border-color:rgba(255,255,255,.55)}
.aec-v3-partners{margin-top:clamp(28px,3.2cqw,40px);padding-top:26px;border-top:1px solid rgba(255,255,255,.2)}
.aec-v3-partners-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px 40px;flex-wrap:wrap}
.aec-v3-partners-head>div{display:grid;gap:9px;max-width:560px}
.aec-v3-partners-head small{font:400 10.5px/1.4 'JetBrains Mono',monospace;letter-spacing:.1em;color:#d7d7d3}
.aec-v3-partners-head strong{font-size:clamp(17px,1.5cqw,20px);font-weight:600;letter-spacing:-.022em;line-height:1.25;color:#fff}
.aec-v3-partners-head>a{color:#fff;font-size:14.5px;font-weight:600;text-decoration:none;border-bottom:1px solid #ade83c;padding-bottom:2px;min-height:30px}
.aec-v3-partners-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:22px}
.aec-v3-partner{position:relative;display:flex;flex-direction:column;justify-content:flex-end;gap:6px;min-height:200px;border:1px solid rgba(255,255,255,.3);border-radius:18px;overflow:hidden;background:#141613;color:#fff;text-decoration:none}
.aec-v3-partner img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(.55) contrast(1.05) brightness(.8)}
.aec-v3-partner-shade{position:absolute;inset:0;background:linear-gradient(to top,rgba(10,10,11,.94),rgba(10,10,11,.35) 55%,rgba(10,10,11,.05))}
.aec-v3-partner :is(small,strong){position:relative;z-index:1;padding-inline:18px;color:#fff}
.aec-v3-partner small{font:400 10px/1.4 'JetBrains Mono',monospace;letter-spacing:.08em;text-transform:uppercase}
.aec-v3-partner strong{padding-bottom:18px;font-size:17px;font-weight:600;letter-spacing:-.02em;line-height:1.2}
.aec-v3-partner:focus-visible,.aec-v3-partners-head>a:focus-visible{outline:3px solid #ade83c;outline-offset:3px}

/* Inline prototype colors require an explicit override for real hover/focus glass. */
.aec-v3 #sav [data-v3-i="10-13"]:is(:hover,:focus-visible),
.aec-v3 #sav [data-v3-i="10-28"]:is(:hover,:focus-visible){background:linear-gradient(160deg,rgba(255,255,255,.10),rgba(255,255,255,.045) 55%,rgba(173,232,60,.07)) !important;border-color:rgba(255,255,255,.18) !important;transform:translateY(-4px);box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 30px 60px -30px rgba(173,232,60,.35) !important}
.aec-v3 #sav [data-v3-i="10-13"]:focus-visible,
.aec-v3 #sav [data-v3-i="10-28"]:focus-visible{outline:2px solid #ADE83C;outline-offset:4px}
@media (prefers-reduced-motion:reduce){.aec-v3 #sav [data-v3-i="10-13"]:is(:hover,:focus-visible),.aec-v3 #sav [data-v3-i="10-28"]:is(:hover,:focus-visible){transform:none}}

/* The approved portraits are already monochrome and framed in their source files. */
.aec-v3 #equipe .ae-portrait{display:contents}
.aec-v3 #equipe [data-v3-team-card] img,
.aec-v3 #equipe .aec-v3-team-tour-media img{object-position:50% 30%;filter:none;transform:none}
