/* Native site header and footer. */
body.ap-native-shell #page-container.ap-site-shell { padding-top: 0 !important; margin-top: 0 !important; overflow: visible; }
.ap-site-header, .ap-site-footer { font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-weight: 400; line-height: 1.7; }
.ap-site-header *, .ap-site-footer *, .ap-site-header *::before, .ap-site-header *::after { box-sizing: border-box; }
.ap-site-header a, .ap-site-footer a { text-decoration: none; }
.ap-site-header :focus-visible, .ap-site-footer :focus-visible { outline: 3px solid #00c2ff; outline-offset: 4px; }
.ap-shell-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.ap-skip-link { position: absolute; top: 8px; left: 16px; z-index: 100000; padding: 12px 20px; border-radius: 8px; background: #00c2ff; color: #0a0a0b; font: 700 15px/1.5 Inter,sans-serif; transform: translateY(-180%); }
.ap-skip-link:focus { transform: translateY(0); }
#ap-content-start { scroll-margin-top: 16px; }
.ap-site-header { --ap-nav-ink: #30363d; --ap-nav-hover: #008dbb; --ap-nav-glass: rgba(250,250,249,.88); --ap-nav-solid: #fafaf9; --ap-nav-border: rgba(255,255,255,.7); position: relative; z-index: 100; padding: 16px 0; background: transparent; }
.blog .ap-site-header, .single-post .ap-site-header, .archive .ap-site-header, .search .ap-site-header { background: #fafaf9; }
.page-template-page-rdv .ap-site-header, .page-template-page-calculateur .ap-site-header { --ap-nav-ink: #edf1f5; --ap-nav-hover: #59d7ff; --ap-nav-glass: rgba(17,22,28,.88); --ap-nav-solid: #11161c; --ap-nav-border: rgba(255,255,255,.13); background: #0a0a0b; }
.ap-site-header__bar { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 24px; width: 80%; max-width: 1200px; min-height: 56px; margin: 0 auto; padding: 6px 0; background: transparent; }
/* Keep the header in flow; only its visibility changes while scrolling. */
.ap-site-header.ap-nav-ready { position: sticky; top: var(--ap-nav-admin-offset,0px); transition: transform .32s cubic-bezier(.22,1,.36,1),opacity .22s; }
.ap-site-header.ap-nav-scrolled { background: transparent; }
.ap-site-header.ap-nav-hidden { transform: translateY(calc(-100% - var(--ap-nav-admin-offset,0px) - 4px)); opacity: 0; pointer-events: none; }
.ap-site-header__bar { isolation: isolate; }
.ap-site-header__bar::before { content: ''; position: absolute; z-index: -1; inset: -4px -22px; border: 1px solid var(--ap-nav-border); border-radius: 18px; background: var(--ap-nav-solid); box-shadow: 0 8px 32px rgba(7,22,32,.12); opacity: 0; pointer-events: none; transition: opacity .24s; }
.ap-nav-scrolled .ap-site-header__bar::before { opacity: 1; }
@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
    .ap-nav-scrolled .ap-site-header__bar::before { background: var(--ap-nav-glass); -webkit-backdrop-filter: blur(20px) saturate(1.35); backdrop-filter: blur(20px) saturate(1.35); }
}
.ap-site-header__brand { display: flex; align-items: center; flex: 0 0 auto; min-height: 44px; }
.ap-site-header__brand img { display: block; width: 120px; height: auto; }
.ap-site-header__desktop { display: flex; align-items: center; gap: 30px; }
.ap-site-header .ap-site-header__links { display: flex; align-items: center; gap: 22px; padding: 0; margin: 0; list-style: none; }
.ap-site-header__links li { margin: 0; padding: 0; }
.ap-site-header__links a { display: inline-flex; align-items: center; min-height: 44px; color: var(--ap-nav-ink); font-size: 16px; font-weight: 500; }
.ap-site-header__links a:hover, .ap-site-header__links a[aria-current="page"] { color: var(--ap-nav-hover); }
.ap-site-header .ap-site-header__cta { display: inline-flex; align-items: center; justify-content: center; gap: 6px; padding: 10px 16px 10px 22px; min-height: 44px; border-radius: 100px; color: #1a1a1a; background: #00c2ff; font: 700 15px/1.5 "Space Grotesk",sans-serif; white-space: nowrap; transition: background .2s; }
.ap-site-header__cta:hover { background: #33ceff; }
.ap-mobile-menu { display: none; position: relative; }
.ap-mobile-menu > summary { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0; margin: 0 -10px 0 0; color: #00b8ee; border: 0; border-radius: 50%; list-style: none; cursor: pointer; }
.ap-mobile-menu > summary::-webkit-details-marker { display: none; }
.ap-mobile-menu > summary::marker { content: ''; }
.ap-mobile-menu svg path { transform-origin: center; transition: transform .2s,opacity .2s; }
.ap-mobile-menu[open] .ap-mobile-menu__top { transform: translateY(8px) rotate(45deg); transform-origin: 12px 4px; }
.ap-mobile-menu[open] .ap-mobile-menu__bottom { transform: translateY(-8px) rotate(-45deg); transform-origin: 12px 20px; }
.ap-mobile-menu[open] .ap-mobile-menu__middle { opacity: 0; }
.ap-mobile-menu__panel { position: absolute; z-index: 1; right: -10px; top: calc(100% + 14px); width: min(260px,calc(100vw - 64px)); padding: 12px 0; border-radius: 12px; box-shadow: 0 8px 32px rgba(0,0,0,.12); background: #fff; }
.ap-site-header .ap-mobile-menu__links { padding: 0; margin: 0; list-style: none; }
.ap-mobile-menu__links li { padding: 0; margin: 0; }
.ap-mobile-menu__links a { display: block; padding: 12px 24px; color: #1a1a1a; font-size: 16px; line-height: 1.5; border-bottom: 1px solid rgba(0,0,0,.04); }
.ap-mobile-menu__links li:last-child a { border-bottom: 0; }
.ap-mobile-menu__links a:hover, .ap-mobile-menu__links a[aria-current="page"] { color: #007ba3; background: #f0faff; }
.ap-site-footer { padding: 54px 0; background: #0a0a0b; color: rgba(255,255,255,.4); border-top: 1px solid rgba(255,255,255,.05); font-size: 13px; }
.ap-site-footer__inner { width: 80%; max-width: 1080px; margin: 0 auto; }
.ap-site-footer__main { display: flex; align-items: flex-end; justify-content: space-between; gap: 32px; }
.ap-site-footer__brand { flex: 1; min-width: 0; }
.ap-site-footer__brand > a { display: inline-block; vertical-align: top; }
.ap-site-footer__brand img { display: block; width: 205px; max-width: 100%; height: auto; }
.ap-site-footer__brand p { padding: 0; margin: 16px 0 0; font-size: 13px; line-height: 1.7; }
.ap-site-footer__contact { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
.ap-site-footer__contact a { color: #00c2ff; }
.ap-site-footer__contact a:hover { color: #70ddff; }
.ap-site-footer__legal { display: flex; align-items: flex-start; justify-content: flex-end; gap: 30px; margin-top: 24px; padding-top: 24px; border-top: 1px solid rgba(255,255,255,.1); }
.ap-site-footer__legal a { color: inherit; font-size: 11px; line-height: 1.7; }
.ap-site-footer__legal a:hover { color: #fff; }
@media (max-width: 980px) {
    .ap-site-header__brand img { width: 104px; }
    .ap-site-header__bar::before { inset-inline: -12px; }
    .ap-site-header__bar { width: calc(100% - 48px); }
    .ap-site-header__desktop { display: none; }
    .ap-mobile-menu { display: block; }
    .ap-site-footer { padding: 50px 0; }
    .ap-site-footer__main { flex-direction: column; align-items: flex-start; gap: 24px; }
    .ap-site-footer__legal { justify-content: flex-start; }
}
@media (max-width: 767px) {
    .ap-site-header__bar { width: calc(100% - 40px); }
}
@media (max-width: 600px) {
    .ap-site-footer__brand img { width: 150px; }
    .ap-site-footer__legal { display: grid; grid-template-columns: .8fr 1.2fr .9fr; gap: 24px; }
}
@media (prefers-reduced-motion: reduce) {
    .ap-site-header.ap-nav-ready, .ap-site-header, .ap-site-header *, .ap-site-header *::before, .ap-site-header *::after { transition: none; }
}

/* Sector megamenu. Native details remain usable without JavaScript. */
.ap-site-header .ap-mega-menu{position:static;margin:0;padding:0}
.ap-site-header .ap-mega-menu>summary{display:flex;align-items:center;gap:7px;min-height:44px;padding:0;border:0;background:none;color:var(--ap-nav-ink);font:500 16px/1.5 Inter,sans-serif;list-style:none;cursor:pointer}
.ap-mega-menu>summary::-webkit-details-marker{display:none}
.ap-mega-menu>summary::marker{content:""}
.ap-mega-chevron{transition:transform .2s}
.ap-mega-menu[open] .ap-mega-chevron{transform:rotate(180deg)}
.ap-site-header .ap-mega-menu[open]>summary,.ap-site-header .ap-mega-menu>summary:hover,.ap-site-header .ap-mega-item.is-current>details>summary{color:var(--ap-nav-hover)}
.ap-site-header .ap-mega-panel{position:absolute;left:-22px;right:-22px;top:calc(100% + 15px);display:grid;grid-template-columns:.75fr 2fr;gap:28px;padding:28px;background:#fcfdfbed;border:1px solid #fff;border-radius:24px;box-shadow:0 28px 70px -22px #102b3a42,0 0 0 1px #12394b0b;color:#253941;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);max-height:calc(100dvh - 128px - var(--ap-nav-admin-offset,0px));overflow:auto;overscroll-behavior:contain;z-index:4}
.ap-mega-menu:not([open])>.ap-mega-panel{display:none}
.ap-mega-panel::before{content:"";position:absolute;left:0;right:0;top:-18px;height:18px}
.ap-mega-menu[open]>.ap-mega-panel{animation:ap-mega-enter .22s cubic-bezier(.2,.65,.3,1) both}
@keyframes ap-mega-enter{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:translateY(0)}}
.ap-mega-intro{align-self:center;padding:7px 4px 7px 12px}
.ap-mega-intro__icon{display:block;font:500 31px/1 "Space Grotesk",sans-serif;color:#00a6db;margin-bottom:20px}
.ap-mega-intro p{padding:0;margin:0;color:#193c4b;font:600 clamp(24px,2.25vw,32px)/1.14 "Space Grotesk",sans-serif;letter-spacing:-.035em}
.ap-mega-intro>span:last-child{display:block;max-width:200px;color:#61747b;font-size:13px;line-height:1.65;margin-top:15px}
.ap-site-header .ap-mega-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0;padding:0;list-style:none}
.ap-site-header .ap-mega-card-item{margin:0;padding:0;min-width:0}
.ap-site-header .ap-mega-card{position:relative;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;height:100%;min-height:240px;padding:19px 22px 23px;border:1px solid #dbe7e5;border-radius:17px;background:#f0f4ed;color:#24464d;transition:background .2s,border-color .2s,box-shadow .2s,transform .2s}
.ap-site-header .ap-mega-card--immobilier{background:#eaf4f8;color:#226780;border-color:#d7e7ec}
.ap-mega-art{display:grid;place-items:center;margin:0 0 17px;height:95px;overflow:hidden;color:#427e78}
.ap-mega-card--immobilier .ap-mega-art{color:#3e829b}
.ap-mega-art svg{width:180px;max-width:100%;height:100px;transition:transform .25s}
.ap-mega-art-accent{fill:#b8e9f2;transition:fill .2s}
.ap-mega-card__copy{display:block;padding-right:13px}
.ap-mega-card__title{display:block;color:#183d49;font:600 21px/1.18 "Space Grotesk",sans-serif;letter-spacing:-.025em;text-wrap:balance}
.ap-mega-card__description{display:block;color:#60777b;font:400 13px/1.5 Inter,sans-serif;margin-top:9px}
.ap-mega-card__arrow{position:absolute;right:15px;bottom:20px;display:grid;place-items:center;width:25px;height:25px;color:#397887;font:24px/1 sans-serif;transition:transform .2s}
.ap-site-header .ap-mega-card:hover,.ap-site-header .ap-mega-card:focus-visible{background:#def4fa;border-color:#6ac8e2;box-shadow:0 10px 20px -16px #11627f66;transform:translateY(-3px)}
.ap-mega-card:hover .ap-mega-art svg{transform:translateY(-2px)}
.ap-mega-card:hover .ap-mega-art-accent{fill:#00c2ff}
.ap-mega-card:hover .ap-mega-card__arrow{transform:translate(2px,-2px)}
.ap-site-header .ap-mega-card[aria-current="page"]{border-color:#32b3d7;background:#ddf2f8}
.ap-nav-menu-open .ap-site-header__bar::before{opacity:1;background:var(--ap-nav-glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
@media(max-width:1100px) and (min-width:981px){.ap-site-header .ap-mega-panel{gap:20px;padding:22px;grid-template-columns:.7fr 2fr}.ap-site-header .ap-mega-card{padding:17px;min-height:238px}.ap-mega-card__title{font-size:20px}.ap-mega-card__description{font-size:12px}.ap-mega-intro{padding-left:0}}
@media(max-width:980px){
 .ap-mobile-menu__panel{width:min(410px,calc(100vw - 40px));right:-10px;padding:10px;border:1px solid #e3ecee;border-radius:20px;max-height:calc(100dvh - 114px - var(--ap-nav-admin-offset,0px));overflow:auto;overscroll-behavior:contain;box-shadow:0 24px 60px -15px #0f293a44}
 .ap-mobile-menu__links>li>a{padding:13px 15px;border-radius:9px}
 .ap-site-header .ap-mobile-menu .ap-mega-menu>summary{color:#183d49;padding:13px 15px;justify-content:space-between;border-bottom:1px solid #edf1f1}
 .ap-site-header .ap-mobile-menu .ap-mega-panel{position:static;display:block;padding:7px 0 12px;background:transparent;border:0;border-radius:0;box-shadow:none;max-height:none;overflow:visible;backdrop-filter:none;-webkit-backdrop-filter:none}
 .ap-site-header .ap-mobile-menu .ap-mega-menu:not([open])>.ap-mega-panel{display:none}
 .ap-mega-panel::before,.ap-mega-intro{display:none}
 .ap-site-header .ap-mega-cards{grid-template-columns:1fr;gap:7px}
 .ap-site-header .ap-mega-card{display:grid;grid-template-columns:70px 1fr;align-items:center;gap:12px;min-height:106px;padding:15px 26px 15px 10px;border-radius:13px}
 .ap-mega-art{height:65px;margin:0}.ap-mega-art svg{width:95px;height:65px;max-width:none}
 .ap-mega-card__copy{padding:0}.ap-mega-card__title{font-size:19px;text-wrap:pretty}.ap-mega-card__description{font-size:12px;margin-top:6px}
 .ap-mega-card__arrow{right:8px;bottom:50%;transform:translateY(50%);font-size:20px;width:20px;height:20px}
 .ap-mega-card:hover .ap-mega-card__arrow{transform:translate(1px,50%)}
 .ap-site-header .ap-mega-card:hover,.ap-site-header .ap-mega-card:focus-visible{transform:none}
}
@media(max-width:380px){.ap-site-header .ap-mega-card{grid-template-columns:52px 1fr;gap:8px;padding-left:8px}.ap-mega-art svg{width:76px}.ap-mega-card__title{font-size:17px}.ap-mega-card__description{font-size:11px}}
@media(prefers-reduced-motion:reduce){.ap-site-header .ap-mega-menu[open]>.ap-mega-panel{animation:none}.ap-site-header .ap-mega-card,.ap-mega-art svg{transition:none}}

/* Keep mobile pictograms complete and the close icon unambiguous. */
.ap-mobile-menu__opened{display:none}
.ap-mobile-menu[open] .ap-mobile-menu__closed{display:none}
.ap-mobile-menu[open] .ap-mobile-menu__opened{display:block}
@media(max-width:980px){.ap-mega-art svg{width:100%;max-width:100%;height:auto}}
@media(prefers-reduced-motion:reduce){.ap-site-header *,.ap-site-header *::before,.ap-site-header *::after{transition:none!important;animation:none!important}}

/* Full navigation width, with independently sized sector cards. */
@media(min-width:981px){
 .ap-site-header .ap-mega-panel{left:-22px;right:-22px;width:auto;grid-template-columns:minmax(200px,1fr) auto;gap:32px;padding:24px}
 .ap-site-header .ap-mega-cards{grid-template-columns:repeat(2,240px);gap:12px;align-self:center}
 .ap-site-header .ap-mega-card{min-height:152px;padding:14px}
 .ap-mega-art{height:42px;margin-bottom:9px}
 .ap-mega-art svg{width:88px;height:49px}
 .ap-mega-card__title{font-size:18px}
 .ap-mega-card__description{font-size:12px;margin-top:7px}
 .ap-mega-card__arrow{right:10px;bottom:12px;font-size:20px;width:20px;height:20px}
 .ap-mega-intro__icon{font-size:26px;margin-bottom:15px}
 .ap-mega-intro p{font-size:28px}
 .ap-mega-intro>span:last-child{margin-top:12px}
}
@media(max-width:980px){
 .ap-mobile-menu__panel{right:0}
 .ap-site-header .ap-mega-card{grid-template-columns:58px 1fr;gap:10px;min-height:92px;padding:12px 26px 12px 10px}
 .ap-mega-art{height:54px}
}
@media(max-width:380px){.ap-site-header .ap-mega-card{grid-template-columns:50px 1fr;gap:8px;padding-left:8px}}
