@import "https://fonts.googleapis.com/css2?family=Chivo:wght@400;600;700;800&family=Public+Sans:wght@400;500;600;700&display=swap";.oppal-loading-overlay{z-index:9999;background:#00000047;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.oppal-loading-inner{background:#fff;border-radius:8px;align-items:center;gap:.75rem;padding:1rem 1.25rem;display:flex;box-shadow:0 6px 24px #0003}.oppal-spinner{border:4px solid #e6e6e6;border-top-color:var(--oppal-institutionnel-sombre,#1363a6);border-radius:50%;width:32px;height:32px;animation:1s linear infinite oppal-spin}@keyframes oppal-spin{to{transform:rotate(360deg)}}.oppal-loading-text{font-weight:600}.site-header{z-index:100;position:sticky;top:0}.navbar{background:var(--oppal-blanc);padding:.72rem 0 .62rem}.navbar-container{width:100%;max-width:var(--content-shell-max);padding:0 var(--page-gutter);flex-wrap:nowrap;align-items:center;gap:clamp(1.25rem,2.5vw,2.25rem);margin:0 auto;display:flex}.navbar-brand{min-height:var(--oppal-brand-logo-height);flex:none;align-items:center;gap:.9rem;min-width:0;display:flex}.navbar-logo,.navbar-logo-image{display:block}.navbar-logo-image{width:auto;height:var(--oppal-brand-logo-height)}.navbar-tagline{max-width:184px;color:var(--oppal-noir);align-self:center;margin:0;font-size:.65rem;font-weight:500;line-height:1.18}.navbar-tagline span{white-space:nowrap;display:block}.navbar-menu{flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:.1rem;margin:0;padding:0;list-style:none;display:flex}.navbar-navigation{min-width:0;min-height:var(--oppal-brand-logo-height);flex-wrap:nowrap;flex:auto;justify-content:flex-end;align-items:center;gap:clamp(.55rem,1vw,.9rem);display:flex}.nav-icon-link{text-align:center;border-radius:8px;justify-content:center;align-items:center;gap:.32rem;padding:.48rem .42rem;text-decoration:none;transition:background .18s;display:flex;position:relative}.nav-icon-link:hover{background:color-mix(in srgb, var(--oppal-noir) 5%, transparent)}.nav-icon-link.active-nav-link:after{content:"";background:var(--oppal-accueil-sombre);border-radius:3px 3px 0 0;width:calc(100% - 1rem);height:3px;position:absolute;bottom:-.62rem;left:50%;transform:translate(-50%)}.nav-icon-image{object-fit:contain;flex:none;width:24px;height:24px;display:block}.navbar-menu li a,.nav-icon-link span{color:var(--oppal-noir);white-space:nowrap;font-size:.73rem;font-weight:600;line-height:1.1}.nav-icon-link.active-nav-link span{font-weight:700}.nav-icon-link:focus-visible{outline:2px solid color-mix(in srgb, var(--theme-fonce) 50%, transparent);outline-offset:3px;border-radius:8px}.admin-header-actions{flex:none;align-items:center;gap:.35rem;margin-left:auto;display:flex;position:relative}.admin-menu{position:relative}.admin-menu summary{color:color-mix(in srgb, var(--oppal-noir) 72%, transparent);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:.35rem;padding:.42rem .5rem;font-size:.72rem;font-weight:600;list-style:none;display:flex}.admin-menu summary::-webkit-details-marker{display:none}.admin-menu-icon{object-fit:contain;width:15px;height:15px}.admin-menu[open] summary,.admin-menu summary:hover{background:color-mix(in srgb, var(--oppal-noir) 6%, transparent);color:var(--oppal-noir)}.admin-header-actions>.admin-add-installation{width:2rem;height:2rem;color:var(--oppal-noir);cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;padding:.42rem;text-decoration:none;display:inline-flex}.admin-header-actions>.admin-add-installation img{object-fit:contain;width:15px;height:15px}.admin-header-actions>.admin-add-installation:hover{background:color-mix(in srgb, var(--oppal-noir) 6%, transparent)}.admin-menu ul{z-index:1;border:1px solid color-mix(in srgb, var(--oppal-noir) 12%, transparent);background:var(--oppal-blanc);min-width:210px;box-shadow:0 8px 24px color-mix(in srgb, var(--oppal-noir) 16%, transparent);border-radius:10px;margin:0;padding:.35rem;list-style:none;position:absolute;top:calc(100% + .35rem);right:0}.admin-menu a,.admin-menu button{width:100%;color:var(--oppal-noir);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:.55rem .65rem;font-size:.82rem;font-weight:600;text-decoration:none;display:block}.admin-menu a:hover,.admin-menu button:hover{background:color-mix(in srgb, var(--oppal-noir) 6%, transparent)}.admin-menu summary:focus-visible,.admin-menu a:focus-visible,.admin-menu button:focus-visible,.admin-header-actions>.admin-add-installation:focus-visible{outline:2px solid color-mix(in srgb, var(--theme-fonce) 50%, transparent);outline-offset:2px}@media (width>=1121px){.navbar-menu{justify-content:flex-start;gap:.15rem;width:auto}.nav-icon-link{gap:.25rem;padding-inline:.3rem}.nav-icon-image{width:23px;height:23px}}@media (width<=1120px){.navbar-navigation{flex:0 auto;justify-content:flex-end}.navbar-tagline{display:none}.navbar-menu{flex-wrap:nowrap;flex:0 auto;justify-content:flex-end}}@media (width<=768px){.navbar-container{padding:0 16px}.navbar-logo-image{height:var(--oppal-brand-logo-height-compact)}.nav-icon-image{width:22px;height:22px}.nav-icon-link span{font-size:.68rem}.admin-menu summary span{display:none}.admin-menu summary{padding-inline:.42rem}}@media (width<=520px){.navbar-navigation .nav-icon-link span{display:none}.navbar-navigation{gap:.4rem}}.site-footer{background:var(--oppal-noir);color:var(--oppal-blanc);margin-top:0;padding:.9rem 0}.site-footer-inner{width:calc(100% - var(--page-gutter) - var(--page-gutter));max-width:var(--content-max);justify-content:space-between;align-items:center;gap:clamp(3rem,7vw,7rem);margin:0 auto;display:flex}.site-footer-main{flex:0 470px;width:min(100%,470px);min-width:0}.site-footer-identity{align-items:center;gap:clamp(.65rem,1.2vw,.95rem);display:flex}.site-footer-logo-oppal{width:auto;height:var(--oppal-brand-logo-height);flex:none;display:block}.site-footer-tagline{width:min(100%,340px);color:color-mix(in srgb, var(--oppal-blanc) 78%, transparent);margin:0;font-size:.65rem;line-height:1.18}.site-footer-tagline span{white-space:nowrap;display:block}.site-footer-partners{flex-wrap:nowrap;flex:none;justify-content:flex-end;align-items:center;gap:1.35rem;display:flex}.site-footer-logo-uqo{box-sizing:border-box;object-fit:contain;background:var(--oppal-blanc);border-radius:4px;width:72px;height:42px;padding:2px 4px;display:block}.site-footer-logo-fondation{box-sizing:border-box;object-fit:contain;background:#08708b;border-radius:4px;width:72px;height:42px;padding:2px 4px;display:block}.site-footer-copyright{color:color-mix(in srgb, var(--oppal-blanc) 60%, transparent);white-space:nowrap;margin-left:.2rem;font-size:.74rem}@media (width<=980px){.site-footer-inner{flex-direction:column;align-items:flex-start;gap:1.5rem 2rem}.site-footer-partners{justify-content:flex-start}}@media (width<=640px){.site-footer-inner{align-items:flex-start;gap:1.25rem}.site-footer-identity{align-items:center}.site-footer-logo-oppal{height:var(--oppal-brand-logo-height-compact)}}@media (width<=480px){.site-footer-identity{flex-direction:column;align-items:flex-start}}.location-modal-backdrop{z-index:var(--z-modal);background:color-mix(in srgb, var(--oppal-noir) 66%, transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);place-items:center;padding:clamp(1rem,4vw,3rem);display:grid;position:fixed;inset:0}.location-modal{border:1px solid color-mix(in srgb, var(--oppal-noir) 10%, transparent);background:var(--oppal-blanc);width:min(100%,680px);max-height:calc(100vh - 2rem);color:var(--oppal-noir);box-shadow:0 24px 70px color-mix(in srgb, var(--theme-fonce) 30%, transparent);border-radius:22px;padding:clamp(1.35rem,3vw,2.25rem);position:relative;overflow-y:auto}.location-modal-close{width:42px;height:42px;color:var(--oppal-noir);background:0 0;border-radius:50%;place-items:center;font-size:2rem;font-weight:300;line-height:1;display:grid;position:absolute;top:1.1rem;right:1.25rem}.location-modal-close:hover{background:color-mix(in srgb, var(--oppal-noir) 6%, transparent)}.location-modal-header{align-items:center;gap:1.4rem;padding-right:3rem;display:flex}.location-modal-heading-icon,.location-choice-icon{border-radius:50%;flex:none;place-items:center;display:grid}.location-modal-heading-icon{background:color-mix(in srgb, var(--theme-clair) 15%, transparent);width:82px;height:82px}.location-modal-heading-icon img{object-fit:contain;width:58px;height:58px}.location-modal-header h2{letter-spacing:-.035em;margin:0 0 .35rem;font-size:clamp(1.75rem,4vw,2.35rem);line-height:1.08}.location-modal-header p{color:var(--oppal-noir);margin:0;font-size:clamp(1rem,2vw,1.25rem);line-height:1.4}.location-modal-choices{grid-template-columns:minmax(0,1fr);margin-top:1.75rem;display:grid}.location-choice-card{border:1px solid color-mix(in srgb, var(--theme-fonce) 42%, transparent);background:var(--oppal-blanc);min-height:112px;color:var(--oppal-noir);text-align:left;border-radius:16px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:1.2rem;padding:1.1rem 1.25rem;transition:border-color .18s,background .18s,box-shadow .18s;display:grid}.location-choice-card:hover:not(:disabled){border-color:var(--oppal-institutionnel-sombre);background:color-mix(in srgb, var(--oppal-noir) 12%, transparent);box-shadow:0 6px 18px color-mix(in srgb, var(--theme-fonce) 8%, transparent)}.location-choice-card.is-selected{border-color:var(--oppal-institutionnel-sombre);background:color-mix(in srgb, var(--theme-clair) 24%, var(--oppal-blanc));box-shadow:0 0 0 3px color-mix(in srgb, var(--oppal-institutionnel-sombre) 18%, transparent)}.location-choice-card:disabled,.location-place-form :disabled,.location-suggestions button:disabled{cursor:wait;opacity:.65}.location-choice-icon{width:66px;height:66px}.location-choice-icon--blue{background:color-mix(in srgb, var(--oppal-noir) 55%, transparent)}.location-choice-icon--salmon{background:color-mix(in srgb, var(--theme-clair) 17%, transparent)}.location-choice-icon img{object-fit:contain;width:48px;height:48px}.location-choice-copy{flex-direction:column;gap:.6rem;display:flex}.location-choice-copy strong{font-family:Chivo,Franklin Gothic Medium,sans-serif;font-size:1.35rem}.location-choice-copy>span{color:var(--oppal-noir);font-size:1rem;line-height:1.5}.location-modal-separator{color:var(--oppal-accueil-sombre);text-transform:uppercase;grid-template-columns:1fr auto 1fr;align-items:center;gap:1.5rem;margin:1.4rem 0 1.1rem;font-size:1.1rem;font-weight:800;display:grid}.location-modal-separator:before,.location-modal-separator:after{content:"";background:color-mix(in srgb, var(--theme-fonce) 35%, transparent);height:1px}.location-place-section{position:relative}.location-place-section h3{color:var(--oppal-institutionnel-sombre);align-items:center;gap:.75rem;margin:0 0 1rem;font-size:1.35rem;display:flex}.location-place-section h3 img{object-fit:contain;width:42px;height:42px}.location-place-form{border:1px solid var(--oppal-institutionnel-sombre);background:var(--oppal-blanc);border-radius:16px;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:68px;padding:0 .9rem 0 1rem;display:grid;position:relative}.location-place-form input{min-width:0;color:var(--oppal-noir);background:0 0;border:0;outline:0;padding:.85rem 1rem;font-size:1.15rem}.location-place-form input::placeholder{color:var(--texte-secondaire)}.location-place-form button{background:0 0;border-radius:50%;place-items:center;width:50px;height:50px;display:grid}.location-place-form button:hover:not(:disabled){background:color-mix(in srgb, var(--oppal-noir) 24%, transparent)}.location-place-form button img{object-fit:contain;width:34px;height:34px}.location-suggestions{z-index:2;pointer-events:auto;border:1px solid color-mix(in srgb, var(--theme-fonce) 40%, transparent);background:var(--oppal-blanc);box-shadow:0 12px 28px color-mix(in srgb, var(--theme-fonce) 15%, transparent);border-radius:12px;position:absolute;top:calc(100% - 1.25rem);left:0;right:0;overflow:hidden}.location-suggestions button{border-bottom:1px solid color-mix(in srgb, var(--oppal-noir) 8%, transparent);width:100%;color:var(--oppal-noir);pointer-events:auto;text-align:left;background:0 0;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.75rem;padding:.75rem 1rem;display:grid}.location-suggestions button:last-child{border-bottom:0}.location-suggestions button:hover:not(:disabled),.location-suggestions button.is-active{background:color-mix(in srgb, var(--oppal-noir) 22%, transparent)}.location-suggestion-icon{object-fit:contain;width:30px;height:30px}.location-suggestion-copy{flex-direction:column;gap:.2rem;min-width:0;display:flex}.location-suggestion-copy>span{color:var(--oppal-noir);font-size:.8rem}.location-modal-status{min-height:1.4rem;color:var(--theme-fonce);margin:.55rem 0 0;font-size:.86rem}.location-modal-privacy{color:var(--texte-secondaire);margin:1.25rem 0 0;font-size:.86rem;line-height:1.5}.location-modal-actions{justify-content:flex-end;margin-top:1.5rem;display:flex}.location-modal-search{background:var(--oppal-institutionnel-sombre);min-width:180px;color:var(--oppal-blanc);font:inherit;border-radius:999px;padding:.85rem 1.5rem;font-weight:800;transition:background .18s,opacity .18s}.location-modal-search:hover:not(:disabled){background:var(--theme-fonce)}.location-modal-search:disabled{cursor:not-allowed;opacity:.45}.location-modal :focus-visible{outline:3px solid color-mix(in srgb, var(--theme-fonce) 50%, transparent);outline-offset:3px}@media (width<=760px){.location-modal-backdrop{align-items:end;padding:0}.location-modal{border-radius:20px 20px 0 0;width:100%;max-height:92vh;padding:1.35rem}.location-modal-header{align-items:flex-start;gap:.9rem}.location-modal-heading-icon{width:70px;height:70px}.location-modal-heading-icon img{width:52px;height:52px}.location-modal-header h2{font-size:1.65rem}.location-modal-header p{font-size:.95rem}.location-modal-choices{grid-template-columns:1fr;gap:.75rem;margin-top:1.5rem}.location-choice-card{min-height:118px;padding:1rem}.location-choice-icon{width:64px;height:64px}.location-choice-icon img{width:48px;height:48px}.location-choice-copy strong{font-size:1.1rem}.location-choice-copy>span{font-size:.88rem}.location-modal-separator{margin:1.25rem 0 1rem}.location-place-section h3{font-size:1.1rem}.location-place-form{min-height:58px}.location-place-form input{padding-inline:.65rem;font-size:1rem}.location-modal-search{width:100%}}@media (prefers-reduced-motion:reduce){.location-choice-card{transition:none}}.search-radius-zone{position:relative}.search-radius-zone>.is-visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.search-radius-icon{z-index:1;object-fit:contain;opacity:.72;pointer-events:none;width:19px;height:19px;position:absolute;top:50%;left:.65rem;transform:translateY(-50%)}.home-geo-control{grid-area:2/1;place-self:center;align-items:center;gap:.45rem;width:max-content;margin-left:0;display:flex}.home-geo-icon{object-fit:contain;width:38px;height:38px}.home-geo-btn{border:1px solid color-mix(in srgb, var(--oppal-noir) 18%, transparent);background:color-mix(in srgb, var(--theme-clair) 22%, var(--oppal-blanc));width:auto;min-width:0;max-width:190px;height:29px;color:var(--oppal-noir);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;border-radius:999px;padding:0 .85rem;font-size:.7rem;font-weight:700;line-height:1;transition:opacity .18s;overflow:hidden}.home-geo-btn.has-location{text-align:left;flex-direction:column;justify-content:center;align-items:flex-start;gap:.15rem;height:auto;min-height:42px;padding-block:.38rem;display:flex}.home-geo-btn-label,.home-geo-btn-change{text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:block;overflow:hidden}.home-geo-btn-change{opacity:.82;font-size:.54rem;font-weight:500}.home-geo-btn:hover{opacity:.8}.directory-theme-adapted .home-geo-btn{background:color-mix(in srgb, var(--oppal-institutionnel-clair) 22%, var(--oppal-blanc))}.home-search-form{background:var(--oppal-blanc);height:38px;box-shadow:inset 0 1px 2px color-mix(in srgb, var(--theme-fonce) 14%, transparent);border-radius:30px;grid-area:1/2;justify-self:center;align-items:center;width:calc(100% - 16px);max-width:980px;margin-inline:auto;transition:background .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.home-search-form.is-enabled{background:var(--oppal-blanc);box-shadow:inset 0 1px 2px color-mix(in srgb, var(--theme-fonce) 10%, transparent), 0 0 0 1px color-mix(in srgb, var(--theme-clair) 28%, transparent)}.home-search-main-zone{scrollbar-width:thin;flex:auto;align-items:center;min-width:0;height:100%;display:flex;overflow-x:auto}.home-search-input{min-width:60px;color:var(--oppal-noir);background:0 0;border:none;outline:none;flex:1 0 60px;padding:.35rem 1.5rem;font-size:1.18rem}.home-search-radius{border-left:1px solid color-mix(in srgb, var(--theme-fonce) 24%, transparent);border-right:1px solid color-mix(in srgb, var(--theme-fonce) 24%, transparent);flex:0 0 106px;width:106px;height:38px}.home-search-radius select{width:100%;height:100%;color:var(--oppal-noir);background:0 0;border:0;outline:0;padding:0 1.25rem 0 2rem;font-size:.76rem;font-weight:700}.home-search-input::placeholder,.home-search-form.is-enabled .home-search-input::placeholder{color:var(--texte-suggestif);opacity:1}.home-search-submit:disabled{cursor:not-allowed}.home-search-submit{cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:38px;padding:0;display:flex;position:static;transform:none}.home-search-loupe{object-fit:contain;opacity:.35;filter:none;width:28px;height:28px}.home-search-form.is-enabled .home-search-loupe{opacity:.85;filter:none}.home-search-tag{background:var(--tag-accent,var(--oppal-lieux-clair));box-shadow:inset 0 0 0 1px var(--tag-accent-strong,var(--oppal-lieux-sombre));max-width:180px;color:var(--oppal-noir);white-space:nowrap;border-radius:999px;flex:none;align-items:center;gap:.28rem;margin-left:.45rem;padding:.32rem .65rem;font-size:.7rem;display:inline-flex}.home-search-tag>span{text-overflow:ellipsis;overflow:hidden}.home-search-tag-remove{background:color-mix(in srgb, var(--tag-accent-strong,var(--oppal-lieux-sombre)), transparent 72%);width:16px;height:16px;color:var(--tag-accent-strong,var(--theme-fonce));font:inherit;cursor:pointer;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:.85rem;line-height:1;display:inline-flex;position:static;transform:none}.home-search-tag-remove:hover,.home-search-tag-remove:focus-visible{background:color-mix(in srgb, var(--tag-accent-strong,var(--oppal-lieux-sombre)), transparent 55%);outline:none}@media (width<=680px){.home-geo-control{grid-area:3/1;margin-top:.5rem}.home-search-form{grid-area:1/1}.home-search-radius{flex-basis:94px;width:94px}.home-search-input{padding-inline:.8rem;font-size:1rem}}.home-search-form:not(.is-enabled){box-shadow:none;background:#e6e6e6}.home-search-form:not(.is-enabled) .home-search-input{color:#7a7a7a;cursor:not-allowed}.home-search-form:not(.is-enabled) .home-search-loupe{opacity:.35;filter:grayscale()brightness(.8)}.home-search-choices-menu{z-index:20;border:1px solid color-mix(in srgb, var(--choice-accent-strong) 48%, transparent);background:var(--oppal-blanc);width:calc(33.3333% - .333333rem);height:280px;max-height:280px;box-shadow:0 18px 42px color-mix(in srgb, var(--oppal-noir) 24%, transparent);border-radius:11px;grid-template-columns:repeat(2,minmax(0,1fr));gap:.25rem;padding:.45rem;animation:.18s ease-out both searchMenuEnter;display:grid;position:absolute;top:calc(100% + .55rem);overflow-y:auto}.home-search-choices-menu:before{content:"";top:-8px;left:var(--choice-arrow-left);border-top:1px solid color-mix(in srgb, var(--choice-accent-strong) 48%, transparent);border-left:1px solid color-mix(in srgb, var(--choice-accent-strong) 48%, transparent);background:var(--oppal-blanc);width:14px;height:14px;position:absolute;transform:translate(-50%)rotate(45deg)}.home-search-choices-menu.is-column-0{--choice-arrow-left:50%;left:0}.home-search-choices-menu.is-column-1{--choice-arrow-left:50%;left:calc(33.3333% + .166667rem)}.home-search-choices-menu.is-column-2,.home-search-choices-menu.is-column-3{--choice-arrow-left:50%;right:0}.home-search-choice{min-width:0;color:var(--oppal-noir);font:inherit;text-align:left;cursor:pointer;background-color:#0000;border:0;border-radius:7px;align-items:center;gap:.5rem;padding:.55rem .65rem;font-size:.76rem;font-weight:600;display:flex}.home-search-choice-icon{object-fit:contain;vertical-align:middle;flex:0 0 22px;width:22px;height:22px;display:inline-block}.home-search-choice>span{vertical-align:middle;text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;display:inline-block;overflow:hidden}.home-search-choice:not(.is-selected):hover,.home-search-choice:not(.is-selected):focus-visible,.home-search-choice:not(.is-selected).is-active{background-color:var(--surface-selected);box-shadow:inset 3px 0 0 var(--choice-accent-strong);outline:none}.home-search-choices-menu .home-search-choice.is-selected,.home-search-choices-menu .home-search-choice.is-selected:hover,.home-search-choices-menu .home-search-choice.is-selected:focus-visible{color:var(--oppal-noir);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--choice-accent-strong) 30%, transparent), 0 2px 7px color-mix(in srgb, var(--choice-accent-strong) 22%, transparent);outline:none;background-color:var(--choice-selected-accent,var(--choice-accent))!important}.home-search-choices-status{color:var(--oppal-noir);grid-column:1/-1;padding:.65rem;font-size:.76rem}@keyframes searchMenuEnter{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}@keyframes searchMenuExit{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-4px)}}.search-block.is-menu-closing .home-search-choices-menu,.search-block.is-menu-closing .home-search-smart-group{pointer-events:none;animation:.16s ease-in both searchMenuExit}@media (width<=820px){.home-search-choices-menu{width:100%;left:0;right:auto}.home-search-choices-menu.is-column-0,.home-search-choices-menu.is-column-1,.home-search-choices-menu.is-column-2,.home-search-choices-menu.is-column-3{left:0;right:auto}.home-search-choices-menu.is-column-0,.home-search-choices-menu.is-column-2{--choice-arrow-left:25%}.home-search-choices-menu.is-column-1,.home-search-choices-menu.is-column-3{--choice-arrow-left:75%}}@media (width<=420px){.home-search-choices-menu{grid-template-columns:1fr;--choice-arrow-left:50%!important}}.home-page{--theme-clair:var(--oppal-accueil-clair);--theme-fonce:var(--oppal-accueil-sombre);animation:.3s ease-out homePageFadeIn;overflow-x:clip}.home-offer-confirmation{z-index:1100;border:1px solid color-mix(in srgb, var(--oppal-accueil-sombre) 36%, transparent);background:color-mix(in srgb, var(--oppal-accueil-clair) 12%, var(--oppal-blanc));width:min(100% - 2rem,460px);color:var(--oppal-noir);box-shadow:0 12px 36px color-mix(in srgb, var(--oppal-noir) 20%, transparent);border-radius:16px;align-items:flex-start;gap:1rem;padding:1.1rem 1.2rem;display:flex;position:fixed;top:1.25rem;right:1.25rem}.home-offer-confirmation div{flex:1}.home-offer-confirmation strong{color:var(--oppal-institutionnel-sombre);margin-bottom:.3rem;font-family:Chivo,Franklin Gothic Medium,sans-serif;font-size:1.2rem;display:block}.home-offer-confirmation p{margin:0;font-size:.9rem;line-height:1.5}.home-offer-confirmation button{width:34px;height:34px;color:var(--oppal-noir);background:0 0;border-radius:50%;flex:none;place-items:center;font-size:1.5rem;line-height:1;display:grid}.home-offer-confirmation button:hover{background:color-mix(in srgb, var(--oppal-noir) 7%, transparent)}@keyframes homePageFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.home-hero{background:var(--oppal-blanc);z-index:2;position:relative;overflow:visible}.home-hero-inner{max-width:var(--content-shell-max);padding:0 var(--page-gutter);grid-template-columns:1fr 1fr;align-items:stretch;gap:0;min-height:250px;margin:-4px auto 0;display:grid}.home-hero-copy{z-index:2;padding:1.15rem 0 .8rem;position:relative}.home-hero-copy h1{letter-spacing:-.03em;color:var(--oppal-noir);margin:0 0 1rem;font-family:Chivo,Franklin Gothic Medium,sans-serif;font-size:clamp(3rem,4.5vw,4.15rem);font-weight:900;line-height:1.04}.home-hero-accent{color:var(--oppal-institutionnel-sombre)}.home-hero-lead{color:var(--oppal-noir);max-width:34rem;font-size:clamp(.9rem,1.25vw,1.12rem);line-height:1.35}.home-hero-illustration{justify-content:flex-end;align-items:flex-end;height:100%;line-height:0;display:flex;overflow:visible}.home-hero-mosaic-img{width:var(--hero-mosaic-width);object-fit:contain;object-position:bottom right;max-width:none;height:auto;margin:0;display:block}.home-search-band{z-index:5;width:calc(100% - var(--page-gutter) - var(--page-gutter));max-width:var(--content-max);background:var(--home-search-band-image) left top / 100% 100% no-repeat;background-color:var(--oppal-blanc);min-height:clamp(152px,11.8vw,168px);margin:0 auto;position:relative;overflow:visible}.home-search-band-inner{min-height:inherit}.home-search-options{grid-area:2/2;grid-template-columns:repeat(3,1fr);place-self:center;gap:.75rem;width:calc(100% - 16px);max-width:980px;margin-inline:auto;display:grid;position:relative}.home-search-option{background:color-mix(in srgb, var(--oppal-blanc) 5%, transparent);border:1px solid color-mix(in srgb, var(--oppal-blanc) 16%, transparent);color:var(--oppal-blanc);cursor:pointer;text-align:left;border-radius:11px;grid-template-columns:50px minmax(0,1fr);align-items:center;gap:.6rem;padding:.38rem .55rem;transition:transform .18s,background .18s,border-color .18s,box-shadow .18s;display:grid}.home-search-option:hover{background:color-mix(in srgb, var(--oppal-blanc) 8%, transparent);border-color:color-mix(in srgb, var(--oppal-blanc) 24%, transparent);cursor:pointer;transform:translateY(-1px)}.home-search-option:focus-visible{outline:2px solid color-mix(in srgb, var(--oppal-blanc) 78%, transparent);outline-offset:2px;box-shadow:0 0 0 1px color-mix(in srgb, var(--theme-fonce) 55%, transparent)}.home-search-option.is-selected{background:color-mix(in srgb, var(--oppal-blanc) 10%, transparent);border-color:var(--search-option-accent);box-shadow:0 0 0 1px var(--search-option-accent-strong), 0 3px 10px color-mix(in srgb, var(--search-option-accent-strong), transparent 58%)}.home-search-option-icon{object-fit:contain;flex-shrink:0;width:50px;height:50px}.home-search-option-label{white-space:pre-line;min-height:auto;color:var(--oppal-blanc);align-items:center;font-size:.84rem;font-weight:700;line-height:1.3;display:flex}.home-search-category-menu{z-index:20;border:1px solid color-mix(in srgb, var(--oppal-accueil-sombre) 35%, transparent);background:var(--oppal-blanc);width:100%;box-shadow:0 12px 28px color-mix(in srgb, var(--oppal-noir) 22%, transparent);border-radius:12px;gap:.25rem;padding:.45rem;display:grid;position:absolute;top:calc(100% + .55rem);left:0}.home-search-category-menu-title{color:var(--oppal-noir);margin:0;padding:.7rem .8rem .55rem;font-family:Chivo,Franklin Gothic Medium,sans-serif;font-size:1rem;font-weight:800}.home-search-category-choice{min-width:0;color:var(--oppal-noir);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;grid-template-columns:46px minmax(0,1fr) 20px;align-items:center;gap:.85rem;padding:.75rem .8rem;display:grid}.home-search-category-choice:hover,.home-search-category-choice:focus-visible{background:color-mix(in srgb, var(--category-accent) 24%, transparent);box-shadow:inset 3px 0 0 var(--category-accent-strong);outline:none}.home-search-category-choice>img{object-fit:contain;width:46px;height:46px}.home-search-category-choice strong,.home-search-category-choice small{display:block}.home-search-category-choice strong{font-size:.86rem;line-height:1.25}.home-search-category-choice small{color:var(--text-secondary);margin-top:.18rem;font-size:.7rem;line-height:1.35}.home-search-category-arrow{color:var(--category-accent-strong);text-align:center;font-size:1.45rem;line-height:1}.home-search-discovery-action{border-top:1px solid color-mix(in srgb, var(--oppal-noir) 12%, transparent);margin-top:.3rem;padding-top:.45rem}.home-search-discovery-action a{background:color-mix(in srgb, var(--oppal-categories-clair) 14%, transparent);color:var(--oppal-noir);border-radius:9px;justify-content:space-between;align-items:center;gap:1rem;padding:.7rem .8rem;font-size:.76rem;text-decoration:none;transition:background .18s,box-shadow .18s;display:flex}.home-search-discovery-action a:hover,.home-search-discovery-action a:focus-visible{background:color-mix(in srgb, var(--oppal-categories-clair) 25%, transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--oppal-categories-sombre) 24%, transparent);outline:none}.home-search-discovery-action strong{color:var(--oppal-categories-sombre);white-space:nowrap;font-size:.78rem}.home-search-empty-menu{z-index:20;width:100%;position:absolute;top:calc(100% + .55rem);left:0}.home-search-empty-menu .home-search-discovery-action{border:0;margin:0;padding:0}.home-search-smart-menu{z-index:20;width:100%;box-shadow:none;background:0 0;border:0;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:.75rem;padding:0;display:grid;position:absolute;top:calc(100% + .55rem);left:0}.home-search-smart-group{border:1px solid color-mix(in srgb, var(--suggestion-accent-strong) 28%, transparent);background:color-mix(in srgb, var(--suggestion-accent) 5%, var(--oppal-blanc));min-width:0;max-height:360px;box-shadow:0 10px 24px color-mix(in srgb, var(--oppal-noir) 16%, transparent);border-radius:11px;padding:.3rem;overflow-y:auto}.home-search-smart-group.is-column-0{grid-column:1}.home-search-smart-group.is-column-1{grid-column:2}.home-search-smart-group.is-column-2{grid-column:3}.home-search-smart-group button{width:100%;min-width:0;color:var(--oppal-noir);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:.7rem;padding:.55rem .65rem;display:grid}.home-search-smart-group button:hover,.home-search-smart-group button:focus-visible{background:var(--surface-selected);box-shadow:inset 3px 0 0 var(--suggestion-accent-strong);outline:none}.home-search-smart-group button img{object-fit:contain;width:36px;height:36px}.home-search-smart-group button>span{text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;font-weight:700;overflow:hidden}.home-search-smart-status{background:var(--oppal-blanc);color:var(--text-secondary);box-shadow:0 10px 24px color-mix(in srgb, var(--oppal-noir) 16%, transparent);border-radius:10px;grid-column:1/-1;margin:0;padding:.8rem;font-size:.78rem}.home-search-smart-footer{grid-column:1/-1;justify-content:flex-end;padding-top:.2rem;display:flex}.home-search-smart-footer button{border:1px solid color-mix(in srgb, var(--oppal-accueil-sombre) 42%, transparent);background:color-mix(in srgb, var(--oppal-accueil-clair) 24%, var(--oppal-blanc));min-width:58px;color:var(--oppal-noir);font:inherit;cursor:pointer;border-radius:999px;padding:.42rem .9rem;font-size:.74rem;font-weight:800}.home-search-smart-footer button:hover,.home-search-smart-footer button:focus-visible{background:color-mix(in srgb, var(--oppal-accueil-clair) 42%, var(--oppal-blanc));outline:none}@media (width<=1024px){.home-search-smart-menu{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.home-search-smart-group.is-column-0,.home-search-smart-group.is-column-1,.home-search-smart-group.is-column-2{grid-column:auto}}@media (width<=560px){.home-search-smart-menu{grid-template-columns:1fr}}.home-discovery{z-index:1;background:var(--oppal-blanc);padding:1.8rem 0 .4rem;position:relative}.home-discovery-inner{width:calc(100% - var(--page-gutter) - var(--page-gutter));max-width:var(--content-max);margin:0 auto}.home-discovery-header{justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:.9rem;display:flex}.home-discovery-kicker{color:var(--oppal-institutionnel-sombre);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .15rem;font-size:.68rem;font-weight:800}.home-discovery-header h2{color:var(--oppal-noir);margin:0;font-family:Chivo,Franklin Gothic Medium,sans-serif;font-size:clamp(1.35rem,2vw,1.8rem);font-weight:900}.home-discovery-controls{gap:.45rem;display:flex}.home-discovery-actions{align-items:center;gap:.8rem;display:flex}.home-discovery-all{background:var(--oppal-institutionnel-clair);min-height:38px;color:var(--oppal-institutionnel-sombre);border-radius:999px;align-items:center;padding:.55rem .8rem;font-size:.74rem;font-weight:800;text-decoration:none;transition:background .18s,box-shadow .18s;display:inline-flex}.home-discovery-all:hover,.home-discovery-all:focus-visible{background:color-mix(in srgb, var(--oppal-institutionnel-clair) 72%, var(--oppal-blanc));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--oppal-institutionnel-sombre) 28%, transparent);outline:none}.home-discovery-controls button{border:1px solid color-mix(in srgb, var(--oppal-noir) 14%, transparent);background:var(--oppal-blanc);width:38px;height:38px;color:var(--oppal-noir);box-shadow:0 3px 10px color-mix(in srgb, var(--oppal-noir) 8%, transparent);cursor:pointer;border-radius:50%;place-items:center;font-size:1.45rem;line-height:1;display:grid}.home-discovery-controls button:hover,.home-discovery-controls button:focus-visible{border-color:var(--oppal-institutionnel-sombre);background:var(--oppal-institutionnel-clair);outline:none}.home-discovery-carousel{overscroll-behavior-inline:contain;scroll-behavior:smooth;scroll-snap-type:inline mandatory;scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--oppal-institutionnel-sombre) 28%, transparent) transparent;gap:.85rem;padding:.15rem .1rem .9rem;display:flex;overflow-x:auto}.home-discovery-card{scroll-snap-align:start;border:1px solid color-mix(in srgb, var(--discovery-accent-strong) 22%, transparent);background:linear-gradient(145deg, color-mix(in srgb, var(--discovery-accent) 22%, var(--oppal-blanc)), var(--oppal-blanc) 68%);min-height:230px;color:var(--oppal-noir);box-shadow:0 5px 16px color-mix(in srgb, var(--oppal-noir) 8%, transparent);border-radius:16px;flex-direction:column;flex:0 0 clamp(220px,23vw,292px);padding:1rem;text-decoration:none;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.home-discovery-card:hover,.home-discovery-card:focus-visible{border-color:color-mix(in srgb, var(--discovery-accent-strong) 42%, transparent);box-shadow:0 10px 24px color-mix(in srgb, var(--oppal-noir) 12%, transparent);outline:none;transform:translateY(-3px)}.home-discovery-card-visual{background:color-mix(in srgb, var(--oppal-blanc) 82%, transparent);width:68px;height:68px;box-shadow:0 3px 12px color-mix(in srgb, var(--oppal-noir) 7%, transparent);border-radius:15px;place-items:center;margin-bottom:.7rem;display:grid}.home-discovery-card-visual img{object-fit:contain;width:58px;height:58px}.home-discovery-card-eyebrow{color:var(--discovery-accent-strong);letter-spacing:.05em;text-transform:uppercase;font-size:.65rem;font-weight:900}.home-discovery-card h3{color:var(--color-text);margin:.22rem 0 0;font-size:1rem;line-height:1.25}.home-discovery-card p{color:var(--text-secondary);margin:.42rem 0 .8rem;font-size:.75rem;line-height:1.45}.home-discovery-card>strong{color:var(--discovery-accent-strong);margin-top:auto;font-size:.72rem}@media (width<=680px){.home-discovery{padding-top:1.35rem}.home-discovery-inner{width:100%}.home-discovery-header{padding-inline:var(--page-gutter)}.home-discovery-carousel{padding-inline:var(--page-gutter);scroll-padding-inline:var(--page-gutter)}.home-discovery-card{flex-basis:min(78vw,270px)}.home-discovery-actions{gap:.45rem}.home-discovery-all{padding-inline:.65rem}}@media (prefers-reduced-motion:reduce){.home-discovery-carousel{scroll-behavior:auto}.home-discovery-card,.home-discovery-all{transition:none}}.home-bottom{z-index:1;background:var(--oppal-blanc);padding:1.75rem 0 2.5rem;position:relative}.home-bottom-inner{width:calc(100% - var(--page-gutter) - var(--page-gutter));max-width:var(--content-max);grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:1rem;margin:0 auto;display:grid}.home-panel{border:1px solid color-mix(in srgb, var(--oppal-noir) 12%, transparent);background:var(--oppal-blanc);box-shadow:0 2px 10px color-mix(in srgb, var(--theme-fonce) 6%, transparent);border-radius:16px;overflow:hidden}.home-panel-messages{border-color:var(--oppal-categories-clair);padding:1.1rem}.home-panel-header{align-items:center;gap:.75rem;margin-bottom:.9rem;display:flex}.home-panel-title{color:var(--oppal-noir);margin:0;font-size:1.02rem;font-weight:800}.home-panel-subtitle{color:var(--oppal-noir);margin:.1rem 0 0;font-size:.78rem;line-height:1.2}.messages-grid{grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:.9rem;display:grid}.message-card{border:1px solid color-mix(in srgb, var(--theme-fonce) 24%, transparent);background:var(--oppal-blanc);border-radius:12px;flex-direction:column;gap:.42rem;padding:.55rem;transition:border-color .18s,box-shadow .18s,transform .18s;display:flex;position:relative}.message-card:hover{border-color:color-mix(in srgb, var(--theme-fonce) 35%, transparent);box-shadow:0 5px 14px color-mix(in srgb, var(--theme-fonce) 8%, transparent);transform:translateY(-1px)}.message-badge{letter-spacing:.06em;background:var(--oppal-institutionnel-clair);color:var(--oppal-institutionnel-sombre);border-radius:999px;width:fit-content;margin-bottom:.1rem;padding:.18rem .5rem;font-size:.65rem;font-weight:900;display:inline-block}.message-thumb{object-fit:cover;border-radius:8px;width:100%;height:clamp(86px,7vw,112px)}.message-thumb-placeholder{background:var(--oppal-categories-clair)}.message-card-title{color:var(--oppal-noir);margin:0;font-size:.8rem;font-weight:800;line-height:1.25}.message-card-excerpt{color:var(--oppal-noir);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:.73rem;line-height:1.4;display:-webkit-box;overflow:hidden}.message-link{color:var(--oppal-institutionnel-sombre);text-underline-offset:3px;margin-top:auto;font-size:.74rem;font-weight:700;text-decoration:underline;transition:color .18s}.message-link:hover{color:var(--oppal-institutionnel-sombre);opacity:.8}.home-panel-see-all{color:var(--oppal-institutionnel-sombre);text-underline-offset:3px;font-size:.8rem;font-weight:700;text-decoration:underline;transition:opacity .18s;display:inline-block}.home-panel-see-all:hover{opacity:.75}.home-panel-offre{border:1px solid var(--oppal-accueil-sombre);flex-direction:column;min-height:330px;display:flex;position:relative;overflow:hidden}.home-offre-bg{opacity:1;z-index:0;background-position:bottom;background-size:cover;position:absolute;inset:0}.home-offre-bg:after{content:"";background:linear-gradient(90deg,#fffffffa 0%,#ffffffdb 38%,#ffffff47 72%,#ffffff14 100%);position:absolute;inset:0}.home-offre-content{z-index:1;flex-direction:column;gap:1rem;height:100%;padding:1.1rem 1.4rem 1rem;display:flex;position:relative}.home-offre-header{align-items:flex-start;gap:.7rem;display:flex}.home-offre-icon{object-fit:contain;filter:none;flex-shrink:0;width:42px;height:42px}.home-offre-title{color:var(--oppal-accueil-sombre);letter-spacing:-.02em;margin:0;font-size:clamp(1.25rem,1.8vw,1.7rem);font-weight:900;line-height:1.1}.home-offre-title button{color:inherit;font:inherit;font-weight:inherit;line-height:inherit;letter-spacing:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.home-offre-title button:hover{text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:2px}.home-offre-items{flex-direction:column;gap:.65rem;display:flex}.home-offre-item{align-items:center;gap:.75rem;display:flex}.home-offre-item-icon{object-fit:contain;flex-shrink:0;width:38px;height:38px}.home-offre-item-icon-aps{filter:none}.home-offre-item strong{color:var(--oppal-noir);font-size:.88rem;font-weight:700;line-height:1.2;display:block}.home-offre-item span{color:var(--oppal-noir);font-size:.79rem;line-height:1.2;display:block}.home-offre-btn{background:var(--oppal-accueil-sombre);color:var(--oppal-blanc);cursor:pointer;border:none;border-radius:30px;justify-content:center;align-items:center;width:fit-content;margin-top:auto;padding:.6rem 1.3rem;font-size:.84rem;font-weight:700;transition:background .18s,transform .18s,box-shadow .18s;display:inline-flex}.home-offre-btn:hover{background:var(--theme-fonce);box-shadow:0 4px 12px color-mix(in srgb, var(--theme-fonce) 22%, transparent);transform:translateY(-1px)}@media (width<=1024px){.home-hero-inner{grid-template-columns:.9fr 1.1fr}.home-hero-copy h1{font-size:clamp(2.5rem,5.6vw,3.6rem)}.home-bottom-inner{grid-template-columns:1fr}.home-search-band{min-height:clamp(11.5rem,22vw,14.0625rem)}}@media (width<=680px){.home-hero-inner{grid-template-columns:1fr}.home-hero-copy h1{font-size:clamp(2rem,10vw,2.8rem)}.home-hero-mosaic-img{width:100%}.home-search-band{background-size:auto 100%;width:100%;max-width:none;min-height:clamp(22rem,95vw,24.375rem)}.messages-grid{grid-template-columns:1fr}.message-thumb{height:180px}}@media (prefers-reduced-motion:reduce){.home-page{animation:none}.message-card,.home-offre-btn,.home-geo-btn{transition:none}}.search-block-shell{width:100%;height:100%;min-height:inherit;padding:clamp(20px,1.7vw,22px) 0 clamp(10px,1vw,12px);display:block}.search-block{--search-control-height:42px;--search-category-control-height:56px;--search-row-icon-size:44px;--search-decoration-zone-height:clamp(22px, 2vw, 28px);width:100%;min-width:0;height:100%;padding-bottom:var(--search-decoration-zone-height);grid-template-rows:auto auto;grid-template-columns:270px minmax(0,1fr);align-content:end;align-items:center;gap:clamp(.3rem,.45vw,.4rem) 1.25rem;display:grid}.search-block>.search-block-primary{display:contents}.search-block-primary>.home-geo-control{width:270px;height:var(--search-category-control-height);grid-area:2/1;justify-content:center;align-self:center;align-items:center;gap:.25rem;margin:0;display:flex;transform:translateY(-3px)}.search-block-primary>.home-geo-control .home-geo-icon{width:var(--search-row-icon-size);height:var(--search-row-icon-size);flex:0 0 var(--search-row-icon-size);object-fit:contain}.search-block-primary>.home-geo-control .home-geo-btn,.search-block-primary>.home-geo-control .home-geo-btn.has-location{box-sizing:border-box;height:var(--search-category-control-height);min-height:var(--search-category-control-height);text-align:center;border-radius:11px;justify-content:center;align-self:center;align-items:center;margin:0;padding:.6rem 1rem}.search-block-primary>.home-search-form{box-sizing:border-box;width:calc(100% - 16px);max-width:980px;height:var(--search-control-height);grid-area:1/2;align-self:center;margin:0 auto;transform:translateY(-5px)}.search-block-primary .home-search-main-zone,.search-block-primary .home-search-radius,.search-block-primary .home-search-submit{height:var(--search-control-height)}.search-block-primary .home-search-radius{align-items:center;display:flex}.search-block-primary .home-search-radius select,.search-block-primary .home-search-submit{height:100%}.search-block>.home-search-options{grid-area:2/2;gap:.5rem;transform:translateY(-3px)}.search-block>.home-search-options .home-search-option{box-sizing:border-box;height:var(--search-category-control-height);min-height:var(--search-category-control-height);border-radius:11px;padding-block:.3rem}.search-block>.home-search-options .home-search-option-icon{width:var(--search-row-icon-size);height:var(--search-row-icon-size)}:is(.home-page:has(.search-block.is-menu-open) .home-discovery,.home-page:has(.search-block.is-menu-open) .home-bottom,.locations-page:has(.search-block.is-menu-open) .locations-results-shell){opacity:.96;filter:brightness(.98);transition:opacity .18s,filter .18s}.search-block .home-search-smart-menu{gap:.5rem}.search-block .home-search-smart-group{height:280px;max-height:280px;box-shadow:0 18px 42px color-mix(in srgb, var(--oppal-noir) 24%, transparent);border-radius:11px;animation:.18s ease-out both searchMenuEnter}.search-block .home-search-smart-group button.is-selected{background:var(--suggestion-selected-accent);box-shadow:inset 0 0 0 1px var(--suggestion-accent-strong)}.search-block .home-search-smart-group button.is-selected:hover,.search-block .home-search-smart-group button.is-selected:focus-visible{background:var(--surface-selected);box-shadow:inset 3px 0 0 var(--suggestion-accent-strong)}@media (prefers-reduced-motion:reduce){.search-block .home-search-choices-menu,.search-block .home-search-smart-group{animation:none}}@media (width<=1024px){.search-block>.home-search-options{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=680px){.search-block-shell{width:100%;padding:clamp(4.5rem,15vw,5rem) 20px 1.25rem}.search-block{grid-template-rows:auto auto auto;grid-template-columns:1fr}.search-block>.search-block-primary{display:contents}.search-block>.home-search-options{grid-area:2/1}.search-block-primary>.home-geo-control{grid-area:3/1;justify-content:flex-start;width:100%}.search-block-primary>.home-search-form{width:100%}}@media (width<=420px){.search-block>.home-search-options{grid-template-columns:1fr}}.offer-modal-backdrop{z-index:var(--z-modal);background:color-mix(in srgb, var(--oppal-noir) 66%, transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);place-items:center;padding:clamp(1rem,4vw,3rem);display:grid;position:fixed;inset:0}.offer-modal{--theme-clair:var(--oppal-accueil-clair);--theme-fonce:var(--oppal-accueil-sombre);border:1px solid color-mix(in srgb, var(--oppal-noir) 10%, transparent);background:var(--oppal-blanc);width:min(100%,940px);max-height:calc(100vh - 2rem);color:var(--oppal-noir);box-shadow:0 24px 70px color-mix(in srgb, var(--theme-fonce) 30%, transparent);border-radius:22px;padding:clamp(1.5rem,4vw,3rem);position:relative;overflow-y:auto}.offer-modal-close{width:42px;height:42px;color:var(--oppal-noir);background:0 0;border-radius:50%;place-items:center;font-size:2rem;font-weight:300;line-height:1;display:grid;position:absolute;top:1.1rem;right:1.25rem}.offer-modal-close:hover{background:color-mix(in srgb, var(--oppal-noir) 6%, transparent)}.offer-modal-header{align-items:center;gap:1.4rem;padding-right:3rem;display:flex}.offer-modal-heading-icon{background:color-mix(in srgb, var(--theme-clair) 18%, transparent);border-radius:50%;flex:none;place-items:center;width:92px;height:92px;display:grid}.offer-modal-heading-icon img{object-fit:contain;width:64px;height:64px}.offer-modal-header h2{color:var(--oppal-institutionnel-sombre);letter-spacing:-.035em;margin:0 0 .35rem;font-family:Chivo,Franklin Gothic Medium,sans-serif;font-size:clamp(2rem,4vw,3rem);line-height:1.08}.offer-modal-header p{max-width:42rem;margin:0;font-size:clamp(.95rem,2vw,1.12rem);line-height:1.45}.offer-modal-form{border:1px solid color-mix(in srgb, var(--theme-fonce) 22%, transparent);background:color-mix(in srgb, var(--theme-clair) 9%, var(--oppal-blanc));border-radius:18px;margin-top:2rem;padding:clamp(1.1rem,2.5vw,1.6rem)}.offer-modal-form fieldset{border:0;min-width:0;margin:0;padding:0}.offer-modal-form h3{color:var(--oppal-institutionnel-sombre);margin:0 0 1.15rem;font-family:Chivo,Franklin Gothic Medium,sans-serif;font-size:1.35rem}.offer-modal-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.2rem;display:grid}.offer-modal-fields label{gap:.4rem;min-width:0;font-size:.88rem;font-weight:700;display:grid}.offer-modal-fields em{color:var(--oppal-institutionnel-sombre);font-style:normal}.offer-modal-offer-selection{background:var(--oppal-blanc);border-radius:12px;grid-column:1/-1;border:1px solid color-mix(in srgb, var(--theme-fonce) 24%, transparent)!important;margin:.2rem 0 0!important;padding:1rem!important}.offer-modal-offer-selection legend{color:var(--oppal-institutionnel-sombre);padding:0 .35rem;font-weight:800}.offer-modal-offer-selection legend span{font-size:.78rem;font-weight:500}.offer-modal-selectable-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.2rem;display:grid}.offer-modal-offer-selection .offer-modal-selectable-option{border:1px solid color-mix(in srgb, var(--oppal-noir) 16%, transparent);background:var(--oppal-blanc);min-height:3.5rem;box-shadow:none;color:var(--oppal-noir);cursor:pointer;border-radius:9px;grid-template-columns:1.4rem 1.2rem minmax(0,1fr);align-items:center;gap:.5rem;padding:.65rem .8rem;transition:none;display:grid}.offer-modal-selectable-option>input[type=checkbox]{cursor:pointer;width:1.2rem;height:1.2rem;box-shadow:none;margin:0}.offer-modal-selectable-option>span{min-width:0;color:var(--oppal-noir);align-items:center;font-size:.88rem;font-weight:700;display:flex}.offer-modal-selectable-option>img{object-fit:contain;opacity:1;visibility:visible;flex:none;width:1.4rem;height:1.4rem}.offer-modal-offer-selection .offer-modal-selectable-option:hover,.offer-modal-offer-selection .offer-modal-selectable-option:focus-within,.offer-modal-offer-selection .offer-modal-selectable-option.is-selected,.offer-modal-offer-selection .offer-modal-selectable-option.is-selected:hover,.offer-modal-offer-selection .offer-modal-selectable-option.is-selected:focus-within{border-color:color-mix(in srgb, var(--oppal-noir) 16%, transparent);background:var(--oppal-blanc);box-shadow:none;color:var(--oppal-noir)}.offer-modal-selectable-option:hover>span,.offer-modal-selectable-option:focus-within>span{color:var(--oppal-noir)}.offer-modal-offer-selection>small{color:#9d2f2f;margin-top:.65rem;font-size:.78rem;display:block}.offer-modal-fields input:not([type=checkbox]),.offer-modal-fields textarea{border:1px solid color-mix(in srgb, var(--oppal-noir) 22%, transparent);background:var(--oppal-blanc);width:100%;min-width:0;color:var(--oppal-noir);font:inherit;border-radius:11px;outline:0;padding:.78rem .9rem;font-weight:400}.offer-modal-fields textarea{appearance:none;box-shadow:none;resize:vertical;border-style:solid;border-width:1px}.offer-modal-fields input:not([type=checkbox]):focus,.offer-modal-fields textarea:focus{border-color:var(--theme-fonce);box-shadow:none}.offer-modal-fields input:not([type=checkbox]):focus-visible,.offer-modal-fields textarea:focus-visible{outline:0}.offer-modal-message{grid-column:1/-1}.offer-modal-message small{color:var(--texte-secondaire);font-size:.74rem;font-weight:400}.offer-modal-fields .offer-modal-message-count{justify-content:space-between;align-items:center;gap:1rem;display:flex}.offer-modal-actions{justify-content:space-between;align-items:center;gap:1rem;margin-top:1.2rem;display:flex}.offer-modal-status{color:var(--oppal-noir);margin:0;font-size:.8rem}.offer-modal-actions button{background:var(--oppal-accueil-sombre);color:var(--oppal-blanc);border-radius:30px;flex:none;padding:.72rem 1.7rem;font-size:.9rem;font-weight:800;transition:background .18s,transform .18s,box-shadow .18s}.offer-modal-actions button:hover{background:var(--theme-fonce);box-shadow:0 4px 12px color-mix(in srgb, var(--theme-fonce) 22%, transparent);transform:translateY(-1px)}.offer-modal-actions button:disabled{cursor:wait;opacity:.65;box-shadow:none;transform:none}.offer-modal-submit-error{color:#9d2f2f;margin:.4rem 0 0;font-size:.8rem;font-weight:700}.offer-modal-success{border:1px solid color-mix(in srgb, var(--oppal-institutionnel-sombre) 24%, transparent);background:color-mix(in srgb, var(--oppal-institutionnel-clair) 9%, var(--oppal-blanc));text-align:center;border-radius:18px;margin-top:2rem;padding:clamp(1.5rem,4vw,2.5rem)}.offer-modal-success strong{color:var(--oppal-institutionnel-sombre);font-family:Chivo,Franklin Gothic Medium,sans-serif;font-size:1.65rem;display:block}.offer-modal-success p{margin:.65rem 0 1.4rem;line-height:1.5}.offer-modal-success button{background:var(--oppal-institutionnel-sombre);color:var(--oppal-blanc);cursor:pointer;border-radius:30px;padding:.72rem 1.7rem;font-size:.9rem;font-weight:800}.offer-modal :focus-visible{outline:3px solid color-mix(in srgb, var(--theme-fonce) 50%, transparent);outline-offset:3px}@media (width<=760px){.offer-modal-backdrop{align-items:end;padding:0}.offer-modal{border-radius:20px 20px 0 0;width:100%;max-height:94vh;padding:1.35rem}.offer-modal-form{padding:.85rem}.offer-modal-offer-selection{padding:.7rem!important}.offer-modal-selectable-fields{grid-template-columns:1fr}.offer-modal-header{align-items:flex-start;gap:.9rem}.offer-modal-heading-icon{width:70px;height:70px}.offer-modal-heading-icon img{width:50px;height:50px}.offer-modal-header h2{font-size:1.65rem}.offer-modal-fields{grid-template-columns:1fr}.offer-modal-message{grid-column:auto}.offer-modal-actions{flex-direction:column;align-items:stretch}.offer-modal-actions button{width:100%}}@media (prefers-reduced-motion:reduce){.offer-modal-actions button{transition:none}}.directory-detail{min-width:0}.directory-detail-back{color:var(--oppal-noir);background:0 0;border-bottom:1px solid;margin-top:.75rem;padding:0;font-weight:800}.directory-detail-header{align-items:flex-start;gap:1rem;margin:0;display:flex}.directory-detail-header img{object-fit:contain;flex:0 0 64px;width:64px;height:64px}.directory-detail-header h2{margin:0;font-size:1.25rem;line-height:1.15}.directory-detail-header p{color:var(--text-secondary);margin:.4rem 0 0}.directory-detail-facts{gap:.8rem;margin:1.25rem 0 0;display:grid}.directory-detail-facts div{min-width:0}.directory-detail-facts dt{color:var(--text-secondary);text-transform:uppercase;align-items:center;gap:.4rem;font-size:.72rem;font-weight:800;display:flex}.directory-detail-facts dd{overflow-wrap:anywhere;margin:.2rem 0 0 1.45rem;font-size:.84rem;line-height:1.4}.directory-detail-facts a{color:var(--theme-fonce);text-decoration:underline}.directory-detail-accordions{gap:.65rem;margin-top:1.25rem;display:grid}.directory-detail-section{border:1px solid var(--border-default);border-radius:9px;overflow:hidden}.directory-detail-section h3{margin:0}.directory-detail-section h3 button{background:var(--surface-secondary);width:100%;color:var(--text-primary);text-align:left;justify-content:space-between;gap:.75rem;padding:.75rem;font-size:.82rem;font-weight:800;display:flex}.directory-detail-section h3 button[aria-expanded=true]{background:var(--theme-clair)}.directory-detail-panel{padding:.8rem;font-size:.82rem;line-height:1.5}.directory-detail-list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.directory-detail-list li{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.directory-detail-activity-icon{object-fit:contain;flex:0 0 30px;width:30px;height:30px}.directory-detail-adapted{background:var(--oppal-noir);color:var(--oppal-blanc);border-radius:999px;padding:.12rem .35rem;font-size:.64rem;font-weight:800}.directory-detail-schedule{margin:0;padding-left:.9rem;list-style-type:disc;list-style-position:inside}.directory-detail-schedule li{margin:.2rem 0;padding:0}@media (width<=680px){.directory-detail-header{align-items:flex-start}}.locations-page{--theme-clair:var(--oppal-lieux-clair);--theme-fonce:var(--oppal-lieux-sombre);animation:.3s ease-out homePageFadeIn}.directory-theme-activities{--theme-clair:var(--oppal-aps-clair);--theme-fonce:var(--oppal-aps-sombre)}.directory-theme-adapted{--theme-clair:var(--oppal-blanc);--theme-fonce:var(--oppal-noir)}.directory-theme-discover{--theme-clair:var(--oppal-categories-clair);--theme-fonce:var(--oppal-categories-sombre)}.directory-theme-search{--theme-clair:var(--oppal-accueil-clair);--theme-fonce:var(--oppal-accueil-sombre)}.directory-theme-search .locations-heading h1 .locations-heading-accent{color:var(--oppal-institutionnel-sombre)}.directory-theme-activities .locations-heading-accent{color:var(--oppal-aps-sombre)}.directory-theme-adapted .locations-heading-accent{color:var(--oppal-noir)}.directory-theme-discover .locations-heading-accent{color:var(--oppal-categories-sombre)}.discover-results-shell{padding:clamp(3rem,5vw,4.5rem) 0 5rem;display:block}.discover-toolbar{gap:1.5rem;display:grid}.discover-toolbar-heading{max-width:720px}.discover-eyebrow,.discover-step{color:var(--oppal-categories-sombre);letter-spacing:.09em;text-transform:uppercase;margin-bottom:.55rem;font-size:.67rem;font-weight:900;display:block}.discover-toolbar-heading h2,.discover-map-copy h2,.discover-catalog-heading h2{color:var(--oppal-noir);letter-spacing:-.035em;margin:0;font-size:clamp(1.65rem,3vw,2.35rem);line-height:1.12}.discover-toolbar-heading p{max-width:650px;color:var(--text-secondary);margin:.75rem 0 0;font-size:.94rem;line-height:1.65}.discover-filter-row{grid-template-columns:repeat(6,minmax(0,1fr));gap:.65rem;display:grid}.discover-filter-chip{border:1px solid var(--border-default);background:var(--surface-primary);width:100%;min-width:0;min-height:46px;color:var(--text-primary);text-align:left;border-radius:999px;align-items:center;gap:.5rem;padding:.4rem .85rem;font-size:.78rem;font-weight:700;line-height:1.2;transition:border-color .18s,background .18s,transform .18s;display:inline-flex}.discover-filter-chip:hover{border-color:var(--theme-fonce);transform:translateY(-1px)}.discover-filter-chip.is-selected{border-color:var(--theme-fonce);background:var(--surface-selected)}.discover-filter-chip img{object-fit:contain;width:31px;height:31px}.discover-filter-chip span{background:var(--surface-secondary);border-radius:999px;place-items:center;min-width:22px;height:22px;padding:0 .35rem;font-size:.65rem;display:grid}.discover-map-stage{margin-top:0}.discover-map-copy,.discover-catalog-heading{justify-content:space-between;align-items:end;gap:2rem;margin-bottom:1.25rem;display:flex}.discover-map-copy>p,.discover-catalog-heading>p{color:var(--text-secondary);white-space:nowrap;margin:0 0 .25rem;font-size:.8rem;font-weight:700}.discover-map-stage .discover-filter-row{margin:0 0 1rem}.discover-map-canvas{border:1px solid var(--border-default);background:var(--surface-secondary);height:clamp(560px,55vw,720px);box-shadow:var(--shadow-md);border-radius:22px;position:relative;overflow:hidden}.discover-map-canvas .map-container{border-radius:0}.discover-map-key{z-index:500;border:1px solid var(--border-default);background:color-mix(in srgb, var(--oppal-blanc) 94%, transparent);max-width:calc(100% - 2rem);box-shadow:var(--shadow-sm);color:var(--text-primary);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:999px;align-items:center;gap:.55rem;padding:.65rem .85rem;font-size:.7rem;font-weight:700;display:flex;position:absolute;bottom:1rem;left:1rem}.discover-map-key img{object-fit:contain;width:25px;height:25px}.discover-catalog{margin-top:clamp(3.5rem,7vw,6rem)}.discover-place-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.discover-place-card{border-radius:14px;min-height:190px;padding:1.15rem}.discover-place-card .location-card-pin{align-self:flex-start;margin:0 0 .9rem}.discover-place-card h3{font-size:1.02rem}.discover-place-card p{margin-top:.4rem;line-height:1.5}.discover-place-activities{font-weight:700;color:var(--theme-fonce)!important;margin:.85rem 0!important;font-size:.7rem!important}.discover-place-meta{flex-wrap:wrap;gap:.4rem;min-height:27px;margin:.9rem 0;display:flex}.discover-place-meta span{background:var(--surface-selected);color:var(--theme-fonce);border-radius:999px;padding:.3rem .55rem;font-size:.64rem;font-weight:800}.discover-place-card .location-card-link{margin-top:auto}.discover-no-results{color:var(--text-secondary);text-align:center;padding:4rem 1rem}.locations-hero{z-index:2;background:var(--oppal-blanc);position:relative;overflow:visible}.locations-hero-inner{width:100%;max-width:var(--content-shell-max);padding:0 var(--page-gutter);grid-template-columns:minmax(0,39fr) minmax(0,61fr);align-items:stretch;column-gap:clamp(1rem,2vw,1.75rem);margin:0 auto;display:grid}.locations-heading{justify-content:center;align-items:center;gap:clamp(.8rem,1.25vw,1.2rem);min-height:100%;padding:clamp(.75rem,1.5vw,1.35rem) clamp(1rem,2.2vw,2rem);display:flex}.locations-heading img{object-fit:contain;flex:none;width:clamp(68px,6vw,84px);height:clamp(68px,6vw,84px)}.locations-heading h1{letter-spacing:-.025em;min-width:0;color:var(--oppal-noir);margin:0;font-size:clamp(1.7rem,2.15vw,2.1rem);line-height:1.08}.locations-heading.is-long-title h1{font-size:clamp(1.55rem,2vw,1.95rem)}.locations-heading h1 span{white-space:normal;text-wrap:balance;display:block}.locations-heading h1 .locations-heading-accent{color:var(--theme-fonce)}.locations-mosaic{align-self:end;width:100%;height:auto;display:block}.locations-search-band{width:calc(100% - var(--page-gutter) - var(--page-gutter));max-width:var(--content-max);min-height:clamp(108px,8.61vw,124px);color:var(--oppal-blanc);background:var(--directory-search-band-image) left top / 100% 100% no-repeat;background-color:var(--oppal-blanc);margin:-2px auto 0;position:relative}.locations-search-band:has(.search-block){min-height:clamp(152px,11.8vw,168px)}.locations-search-inner:not(.search-block-shell){grid-template-rows:1fr;grid-template-columns:21.5% minmax(0,1fr);align-items:center;gap:1.5rem;padding:0 1.4rem;display:grid;position:absolute;inset:3% 0 28%}.locations-search-inner.search-block-shell{position:absolute;inset:0}.locations-search-inner:not(:has(.search-block)) .home-geo-control{grid-area:1/1;margin:0}.locations-search-inner:not(:has(.search-block)) .home-search-form{grid-area:1/2;width:100%;margin:0}.locations-results-shell{z-index:1;width:calc(100% - var(--page-gutter) - var(--page-gutter));max-width:var(--content-max);grid-template-columns:275px minmax(0,1fr);gap:2rem;margin:0 auto;padding:2rem 0 3rem;display:grid;position:relative}.locations-sidebar-header{min-height:70px}.locations-category-title{align-items:flex-start;gap:.75rem;display:flex}.locations-category-title>img{object-fit:contain;width:64px;height:64px}.locations-category-title h2{margin:0;font-size:clamp(1.65rem,2.3vw,2.2rem);line-height:1.05}.locations-category-title p{color:var(--oppal-noir);margin:.5rem 0 0;font-size:.85rem}.locations-filter-toggle{border:0;border-bottom:1px solid var(--theme-fonce);cursor:pointer;background:0 0;align-items:center;gap:.65rem;width:100%;margin-top:2.5rem;padding:.7rem 0;font-weight:700;display:flex}.locations-filter-toggle img{width:27px}.locations-filter-list{gap:.8rem;padding:1rem 0;display:grid}.locations-filter-list label{cursor:pointer;align-items:center;gap:.55rem;font-size:.86rem;display:flex}.locations-filter-list input{accent-color:var(--oppal-institutionnel-sombre)}.locations-all-filter{cursor:pointer;background:0 0;border:0;border-bottom:1px solid;width:fit-content;padding:0;font-weight:700}.locations-map{z-index:0;isolation:isolate;border:1px solid var(--theme-fonce);height:470px;position:relative;overflow:hidden}.locations-map .map-container{border-radius:0}.locations-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;margin-top:1.5rem;display:grid}.location-result-card{border:1px solid var(--theme-fonce);background:var(--oppal-blanc);cursor:pointer;border-radius:7px;flex-direction:column;min-width:0;padding:1rem;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex}.location-result-card:hover,.location-result-card:focus-visible{border-color:var(--oppal-institutionnel-sombre);box-shadow:0 8px 20px color-mix(in srgb, var(--theme-fonce) 14%, transparent);transform:translateY(-2px)}.location-result-card.is-selected{border-width:2px;border-color:var(--oppal-institutionnel-sombre);background:color-mix(in srgb, var(--theme-clair) 18%, var(--oppal-blanc));box-shadow:0 8px 22px color-mix(in srgb, var(--theme-fonce) 18%, transparent)}.location-card-pin{object-fit:contain;opacity:.75;align-self:center;width:34px;height:34px;margin-bottom:.65rem}.location-result-card h3{margin:0;font-size:1rem;line-height:1.15}.location-result-card p,.location-distance{color:var(--oppal-noir);margin:.25rem 0 0;font-size:.72rem}.location-distance{display:block}.location-result-card>strong{margin-top:1rem;font-size:.72rem}.location-card-icons{gap:.3rem;min-height:38px;margin:.45rem 0 .7rem;display:flex}.location-card-icons img{object-fit:contain;width:34px;height:34px}.location-card-pin-activities{justify-content:center;align-items:center;gap:.35rem;margin-bottom:.65rem;display:flex}.location-card-activity-icon{object-fit:contain;width:22px;height:22px}.location-card-link{width:fit-content;color:var(--oppal-noir);text-align:left;background:0 0;margin-top:auto;padding:0;font-size:.75rem;font-weight:700}.locations-guided-empty{min-height:360px;color:var(--text-secondary);text-align:center;flex-direction:column;grid-column:1/-1;justify-content:center;align-items:center;gap:1rem;padding:3rem 1rem;display:flex}.locations-guided-empty>img{object-fit:contain;opacity:.55;width:44px;height:44px}.locations-guided-empty>p{max-width:560px;margin:0;font-size:.95rem;line-height:1.6}.locations-guided-empty.is-error>p{color:var(--status-danger)}.locations-guided-empty>button,.locations-load-more{background:var(--action-primary);min-height:40px;color:var(--oppal-blanc);border-radius:6px;padding:0 1rem;font-weight:700}.locations-zero-results{grid-column:1/-1;gap:1.5rem;display:grid}.locations-zero-results .locations-guided-empty{min-height:220px;padding-bottom:1.5rem}.locations-suggestions{border-top:1px solid color-mix(in srgb, var(--theme-fonce) 18%, transparent);padding-top:1.5rem}.locations-suggestions-heading{max-width:720px}.locations-suggestions-heading>p{color:var(--theme-fonce);letter-spacing:.07em;text-transform:uppercase;margin:0 0 .25rem;font-size:.68rem;font-weight:900}.locations-suggestions-heading h2{color:var(--oppal-noir);margin:0;font-size:clamp(1.25rem,2vw,1.65rem)}.locations-suggestions-heading span,.locations-suggestions-status{color:var(--text-secondary);margin-top:.4rem;font-size:.82rem;line-height:1.5;display:block}.locations-suggestions-layout{grid-template-columns:minmax(0,3fr) minmax(320px,2fr);align-items:start;gap:1.25rem;display:grid}.locations-suggestions .locations-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.locations-suggestions-map{border:1px solid color-mix(in srgb, var(--theme-fonce) 30%, transparent);height:520px;margin-top:1.5rem;position:sticky;top:1rem;overflow:hidden}.locations-suggestions-map .map-container{border-radius:0;height:100%}.locations-suggestions-map-toggle{display:none}.location-result-card.is-suggestion{background:color-mix(in srgb, var(--theme-clair) 8%, var(--oppal-blanc));border-style:dashed}.locations-suggestions-status{background:var(--surface-secondary);text-align:center;border-radius:8px;margin:0;padding:1rem}.locations-secondary-select{flex-direction:column;align-items:stretch!important}.locations-secondary-select>span{font-weight:700}.locations-secondary-select select{border:1px solid var(--border-strong);background:var(--surface-primary);border-radius:6px;min-height:40px;padding:0 1.8rem 0 .6rem}.locations-load-more,.locations-filter-empty{grid-column:1/-1;justify-self:center}.locations-results-shell.discover-results-shell{padding:clamp(3rem,5vw,4.5rem) 0 5rem;display:block}.locations-filter-empty{color:var(--text-secondary);text-align:center;margin:2rem 0}@media (width<=980px){.discover-place-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.discover-filter-row{grid-template-columns:repeat(3,minmax(0,1fr))}.locations-hero-inner{grid-template-columns:minmax(0,46fr) minmax(0,54fr);column-gap:1rem}.locations-heading{justify-content:flex-start;padding-inline:.75rem}.locations-heading img{width:58px;height:58px}.locations-heading h1{font-size:clamp(1.65rem,3.2vw,2rem)}.locations-heading.is-long-title h1{font-size:clamp(1.5rem,2.9vw,1.85rem)}.locations-results-shell{grid-template-columns:220px minmax(0,1fr);gap:1.25rem}.locations-map{height:380px}.locations-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.locations-suggestions-layout{grid-template-columns:1fr}.locations-suggestions .locations-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.locations-suggestions-map-toggle{margin-top:1rem;display:inline-flex}.locations-suggestions-map{height:380px;margin-top:0;display:none;position:relative;top:auto}.locations-suggestions-map.is-open{display:block}}@media (width<=680px){.discover-results-shell{padding-top:2.5rem}.discover-filter-chip{min-height:44px;padding:.35rem .7rem;font-size:.72rem}.discover-filter-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.discover-filter-chip img{width:34px;height:34px}.discover-map-copy,.discover-catalog-heading{flex-direction:column;align-items:flex-start;gap:.5rem}.discover-map-canvas{border-radius:14px;height:430px}.discover-place-grid{grid-template-columns:1fr}.locations-hero-inner{grid-template-columns:1fr;gap:0;min-height:0;padding-top:1rem}.locations-heading{justify-content:center;min-height:auto;padding:.75rem 0 1.25rem}.locations-heading h1{font-size:clamp(1.7rem,7vw,2rem)}.locations-heading.is-long-title h1{font-size:clamp(1.6rem,6.5vw,1.9rem)}.locations-mosaic{width:calc(100% + var(--page-gutter) * 2);margin-left:calc(var(--page-gutter) * -1)}.locations-search-band{width:100%}.locations-search-inner:not(.search-block-shell){grid-template-rows:1fr;grid-template-columns:minmax(150px,35%) minmax(0,1fr);gap:.75rem;min-height:108px;padding:.6rem 1rem 1.8rem;position:relative;inset:auto}.locations-results-shell{grid-template-columns:1fr;padding-top:1.25rem}.locations-filter-toggle{margin-top:1rem}.locations-filter-list{display:none}.locations-sidebar.is-open .locations-filter-list{display:grid}.locations-map{height:330px}.locations-card-grid,.locations-suggestions .locations-card-grid{grid-template-columns:1fr}.locations-suggestions-map{height:330px}}@media (width>=981px) and (width<=1180px){.discover-filter-row{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width>=1181px) and (width<=1320px){.discover-filter-row{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (width<=390px){.discover-filter-row{grid-template-columns:1fr}}.directory-full-page{--theme-clair:var(--oppal-lieux-clair);--theme-fonce:var(--oppal-lieux-sombre);background:var(--oppal-blanc);color:var(--oppal-noir)}.directory-full-page.directory-theme-activities{--theme-clair:var(--oppal-aps-clair);--theme-fonce:var(--oppal-aps-sombre)}.directory-full-page.directory-theme-adapted{--theme-clair:var(--oppal-blanc);--theme-fonce:var(--oppal-noir)}.directory-full-page.directory-theme-discover{--theme-clair:var(--oppal-categories-clair);--theme-fonce:var(--oppal-categories-sombre)}.discovery-shell{width:calc(100% - var(--page-gutter) * 2);max-width:var(--content-max);margin-inline:auto}.discovery-header{padding-block:1rem 1.25rem}.discovery-back{color:var(--oppal-noir);background:0 0;border-bottom:1px solid;padding:.2rem 0;font-size:.78rem;font-weight:750}.discovery-title-row{justify-content:space-between;align-items:flex-end;gap:2rem;margin-top:1rem;display:flex}.discovery-title{align-items:center;gap:1rem;min-width:0;display:flex}.discovery-title>img{object-fit:contain;flex:0 0 64px;width:64px;height:64px}.discovery-title p{color:var(--theme-fonce);letter-spacing:.075em;text-transform:uppercase;margin:0 0 .25rem;font-size:.68rem;font-weight:800}.discovery-title h1{color:var(--oppal-noir);letter-spacing:-.035em;text-wrap:balance;margin:0;font-size:clamp(1.8rem,3.2vw,2.7rem);line-height:1.04}.discovery-meta{color:var(--text-secondary);flex-wrap:wrap;gap:.35rem .65rem;margin-top:.5rem;font-size:.82rem;display:flex}.discovery-meta span+span:before{content:"•";color:var(--text-disabled);margin-right:.65rem}.discovery-meta .is-open{color:var(--status-success);font-weight:800}.discovery-meta .is-closed{color:var(--status-danger);font-weight:800}.discovery-gallery{background:var(--theme-clair);border-radius:20px;grid-template-columns:minmax(0,2.25fr) minmax(230px,.75fr);gap:.55rem;height:clamp(320px,42vw,540px);display:grid;position:relative;overflow:hidden}.discovery-gallery.is-single{grid-template-columns:1fr}.discovery-gallery button{background:0 0;min-width:0;padding:0;overflow:hidden}.discovery-gallery img{object-fit:cover;width:100%;height:100%;transition:transform .55s;display:block}.discovery-gallery button:hover img{transform:scale(1.025)}.discovery-gallery-main img{object-position:center 55%}.discovery-gallery-secondary{grid-template-rows:repeat(3,minmax(0,1fr));gap:.55rem;min-width:0;display:grid}.discovery-gallery-secondary button:only-child{grid-row:1/-1}.discovery-gallery-secondary button:nth-last-child(2):first-child,.discovery-gallery-secondary button:nth-last-child(2):first-child~button{grid-row:span 3}.discovery-gallery-secondary img{object-position:62% center}.discovery-gallery-all{z-index:1;border:1px solid color-mix(in srgb, var(--oppal-noir) 18%, transparent);box-shadow:0 4px 16px color-mix(in srgb, var(--oppal-noir) 16%, transparent);color:var(--oppal-noir);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:9px;font-size:.72rem;font-weight:800;position:absolute;bottom:1rem;right:1rem;background:color-mix(in srgb, var(--oppal-blanc) 94%, transparent)!important;padding:.62rem .85rem!important}.discovery-layout{grid-template-columns:minmax(0,7fr) minmax(300px,3fr);align-items:start;gap:clamp(2.5rem,5vw,4.75rem);padding-block:3rem 4.5rem;display:grid}.discovery-content{min-width:0}.discovery-section:first-child{padding-top:0}.discovery-section h2{color:var(--oppal-noir);letter-spacing:-.025em;margin:0;font-size:clamp(1.45rem,2.2vw,1.85rem)}.discovery-section-heading>p{color:var(--text-secondary);margin:.45rem 0 0;font-size:.88rem}.discovery-introduction>p{max-width:720px;color:color-mix(in srgb, var(--oppal-noir) 80%, transparent);margin:0;font-size:1rem;line-height:1.75}.discovery-fact-badges{flex-wrap:wrap;gap:.65rem;margin:1.6rem 0 0;padding:0;list-style:none;display:flex}.discovery-fact-badges li{border:1px solid var(--border-default);background:var(--surface-subtile);border-radius:999px;align-items:center;gap:.65rem;min-width:130px;padding:.7rem .85rem;display:flex}.discovery-fact-icon{background:var(--surface-primary);width:28px;height:28px;color:var(--theme-fonce);border-radius:50%;flex:0 0 28px;place-items:center;font-weight:900;display:grid}.discovery-fact-icon img{object-fit:contain;width:23px;height:23px}.discovery-fact-badges small,.discovery-fact-badges strong{display:block}.discovery-fact-badges small{color:var(--text-secondary);text-transform:uppercase;font-size:.6rem;font-weight:700}.discovery-fact-badges strong{margin-top:.06rem;font-size:.78rem}.discovery-fact-badges li[data-tone=positive] strong{color:var(--status-success)}.discovery-fact-badges li[data-tone=negative] strong{color:var(--status-danger)}.discovery-activity-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.discovery-activity-grid li{border:1px solid color-mix(in srgb, var(--theme-fonce) 18%, transparent);background:linear-gradient(135deg, color-mix(in srgb, var(--theme-clair) 25%, var(--oppal-blanc)), var(--oppal-blanc));border-radius:16px;align-items:center;gap:1rem;min-width:0;min-height:112px;padding:1rem;transition:transform .18s,box-shadow .18s;display:flex;position:relative}.discovery-activity-grid li:hover{box-shadow:0 12px 28px color-mix(in srgb, var(--oppal-noir) 10%, transparent);transform:translateY(-3px)}.discovery-activity-visual{background:var(--oppal-blanc);width:68px;height:68px;box-shadow:0 4px 14px color-mix(in srgb, var(--oppal-noir) 7%, transparent);border-radius:15px;flex:0 0 68px;place-items:center;display:grid}.discovery-activity-visual img{object-fit:contain;width:55px;height:55px}.discovery-activity-grid strong,.discovery-activity-grid span{display:block}.discovery-activity-grid strong{font-family:Chivo,sans-serif;font-size:.92rem;line-height:1.25}.discovery-activity-grid span{color:var(--text-secondary);margin-top:.3rem;font-size:.69rem}.discovery-adapted-mark{object-fit:contain;width:29px;height:29px;margin-left:auto}.discovery-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin:0;padding:0;list-style:none;display:grid}.discovery-feature-grid li{background:var(--surface-secondary);border-radius:12px;align-items:center;gap:.75rem;min-width:0;min-height:70px;padding:.75rem .85rem;font-size:.84rem;font-weight:700;display:flex}.discovery-feature-icon{background:var(--surface-primary);border-radius:10px;flex:0 0 40px;place-items:center;width:40px;height:40px;display:grid}.discovery-feature-grid img{object-fit:contain;width:31px;height:31px}.discovery-accessibility{background:var(--surface-subtile);border-radius:16px;padding:1.15rem}.discovery-practical{border:1px solid color-mix(in srgb, var(--oppal-noir) 14%, transparent);background:var(--oppal-blanc);border-radius:13px;margin-top:1.5rem}.discovery-practical summary{cursor:pointer;justify-content:space-between;padding:1rem;font-weight:800;list-style:none;display:flex}.discovery-practical summary::-webkit-details-marker{display:none}.discovery-practical[open] summary span{transform:rotate(45deg)}.discovery-practical>div{gap:1rem;padding:0 1rem 1rem;display:grid}.discovery-practical h2{color:var(--oppal-noir);margin:0 0 .4rem;font-size:.9rem}.discovery-practical p{margin:.25rem 0;font-size:.84rem}.discovery-practical a{color:var(--theme-fonce);text-decoration:underline}.discovery-sidebar{top:calc(var(--oppal-brand-logo-height) + 2.25rem);position:sticky}.discovery-planner{border:1px solid var(--border-default);background:var(--surface-primary);box-shadow:var(--shadow-md);border-radius:16px;overflow:hidden}.discovery-planner-label{margin:0;padding:1rem 1.1rem;font-family:Chivo,sans-serif;font-size:1rem;font-weight:800}.discovery-map{border-block:1px solid var(--border-default);height:285px}.discovery-map .map-container{border-radius:0;height:100%}.discovery-map-action{background:var(--action-primary);color:var(--oppal-blanc);text-align:center;border-radius:9px;margin:.75rem 1rem 0;padding:.72rem 1rem;font-size:.76rem;font-weight:800;display:block}.discovery-contact{gap:.9rem;margin:0;padding:1.05rem;display:grid}.discovery-contact-row{grid-template-columns:27px minmax(0,1fr);align-items:start;gap:.65rem;display:grid}.discovery-contact-row>img{object-fit:contain;width:25px;height:25px}.discovery-contact-row dt{color:var(--text-secondary);letter-spacing:.04em;text-transform:uppercase;font-size:.63rem;font-weight:800}.discovery-contact-row dd{overflow-wrap:anywhere;margin:.13rem 0 0;font-size:.78rem;line-height:1.4}.discovery-contact-row a{color:var(--theme-fonce);text-decoration:underline}.discovery-actions{gap:.5rem;padding:0 1.05rem 1.05rem;display:grid}.discovery-actions:empty{display:none}.discovery-actions a{border:1px solid var(--theme-fonce);color:var(--theme-fonce);text-align:center;border-radius:9px;padding:.72rem 1rem;font-size:.76rem;font-weight:800}.discovery-lightbox{z-index:1000;background:color-mix(in srgb, var(--oppal-noir) 92%, transparent);place-items:center;padding:clamp(1rem,5vw,4rem);display:grid;position:fixed;inset:0}.discovery-lightbox>img{object-fit:contain;border-radius:12px;max-width:min(1100px,86vw);max-height:82vh}.discovery-lightbox button{background:color-mix(in srgb, var(--oppal-blanc) 92%, transparent);width:46px;height:46px;color:var(--oppal-noir);border-radius:50%;place-items:center;font-size:2rem;display:grid;position:absolute}.discovery-lightbox-close{top:1.25rem;right:1.25rem}.discovery-lightbox-previous{top:50%;left:1.25rem}.discovery-lightbox-next{top:50%;right:1.25rem}.discovery-lightbox>span{color:var(--oppal-blanc);font-size:.78rem;font-weight:800;position:absolute;bottom:1.25rem}.discovery-empty{min-height:55vh;padding:4rem var(--page-gutter);text-align:center}.discovery-empty a{color:var(--theme-fonce);margin-top:1rem;font-weight:800;text-decoration:underline;display:inline-block}.discovery-shell{width:calc(100% - var(--page-gutter) - var(--page-gutter));max-width:var(--content-max)}.discovery-gallery{border-radius:16px}.discovery-layout{grid-template-columns:minmax(0,1.75fr) minmax(340px,1fr);gap:clamp(2.5rem,4.5vw,4.25rem);padding-block:3.25rem 5rem}.discovery-section{border-bottom:0;padding-block:3.35rem}.discovery-section+.discovery-section{border-top:1px solid color-mix(in srgb, var(--oppal-noir) 6%, transparent)}.discovery-section-heading{margin-bottom:1.55rem}.discovery-section h2{letter-spacing:-.03em;font-size:clamp(1.5rem,2.3vw,1.95rem);line-height:1.15}.discovery-introduction>p{max-width:650px;line-height:1.8}.discovery-gallery-all{border-color:var(--border-strong);box-shadow:var(--shadow-sm);border-radius:9px;transition:transform .18s,box-shadow .18s;bottom:1.15rem;right:1.15rem;background:var(--surface-primary)!important;padding:.68rem .95rem!important}.discovery-gallery-all:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.discovery-fact-badges{gap:0;margin-top:1.8rem}.discovery-fact-badges li{background:0 0;border:0;border-radius:0;gap:.65rem;min-width:0;padding:.15rem 1.25rem}.discovery-fact-badges li:first-child{padding-left:0}.discovery-fact-badges li+li{border-left:1px solid var(--border-subtle)}.discovery-fact-icon{width:28px;height:28px;box-shadow:none;background:0 0;border-radius:0;flex-basis:28px}.discovery-fact-icon img{width:25px;height:25px}.discovery-fact-badges small{letter-spacing:.04em;font-size:.61rem;font-weight:700}.discovery-fact-badges strong{margin-top:.14rem;font-size:.84rem;font-weight:750}.discovery-activity-grid li{border-color:var(--border-default);min-height:124px;box-shadow:var(--shadow-sm);border-radius:16px;padding:1.15rem 1.2rem;transition:transform .22s,border-color .22s,box-shadow .22s}.discovery-activity-grid li:after{content:"→";color:color-mix(in srgb, var(--theme-fonce) 65%, transparent);margin-left:auto;font-size:1rem;font-weight:900;transition:transform .22s}.discovery-activity-grid li:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md);transform:translateY(-4px)}.discovery-activity-grid li:hover:after{transform:translate(3px)}.discovery-activity-visual{width:72px;height:72px;box-shadow:var(--shadow-sm);flex-basis:72px}.discovery-activity-visual img{width:58px;height:58px}.discovery-adapted-mark{margin-left:.25rem}.discovery-feature-grid li{border:1px solid color-mix(in srgb, var(--oppal-noir) 5%, transparent);min-height:76px;padding:.8rem .9rem}.discovery-feature-icon{flex-basis:42px;width:42px;height:42px}.discovery-accessibility{background:0 0;padding:0}.discovery-accessibility .discovery-feature-grid li{background:var(--surface-subtile)}.discovery-planner{border-color:var(--border-default);box-shadow:var(--shadow-md);border-radius:16px}.discovery-planner-label{padding:1.2rem 1.25rem;font-size:1.05rem}.discovery-map{height:320px}.discovery-map-action{border-radius:10px;margin:1rem 1.2rem 0;padding:.8rem 1rem;font-size:.78rem;transition:filter .18s,transform .18s}.discovery-map-action:hover{background:var(--action-primary-hover);filter:none;transform:translateY(-1px)}.discovery-contact{gap:1.1rem;padding:1.25rem}.discovery-contact-row{grid-template-columns:30px minmax(0,1fr);gap:.75rem}.discovery-contact-row>img{width:27px;height:27px}.discovery-contact-row dd{margin-top:.16rem;font-size:.8rem;line-height:1.45}.discovery-actions{gap:.6rem;padding:0 1.2rem 1.2rem}.discovery-actions a{border-radius:10px;padding:.78rem 1rem;font-size:.78rem}.discovery-activity-grid li{min-height:0;box-shadow:none;cursor:default;background:0 0;border:0;padding:.65rem 0;transition:none}.discovery-activity-grid li:after{content:none}.discovery-activity-grid li:hover{box-shadow:none;border-color:#0000;transform:none}.discovery-activity-visual{box-shadow:none}.discovery-feature-grid li{background:0 0;border:0;min-height:0;padding:.55rem 0}.discovery-feature-icon,.discovery-accessibility .discovery-feature-grid li{background:0 0}.discovery-practical-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin:0;padding:0;display:grid}.discovery-practical-grid>div{background:var(--surface-secondary);border-radius:12px;grid-template-columns:34px minmax(0,1fr);align-items:start;gap:.75rem;min-width:0;padding:.85rem .9rem;display:grid}.discovery-practical-grid img{object-fit:contain;width:31px;height:31px}.discovery-practical-grid dt{color:var(--text-secondary);letter-spacing:.04em;text-transform:uppercase;font-size:.62rem;font-weight:800}.discovery-practical-grid dd{overflow-wrap:anywhere;color:var(--text-primary);margin:.2rem 0 0;font-size:.82rem;line-height:1.45}.discovery-practical-grid a{color:var(--action-primary);text-underline-offset:2px;font-weight:700;text-decoration:underline}.discovery-planner-information{padding:1.25rem}.discovery-planner-information h2{color:var(--text-primary);margin:0 0 1rem;font-size:.9rem}.discovery-planner-information .discovery-practical-grid{grid-template-columns:1fr;gap:1rem}.discovery-planner-information .discovery-practical-grid>div{background:0 0;border-radius:0;padding:0}@media (prefers-reduced-motion:reduce){.discovery-gallery img,.discovery-activity-grid li{transition:none}}@media (width<=820px){.discovery-gallery{grid-template-columns:minmax(0,2fr) minmax(180px,1fr);height:360px}.discovery-layout{grid-template-columns:1fr;padding-top:2rem}.discovery-sidebar{position:static}.discovery-content{order:1}.discovery-sidebar{order:2}.discovery-planner{grid-template-columns:minmax(0,1fr) minmax(250px,.8fr);display:grid}.discovery-planner-label{grid-column:1/-1}.discovery-map{border-bottom:0;height:100%;min-height:290px}.discovery-map-action{grid-column:1}.discovery-contact{border-left:1px solid var(--border-default);grid-area:2/2/span 2}.discovery-actions{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));padding-top:1rem}}@media (width<=560px){.discovery-header{padding-block:.75rem 1rem}.discovery-title-row{align-items:flex-start}.discovery-title>img{flex-basis:50px;width:50px;height:50px}.discovery-gallery{border-radius:0;grid-template-columns:1fr;width:100%;height:280px}.discovery-gallery-secondary{display:none}.discovery-layout{padding-bottom:2.5rem}.discovery-section{padding-block:2rem}.discovery-activity-grid,.discovery-feature-grid{grid-template-columns:1fr}.discovery-planner{display:block}.discovery-map{height:270px;min-height:0}.discovery-map-action{margin:.75rem 1rem 0}.discovery-contact{border-left:0}.discovery-actions{grid-template-columns:1fr;display:grid}.discovery-lightbox-previous{left:.5rem}.discovery-lightbox-next{right:.5rem}.discovery-fact-badges{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:.8rem;display:grid}.discovery-fact-badges li{border-left:0;padding:.1rem 0}.discovery-fact-badges li:nth-child(2n){border-left:1px solid var(--border-subtle);padding-left:1rem}.discovery-practical-grid{grid-template-columns:1fr}}@media (width>=561px) and (width<=820px){.discovery-planner-information{border-left:1px solid var(--border-default);grid-area:2/2/span 2}}.institutional-hero{background:var(--oppal-blanc);overflow:hidden}.institutional-hero-inner{width:100%;max-width:var(--content-shell-max);padding:0 var(--page-gutter);grid-template-columns:minmax(0,39fr) minmax(0,61fr);align-items:stretch;column-gap:clamp(1rem,2vw,1.75rem);margin:0 auto;display:grid}.institutional-hero[data-title-layout=single] .institutional-hero-inner{grid-template-columns:minmax(0,39fr) minmax(0,61fr)}.institutional-hero-heading{justify-content:center;align-items:center;gap:clamp(.8rem,1.25vw,1.2rem);min-width:0;min-height:100%;padding:clamp(.75rem,1.5vw,1.35rem) clamp(1rem,2.2vw,2rem);display:flex}.institutional-hero-icon{flex:none;place-items:center;width:clamp(68px,6vw,84px);height:clamp(68px,6vw,84px);display:grid}.institutional-hero-icon img{object-fit:contain;width:100%;height:100%;display:block}.institutional-hero-icon[data-icon-variant=publications] img{width:92%;height:92%}.institutional-hero-title{min-width:0;max-width:9.5em;color:var(--theme-fonce);letter-spacing:-.025em;margin:0;font-family:Chivo,Franklin Gothic Medium,sans-serif;font-size:clamp(1.7rem,2.15vw,2.1rem);font-weight:900;line-height:1.08}.institutional-hero-copy p{max-width:30rem;color:var(--text-secondary);margin:.7rem 0 0;font-size:clamp(.88rem,1.05vw,1rem);line-height:1.45}.institutional-hero-title span{display:block}.institutional-hero-title.is-single-line{white-space:nowrap;max-width:none}.institutional-hero-art{justify-content:flex-end;align-items:center;min-width:0;display:flex;overflow:hidden}.institutional-hero-art img{object-fit:contain;object-position:center right;width:100%;max-width:none;height:auto;display:block}@media (width<=1000px){.institutional-hero-inner{grid-template-columns:minmax(0,46fr) minmax(0,54fr);column-gap:1rem}.institutional-hero[data-title-layout=single] .institutional-hero-inner{grid-template-columns:minmax(0,46fr) minmax(0,54fr)}.institutional-hero-heading{justify-content:flex-start;padding-inline:.75rem}.institutional-hero-icon{width:58px;height:58px}.institutional-hero-title{font-size:clamp(1.65rem,3.2vw,2rem)}}@media (width<=700px){.institutional-hero{overflow:visible}.institutional-hero-inner{min-height:0;padding:1rem var(--page-gutter) 0;grid-template-columns:1fr;gap:0}.institutional-hero-heading{justify-content:center;min-height:auto;padding:.75rem 0 1.25rem}.institutional-hero-icon{width:58px;height:58px}.institutional-hero-title{font-size:clamp(1.7rem,7vw,2rem)}.institutional-hero-art{justify-content:center;overflow:visible}.institutional-hero-art img{width:calc(100% + var(--page-gutter) * 2);margin-left:calc(var(--page-gutter) * -1);object-position:bottom center}}@media (width<=420px){.institutional-hero-inner{padding-inline:16px}.institutional-hero-heading{gap:.8rem}.institutional-hero-icon{width:54px;height:54px}.institutional-hero-title{font-size:clamp(1.6rem,6.5vw,1.9rem)}}.blog-page{--theme-clair:var(--oppal-institutionnel-clair);--theme-fonce:var(--oppal-institutionnel-sombre);animation:.3s ease-out publicationsPageIn}@keyframes publicationsPageIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.publications-content{width:calc(100% - var(--page-gutter) - var(--page-gutter));max-width:var(--content-max);margin:0 auto;padding:clamp(2.75rem,5vw,4.75rem) 0 clamp(4rem,7vw,6.5rem)}.publication-years{border-bottom:1px solid var(--border-default);scrollbar-width:thin;scrollbar-color:var(--theme-fonce) transparent;gap:0;margin-bottom:clamp(2rem,4vw,3.25rem);display:flex;position:relative;overflow-x:auto}.publication-year-tab{color:var(--text-secondary);background:0 0;flex:none;padding:.9rem 1.4rem;font-size:1rem;font-weight:600;line-height:1;transition:color .2s,background .2s;position:relative}.publication-year-tab+.publication-year-tab:before{content:"";background:var(--border-default);width:1px;height:1rem;position:absolute;top:50%;left:0;transform:translateY(-50%)}.publication-year-tab:after{content:"";background:var(--theme-fonce);opacity:0;border-radius:2px 2px 0 0;height:2px;transition:opacity .2s,transform .2s ease-out;position:absolute;bottom:0;left:1.1rem;right:1.1rem;transform:scaleX(.35)}.publication-year-tab:hover{color:var(--theme-fonce);background:var(--surface-hover)}.publication-year-tab.is-selected{color:var(--theme-fonce)}.publication-year-tab.is-selected:after{opacity:1;transform:scaleX(1)}.publication-year-tab:focus-visible{z-index:1;outline:2px solid var(--action-focus-ring);outline-offset:-3px}.publications-panel{animation:.22s ease-out publicationsPanelIn}@keyframes publicationsPanelIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.publications-panel>h2{color:var(--theme-fonce);letter-spacing:-.02em;margin:0 0 1.5rem;font-size:clamp(1.65rem,2.6vw,2.2rem);font-weight:800}.publications-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:clamp(1.25rem,2.5vw,2rem);display:grid}.publication-card{border:1px solid var(--border-default);background:var(--surface-primary);min-width:0;height:100%;box-shadow:var(--shadow-sm);border-radius:12px;flex-direction:column;transition:transform .2s ease-out,border-color .2s,box-shadow .2s;display:flex;overflow:hidden}.publication-card:hover,.publication-card:focus-within{border-color:color-mix(in srgb, var(--theme-fonce) 36%, transparent);box-shadow:0 5px 16px color-mix(in srgb, var(--theme-fonce) 9%, transparent);transform:translateY(-2px)}.publication-cover{background:var(--surface-subtile);height:clamp(180px,18vw,240px);overflow:hidden}.publication-cover>img{object-fit:cover;width:100%;height:100%;display:block}.publication-cover-placeholder{place-items:center;width:100%;height:100%;display:grid}.publication-cover-placeholder img{object-fit:contain;opacity:.72;width:58px;height:58px}.publication-card-content{flex-direction:column;flex:1;padding:clamp(1.1rem,2vw,1.4rem);display:flex}.publication-card h3{color:var(--oppal-noir);margin:0 0 .65rem;font-size:clamp(1.05rem,1.4vw,1.2rem);font-weight:700;line-height:1.4}.publication-card p{color:var(--text-secondary);margin:0 0 1.4rem;font-size:.94rem;line-height:1.6}.publication-actions{border-top:1px solid var(--border-subtle);flex-wrap:wrap;align-items:center;gap:.7rem 1rem;margin-top:auto;padding-top:1rem;display:flex}.publication-actions a{min-height:40px;color:var(--theme-fonce);align-items:center;gap:.35rem;font-size:.87rem;font-weight:700;line-height:1.3;display:inline-flex}.publication-actions a:hover{text-underline-offset:3px;text-decoration:underline}.publication-actions a:focus-visible{outline:2px solid var(--action-focus-ring);outline-offset:3px;border-radius:4px}.publication-download svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px}.publications-empty{min-height:180px;color:var(--text-secondary);padding:3rem 0;line-height:1.6}@media (width<=1080px){.publications-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=650px){.publication-year-tab{padding-inline:1.15rem}.publications-grid{grid-template-columns:1fr}.publication-actions{justify-content:space-between}}@media (width<=760px){.publications-content{width:calc(100% - 32px);padding-top:2rem}}@media (prefers-reduced-motion:reduce){.blog-page,.publications-panel{animation:none}.publication-card,.publication-year-tab,.publication-year-tab:after{transition-duration:.01ms}}.blog-detail-page{--theme-clair:var(--oppal-institutionnel-clair);--theme-fonce:var(--oppal-institutionnel-sombre);max-width:780px;margin:2rem auto;padding:0 1.5rem}.back-link{color:var(--color-primary);margin-bottom:1.5rem;font-weight:600;transition:opacity .2s;display:inline-block}.back-link:hover{opacity:.75}.blog-article{background:var(--color-surface);box-shadow:0 4px 24px color-mix(in srgb, var(--theme-fonce) 8%, transparent);border-radius:16px;padding:2.5rem}.blog-article-meta-top{align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.blog-article-category{background:var(--theme-clair);color:var(--theme-fonce);border-radius:20px;padding:.3rem .9rem;font-size:.82rem;font-weight:700}.blog-read-time{color:var(--texte-secondaire);font-size:.9rem}.blog-article-title{color:var(--oppal-noir);margin-bottom:1rem;font-size:2rem;font-weight:800;line-height:1.3}.blog-article-byline{color:var(--oppal-noir);border-bottom:1px solid var(--oppal-blanc);gap:1.5rem;margin-bottom:1rem;padding-bottom:1rem;font-size:.95rem;display:flex}.blog-article-tags{flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;display:flex}.blog-tag{background:var(--oppal-blanc);color:var(--color-primary);border-radius:8px;padding:.2rem .6rem;font-size:.82rem;font-weight:600}.blog-article-body{color:var(--oppal-noir);font-size:1.05rem;line-height:1.8}.blog-article-body p{margin-bottom:1.2rem}.detail-loading,.detail-error{color:var(--oppal-noir);margin:2rem 0;font-size:1.1rem}.auth-page{--theme-clair:var(--oppal-institutionnel-clair);--theme-fonce:var(--oppal-institutionnel-sombre);justify-content:center;align-items:center;min-height:60vh;animation:.5s ease-in fadeIn;display:flex}.auth-form{background:var(--color-surface);box-shadow:0 2px 20px color-mix(in srgb, var(--theme-fonce) 10%, transparent);border-radius:10px;width:100%;max-width:400px;padding:2rem}.auth-form h1{text-align:center;color:var(--oppal-noir);margin-bottom:2rem}.auth-form form{flex-direction:column;gap:1rem;display:flex}.auth-form input,.auth-form select{border:1px solid var(--theme-fonce);border-radius:5px;padding:.75rem;font-size:1rem}.auth-form input:focus,.auth-form select:focus{border-color:var(--color-primary);box-shadow:0 0 5px color-mix(in srgb, var(--theme-fonce) 30%, transparent);outline:none}.submit-btn{background:linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);color:var(--oppal-blanc);cursor:pointer;border-radius:5px;padding:.75rem;font-weight:700;transition:transform .3s}.submit-btn:hover{box-shadow:0 5px 15px color-mix(in srgb, var(--theme-fonce) 40%, transparent);transform:translateY(-2px)}.error-message{background-color:var(--oppal-blanc);color:var(--theme-fonce);border:1px solid var(--theme-fonce);border-radius:5px;margin-bottom:1rem;padding:.75rem}.auth-form p{text-align:center;color:var(--oppal-noir);margin-top:1rem}.auth-form a{color:var(--color-primary);font-weight:700}:root{--nature-bg:var(--theme-clair);--nature-surface:var(--oppal-blanc);--nature-surface-strong:var(--oppal-blanc);--nature-border:var(--theme-fonce);--nature-text:var(--oppal-noir);--nature-text-muted:var(--oppal-noir);--forest-700:var(--theme-fonce);--forest-600:var(--theme-fonce);--forest-500:var(--theme-fonce);--forest-300:var(--theme-fonce)}.company-register-page{background:var(--nature-bg);border:1px solid var(--nature-border);border-radius:16px;max-width:760px;margin:0 auto;padding:1.5rem;animation:.4s ease-in fadeIn}.crp-header{text-align:center;margin-bottom:2rem}.crp-header h1{color:var(--forest-700);margin-bottom:.5rem;font-size:2rem}.crp-header p{color:var(--nature-text-muted)}.stepper{justify-content:center;align-items:flex-start;gap:0;margin-bottom:2.5rem;display:flex}.stepper-item{flex-direction:column;flex:1;align-items:center;display:flex;position:relative}.stepper-circle{background:var(--theme-clair);width:36px;height:36px;color:var(--oppal-noir);z-index:1;border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;font-weight:700;transition:all .3s;display:flex}.stepper-circle.active{background:linear-gradient(135deg, var(--forest-600), var(--forest-700));color:var(--oppal-blanc);box-shadow:0 0 0 4px color-mix(in srgb, var(--theme-fonce) 20%, transparent)}.stepper-circle.done{background:var(--forest-500);color:var(--oppal-blanc)}.stepper-label{color:var(--oppal-noir);text-align:center;max-width:90px;margin-top:.4rem;font-size:.78rem}.stepper-label.active{color:var(--forest-600);font-weight:600}.stepper-line{background:var(--theme-clair);z-index:0;width:100%;height:2px;position:absolute;top:18px;left:50%}.stepper-line.done{background:var(--forest-500)}.crp-form{background:var(--nature-surface-strong);box-shadow:0 2px 16px color-mix(in srgb, var(--theme-fonce) 12%, transparent);border-radius:12px;padding:2rem}.form-step h2{color:var(--forest-700);border-bottom:2px solid var(--theme-fonce);margin-bottom:1.5rem;padding-bottom:.75rem;font-size:1.3rem}.field{flex-direction:column;gap:.4rem;margin-bottom:1.25rem;display:flex}.field label{color:var(--nature-text);font-size:.9rem;font-weight:600}.field label small{color:var(--oppal-noir);font-weight:400}.field input,.field select,.field textarea{border:1.5px solid var(--nature-border);border-radius:8px;padding:.75rem;font-family:inherit;font-size:1rem;transition:border-color .2s,box-shadow .2s}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--forest-500);box-shadow:0 0 0 3px color-mix(in srgb, var(--theme-fonce) 16%, transparent);outline:none}.field-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.field-error{color:var(--theme-fonce);font-size:.82rem}.address-suggestions-status{color:var(--forest-600);font-size:.8rem}.address-suggestions{border:1px solid var(--nature-border);background:var(--nature-surface-strong);box-shadow:0 6px 16px color-mix(in srgb, var(--theme-fonce) 8%, transparent);border-radius:8px;max-height:180px;margin-top:.35rem;overflow:hidden auto}.address-suggestion-item{text-align:left;background:var(--nature-surface-strong);cursor:pointer;border:none;border-bottom:1px solid #0000000f;flex-direction:row;align-items:center;gap:.5rem;width:100%;padding:.5rem .65rem;display:flex}.address-suggestion-item:last-child{border-bottom:none}.address-suggestion-item:hover{background:var(--theme-clair)}.address-suggestion-main{color:var(--oppal-noir);text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-size:.86rem;overflow:hidden}.address-suggestion-secondary{color:var(--texte-secondaire);flex:none;font-size:.74rem}.address-suggestion-item.selected,.address-suggestion-item[aria-selected=true]{background:color-mix(in srgb, var(--theme-clair) 80%, transparent);border-left:3px solid var(--forest-600)}.address-suggestion-item:focus-visible{outline:2px solid color-mix(in srgb, var(--forest-600) 40%, transparent);outline-offset:2px}.category-chips{flex-wrap:wrap;gap:.6rem;margin-top:.25rem;display:flex}.chip{border:2px solid var(--nature-border);background:var(--nature-surface-strong);cursor:pointer;text-transform:capitalize;border-radius:20px;padding:.4rem 1rem;font-size:.9rem;transition:all .2s}.chip:hover{border-color:var(--forest-500);color:var(--forest-600)}.chip.selected{background:var(--forest-600);border-color:var(--forest-600);color:var(--oppal-blanc)}.recap{background:var(--theme-clair);border-radius:10px;flex-direction:column;gap:.75rem;margin-bottom:1.5rem;padding:1.25rem;display:flex}.recap-row{border-bottom:1px solid var(--theme-fonce);justify-content:space-between;align-items:baseline;padding-bottom:.5rem;font-size:.92rem;display:flex}.recap-row span{color:var(--oppal-noir);min-width:110px}.recap-row strong{color:var(--forest-700);text-align:right;text-transform:capitalize}.recap-description{flex-direction:column;align-items:flex-start}.recap-description p{color:var(--nature-text-muted);margin:.4rem 0 0;font-size:.9rem;line-height:1.5}.checkbox-label{color:var(--nature-text-muted);cursor:pointer;align-items:flex-start;gap:.5rem;font-size:.88rem;line-height:1.5;display:flex}.checkbox-label a{color:var(--forest-600)}.form-nav{border-top:1px solid var(--theme-fonce);justify-content:flex-end;gap:1rem;margin-top:2rem;padding-top:1.5rem;display:flex}.btn-primary{background:linear-gradient(135deg, var(--forest-500), var(--forest-700));color:var(--oppal-blanc);cursor:pointer;border:none;border-radius:8px;padding:.7rem 1.6rem;font-size:.95rem;font-weight:600;transition:opacity .2s}.btn-primary:hover{opacity:.9}.btn-submit{padding:.8rem 2rem;font-size:1rem}.btn-secondary{background:var(--nature-surface-strong);color:var(--forest-600);border:2px solid var(--forest-500);cursor:pointer;border-radius:8px;padding:.7rem 1.4rem;font-size:.95rem;font-weight:600;transition:all .2s}.btn-secondary:hover{background:var(--forest-600);color:var(--oppal-blanc)}.success-box{background:var(--nature-surface-strong);box-shadow:0 4px 20px color-mix(in srgb, var(--theme-fonce) 10%, transparent);text-align:center;border-radius:16px;max-width:520px;margin:2rem auto;padding:3rem 2rem}.success-icon{margin-bottom:1rem;font-size:4rem}.success-box h2{color:var(--forest-600);margin-bottom:1rem;font-size:1.8rem}.success-box p{color:var(--nature-text-muted);margin-bottom:.75rem;line-height:1.6}.success-actions{flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:2rem;display:flex}.no-type-notice{background:var(--oppal-blanc);border:1.5px solid var(--theme-fonce);color:var(--theme-fonce);border-radius:10px;margin-bottom:1rem;padding:1.25rem 1.5rem;font-size:.95rem;line-height:1.6}.step-hint{color:var(--oppal-noir);margin:-.75rem 0 1.25rem;font-size:.9rem}.section-divider{color:var(--forest-700);border-bottom:2px solid var(--forest-500);text-transform:uppercase;letter-spacing:.04em;margin:1.75rem 0 1rem;padding-bottom:.35rem;font-size:.95rem;font-weight:700}.horaires-grid{border:1px solid var(--nature-border);border-radius:10px;overflow:hidden}.horaires-header{background:var(--theme-clair);color:var(--oppal-noir);text-transform:uppercase;letter-spacing:.03em;grid-template-columns:110px 60px 1fr 1fr;gap:.5rem;padding:.6rem 1rem;font-size:.8rem;font-weight:700;display:grid}.horaire-row{border-top:1px solid var(--theme-fonce);grid-template-columns:110px 60px 1fr 1fr;align-items:center;gap:.5rem;padding:.55rem 1rem;transition:background .15s;display:grid}.horaire-row.active{background:var(--theme-clair)}.horaire-row input[type=checkbox]{cursor:pointer;width:18px;height:18px;accent-color:var(--forest-600);justify-self:center}.horaire-row input[type=time]{border:1px solid var(--nature-border);color:var(--nature-text);background:var(--nature-surface-strong);border-radius:6px;padding:.35rem .5rem;font-size:.9rem}.horaire-row input[type=time]:disabled{background:var(--oppal-blanc);color:var(--theme-clair);border-color:var(--theme-fonce)}.jour-label{color:var(--nature-text);font-size:.9rem;font-weight:600}.activite-search{border:1.5px solid var(--nature-border);box-sizing:border-box;border-radius:8px;width:100%;margin-bottom:1rem;padding:.65rem 1rem;font-size:.95rem;transition:border-color .2s}.activite-search:focus{border-color:var(--forest-500);outline:none}.activites-grid{border:1px solid var(--nature-border);background:var(--theme-clair);border-radius:10px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.5rem;max-height:340px;padding:.75rem;display:grid;overflow-y:auto}.activites-grid::-webkit-scrollbar{width:6px}.activites-grid::-webkit-scrollbar-track{background:var(--oppal-blanc);border-radius:3px}.activites-grid::-webkit-scrollbar-thumb{background:var(--theme-clair);border-radius:3px}.activite-chip{border:1.5px solid var(--nature-border);background:var(--nature-surface-strong);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:8px;align-items:center;gap:.4rem;padding:.4rem .65rem;font-size:.85rem;transition:all .15s;display:flex}.activite-chip:hover{border-color:var(--forest-500);background:var(--theme-clair)}.activite-chip.selected{border-color:var(--forest-600);background:var(--forest-600);color:var(--oppal-blanc)}.activite-chip input[type=checkbox]{display:none}.no-result{text-align:center;color:var(--theme-clair);grid-column:1/-1;padding:1rem 0;font-size:.9rem}.options-grid{flex-direction:column;gap:.75rem;display:flex}.option-row{background:var(--theme-clair);color:var(--nature-text);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding:.65rem 1rem;font-size:.9rem;display:flex}.option-row-disabled{opacity:.6;background:var(--theme-clair)}.option-row small{width:100%;color:var(--oppal-noir);font-size:.8rem}.radio-group{gap:1.25rem;display:flex}.radio-group label{cursor:pointer;align-items:center;gap:.35rem;font-size:.9rem;display:flex}.radio-group input[type=radio]{accent-color:var(--forest-600);width:16px;height:16px}.autre-field{margin-top:.75rem}.btn-autre{border:1.5px dashed var(--forest-500);color:var(--forest-600);cursor:pointer;background:0 0;border-radius:8px;padding:.45rem 1.1rem;font-size:.9rem;font-weight:600;transition:background .15s,color .15s}.btn-autre:hover{background:var(--theme-clair)}.autre-input-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.autre-input-row input[type=text]{border:1.5px solid var(--forest-500);border-radius:8px;flex:1;min-width:180px;padding:.5rem .75rem;font-family:inherit;font-size:.9rem}.autre-input-row input[type=text]:focus{box-shadow:0 0 0 3px color-mix(in srgb, var(--theme-fonce) 16%, transparent);outline:none}.btn-autre-add{background:var(--forest-600);color:var(--oppal-blanc);cursor:pointer;border:none;border-radius:8px;padding:.5rem 1rem;font-size:.9rem;font-weight:600;transition:opacity .2s}.btn-autre-add:hover{opacity:.88}.btn-autre-cancel{color:var(--theme-clair);border:1px solid var(--theme-fonce);cursor:pointer;background:0 0;border-radius:8px;padding:.5rem .9rem;font-size:.9rem;transition:color .15s}.btn-autre-cancel:hover{color:var(--theme-fonce);border-color:var(--theme-fonce)}@media (width<=768px){.field-row{grid-template-columns:1fr}.stepper-label{display:none}.horaires-header,.horaire-row{grid-template-columns:90px 44px 1fr 1fr;gap:.3rem;padding:.5rem .6rem}.activites-grid{grid-template-columns:1fr 1fr}.option-row{flex-direction:column;align-items:flex-start}}.toolbar-btn{border-radius:8px;min-width:34px;padding:.45rem .7rem;font-size:.98rem;transition:background .12s,color .12s,border-color .12s,box-shadow .12s,transform 80ms;box-shadow:none!important;background:0 0!important;border:none!important}.toolbar-btn:hover{background:#0f206008!important}.toolbar-btn>*{background:0 0!important}.toolbar-btn.active{border-radius:8px;box-shadow:0 2px 8px #0f20600f,inset 0 -2px #0f206024;color:#0f2a8a!important;background:#1f3aa62e!important}.toolbar-btn strong,.toolbar-btn em,.toolbar-btn s,.toolbar-btn span{background:0 0!important}.rich-editor .ProseMirror:focus,.rich-editor .ProseMirror:focus-visible,.rich-editor .ProseMirror[contenteditable=true]:focus,.rich-editor .ProseMirror[contenteditable=true]:focus-visible,.rich-editor .ProseMirror :focus{box-shadow:none!important;border-color:#0000!important;outline:none!important}.rich-editor .ProseMirror ul,.rich-editor .ProseMirror ol{margin:.5rem 0;padding-left:1.25rem}.rich-editor .ProseMirror li{margin:.25rem 0}.branch-update-page{width:min(calc(100% - var(--page-gutter) - var(--page-gutter)), 980px);max-width:980px;color:var(--text-primary);background:0 0;border:0;border-radius:0;margin:2rem auto 3.5rem;padding:0}.branch-update-page .crp-header{text-align:left;margin-bottom:1.5rem}.branch-update-page .crp-header h1{color:var(--text-primary);margin-bottom:.35rem;font-size:clamp(1.65rem,4vw,2.15rem)}.branch-update-page .crp-header p{color:var(--text-secondary)}.branch-update-page .crp-form,.branch-update-page .success-box{border:1px solid var(--border-default);background:var(--surface-primary);box-shadow:var(--shadow-md);border-radius:16px;padding:clamp(1rem,3vw,2rem)}.branch-update-page .form-step+.form-step{border-top:1px solid var(--border-default);margin-top:2rem;padding-top:2rem}.branch-update-page .form-step h2{color:var(--text-primary);border:0;margin-bottom:1.25rem;padding:0;font-size:1.2rem;line-height:1.35}.branch-update-page .field label,.branch-update-page .jour-label,.branch-update-page .option-row{color:var(--text-primary)}.branch-update-page .field input,.branch-update-page .field select,.branch-update-page .field textarea,.branch-update-page .horaire-row input[type=time]{border:1px solid var(--field-border);background:var(--field-background);color:var(--text-primary)}.branch-update-page .field input:focus,.branch-update-page .field select:focus,.branch-update-page .field textarea:focus,.branch-update-page .horaire-row input[type=time]:focus{outline:3px solid var(--action-focus-ring);outline-offset:1px;border-color:var(--field-border-focus);box-shadow:none}.branch-update-page :is(input,select,textarea):disabled,.branch-update-page :is(input,textarea)[readonly]{border-color:var(--border-subtle);background:var(--field-background-disabled);color:var(--text-disabled);cursor:not-allowed}.branch-update-page .branch-update-error{border:1px solid var(--status-danger);background:var(--status-danger-surface);color:var(--status-danger);border-radius:8px;margin-bottom:1rem;padding:.7rem .85rem;font-weight:600}.branch-update-page .section-divider{border-bottom:1px solid var(--border-default);color:var(--text-primary);letter-spacing:.045em;margin:2rem 0 .85rem;padding-bottom:.55rem;font-size:.85rem}.branch-update-page .horaires-grid{border:1px solid var(--border-default);background:var(--surface-primary)}.branch-update-page .horaires-header{background:var(--surface-secondary);color:var(--text-secondary)}.branch-update-page .horaire-row{border-top:1px solid var(--border-subtle);background:var(--surface-primary)}.branch-update-page .horaire-row:nth-child(odd):not(.active){background:var(--surface-tertiary)}.branch-update-page .horaire-row.active{background:var(--surface-selected)}.branch-update-page input[type=checkbox],.branch-update-page input[type=radio]{accent-color:var(--action-primary)}.branch-update-page .horaire-row input[type=time]:disabled{border-color:var(--border-subtle);background:var(--field-background-disabled);color:var(--text-disabled)}.branch-update-page .activites-grid{border:1px solid var(--border-default);background:var(--surface-secondary);scrollbar-color:var(--border-strong) var(--surface-secondary);gap:.55rem;padding:.75rem}.branch-update-page .activites-grid::-webkit-scrollbar-track{background:var(--surface-secondary)}.branch-update-page .activites-grid::-webkit-scrollbar-thumb{background:var(--border-strong)}.branch-update-page .activite-chip{border:1px solid var(--border-default);background:var(--surface-primary);color:var(--text-primary);transition:none;animation:none;transform:none}.branch-update-page .activite-chip:hover{border-color:var(--action-primary);background:var(--surface-hover)}.branch-update-page .activite-chip.selected{border-color:var(--action-primary);background:var(--surface-selected);color:var(--text-primary);box-shadow:none}.branch-update-page .activite-chip input[type=checkbox]{flex:none;width:1rem;height:1rem;display:inline-block}.branch-update-page .activite-chip:active{box-shadow:none;transform:none}.branch-update-page .activite-chip input[type=checkbox]:focus{box-shadow:none;outline:none}.branch-update-page .activite-chip:has(input[type=checkbox]:focus-visible){outline:1px solid var(--action-focus-ring);outline-offset:1px}.branch-update-page .no-type-notice{border:1px solid var(--border-default);background:var(--status-neutral-surface);color:var(--status-neutral)}.branch-update-page .options-grid{border:1px solid var(--border-default);background:var(--surface-primary);border-radius:10px;gap:0;overflow:hidden}.branch-update-page .option-row{background:var(--surface-primary);border-radius:0;padding:.8rem 1rem}.branch-update-page .option-row+.option-row{border-top:1px solid var(--border-subtle)}.branch-update-page .option-row:hover:not(.option-row-disabled){background:var(--surface-hover)}.branch-update-page .option-row-disabled{background:var(--field-background-disabled);color:var(--text-disabled);opacity:1}.branch-update-page .option-row small{color:var(--text-secondary)}.branch-update-page .radio-group label{border-radius:6px;padding:.25rem .4rem}.branch-update-page .radio-group label:has(input:checked){background:var(--surface-selected);color:var(--text-primary);font-weight:700}.branch-update-page .radio-group label:focus-within{outline:3px solid var(--action-focus-ring);outline-offset:1px}.branch-update-page .form-nav{border-top:1px solid var(--border-default)}.branch-update-page .btn-primary,.branch-update-page .btn-secondary{box-shadow:none;border:1px solid #0000;transition:background .2s,border-color .2s,color .2s}.branch-update-page .btn-primary{border-color:var(--action-primary);background:var(--action-primary);color:var(--text-on-action)}.branch-update-page .btn-primary:hover:not(:disabled){background:var(--action-primary-hover);opacity:1}.branch-update-page .btn-primary:active:not(:disabled){background:var(--action-primary-active)}.branch-update-page .btn-secondary{border-color:var(--border-strong);background:var(--surface-primary);color:var(--text-primary)}.branch-update-page .btn-secondary:hover:not(:disabled){border-color:var(--border-strong);background:var(--surface-hover);color:var(--text-primary)}.branch-update-page :is(.btn-primary,.btn-secondary):focus-visible{outline:3px solid var(--action-focus-ring);outline-offset:2px}.branch-update-page :is(.btn-primary,.btn-secondary):disabled{border-color:var(--border-subtle);background:var(--surface-disabled);color:var(--text-disabled);cursor:not-allowed}@media (width<=640px){.branch-update-page{width:min(100% - 2rem,980px);margin-top:1.25rem}.branch-update-page .horaires-header,.branch-update-page .horaire-row{grid-template-columns:minmax(72px,1fr) 48px minmax(92px,1fr) minmax(92px,1fr)}.branch-update-page .activites-grid{grid-template-columns:1fr}.branch-update-page .form-nav{flex-direction:column-reverse}.branch-update-page .form-nav button{width:100%}}.confirm-dialog-backdrop{z-index:var(--z-modal);background:var(--overlay-backdrop);place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.confirm-dialog{border:1px solid var(--border-default);background:var(--surface-primary);width:min(100%,460px);box-shadow:var(--shadow-modal);border-radius:16px;padding:1.5rem}.confirm-dialog h2{color:var(--text-primary);margin:0;font-size:1.3rem;line-height:1.3}.confirm-dialog>p{color:var(--text-secondary);margin:.7rem 0 0;line-height:1.55}.confirm-dialog .confirm-dialog-error{border:1px solid var(--status-danger);background:var(--status-danger-surface);color:var(--status-danger);border-radius:8px;padding:.65rem .75rem;font-size:.88rem;font-weight:600}.confirm-dialog-actions{justify-content:flex-end;gap:.65rem;margin-top:1.4rem;display:flex}.confirm-dialog-actions button{font:inherit;cursor:pointer;border-radius:8px;padding:.55rem .9rem;font-size:.88rem;font-weight:700}.confirm-dialog-actions button:disabled{cursor:wait;opacity:.65}.confirm-dialog-cancel{border:1px solid var(--border-strong);background:var(--surface-primary);color:var(--text-primary)}.confirm-dialog-submit{border:1px solid var(--action-primary);background:var(--action-primary);color:var(--text-on-action)}.confirm-dialog-submit:hover:not(:disabled){background:var(--action-primary-hover)}.confirm-dialog-submit.destructive{border-color:var(--status-danger);background:var(--status-danger)}.confirm-dialog-submit.destructive:hover:not(:disabled){background:var(--status-danger-hover)}.confirm-dialog-actions button:focus-visible{outline:3px solid var(--action-focus-ring);outline-offset:2px}@media (width<=480px){.confirm-dialog-actions{flex-direction:column-reverse}.confirm-dialog-actions button{width:100%}}.admin-page{max-width:1380px;padding:2.25rem var(--page-gutter) 3.5rem;margin:0 auto}.admin-header{align-items:center;gap:.9rem;margin-bottom:1.5rem;display:flex}.admin-title-icon{border:1px solid var(--border-default);background:var(--surface-secondary);width:2.75rem;height:2.75rem;color:var(--action-primary);border-radius:12px;flex:none;place-items:center;display:grid}.admin-title-icon img{object-fit:contain;width:1.35rem;height:1.35rem}.admin-header h1{color:var(--text-primary);margin:0;font-size:2rem;font-weight:800}.admin-subtitle{color:var(--text-secondary);margin-top:.3rem}.admin-flash{background:var(--surface-selected);color:var(--text-primary);border:1px solid var(--action-primary);border-radius:8px;margin-bottom:1.5rem;padding:.7rem 1.2rem;font-weight:600}.admin-layout{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:1.5rem;display:grid}.admin-layout.editor-open{grid-template-columns:220px minmax(0,1fr) minmax(300px,370px)}.admin-sidebar{border:1px solid var(--border-default);background:var(--surface-primary);min-width:0;box-shadow:var(--shadow-sm);border-radius:14px;grid-column:1;padding:.8rem;position:sticky;top:9.5rem}.admin-nav-group+.admin-nav-group{border-top:1px solid var(--border-subtle);margin-top:1rem;padding-top:1rem}.admin-nav-group h2{color:var(--text-secondary);letter-spacing:.075em;text-transform:uppercase;margin:0 0 .4rem;padding:0 .55rem;font-size:.7rem;font-weight:800}.admin-nav-items{gap:.2rem;display:grid}.admin-nav-item{width:100%;color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;padding:.62rem .7rem;font-size:.84rem;font-weight:600;display:flex}.admin-nav-item:hover{background:var(--surface-hover)}.admin-nav-item.active{background:var(--surface-selected);color:var(--text-primary);box-shadow:inset 3px 0 0 var(--action-primary);font-weight:800}.admin-content-card{border:1px solid var(--border-default);background:var(--surface-primary);min-width:0;box-shadow:var(--shadow-md);border-radius:16px;grid-column:2;grid-template-columns:minmax(0,1fr);gap:1.25rem 1.5rem;padding:1.5rem;display:grid}.admin-content-card.editor-open{grid-column:2/-1;grid-template-columns:1fr minmax(300px,370px)}.admin-pictogram-picker{border:1px solid var(--border-default);border-radius:10px;min-width:0;margin:0;padding:.85rem}.admin-pictogram-picker legend{padding:0 .3rem;font-size:.82rem;font-weight:800}.admin-pictogram-picker>input{width:100%;margin-bottom:.7rem}.admin-pictogram-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;max-height:330px;display:grid;overflow-y:auto}.admin-pictogram-option{border:1px solid var(--border-default);background:var(--surface-primary);min-width:0;min-height:82px;color:var(--text-primary);cursor:pointer;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;padding:.5rem;display:flex}.admin-pictogram-option:hover,.admin-pictogram-option:focus-visible{border-color:var(--action-primary);background:var(--surface-hover)}.admin-pictogram-option.is-selected{border-color:var(--action-primary);background:var(--surface-selected);box-shadow:inset 0 0 0 2px var(--action-primary)}.admin-pictogram-option img{object-fit:contain;width:38px;height:38px}.admin-pictogram-option strong{text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.68rem;overflow:hidden}.admin-catalog-pictogram{object-fit:contain;width:36px;height:36px}.admin-section-header{border-bottom:1px solid var(--border-subtle);grid-column:1/-1;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;padding-bottom:1rem;display:flex}.admin-content-card>.table-container,.admin-content-card>.installation-dashboard,.admin-content-card>.dashboard-loading,.admin-content-card>.form-rule-editor,.admin-content-card>form{grid-column:1/-1}.admin-content-card>.audit-log-panel,.admin-content-card>.company-membership-panel{grid-column:1/-1;min-width:0}.admin-overview{grid-column:1/-1;gap:1rem;display:grid}.overview-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;display:grid}.overview-metric{border:1px solid var(--border-default);background:var(--surface-secondary);color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;border-radius:12px;gap:.25rem;padding:1rem;display:grid}.overview-metric:hover{border-color:var(--action-primary);background:var(--surface-hover)}.overview-metric>span{color:var(--text-secondary);letter-spacing:.035em;text-transform:uppercase;font-size:.75rem;font-weight:800}.overview-metric strong{font-size:1.8rem;line-height:1.1}.overview-metric small{color:var(--text-secondary);font-size:.78rem}.overview-panel{border:1px solid var(--border-default);background:var(--surface-primary);border-radius:12px;padding:1rem}.overview-panel-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.85rem;display:flex}.overview-panel-header h3,.overview-panel-header p{margin:0}.overview-panel-header h3{font-size:1rem}.overview-panel-header p{color:var(--text-secondary);margin-top:.2rem;font-size:.8rem}.overview-task-list{border:1px solid var(--border-subtle);border-radius:10px;display:grid;overflow:hidden}.overview-task-item{border-bottom:1px solid var(--border-subtle);background:var(--surface-primary);align-items:center;gap:.75rem;display:flex}.overview-task-item:last-child{border-bottom:0}.overview-task-item:hover{background:var(--surface-hover)}.overview-task-link{min-width:0;color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem;display:flex}.overview-task-link>span:first-child{gap:.15rem;display:grid}.overview-task-list small{color:var(--text-secondary)}.overview-task-review{border:1px solid var(--border-strong);background:var(--surface-primary);color:var(--text-primary);font:inherit;cursor:pointer;border-radius:7px;flex:none;margin-right:.8rem;padding:.4rem .65rem;font-size:.76rem;font-weight:700}.overview-task-review:hover{background:var(--surface-hover)}.overview-task-link:focus-visible,.overview-task-review:focus-visible{outline:2px solid var(--action-primary);outline-offset:-2px}.overview-quick-actions{flex-wrap:wrap;gap:.65rem;display:flex}.admin-empty-state{border:1px dashed var(--border-default);background:var(--surface-secondary);text-align:center;border-radius:10px;gap:.25rem;padding:1.25rem;display:grid}.admin-empty-state span{color:var(--text-secondary);font-size:.82rem}.user-access-page,.company-admin-page{grid-column:1/-1;min-width:0}.admin-list-toolbar{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.admin-list-toolbar>span{color:var(--text-secondary);font-size:.8rem;font-weight:700}.compact-primary-button{min-height:36px;padding:.42rem .75rem!important;font-size:.78rem!important}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.user-access-summary{grid-template-columns:repeat(3,minmax(100px,1fr)) auto;align-items:stretch;gap:.75rem;margin-bottom:1rem;display:grid}.user-access-summary>div{border:1px solid var(--border-subtle);background:var(--surface-secondary);border-radius:10px;gap:.1rem;padding:.8rem 1rem;display:grid}.user-access-summary strong{font-size:1.35rem}.user-access-summary span{color:var(--text-secondary);font-size:.75rem;font-weight:700}.user-access-summary>button{align-self:center}.user-add-button{white-space:nowrap;min-height:36px;padding:.42rem .75rem!important;font-size:.78rem!important}.admin-modal-backdrop{z-index:1300;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a7a;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.admin-modal{border:1px solid var(--border-default);background:var(--surface-primary);border-radius:14px;width:min(520px,100%);max-height:calc(100vh - 2rem);overflow-y:auto;box-shadow:0 24px 70px #0f172a47}.admin-modal-small{width:min(460px,100%)}.company-management-modal{width:min(760px,100%)}.company-management-content{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding:1.25rem;display:grid;overflow:hidden}.company-management-name{color:var(--text-secondary);grid-column:1/-1;gap:.4rem;font-size:.8rem;font-weight:600;display:grid}.company-management-name input{width:100%}.company-management-notice{color:var(--text-secondary);grid-column:1/-1;margin:-.35rem 0 0;font-size:.76rem}.company-management-actions{border-top:1px solid var(--border-color)}.company-management-section{border:1px solid var(--border-color);border-radius:10px;min-width:0;overflow:hidden}.company-management-heading,.company-management-item{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.company-management-heading{border-bottom:1px solid var(--border-color);padding:.8rem 1rem}.company-management-heading>div{align-items:baseline;gap:.5rem;display:flex}.company-management-heading h3{margin:0;font-size:.95rem}.company-management-heading span{color:var(--text-secondary);font-size:.8rem}.company-management-add{color:var(--text-primary);cursor:pointer;background:0 0;border:0;padding:.25rem .4rem;font-size:.78rem;font-weight:600}.company-management-add:hover{text-decoration:underline}.company-user-picker{border-bottom:1px solid var(--border-color);background:var(--surface-hover);grid-template-columns:minmax(0,1fr) auto;gap:.5rem;padding:.75rem 1rem;display:grid}.company-user-picker select{min-width:0}.company-create-user-link{color:var(--text-secondary);cursor:pointer;background:0 0;border:0;grid-column:1/-1;justify-self:start;padding:0;font-size:.76rem}.company-create-user-link:hover{color:var(--text-primary);text-decoration:underline}.company-management-list{max-height:340px;overflow-y:auto}.company-management-item{border-bottom:1px solid var(--border-color);padding:.75rem 1rem}.company-management-item:last-child{border-bottom:0}.company-management-item>div{min-width:0;display:grid}.company-management-item strong,.company-management-item small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.company-management-item small{color:var(--text-secondary);margin-top:.15rem}.company-management-remove{width:28px;height:28px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;padding:0;font-size:1.25rem;line-height:1}.company-management-remove:hover{background:var(--surface-hover);color:var(--danger-color,#b42318)}.company-management-empty{color:var(--text-secondary);margin:0;padding:1.25rem 1rem;font-size:.85rem}@media (width<=680px){.company-management-content{grid-template-columns:1fr;overflow-y:auto}}.admin-modal-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem 1.35rem;display:flex}.admin-modal-header h2,.admin-modal-header p{margin:0}.admin-modal-header h2{font-size:1.2rem}.admin-modal-header p{color:var(--text-secondary);margin-top:.3rem;font-size:.8rem;line-height:1.45}.admin-modal-close{width:2rem;height:2rem;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:7px;flex:none;font-size:1.35rem;line-height:1}.admin-modal-close:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.admin-user-form{gap:.9rem;padding:1.25rem 1.35rem 1.35rem;display:grid}.admin-user-form label{color:var(--text-primary);gap:.35rem;font-size:.78rem;font-weight:700;display:grid}.admin-organization-field{gap:.35rem;display:grid}.admin-organization-field-header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.admin-organization-field-header label{display:block}.admin-organization-field-header button{color:var(--action-primary);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:.75rem;font-weight:700}.admin-organization-field-header button:hover{text-decoration:underline}.admin-organization-field-header button:focus-visible{outline:2px solid var(--action-primary);outline-offset:3px}.admin-form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.admin-user-form input,.admin-user-form select{border:1px solid var(--border-strong);background:var(--surface-primary);width:100%;min-height:42px;color:var(--text-primary);font:inherit;border-radius:8px;padding:.55rem .7rem;font-size:.88rem}.admin-modal-actions{border-top:1px solid var(--border-subtle);justify-content:flex-end;gap:.6rem;margin-top:.35rem;padding-top:1rem;display:flex}.admin-modal-close:focus-visible,.admin-user-form input:focus-visible,.admin-user-form select:focus-visible{outline:3px solid var(--action-focus-ring);outline-offset:2px}.user-access-toolbar{grid-template-columns:minmax(220px,1fr) auto auto auto auto;align-items:center;gap:.6rem;margin-bottom:1rem;display:grid}.user-access-toolbar input,.user-access-toolbar select{border:1px solid var(--border-default);background:var(--surface-primary);width:100%;min-height:42px;color:var(--text-primary);font:inherit;border-radius:9px;padding:.55rem .75rem;font-size:.82rem}.user-filter-count{color:var(--text-secondary);white-space:nowrap;font-size:.76rem;font-weight:700}.user-access-row.is-clickable{cursor:pointer}.user-access-row.is-clickable:hover{background:var(--surface-hover)!important}.user-access-table th:last-child,.user-access-table td:last-child{text-align:right;width:52px}.user-identity{align-items:center;gap:.7rem;min-width:190px;display:flex}.user-identity>div{gap:.12rem;display:grid}.user-identity small{color:var(--text-secondary)}.user-avatar{background:var(--surface-selected);width:2.15rem;height:2.15rem;color:var(--action-primary);border-radius:50%;flex:none;place-items:center;font-size:.82rem;font-weight:900;display:grid}.global-role-pill,.account-status{white-space:nowrap;border-radius:999px;align-items:center;gap:.35rem;padding:.3rem .55rem;font-size:.72rem;font-weight:800;display:inline-flex}.global-role-pill.is-admin{background:var(--surface-selected);color:var(--action-primary)}.global-role-pill.is-manager{background:var(--surface-secondary);color:var(--text-primary)}.global-role-pill.is-none,.no-access-label{color:var(--text-secondary)}.account-status i{background:currentColor;border-radius:50%;width:.45rem;height:.45rem}.account-status.is-active{color:var(--status-success,#237a45)}.account-status.is-inactive{color:var(--status-danger,#b42318)}.user-installation-summary{flex-wrap:wrap;align-items:center;gap:.35rem;min-width:220px;display:flex}.installation-access-chip{border:1px solid var(--border-subtle);background:var(--surface-secondary);text-overflow:ellipsis;white-space:nowrap;border-radius:7px;gap:.05rem;max-width:190px;padding:.32rem .5rem;font-size:.72rem;font-weight:700;display:grid;overflow:hidden}.installation-access-chip small{color:var(--text-secondary);font-size:.62rem;font-weight:600}.installation-access-chip.admin-all-access{border-color:var(--action-primary);background:var(--surface-selected);color:var(--action-primary)}.installation-more-chip{color:var(--action-primary);font-size:.72rem;font-weight:900}.user-empty-state{color:var(--text-secondary);text-align:center;padding:2rem!important}.user-drawer-layer{z-index:1200;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a6b;justify-content:flex-end;display:flex;position:fixed;inset:0}.user-access-drawer{background:var(--surface-primary);flex-direction:column;width:min(570px,94vw);height:100%;animation:.2s ease-out admin-drawer-in;display:flex;box-shadow:-18px 0 50px #0f172a38}@keyframes admin-drawer-in{0%{opacity:.7;transform:translate(28px)}to{opacity:1;transform:translate(0)}}.user-drawer-header{border-bottom:1px solid var(--border-subtle);grid-template-columns:auto 1fr auto;align-items:center;gap:.85rem;padding:1.35rem 1.5rem;display:grid}.user-drawer-header>div:nth-child(2){min-width:0}.user-drawer-header p{color:var(--text-secondary);letter-spacing:.06em;text-transform:uppercase;margin:0 0 .15rem;font-size:.7rem;font-weight:800}.user-drawer-header h2{margin:0;font-size:1.25rem}.user-drawer-header span{color:var(--text-secondary);font-size:.82rem}.user-avatar-large{width:2.8rem;height:2.8rem;font-size:1rem}.user-drawer-close{background:var(--surface-secondary);width:2.2rem;height:2.2rem;color:var(--text-primary);cursor:pointer;border:0;border-radius:50%;font-size:1.5rem;line-height:1}.user-drawer-body{flex:1;padding:0 1.5rem 2rem;overflow-y:auto}.user-drawer-section{border-bottom:1px solid var(--border-subtle);padding:1.25rem 0}.user-drawer-section:last-child{border-bottom:0}.user-drawer-section h3{margin:0;font-size:.95rem}.user-drawer-section p{color:var(--text-secondary);margin:.25rem 0 0;font-size:.78rem;line-height:1.45}.drawer-access-list{gap:.6rem;margin-top:.85rem;display:grid}.drawer-access-card{border:1px solid var(--border-default);border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.65rem;padding:.8rem;display:grid}.drawer-access-card>div{gap:.12rem;min-width:0;display:grid}.drawer-access-card>div strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.drawer-access-card>div span{color:var(--text-secondary);font-size:.7rem}.drawer-access-card select,.drawer-add-access-form select{border:1px solid var(--border-default);background:var(--surface-primary);width:100%;min-height:38px;color:var(--text-primary);font:inherit;border-radius:8px;padding:.45rem .55rem;font-size:.76rem}.drawer-remove-access{color:var(--status-danger,#b42318);cursor:pointer;background:0 0;border:0;font-size:.72rem;font-weight:800}.drawer-empty-access{border:1px dashed var(--border-default);background:var(--surface-secondary);border-radius:10px;gap:.25rem;padding:1rem;display:grid}.drawer-empty-access span{color:var(--text-secondary);font-size:.76rem}.drawer-add-access-form{grid-template-columns:minmax(0,1fr);gap:.75rem;margin-top:.9rem;display:grid}.drawer-add-access-form label{color:var(--text-secondary);gap:.35rem;font-size:.72rem;font-weight:800;display:grid}.drawer-add-access-form button{grid-column:1/-1;justify-self:start}.drawer-access-editor{gap:.45rem;display:grid}.drawer-access-option{border:1px solid var(--border-default);background:var(--surface-primary);border-radius:9px;justify-content:space-between;align-items:center;gap:.7rem;padding:.7rem .75rem;display:flex}.drawer-access-option span{gap:.12rem;min-width:0;display:grid}.drawer-access-option strong,.drawer-access-option small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.drawer-access-option small{color:var(--text-secondary);font-size:.7rem}.drawer-branch-picker{grid-template-columns:minmax(0,1fr) auto;gap:.5rem;margin-top:.75rem;display:grid}.drawer-branch-picker select{border:1px solid var(--border-default);background:var(--surface-primary);min-width:0;min-height:38px;color:var(--text-primary);border-radius:8px;padding:.45rem .55rem}.user-drawer-actions{border-top:1px solid var(--border-subtle);background:var(--surface-primary);justify-content:flex-end;gap:.6rem;padding:1rem 1.25rem;display:flex;position:sticky;bottom:0}.membership-company-selector,.membership-assignment-form{margin-bottom:1rem}.membership-company-selector label,.membership-assignment-form label{gap:.35rem;font-size:.85rem;font-weight:700;display:grid}.membership-assignment-form{border:1px solid var(--border-default);background:var(--surface-secondary);border-radius:10px;grid-template-columns:minmax(220px,2fr) minmax(180px,1fr) auto;align-items:end;gap:.75rem;padding:1rem;display:grid}@media (width<=760px){.membership-assignment-form{grid-template-columns:1fr}}.audit-log-toolbar,.audit-pagination{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.branch-revision-review{border:1px solid var(--border-default);background:var(--surface-secondary);border-radius:11px;margin-top:1rem;padding:1rem}.branch-revision-review h3,.branch-revision-review p{margin-top:0}.audit-log-toolbar{margin-bottom:1rem}.audit-log-toolbar label{align-items:center;gap:.5rem;font-size:.85rem;font-weight:700;display:flex}.audit-log-count{color:var(--text-secondary);margin-left:auto;font-size:.85rem}.audit-log-table{min-width:1050px}.audit-log-table code{overflow-wrap:anywhere;font-size:.76rem}.audit-secondary-id{color:var(--text-secondary);margin-top:.2rem;display:block}.audit-outcome{border-radius:999px;padding:.2rem .5rem;font-size:.75rem;font-weight:800;display:inline-flex}.audit-outcome-success{color:#166534;background:#dcfce7}.audit-outcome-denied{color:#92400e;background:#fef3c7}.audit-outcome-failure{color:#991b1b;background:#fee2e2}.audit-log-error{color:#991b1b;font-weight:700}.audit-pagination{justify-content:flex-end;margin-top:1rem}.admin-section-header h2{color:var(--text-primary);margin:0;font-size:1.35rem}.admin-section-header p{max-width:650px;color:var(--text-secondary);margin:.35rem 0 0;font-size:.9rem;line-height:1.5}.admin-users-actions{align-items:center;gap:.55rem;margin-bottom:.75rem;display:flex}.catalog-tabs{border-bottom:1px solid var(--border-subtle);gap:.25rem;margin-bottom:1rem;padding-bottom:.65rem;display:flex;overflow-x:auto}.catalog-tabs button{color:var(--text-secondary);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:7px;flex:none;padding:.45rem .7rem;font-size:.78rem;font-weight:700}.catalog-tabs button:hover{background:var(--surface-hover);color:var(--text-primary)}.catalog-tabs button.active{background:var(--surface-selected);color:var(--action-primary)}.catalog-tabs button:focus-visible{outline:2px solid var(--action-primary);outline-offset:2px}.admin-actions-row{justify-content:flex-end;margin-bottom:.75rem;display:flex}.admin-actions-row .btn-primary{background:var(--action-primary);color:var(--text-on-action);cursor:pointer;border:none;border-radius:8px;padding:.55rem 1rem;font-weight:700}.admin-actions-row .btn-primary:hover:not(:disabled){opacity:.95}.table-container{border-radius:11px;width:100%;min-width:0;overflow-x:auto}.admin-table{border-collapse:collapse;background:var(--surface-primary);border:1px solid var(--border-default);width:100%;min-width:680px}.admin-table th{background:var(--surface-secondary);color:var(--text-primary);letter-spacing:.035em;text-align:left;text-transform:uppercase;border-bottom:1px solid var(--border-default);padding:.8rem .9rem;font-size:.76rem;font-weight:800}.admin-table td{border-bottom:1px solid var(--border-subtle);vertical-align:middle;padding:.75rem .9rem;font-size:.88rem}.admin-table tbody tr:nth-child(2n){background:var(--surface-tertiary)}.admin-table tbody tr:hover{background:var(--surface-hover)}.admin-selectable-row{cursor:pointer}.admin-selectable-row:focus-visible{outline:2px solid var(--action-primary);outline-offset:-2px}.row-selected td{background:var(--surface-selected)}.admin-table tr:last-child td{border-bottom:none}.admin-select{border:1px solid var(--border-strong);background:var(--surface-primary);border-radius:6px;padding:.3rem .6rem;font-size:.9rem}.btn-sm{border:1px solid var(--border-strong);background:var(--surface-primary);color:var(--text-primary);cursor:pointer;border-radius:6px;padding:.35rem .75rem;font-size:.85rem;font-weight:600;transition:background .2s}.admin-page .btn-primary{border:1px solid var(--action-primary);background:var(--action-primary);color:var(--text-on-action);font:inherit;cursor:pointer;border-radius:8px;padding:.55rem .9rem;font-size:.85rem;font-weight:700}.admin-page .btn-primary:hover:not(:disabled){background:var(--action-primary-hover)}.btn-sm:hover:not(:disabled){background:var(--surface-hover)}.btn-sm:focus-visible,.admin-select:focus-visible,.admin-user-form input:focus-visible{outline:3px solid var(--action-focus-ring);outline-offset:2px}.btn-sm:disabled{background:var(--surface-disabled);color:var(--text-disabled);cursor:not-allowed}.btn-admin-active{background:var(--surface-selected);color:var(--action-primary);border-color:var(--action-primary)}.btn-danger{background:var(--surface-primary);color:var(--status-danger);border-color:var(--status-danger)}.btn-danger:hover:not(:disabled){background:var(--status-danger-surface)}.btn-approve{background:var(--action-primary);color:var(--text-on-action);border-color:var(--action-primary);margin-right:.45rem}.btn-approve:hover:not(:disabled){background:var(--action-primary-hover)}.btn-unapprove{background:var(--surface-primary);color:var(--text-primary);border-color:var(--border-strong);margin-right:.45rem}.btn-unapprove:hover:not(:disabled){background:var(--surface-hover)}.row-actions{width:max-content;position:relative}.row-actions-trigger{border:1px solid var(--border-strong);background:var(--surface-primary);width:2rem;height:2rem;color:var(--text-primary);cursor:pointer;border-radius:7px;place-items:center;padding:0;font-size:1.15rem;font-weight:700;line-height:1;display:inline-grid}.row-actions-menu{z-index:var(--z-popover);border:1px solid var(--border-default);background:var(--surface-primary);width:210px;max-width:calc(100vw - 1rem);box-shadow:var(--shadow-md);border-radius:9px;padding:.35rem;position:fixed;overflow-y:auto}.row-actions-menu button{width:100%;color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:.55rem .65rem;font-size:.8rem;font-weight:600}.row-actions-menu button:hover{background:var(--surface-hover)}.row-actions-menu button.danger{color:var(--status-danger)}.row-actions-trigger:focus-visible,.row-actions-menu button:focus-visible,.admin-nav-item:focus-visible{outline:2px solid var(--action-primary);outline-offset:2px}.row-actions-trigger[aria-expanded=true]{background:var(--surface-selected);color:var(--text-primary);border-color:var(--action-primary)}.installation-dashboard{margin-top:1.5rem}.dashboard-header h2{color:var(--text-primary);margin:0}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin:1rem 0 1.25rem;display:grid}.stat-card{background:var(--surface-secondary);border:1px solid var(--border-default);border-radius:12px;padding:1rem}.stat-number{color:var(--text-primary);font-size:1.6rem;font-weight:800}.stat-label{color:var(--text-secondary);font-size:.85rem}.dashboard-block{margin-top:1rem}.dashboard-loading{color:var(--text-secondary);margin-top:1rem;font-weight:600}.status-badge{border-radius:12px;padding:.25rem .7rem;font-size:.8rem;font-weight:700}.status-actif,.status-confirme{background:var(--status-success-surface);color:var(--status-success)}.status-brouillon,.status-en-attente{background:var(--status-warning-surface);color:var(--status-warning)}.status-archive,.status-neutral{background:var(--status-neutral-surface);color:var(--status-neutral)}.status-annule{background:var(--status-danger-surface);color:var(--status-danger)}.form-rules-grid{display:contents}.form-rules-grid>*{min-width:0}.form-rules-grid:not(:has(>.form-rule-editor))>*{grid-column:1/-1}.field-rules-panel{border:1px solid var(--border-default);background:var(--surface-primary);box-shadow:var(--shadow-sm);border-radius:10px;padding:.9rem}.field-rules-description{color:var(--text-secondary);margin-top:.4rem}.field-rules-row{border-bottom:1px solid var(--border-subtle);grid-template-columns:minmax(160px,1fr) 160px minmax(260px,auto);align-items:center;gap:.65rem;padding:.55rem 0;display:grid}.field-rules-heading{color:var(--text-secondary);text-transform:uppercase;margin-top:.75rem;font-size:.8rem}.field-rules-name,.field-state{font-weight:600}.field-state-success{color:var(--status-success)}.field-state-warning{color:var(--status-warning)}.field-state-neutral{color:var(--status-neutral)}.field-rules-actions{gap:.5rem;display:flex}.form-rules-grid .admin-table{table-layout:fixed;min-width:0}.form-rules-grid .admin-table th:last-child,.form-rules-grid .admin-table td:last-child{width:165px}.form-rule-editor{background:var(--surface-secondary);border:1px solid var(--border-default);border-radius:12px;align-self:start;min-width:0;padding:1rem;animation:.18s ease-out admin-editor-enter}.form-rule-editor-header{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:1rem;display:flex}.form-rule-editor-header h3{color:var(--text-primary);margin:0}.editor-close-btn{border:1px solid var(--border-strong);background:var(--surface-primary);color:var(--text-primary);font:inherit;cursor:pointer;border-radius:7px;flex:none;padding:.3rem .55rem;font-size:.75rem;font-weight:700}.editor-close-btn:hover{background:var(--surface-hover)}@keyframes admin-editor-enter{0%{opacity:0;transform:translate(14px)}to{opacity:1;transform:translate(0)}}.form-rule-form{gap:1rem;display:grid}.form-rule-form>label{color:var(--text-primary);gap:.4rem;font-weight:600;display:grid}.form-rule-flags{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.45rem;display:grid}.form-rule-flags label{align-items:center;gap:.45rem;font-size:.9rem;display:flex}.form-rule-reference-group{border:1px solid var(--border-default);border-radius:10px;padding:.75rem}.form-rule-reference-group h4{color:var(--text-primary);margin:0 0 .55rem;font-size:.95rem}.form-rule-reference-list{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.4rem .8rem;display:grid}.form-rule-reference-item{align-items:center;gap:.45rem;font-size:.88rem;display:inline-flex}.form-rule-actions{gap:.6rem;display:flex}@media (width<=1080px){.admin-page{padding:1.5rem 1rem 2.5rem}.admin-layout{grid-template-columns:minmax(0,1fr)}.admin-sidebar{overscroll-behavior-inline:contain;grid-column:1;gap:1rem;margin-bottom:1rem;display:flex;position:static;overflow-x:auto}.admin-nav-group{flex:none}.admin-nav-group+.admin-nav-group{border-top:0;border-left:1px solid var(--border-subtle);margin-top:0;padding-top:0;padding-left:1rem}.admin-nav-items{display:flex}.admin-nav-item{white-space:nowrap;width:auto}.admin-nav-item.active{box-shadow:inset 0 -3px 0 var(--action-primary)}.admin-content-card,.admin-content-card.editor-open{grid-column:1;grid-template-columns:minmax(0,1fr)}.form-rules-grid>*{grid-column:1}.user-access-toolbar{grid-template-columns:minmax(220px,1fr) repeat(3,auto)}.user-filter-count{grid-column:1/-1;justify-self:end}}@media (width<=560px){.admin-header h1{font-size:1.55rem}.admin-content-card{padding:1rem}.overview-metrics{grid-template-columns:1fr}.overview-panel-header{flex-direction:column;align-items:stretch}.admin-section-header h2{font-size:1.15rem}.field-rules-row{grid-template-columns:minmax(0,1fr)}.field-rules-heading{display:none}.field-rules-actions{flex-wrap:wrap}.user-access-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.user-access-summary>button{grid-column:1/-1}.user-access-toolbar{grid-template-columns:1fr}.user-filter-count{justify-self:end}.admin-form-row{grid-template-columns:1fr}.drawer-access-card{grid-template-columns:1fr auto}.drawer-access-card>div{grid-column:1/-1}.drawer-add-access-form{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.form-rule-editor,.user-access-drawer{animation:none}}.company-dashboard{width:min(1120px,100% - 2rem);margin:1.5rem auto 4rem}.company-dashboard-header{justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:1rem;display:flex}.company-dashboard-header h1{margin:.2rem 0}.company-dashboard-header p{color:var(--text-secondary)}.company-dashboard-eyebrow{letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:800}.company-primary-link,.company-profile-form button{background:var(--action-primary);color:var(--text-on-action);cursor:pointer;border:0;border-radius:9px;padding:.7rem 1rem;font-weight:750;text-decoration:none}.company-panel{border:1px solid var(--border-default);background:var(--surface-primary);border-radius:14px;margin-top:1rem;padding:1.1rem}.company-panel h2{margin-top:0}.company-profile-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.company-profile-form label{gap:.35rem;font-size:.85rem;font-weight:700;display:grid}.company-profile-form input,.company-profile-form textarea{box-sizing:border-box;border:1px solid var(--border-strong);background:var(--surface-primary);width:100%;color:var(--text-primary);font:inherit;border-radius:8px;padding:.65rem .75rem}.company-profile-description{grid-column:1/-1}.company-profile-form button{justify-self:start}.company-profile-form button:disabled{opacity:.6;cursor:wait}.company-section-heading{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.9rem;display:flex}.company-section-heading>div{align-items:center;gap:.65rem;display:flex}.company-section-heading h2{margin:0}.company-section-heading span{background:var(--surface-secondary);border-radius:999px;padding:.2rem .55rem;font-weight:800}.company-profile-card{border:1px solid var(--border-default);background:var(--surface-primary);border-radius:12px;margin-bottom:1rem}.company-profile-content{align-items:center;gap:1rem;padding:.9rem 1rem;display:flex}.company-profile-logo{object-fit:contain;border:1px solid var(--border-subtle);background:var(--surface-primary);border-radius:10px;flex:0 0 62px;width:62px;height:62px}.company-profile-details{flex:1;min-width:0}.company-profile-details h2{margin:0 0 .25rem;font-size:1.1rem}.company-profile-details p{max-width:72ch;color:var(--text-secondary);white-space:pre-line;margin:0 0 .55rem;font-size:.88rem;line-height:1.45}.company-profile-links{flex-wrap:wrap;gap:.9rem;display:flex}.company-profile-links a{color:var(--action-primary);font-size:.8rem;font-weight:750}.company-profile-edit{border:1px solid var(--border-default);color:var(--text-secondary);font:inherit;opacity:.75;cursor:not-allowed;background:0 0;border-radius:8px;flex:none;padding:.5rem .7rem;font-size:.78rem;font-weight:700}.company-branch-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.company-branch-card{border:1px solid var(--border-subtle);background:var(--surface-secondary);border-radius:9px;justify-content:space-between;align-items:center;gap:.8rem;min-width:0;padding:.75rem .85rem;display:flex}.company-branch-summary{min-width:0}.company-branch-card h3{text-overflow:ellipsis;white-space:nowrap;margin:0 0 .18rem;font-size:.95rem;overflow:hidden}.company-branch-card p{margin:0}.company-branch-meta{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.company-branch-actions{flex:none;justify-content:flex-end;align-items:center;gap:.55rem;display:flex}.company-branch-actions a{color:var(--action-primary);font-size:.8rem;font-weight:750}.company-status{border-radius:999px;padding:.3rem .6rem;font-size:.75rem;font-weight:800}.company-status-approved{color:#166534;background:#dcfce7}.company-status-pending{color:#92400e;background:#fef3c7}.company-status-rejected{color:#991b1b;background:#fee2e2}.company-status-draft{background:var(--surface-tertiary);color:var(--text-secondary)}.company-rejection-reason,.company-message.error{color:#991b1b;font-size:.75rem;margin-top:.3rem!important}.company-message.success{color:#166534}.company-switcher{gap:.35rem;max-width:420px;margin-bottom:1rem;font-weight:750;display:grid}.company-switcher select{border:1px solid var(--border-strong);background:var(--surface-primary);color:var(--text-primary);font:inherit;border-radius:8px;padding:.65rem .75rem}@media (width<=720px){.company-dashboard-header,.company-section-heading,.company-profile-content{flex-direction:column;align-items:stretch}.company-branch-list{grid-template-columns:1fr}.company-profile-edit{align-self:flex-start}.company-profile-form{grid-template-columns:1fr}.company-profile-description{grid-column:auto}.company-branch-actions{justify-content:flex-start}}.about-page{--theme-clair:var(--oppal-institutionnel-clair);--theme-fonce:var(--oppal-institutionnel-sombre);animation:.3s ease-out aboutPageFadeIn;overflow-x:clip}@keyframes aboutPageFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.about-content{width:calc(100% - var(--page-gutter) - var(--page-gutter));max-width:var(--content-max);margin:0 auto;padding:clamp(2.5rem,5vw,4.75rem) 0 clamp(4rem,7vw,6.5rem)}.about-content-layout{grid-template-columns:minmax(0,1fr) minmax(250px,.38fr);align-items:start;gap:clamp(3rem,7vw,7rem);display:grid}.about-accordion{border-top:1px solid var(--border-default)}.about-accordion-item{border-bottom:1px solid var(--border-default)}.about-accordion-item h2{margin:0}.about-accordion-item h2 button{width:100%;min-height:76px;color:var(--oppal-noir);text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.25rem 0;font-size:clamp(1.2rem,1.8vw,1.55rem);font-weight:700;line-height:1.25;transition:color .2s;display:flex}.about-accordion-item h2 button:hover,.about-accordion-item.is-open h2 button{color:var(--theme-fonce)}.about-accordion-item h2 button:focus-visible{outline:2px solid var(--action-focus-ring);outline-offset:5px}.about-chevron{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:25px;height:25px;transition:transform .2s}.about-accordion-item.is-open .about-chevron{transform:rotate(180deg)}.about-panel{opacity:0;visibility:hidden;grid-template-rows:0fr;transition:grid-template-rows .22s ease-out,opacity .18s ease-out,visibility 0s linear .22s;display:grid}.about-accordion-item.is-open .about-panel{opacity:1;visibility:visible;grid-template-rows:1fr;transition:grid-template-rows .22s ease-out,opacity .2s ease-out 20ms,visibility linear}.about-panel-clip{min-height:0;overflow:hidden}.about-panel-layout{padding:.35rem 0 clamp(2.4rem,4.5vw,4rem)}.about-panel-copy{max-width:720px}.about-panel-copy h3{color:var(--theme-fonce);letter-spacing:-.02em;margin:0 0 1.15rem;font-size:clamp(1.55rem,2.4vw,2.15rem);font-weight:800}.about-panel-copy p,.about-panel-copy li{color:var(--text-primary);font-size:clamp(1rem,1.15vw,1.075rem);line-height:1.72}.about-panel-copy p+p,.about-panel-copy p+ul{margin-top:.9rem}.about-panel-copy ul{padding-left:1.2rem}.about-panel-copy li{padding-left:.25rem}.about-panel-copy li+li{margin-top:.35rem}.about-panel-copy li::marker{color:var(--theme-fonce)}.about-values-list strong{color:var(--theme-fonce);font-weight:700}.about-mandates-list{padding-left:1.5rem}.about-mandates-list li+li{margin-top:1.1rem}.about-mandates-list strong{color:var(--theme-fonce);font-weight:700}.about-panel-copy h4{color:var(--theme-fonce);margin:0 0 1rem;font-size:clamp(1.15rem,1.5vw,1.35rem);font-weight:700}.about-directors{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-bottom:2.25rem;display:grid}.about-director-card{border:1px solid var(--border-default);background:var(--surface-primary);border-radius:8px;grid-template-columns:82px minmax(0,1fr);align-items:center;gap:1rem;min-width:0;padding:.8rem;display:grid}.about-director-card img{object-fit:cover;border-radius:6px;width:82px;height:96px;display:block}.about-director-card h5{color:var(--oppal-noir);margin:0 0 .35rem;font-size:1rem;font-weight:700;line-height:1.3}.about-director-card p{color:var(--text-secondary);margin:0;font-size:.88rem;line-height:1.45}.about-experts-list{padding-left:1.2rem}.about-experts-list strong{color:var(--oppal-noir);font-weight:700}.about-organizations-list{gap:clamp(1.6rem,3vw,2.4rem);padding:0;list-style:none;display:grid}.about-organizations-list li{grid-template-columns:132px minmax(0,1fr);align-items:center;gap:clamp(1.25rem,3vw,2.25rem);min-height:70px;padding:0;display:grid}.about-organizations-list li+li{margin-top:0}.about-organizations-list img{object-fit:contain;object-position:center;width:132px;height:68px;display:block}.about-organizations-list .about-funding-logo{background:var(--theme-fonce);border-radius:6px;padding:8px 16px}.about-organizations-list span{color:var(--text-primary);font-size:clamp(1rem,1.15vw,1.075rem);font-weight:600;line-height:1.55}.about-logo-column{position:sticky;top:7.5rem}.about-logo-stage{place-items:center;min-height:280px;display:grid}.about-logo{width:min(100%,320px);height:auto;display:block}@media (width<=760px){.about-content{width:calc(100% - 32px);padding-top:2rem}.about-content-layout{flex-direction:column-reverse;gap:2rem;display:flex}.about-accordion{width:100%}.about-accordion-item h2 button{min-height:68px}.about-panel-layout{padding-top:.25rem}.about-logo-column{width:100%;position:static}.about-logo-stage{min-height:180px}.about-logo{width:min(78vw,240px)}.about-directors{grid-template-columns:1fr}.about-organizations-list li{grid-template-columns:104px minmax(0,1fr);gap:1rem}.about-organizations-list img{width:104px;height:64px}}@media (prefers-reduced-motion:reduce){.about-page{animation:none}.about-panel,.about-chevron{transition-duration:.01ms}}.contact-page{--theme-clair:var(--oppal-institutionnel-clair);--theme-fonce:var(--oppal-institutionnel-sombre);animation:.3s ease-out contactPageIn;overflow-x:clip}@keyframes contactPageIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.contact-content{width:calc(100% - var(--page-gutter) - var(--page-gutter));max-width:var(--content-max);margin:0 auto;padding:clamp(2.75rem,5vw,4.75rem) 0 clamp(4rem,7vw,6.5rem)}.contact-content h2{color:var(--theme-fonce);letter-spacing:-.02em;margin:0 0 clamp(1.5rem,3vw,2.25rem);font-size:clamp(1.65rem,2.6vw,2.2rem);font-weight:800}.contact-join{border-bottom:1px solid var(--border-default);padding-bottom:clamp(2.75rem,5vw,4.5rem)}.contact-join-layout{grid-template-columns:minmax(0,.85fr) minmax(420px,1.15fr);align-items:start;gap:clamp(2.5rem,6vw,6rem);display:grid}.contact-details{gap:1.6rem;display:grid}.contact-organization{max-width:34rem;color:var(--oppal-noir);font-size:clamp(1.05rem,1.4vw,1.2rem);font-weight:700;line-height:1.55}.contact-detail{width:fit-content;color:var(--text-primary);grid-template-columns:34px minmax(0,1fr);align-items:center;gap:.9rem;font-size:.98rem;line-height:1.65;display:grid}.contact-detail img{object-fit:contain;width:30px;height:30px;display:block}.contact-detail:hover span{color:var(--theme-fonce);text-underline-offset:3px;text-decoration:underline}.contact-detail:focus-visible{outline:2px solid var(--action-focus-ring);outline-offset:5px;border-radius:4px}.contact-map{border:1px solid var(--border-default);background:var(--surface-subtile);border-radius:12px;height:clamp(320px,31vw,370px);overflow:hidden}.contact-message-section{padding-top:clamp(2.75rem,5vw,4.5rem)}.contact-message-section>h2{margin-bottom:clamp(1.75rem,3vw,2.5rem)}.contact-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.2rem,1.8vw,1.45rem) 1.5rem;width:100%;display:grid}.contact-field{flex-direction:column;gap:.45rem;min-width:0;display:flex}.contact-field-full{grid-column:1/-1}.contact-field label{color:var(--oppal-noir);font-size:.9rem;font-weight:700}.contact-field label span{color:var(--theme-fonce)}.contact-field input,.contact-field select,.contact-field textarea{border:1px solid var(--field-border);background:var(--field-background);width:100%;min-width:0;color:var(--text-primary);font:inherit;border-radius:9px;outline:0;padding:.8rem .9rem;font-size:.96rem;line-height:1.4;transition:border-color .18s,box-shadow .18s}.contact-field select{cursor:pointer}.contact-field textarea{resize:vertical;min-height:170px}.contact-field input:hover,.contact-field select:hover,.contact-field textarea:hover{border-color:var(--theme-fonce)}.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{border-color:var(--field-border-focus);box-shadow:0 0 0 3px var(--action-focus-ring)}.contact-field.has-error input,.contact-field.has-error select,.contact-field.has-error textarea{border-style:dashed;border-color:var(--status-danger)}.contact-field-error{color:var(--status-danger);align-items:flex-start;gap:.4rem;font-size:.8rem;font-weight:600;line-height:1.4;display:flex}.contact-field-error span{border:1px solid;border-radius:50%;flex:none;place-items:center;width:1.1rem;height:1.1rem;font-size:.7rem;line-height:1;display:inline-grid}.contact-form-footer{grid-column:1/-1;justify-content:space-between;align-items:center;gap:1.5rem;padding-top:.6rem;display:flex}.contact-submit-status{max-width:38rem;color:var(--text-secondary);font-size:.88rem;font-weight:600;line-height:1.45}.contact-submit-status.is-success{color:var(--status-success)}.contact-submit-status.is-error{color:var(--status-danger)}.contact-form-footer button{background:var(--action-primary);min-width:170px;min-height:44px;color:var(--oppal-blanc);border-radius:999px;flex:none;margin-left:auto;padding:.72rem 1.5rem;font-size:.92rem;font-weight:700;transition:background .18s,transform .18s,opacity .18s}.contact-form-footer button:hover:not(:disabled){background:var(--action-primary-hover);transform:translateY(-1px)}.contact-form-footer button:focus-visible{outline:3px solid var(--action-focus-ring);outline-offset:3px}.contact-form-footer button:disabled{cursor:wait;opacity:.58;transform:none}@media (width<=840px){.contact-join-layout{grid-template-columns:1fr}}@media (width<=760px){.contact-content{width:calc(100% - 32px);padding-top:2rem}.contact-form{grid-template-columns:1fr}.contact-field-full,.contact-form-footer{grid-column:auto}}@media (width<=520px){.contact-map{height:320px}.contact-form-footer{flex-direction:column;align-items:stretch}.contact-form-footer button{width:100%}}@media (prefers-reduced-motion:reduce){.contact-page{animation:none}.contact-field input,.contact-field select,.contact-field textarea,.contact-form-footer button{transition-duration:.01ms}}.app{flex-direction:column;min-height:100vh;display:flex}.main-content{flex:1;width:100%;max-width:1440px;margin:0 auto;padding:20px}:is(.main-content:has(>.home-page),.main-content:has(>.locations-page),.main-content:has(>.about-page),.main-content:has(>.contact-page),.main-content:has(>.blog-page)){padding-top:8px}@media (width<=768px){.main-content{padding:10px}:is(.main-content:has(>.home-page),.main-content:has(>.locations-page),.main-content:has(>.about-page),.main-content:has(>.contact-page),.main-content:has(>.blog-page)){padding-top:4px}}:root{--content-max:1312px;--page-gutter:24px;--content-shell-max:calc(var(--content-max) + var(--page-gutter) + var(--page-gutter));--hero-mosaic-width:min(66vw, 790px);--oppal-brand-logo-height:54px;--oppal-brand-logo-height-compact:46px;--z-popover:100;--z-modal:2000;--color-ink:var(--oppal-noir);--color-ice:var(--oppal-categories-clair);--color-canyon:var(--oppal-accueil-clair);--color-fern:var(--oppal-aps-clair);--color-water:var(--oppal-institutionnel-clair);--color-sand:var(--oppal-lieux-clair);--color-bg:var(--oppal-blanc);--color-surface:var(--oppal-blanc);--color-surface-strong:var(--oppal-blanc);--color-border:var(--oppal-institutionnel-sombre);--color-text:var(--oppal-noir);--color-text-muted:var(--texte-secondaire);--color-primary:var(--oppal-institutionnel-clair);--color-primary-dark:var(--oppal-institutionnel-sombre);--color-success:var(--oppal-aps-sombre);--oppal-accueil-clair:#d79e7b;--oppal-accueil-sombre:#b26857;--oppal-lieux-clair:#eac288;--oppal-lieux-sombre:#c4914d;--oppal-aps-clair:#b9c47c;--oppal-aps-sombre:#8f964b;--oppal-categories-clair:#c7dddd;--oppal-categories-sombre:#769b99;--oppal-institutionnel-clair:#79c0cc;--oppal-institutionnel-sombre:#328a93;--oppal-noir:#333;--oppal-blanc:#fff;--theme-clair:var(--oppal-institutionnel-clair);--theme-fonce:var(--oppal-institutionnel-sombre);--theme-hover:color-mix(in srgb, var(--theme-fonce) 20%, transparent);--theme-border:var(--theme-fonce);--theme-shadow:color-mix(in srgb, var(--theme-fonce) 20%, transparent);--texte-secondaire:color-mix(in srgb, var(--oppal-noir) 65%, transparent);--texte-suggestif:color-mix(in srgb, var(--oppal-noir) 50%, transparent);--surface-subtile:color-mix(in srgb, var(--theme-clair) 20%, var(--oppal-blanc));--surface-primary:var(--color-surface);--surface-secondary:color-mix(in srgb, var(--color-text) 4%, var(--color-surface));--surface-tertiary:color-mix(in srgb, var(--color-text) 2%, var(--color-surface));--surface-hover:color-mix(in srgb, var(--theme-clair) 12%, var(--color-surface));--surface-selected:color-mix(in srgb, var(--theme-clair) 24%, var(--color-surface));--surface-disabled:color-mix(in srgb, var(--color-text) 7%, var(--color-surface));--field-background:var(--surface-primary);--field-background-disabled:var(--surface-disabled);--field-border:var(--border-strong);--field-border-focus:var(--action-primary);--border-default:color-mix(in srgb, var(--color-text) 14%, transparent);--border-subtle:color-mix(in srgb, var(--color-text) 8%, transparent);--border-strong:color-mix(in srgb, var(--color-text) 24%, transparent);--text-primary:var(--color-text);--text-secondary:var(--color-text-muted);--text-disabled:color-mix(in srgb, var(--color-text) 42%, transparent);--text-on-action:var(--oppal-noir);--action-primary:var(--theme-fonce);--action-primary-hover:color-mix(in srgb, var(--theme-fonce) 84%, var(--color-text));--action-primary-active:color-mix(in srgb, var(--theme-fonce) 72%, var(--color-text));--action-focus-ring:color-mix(in srgb, var(--theme-fonce) 38%, transparent);--status-success:var(--oppal-aps-sombre);--status-success-surface:color-mix(in srgb, var(--status-success) 14%, var(--color-surface));--status-warning:var(--oppal-lieux-sombre);--status-warning-surface:color-mix(in srgb, var(--status-warning) 18%, var(--color-surface));--status-danger:var(--oppal-accueil-sombre);--status-danger-hover:color-mix(in srgb, var(--status-danger) 78%, var(--color-text));--status-danger-surface:color-mix(in srgb, var(--status-danger) 14%, var(--color-surface));--status-neutral:var(--text-secondary);--status-neutral-surface:var(--surface-secondary);--shadow-sm:0 2px 8px color-mix(in srgb, var(--color-text) 7%, transparent);--shadow-md:0 8px 24px color-mix(in srgb, var(--color-text) 10%, transparent);--shadow-modal:0 20px 55px color-mix(in srgb, var(--color-text) 28%, transparent);--overlay-backdrop:color-mix(in srgb, var(--color-text) 52%, transparent)}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--color-bg);background-image:linear-gradient(180deg, color-mix(in srgb, var(--oppal-blanc) 98%, transparent) 0%, color-mix(in srgb, var(--oppal-blanc) 98%, transparent) 100%), radial-gradient(circle at top, color-mix(in srgb, var(--oppal-categories-clair) 12%, transparent), transparent 42%);color:var(--color-text);background-repeat:no-repeat;background-size:cover;background-attachment:fixed;font-family:Public Sans,Trebuchet MS,sans-serif}*{scrollbar-width:thin;scrollbar-color:var(--texte-suggestif) var(--surface-tertiary)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--surface-tertiary)}::-webkit-scrollbar-thumb{border:2px solid var(--surface-tertiary);background:var(--texte-suggestif);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--texte-secondaire)}h1,h2,h3,h4,h5,h6{color:var(--theme-fonce);font-family:Chivo,Franklin Gothic Medium,sans-serif}#root{min-height:100vh}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;font-family:inherit}input,textarea,select{color:var(--oppal-noir);font-family:inherit}.mt-1{margin-top:1rem}.mb-1{margin-bottom:1rem}.text-capitalize{text-transform:capitalize}input::placeholder,textarea::placeholder{color:var(--texte-suggestif)}
