.fc-topic-host{position:relative}
#categoryNavBar.fc-topic-host{overflow:visible}
.fc-topic-panel{position:absolute;top:100%;left:0;right:0;z-index:95;background:#f2f0ec;color:#1a1a1a;border-bottom:1px solid rgba(26,26,26,.14);box-shadow:0 18px 24px rgba(0,0,0,.12);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-12px);transition:opacity .28s ease,transform .38s cubic-bezier(.22,1,.36,1),visibility .38s;max-height:calc(100dvh - 150px);overflow:auto;text-align:left}
.fc-topic-panel.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
.fc-topic-inner{position:relative;display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.6fr);gap:44px;max-width:1180px;margin:0 auto;padding:34px 28px 36px}
.fc-topic-kicker{font:700 10px/1.5 Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase;color:#8c7038;margin-bottom:8px}
.fc-topic-title{font:700 28px/1.15 Georgia,serif!important;color:#1a1a1a!important;margin:0 0 12px!important;letter-spacing:-.02em!important}
.fc-topic-description{font:400 14px/1.5 Arial,sans-serif!important;color:#595955!important;margin:0 0 18px!important;max-width:320px}
.fc-topic-links{display:flex;flex-direction:column;gap:12px}
.fc-topic-links a{font:400 14px/1.4 Arial,sans-serif;color:#1a1a1a;text-decoration:none;width:fit-content;border-bottom:1px solid transparent;transition:border-color .2s}
.fc-topic-links a:hover{border-color:#b08d45}
.fc-topic-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-self:start;padding-right:18px}
.fc-topic-card{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;border-radius:16px;background:#282828;color:white;text-decoration:none}
.fc-topic-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.fc-topic-card::after{content:'';position:absolute;inset:30% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.78))}
.fc-topic-card-title{position:absolute;bottom:20px;left:20px;right:16px;z-index:1;font:700 23px/1.12 Georgia,serif;color:#fff}
.fc-topic-card:hover img{transform:scale(1.025)}
.fc-topic-close{position:absolute;right:0;top:10px;display:grid;place-items:center;width:36px;height:36px;border:0;background:transparent;color:#1a1a1a;font:400 26px/1 Arial,sans-serif;cursor:pointer}
.fc-topic-panel a:focus-visible,.fc-topic-close:focus-visible{outline:2px solid #b08d45;outline-offset:4px}
.fc-topic-host .category-item[aria-expanded="true"]{border-bottom-color:#b08d45}
@media(max-width:1199px) and (min-width:701px){#categoryNavBar.fc-topic-host .category-row{overflow-x:auto;min-width:0;justify-content:flex-start;gap:28px}}
@media(max-width:700px){.fc-topic-panel{max-height:calc(100dvh - 100px)}.fc-topic-inner{grid-template-columns:1fr;gap:22px;padding:26px 20px}.fc-topic-title{font-size:25px!important}.fc-topic-description{max-width:90%}.fc-topic-links{gap:0}.fc-topic-links a{padding:10px 0;min-height:40px}.fc-topic-cards{padding-right:0;gap:10px}.fc-topic-card{aspect-ratio:4/3;border-radius:12px}.fc-topic-card-title{font-size:18px;bottom:14px;left:14px}.fc-topic-close{right:8px;top:8px}}
@media(prefers-reduced-motion:reduce){.fc-topic-panel,.fc-topic-card img{transition:none;transform:none}}
@media(min-width:701px){#categoryNavBar.fc-topic-host .category-row{min-width:0;max-width:100%;overflow-x:auto;justify-content:safe center}}

@media(max-width:700px){#categoryNavBar .category-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;justify-items:stretch}#categoryNavBar .category-item{min-width:0;width:100%}#categoryNavBar .category-label{font-size:12px;line-height:1.35;white-space:normal}#categoryNavBar .fc-topic-panel{position:relative;top:auto;max-height:none;display:none}#categoryNavBar .fc-topic-panel.is-open{display:block}}
/* Inner pages keep the icon navigation tucked away until requested. */
.fc-services-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex:0 0 auto;border:1px solid rgba(242,240,236,.3);border-radius:12px;padding:10px 12px;background:transparent;color:#f2f0ec;font:400 13px/1 Arial,sans-serif;cursor:pointer;transition:background .2s,border-color .2s}
.fc-services-toggle>svg{width:17px;height:17px}
.fc-services-toggle .fc-services-chevron{width:12px;height:12px;transition:transform .3s}
.fc-services-toggle[aria-expanded="true"] .fc-services-chevron{transform:rotate(180deg)}
.fc-services-toggle:hover{background:rgba(242,240,236,.08);border-color:rgba(242,240,236,.65)}
.fc-services-toggle:focus-visible{outline:2px solid #b08d45;outline-offset:4px}
.fc-services-drawer{height:0;overflow:hidden;transition:height .4s cubic-bezier(.22,1,.36,1)}
.fc-services-drawer.is-settled{overflow:visible}
.fc-services-drawer #categoryNavBar{display:block!important}
.fc-topic-cards{padding-right:0}
@media(max-width:700px){.fc-services-toggle{width:38px;height:38px;padding:9px;gap:0}.fc-services-toggle span,.fc-services-toggle .fc-services-chevron{display:none}}
@media(prefers-reduced-motion:reduce){.fc-services-drawer,.fc-services-toggle .fc-services-chevron{transition:none}}

/* Only the thin top strip pushes the main navigation and page down. */
header.fc-topic-host .fc-topic-panel{position:relative;top:auto;left:auto;right:auto;height:0;max-height:none;overflow:hidden;transform:none;box-shadow:none;border-bottom:0;transition:height .4s cubic-bezier(.22,1,.36,1),opacity .28s ease,visibility .4s}
header.fc-topic-host .fc-topic-panel.is-open{transform:none}
@media(prefers-reduced-motion:reduce){header.fc-topic-host .fc-topic-panel{transition:none}}

/* The thin strip is quick navigation: respond promptly without lingering. */
header.fc-topic-host .fc-topic-panel{transition:height .22s cubic-bezier(.2,.7,.2,1),opacity .15s ease,visibility .22s}
@media(prefers-reduced-motion:reduce){header.fc-topic-host .fc-topic-panel{transition:none}}

/* Keep the opening gentle; only dismissal uses the quicker timing. */
header.fc-topic-host .fc-topic-panel.is-open{transition:height .38s cubic-bezier(.22,1,.36,1),opacity .24s ease,visibility .38s}
@media(prefers-reduced-motion:reduce){header.fc-topic-host .fc-topic-panel.is-open{transition:none}}

/* Financing retains its thin top navigation independently of preview initialization. */
@media(min-width:861px){
  #page-financing > header{top:0}
  #page-financing > header > nav.brand-worlds{display:flex!important;height:36px;min-height:36px;background:#d5d3cf}
}

/* Events rotate within the existing preview, without changing its height. */
.fc-topic-cards.fc-event-slideshow{display:block;position:relative;aspect-ratio:2.3;padding:0;margin:0 0 36px}
.fc-event-slideshow .fc-event-slide{position:absolute;inset:0;aspect-ratio:auto;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .55s ease,visibility .55s;transform:none}
.fc-event-slideshow .fc-event-slide.is-active{opacity:1;visibility:visible;pointer-events:auto}
.fc-event-slideshow .fc-topic-card img{object-position:center}
.fc-event-controls{position:absolute;top:calc(100% + 8px);left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:16px;height:28px}
.fc-event-dots,.fc-event-actions{display:flex;align-items:center;gap:4px}
.fc-event-controls button{border:0;background:transparent;color:#1a1a1a;min-width:28px;min-height:28px;padding:4px;cursor:pointer;font:20px/1 Arial,sans-serif;border-radius:6px}
.fc-event-controls button:hover{background:rgba(26,26,26,.08)}
.fc-event-controls .fc-event-dot::before{content:'';display:block;width:6px;height:6px;border-radius:50%;margin:auto;background:#1a1a1a;opacity:.25;transition:opacity .2s}
.fc-event-controls .fc-event-dot[aria-pressed="true"]::before{opacity:1}
.fc-event-controls button:focus-visible{outline:2px solid #b08d45;outline-offset:2px}
@media(max-width:700px){.fc-topic-cards.fc-event-slideshow{aspect-ratio:16/9}.fc-event-controls button{min-width:36px;min-height:36px}.fc-event-controls{height:36px}.fc-topic-cards.fc-event-slideshow{margin-bottom:44px}}
@media(prefers-reduced-motion:reduce){.fc-event-slideshow .fc-event-slide,.fc-event-dot::before{transition:none}}


.fc-topic-links a.fc-topic-recital-link{font-weight:700}

/* Crop the repeated gallery heading out of the Halloween navigation preview. */
.fc-event-slideshow .fc-event-slide img.fc-halloween-preview-image{object-position:center bottom}
@media(max-width:700px){
 .fc-event-slideshow .fc-event-slide img.fc-halloween-preview-image,
 .fc-event-slideshow .fc-event-slide:hover img.fc-halloween-preview-image{transform:scale(1.24);transform-origin:center bottom}
}

.fc-topic-card img.fc-preview-hybrid-child{object-position:left top}

.fc-topic-card img.fc-preview-why-gallery-hands{object-position:center 32%}

.fc-topic-card img.fc-preview-storage-nine{object-position:center 48%}

.fc-topic-card img.fc-preview-storage-schematic{object-fit:contain;object-position:center;background:#F2F0EC}
.fc-topic-card:hover img.fc-preview-storage-schematic{transform:none}

.fc-topic-card img.fc-preview-financing-connection{object-fit:cover;object-position:center 47%}
.fc-topic-card:hover img.fc-preview-financing-connection{transform:none}

@media(max-width:700px){
header .fc-services-toggle{width:44px;height:44px;min-width:44px;min-height:44px;padding:11px;border:0;border-radius:50%;background:transparent;box-shadow:none}
header .fc-services-toggle>svg{width:20px;height:20px}
header .fc-services-toggle:hover,header .fc-services-toggle[aria-expanded="true"]{background:rgba(242,240,236,.1);border:0}
}

/* Mobile uses the main hamburger; keep the supplementary services control on desktop. */
@media(max-width:860px){header .fc-services-toggle{display:none!important}}

#page-home .category-accordion-toggle .fc-browse-grid{width:22px;height:22px;flex:0 0 22px;color:inherit;transition:opacity .2s ease}
#page-home .category-accordion-toggle[aria-expanded="true"] .fc-browse-grid{opacity:.65}

#page-home .category-accordion-toggle .fc-browse-grid{box-sizing:border-box;width:40px;height:40px;flex-basis:40px;padding:9px;border:1px solid rgba(26,26,26,.3);border-radius:11px}

.fc-topic-card img.fc-preview-learn-to-play{object-position:center 34%}

.fc-event-next-label{position:absolute;top:14px;right:14px;z-index:2;padding:7px 11px;border-radius:6px;background:rgba(24,24,24,.9);color:#fff;font:600 11px/1.2 Arial,sans-serif;letter-spacing:.07em;text-transform:uppercase;pointer-events:none}
@media(max-width:700px){.fc-event-next-label{top:10px;right:10px;padding:6px 9px;font-size:10px}}

/* Keep the existing hover navigation reachable on desktop subpages. */
@media(min-width:861px) and (hover:hover){
 [id^="page-"]:not(#page-home) > header.fc-topic-host{top:0!important}
 [id^="page-"]:not(#page-home) > header.fc-topic-host > .brand-worlds{display:flex!important;height:36px;min-height:36px}
}

/* Preserve original desktop typography; match mobile spacing at its larger size. */
[id^="page-"] header .header-main .wordmark{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-style:normal;letter-spacing:.02em!important}
[id^="page-"] header .header-main .wordmark span{font-family:inherit;font-weight:inherit;font-style:inherit}
