/* Native WordPress navigation: signal line and responsive route panel. */
.fc-masthead{padding:14px 22px;border-radius:20px;background:linear-gradient(115deg,#2b3540,#202a33);box-shadow:0 14px 36px #0002,inset 0 1px #ffffff08}
.fc-masthead .fc-logo{padding:6px 10px;border-radius:10px}
.fc-masthead .fc-logo img{width:146px!important;height:auto}
nav.fc-navigation{--nav-ease:cubic-bezier(.22,.8,.22,1)}
nav.fc-navigation .wp-block-navigation__container{gap:4px}
nav.fc-navigation .wp-block-navigation-item__content{position:relative;display:flex;align-items:center;min-height:48px;box-sizing:border-box;padding:12px 16px;border-radius:10px;text-decoration:none!important;font-size:15px;font-weight:500;transition:color .24s,background .24s}
nav.fc-navigation .wp-block-navigation-item__content::after{content:"";position:absolute;left:16px;right:16px;bottom:5px;height:2px;background:var(--fc-amber);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--nav-ease)}
nav.fc-navigation .wp-block-navigation-item__content:hover,nav.fc-navigation .wp-block-navigation-item__content[aria-current=page]{background:#ffffff06;color:var(--fc-amber)}
nav.fc-navigation .wp-block-navigation-item__content:hover::after,nav.fc-navigation .wp-block-navigation-item__content[aria-current=page]::after{transform:scaleX(1)}
nav.fc-navigation a:focus-visible,nav.fc-navigation button:focus-visible{outline:2px solid var(--fc-amber);outline-offset:5px}
nav.fc-navigation .wp-block-navigation__responsive-container-open,nav.fc-navigation .wp-block-navigation__responsive-container-close{gap:12px;min-height:48px;min-width:48px;border:1px solid #b9cbb733;border-radius:999px;background:#ffffff05;color:var(--fc-text);padding:11px 16px;transition:background .25s,border-color .25s,transform .25s}
nav.fc-navigation .wp-block-navigation__responsive-container-open:hover,nav.fc-navigation .wp-block-navigation__responsive-container-close:hover{background:#ffffff0d;border-color:#d8ba6266}
.fc-menu-label{font-size:14px;font-weight:600;letter-spacing:.025em}
nav.fc-navigation .wp-block-navigation__responsive-container-open svg{width:22px;height:22px}
nav.fc-navigation .wp-block-navigation__responsive-container-open svg path{transition:transform .28s var(--nav-ease)}
nav.fc-navigation .wp-block-navigation__responsive-container-open:hover svg path:first-child{transform:translateX(2px)}
nav.fc-navigation .wp-block-navigation__responsive-container-open:hover svg path:last-child{transform:translateX(-2px)}
@media(max-width:1050px){
 .fc-masthead{padding:12px 18px}
 nav.fc-navigation .wp-block-navigation__responsive-container:not(.is-menu-open){display:none!important}
 nav.fc-navigation .wp-block-navigation__responsive-container-open:not(.always-shown){display:flex!important}
}
/* These rules follow WordPress's own dialog state, including keyboard focus trapping. */
nav.fc-navigation .wp-block-navigation__responsive-container.is-menu-open{position:fixed;inset:0;z-index:100000;padding:0!important;background:#0c1412a8!important;backdrop-filter:blur(10px);color:var(--fc-text)!important;overflow-y:auto;animation:fc-backdrop-in .32s both}
nav.fc-navigation .is-menu-open .wp-block-navigation__responsive-close{width:min(560px,100%);min-height:100%;margin:0 0 0 auto;background:linear-gradient(145deg,#2b3540 0%,#202a33 52%,#171c21 100%);box-shadow:-24px 0 80px #0004;border-left:1px solid #c3ceae26;box-sizing:border-box;animation:fc-panel-in .48s var(--nav-ease) both}
nav.fc-navigation .is-menu-open .wp-block-navigation__responsive-dialog{position:relative;min-height:100dvh;padding:100px 40px 42px;box-sizing:border-box}
nav.fc-navigation .is-menu-open .wp-block-navigation__responsive-dialog::before{content:"FAREHAM · MODEL RAILWAY CLUB";position:absolute;left:40px;top:38px;right:130px;font-size:10px;line-height:1.6;font-weight:600;letter-spacing:.16em;color:var(--fc-amber)}
nav.fc-navigation .is-menu-open .wp-block-navigation__responsive-container-close{position:absolute;top:24px;right:28px;display:flex;align-items:center;justify-content:center;z-index:2}
nav.fc-navigation .is-menu-open .wp-block-navigation__responsive-container-content{display:block;padding:0!important}
nav.fc-navigation .is-menu-open .wp-block-navigation__responsive-container-content::before{content:"Explore the club";display:block;margin:12px 0 30px;font-size:clamp(28px,5vw,38px);font-weight:600;letter-spacing:-.045em;line-height:1.15;color:var(--fc-ivory)}
nav.fc-navigation .is-menu-open .wp-block-navigation__container{position:relative;display:flex;flex-direction:column;align-items:stretch!important;gap:0;width:100%;padding-left:24px;border-left:1px solid #d8ba6240;box-sizing:border-box;counter-reset:fc-route}
nav.fc-navigation .is-menu-open .wp-block-navigation__container::before{content:"";position:absolute;left:-2px;top:0;width:3px;height:46px;background:var(--fc-amber);border-radius:3px;box-shadow:0 0 18px #eec44c40}
nav.fc-navigation .is-menu-open .wp-block-navigation-item{width:100%;margin:0!important;border-bottom:1px solid #d8e5d21a;animation:fc-route-in .48s var(--nav-ease) both;animation-delay:calc(var(--fc-route,0)*45ms + 90ms)}
nav.fc-navigation .is-menu-open .wp-block-navigation-item__content{width:100%;max-width:100%;min-width:0;min-height:68px;border:0;border-radius:0;background:transparent;padding:16px 32px 16px 0;gap:18px;font-size:clamp(23px,4vw,29px);font-weight:500;line-height:1.3;letter-spacing:-.025em;transition:color .24s,transform .3s var(--nav-ease)}
nav.fc-navigation .is-menu-open .wp-block-navigation-item__content::before{content:none}
nav.fc-navigation .is-menu-open .wp-block-navigation-item__content::after{content:"↗";position:absolute;left:auto;right:2px;bottom:auto;top:50%;height:auto;background:none;font-size:21px;color:var(--fc-muted);transform:translateY(-50%);transition:color .25s,transform .3s}
nav.fc-navigation .is-menu-open .wp-block-navigation-item__content:hover{transform:translateX(5px);color:var(--fc-amber)}
nav.fc-navigation .is-menu-open .wp-block-navigation-item__content:hover::after{color:var(--fc-amber);transform:translate(2px,calc(-50% - 2px))}
nav.fc-navigation .is-menu-open .wp-block-navigation-item__label{overflow-wrap:anywhere}
.fc-menu-note{margin:28px 0 0;padding:0 0 0 24px;font-size:13px;line-height:1.7;max-width:30ch;color:var(--fc-muted)}
nav.fc-navigation .is-menu-open.fc-menu-closing{animation:fc-backdrop-out .24s both}
nav.fc-navigation .is-menu-open.fc-menu-closing .wp-block-navigation__responsive-close{animation:fc-panel-out .24s var(--nav-ease) both}
@media(max-width:480px){
 .fc-masthead .fc-logo img{width:122px!important}
 nav.fc-navigation .is-menu-open .wp-block-navigation__responsive-dialog{padding:90px 26px 32px}
 nav.fc-navigation .is-menu-open .wp-block-navigation__responsive-dialog::before{left:26px;top:29px;right:126px;font-size:9px}
 nav.fc-navigation .is-menu-open .wp-block-navigation__responsive-container-close{top:18px;right:20px}
 nav.fc-navigation .is-menu-open .wp-block-navigation__responsive-container-content::before{margin:8px 0 26px}
 nav.fc-navigation .is-menu-open .wp-block-navigation-item__content{min-height:64px}
}
@keyframes fc-panel-in{from{opacity:.5;transform:translateX(48px)}to{opacity:1;transform:translateX(0)}}
@keyframes fc-route-in{from{opacity:0;transform:translate(16px,6px)}to{opacity:1;transform:translate(0,0)}}
@keyframes fc-backdrop-in{from{background-color:#0c141200;backdrop-filter:blur(0)}to{background-color:#0c1412a8;backdrop-filter:blur(10px)}}
@keyframes fc-panel-out{to{opacity:0;transform:translateX(40px)}}
@keyframes fc-backdrop-out{to{opacity:0}}
@media(prefers-reduced-motion:reduce){nav.fc-navigation *,nav.fc-navigation *::before,nav.fc-navigation *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Clear destinations and native, tap-operated submenus. */
nav.fc-navigation .wp-block-navigation__submenu-icon{display:flex!important;align-items:center;justify-content:center;min-width:40px;min-height:44px;margin:0;border:0;background:transparent;color:var(--fc-text);border-radius:8px}
nav.fc-navigation .wp-block-navigation__submenu-icon svg{width:14px;height:14px;transition:transform .25s ease}
nav.fc-navigation .wp-block-navigation__submenu-icon[aria-expanded=true] svg{transform:rotate(180deg)}
nav.fc-navigation .wp-block-navigation__submenu-container{min-width:220px;padding:8px;background:#20352c!important;border:1px solid #8aa78d66!important;border-radius:12px;box-shadow:0 12px 30px #0004}
nav.fc-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content{font-size:14px;line-height:1.4;min-height:44px;padding:10px 12px}
nav.fc-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content:after{display:none}
nav.fc-navigation[data-fc-section=railex] .is-menu-open .wp-block-navigation__responsive-dialog:before{content:"RAILEX FAREHAM · MODEL RAILWAY EXHIBITION";color:#f3a4a4}
nav.fc-navigation[data-fc-section=railex] .is-menu-open .wp-block-navigation__responsive-container-content:before{content:"Explore RailEx"}
nav.fc-navigation .is-menu-open .wp-block-navigation-item.has-child{display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:center}
nav.fc-navigation .is-menu-open .has-child>.wp-block-navigation-item__content{padding-right:0}
nav.fc-navigation .is-menu-open .has-child>.wp-block-navigation-item__content:after{display:none}
nav.fc-navigation .is-menu-open .has-child>.wp-block-navigation__submenu-icon{display:flex!important;position:static;width:44px;height:44px;border:1px solid #ffffff28}
nav.fc-navigation .is-menu-open .wp-block-navigation__submenu-container{grid-column:1/-1;position:static!important;min-width:0;width:100%;height:auto;box-sizing:border-box;margin:0 0 14px!important;padding:6px 10px!important;gap:0!important;background:#10251e70!important;border:1px solid #7d9a8155!important;border-radius:10px;box-shadow:none;align-items:stretch!important}
nav.fc-navigation .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item{animation:none;min-height:0;border:0}
nav.fc-navigation .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content{font-size:16px;line-height:1.4;font-weight:400;min-height:44px;padding:10px 8px;letter-spacing:0}
nav.fc-navigation .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover{transform:none}
html[data-fc-section=railex] .fc-masthead{border-top:3px solid var(--fc-red,#e53436);background:linear-gradient(115deg,#35443b,#203029)}
html[data-fc-section=club] .fc-masthead{border-top:3px solid #477858}
.fc-ticket-holding{padding:28px;margin:26px 0 36px;border:1px solid #839d7955;border-left:4px solid var(--fc-red,#e53436);border-radius:18px;background:linear-gradient(130deg,#324e3e,#1a3028);box-shadow:0 8px 24px #0002;scroll-margin-top:24px}
.fc-ticket-holding .fc-ticket-status{display:inline-flex;margin:0 0 14px;padding:6px 10px;border:1px solid #e97a7a70;border-radius:999px;background:#e5343615;font-size:12px;letter-spacing:.03em;color:#ffd8d6;font-weight:600}
.fc-ticket-holding h2{font-size:clamp(25px,3vw,34px);line-height:1.2;margin:0 0 14px;letter-spacing:-.03em}
.fc-ticket-holding p{font-size:16px;line-height:1.7;max-width:76ch}
.fc-ticket-holding .wp-block-buttons{gap:10px;margin-top:20px}
.fc-ticket-holding .wp-element-button{font-size:14px;line-height:1.4;padding:12px 18px;min-height:46px}
#ticket-updates,#visit-information,#layouts,#demonstrators,#traders,#railex-2026{scroll-margin-top:24px}
.fc-shop-ticket-note{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 16px;margin:0 0 20px;border:1px solid #68846b66;border-left:3px solid var(--fc-red,#e53436);border-radius:12px;background:#20372c;color:#e9eee2;font-size:14px;line-height:1.5}
.fc-shop-ticket-note strong{color:#fff7df;margin-right:8px}.fc-shop-ticket-note a{display:inline-flex;align-items:center;min-height:44px;color:var(--fc-amber,#ffd100);font-weight:600;text-decoration:none;white-space:nowrap}
@keyframes fc-submenu-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:600px){.fc-ticket-holding{padding:20px}.fc-ticket-holding .wp-block-button{width:100%}.fc-ticket-holding .wp-element-button{display:flex;justify-content:center;text-align:center}.fc-shop-ticket-note{align-items:flex-start;flex-direction:column;gap:3px}.fc-shop-ticket-note a{min-height:36px}}
@media(prefers-reduced-motion:reduce){nav.fc-navigation .wp-block-navigation__submenu-icon svg{transition:none}nav.fc-navigation .is-menu-open .wp-block-navigation__submenu-container{animation:none!important}}

nav.fc-navigation .fc-submenu-button{display:none}
nav.fc-navigation .is-menu-open .has-child>.wp-block-navigation__submenu-icon{display:none!important}
nav.fc-navigation .is-menu-open .has-child>.fc-submenu-button{display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-height:44px;border:1px solid #ffffff33;border-radius:9px;background:#ffffff05;color:#f3f3e8;font:inherit;font-size:24px;line-height:1;padding:0;transition:background .2s,transform .2s}
nav.fc-navigation .is-menu-open .has-child>.fc-submenu-button[aria-expanded=true]{background:#ffffff12;transform:rotate(180deg)}
nav.fc-navigation .is-menu-open .has-child[data-fc-submenu-open=false]>.wp-block-navigation__submenu-container{display:none!important}
nav.fc-navigation .is-menu-open .has-child[data-fc-submenu-open=true]>.wp-block-navigation__submenu-container{display:flex!important;flex-direction:column;opacity:1!important;visibility:visible!important;animation:fc-submenu-in .28s ease both}
nav.fc-navigation .is-menu-open .wp-block-navigation__responsive-close{height:auto!important;min-height:100dvh}
nav.fc-navigation .is-menu-open .wp-block-navigation__responsive-dialog{height:auto!important}
@media(prefers-reduced-motion:reduce){nav.fc-navigation .fc-submenu-button{transition:none!important}nav.fc-navigation .is-menu-open .has-child[data-fc-submenu-open=true]>.wp-block-navigation__submenu-container{animation:none!important}}
