*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.relative{position:relative}.mb-1{margin-bottom:.25rem}.mb-10{margin-bottom:2.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.block{display:block}.flex{display:flex}.table{display:table}.aspect-video{aspect-ratio:16 / 9}.h-10{height:2.5rem}.h-12{height:3rem}.h-16{height:4rem}.h-28{height:7rem}.h-3{height:.75rem}.h-32{height:8rem}.h-4{height:1rem}.h-40{height:10rem}.h-48{height:12rem}.h-64{height:16rem}.h-8{height:2rem}.w-1\/2{width:50%}.w-2\/3{width:66.666667%}.w-3\/4{width:75%}.w-32{width:8rem}.w-full{width:100%}.max-w-none{max-width:none}.flex-wrap{flex-wrap:wrap}.gap-2{gap:.5rem}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-lg{border-radius:.5rem}.bg-green-500\/20{background-color:#22c55e33}.bg-red-500\/20{background-color:#ef444433}.object-cover{-o-object-fit:cover;object-fit:cover}.px-2{padding-left:.5rem;padding-right:.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.tracking-widest{letter-spacing:.1em}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:root{--bg: #f1f4f8;--bg-soft: #deeff6;--surface: #ffffff;--surface-alt: #f1f4f8;--border: #deeff6;--text-primary: #0a3a70;--text-secondary: #3f5a7a;--text-muted: #566b85;--accent: #0a3a70;--accent-strong: #072b54;--accent-hover: #1b5a9e;--accent-contrast: #ffffff;--success: #2f7d5d;--shadow: transparent;--navy-deep: #072b54;--navy-line: #1b4a80;--on-navy: #c4d6e8;--warm: #b85d2b;--warm-soft: #fbefe7;--green: #36745c;--green-soft: #eaf3ed;--plum: #79566f;--plum-soft: #f3edf2;--background: var(--surface);--text: var(--text-primary);--font-display: Arial, "Helvetica Neue", Helvetica, sans-serif;--font-body: Arial, "Helvetica Neue", Helvetica, sans-serif;--radius: 14px;--radius-md: 10px;--radius-lg: 18px;--container: 80rem;--content-px: clamp(1rem, 4vw, 2rem);--section-py: clamp(4.5rem, 9vw, 7.5rem);--crest-h: clamp(2.5rem, 6vw, 5.5rem);--container-inner: calc(var(--container) - 2 * var(--content-px));--z-nav: 50;--z-decorations: 10}html.theme-base{background:var(--bg)}html,body{background:var(--bg);color:var(--text-primary);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body{min-height:100vh;background:linear-gradient(180deg,#f5f8fb,#eef4f9)}.app{display:flex;flex-direction:column;min-height:100vh;overflow-x:clip}a{color:inherit;text-decoration:none}h1,h2{font-weight:800;letter-spacing:-.02em;text-wrap:balance}p{text-wrap:pretty}.eyebrow{display:block;margin-bottom:1rem;color:var(--warm);font-size:.875rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase}.home-section-link,.home-intro-link{display:inline-flex;gap:.6rem;align-items:baseline;padding-bottom:.25rem;border-bottom:2px solid var(--warm);color:var(--text-primary);font-weight:600;text-decoration:none;transition:color .15s ease,border-color .15s ease}.home-section-link:hover,.home-intro-link:hover,.home-intro-link:focus-visible{border-color:var(--accent-hover);color:var(--accent-hover)}.home-stats{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.5rem 2.5rem;width:min(100% - 2 * var(--content-px),var(--container-inner));margin:0 auto 2rem;padding:1.25rem 1.75rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.home-stats__figures{display:flex;flex-wrap:wrap;gap:1.5rem 2rem}.home-stats__item{display:flex;align-items:center;gap:1rem}.home-stats__item+.home-stats__item{padding-left:2rem;border-left:1px solid var(--border)}.home-stats__icon{width:3.5rem;height:auto;fill:var(--accent)}.home-stats__icon-side{opacity:.55}.home-stats__item strong{display:block;color:var(--navy-deep);font-size:2rem;font-weight:800;line-height:1}.home-stats__item span{display:block;margin-top:.25rem;color:var(--text-secondary);font-size:.9375rem;font-weight:400}.home-stats__item small{display:block;font-size:.8125rem;line-height:1.3}.home-stats__associations{display:flex;flex-direction:column;align-items:center;border-left:1px solid var(--border);padding-left:2rem}.home-stats__associations-title{margin:0 0 .75rem;text-align:center;color:var(--text-secondary);font-size:.9375rem;font-weight:400}.home-stats__associations-title strong{color:var(--navy-deep);font-size:2rem;font-weight:800;line-height:1}.home-stats__associations ul{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;margin:0;padding:0;list-style:none}.home-stats__associations li{display:flex;align-items:center;gap:.6rem;max-width:14rem}.home-stats__logo{display:grid;flex:none;place-items:center;width:2.75rem;height:2.75rem;border-radius:50%;color:#fff;font-weight:800;-o-object-fit:contain;object-fit:contain}.home-stats__logo svg{width:1.5rem;height:1.5rem;fill:#fff}.home-stats__asso-text strong{display:block;color:var(--navy-deep);font-size:.9375rem;font-weight:800}.home-stats__asso-text small{display:block;color:var(--text-secondary);font-size:.8125rem;line-height:1.3}@media(max-width:700px){.home-stats{flex-direction:column;align-items:center;text-align:center}.home-stats__figures{justify-content:center}.home-stats__item{justify-content:center;text-align:left}.home-stats__item+.home-stats__item{padding-left:0;border-left:0}.home-stats__associations{align-items:center;padding-left:0;border-left:0}.home-stats__associations ul{justify-content:center}}@media(max-width:480px){.home-stats__associations li{flex-direction:column;max-width:18rem;text-align:center}}.home-consultation{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:1.5rem;align-items:stretch}.home-section--consultation{max-width:var(--container);margin:0 auto;padding:2rem var(--content-px) 5rem}.home-consultation__banner{position:relative;display:flex;align-items:center;min-height:21rem;border-radius:var(--radius-lg);background:var(--navy-deep);overflow:hidden}.home-consultation__image{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.home-consultation__overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#072b548c,#072b54eb 45%,#072b54f5)}.home-consultation__content{position:relative;z-index:1;display:flex;align-items:center;gap:1.5rem;padding:2rem}.home-consultation__icon{display:grid;flex:none;place-items:center;width:5.5rem;height:5.5rem;border-radius:50%;background:var(--warm)}.home-consultation__icon svg{width:3rem;height:auto;fill:#fff}.home-consultation__text h2{margin:0 0 .75rem;color:var(--accent-contrast);font-size:1.5rem;font-weight:800}.home-consultation__text p{margin:0 0 1.25rem;color:#fff;font-size:.9375rem;line-height:1.5}.home-consultation__text .btn-primary{background:#fff;color:var(--navy-deep)}.home-faq{padding:1.25rem 1.5rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.home-faq__header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem 1rem;margin-bottom:.75rem}.home-faq__header h2{margin:0;color:var(--navy-deep);font-size:1.5rem;font-weight:800}.home-faq__item{border-bottom:1px solid var(--border)}.home-faq__item:last-child{border-bottom:0}.home-faq__question{position:relative;display:block;padding:.85rem 2rem .85rem 0;color:var(--text-primary);font-size:.9375rem;font-weight:600;line-height:1.4;list-style:none;cursor:pointer}.home-faq__question::-webkit-details-marker{display:none}.home-faq__question:after{position:absolute;top:50%;right:.25rem;width:.55rem;height:.55rem;border-right:2px solid var(--warm);border-bottom:2px solid var(--warm);transform:translateY(-70%) rotate(45deg);transition:transform .2s ease;content:""}.home-faq__item[open] .home-faq__question:after{transform:translateY(-30%) rotate(-135deg)}.home-faq__question:hover,.home-faq__question:focus-visible{text-decoration:underline}.home-faq__answer{padding:0 0 1rem;color:var(--text-secondary);font-size:.9375rem;line-height:1.55;text-align:justify}@media(max-width:900px){.home-consultation{grid-template-columns:minmax(0,1fr);gap:1rem}.home-consultation__banner{min-height:0}.home-consultation__overlay{background:#072b54e0}.home-consultation__content{flex-direction:column;align-items:flex-start;gap:1rem;padding:1.5rem}}@media(max-width:600px){.home-consultation__icon{width:4rem;height:4rem}.home-consultation__icon svg{width:2.25rem}.home-consultation__text .btn-primary{display:block;width:100%;text-align:center}.home-faq{padding:1rem 1.1rem}.home-faq__header{flex-direction:column;align-items:flex-start;gap:.25rem}.home-faq__header h2{font-size:1.25rem}.home-faq__question{padding:1rem 2rem 1rem 0}.home-faq__answer{text-align:left}}.nav-wrapper{position:sticky;top:0;z-index:var(--z-nav);background:#ffffffd1;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);box-shadow:0 1px #162d420a}.nav-scrolled{border-bottom-color:#0f5a8a2e}.nav-inner{display:flex;align-items:center;gap:1.5rem;max-width:var(--container);margin:0 auto;padding:1.1rem var(--content-px)}.nav-logo{display:inline-flex;align-items:center;gap:.75rem;font-family:var(--font-display);color:var(--text-primary)}.nav-logo-text{display:flex;flex-direction:column;line-height:1}.nav-logo-word{font-size:1.25rem;font-weight:900;letter-spacing:.02em;text-transform:uppercase}.nav-logo-year{margin-top:.15rem;font-size:.875rem;font-weight:700;letter-spacing:.3em}.nav-logo img{display:block;flex:0 0 44px;width:44px;height:44px;-o-object-fit:contain;object-fit:contain}.nav-links{display:flex;align-items:center;gap:1.15rem;margin:0;padding:0;list-style:none;white-space:nowrap}.nav-links--right{margin-left:auto}.nav-dropdown{position:relative}@media(max-width:1100px){.nav-inner{gap:.75rem}.nav-links{gap:.8rem;overflow-x:auto;scrollbar-width:none}.nav-links::-webkit-scrollbar{display:none}.nav-link{font-size:.85rem}}@media(max-width:768px){.nav-links{display:none}}.nav-dropdown-trigger{display:flex;align-items:center;gap:.35rem}.nav-dropdown-toggle,.mobile-project-toggle{display:grid;place-items:center;width:1.8rem;height:1.8rem;padding:0;border:0;background:transparent;color:var(--text-secondary);cursor:pointer}.nav-chevron{display:block;width:.45rem;height:.45rem;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .15s ease}.nav-dropdown--open .nav-chevron,.nav-dropdown:focus-within .nav-chevron,.nav-dropdown:hover .nav-chevron,.mobile-project-toggle[aria-expanded=true] .nav-chevron{transform:translateY(2px) rotate(225deg)}.nav-submenu{position:absolute;top:100%;left:0;z-index:60;display:none;width:-moz-max-content;width:max-content;min-width:14rem;max-width:min(20rem,85vw);margin:0;padding:.4rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:0 12px 28px #072b541f;list-style:none}.nav-dropdown--open .nav-submenu{display:block}.nav-submenu a{display:block;padding:.65rem .75rem;border-radius:var(--radius-md);color:var(--text-secondary);font-size:.9rem}.nav-submenu a:hover,.nav-submenu a:focus-visible{background:var(--bg-soft);color:var(--accent)}.nav-link{font-size:.95rem;font-weight:500;color:var(--text-primary);transition:color .15s ease}.nav-dropdown-label{padding:0;border:0;background:transparent;cursor:pointer}.nav-link:hover{color:var(--accent-hover)}.nav-cta{background:var(--accent);color:var(--accent-contrast);padding:.75rem 1.25rem;border-radius:var(--radius);font-size:.875rem;font-weight:600;box-shadow:none}.nav-cta:after{display:none}.nav-cta:hover{background:var(--accent-hover);color:var(--accent-contrast)}.nav-search-toggle{display:grid;place-items:center;width:2.75rem;height:2.75rem;margin-left:auto;padding:0;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text-primary);cursor:pointer;transition:border-color .15s ease,color .15s ease}.nav-search-toggle:hover,.nav-search-toggle[aria-expanded=true]{border-color:var(--accent-hover);color:var(--accent-hover)}.nav-search-toggle svg,.site-search__icon{width:1.15rem;height:1.15rem;stroke:currentColor;stroke-width:2;stroke-linecap:round}.nav-search-toggle~.nav-links--right{margin-left:0}.site-search{position:absolute;top:100%;right:0;left:0;max-height:calc(100vh - 5rem);overflow-y:auto;border-bottom:1px solid var(--border);background:var(--surface);box-shadow:0 18px 40px #072b5424}.site-search__inner{max-width:var(--container);margin:0 auto;padding:1.5rem var(--content-px) 2rem}.site-search__field{display:flex;align-items:center;gap:.75rem;padding:0 .5rem 0 1.1rem;border:2px solid var(--accent);border-radius:var(--radius);color:var(--accent)}.site-search__field input{flex:1;min-width:0;min-height:3.5rem;border:0;outline:0;background:transparent;color:var(--text-primary);font:inherit;font-size:1.0625rem}.site-search__field input::-moz-placeholder{color:var(--text-muted)}.site-search__field input::placeholder{color:var(--text-muted)}.site-search__field input::-webkit-search-cancel-button{display:none}.site-search__close{padding:.55rem .9rem;border:0;border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font:inherit;font-size:.875rem;font-weight:600;cursor:pointer}.site-search__close:hover{background:var(--bg-soft);color:var(--accent)}.site-search__results{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:1.5rem 2.5rem;margin-top:1.75rem}.site-search__group h2{margin:0 0 .6rem;color:var(--warm);font-size:.8125rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase}.site-search__group ul{margin:0;padding:0;border-top:2px solid var(--accent);list-style:none}.site-search__group li{border-bottom:1px solid var(--border)}.site-search__group a{display:grid;gap:.15rem;padding:.75rem 0;color:var(--text-primary);font-weight:600;line-height:1.35}.site-search__group a:hover,.site-search__group a:focus-visible{color:var(--accent-hover)}.site-search__group small{color:var(--text-muted);font-size:.8125rem;font-weight:400}.site-search__empty{grid-column:1 / -1;margin:0;color:var(--text-secondary)}.nav-hamburger{display:none;background:none;border:0;cursor:pointer;padding:.5rem;margin-left:auto}.ham-line{display:block;width:22px;height:2px;background:var(--text-primary);margin:4px 0;transition:transform .2s,opacity .2s}.ham-line--top-open{transform:translateY(6px) rotate(45deg)}.ham-line--bottom-open{transform:translateY(-6px) rotate(-45deg)}.ham-line--hidden{opacity:0}.mobile-menu{display:none;flex-direction:column;max-height:calc(100vh - 5rem);overflow-y:auto;padding:.5rem var(--content-px) 1rem;border-top:1px solid var(--border);background:var(--surface)}.mobile-link{display:block;padding:.75rem 0;border-bottom:1px solid var(--border);color:var(--text-primary);font:inherit;text-align:left}.mobile-more-label{width:100%;border:0;background:transparent;cursor:pointer}.mobile-link:last-child{border-bottom:0}.mobile-project-row{display:flex;align-items:center;border-bottom:1px solid var(--border)}.mobile-project-row .mobile-link{flex:1;border:0}.mobile-project-toggle{width:2.75rem;height:2.75rem}.mobile-project-submenu{margin:0;padding:0 0 .5rem 1rem;border-bottom:1px solid var(--border);list-style:none}.mobile-project-submenu a{display:block;padding:.6rem 0;color:var(--text-secondary);font-size:.92rem}.mobile-project-submenu a:hover{color:var(--accent)}@media(max-width:768px){.nav-links{display:none}.nav-hamburger{display:block;margin-left:.5rem}.mobile-menu{display:flex}}.footer{margin-top:auto;background:var(--navy-deep);color:var(--on-navy);padding:4rem var(--content-px) 0}.footer:before{position:absolute;bottom:calc(100% - 1px);left:0;width:100%;height:var(--crest-h);background:var(--navy-deep);clip-path:polygon(0 100%,0 69%,8% 44%,15% 64%,23% 20%,29% 51%,36% 33%,42% 58%,50% 9%,58% 49%,65% 29%,72% 60%,80% 24%,88% 53%,94% 38%,100% 56%,100% 100%);content:"";pointer-events:none}.app>:has(+.footer){margin-bottom:var(--crest-h)}.app>main.home:has(>.home-section:last-child .articles-grid){margin-bottom:0}main.home>.home-section:last-child:has(.articles-grid){padding-bottom:calc(var(--section-py) + var(--crest-h))}.app>main.contact-page:has(>.contact-bottom:last-child){margin-bottom:0}main.contact-page>.contact-bottom:last-child{padding-bottom:calc(3.5rem + var(--crest-h))}.footer-inner{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between;align-items:center;max-width:var(--container-inner);margin:0 auto}.footer-links{display:flex;flex-wrap:wrap;gap:1.25rem}.footer-link{color:#fff;font-size:.95rem;font-weight:600}.footer-link:hover{color:var(--bg-soft)}.footer-social{display:flex;gap:.75rem;margin:0;padding:0;list-style:none}.footer-social-link{color:var(--on-navy);text-transform:capitalize;font-size:.9rem}.footer-social-link:hover{color:#fff}.footer-credits{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 1.5rem;max-width:var(--container-inner);margin:3rem auto 0;padding:1.5rem 0;border-top:1px solid var(--navy-line);font-size:.8125rem;line-height:1.7;color:var(--on-navy)}.footer-credits a{color:var(--bg-soft);text-decoration:underline;text-underline-offset:.2em}.page-content{width:100%;max-width:var(--container);margin:0 auto;padding:clamp(3rem,6vw,5rem) var(--content-px) clamp(3.5rem,7vw,6rem)}.events-page{max-width:var(--container);width:100%;margin:0 auto;padding-left:var(--content-px);padding-right:var(--content-px)}.page-title{font-family:var(--font-display);font-size:clamp(2.375rem,4.4vw,3.625rem);font-weight:800;letter-spacing:-.04em;margin-bottom:2rem;color:var(--text-primary)}main.page-content,main.home,section.home-section,footer.footer{position:relative}main.page-content:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:1px;background:linear-gradient(90deg,transparent,rgba(15,90,138,.18),transparent);pointer-events:none}.two-col{display:grid;grid-template-columns:240px 1fr;gap:3rem}@media(max-width:900px){.two-col{grid-template-columns:1fr;gap:1.5rem}}.side-links{display:flex;flex-direction:column;gap:.5rem;position:sticky;top:5rem;align-self:start}.side-link{color:var(--text-secondary);border-left:2px solid transparent;padding:.5rem 0 .5rem .75rem;transition:color .15s,border-color .15s}.side-link:hover{color:var(--text-primary)}.side-link--active{color:var(--text-primary);border-left-color:var(--accent);font-weight:500}.content-column>*+*{margin-top:2.5rem}.info-section>h2,.about-section>h2{font-family:var(--font-display);font-size:1.4rem;margin-bottom:.75rem}.faq-list{display:grid;gap:3rem}.faq-group-header{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin:0 0 1rem}.faq-group-title{margin:0;font-family:var(--font-display);font-size:clamp(1.75rem,3.2vw,2.5rem);font-weight:800;line-height:1.05;letter-spacing:-.02em;color:var(--text-primary)}.faq-group-count{font-size:.85rem;color:var(--text-muted);white-space:nowrap}.faq-group-items{display:grid;border-top:2px solid var(--accent)}.faq-item{width:100%;border-bottom:1px solid var(--border)}.faq-question{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;box-sizing:border-box;width:100%;min-height:4.5rem;padding:1.375rem 0;border:0;border-radius:0;background:transparent;color:var(--text-primary);font:inherit;font-size:1.125rem;font-weight:600;line-height:1.4;text-align:left;cursor:pointer;transition:color .15s ease}.faq-question:hover{color:var(--accent-hover)}.faq-question:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.faq-question:after{content:"+";flex-shrink:0;width:1.25rem;color:var(--warm);font-size:1.625rem;font-weight:400;text-align:center;line-height:1;transition:transform .25s ease}.faq-item.is-open .faq-question:after{transform:rotate(45deg)}.faq-answer{display:grid;grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows .35s ease,visibility 0s linear .35s}.faq-item.is-open .faq-answer{grid-template-rows:1fr;visibility:visible;transition:grid-template-rows .35s ease,visibility 0s}.faq-answer-inner{min-height:0;overflow:hidden}.faq-answer-body{max-width:46rem;padding:0 0 1.5rem;color:var(--text-secondary);font-size:1rem;line-height:1.6}.faq-answer-body--plain{white-space:pre-line}.faq-answer--empty .faq-answer-body{color:var(--text-muted)}.faq-empty{color:var(--text-secondary)}@media(max-width:720px){.faq-question{padding:1.1rem 0;font-size:1rem}.faq-answer-body{padding:0 0 1.25rem}}@media(prefers-reduced-motion:reduce){.faq-answer,.faq-item.is-open .faq-answer,.faq-question:after{transition:none}}.faq-search-wrapper{position:relative;z-index:30;width:100%;max-width:52rem;margin:0 auto 4.5rem}.faq-search-label{display:block;margin-bottom:.8rem;color:var(--text-primary);font-size:.95rem;font-weight:700;line-height:1.4}.faq-search{position:relative;display:flex;align-items:center;width:100%;border:2px solid color-mix(in srgb,var(--accent) 35%,var(--border));border-radius:var(--radius);background:var(--surface);transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.faq-search:hover{border-color:color-mix(in srgb,var(--accent) 65%,var(--border))}.faq-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 18%,transparent);transform:translateY(-1px)}.faq-search-icon{display:flex;align-items:center;justify-content:center;flex:0 0 3.5rem;color:var(--accent);transition:color .2s ease}.faq-search:focus-within .faq-search-icon{color:var(--accent)}.faq-search-icon svg{width:1.15rem;height:1.15rem}.faq-search input{width:100%;min-height:4rem;padding:0 3.3rem 0 0;border:0;outline:0;background:transparent;color:var(--text-primary);font-family:inherit;font-size:1rem;line-height:1.4}.faq-search input::-moz-placeholder{color:var(--text-muted);opacity:1}.faq-search input::placeholder{color:var(--text-muted);opacity:1}.faq-search input::-webkit-search-cancel-button{display:none}.faq-search-clear{position:absolute;top:50%;right:.7rem;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:0;border-radius:50%;background:var(--surface);color:var(--text-muted);cursor:pointer;transform:translateY(-50%);transition:color .2s ease,background .2s ease}.faq-search-clear:hover{background:var(--border);color:var(--text)}.faq-search-clear span{position:absolute;width:.75rem;height:1px;background:currentColor}.faq-search-clear span:first-child{transform:rotate(45deg)}.faq-search-clear span:last-child{transform:rotate(-45deg)}.faq-search-suggestions{position:absolute;z-index:100;top:calc(100% + .55rem);left:0;right:0;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius);background:var(--background);box-shadow:0 20px 45px #0000001f;animation:faqSuggestionsIn .18s ease-out}.faq-search-suggestions:before{content:"";display:block;height:3px;background:var(--accent)}.faq-search-suggestion-label{padding:1rem 1.25rem .75rem;color:var(--text-muted);font-size:.65rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.faq-search-suggestion{display:flex;z-index:100;align-items:flex-start;width:100%;padding:1rem 1.25rem;border:0;border-top:1px solid var(--border);background:#fff;color:var(--text);font-family:inherit;text-align:left;cursor:pointer;transition:background .2s ease,padding-left .2s ease}.faq-search-suggestion:hover{padding-left:1.5rem;background:var(--surface)}.faq-search-suggestion-icon{flex:0 0 2rem;color:var(--accent);font-size:1rem;line-height:1.45;transition:transform .2s ease}.faq-search-suggestion:hover .faq-search-suggestion-icon{transform:translate(.2rem)}.faq-search-suggestion-text{color:var(--text);font-size:.9rem;line-height:1.5}.documentation-search .faq-search-suggestion-text{display:grid;gap:.2rem}.documentation-search .faq-search-suggestion-text strong{color:var(--text-primary);font-size:.98rem;font-weight:700}.documentation-suggestion-category{display:block;width:-moz-fit-content;width:fit-content;padding-left:.55rem;border-left:2px solid var(--border);color:var(--text-muted);font-size:.74rem;line-height:1.35}.faq-search mark,.faq-search-suggestion mark,.faq-question mark{padding:.04em .14em;border-radius:.15rem;background:#b9d7f5;color:inherit;font-weight:600;-webkit-text-fill-color:currentColor}.faq-search-no-suggestion{position:absolute;z-index:100;top:calc(100% + .55rem);left:0;right:0;padding:1.15rem 1.25rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--background);color:var(--text-secondary);font-size:.82rem;box-shadow:0 20px 45px #0000001a;animation:faqSuggestionsIn .18s ease-out}.faq-search-meta{margin-top:.65rem;color:var(--text-muted);font-size:.7rem;line-height:1.4}.faq-search-meta strong{color:var(--text);font-weight:600}@keyframes faqSuggestionsIn{0%{opacity:0;transform:translateY(-.25rem)}to{opacity:1;transform:translateY(0)}}.faq-no-results{max-width:32rem;margin:5rem auto;text-align:center}.faq-no-results__mark{display:flex;align-items:center;justify-content:center;width:3.2rem;height:3.2rem;margin:0 auto 1.3rem;border:1px solid var(--border);border-radius:50%;color:var(--text-muted);font-family:var(--font-display);font-size:1.2rem}.faq-no-results h2{margin:0 0 .6rem;font-family:var(--font-display);font-size:2rem;font-weight:800;letter-spacing:-.02em}.faq-no-results p{margin:0 0 1.3rem;color:var(--text-secondary);font-size:.88rem;line-height:1.7}.faq-no-results button{padding:0;border:0;background:transparent;color:var(--accent);font-family:inherit;font-size:.78rem;font-weight:600;cursor:pointer;transition:opacity .2s ease}.faq-no-results button:hover{opacity:.7;text-decoration:underline}@media(max-width:650px){.faq-search-wrapper{margin-bottom:3.5rem}.faq-search-label{font-size:.9rem}.faq-search input{min-height:3.8rem;font-size:.95rem}.faq-search-icon{flex-basis:3rem}.faq-search-suggestions{top:calc(100% + .4rem)}.faq-search-suggestion{padding:.85rem 1rem}.faq-search-suggestion:hover{padding-left:1.2rem}.faq-search-suggestion-text{font-size:.82rem}.faq-search-meta{font-size:.65rem}.faq-no-results{margin:4rem auto}.faq-no-results h2{font-size:1.7rem}}.upcoming-events{margin-bottom:1.5rem}.upcoming-events h2{margin:0 0 2rem;font-family:var(--font-display);font-size:clamp(2.125rem,3.6vw,2.875rem);line-height:1;color:var(--text-primary)}.agenda-view-switch{display:inline-grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.25rem;margin-bottom:1.5rem;padding:.3rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.agenda-view-button{min-height:2.75rem;padding:.6rem 1.1rem;border:0;border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font:inherit;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease}.agenda-view-button:hover{color:var(--accent)}.agenda-view-button--active,.agenda-view-button--active:hover{background:var(--accent);color:#fff}.agenda-view-button:focus-visible{outline:2px solid var(--accent-hover);outline-offset:2px}.upcoming-events-list{display:grid;border-top:2px solid var(--accent)}.upcoming-event-item{display:grid;grid-template-columns:minmax(10rem,.3fr) minmax(0,1fr);align-items:baseline;gap:.5rem 2rem;padding:1.375rem 0;border-bottom:1px solid var(--border);color:var(--text-primary)}.upcoming-event-date{color:var(--warm);font-weight:800;font-size:1.125rem}.upcoming-event-title{margin:0;color:var(--text-primary);font-family:var(--font-display);font-size:1.125rem;font-weight:600;line-height:1.35}.upcoming-event-meta{display:flex;flex-wrap:wrap;gap:.35rem 1rem;margin-top:.4rem;color:var(--text-muted);font-size:.9375rem}.upcoming-events-empty{margin:0;padding:1rem 0;color:var(--text-secondary)}.events-calendar-shell{display:flex;flex-direction:column;width:min(100%,1280px);height:820px;margin:0 auto;background:#ffffffb3;border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 12px 28px #0f5a8a0a;overflow:hidden}.calendar-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid var(--border);background:#0f5a8a08}.calendar-header h2{margin:0;font-family:var(--font-display);font-size:1.5rem;color:var(--text-primary);text-transform:capitalize}.calendar-nav{border:1px solid var(--border);background:#fff;color:var(--text-primary);border-radius:var(--radius-md);padding:.5rem .9rem;font-weight:600;cursor:pointer}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:repeat(6,minmax(0,1fr));border-top:1px solid var(--border);flex:1;height:100%;min-height:0;flex-shrink:0}.calendar-weekday{padding:.8rem .5rem;text-align:center;font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:#0f5a8a05}.calendar-day{min-height:0;height:100%;flex-shrink:0;padding:.5rem .45rem;border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:#fff;display:flex;flex-direction:column;gap:.45rem;text-align:left;cursor:pointer;overflow:hidden}.calendar-day--muted{background:#f5f8fbe6;color:#19293773}.calendar-day--today{background:#0f5a8a08;box-shadow:inset 0 0 0 1px #0f5a8a33}.calendar-day-number{font-weight:700;font-size:.82rem;color:var(--text-primary)}.calendar-day-events{display:flex;flex:1;flex-direction:column;gap:.35rem;overflow:hidden}.calendar-event-pill,.calendar-event-more{width:100%;border-radius:6px;padding:.2rem .35rem;font-size:.65rem;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.calendar-event-pill{background:#0f5a8a1f;color:var(--text-primary);border-left:2px solid var(--accent)}.calendar-event-more{background:#0f5a8a0d;color:var(--accent);font-weight:700}.event-details-panel{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:#0b161f61;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.event-details-card{position:relative;width:min(100%,720px);background:#fff;border:1px solid var(--border);border-top:4px solid var(--warm);border-radius:var(--radius-lg);box-shadow:0 24px 48px #072b5429;padding:1.5rem 1.5rem 1.25rem}.event-details-close{position:absolute;top:.7rem;right:.8rem;border:none;background:transparent;font-size:2rem;line-height:1;color:var(--text-secondary);cursor:pointer}.event-details-badge{display:inline-flex;align-items:center;padding:.4rem .75rem;border-radius:6px;background:var(--warm-soft);color:var(--warm);font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.event-details-card h3{margin:.9rem 0;font-family:var(--font-display);font-size:2rem;font-weight:800;letter-spacing:-.02em;color:var(--text-primary)}.event-details-meta{display:flex;flex-wrap:wrap;gap:.6rem}.event-details-meta span{display:inline-flex;align-items:center;border-radius:999px;background:#0f5a8a0d;border:1px solid rgba(15,90,138,.12);color:var(--text-secondary);padding:.45rem .8rem;font-size:.85rem}.event-details-list{display:grid;gap:.85rem;margin-top:1rem}.event-details-item{display:grid;gap:.2rem;padding:.75rem .85rem;border:1px solid var(--border);border-radius:12px;background:#0f5a8a05}.event-details-item strong{color:var(--text-primary);font-size:1rem}.event-details-item span{color:var(--text-secondary);font-size:.85rem}.calendar-week{margin:0;padding:0;list-style:none}.calendar-week-day{display:grid;grid-template-columns:3.25rem minmax(0,1fr);gap:1rem;align-items:start;padding:1rem 1.25rem;border-bottom:1px solid var(--border);background:var(--surface)}.calendar-week-day:last-child{border-bottom:0}.calendar-week-day--today{background:var(--bg-soft)}.calendar-week-date{display:grid;justify-items:center;color:var(--text-muted);font-size:.8125rem;font-weight:600;text-transform:uppercase}.calendar-week-date strong{color:var(--text-primary);font-size:1.5rem;font-weight:800;line-height:1.1}.calendar-week-day--today .calendar-week-date strong{color:var(--warm)}.calendar-week-events{display:grid;gap:.5rem}.calendar-week-event{display:grid;gap:.2rem;padding:.6rem .75rem;border:0;border-left:3px solid var(--warm);border-radius:6px;background:var(--warm-soft);color:var(--text-primary);font:inherit;text-align:left;cursor:pointer}.calendar-week-event strong{font-size:.975rem;line-height:1.3}.calendar-week-event span{color:var(--text-secondary);font-size:.85rem}.calendar-week-empty{align-self:center;color:var(--text-muted);font-size:.9rem}@media(max-width:768px){.events-calendar-shell{height:auto}.calendar-header{flex-direction:row;align-items:center}.calendar-header h2{font-size:1.05rem;text-align:center;text-transform:none}.calendar-nav{flex:0 0 auto;padding:.5rem .8rem}.calendar-nav-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.agenda-view-switch{display:grid;width:100%}.agenda-view-button{padding-right:.5rem;padding-left:.5rem}.upcoming-event-item{grid-template-columns:1fr;gap:.35rem}.event-details-card h3{font-size:1.5rem}}.actualites-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.75rem}.actualite-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:inherit;transition:border-color .15s ease}.actualite-card:hover{border-color:var(--accent-hover)}.actualite-card:hover h2{color:var(--accent-hover)}.actualite-card--link{text-decoration:none}.actualite-card__image{width:100%;display:block;aspect-ratio:16 / 9;height:220px;min-height:220px;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;background:var(--surface-alt)}.actualite-card__body{display:grid;flex:1;align-content:start;gap:.9rem;padding:1.5rem 1.5rem 1.75rem}.actualite-card__title-link{display:block}.actualite-card__body h2{font-family:var(--font-display);font-size:clamp(1.25rem,2vw,1.4375rem);font-weight:700;line-height:1.2;letter-spacing:0;margin:0;color:var(--text-primary);transition:color .15s ease}.actualite-card__meta{color:var(--text-muted);font-size:.875rem}.actualite-card__summary{margin:0;color:var(--text-secondary);font-size:.92rem;line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.actualite-card__cta{display:inline-flex;align-items:center;width:-moz-fit-content;width:fit-content;margin-top:.5rem;padding-bottom:.25rem;border-bottom:2px solid var(--warm);color:var(--text-primary);font-size:.9375rem;font-weight:600}.actualite-detail-panel{display:grid;gap:1.25rem;margin-bottom:2rem;padding:1.5rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 12px 30px #0f5a8a0f}.actualite-detail-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem}.actualite-detail-close{border:0;background:transparent;color:var(--accent);font-weight:700;cursor:pointer;padding:0}.actualite-detail-title{margin:0;font-family:var(--font-display);color:var(--text-primary);font-size:clamp(2rem,3vw,2.8rem);line-height:1.15}.actualite-detail-image{width:100%;display:block;max-height:26rem;-o-object-fit:cover;object-fit:cover;border-radius:var(--radius-md)}.actualite-detail-content{color:var(--text-primary)}.actualite-detail-content img,.actualite-detail-content iframe,.actualite-detail-content video{max-width:100%;height:auto}@media(max-width:980px){.actualites-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.actualites-list{grid-template-columns:1fr}}.home-hero{--hero-card-w: clamp(20rem, 32vw, 26rem);position:relative;display:flex;align-items:center;min-height:clamp(520px,78vh,760px);padding:clamp(3rem,6vw,5rem) var(--content-px);background:var(--navy-deep);overflow:hidden}.home-hero-image{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.home-hero:after{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#072b54b3,#072b5473 55%,#072b5400),linear-gradient(180deg,#072b5459,#072b5473,#072b54b3);content:"";pointer-events:none}.home-hero-content{position:relative;z-index:1;display:flex;flex-direction:column;width:100%;max-width:var(--container-inner);margin:0 auto}.home-hero-steps{order:10;margin-top:2rem}@media(min-width:901px){.home-hero-content{display:grid;grid-template-columns:minmax(0,1fr) var(--hero-card-w);-moz-column-gap:clamp(2rem,4vw,4rem);column-gap:clamp(2rem,4vw,4rem);align-items:center}.home-hero-content>*{grid-column:1}.home-hero-steps{grid-column:2;grid-row:1;align-self:center;order:0;margin-top:0}.home-hero-title{font-size:clamp(2.75rem,4.8vw,4.5rem)}}.home-hero-eyebrow{margin:0 0 1rem;color:var(--on-navy);font-size:.875rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase}.home-hero-title{max-width:16ch;margin:0;font-family:var(--font-display);font-size:clamp(2.25rem,9vw,3.5rem);font-weight:900;line-height:1.02;letter-spacing:-.03em;color:var(--accent-contrast)}.home-hero-subtitle{max-width:36rem;margin:1.25rem 0 2rem;font-size:1.0625rem;line-height:1.55;color:var(--accent-contrast)}.home-hero-subtitle strong{display:block;margin-top:.5rem;font-weight:700}.home-hero-actions{display:flex;flex-wrap:wrap;gap:.875rem}.home-hero .btn-primary{background:#fff;color:var(--accent)}.home-hero .btn-primary:hover{background:var(--bg-soft);color:var(--accent)}.home-hero .btn-ghost{border:2px solid #ffffff;background:transparent;color:#fff}.home-hero .btn-ghost:hover{background:var(--accent-hover);border-color:#fff;color:#fff}.home-hero-steps{width:100%;padding:1.25rem 1.5rem;border-radius:1rem;background:#fff;box-shadow:0 10px 30px #072b544d}.home-hero-steps__title{margin:0 0 1rem;color:var(--navy-deep);font-size:1.25rem;font-weight:800}.home-hero-steps__list{display:grid;margin:0;padding:0;list-style:none}.home-hero-steps__item{display:grid;grid-template-columns:1.75rem minmax(0,1fr) auto;-moz-column-gap:.75rem;column-gap:.75rem;align-items:start;padding-bottom:1rem;background-image:linear-gradient(#cbd5e1,#cbd5e1);background-repeat:no-repeat;background-position:calc(.875rem - 1px) 1.75rem;background-size:2px calc(100% - 1.75rem)}.home-hero-steps__item--done{background-image:linear-gradient(var(--navy-deep),var(--navy-deep))}.home-hero-steps__item:last-child{padding-bottom:0;background-image:none}.home-hero-steps__marker{display:grid;place-items:center;width:1.75rem;height:1.75rem;border-radius:50%;background:#cbd5e1}.home-hero-steps__item--done .home-hero-steps__marker{background:var(--green);color:#fff;font-size:.875rem;font-weight:700}.home-hero-steps__item--done .home-hero-steps__marker:before{content:"✓"}.home-hero-steps__item--current .home-hero-steps__marker{background:var(--navy-deep)}.home-hero-steps__name{align-self:center;color:var(--navy-deep);font-size:.9375rem;font-weight:700;line-height:1.3}.home-hero-steps__badge{align-self:center;padding:.25rem .7rem;border-radius:.4rem;background:var(--surface-alt);color:var(--text-muted);font-size:.75rem;font-weight:600;white-space:nowrap}.home-hero-steps__item--done .home-hero-steps__badge{background:var(--green-soft);color:var(--green)}.home-hero-steps__item--current .home-hero-steps__badge{background:var(--accent);color:var(--accent-contrast)}.home-hero-steps__link{display:inline-block;margin-top:1rem;padding-bottom:.15rem;border-bottom:2px solid var(--warm);color:var(--text-primary);text-decoration:none;font-size:.9375rem;font-weight:700}.home-section{max-width:var(--container);margin:0 auto;padding:var(--section-py) var(--content-px)}.home-section-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1.5rem;margin-bottom:3rem}.home-section-header h2{margin:0;font-family:var(--font-display);font-size:clamp(2.375rem,4.4vw,3.625rem);font-weight:800;line-height:1;letter-spacing:-.02em}.home-intro-section{margin-top:2.5rem}.home-intro-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:1.5rem;align-items:stretch}.home-intro-copy{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.2rem 1.1rem}.home-intro-copy p{margin:0;color:var(--text-secondary);line-height:1.6;font-size:1rem}.home-intro-copy p+p{margin-top:.75rem}.home-intro-cards{display:grid;gap:.75rem}.home-intro-card{display:grid;gap:.2rem;padding:.9rem 1rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.home-intro-card__label{color:var(--accent);text-transform:uppercase;letter-spacing:.08em;font-size:.68rem;font-weight:700}.home-intro-card strong{font-family:var(--font-display);font-size:1rem;line-height:1.35;color:var(--text-primary)}.home-map-section{margin-top:2rem}.home-map-header{justify-content:center;text-align:center}.home-map-header h2{font-size:clamp(1.8rem,3vw,2.5rem);letter-spacing:-.04em;text-align:center;margin:0 auto;color:var(--text-primary)}@media(max-width:640px){.home-intro-grid{grid-template-columns:1fr;gap:.8rem}.home-intro-section{margin-top:1.5rem}.home-intro-copy,.home-intro-card{padding:.9rem .85rem}}.home-map-header{margin-bottom:1rem}.veveyse-wrap{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(14rem,1fr);gap:1.25rem;align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:.9rem}.veveyse-map{background:linear-gradient(180deg,#f8fbfe,#edf4f9);border-radius:var(--radius);border:1px solid var(--border);padding:.75rem}.veveyse-map svg{display:block;width:100%;height:auto}.veveyse-map .map-2{fill:#125b822e;stroke:#143a5059;stroke-width:2;cursor:pointer;transition:fill .2s ease,stroke .2s ease,transform .2s ease}.veveyse-map .commune.hovered .map-2,.veveyse-map .commune:hover .map-2{fill:#0f5a8ac7;stroke:#0a4a72e6}.veveyse-map .map-4{opacity:0;transform:translateY(4px);transition:opacity .18s ease,transform .18s ease}.veveyse-map .commune.hovered .map-4,.veveyse-map .commune:hover .map-4{opacity:1;transform:translateY(0)}.veveyse-map .map-3{fill:#0f5a8acc;stroke:#073148cc;stroke-width:1.2;transform-box:fill-box;transform-origin:center;transform:scale(1.5,1.3)}.veveyse-map svg{display:block;width:100%;max-width:34rem;height:auto;margin-inline:auto;overflow:visible}.veveyse-map .map-label{font-size:22px;font-weight:700;fill:#fff;font-family:var(--font-display);pointer-events:none;text-anchor:middle;dominant-baseline:middle;letter-spacing:.01em;paint-order:stroke;stroke:#081d299e;stroke-width:2.6}.veveyse-map .commune.hovered .map-label,.veveyse-map .commune:hover .map-label{font-size:24px;font-weight:800}.veveyse-list{align-self:stretch;display:flex;flex-direction:column;justify-content:center}.veveyse-list h3{margin:0 0 .9rem;font-family:var(--font-display);font-size:.875rem;font-weight:600;color:var(--warm);text-align:center;text-transform:uppercase;letter-spacing:.2em}.veveyse-list ul{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}.commune-text{padding:.7rem .9rem;border-radius:10px;border:1px solid transparent;color:var(--text-secondary);background:#ffffff40;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease;display:flex;align-items:center;justify-content:center;text-align:center}.commune-text:hover,.commune-text.hovered{background:#0f5a8a14;border-color:#0f5a8a33;color:var(--text-primary);transform:translate(2px)}@media(max-width:768px){.veveyse-wrap{grid-template-columns:1fr;gap:1rem;padding:.9rem}.veveyse-map{padding:.5rem}.veveyse-list ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.commune-text{min-height:3rem;font-size:.92rem;padding:.65rem .5rem}}@media(max-width:480px){.veveyse-list ul{grid-template-columns:1fr}.commune-text{min-height:2.75rem}}.home-partners h2{margin-bottom:1.5rem;font-family:var(--font-display);font-size:1.6rem}.articles-count{color:var(--text-muted);margin-bottom:1.5rem}.articles-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.5rem}.articles-grid .card{max-width:26rem}.articles-grid--loading{opacity:.6}.card{display:block;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem;transition:border-color .15s,color .15s}.card:hover{border-color:var(--accent-hover)}.card-media{aspect-ratio:16 / 9;overflow:hidden;border-radius:var(--radius);margin-bottom:.75rem;background:var(--surface-alt)}.card-media img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .4s}.card:hover .card-media img{transform:scale(1.03)}.card-tags{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:.5rem}.card-title{font-family:var(--font-display);font-size:1.2rem;font-weight:700;line-height:1.3;margin-bottom:.4rem}.card-excerpt{font-size:.9rem;color:var(--text-secondary);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:.5rem}.card-date{font-size:.875rem;color:var(--text-muted)}.home-section:has(.articles-grid){isolation:isolate}.home-section:has(.articles-grid):before{position:absolute;z-index:-1;top:0;bottom:0;left:50%;width:calc(100vw + 2px);background:var(--bg-soft);content:"";transform:translate(-50%)}.home .articles-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,18.75rem),1fr));gap:1.75rem}.home .articles-grid .card{display:flex;flex-direction:column;padding:0;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);transition:border-color .15s ease}.home .articles-grid .card:hover{transform:none;box-shadow:none;border-color:var(--accent);color:var(--accent-hover)}.home .articles-grid .card-media{aspect-ratio:auto;height:220px;margin:0;border-radius:0}.home .articles-grid .card-content-wrap{display:grid;gap:.75rem;padding:1.25rem 1.5rem 1.5rem}.home .articles-grid .card-date,.home .articles-grid .card-title{margin:0}.home .articles-grid .card-title{font-size:clamp(1.25rem,2vw,1.4375rem);font-weight:700;line-height:1.2}.tag{display:inline-block;padding:.15rem .5rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;border:1px solid var(--border);border-radius:999px;color:var(--text-secondary)}.article-detail{max-width:48rem}.back-link{display:inline-block;margin-bottom:1.5rem;color:var(--text-secondary);font-size:.9rem}.back-link:hover{color:var(--text-primary)}.article-date{display:block;color:var(--text-muted);font-size:.9rem;margin-bottom:.5rem}.article-title{font-family:var(--font-display);font-size:clamp(2.25rem,4.4vw,3.5rem);font-weight:800;line-height:1.05;margin-bottom:1.5rem;letter-spacing:-.02em}.article-categories{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:1.5rem}.article-cover{width:100%;border-radius:var(--radius-lg);margin-bottom:2rem}.article-content{font-size:1.125rem}.article-content-anchor{scroll-margin-top:7rem}.contact-page{padding-bottom:0}.contact-kicker{display:block;margin-bottom:1rem;color:var(--warm);font-size:.875rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase}.contact-hero{display:grid;grid-template-columns:minmax(18rem,.9fr) minmax(0,1.1fr);gap:clamp(2rem,5vw,4.5rem);align-items:center;padding:3rem 0 5rem}.contact-hero-intro h2{margin:0;font-family:var(--font-display);font-size:clamp(2.625rem,5vw,4.25rem);font-weight:900;line-height:.95;letter-spacing:-.025em}.contact-hero-intro h2 em{color:var(--warm);font-style:normal}.contact-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem 1.5rem;padding:1.5rem 1.75rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.contact-detail{min-height:7rem;padding:1rem 0}.contact-detail-label{display:block;margin-bottom:.7rem;color:var(--text-muted);font-size:.74rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.contact-detail strong,.contact-detail address,.contact-detail a{color:var(--text-primary);font-size:1rem;font-style:normal;line-height:1.6;overflow-wrap:anywhere}.contact-detail a{color:var(--accent);text-decoration:none}.contact-detail a:hover{text-decoration:underline;text-underline-offset:.2rem}.contact-copil{position:relative;isolation:isolate;margin-left:-4vw;margin-right:-4vw;padding:4.5rem max(4vw,2rem) 3rem}.contact-copil:before{position:absolute;z-index:-1;top:0;bottom:0;left:50%;width:calc(100vw + 2px);background:var(--bg-soft);content:"";transform:translate(-50%)}.contact-copil-header,.contact-copil-body{position:relative;z-index:1}.contact-copil-header{display:grid;grid-template-columns:minmax(18rem,.85fr) minmax(0,1.15fr);gap:clamp(2rem,5vw,5rem);align-items:end;margin-bottom:2.5rem}.contact-copil-header h2{margin:0;font-family:var(--font-display);font-size:clamp(2.375rem,4.4vw,3.625rem);font-weight:800;line-height:1;letter-spacing:-.02em}.contact-copil-header>p{max-width:42rem;margin:0;color:var(--text-secondary);font-size:1.0625rem;line-height:1.65}.contact-copil-body{display:grid;grid-template-columns:minmax(0,1fr);gap:3rem}.contact-copil-description{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(16rem,.8fr);gap:clamp(2rem,5vw,5rem);align-items:center}.contact-copil-description>p{max-width:46rem;margin:0;color:var(--text-secondary);font-size:1.02rem;line-height:1.7}.contact-project-note{max-width:none;padding-left:1.25rem;border-left:2px solid var(--warm)}.contact-project-note>span{display:block;margin-bottom:.8rem;color:var(--text-muted);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.contact-project-note strong{display:block;font-family:var(--font-display);font-size:1.3rem;font-weight:700;line-height:1.25}.contact-project-note p{margin:.65rem 0 0;color:var(--text-secondary);font-size:.88rem;line-height:1.6}.contact-members-section{min-width:0}.contact-members-heading{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding-bottom:1.1rem}.contact-members-heading>span:first-child{color:var(--text-primary);font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.contact-members-count{color:var(--text-muted);font-size:.82rem}.contact-members-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}.contact-member{display:flex;flex-direction:column;justify-content:center;gap:.4rem;min-width:0;min-height:5.5rem;padding:1rem 1.15rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);transition:border-color .16s ease,transform .16s ease}.contact-member:hover{border-color:var(--accent-hover);transform:translateY(-2px)}.contact-member-name{color:var(--text-primary);font-size:1rem;font-weight:700;overflow-wrap:anywhere}.contact-member-role{color:var(--text-secondary);font-size:.9rem;overflow-wrap:anywhere}.contact-bottom{position:relative;isolation:isolate;display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4.5rem);align-items:center;margin:0 -4vw;padding:3.5rem max(4vw,2rem);color:#fff}.contact-bottom:before{position:absolute;z-index:-1;top:0;bottom:0;left:50%;width:calc(100vw + 2px);background:var(--accent);content:"";transform:translate(-50%)}.contact-bottom-title h2{margin:0;font-family:var(--font-display);font-size:clamp(2.625rem,5vw,4.25rem);font-weight:900;line-height:.95;letter-spacing:-.025em}.contact-bottom-action{justify-self:stretch}.contact-bottom .contact-kicker{color:var(--bg-soft)}.contact-email-link{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:-moz-fit-content;width:fit-content;max-width:100%;padding:1rem 1.6rem;border-radius:var(--radius);background:#fff;color:var(--accent);font-family:var(--font-display);font-size:1.15rem;font-weight:700;text-decoration:none;overflow-wrap:anywhere}.contact-email-link span:last-child{font-family:sans-serif;font-size:1.4rem;transition:transform .18s ease}.contact-email-link:hover span:last-child{transform:translate(.35rem)}.contact-phone-link{display:inline-block;margin:1rem 0 0 .25rem;color:#fff;font-size:1rem;text-decoration:none}.contact-loading{padding-top:2rem}@media(max-width:900px){.contact-hero{grid-template-columns:1fr;gap:2rem}.contact-copil{margin-left:-2rem;margin-right:-2rem;padding-left:2rem;padding-right:2rem}.contact-copil-header,.contact-copil-body{grid-template-columns:1fr;gap:2.5rem}.contact-copil-description{grid-template-columns:1fr;gap:1.75rem}.contact-members-list{grid-template-columns:repeat(3,minmax(0,1fr))}.contact-copil-header{margin-bottom:3rem}.contact-bottom{grid-template-columns:1fr;gap:1.75rem}}@media(max-width:600px){.contact-hero{padding:2.5rem 0 3rem}.contact-details{grid-template-columns:1fr;padding:1rem 1.2rem}.contact-detail,.contact-detail:nth-child(2n){min-height:auto;padding:.75rem 0}.contact-copil{margin-left:-1rem;margin-right:-1rem;padding:3rem 1rem}.contact-members-list{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-bottom{padding:2.5rem 1rem}.contact-email-link{width:100%;font-size:1rem}}.partners-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1.5rem;align-items:center}.partner-item{display:flex;align-items:center;justify-content:center;min-height:60px;padding:.75rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);transition:opacity .15s}.partner-item:hover{opacity:.75}.partner-logo{max-width:100%;max-height:48px;-o-object-fit:contain;object-fit:contain}.partner-name{font-size:.9rem;color:var(--text-secondary)}.btn{display:inline-block;padding:.9rem 1.5rem;border-radius:var(--radius);font-weight:600;cursor:pointer;transition:background .15s,color .15s,border-color .15s;border:1px solid transparent}.btn-primary{background:var(--accent);color:var(--accent-contrast)}.btn-primary:hover{background:var(--accent-hover);color:var(--accent-contrast)}.btn-ghost{background:transparent;border:2px solid var(--accent);color:var(--accent)}.btn-ghost:hover{border-color:var(--accent-hover);background:var(--accent-hover);color:#fff}.pagination{display:flex;justify-content:center;gap:.5rem;margin-top:2.5rem}.pagination-btn{min-width:2.25rem;padding:.4rem .7rem;background:transparent;border:1px solid var(--border);border-radius:var(--radius);color:var(--text-secondary);cursor:pointer;transition:border-color .15s,color .15s}.pagination-btn:hover:not(:disabled){border-color:var(--text-primary);color:var(--text-primary)}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-btn--active{border-color:var(--accent);color:var(--accent)}.skeleton{background:linear-gradient(90deg,var(--surface-alt) 0%,var(--border) 50%,var(--surface-alt) 100%);background-size:200% 100%;border-radius:var(--radius);animation:shimmer 1.6s infinite linear}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.error-banner{margin:2rem auto;max-width:42rem;padding:1rem 1.25rem;border:1px solid var(--border);border-radius:var(--radius);color:var(--text-secondary);text-align:center}.prose-custom{line-height:1.7;color:var(--text-primary)}.prose-custom h1,.prose-custom h2,.prose-custom h3,.prose-custom h4,.prose-custom h5,.prose-custom h6{font-family:var(--font-display);font-weight:700;line-height:1.15;margin:1.5em 0 .5em;letter-spacing:-.01em}.prose-custom h1{font-size:2.25rem;font-weight:800}.prose-custom h2{font-size:1.75rem;font-weight:800}.prose-custom h3{font-size:1.3rem}.prose-custom h4{font-size:1.08rem}.prose-custom h5{font-size:1rem}.prose-custom h6{font-size:.9rem}.prose-custom p{margin:0 0 1em}.prose-custom a{color:var(--accent);text-decoration:underline;text-decoration-color:var(--warm);text-decoration-thickness:2px;text-underline-offset:3px}.prose-custom a:hover{color:var(--accent-hover)}.documentation-page{box-sizing:border-box;width:min(100%,var(--container));max-width:var(--container)}.documentation-search{width:min(100%,52rem);max-width:52rem;margin:0 auto 4.5rem}.documentation-groups{display:grid;grid-template-columns:minmax(0,1fr);gap:3rem}.documentation-group{width:100%;box-sizing:border-box}.documentation-group-heading{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin:0 0 1rem}.documentation-group-heading h2{margin:0;color:var(--text-primary);font-family:var(--font-display);font-size:clamp(1.75rem,3.2vw,2.5rem);font-weight:800;line-height:1.05;letter-spacing:-.02em;overflow-wrap:anywhere}.documentation-group-heading>span{flex:0 0 auto;color:var(--text-muted);font-size:.85rem;white-space:nowrap}.documentation-list{margin:0;padding:0;border-top:2px solid var(--accent);list-style:none}.documentation-item{border-bottom:1px solid var(--border)}.documentation-link,.documentation-unavailable{display:flex;align-items:center;gap:.9rem;min-height:4.5rem;padding:1.1rem 0;color:var(--text-primary);font-size:1.125rem;font-weight:600;line-height:1.4;overflow-wrap:anywhere}.documentation-link{transition:color .15s ease}.documentation-link:hover{color:var(--accent-hover)}.documentation-file-mark{position:relative;flex:0 0 1.05rem;width:1.05rem;height:1.3rem;border:1.5px solid currentColor;border-radius:2px;color:var(--accent)}.documentation-file-mark:after{position:absolute;right:2px;bottom:3px;left:2px;height:1px;background:currentColor;box-shadow:0 3px currentColor;content:""}.documentation-link>span:nth-child(2),.documentation-unavailable>span:nth-child(2){flex:1;min-width:0}.documentation-open-mark{display:inline-flex;flex:0 0 auto;color:var(--warm)}.documentation-open-mark svg,.commune-link-icon svg{display:block;width:1rem;height:1rem;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}.documentation-link:hover .documentation-open-mark{color:var(--accent-hover)}.documentation-unavailable{color:var(--text-muted)}.documentation-status{flex:0 0 auto;font-size:.78rem}.documentation-empty{padding:1.25rem 0;color:var(--text-secondary)}@media(max-width:700px){.documentation-groups{display:grid;grid-template-columns:1fr;overflow-x:visible;padding-bottom:0}}.home-intro-grid{grid-template-columns:minmax(0,1fr) auto;align-items:center}.home-intro-copy{background:transparent;border:0;border-left:4px solid var(--accent);border-radius:0;padding:.4rem 1.2rem}.home-quick-access{padding-top:0;padding-bottom:calc(var(--section-py) * .7)}.home-quick-access .home-section-header{margin-bottom:1.35rem}.home-quick-access .home-section-header h2{color:var(--warm);font-size:.875rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase}.quick-access-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.quick-access-grid a{position:relative;display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:5.5rem;padding:1.15rem 1.25rem;overflow:hidden;border-radius:var(--radius-lg);background:#fff;color:var(--navy-deep);text-decoration:none;box-shadow:0 4px 16px #072b540e;transition:transform .4s cubic-bezier(.22,1,.36,1),background-color .4s ease,color .3s ease,box-shadow .4s ease}.quick-access-grid a:before{position:absolute;top:-4rem;right:-3rem;width:10rem;height:10rem;border-radius:50%;background:#072b540e;content:"";transform:scale(.3);opacity:0;transition:transform .6s cubic-bezier(.22,1,.36,1),opacity .45s ease}.quick-access-grid strong{position:relative;z-index:1;max-width:14rem;font-size:.95rem;font-weight:700;line-height:1.35;transition:transform .4s cubic-bezier(.22,1,.36,1)}.quick-access-grid a>span:last-child{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;flex:0 0 auto;width:2.15rem;height:2.15rem;border-radius:50%;background:var(--navy-deep);color:#fff;font-size:0;transition:transform .4s cubic-bezier(.22,1,.36,1),background-color .3s ease}.quick-access-grid a>span:last-child:before{width:.5rem;height:.5rem;border-top:2px solid currentColor;border-right:2px solid currentColor;content:"";transform:rotate(45deg) translate(-1px,1px)}.quick-access-grid a:hover,.quick-access-grid a:focus-visible{transform:translateY(-4px);background:#f4f7fa;box-shadow:0 14px 30px #072b541a}.quick-access-grid a:hover:before,.quick-access-grid a:focus-visible:before{transform:scale(1);opacity:1}.quick-access-grid a:hover strong,.quick-access-grid a:focus-visible strong{transform:translate(3px)}.quick-access-grid a:hover>span:last-child,.quick-access-grid a:focus-visible>span:last-child{transform:translate(3px,-2px);background:var(--accent)}.quick-access-grid a:last-child{background:var(--accent);color:#fff;box-shadow:0 6px 20px #072b541f}.quick-access-grid a:last-child:before{background:#ffffff17}.quick-access-grid a:last-child>span:last-child{background:#ffffff26}.quick-access-grid a:last-child:hover,.quick-access-grid a:last-child:focus-visible{background:var(--accent-hover);color:#fff}.quick-access-grid a:last-child:hover>span:last-child,.quick-access-grid a:last-child:focus-visible>span:last-child{background:var(--warm)}.quick-access-grid a:focus-visible{outline:3px solid rgba(196,214,232,.9);outline-offset:3px}@media(max-width:900px){.quick-access-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-access-grid a:last-child{grid-column:span 2}}@media(max-width:600px){.quick-access-grid{grid-template-columns:1fr;gap:.7rem}.quick-access-grid a,.quick-access-grid a:last-child{min-height:5rem;grid-column:auto;padding:1.1rem 1.15rem}.quick-access-grid a>span:last-child{width:2rem;height:2rem}}.home-current-step{position:relative;overflow:hidden;width:100%;max-width:none;margin:0;padding:clamp(2rem,4vw,3.25rem) var(--content-px)}.home-current-step:before{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background:linear-gradient(135deg,var(--navy-deep),var(--accent));content:""}.home-current-step__badge{position:relative;z-index:1;display:block;width:-moz-fit-content;width:fit-content;max-width:var(--container);margin:0 auto .75rem;color:#fff;font-family:var(--font-display);font-size:.8rem;font-weight:900;letter-spacing:.12em}.home-current-step__content{position:relative;z-index:1;max-width:var(--container);margin:0 auto;padding:clamp(1.5rem,3vw,2.5rem);border:1px solid rgba(255,255,255,.4);background:#072b54e0;color:#fff}.home-current-step__label{margin:0 0 .5rem;color:#c4d6e8;font-size:.75rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.home-current-step__content h2{margin:0;color:#fff;font-family:var(--font-display);font-size:clamp(2rem,5vw,4rem);line-height:1.05}.home-current-step__description{max-width:56rem;margin:1.25rem 0 0;color:#dbe8f5;font-size:clamp(1rem,1.8vw,1.125rem);line-height:1.7;text-align:justify}.home-current-step__link{display:inline-flex;align-items:center;gap:.5rem;margin-top:1.75rem;color:#fff;font-weight:700;text-decoration:underline;text-decoration-color:var(--warm);text-decoration-thickness:2px;text-underline-offset:.25rem}.home-current-step__link:hover,.home-current-step__link:focus-visible{color:#c4d6e8}@media(max-width:640px){.quick-access-grid{grid-template-columns:1fr}.home-current-step__content{padding:1.25rem}.home-current-step{padding-block:1.5rem}.home-current-step__description{line-height:1.6}.quick-access-grid a{border-right:0;border-bottom:1px solid var(--navy-line)}.quick-access-grid a:last-child{border-bottom:0}}.site-page-banner{isolation:isolate;display:flex;align-items:flex-end;min-height:clamp(18rem,42vh,26rem);padding:6rem var(--content-px) clamp(3rem,6vw,4.5rem);background:linear-gradient(180deg,#072b5459,#072b548c 45%,#072b54e0),url(/assets/landscape-Cg8_YKZL.jpg) center 60% / cover no-repeat,var(--navy-deep);color:#fff}.site-page-banner__inner{max-width:var(--container-inner);width:100%;margin:0 auto}.site-page-banner .eyebrow{margin-bottom:.75rem;color:var(--bg-soft)}.site-page-banner h1{max-width:18ch;margin:0 0 1rem;font-family:var(--font-display);font-size:clamp(2.75rem,7vw,5.5rem);font-weight:900;line-height:.92;letter-spacing:-.03em;color:#fff}.site-page-banner p{max-width:40rem;margin:0 0 1.75rem;color:#fff;font-size:1.125rem;line-height:1.5}.site-page-banner p:last-child{margin-bottom:0}.site-page-banner .btn-primary{background:#fff;color:var(--accent)}.site-page-banner .btn-primary:hover{background:var(--bg-soft);color:var(--accent)}.project-content{max-width:var(--container);margin:0 auto;padding:0 var(--content-px)}.project-section{position:relative;padding:clamp(3.5rem,6vw,5rem) 0;border-bottom:1px solid var(--border);scroll-margin-top:8rem;overflow:hidden}.project-section-heading{position:relative;z-index:2;transition:color .08s ease .22s,transform .2s ease}.project-section-heading h2{margin:0;font-family:var(--font-display);font-size:clamp(2.375rem,4.4vw,3.625rem);font-weight:800;letter-spacing:-.02em;line-height:1}.project-section-heading>p{max-width:40rem;margin:1.5rem 0 0;color:var(--text-secondary);font-size:1.125rem;line-height:1.6}.project-communes .project-section-heading,.project-timeline-section .project-section-heading{margin-bottom:2.5rem}.project-impact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:1rem;margin-top:2.5rem}.project-impact-item{border:1px solid var(--border);border-radius:.75rem;background:var(--bg-soft);overflow:hidden}.project-impact-item summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem;cursor:pointer;font-weight:700;color:var(--accent)}.project-impact-item summary::-webkit-details-marker{display:none}.project-impact-item summary span:last-child{font-size:1.5rem;line-height:1}.project-impact-item[open] summary span:last-child{transform:rotate(45deg)}.project-impact-item div{padding:0 1.25rem 1.25rem}.project-impact-item strong{display:block;margin-top:1rem;color:var(--accent);font-size:.875rem;text-transform:uppercase;letter-spacing:.06em}.project-impact-item p{margin:.35rem 0 0;color:var(--text-secondary);line-height:1.6}.project-impact-note{max-width:48rem;margin:2.5rem 0 0;padding:1.5rem;border-left:4px solid var(--warm);background:var(--bg-soft)}.project-impact-note strong{color:var(--accent)}.project-impact-note p:last-child{margin-bottom:0}.project-financing-card{max-width:50rem;margin-top:2.5rem;padding:clamp(1.5rem,4vw,3rem);border:1px solid var(--border);border-radius:1rem;background:var(--bg-soft)}.project-financing-card h3{margin:0 0 1.25rem;color:var(--accent);font-family:var(--font-display);font-size:clamp(1.75rem,3.5vw,2.5rem);line-height:1.1}.project-financing-card p{margin:0 0 1rem;color:var(--text-secondary);line-height:1.7}.project-financing-links{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}.project-financing-links a{display:inline-flex;align-items:center;padding:.8rem 1rem;border:1px solid var(--border);color:var(--accent);font-weight:700}.project-financing-links a:hover,.project-financing-links a:focus-visible{border-color:var(--warm);text-decoration:none}.project-why__intro{position:relative;z-index:2;display:flex;justify-content:flex-start;text-align:left;margin-bottom:3rem}.project-why__intro p{width:min(100%,40rem);margin:1.5rem 0 0;color:var(--text-primary);font-size:1.125rem;line-height:1.6}.project-why__trace{position:absolute;z-index:0;top:17rem;right:0;width:68%;height:72rem;pointer-events:none}.project-why__trace-line{position:absolute;top:0;left:25%;width:60%;height:100%;border-left:1px solid color-mix(in srgb,var(--warm) 22%,transparent);border-radius:48%;transform:rotate(9deg) skewY(-3deg)}.project-why__trace-dot{position:absolute;top:7rem;left:25%;width:7px;height:7px;border-radius:50%;background:var(--accent);transform:translate(-50%);box-shadow:0 0 0 6px color-mix(in srgb,var(--accent) 7%,transparent);animation:tracePulse 4s ease-in-out infinite}@keyframes tracePulse{0%,to{opacity:.55;transform:translate(-50%) scale(1)}50%{opacity:1;transform:translate(-50%) scale(1.25)}}.project-why__topics{position:relative;z-index:2}.project-topic{position:relative;opacity:0;animation:topicAppear .9s cubic-bezier(.22,1,.36,1) forwards}.project-topic--context{width:min(100%,54rem);margin-left:4%}.project-topic--objectives{width:min(100%,43rem);margin-top:4.5rem;margin-left:auto;margin-right:8%}.project-topic--stakes{width:min(100%,50rem);margin-top:4.5rem;margin-left:12%}.project-topic--context{animation-delay:.1s}.project-topic--objectives{animation-delay:.25s}.project-topic--stakes{animation-delay:.4s}@keyframes topicAppear{0%{opacity:0;transform:translateY(1.8rem)}to{opacity:1;transform:translateY(0)}}.project-topic__header{display:flex;align-items:center;gap:.7rem;margin-bottom:1.2rem;color:var(--text-muted);font-size:.8125rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase}.project-topic__dash{display:block;width:2.5rem;height:2px;background:var(--accent);transform-origin:left;transition:width .45s cubic-bezier(.22,1,.36,1)}.project-topic--context .project-topic__dash{background:var(--accent)}.project-topic--objectives .project-topic__dash{background:var(--warm)}.project-topic--stakes .project-topic__dash{background:var(--green)}.project-topic:hover .project-topic__dash{width:4rem}.project-topic h3{margin:0 0 1.6rem;font-family:var(--font-display);font-size:clamp(2rem,3.6vw,2.875rem);font-weight:800;letter-spacing:-.02em;line-height:1;transition:transform .5s cubic-bezier(.22,1,.36,1)}.project-topic:hover h3{transform:translate(.25rem)}.project-topic__body{max-width:42rem}.project-topic p{margin:0 0 1.2rem;color:var(--text-secondary);font-size:1.0625rem;line-height:1.65}.project-topic p:last-child{margin-bottom:0}.project-topic__body:after{content:"";display:block;width:1.5rem;height:1px;margin-top:1.75rem;background:var(--border);transition:width .4s ease}.project-topic:hover .project-topic__body:after{width:3.5rem}@media(max-width:900px){.project-why__intro{margin-bottom:3rem}.project-topic--context{width:78%;margin-left:2%}.project-topic--objectives{width:65%;margin-right:3%}.project-topic--stakes{width:74%;margin-left:7%}.project-why__trace{width:75%}}@media(max-width:650px){.project-section{padding:3.5rem 0}.project-section-heading{margin-bottom:2rem}.project-section-heading h2{font-size:2.375rem}.project-why__intro{display:block;margin-bottom:2.5rem}.project-why__intro p{width:100%;font-size:1rem}.project-why__trace{top:16rem;right:-3rem;width:55%;height:85rem}.project-why__trace-line{left:40%;width:45%;transform:rotate(4deg)}.project-why__trace-dot{left:40%}.project-topic--context,.project-topic--objectives,.project-topic--stakes{width:88%;margin-left:0;margin-right:0}.project-topic--objectives,.project-topic--stakes{margin-top:3.5rem}.project-topic h3{font-size:2rem}.project-topic p{font-size:1rem}}.dedicated-page{max-width:var(--container);margin:0 auto;padding:clamp(2.5rem,6vw,5rem) var(--content-px)}.dedicated-page-intro{max-width:52rem}.dedicated-page-intro h1{margin:.5rem 0 1rem;font-family:var(--font-display);font-size:clamp(2.5rem,5vw,4.25rem);font-weight:800;line-height:1;letter-spacing:-.03em}.dedicated-page-intro p:last-child{color:var(--text-secondary);font-size:1.125rem;line-height:1.7}.dedicated-page-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:3rem}.dedicated-page-card{padding:1.5rem;border:1px solid var(--border);border-radius:.75rem;background:var(--bg-soft)}.dedicated-page-card summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;cursor:pointer;color:var(--accent);font-weight:700}.dedicated-page-card summary::-webkit-details-marker{display:none}.dedicated-page-card summary span:last-child{font-size:1.5rem;line-height:1}.dedicated-page-card[open] summary span:last-child{transform:rotate(45deg)}.dedicated-page-card div{padding-top:1.25rem}.dedicated-page-card strong{display:block;margin-top:1rem;color:var(--warm);font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.dedicated-page-card p,.dedicated-page-note p,.dedicated-page-links p{margin:.4rem 0 0;color:var(--text-secondary);line-height:1.7}.dedicated-page-grid--roles .dedicated-page-card span{color:var(--warm);font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.dedicated-page-grid--roles .dedicated-page-card h2{margin:.85rem 0;color:var(--accent);font-family:var(--font-display);font-size:1.25rem;line-height:1.2}.dedicated-page-card--financial{margin-top:2.5rem}.dedicated-page-card--financial h2,.dedicated-page-links h2,.dedicated-page-note h2{margin:0;color:var(--accent);font-family:var(--font-display);font-size:clamp(1.75rem,3vw,2.5rem);line-height:1.15}.dedicated-page-card--financial ul{margin:1rem 0;padding-left:1.25rem;color:var(--text-secondary);line-height:1.7}.dedicated-page-links{margin-top:3rem}.dedicated-page-link-list{display:grid;gap:.75rem;margin-top:1.5rem}.dedicated-page-link-list a{display:inline-block;max-width:-moz-max-content;max-width:max-content;color:var(--accent);font-weight:700}.dedicated-page-note{max-width:52rem;margin-top:3rem;padding:1.5rem;border-left:4px solid var(--warm);background:var(--bg-soft)}.dedicated-page-note--compact{margin-top:2rem}.dedicated-page--impact .dedicated-page-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:start}.dedicated-page--impact .dedicated-page-card{padding:1.5rem;border:0;border-radius:0;background:var(--surface)}.dedicated-page--impact .dedicated-page-card summary{color:var(--text-primary)}.dedicated-page--impact .dedicated-page-card summary span:last-child{color:var(--text-muted)}.dedicated-page--impact .dedicated-page-card strong{color:var(--text-secondary)}.dedicated-page--impact .dedicated-page-note{padding:1.5rem;border:0;background:var(--surface-alt)}.dedicated-page--governance .dedicated-page-grid--roles{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.dedicated-page--governance .dedicated-page-card{padding:1.5rem;border:0;border-radius:0;background:var(--surface)}.dedicated-page--governance .dedicated-page-grid--roles .dedicated-page-card span{color:var(--text-secondary)}.dedicated-page--governance .dedicated-page-grid--roles .dedicated-page-card h2{color:var(--text-primary)}.dedicated-page--governance .dedicated-page-note{padding:1.5rem;border:0;background:var(--surface-alt)}.financing-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(16rem,.8fr);align-items:start;gap:clamp(1.5rem,4vw,3rem);margin-top:3rem}.dedicated-page--financing .dedicated-page-card--financial{margin:0;padding:clamp(1.5rem,3vw,2.5rem);border:0;border-radius:0;background:var(--surface)}.dedicated-page--financing .dedicated-page-card--financial p{color:var(--text-secondary);line-height:1.7}.dedicated-page--financing .dedicated-page-card--financial li+li{margin-top:.75rem}.dedicated-page--financing .dedicated-page-links{margin:0;padding:clamp(1.5rem,3vw,2rem);background:var(--surface-alt)}.dedicated-page--financing .dedicated-page-links p,.dedicated-page--financing .dedicated-page-link-list span{color:var(--text-secondary);line-height:1.7}.dedicated-page--financing .dedicated-page-link-list a{padding-bottom:.2rem;border-bottom:2px solid var(--warm)}.fusion-compare{--blue: #0A3A70;--blue-soft: #4E8CC9;--ice: #DEEFF6;--light: #F1F4F8;--dark: #082F5C;display:grid;grid-template-columns:1fr 1fr;gap:clamp(1rem,2.5vw,2rem);margin-top:3.5rem}.fusion-compare-col{position:relative;display:flex;flex-direction:column;padding:clamp(2rem,4vw,3.75rem);overflow:hidden;animation:fusion-rise .6s cubic-bezier(.22,1,.36,1) both}.fusion-compare-col--today{--fig-size: clamp(2.75rem, 5vw, 4rem);--fig-width: clamp(4rem, 7vw, 5.5rem);background:var(--light);color:var(--blue);border-radius:2px 2px 2px 2.5rem}.fusion-compare-col--today:before{content:"";position:absolute;width:15rem;height:15rem;top:-8rem;right:-7rem;border-radius:50%;background:#4e8cc914}.fusion-compare-col--after{--fig-size: clamp(3.5rem, 7vw, 6rem);--fig-width: clamp(5rem, 9vw, 7rem);background:var(--blue);color:#fff;border-radius:2px 2.5rem 2px 2px;animation-delay:.1s}.fusion-compare-col--after:before{content:"";position:absolute;width:22rem;height:22rem;top:-12rem;right:-10rem;border-radius:50%;background:#deeff60f}.fusion-compare-col--after:after{content:"";position:absolute;width:5rem;height:5rem;right:2rem;bottom:2rem;border-radius:50%;background:#deeff614}.fusion-compare-col h3{position:relative;z-index:1;display:flex;align-items:center;gap:.75rem;margin:0 0 clamp(2rem,4vw,3rem);font-size:.72rem;font-weight:800;line-height:1;letter-spacing:.17em;text-transform:uppercase}.fusion-compare-col h3:before{content:"";display:block;width:.55rem;height:.55rem;flex:0 0 auto;border-radius:50%;background:currentColor}.fusion-compare-col--today h3{color:var(--blue)}.fusion-compare-col--after h3{color:var(--ice)}.fusion-compare-col ul{position:relative;z-index:1;display:grid;gap:clamp(1.25rem,2.5vw,2rem);margin:0;padding:0;list-style:none}.fusion-compare-col li{display:grid;grid-template-columns:var(--fig-width) minmax(0,1fr);align-items:center;-moz-column-gap:1.25rem;column-gap:1.25rem;min-height:5.5rem}.fusion-compare-figure{display:flex;align-items:center;font-size:var(--fig-size);font-weight:750;line-height:.82;letter-spacing:-.065em;white-space:nowrap}.fusion-compare-col--today .fusion-compare-figure{color:var(--blue-soft)}.fusion-compare-col--after .fusion-compare-figure{color:#fff}.fusion-compare-label{font-size:clamp(1rem,1.5vw,1.15rem);line-height:1.35}.fusion-compare-col--today .fusion-compare-label{color:#0a3a70d1}.fusion-compare-col--after .fusion-compare-label{color:#ffffffe6}.fusion-compare-label:only-child{grid-column:1 / -1;font-weight:700;font-size:clamp(1rem,1.6vw,1.2rem)}.fusion-compare-note{position:relative;width:calc(50% - 1rem);margin:1rem 0 0 auto;padding:1.5rem clamp(1.75rem,3.5vw,3rem);background:var(--ice);color:var(--blue);border-radius:2px 2px 2px 1.5rem;font-size:1rem;line-height:1.6}.fusion-compare-note:before{content:"→";position:absolute;left:-2.5rem;top:50%;color:var(--blue);font-size:1.5rem;font-weight:700;transform:translateY(-50%)}.fusion-compare-note strong{font-weight:750}@keyframes fusion-rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.fusion-compare-col{transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s ease}.fusion-compare-col:hover{transform:translateY(-3px);box-shadow:0 20px 50px #0a3a7014}@media(max-width:760px){.fusion-compare{grid-template-columns:1fr;gap:1rem;margin-top:2rem}.fusion-compare-col{padding:2rem 1.5rem}.fusion-compare-col--today,.fusion-compare-col--after{border-radius:2px 2px 2px 1.5rem}.fusion-compare-col li{grid-template-columns:4.5rem minmax(0,1fr);min-height:5rem;-moz-column-gap:1rem;column-gap:1rem}.fusion-compare-col--after li{grid-template-columns:5rem minmax(0,1fr)}.fusion-compare-note{width:100%;margin-top:0;border-radius:2px 2px 2px 1.5rem}.fusion-compare-note:before{display:none}.fusion-compare-col:hover{transform:none;box-shadow:none}}@media(max-width:420px){.fusion-compare-col{padding:1.75rem 1.25rem}.fusion-compare-col h3{margin-bottom:1.75rem}.fusion-compare-col li,.fusion-compare-col--after li{grid-template-columns:4rem minmax(0,1fr);min-height:4.5rem;-moz-column-gap:.75rem;column-gap:.75rem}.fusion-compare-col--today{--fig-size: 2.5rem}.fusion-compare-col--after{--fig-size: 3.25rem}.fusion-compare-label{font-size:.95rem}}@media(prefers-reduced-motion:reduce){.fusion-compare-col{animation:none;transition:none}.fusion-compare-col:hover{transform:none}}.dedicated-page--fusion{display:grid;gap:clamp(2.5rem,5vw,4rem)}.dedicated-page--fusion .fusion-section-heading{margin-bottom:1.5rem}.dedicated-page--fusion .fusion-section-heading h2,.dedicated-page--fusion .fusion-status h2{margin:0;color:var(--text-primary);font-family:var(--font-display);font-size:clamp(2rem,4vw,3.5rem);line-height:1.05}.dedicated-page--fusion .fusion-scenarios{display:grid;grid-template-columns:minmax(0,1fr) minmax(17rem,.72fr);align-items:stretch;gap:clamp(1.25rem,3vw,2.5rem)}.dedicated-page--fusion .fusion-scenario-alternatives{display:grid;align-content:start;gap:1.25rem}.dedicated-page--fusion .fusion-scenario{padding:1.5rem;background:var(--surface-alt)}.dedicated-page--fusion .fusion-scenario-cue{display:block;margin-bottom:.5rem;color:var(--text-muted);font-size:.8rem;font-weight:700;text-transform:uppercase}.dedicated-page--fusion .fusion-scenario h3{margin:0 0 .65rem;color:var(--text-primary);font-family:var(--font-display);font-size:clamp(1.25rem,2vw,1.7rem);line-height:1.15}.dedicated-page--fusion .fusion-scenario p,.dedicated-page--fusion .fusion-status p,.dedicated-page--fusion .fusion-study-content>p,.dedicated-page--fusion .fusion-study li,.dedicated-page--fusion .fusion-roadmap li p{margin:0;color:var(--text-secondary);line-height:1.65}.dedicated-page--fusion .fusion-scenario-featured{display:flex;flex-direction:column;justify-content:flex-end;min-height:100%;padding:clamp(1.5rem,3vw,2.5rem);background:var(--navy-deep)}.dedicated-page--fusion .fusion-scenario-featured .fusion-scenario-cue,.dedicated-page--fusion .fusion-scenario-featured h3,.dedicated-page--fusion .fusion-scenario-featured p{color:#fff}.dedicated-page--fusion .fusion-scenario-featured h3{max-width:14ch;font-size:clamp(1.6rem,2.7vw,2.35rem)}.dedicated-page--fusion .fusion-status{display:grid;grid-template-columns:minmax(13rem,.75fr) minmax(0,1.25fr);align-items:center;gap:clamp(1.5rem,4vw,4rem);width:100%;max-width:68rem;margin-inline:auto;padding:clamp(1.5rem,3vw,2.5rem);background:var(--navy-deep)}.dedicated-page--fusion .fusion-status h2,.dedicated-page--fusion .fusion-status p{color:#fff}.dedicated-page--fusion .fusion-status-conclusion{margin-top:.75rem!important;font-weight:700}.dedicated-page--fusion .fusion-study{display:grid;grid-template-columns:minmax(13rem,.7fr) minmax(0,1.3fr);align-items:start;gap:clamp(1.5rem,5vw,5rem);max-width:68rem}.dedicated-page--fusion .fusion-study ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.5rem;margin:1.25rem 0 0;padding:0;list-style:none}.dedicated-page--fusion .fusion-study li strong{display:block;color:var(--text-primary)}.dedicated-page--fusion .fusion-study li span{display:block;margin-top:.2rem;color:var(--text-secondary);font-size:.95rem;line-height:1.5}.dedicated-page--fusion .fusion-roadmap ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:1.25rem;margin:0;padding:0;list-style:none}.dedicated-page--fusion .fusion-roadmap li h3{margin:0 0 .5rem;color:var(--text-primary);font-family:var(--font-display);font-size:1.25rem;font-weight:800}.dedicated-page--fusion .fusion-timeline-link{display:inline-flex;gap:.5rem;align-items:baseline;margin-top:1.25rem;color:var(--text-primary);font-weight:700}@media(max-width:800px){.dedicated-page--fusion .fusion-scenarios{grid-template-columns:1fr}.dedicated-page--fusion .fusion-status,.dedicated-page--fusion .fusion-study{grid-template-columns:1fr;gap:1rem}.dedicated-page--fusion .fusion-roadmap ol{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:1.5rem}}@media(max-width:560px){.dedicated-page--fusion .fusion-study ul,.dedicated-page--fusion .fusion-roadmap ol{grid-template-columns:1fr}}@media(max-width:980px){.dedicated-page-grid,.dedicated-page--governance .dedicated-page-grid--roles{grid-template-columns:repeat(2,minmax(0,1fr))}.financing-layout{grid-template-columns:minmax(0,1fr) minmax(14rem,.7fr)}}@media(max-width:640px){.dedicated-page-grid,.dedicated-page--impact .dedicated-page-grid,.dedicated-page--governance .dedicated-page-grid--roles,.financing-layout{grid-template-columns:1fr}.dedicated-page-card,.dedicated-page-note,.dedicated-page--governance .dedicated-page-card{padding:1.25rem}}@media(prefers-reduced-motion:reduce){.project-why__trace-dot,.project-topic{animation:none}.project-topic{opacity:1}.project-topic__dash,.project-topic h3,.project-topic__body:after{transition:none}}.project-communes .district-map{margin-top:1.5rem}.project-commune-directory{margin-top:3rem}.project-commune-directory h3{margin-bottom:1.5rem;font-size:clamp(1.75rem,3vw,2.25rem);font-weight:800;letter-spacing:-.02em}.project-commune-directory ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:0;padding:0;list-style:none}@media(max-width:900px){.project-commune-directory ul{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.project-commune-directory ul{grid-template-columns:1fr}}.project-commune-directory a{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;height:100%;padding:1.125rem 1.25rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text-primary);font-size:1.25rem;font-weight:700;line-height:1.2;transition:border-color .15s ease,color .15s ease}.project-commune-directory a:hover{border-color:var(--accent-hover);color:var(--accent-hover)}.project-commune-directory .commune-link-icon{align-self:center;color:var(--text-muted)}.contact-communes-list a{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:1.1rem 0;color:var(--text-primary);font-size:1.125rem;font-weight:700}.contact-communes-list a:hover{color:var(--accent-hover)}.contact-communes-list a span{color:var(--warm)}.commune-link-icon{display:inline-flex;flex:0 0 auto;align-items:center}.project-timeline{display:grid;margin:0;padding:0;list-style:none}.project-timeline-step{display:grid;grid-template-columns:2.25rem minmax(0,1fr) auto;-moz-column-gap:1rem;column-gap:1rem;align-items:start;padding-bottom:1.75rem;background-image:linear-gradient(#cbd5e1,#cbd5e1);background-repeat:no-repeat;background-position:calc(1.125rem - 1px) 2.25rem;background-size:2px calc(100% - 2.25rem)}.project-timeline-step--done,.project-timeline-step--current{background-image:linear-gradient(var(--navy-deep),var(--navy-deep))}.project-timeline-step:last-child{padding-bottom:0;background-image:none}.project-timeline-marker{display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:50%;background:#cbd5e1}.project-timeline-step--done .project-timeline-marker{background:var(--green);color:#fff}.project-timeline-step--done .project-timeline-marker:before{content:"✓";font-weight:700}.project-timeline-step--current .project-timeline-marker{background:var(--navy-deep)}.project-timeline-title{display:block;color:var(--navy-deep);font-size:1.0625rem;font-weight:700;line-height:1.3}.project-timeline-description{max-width:48rem;margin:.2rem 0 0;color:var(--text-secondary);font-size:.9375rem;line-height:1.4;text-align:justify}.project-timeline-badge{align-self:start;padding:.4rem 1rem;border-radius:.5rem;background:var(--surface-alt);color:var(--text-muted);font-size:.875rem;font-weight:600;white-space:nowrap}.project-timeline-step--done .project-timeline-badge{background:var(--green-soft);color:var(--green)}.project-timeline-step--current .project-timeline-badge{background:var(--accent);color:#fff}@media(max-width:600px){.project-timeline-step{grid-template-columns:2.25rem minmax(0,1fr)}.project-timeline-badge{grid-column:2;justify-self:start;margin-top:.5rem}}.news-toggle{display:block;margin:3rem auto 0;padding:.85rem 1.5rem;border:2px solid var(--accent);border-radius:var(--radius);background:transparent;color:var(--accent);font:inherit;font-weight:600;cursor:pointer}.news-toggle:hover{border-color:var(--accent-hover);background:var(--accent-hover);color:#fff}.contact-communes-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 1.5rem;margin:0;padding:0;list-style:none}.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-card--communes{grid-column:1 / -1}@media(max-width:1000px){.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-card--communes{grid-column:1 / -1}}@media(max-width:760px){.contact-grid{grid-template-columns:1fr}.contact-card--communes{grid-column:auto}}@media(max-width:600px){.documentation-page{width:100%;max-width:100%;margin-right:auto;margin-left:auto;padding-right:var(--content-px);padding-left:var(--content-px)}.documentation-search,.documentation-groups,.documentation-group{width:100%;min-width:0}.documentation-groups{grid-template-columns:1fr}.documentation-group-heading h2,.documentation-link>span:nth-child(2),.documentation-unavailable>span:nth-child(2),.documentation-search .faq-search-suggestion-text{min-width:0;overflow-wrap:anywhere}.documentation-search .faq-search-suggestion{box-sizing:border-box;padding-right:.85rem;padding-left:.85rem}.documentation-status{max-width:7rem;text-align:right}.home-intro-grid{grid-template-columns:1fr;gap:1rem}.site-page-banner{min-height:16rem;padding-top:4rem;padding-bottom:2.5rem}.site-page-banner p{font-size:1rem}.project-section{padding:3.5rem 0}.project-section-heading h2{font-size:2.125rem}.project-topic-grid,.project-timeline{grid-template-columns:1fr;gap:1rem}.contact-communes-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:380px){.contact-communes-list{grid-template-columns:1fr}}.prose-custom img{max-width:100%;height:auto;border-radius:var(--radius);margin:1em 0}.prose-custom ul,.prose-custom ol{padding-left:1.4em;margin:0 0 1em;list-style-position:outside}.prose-custom ul{list-style-type:disc}.prose-custom ol{list-style-type:decimal}.prose-custom ul ul{list-style-type:circle}.prose-custom ul ul ul{list-style-type:square}.prose-custom li::marker{color:var(--warm);font-weight:700}.prose-custom li{margin:.25em 0}.prose-custom li>p{margin-bottom:.35em}.prose-custom blockquote{border-left:3px solid var(--warm);padding-left:1rem;color:var(--text-secondary);font-style:italic;margin:1.5em 0}.prose-custom code{background:var(--surface-alt);padding:.15em .35em;border-radius:4px;font-size:.9em}.prose-custom hr{margin:2rem 0;border:0;border-top:1px solid var(--border)}.prose-custom table{width:100%;margin:1.5em 0;border-collapse:collapse;text-align:left}.prose-custom th,.prose-custom td{padding:.65rem .8rem;border:1px solid var(--border)}.prose-custom th{background:var(--surface-alt);font-weight:700}@keyframes page-content-arrive{0%{opacity:0;transform:translateY(.8rem)}to{opacity:1;transform:translateY(0)}}.site-page-banner{position:relative;isolation:isolate;overflow:hidden}.site-page-banner__inner{position:relative;animation:page-content-arrive .65s cubic-bezier(.22,1,.36,1) both}main.page-content,.project-content{animation:page-content-arrive .7s 70ms cubic-bezier(.22,1,.36,1) both}.home-hero-content{animation:page-content-arrive .8s 80ms cubic-bezier(.22,1,.36,1) both}.nav-link{position:relative}.nav-link:after{position:absolute;right:0;bottom:-.35rem;left:0;height:2px;background:var(--warm);content:"";transform:scaleX(0);transform-origin:left;transition:transform .18s ease-out}.nav-link:hover:after,.nav-link:focus-visible:after{transform:scaleX(1)}.footer-link,.home-section-link,.project-commune-directory a,.contact-detail a,.back-link{transition:color .16s ease,transform .16s ease}.footer-link:hover,.home-section-link:hover,.back-link:hover{transform:translate(2px)}.actualite-card:focus-visible,.card:focus-visible,.quick-access-grid a:focus-visible,.project-commune-directory a:focus-visible,.documentation-link:focus-visible,.footer-link:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.contact-member{transition:transform .18s ease,border-color .18s ease}.contact-member:hover{transform:translateY(-2px)}.upcoming-event-item{transition:transform .18s ease,border-color .18s ease}.upcoming-event-item:hover{transform:translate(4px)}.calendar-day{transition:box-shadow .16s ease,background-color .16s ease}.calendar-day:hover,.calendar-day:focus-visible{position:relative;z-index:1;box-shadow:inset 0 0 0 2px var(--accent)}.btn,.calendar-nav,.agenda-view-button,.news-toggle,.faq-search-clear{transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease}.btn:hover,.calendar-nav:hover,.news-toggle:hover,.faq-search-clear:hover{transform:translateY(-2px)}.btn:active,.calendar-nav:active,.agenda-view-button:active,.news-toggle:active,.faq-search-clear:active{transform:translateY(0)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.project-topic{opacity:1;animation:none}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.text-text-muted{color:var(--text-muted)}.home-intro-section{padding-bottom:calc(var(--section-py) * .6)}.home-intro{position:relative;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,26rem),1fr));gap:clamp(2rem,5vw,4rem);align-items:start}.home-intro-title,.home-intro-body{position:relative;z-index:1}.home-intro-title{margin:0 0 1.25rem;font-family:var(--font-display);font-size:clamp(1.75rem,3vw,2.25rem);font-weight:800;line-height:1;letter-spacing:-.02em;color:var(--text-primary)}.home-intro-text{max-width:40rem;margin:0 0 1.25rem;font-size:1.0625rem;line-height:1.6;color:var(--text-secondary)}.home-intro-text+.home-intro-link{margin-top:.5rem}@media(min-width:901px){.home-intro{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr)}}.home-communes-card{padding:clamp(1.25rem,3vw,1.75rem);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.home-communes-card .home-intro-title{margin-bottom:.5rem}.home-communes-card__text{margin:0 0 1rem;color:var(--text-secondary);font-size:.9375rem;line-height:1.5}.home-communes-card .veveyse-wrap{display:block;padding:0;border:0;background:none}.home-communes-card .veveyse-list{display:none}.home-communes-card .veveyse-map .map-4{opacity:1;transform:none}.home-communes-card .veveyse-map [data-commune=granges--veveyse] .map-4{transform:translateY(32px)}.home-communes-card .veveyse-map svg{max-width:100%;max-height:32rem;width:auto}.home-communes-card .home-intro-link{margin-top:1.25rem}.home-intro-arrow{display:inline-block;transition:transform .25s ease}.home-intro-link:hover .home-intro-arrow,.home-intro-link:focus-visible .home-intro-arrow{transform:translate(.4rem)}@media(max-width:720px){.home-intro-text{font-size:1.05rem}}@keyframes intro-rise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:no-preference){@supports (animation-timeline: view()){.home-intro-title,.home-intro-text,.home-intro-link{animation:intro-rise linear both;animation-timeline:view()}.home-intro-title{animation-range:entry 10% entry 60%}.home-intro-text{animation-range:entry 20% entry 70%}.home-intro-link{animation-range:entry 30% entry 80%}}}
