/*
Theme Name: FEDS
Author: FEDS
Description: Classic WordPress theme with editable navigation and shared FEDS styling.
Version: 1.1.1
Text Domain: feds-classic
*/

/* Theme shell and shared layout for pages, posts and pasted HTML. */
.feds-nav { position:sticky; top:0; }
body.admin-bar .feds-nav { top:32px; }
.feds-nav__inner { position:relative; flex-wrap:nowrap; gap:20px; min-height:80px; padding-block:8px; }
.feds-nav__logo { flex:0 0 auto; margin-right:auto; }
.feds-nav__logo-image { display:block; width:174px; height:auto; max-height:72px; object-fit:contain; }
.feds-footer__logo-image { display:block; width:180px; height:auto; filter:brightness(0) invert(1); }
.feds-nav nav { display:block; flex:0 1 auto; min-width:0; width:auto; }
.feds-nav__menu { display:flex; flex-wrap:nowrap; align-items:center; gap:2px; padding:0; margin:0; }
.feds-nav__link { white-space:nowrap; padding-inline:8px; }
.feds-nav__menu li { position:relative; list-style:none; }
.feds-nav__menu .sub-menu { display:none; position:absolute; left:0; top:100%; min-width:220px; padding:10px; background:#fff; border:1px solid var(--feds-border); border-radius:12px; box-shadow:0 12px 30px #142d231c; }
.feds-nav__menu li:hover > .sub-menu, .feds-nav__menu li:focus-within > .sub-menu { display:block; }
.feds-nav__menu .sub-menu a { display:block; padding:10px 12px; white-space:normal; }
.feds-nav__burger { display:none; flex-shrink:0; }
.feds-nav__cta { white-space:nowrap; }
.feds-nav__inner[data-collapsed] nav { display:none; position:absolute; top:100%; left:0; right:0; width:auto; padding:16px; max-height:75vh; overflow-y:auto; background:#fff; border:1px solid var(--feds-border); border-radius:0 0 16px 16px; }
.feds-nav__inner[data-collapsed] .feds-nav__burger { display:flex; }
.feds-nav.menu-open .feds-nav__inner[data-collapsed] nav { display:block; }
.feds-nav__inner[data-collapsed] .feds-nav__cta { display:none; }
.feds-nav__inner[data-collapsed] .feds-nav__menu { display:flex; flex-direction:column; align-items:stretch; gap:4px; width:100%; }
.feds-nav__inner[data-collapsed] .sub-menu { display:block; position:static; min-width:0; border:0; box-shadow:none; padding:0 0 0 16px; }
.feds-nav__inner[data-collapsed] .feds-nav__link { min-height:44px; }
.feds-page { padding-block:clamp(56px,8vw,100px); }
.feds-page__article,.feds-post { max-width:860px; margin-inline:auto; }
.feds-page__article--custom { max-width:none; }
.feds-page__header { margin-bottom:40px; }
.feds-page__header h1 { color:var(--feds-green-deep); font-size:clamp(38px,6vw,68px); line-height:1.06; letter-spacing:-.04em; }
.feds-page__content { font:400 18px/1.7 var(--feds-font); color:var(--feds-body); }
.feds-page__content > * + * { margin-top:1.25em; }
.feds-page__content h1,.feds-page__content h2,.feds-page__content h3 { color:var(--feds-green-deep); line-height:1.12; }
.feds-page__content h1 { font-size:clamp(36px,5vw,64px); }
.feds-page__content h2 { font-size:clamp(28px,4vw,44px); }
.feds-page__content h3 { font-size:clamp(23px,3vw,30px); }
.feds-page__content ul,.feds-page__content ol { padding-left:1.4em; }
.feds-page__content a:not(.fc-action):not(.feds-button):not(.wp-block-button__link) { color:var(--feds-orange-deep); }
.feds-page__content input,.feds-page__content select,.feds-page__content textarea { font:inherit; }
.feds-section { padding:clamp(28px,5vw,64px); border-radius:var(--radius); background:var(--feds-green-soft); }
.feds-section--peach { background:var(--feds-orange-soft); }
.feds-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr)); gap:24px; }
.feds-card { padding:28px; border:1px solid var(--feds-border); border-radius:20px; background:#fff; }
.feds-section > * + *,.feds-card > * + * { margin-top:18px; }
.feds-button,.wp-block-button__link { display:inline-flex; align-items:center; justify-content:center; min-height:52px; padding:12px 24px; border:0; border-radius:16px; background:var(--feds-orange-solid); color:#fff; font:700 16px/1.4 var(--feds-font); text-decoration:none; }
.feds-button:hover,.wp-block-button__link:hover { background:var(--feds-orange-deep); }
.feds-post__meta { margin-top:14px; color:#637068; }
.feds-post-list { display:grid; gap:24px; max-width:900px; margin-inline:auto; }
.feds-post-card { padding:32px; border:1px solid var(--feds-border); border-radius:var(--radius); }
.feds-post-card h2 { margin:8px 0 16px; font-size:32px; color:var(--feds-green-deep); }
.feds-post-card h2 a { text-decoration:none; }
.feds-footer__widget { color:inherit; }
.feds-footer__widget a { color:inherit; }
.feds-footer__widget > * + * { margin-top:12px; }
.feds-footer__contact p { margin:0; }

/* Shared heading over three independently configured footer menus. */
.feds-footer__grid { grid-template-columns:minmax(0,1.15fr) minmax(0,2.75fr) minmax(0,1.25fr); }
.feds-footer__links { min-width:0; }
.feds-footer__menus { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.feds-footer__menus nav { min-width:0; }
.feds-footer__menus a { overflow-wrap:anywhere; }
.feds-footer__list .sub-menu { list-style:none; padding:8px 0 0 12px; }
.feds-footer__list .sub-menu li + li { margin-top:8px; }
.feds-footer__bottom { align-items:center; flex-wrap:wrap; }
.feds-footer__broker { margin-left:auto; color:#fff; font-weight:600; text-decoration:none; }
.feds-footer__broker:hover { text-decoration:underline; text-underline-offset:3px; }
@media(max-width:1020px) {
 .feds-footer__grid { grid-template-columns:minmax(0,2.75fr) minmax(0,1.25fr); }
}
@media(max-width:640px) {
 .feds-footer__grid { grid-template-columns:minmax(0,1fr); }
 .feds-footer__menus { gap:18px; }
 .feds-footer__bottom { align-items:flex-start; }
 .feds-footer__broker { margin-left:0; }
}
.fsi__panel[hidden] { display:none!important; }
.fsi__panel+.fsi__panel { margin-top:0; }
.fp2.is-loop-ready .fp2__track { animation:feds-partners-loop var(--partners-duration,38s) linear infinite; }
.fp2__set[aria-hidden="true"] { display:flex; }
.fp2__mask { overflow-x:auto; scrollbar-width:none; }
.fp2__mask::-webkit-scrollbar { display:none; }
.fp2__mask:hover .fp2__track,.fp2__mask:focus-within .fp2__track { animation-play-state:paused; }
@media(max-width:600px) {
  .feds-topbar__inner { min-height:30px; padding-block:6px; }
  .feds-topbar__links { gap:12px; }
  .feds-topbar__links a:last-child { display:none; }
  .feds-nav__inner { gap:12px; min-height:70px; padding-block:6px; }
  .feds-nav__logo-image { width:115px; height:48px; }
  .feds-nav__cta { min-height:42px; font-size:12px; padding-left:12px; gap:8px; }
  .feds-nav__cta .fc-action__end { display:none; }
}
@media(max-width:400px) { .feds-nav__cta { display:none; } }
@media(max-width:782px) { body.admin-bar .feds-nav { top:46px; } }
@media(prefers-reduced-motion:reduce) {
  .fp2.is-loop-ready .fp2__track { animation:none!important; transform:none!important; }
  .fp2__set[aria-hidden="true"] { display:none; }
}
@media print { .fp2__track { animation:none; }.fp2__set[aria-hidden="true"] { display:none; } }
/* Header: complete official SVG, one row, active item marked by an orange line. */
.feds-nav__inner { height:84px; padding-block:6px; gap:clamp(8px,1.5vw,20px); }
.feds-nav__logo { align-self:center; flex:0 0 auto; margin-right:0; }
.feds-nav__link::before { display:none; }
.feds-nav__link { position:relative; font-size:clamp(12px,1.03vw,14px); padding-inline:clamp(5px,.7vw,10px); }
.feds-nav__link.is-active::after { content:""; position:absolute; height:2px; left:10px; right:10px; bottom:2px; border-radius:2px; background:var(--feds-orange-solid); }
.feds-nav__menu { position:static; padding:0; border:0; flex-direction:row; width:auto; }
.feds-nav nav { flex:1 1 auto; width:auto; }
.feds-nav__cta { display:inline-flex; font-size:clamp(12px,1vw,14px); padding-left:clamp(12px,1.3vw,18px); gap:8px; }
.feds-nav__cta .fc-action__end { width:32px; height:32px; }
.feds-nav__cta .fc-action__end>span { width:22px; height:22px; }
.feds-nav__burger { display:none; }
.feds-nav__inner[data-collapsed] .feds-nav__menu { position:static; width:100%; padding:0; border:0; flex-direction:column; align-items:stretch; }
.feds-nav.menu-open .feds-nav__inner[data-collapsed] nav { display:block; }
@media(max-width:1080px) {
  .feds-nav__logo-image { width:150px; }
  .feds-nav__inner { gap:8px; }
}
@media(max-width:600px) {
  .feds-nav__inner { height:72px; }
  .feds-nav__logo-image { width:142px; height:auto; }
  .feds-nav__cta { font-size:12px; }
}
@media(max-width:400px) { .feds-nav__cta { display:none; } }

/* Keep the main navigation mathematically centered between the official logo and CTA. */
@media (min-width:1021px) {
 .feds-nav__inner { display:grid!important; grid-template-columns:minmax(180px,1fr) auto minmax(180px,1fr); align-items:center; gap:16px; }
 .feds-nav__logo { justify-self:start; }
 .feds-nav__inner nav { justify-self:center; flex:none!important; }
 .feds-nav__menu { justify-content:center!important; }
 .feds-nav__cta { justify-self:end; }
}
