/* Les variables du template restent la source des couleurs, polices et dimensions. */
body { margin: 0; }
:root { --wgc-header-height: 0px; --wgc-menu-height: 60px; }
html { scroll-padding-top: calc(var(--wgc-menu-height) + 12px); }
#header.wgc-header, .wgc-footer { color: var(--wgc-fg); background: var(--wgc-bg); }
#header.wgc-header { z-index: 990; padding: 0; font-family: var(--cms-body-font, sans-serif); overflow: visible; }
#header.wgc-is-scrolled { background: var(--wgc-scroll-bg); color: var(--wgc-scroll-fg); }
#header.wgc-header a, .wgc-footer a { color: inherit; text-decoration: none; }
#header.wgc-header a:hover, .wgc-footer a:hover { text-decoration: underline; }
.wgc-brand-wrap, .wgc-navigation-bar, .wgc-footer-inner, .wgc-copyright { max-width: var(--cms-content-width,1320px); margin-inline: auto; padding: 16px 24px; }
.wgc-brand { display: inline-flex; align-items: center; gap: 16px; max-width: 100%; }
.wgc-logo { height: var(--wgc-logo-height); width: auto; max-width: 40vw; object-fit: contain; }
.wgc-brand-text { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.wgc-title { font-family: var(--cms-heading-font, sans-serif); font-size: clamp(1.4rem,3vw,2.5rem); font-weight: 700; line-height: 1.2; overflow-wrap: anywhere; }
.wgc-subtitle { font-size: 1rem; white-space: normal; }
.wgc-navigation-bar, .wgc-utilities, .wgc-socials, .wgc-languages { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; }
.wgc-navigation-bar { justify-content: center; }
.wgc-header--inline { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; padding-inline: max(0px,calc((100% - var(--cms-content-width,1320px))/2)) !important; }
.wgc-header--inline .wgc-brand-wrap { margin: 0; }
.wgc-header--inline .wgc-navigation-bar { margin: 0; }
.wgc-header--sticky { position: sticky; top: 0; }
/* Le titre défile ; seule sa barre de menu reste visible. */
.wgc-header--stacked.wgc-header--sticky { top: calc(var(--wgc-menu-height) - var(--wgc-header-height)); }
.wgc-header--fixed { position: fixed; inset: 0 0 auto; }
.wgc-header-spacer { display: none; }
.wgc-header--fixed + .wgc-header-spacer { display: block; height: var(--wgc-header-height); }
.wgc-pages, .wgc-footer-links { list-style: none; margin: 0; padding: 0; }
.wgc-primary-menu > .wgc-pages { display: flex; gap: 20px; align-items: center; flex-wrap: wrap; }
.wgc-pages li { position: relative; }
.wgc-pages a { display: block; padding: 8px 4px; }
.wgc-pages a[aria-current] { text-decoration: underline !important; font-weight: 700; }
.wgc-primary-menu .wgc-pages ul { display: none; position: absolute; top: 100%; left: 0; min-width: 210px; list-style: none; padding: 8px; background: var(--cms-surface,#fff); color: var(--cms-text,#222); box-shadow: 0 4px 12px #0003; z-index: 3; }
.wgc-primary-menu .wgc-pages ul ul { top: 0; left: 100%; }
.wgc-primary-menu li:hover > ul, .wgc-primary-menu li:focus-within > ul { display: block; }
.wgc-account { border: 1px solid currentColor; border-radius: var(--cms-button-radius,6px); padding: 8px 14px; }
.wgc-menu-toggle { display: none; background: transparent; color: inherit; border: 1px solid currentColor; padding: 8px 12px; border-radius: var(--cms-button-radius,6px); }
.wgc-socials { gap: 16px; justify-content: center; }
.wgc-socials a { display: inline-flex; gap: 6px; align-items: center; }
.wgc-socials i { font-size: 1.3rem; }
.wgc-footer { margin-top: 32px; padding-block: 24px; }
.wgc-footer-inner { display: grid; grid-template-columns: repeat(auto-fit,minmax(200px,1fr)); gap: 32px; align-items: start; }
.wgc-footer--compact .wgc-footer-inner { display: flex; flex-direction: column; align-items: center; }
.wgc-footer-brand img { max-width: 180px; max-height: 90px; object-fit: contain; margin-bottom: 16px; }
.wgc-footer .wgc-title { font-size: 1.5rem; }
.wgc-footer p { white-space: normal; overflow-wrap: anywhere; }
.wgc-footer .wgc-pages ul { list-style: none; padding: 0 0 0 16px; }
.wgc-footer-links a { display: inline-block; padding: 6px; }
.wgc-copyright { margin-bottom: 0; font-size: .85rem; }
@media(max-width: 991px) {
    .wgc-header--inline { display: block; }
    .wgc-header--inline .wgc-brand-wrap, .wgc-header--inline .wgc-navigation-bar { margin-inline: auto; }
    .wgc-navigation-bar { gap: 12px; padding: 12px 16px; }
    .wgc-utilities { gap: 12px; justify-content: center; }
    .wgc-menu-toggle { display: block; }
    .wgc-primary-menu { display: none; order: 3; width: 100%; max-height: 50vh; overflow: auto; }
    .wgc-primary-menu.wgc-menu-open { display: block; }
    .wgc-primary-menu > .wgc-pages { display: block; }
    .wgc-primary-menu .wgc-pages ul, .wgc-primary-menu .wgc-pages ul ul { display: block; position: static; box-shadow: none; background: transparent; color: inherit; padding-left: 20px; }
}

.wgc-footer--compact.wgc-align--left .wgc-footer-inner { align-items: flex-start; }
