/* Shared public WFF header and footer. Content styles remain page-specific. */
html{scroll-padding-top:calc(var(--wff-header-height,76px) + 16px)}
.wff-header,.wff-footer{font:16px/1.58 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;box-sizing:border-box}
.wff-header *,.wff-footer *{box-sizing:border-box}
.wff-header .shell,.wff-footer .shell{max-width:1240px;margin:auto;padding:0 clamp(1.2rem,4vw,3rem)}
header.wff-header{position:sticky;top:0;z-index:100;background:#101c28;color:#fff;border-bottom:1px solid #45515a;padding:0}
.wff-header .topinner{display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:20px;min-height:76px}
.wff-header .brand{display:block;flex:0 0 258px;min-width:0;text-decoration:none}
.wff-header .brand img{display:block;width:258px;max-width:100%;height:auto}
.wff-header #navigation{display:flex;position:static;align-items:center;gap:20px;padding:0;max-height:none;overflow:visible;box-shadow:none;background:transparent}
.wff-header #navigation>a,.wff-header #information-toggle{font:500 13px/1.4 Inter,ui-sans-serif,system-ui,sans-serif;white-space:nowrap;text-decoration:none;color:#e6e9e9}
.wff-header #information-toggle{border:0;background:transparent;padding:12px 0;cursor:pointer}
.wff-header #information-toggle span{display:inline-block;margin-left:3px;color:#c69b65}
.wff-header .navcta{border:1px solid #c69b65;padding:11px 13px;color:#fff}
.wff-header a:hover,.wff-header #information-toggle:hover{text-decoration:underline;text-decoration-color:#c69b65;text-underline-offset:5px}
.wff-header .wff-information{position:relative}
.wff-header #information-links{position:absolute;top:calc(100% + 10px);left:-16px;min-width:190px;padding:10px;background:#182c3b;border:1px solid #45515a;box-shadow:0 12px 28px #0004}
.wff-header #information-links[hidden]{display:none}
.wff-header #information-links a{display:block;padding:10px;color:#fff;font:500 14px/1.4 Inter,ui-sans-serif,system-ui,sans-serif;white-space:nowrap;text-decoration:none}
.wff-header #information-links a:hover{background:#284051}
.wff-header .menu{display:none;font:500 14px/1.4 Inter,ui-sans-serif,system-ui,sans-serif;background:transparent;color:white;border:1px solid #71808c;border-radius:4px;padding:10px 13px}
.wff-header a:focus-visible,.wff-header button:focus-visible,.wff-footer a:focus-visible{outline:3px solid #c69b65;outline-offset:4px}
footer.wff-footer{background:#101c28;color:#c7d0d5;padding:2.3rem 0}
.wff-footer .footer-grid{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr));gap:clamp(1.5rem,4vw,4rem)}
.wff-footer .footer-logo{display:block;width:min(360px,100%);height:auto;margin-bottom:1rem}
.wff-footer .footer-grid>div:first-child{max-width:365px}
.wff-footer h2{font:700 .75rem/1.4 Inter,ui-sans-serif,system-ui,sans-serif;text-transform:uppercase;letter-spacing:.16em;color:#c69b65;margin:0 0 1.1rem}
.wff-footer p{margin:.4rem 0;font-size:.9rem}
.wff-footer a{display:block;color:inherit;text-decoration:none;margin:.45rem 0;font-size:.9rem;overflow-wrap:anywhere}
.wff-footer a:hover{text-decoration:underline;text-underline-offset:.25rem}
.wff-footer .footer-bottom{border-top:1px solid #425260;margin-top:2.6rem;padding-top:1.1rem;color:#aebdc5;font-size:.8rem}
.wff-hero-planning,.wff-hero-installation{background-color:#101c28!important;background-size:cover!important;background-position:center!important}
.wff-hero-planning{background-image:linear-gradient(90deg,rgba(16,28,40,.96),rgba(16,28,40,.81) 60%,rgba(16,28,40,.55)),url('wff-planning-symbol-v2.webp')!important}
.wff-hero-installation{background-image:linear-gradient(90deg,rgba(16,28,40,.96),rgba(16,28,40,.81) 60%,rgba(16,28,40,.55)),url('wff-installation-symbol-v2.webp')!important}
.pm-hero .wff-image-note{color:#d4dce0;font-size:.7rem;margin:1.5rem 0 0;letter-spacing:.04em}
@media(max-width:1199px){
 .wff-header .menu{display:block;flex-shrink:0}
 .wff-header .brand{flex:0 1 290px}
 .wff-header .brand img{width:290px}
 .wff-header #navigation{display:none;position:absolute;left:0;right:0;top:100%;padding:16px clamp(1.2rem,4vw,3rem) 24px;background:#101c28;max-height:calc(100dvh - var(--wff-header-height,76px));overflow-y:auto;box-shadow:0 12px 25px #0004}
 .wff-header #navigation.open{display:flex;align-items:stretch;flex-direction:column;gap:10px}
 .wff-header #navigation>a,.wff-header #information-toggle{font-size:14px}
 .wff-header #navigation>a{padding:10px 0}
 .wff-header #navigation>.navcta{padding:11px 13px;align-self:flex-start}
 .wff-header #information-links{position:static;box-shadow:none;min-width:0;margin-bottom:4px}
}
@media(max-width:720px){
 .wff-header .topinner{min-height:72px;gap:16px}
 .wff-header .brand{flex-basis:260px}
 .wff-header .brand img{width:260px}
 .wff-footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .wff-hero-planning,.wff-hero-installation{background-position:65% center!important}
}
@media(max-width:470px){.wff-footer .footer-grid{grid-template-columns:1fr!important}}
