/* Original transparent blue symbol with crisp live lettering. No backing boxes. */
.header .brand,.footer .footer-brand,.film-brand,.login-header .login-brand,.commerce-header .commerce-brand,.admin-brand{display:flex;align-items:center;justify-content:center;flex:none;gap:0;padding:0;border:0;background:transparent;box-shadow:none;text-decoration:none}
.fc-logo-lockup,.fc-studio-logo{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:0!important;padding:0!important;margin:0;border:0;background:transparent!important;box-shadow:none;text-align:center;line-height:1.1}
.header .brand .fc-brand-image,.footer .footer-brand .fc-brand-image,.film-brand .fc-brand-image,.login-header .login-brand .fc-brand-image,.commerce-header .commerce-brand .fc-brand-image,.admin-brand .fc-brand-image,.fc-studio-logo .fc-studio-symbol{display:block;position:static;width:72px;height:59px;max-width:none;object-fit:contain;object-position:center;transform:none;filter:none;mix-blend-mode:normal;padding:0;margin:0 0 3px;border:0;border-radius:0;background:transparent;box-shadow:none;grid-column:auto;grid-row:auto}
.fc-logo-name,.fc-studio-logo .fc-logo-name{display:block!important;font-family:Arial,Helvetica,sans-serif!important;font-size:16px!important;font-weight:700!important;letter-spacing:.015em!important;line-height:1.12!important;color:#202426;white-space:nowrap;text-shadow:none}
.fc-logo-services,.fc-studio-logo .fc-logo-services{display:block!important;font-family:Arial,Helvetica,sans-serif!important;font-size:10px!important;font-weight:600!important;letter-spacing:.22em!important;line-height:1.3!important;color:#404649;margin-top:2px;text-shadow:none}
.header .navrow{min-height:100px}.header .brand{width:134px;min-width:126px;min-height:72px;margin-block:0;margin-inline-start:26px;align-self:center}
.header .brand .fc-logo-lockup{width:100%;align-items:center;justify-content:center;text-align:center}
.header .brand .fc-brand-image{width:42px;height:34px}.header .brand .fc-logo-name{font-size:11px!important}.header .brand .fc-logo-services{font-size:7.5px!important}
.footer .footer-brand{justify-content:flex-start;width:196px;max-width:100%;grid-template-columns:none}
.footer .footer-brand .fc-brand-image{width:85px;height:70px}
.header .fc-logo-name,.footer .fc-logo-name,.film-brand .fc-logo-name,.login-header .fc-logo-name,.commerce-header .fc-logo-name,.admin-brand .fc-logo-name,.fc-studio-logo .fc-logo-name{color:#f9fbff}
.header .fc-logo-services,.footer .fc-logo-services,.film-brand .fc-logo-services,.login-header .fc-logo-services,.commerce-header .fc-logo-services,.admin-brand .fc-logo-services,.fc-studio-logo .fc-logo-services{color:#dce7f3}
.footer .footer-brand .fc-logo-name{font-size:19px!important}.footer .footer-brand .fc-logo-services{font-size:11px!important}
.film-brand .fc-brand-image{width:64px;height:53px}.film-brand .fc-logo-name{font-size:14px!important}
.login-header .login-brand .fc-brand-image{width:88px;height:72px}
.fc-studio-mark{display:block;object-fit:contain;background:transparent;border:0;border-radius:0;flex:none;filter:none}
.admin-brand .fc-brand-image{width:44px;height:36px;margin-bottom:2px}.admin-brand .fc-logo-name{font-size:12px!important}.admin-brand .fc-logo-services{font-size:8px!important;margin-top:1px}
.commerce-header .commerce-brand .fc-brand-image{width:52px;height:43px;margin-bottom:2px}.commerce-header .fc-logo-name{font-size:13px!important}.commerce-header .fc-logo-services{font-size:8px!important;margin-top:1px}
@media(max-width:1000px){.header .brand{width:120px;min-width:116px}.header .brand .fc-logo-name{font-size:11px!important}}
@media(max-width:760px){.header .navrow{min-height:88px;gap:12px}.header .brand{width:110px;min-width:106px;min-height:64px;margin-inline-start:20px}.header .brand .fc-brand-image{width:36px;height:30px}.header .brand .fc-logo-name{font-size:9.5px!important}.header .brand .fc-logo-services{font-size:7px!important}.film-brand .fc-brand-image{width:56px;height:46px}.film-brand .fc-logo-name{font-size:12px!important}.login-header .login-brand .fc-brand-image{width:76px;height:62px}}

/* Equal side columns keep the logo at the exact center of the menu bar. */
.header .navrow{display:grid;grid-template-columns:minmax(0,1fr) 116px minmax(0,1fr);gap:24px;align-items:center;position:relative}
.header .brand{grid-column:2;grid-row:1;justify-self:center;align-self:center;width:116px;min-width:0;margin:0;z-index:3}
.header .nav{display:grid;grid-column:1/-1;grid-row:1;grid-template-columns:minmax(0,1fr) 116px minmax(0,1fr);gap:24px;position:static;justify-self:stretch;width:100%;margin:0;padding:0;border:0;background:transparent;box-shadow:none;overflow:visible;max-height:none;color:#f9fbff}
.header .nav-links{display:flex;align-items:center;gap:14px;min-width:0}
.header .nav-left{grid-column:1;justify-content:flex-start}
.header .nav-right{grid-column:3;justify-content:flex-end;padding-inline-end:136px}
.header .nav .nav-links>a,.header .nav .navgroup-button{display:inline-flex;align-items:center;justify-content:flex-start;width:auto;min-height:44px;padding:12px 0;font:700 12px/1.35 Manrope,sans-serif;white-space:nowrap;color:inherit;text-decoration:none}
.header .nav .nav-links>a:hover,.header .nav .nav-links>a.active,.header .nav .navgroup-button:hover{color:#8ae6ff}
.header .nav [hidden]{display:none!important}
.header .nav .store-menu-link{gap:6px}
.header .header-cta{display:inline-flex;grid-column:3;grid-row:1;justify-self:end;align-self:center;width:120px;min-height:44px;margin:0;padding:10px 8px;font-size:12px;gap:8px;z-index:2}
.header .mobile-toggle{display:none}
@media(max-width:1180px){
 .header .navrow{grid-template-columns:minmax(0,1fr) 116px minmax(0,1fr);gap:16px}
 .header .mobile-toggle{display:flex;align-items:center;justify-content:center;grid-column:1;grid-row:1;justify-self:start;order:initial;width:44px;height:44px;padding:0;margin:0;color:#fff}
 .header .nav{display:none;position:absolute;inset:100% 0 auto;grid-column:auto;grid-row:auto;width:100%;max-height:calc(100svh - 110px);overflow:auto;overscroll-behavior:contain;padding:20px;border:1px solid #4c91e0;background:#20376b;box-shadow:0 12px 30px #07132245;z-index:5}
 .header .nav.open{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:24px}
 .header .nav-left,.header .nav-right{grid-column:auto;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;padding:0}
 .header .nav .nav-links>a,.header .nav .navgroup-button{display:flex;justify-content:space-between;width:100%;min-height:44px;padding:12px 10px;font-size:15px;white-space:normal}
 .header .nav .dropdown{min-width:0;width:100%}
}
@media(max-width:760px){
 .header .navrow{grid-template-columns:minmax(0,1fr) 98px minmax(0,1fr);gap:8px}
 .header .brand{width:98px;min-width:0;margin:0}
 .header .header-cta{width:76px;min-height:44px;padding:8px 5px;font-size:10.5px;gap:0}
 .header .header-cta>span{display:none}
 .header .nav.open{grid-template-columns:minmax(0,1fr);gap:0}
}

/* Larger original mark, bounded by the existing navigation bar. */
.header .brand{max-height:88px}.header .brand .fc-brand-image{width:56px;height:46px}.header .brand .fc-logo-name{font-size:12px!important}.header .brand .fc-logo-services{font-size:8px!important}@media(max-width:760px){.header .brand{max-height:76px}.header .brand .fc-brand-image{width:46px;height:38px}.header .brand .fc-logo-name{font-size:9.5px!important}.header .brand .fc-logo-services{font-size:7px!important}}
/* Retain the original four-column footer, centered within each column. */
.footer .footer-grid{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1.5fr);gap:40px;text-align:center}
.footer .footer-grid>div:first-child{grid-column:auto;text-align:center}
.footer .footer-grid>div:last-child{grid-column:auto}
.footer .footer-grid .footer-brand{display:flex;justify-content:center;width:196px;margin:0 auto;text-align:center}
.footer .footer-grid>div:first-child>p{max-width:350px;margin:22px auto 4px}
.footer .footer-grid p{margin-left:auto;margin-right:auto}
.footer .footnote{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:19px!important;text-align:center;padding:26px 0 30px;color:#c1d3e5}
.footer .footer-legal{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:12px 28px;max-width:100%}
.footer .footer-legal a{display:inline-block;margin:0;padding:5px 0;color:#e6f5ff;font-size:13px;line-height:1.5;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#779fc8}
.footer .footer-legal a:hover,.footer .footer-legal a:focus-visible{color:#8be5ff;text-decoration-color:currentColor}
.footer .footer-copyright{display:flex;flex-direction:column;align-items:center;gap:7px;max-width:100%;font-size:12px;line-height:1.6;color:#c1d3e5}
.footer .footer-copyright span{display:block;margin:0}
@media(max-width:1000px){.footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 24px}.footer .footer-grid>div:first-child,.footer .footer-grid>div:last-child{grid-column:auto}}
@media(max-width:600px){.footer .footer-grid{grid-template-columns:minmax(0,1fr);gap:30px}.footer .footer-legal{gap:8px 20px}}
@media(max-width:420px){.footer .footer-legal{display:grid;grid-template-columns:1fr 1fr;gap:8px 18px}.footer .footer-legal a{font-size:12px}}
/* Refined footer lockup: smaller, clear and centered in its original column. */
.footer .footer-grid .footer-brand{width:152px;margin:0 auto 0;align-items:center}.footer .footer-brand .fc-brand-image{width:48px!important;height:40px!important;object-fit:contain}.footer .footer-brand .fc-logo-name{font-size:15px!important;line-height:1.2!important}.footer .footer-brand .fc-logo-services{font-size:9px!important;line-height:1.3!important;letter-spacing:2.4px!important}.footer .footer-grid>div:first-child>p{font-size:13px;line-height:1.9;max-width:290px;margin:22px auto 4px}.footer .footer-grid h3{font-size:13px}.footer .footer-grid>div>a:not(.footer-brand){font-size:13px;line-height:1.8}.footer .footer-grid{align-items:start}.footer .footnote{border-color:#c7dcff26}
/* Lift the approved menu logo slightly within the existing header. */
.header .brand{transform:translateY(-5px)}
@media(max-width:760px){.header .brand{transform:translateY(-4px)}}

/* A quiet, accessible booking entry at the bottom of the footer menu. */
.footer .footer-grid>div>a.footer-outreach-link{display:flex;align-items:center;justify-content:center;gap:7px;max-width:220px;margin:12px auto 0;padding:11px 4px 4px;border-top:1px solid #c7dcff26;color:#d9e6f8;font-size:11px;line-height:1.5;text-decoration:none;transition:color .2s ease}
.footer .footer-outreach-link img{display:block;width:20px;height:17px;object-fit:contain;flex:none}
.footer .footer-outreach-link:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
.footer .footer-outreach-link:focus-visible{outline:2px solid #9cc9ff;outline-offset:4px;border-radius:3px}
