/**
 * Portal Modern Header Styles (Site-Agnostic)
 * Modern, responsive header with clean design
 * 
 * Uses CSS custom properties (variables) for theming:
 * - --site-primary: Main brand color (injected from Config.COLOR1)
 * - --site-secondary: Secondary brand color (injected from Config.COLOR2)
 * - --site-primary-dark: Darker variant for hover states
 * - --site-secondary-dark: Darker variant for hover states
 * 
 * These variables are injected server-side via JSP from the Config class,
 * allowing this single CSS file to work across all portal sites with
 * different branding colors.
 */

/* ============================================
   CSS VARIABLES (Design Tokens)
   ============================================ */
:root {
    /* Brand Colors - Injected from Config.COLOR1 and Config.COLOR2 via JSP */
    /* --site-primary: injected via JSP */
    /* --site-secondary: injected via JSP */
    /* --site-primary-dark: injected via JSP */
    
    /* Neutral Colors */
    --tn-white: #ffffff;
    --tn-gray-50: #f9f9f9;
    --tn-gray-100: #f5f5f5;
    --tn-gray-200: #eeeeee;
    --tn-gray-300: #dddddd;
    --tn-gray-400: #999999;
    --tn-gray-600: #666666;
    --tn-gray-800: #333333;
    --tn-gray-900: #1a1a1a;
    
    /* Spacing */
    --tn-space-xs: 0.25rem;
    --tn-space-sm: 0.5rem;
    --tn-space-md: 1rem;
    --tn-space-lg: 1.5rem;
    --tn-space-xl: 2rem;
    
    /* Typography */
    --tn-font-size-xs: 0.75rem;
    --tn-font-size-sm: 0.875rem;
    --tn-font-size-base: 1rem;
    --tn-font-size-lg: 1.125rem;
    
    /* Shadows */
    --tn-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    --tn-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    --tn-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
    
    /* Transitions */
    --tn-transition-fast: 150ms ease-in-out;
    --tn-transition-base: 250ms ease-in-out;
    --tn-transition-slow: 350ms ease-in-out;
    
    /* Z-index layers */
    --tn-z-header: 1000;
    --tn-z-dropdown: 1010;
    --tn-z-overlay: 1020;
    --tn-z-mobile-menu: 1030;
    --tn-z-search: 1040;
    
    /* Layout */
    /* --tn-container-max: injected via JSP (site-specific) */
    --tn-header-height: 120px;

    /* Header component variables (overridden in site-vars.css.jspf html.dark-mode block) */
    --header-logo-bg: transparent;
    --header-logo-radius: 0;
    --header-navbar-border: var(--site-secondary);
    --header-menu-link-bg: var(--site-secondary);
    --header-menu-link-border: transparent;
    --header-menu-link-hover-bg: var(--site-secondary-dark);
    --header-menu-link-hover-border: transparent;
    --header-dropdown-bg: var(--color-bg-elevated);
    --header-dropdown-shadow: 0 4px 20px var(--shadow-color-heavy);
    --header-dropdown-border: transparent;
    --header-dropdown-link-color: var(--site-secondary);
    --header-dropdown-divider: var(--color-border-light);
    --header-dropdown-icon-color: #999;
    --header-mega-title-color: var(--site-primary);
    --header-mega-title-border: var(--site-secondary);
    --header-mega-footer-bg: #f9f9f9;
    --header-mega-footer-border: #eee;
    --header-mega-footer-link-color: #666;
    --header-mega-footer-hover-color: var(--site-primary);
    --header-mega-footer-hover-bg: var(--color-bg-surface);
    --header-quick-link-hover-bg: rgba(255, 255, 255, 0.3);
    --header-quick-link-hover-border: rgba(255, 255, 255, 0.4);
    --header-toggle-bar-bg: var(--site-secondary);
    --header-toggle-bar-expanded-bg: var(--site-secondary);
    --header-auth-divider: var(--color-border-light);
    --header-btn-login-pad-left: var(--tn-space-lg);
}

/* ============================================
   RESET & BASE STYLES
   ============================================ */
.tn-header *,
.tn-header *::before,
.tn-header *::after {
    box-sizing: border-box;
}

.tn-header ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.tn-header a {
    text-decoration: none;
    transition: color var(--tn-transition-fast);
}

.tn-header .material-icons a {
    font-size: 24px;
    color:var(--site-primary) !important;
}

.tn-header button {
    background: none;
    border: none;
    cursor: pointer;
    font-family: inherit;
}

/* ============================================
   HEADER STRUCTURE
   ============================================ */
/* Prevent horizontal scrollbar */
html,
body {
    overflow-x: hidden;
}

/* Smooth transition for dark mode toggle — scoped to user-initiated changes only.
   The .dark-mode-toggling class is added by setTheme() / the mobile click handler
   and removed after 350ms (slightly longer than the 300ms transition duration).
   This prevents the transition from firing on every page load, which was the
   root cause of the Flash of Light Mode (FOLM). */
html.dark-mode-toggling,
html.dark-mode-toggling body {
    transition: background-color 0.3s ease, color 0.3s ease;
}

/* Fixed header for ALL screen sizes (same as mobile) */
.tn-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    /* Note: width: 100% removed - left: 0 + right: 0 already stretches to full width */
    /* Explicit width: 100% on fixed elements can cause scrollbar alignment issues */
    background: var(--color-bg-nav);
    box-shadow: 0 2px 8px var(--shadow-color-md), 
                0 4px 16px var(--shadow-color);
    z-index: var(--tn-z-header) !important;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
    transform: none !important;
    -webkit-transform: none !important;
}

/* Add body padding to compensate for fixed header */
body {
    padding-top: 95px !important; /* Approximate height: topbar (~35px) + navbar (~60px) */
}

/* Add extra padding when section-bar (sport submenu) is present */
body:has(#section-bar) {
    padding-top: 145px !important; /* topbar (~35px) + navbar (~60px) + section-bar (~50px) */
}

/* Scroll padding for hash navigation - positions anchors below the fixed header
   so linked posts are not hidden under the navbar/topbar/section-bar on load. */
html {
    scroll-padding-top: 95px; /* Default: topbar + navbar */
}
html:has(#section-bar) {
    scroll-padding-top: 135px; /* With section-bar */
}

/* When section-bar wraps to button layout (868px breakpoint), reserve more space so content is not cut off */
/* This fills the gap between 868px (when section bar gets taller) and 768px (when mobile padding kicks in) */
@media (max-width: 868px) and (min-width: 769px) {
    body:has(#section-bar) {
        padding-top: 235px !important; /* topbar + navbar + section-bar (taller wrapped button layout) */
    }
    html:has(#section-bar) {
        scroll-padding-top: 235px;
    }
}

@media (max-width: 768px) and (min-width: 481px) {
    body:has(#section-bar) {
        padding-top: 145px !important; /* topbar + navbar + section-bar (single row) */
    }
    html {
        scroll-padding-top: 110px;
    }
    html:has(#section-bar) {
        scroll-padding-top: 135px;
    }
}

/* Topbar (quick links bar) - no transition to prevent #main-content animated shift on load (fonts/icons settling) */
.tn-header__topbar {
    max-height: 50px !important;
    overflow: hidden !important;
    position: relative;
    z-index: 1;
}

/* Hide topbar on scroll down */
.tn-header__topbar.scroll-down {
    max-height: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    pointer-events: none !important;
}

/* Show topbar on scroll up */
.tn-header__topbar.scroll-up {
    max-height: 50px !important;
    pointer-events: auto !important;
}

/* Section bar scroll collapse - no transition to prevent #main-content animated shift on load */
#section-bar {
    max-height: 150px !important;
    overflow: hidden !important;
    position: relative;
    z-index: 1;
}

/* Hide section-bar on scroll down (alongside topbar) */
.tn-header__topbar.scroll-down ~ #section-bar {
    max-height: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    pointer-events: none !important;
}

/* Show section-bar on scroll up */
.tn-header__topbar.scroll-up ~ #section-bar {
    max-height: 150px !important;
    pointer-events: auto !important;
}

.tn-header__container {
    /* Use fit-content instead of fixed max-width so container sizes to its content */
    /* This ensures centering works even when content exceeds 1280px */
    width: fit-content;
    max-width: 100%; /* Prevent overflow on small screens */
    margin: 0 auto;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--tn-space-md);
}

/* ============================================
   LEGACY HEADER OVERRIDES
   (Ensures modern header works with existing markup)
   ============================================ */
#header {
    margin-top: 0;
    border-bottom: none;
    height: auto;
    float: none;
}

#logo {
    background-image: none;
    height: auto;
    width: auto;
}

/* ============================================
   MAIN NAVBAR (White bar with logo and nav buttons)
   ============================================ */
.tn-header__navbar {
    background: var(--color-bg-nav);
    border-bottom: 3px solid var(--header-navbar-border);
    /* Ensure navbar is always visible - never hide on scroll */
    transform: translateY(0) !important;
    -webkit-transform: translateY(0) !important;
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
    overflow: visible;
    position: relative;
    /* CRITICAL: Higher z-index than sibling elements (topbar, section-bar) so dropdowns appear above them */
    z-index: 100;
}

/* Prevent navbar from being affected by scroll classes */
.tn-header__navbar.scroll-down,
.tn-header__navbar.scroll-up,
.tn-header.scroll-down .tn-header__navbar,
.tn-header.scroll-up .tn-header__navbar {
    transform: translateY(0) !important;
    -webkit-transform: translateY(0) !important;
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
}

.tn-header__navbar .tn-header__container {
    gap: var(--tn-space-lg);
}

/* ============================================
   TOP BAR (Primary color quick links bar)
   ============================================ */
.tn-header__topbar {
    background: var(--site-primary);
    color: var(--tn-white);
    font-size: var(--tn-font-size-sm);
}

.tn-header__topbar .tn-header__container {
    max-width: 100%;
    padding: 6px 12px;
    gap: 12px;
    justify-content: center;
}

.tn-header__quick-links,
.tn-header__actions {
    display: flex;
    align-items: center;
}

.tn-quick-links,
.tn-action-links {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: nowrap;
}

/* Quick/action links: same style for all link states (no visited styling) */
.tn-quick-links li a,
.tn-action-links li a {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 4px 8px;
    white-space: nowrap;
    border-radius: 3px;
    transition: all var(--tn-transition-fast);
    color: var(--tn-white) !important;
    background: rgba(255, 255, 255, 0.15);
    border: 1px solid rgba(255, 255, 255, 0.25);
    font-weight: 600;
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.2px;
}

.tn-quick-links li a svg,
.tn-action-links li a svg {
    fill: var(--color-text-on-primary) !important;
    color: var(--color-text-on-primary) !important;
    display: block;
    flex-shrink: 0;
    width: 18px;
    height: 18px;
}

/* Icon-only links (social, Advertise): prevent SVG baseline drop so they align with text+icon buttons */
.tn-action-links li a:has(svg:only-child) {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}
.tn-action-links li a:has(svg:only-child) svg {
    display: block !important;
    align-self: center !important;
}

/* Upgrade link */
.tn-quick-links li.tn-upgrade-link a,
.tn-action-links li.tn-upgrade-link a {
    color: var(--site-primary) !important;
}

.tn-quick-links li a:hover,
.tn-action-links li a:hover {
    background: var(--header-quick-link-hover-bg);
    border-color: var(--header-quick-link-hover-border);
    transform: translateY(-1px);
    text-decoration: none;
    color: var(--color-text-on-primary);
}

/* Shop Link - Icon accent only */
/*
li.tn-shop-link a svg {
    fill: var(--site-secondary) !important;
}*/

/* Upgrade Link - Highlighted */
.tn-action-links .tn-upgrade-link a {
    background: var(--color-bg-surface) !important;
    color: var(--site-primary) !important;
    border-color: var(--color-bg-surface) !important;
    font-weight: 700;
}

.tn-action-links .tn-upgrade-link a svg {
    fill: var(--site-primary) !important;
}

.tn-action-links .tn-upgrade-link a:hover {
    background: var(--color-bg-light) !important;
    color: var(--site-primary) !important;
    transform: translateY(-1px);
}

.tn-upgrade-icon {
    font-size: 1em;
}

@keyframes pulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.1); }
}

/* ============================================
   LOGO
   ============================================ */
.tn-header__logo {
    flex-shrink: 0;
    padding: var(--tn-space-sm) var(--tn-space-md);
    margin-right: 0;
    min-height: 46px;
    background-color: var(--header-logo-bg);
    border-radius: var(--header-logo-radius);
}

.tn-header__logo img {
    display: block;
    height: auto;
    transition: transform var(--tn-transition-fast);
    color: transparent; /* Hide alt text while image loads */
    filter: var(--logo-filter);
}

.tn-header__logo a:hover img {
    transform: scale(1.02);
}

/* User avatar - hide alt text while image loads */
.tn-user-avatar-modern {
    color: transparent;
}

/* ============================================
   AUTH BUTTONS - Ensure never clipped
   ============================================ */
.tn-auth-buttons {
    flex-shrink: 0; /* Never shrink - logo should shrink first */
}

/* ============================================
   MOBILE MENU TOGGLE (Hamburger)
   ============================================ */
.tn-menu-toggle {
    display: none;
    flex-direction: column;
    gap: 5px;
    padding: var(--tn-space-sm);
    cursor: pointer;
    z-index: calc(var(--tn-z-mobile-menu) + 1);
}

.tn-menu-toggle__bar {
    width: 26px;
    height: 3px;
    background: var(--header-toggle-bar-bg);
    border-radius: 2px;
    transition: all var(--tn-transition-base);
    pointer-events: none;
}

.tn-menu-toggle[aria-expanded="true"] .tn-menu-toggle__bar:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
    background: var(--header-toggle-bar-expanded-bg);
}

.tn-menu-toggle[aria-expanded="true"] .tn-menu-toggle__bar:nth-child(2) {
    opacity: 0;
}

.tn-menu-toggle[aria-expanded="true"] .tn-menu-toggle__bar:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg);
    background: var(--header-toggle-bar-expanded-bg);
}

/* Dark mode: hamburger bars orange (site primary) on dark header */
html.dark-mode .tn-menu-toggle .tn-menu-toggle__bar {
    background: var(--site-primary) !important;
}
html.dark-mode .tn-menu-toggle[aria-expanded="true"] .tn-menu-toggle__bar:nth-child(1),
html.dark-mode .tn-menu-toggle[aria-expanded="true"] .tn-menu-toggle__bar:nth-child(3) {
    background: var(--site-primary) !important;
}

/* Dark mode: topbar (quick links bar) — muted dark orange instead of harsh full-brightness orange */
html.dark-mode .tn-header__topbar {
    background: var(--dm-premium-bg-end) !important;
    border-top: none !important;
}

/* Dark mode: remove orange border-bottom under the navbar — topbar color provides separation */
html.dark-mode .tn-header__navbar {
    border-bottom: none !important;
}

/* Dark mode menu dropdown readability:
   keep link text visible, even when global dark-mode link rules or accent hovers apply. */
html.dark-mode .tn-dropdown__content a,
html.dark-mode .tn-dropdown__content a:link,
html.dark-mode .tn-dropdown__content a:visited {
    color: var(--dm-text-primary, #e0e0e0) !important;
    font-size: var(--tn-font-size-sm) !important;
}
html.dark-mode .tn-dropdown__content a:hover,
html.dark-mode .tn-dropdown__content a:focus,
html.dark-mode .tn-dropdown__content a:active {
    color: #fff !important;
}
html.dark-mode .tn-dropdown__content a:hover svg,
html.dark-mode .tn-dropdown__content a:focus svg,
html.dark-mode .tn-dropdown__content a:hover .material-icons,
html.dark-mode .tn-dropdown__content a:focus .material-icons {
    fill: #fff !important;
    color: #fff !important;
}

/* Dark mode: upgrade chip uses elevated surface; navy primary on dark purple = illegible — use dm accent */
html.dark-mode .tn-quick-links li.tn-upgrade-link a,
html.dark-mode .tn-action-links li.tn-upgrade-link a {
    background: var(--color-bg-surface) !important;
    border-color: var(--color-bg-surface) !important;
    color: var(--dm-accent-text) !important;
}
html.dark-mode .tn-quick-links li.tn-upgrade-link a svg,
html.dark-mode .tn-action-links li.tn-upgrade-link a svg {
    fill: var(--dm-accent-text) !important;
}
html.dark-mode .tn-quick-links li.tn-upgrade-link a:hover,
html.dark-mode .tn-action-links li.tn-upgrade-link a:hover {
    background: #eee !important;
    color: var(--site-primary) !important;
}
html.dark-mode .tn-quick-links li.tn-upgrade-link a:hover svg,
html.dark-mode .tn-action-links li.tn-upgrade-link a:hover svg {
    fill: var(--site-primary) !important;
}

/* ============================================
   MAIN MENU
   ============================================ */
.tn-header__nav {
    flex: 1;
    display: flex;
    justify-content: center;
    position: relative;
    overflow: visible;
}

.tn-main-menu {
    display: flex;
    align-items: center;
    gap: var(--tn-space-sm);
    flex: 1;
}

.tn-menu-item {
    position: relative;
    flex: 0 0 auto;
}

.tn-menu-link {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 97px;
    padding: calc(var(--tn-space-sm) - 1px) var(--tn-space-sm) calc(var(--tn-space-sm) + 1px);
    color: var(--tn-white) !important;
    font-weight: 600;
    font-size: var(--tn-font-size-base);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: geometricPrecision;
    text-shadow: 0 0 0.5px rgba(255, 255, 255, 0.3);
    /* Note: Removed backface-visibility and translateZ(0) - they create GPU layers causing text jitter */
    border-radius: 4px;
    transition: all var(--tn-transition-fast);
    position: relative;
    text-transform: uppercase;
    background: var(--header-menu-link-bg);
    border: 1px solid var(--header-menu-link-border);
}

.tn-menu-link::after {
    display: none;
}

/* Nav menu links: same style for all link states */
.tn-menu-link {
    color: var(--tn-white) !important;
}

.tn-menu-link:hover,
.tn-menu-link:active,
.tn-menu-link:focus {
    color: var(--tn-white) !important;
    background: var(--header-menu-link-hover-bg);
    border-color: var(--header-menu-link-hover-border);
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
    text-decoration: none;
}

/* Menu button turns orange when dropdown is open */
.tn-menu-item--has-dropdown:hover .tn-menu-link,
.tn-menu-item--has-dropdown:focus-within .tn-menu-link {
    background: var(--site-primary) !important;
    border-color: var(--site-primary);
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

/* ============================================
   DROPDOWN MENUS
   ============================================ */
.tn-dropdown {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    margin-top: var(--tn-space-md);
    background: var(--header-dropdown-bg);
    border-radius: 8px;
    box-shadow: var(--header-dropdown-shadow);
    border: 1px solid var(--header-dropdown-border);
    border-top: 3px solid var(--site-primary);
    opacity: 0;
    visibility: hidden;
    transition: all var(--tn-transition-base);
    z-index: var(--tn-z-dropdown);
    min-width: 240px;
}

.tn-menu-item:hover .tn-dropdown,
.tn-menu-item:focus-within .tn-dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0);
}

/* Shift dropdown left when it would overflow the viewport */
.tn-dropdown--shift-left {
    left: auto !important;
    right: 0 !important;
    transform: translateX(0) !important;
}

.tn-menu-item:hover .tn-dropdown--shift-left,
.tn-menu-item:focus-within .tn-dropdown--shift-left {
    transform: translateX(0) translateY(0) !important;
}

.tn-dropdown__content {
    display: flex;
    flex-direction: column;
    padding: var(--tn-space-sm);
}

/* Menu links: same style for all link states */
.tn-dropdown__content a {
    padding: var(--tn-space-md) var(--tn-space-lg);
    color: var(--header-dropdown-link-color) !important;
    border-radius: 6px;
    transition: all var(--tn-transition-fast);
    font-size: var(--tn-font-size-sm);
    text-decoration: none !important;
}

.tn-dropdown__content a:hover {
    background: var(--site-primary);
    color: var(--tn-white) !important;
    transform: translateX(4px);
    text-decoration: none !important;
}

.tn-dropdown__divider {
    height: 1px;
    background: var(--header-dropdown-divider);
    margin: var(--tn-space-sm) var(--tn-space-md);
}

/* Icon Links for Dropdowns */
.tn-dropdown__icon-link {
    display: flex !important;
    align-items: center;
    gap: 10px;
}

.tn-dropdown__icon-link svg {
    flex-shrink: 0;
    fill: var(--header-dropdown-icon-color);
    transition: fill var(--tn-transition-fast);
}

.tn-dropdown__icon-link:hover svg {
    fill: var(--tn-white) !important;
}

/* Icon Links in Mega Menu Columns */
.tn-dropdown__mega-col .tn-dropdown__icon-link {
    display: flex !important;
    align-items: center;
    gap: 8px;
}

.tn-dropdown__mega-col .tn-dropdown__icon-link svg {
    flex-shrink: 0;
    fill: var(--header-dropdown-icon-color);
    transition: fill var(--tn-transition-fast);
}

.tn-dropdown__mega-col .tn-dropdown__icon-link:hover svg {
    fill: var(--tn-white) !important;
}

/* Material Icons in Dropdowns */
.tn-dropdown__icon-link .material-icons {
    font-size: 18px !important;
    color: var(--header-dropdown-icon-color);
    transition: color var(--tn-transition-fast);
    /* Override any fallback styling from page-level CSS */
    background-color: transparent !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    width: auto !important;
    min-width: auto !important;
    height: auto !important;
}

.tn-dropdown__icon-link:hover .material-icons {
    color: var(--tn-white) !important;
    background-color: transparent !important;
    background: transparent !important;
}

.tn-dropdown__mega-col .tn-dropdown__icon-link .material-icons {
    font-size: 16px !important;
    /* Override any fallback styling from page-level CSS */
    background-color: transparent !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
}

/* Rotated softball icon */
.icon-softball {
    transform: rotate(45deg);
}

/* CTA Button in Dropdown */
a.tn-dropdown__cta,
a.tn-dropdown__cta:active {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin: var(--tn-space-sm) var(--tn-space-sm) var(--tn-space-xs) !important;
    padding: var(--tn-space-md) var(--tn-space-lg) !important;
    background: var(--site-primary) !important;
    color: var(--color-text-on-primary) !important;
    border-radius: 6px !important;
    font-weight: 700;
    text-align: center;
    line-height: 1.6;
    transition: all var(--tn-transition-fast);
}

a.tn-dropdown__cta svg {
    fill: var(--color-text-on-primary);
    flex-shrink: 0;
}

a.tn-dropdown__cta .material-icons {
    color: var(--color-text-on-primary) !important;
}

a.tn-dropdown__cta:hover {
    background: var(--site-secondary) !important;
    color: var(--color-text-on-secondary) !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

.tn-dropdown__label {
    font-weight: 700;
    color: var(--site-primary);
    font-size: var(--tn-font-size-xs);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: var(--tn-space-sm) var(--tn-space-lg);
}

.tn-dropdown__label:hover {
    background: transparent !important;
    transform: none !important;
}

/* Mega Menu */
.tn-dropdown--mega {
    min-width: 680px;
}

.tn-dropdown--mega-boards {
    min-width: 900px;
}

.tn-dropdown__mega-grid {
    display: grid;
    grid-template-columns: minmax(175px, 1fr) minmax(155px, 1fr) minmax(165px, 1fr);
    gap: var(--tn-space-lg);
    padding: var(--tn-space-lg);
}

.tn-dropdown__mega-grid--boards {
    grid-template-columns: minmax(170px, 1fr) minmax(150px, 1fr) minmax(180px, 1fr) minmax(160px, 1fr);
    gap: var(--tn-space-md);
}

.tn-dropdown__mega-col {
    display: flex;
    flex-direction: column;
}

/* Column headers (Basketball, Baseball, Premium Boards, General, etc.): site primary */
.tn-dropdown__mega-title {
    font-weight: 700;
    color: var(--site-primary) !important;
    font-size: var(--tn-font-size-base);
    margin-bottom: var(--tn-space-md);
    padding-bottom: var(--tn-space-sm);
    text-align: center;
    border-bottom: 2px solid var(--header-mega-title-border);
    text-decoration: none;
    display: block;
}

a.tn-dropdown__mega-title {
    cursor: pointer;
    transition: all var(--tn-transition-fast);
    padding-bottom: var(--tn-space-sm) !important;
}

a.tn-dropdown__mega-title,
a.tn-dropdown__mega-title:active {
    color: var(--site-primary) !important;
    background: transparent !important;
    transform: none !important;
}

a.tn-dropdown__mega-title:hover {
    color: var(--site-primary) !important;
    background: transparent !important;
    border-bottom-color: var(--header-mega-title-border) !important;
    text-decoration: none;
    transform: none !important;
}

/* Featured Title Button (e.g. TIGER BOARDS): single line, white text + icon */
a.tn-dropdown__mega-title--featured {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 1.1em !important;
    font-weight: 800 !important;
    background: var(--site-primary) !important;
    color: var(--tn-white) !important;
    padding: var(--tn-space-sm) var(--tn-space-lg) !important;
    border-radius: 6px !important;
    margin-bottom: var(--tn-space-sm) !important;
    border-bottom: none !important;
    letter-spacing: 0.3px;
    white-space: nowrap;
}

a.tn-dropdown__mega-title--featured,
a.tn-dropdown__mega-title--featured:active {
    color: var(--tn-white) !important;
}

a.tn-dropdown__mega-title--featured .material-icons {
    color: var(--tn-white) !important;
    font-size: 18px;
}

a.tn-dropdown__mega-title--featured .tn-dropdown__featured-icon,
.tn-dropdown__mega-col a.tn-dropdown__mega-title--featured .tn-dropdown__featured-icon {
    flex-shrink: 0;
    color: var(--site-primary) !important;
    fill: currentColor !important;
    width: 18px;
    height: 18px;
}

a.tn-dropdown__mega-title--featured:hover .tn-dropdown__featured-icon,
.tn-dropdown__mega-col a.tn-dropdown__mega-title--featured:hover .tn-dropdown__featured-icon {
    color: #ffffff !important;
    fill: currentColor !important;
}

html.dark-mode a.tn-dropdown__mega-title--featured .tn-dropdown__featured-icon,
html.dark-mode .tn-dropdown__mega-col a.tn-dropdown__mega-title--featured .tn-dropdown__featured-icon,
html.dark-mode a.tn-dropdown__mega-title--featured:hover .tn-dropdown__featured-icon,
html.dark-mode .tn-dropdown__mega-col a.tn-dropdown__mega-title--featured:hover .tn-dropdown__featured-icon {
    color: #ffffff !important;
    fill: currentColor !important;
}

a.tn-dropdown__mega-title--featured:hover {
    background: var(--site-primary) !important;
    color: var(--tn-white) !important;
    border-bottom: none !important;
}

a.tn-dropdown__mega-title--featured:hover .material-icons {
    color: var(--tn-white) !important;
}

/* Boards mega menu spotlight for Amphitheatre category */
a.tn-dropdown__mega-title--amphitheatre {
    font-weight: 800 !important;
    color: var(--site-primary) !important;
    background: rgba(247, 119, 35, 0.12) !important;
    letter-spacing: 0.2px;
}

.tn-dropdown__mega-col a.tn-dropdown__mega-title--amphitheatre,
.tn-dropdown__mega-col a.tn-dropdown__mega-title--amphitheatre:link,
.tn-dropdown__mega-col a.tn-dropdown__mega-title--amphitheatre:visited,
.tn-dropdown__mega-col a.tn-dropdown__mega-title--amphitheatre:active {
    color: var(--site-primary) !important;
    background: rgba(247, 119, 35, 0.12) !important;
    transform: none !important;
}

.tn-dropdown__mega-col a.tn-dropdown__mega-title--amphitheatre:hover {
    color: var(--tn-white) !important;
    background: var(--site-primary) !important;
    border-bottom-color: rgba(255, 255, 255, 0.4) !important;
}

/* Mega menu column links: same style for all link states */
.tn-dropdown__mega-col a {
    padding: var(--tn-space-sm) var(--tn-space-md);
    color: var(--header-dropdown-link-color) !important;
    border-radius: 4px;
    transition: all var(--tn-transition-fast);
    font-size: var(--tn-font-size-sm);
}

/* Featured mega title (e.g. TIGER BOARDS): white color wins over .tn-dropdown__mega-col a */
.tn-dropdown__mega-col a.tn-dropdown__mega-title--featured,
.tn-dropdown__mega-col a.tn-dropdown__mega-title--featured:active,
.tn-dropdown__mega-col a.tn-dropdown__mega-title--featured:hover {
    color: var(--tn-white) !important;
}

.tn-dropdown__mega-col a.tn-dropdown__mega-title--featured .material-icons {
    color: var(--tn-white) !important;
}

/* Link hover: primary background, white text and icons */
.tn-dropdown__mega-col a:hover {
    background: var(--site-primary) !important;
    color: var(--tn-white) !important;
    transform: translateX(4px);
    text-decoration: none !important;
}

/* Mega title links (Premium Boards, General, etc.): site primary + title underline, not column link color */
.tn-dropdown__mega-col a.tn-dropdown__mega-title,
.tn-dropdown__mega-col a.tn-dropdown__mega-title:link,
.tn-dropdown__mega-col a.tn-dropdown__mega-title:visited,
.tn-dropdown__mega-col a.tn-dropdown__mega-title:active {
    color: var(--site-primary) !important;
    background: transparent !important;
    border-bottom: 2px solid var(--header-mega-title-border);
    border-bottom-color: var(--header-mega-title-border) !important;
    transform: none !important;
    text-decoration: none !important;
}

/* Mega title links hover: primary background, white text */
.tn-dropdown__mega-col a.tn-dropdown__mega-title:hover {
    color: var(--tn-white) !important;
    background: var(--site-primary) !important;
    border-bottom-color: rgba(255, 255, 255, 0.4) !important;
    text-decoration: none !important;
}

.tn-dropdown__mega-col .tn-dropdown__icon-link:hover,
.tn-dropdown__mega-col .tn-dropdown__icon-link:hover .material-icons {
    color: var(--tn-white) !important;
}

.tn-dropdown__mega-col .tn-dropdown__icon-link:hover svg {
    fill: var(--tn-white) !important;
}

/* CTA inside Mega Menu columns */
.tn-dropdown__mega-col a.tn-dropdown__cta,
.tn-dropdown__mega-col a.tn-dropdown__cta:active {
    color: var(--color-text-on-primary) !important;
    background: var(--site-primary) !important;
    line-height: 1.6 !important;
}

.tn-dropdown__mega-col a.tn-dropdown__cta:hover {
    background: var(--site-secondary) !important;
    color: var(--color-text-on-secondary) !important;
    transform: translateY(-2px);
}

/* Mega Menu Footer */
.tn-dropdown__mega-footer {
    display: flex;
    justify-content: center;
    gap: var(--tn-space-lg);
    padding: var(--tn-space-md) var(--tn-space-lg);
    border-top: 1px solid var(--header-mega-footer-border);
    background: var(--header-mega-footer-bg);
    border-radius: 0 0 8px 8px;
}

/* Mega footer links: same style for all link states */
.tn-dropdown__mega-footer a {
    align-items: center;
    border-radius: 4px;
    color: var(--header-mega-footer-link-color) !important;
    display: inline-flex;
    font-size: var(--tn-font-size-sm);
    gap: 6px;
    padding: var(--tn-space-xs) var(--tn-space-sm);
    transition: all var(--tn-transition-fast);
}

.tn-dropdown__mega-footer a:hover {
    color: var(--header-mega-footer-hover-color);
    background: var(--header-mega-footer-hover-bg);
    text-decoration: none;
}

.tn-dropdown__mega-footer a .material-icons {
    font-size: 18px !important;
    line-height: 1;
    margin: 0 !important;
    vertical-align: middle;
}

.tn-dropdown__mega-footer a.tn-dropdown__mega-footer-myfeed,
.tn-dropdown__mega-footer a.tn-dropdown__mega-footer-myfeed:active {
    align-items: center;
    background: #ff7a1a !important;
    border-radius: 999px;
    color: #fff !important;
    display: inline-flex;
    font-weight: 800;
    gap: 5px;
    letter-spacing: 0.01em;
    padding: 6px 10px;
}

.tn-dropdown__mega-footer a.tn-dropdown__mega-footer-myfeed .material-icons {
    color: #fff !important;
    font-size: 18px !important;
    line-height: 1;
    margin: 0 !important;
    vertical-align: middle;
}

.tn-dropdown__mega-footer a.tn-dropdown__mega-footer-myfeed:hover {
    background: #f06a00 !important;
    color: #fff !important;
}

.tn-dropdown__mega-footer-new {
    align-items: center;
    background: rgba(255, 255, 255, 0.24);
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 0.05em;
    line-height: 1;
    padding: 3px 5px 2px;
    text-transform: uppercase;
}

.tn-dropdown__mega-footer-more {
    color: var(--site-primary) !important;
    font-weight: 700 !important;
}

.tn-dropdown__mega-footer-more:hover {
    color: var(--tn-white) !important;
    background: var(--site-primary) !important;
}

.tn-dropdown__mega-footer-more:hover svg,
.tn-dropdown__mega-footer-more:hover .material-icons {
    fill: var(--tn-white);
    color: var(--tn-white) !important;
}

/* Material icons on site-primary button/link backgrounds: always white */
a.tn-dropdown__cta .material-icons,
.tn-dropdown__mega-col a.tn-dropdown__cta .material-icons,
.tn-dropdown__mega-footer-more:hover .material-icons,
a.tn-dropdown__mega-title--featured .material-icons,
.tn-dropdown__mega-col a.tn-dropdown__mega-title--featured .material-icons,
.tn-dropdown__content a:hover .material-icons,
.tn-dropdown__mega-col a:hover .material-icons,
.tn-btn--secondary:hover .material-icons {
    color: var(--tn-white) !important;
}

/* ============================================
   USER MENU
   ============================================ */
.tn-header__user {
    flex-shrink: 0;
    padding-right: 16px;
}

.tn-user-menu {
    position: relative;
}

.tn-user-button {
    display: flex;
    align-items: center;
    gap: var(--tn-space-sm);
    padding: var(--tn-space-sm) var(--tn-space-md);
    border-radius: 24px;
    background: var(--tn-gray-50);
    transition: all var(--tn-transition-fast);
    cursor: pointer;
    border: 1px solid var(--tn-gray-200);
}

.tn-user-button:hover {
    background: var(--tn-gray-100);
    box-shadow: var(--tn-shadow-sm);
    border-color: var(--tn-gray-300);
}

.tn-user-avatar {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid var(--site-secondary);
}

.tn-user-avatar--default {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--site-secondary);
    color: var(--tn-white);
}

.tn-user-name {
    font-weight: 600;
    color: var(--tn-gray-800);
    font-size: var(--tn-font-size-sm);
    max-width: 120px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.tn-user-arrow {
    transition: transform var(--tn-transition-fast);
    color: var(--tn-gray-600);
}

.tn-user-button[aria-expanded="true"] .tn-user-arrow {
    transform: rotate(180deg);
}

.tn-dropdown--user {
    right: 0;
    left: auto;
    transform: translateX(0);
}

.tn-user-menu:hover .tn-dropdown--user,
.tn-user-menu:focus-within .tn-dropdown--user,
.tn-dropdown--user.active {
    opacity: 1;
    visibility: visible;
    transform: translateX(0) translateY(0);
}

/* ============================================
   AUTH BUTTONS
   ============================================ */
.tn-auth-buttons {
    display: flex;
    align-items: center;
    gap: var(--tn-space-sm);
    margin-left: var(--tn-space-md);
    padding-left: var(--tn-space-lg);
    position: relative;
}

/* Subtle vertical divider */
.tn-auth-buttons::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    height: 24px;
    width: 1px;
    background: var(--header-auth-divider);
}

.tn-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: calc(var(--tn-space-sm) - 1px) var(--tn-space-lg) calc(var(--tn-space-sm) + 1px);
    border-radius: 4px;
    font-weight: 700;
    font-size: var(--tn-font-size-base);
    /*transition: all var(--tn-transition-fast);*/
    white-space: nowrap;
    text-transform: uppercase;
}

.tn-btn--primary {
    background: var(--site-secondary);
    color: var(--tn-white) !important;
}

.tn-btn--primary:hover,
.tn-btn--primary:active {
    color: var(--tn-white) !important;
}

.tn-btn--primary:hover {
    background: var(--site-secondary-dark);
    transform: translateY(-1px);
    box-shadow: var(--tn-shadow-md);
    text-decoration: none;
}

.tn-btn--secondary {
    background: transparent;
    color: var(--site-primary);
    border: 2px solid var(--site-primary);
}

.tn-btn--secondary:hover {
    background: var(--site-primary);
    color: var(--tn-white) !important;
    text-decoration: none;
}

/* ============================================
   SECTION BAR (Sport-specific submenu)
   ============================================ */
#section-bar {
    background-color: var(--site-secondary);
    /* Gradient overlay that darkens any base color - works for all site themes */
    background: 
        linear-gradient(135deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.25) 100%),
        var(--site-secondary);
    box-shadow: 0 2px 4px var(--shadow-color-md);
    padding: 0 10px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 0;
    /* Message board / sport submenu: all text and links on secondary background */
    color: var(--color-text-on-secondary);
}

#section-bar a {
    color: var(--color-text-on-secondary) !important;
}

#section-title,
.section-title {
    /*background-color: var(--site-secondary) !important;*/
    font-family: 'Black Ops One', cursive;
    font-size: 30px;
    font-weight: normal;
    color: var(--color-text-on-secondary);
    padding: 4px 10px;
    margin: 0;
    display: flex;
    align-items: center;
    white-space: nowrap;
}

#section-title a,
.section-title a { 
    color: var(--color-text-on-secondary); 
}


#section-menu-c {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    color: var(--color-text-on-secondary);
    font-size: 15px;
    margin-left: 8px;
    gap: 4px 6px;
    padding: 0;
    line-height: 1;
}

.section-bar-item {
    border-radius: 4px;
    white-space: nowrap;
    transition: background-color 0.15s ease;
    line-height: 1;
}

.section-bar-item:hover {
    background-color: var(--site-primary);
}

/* Padding on link so whole button is clickable and link stays in flow (sizing stays correct) */
.section-bar-item a {
    color: var(--color-text-on-secondary) !important;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px 12px;
    border-radius: inherit;
}

.section-bar-item a:hover {
    text-decoration: none !important;
}

/* Keep active/selected button same size as others: padding lives on the link only.
   Page-level CSS adds background to the span; override any span padding so we don't get double padding. */
#section-bar .section-bar-item.menu-news,
#section-bar .section-bar-item.menu-schedule,
#section-bar .section-bar-item.menu-roster,
#section-bar .section-bar-item.menu-staff,
#section-bar .section-bar-item.menu-portal,
#section-bar .section-bar-item.menu-depth-chart,
#section-bar .section-bar-item.menu-scholarships,
#section-bar .section-bar-item.menu-future-schedules,
#section-bar .section-bar-item.menu-stats,
#section-bar .section-bar-item.menu-signees,
#section-bar .section-bar-item.menu-commits,
#section-bar .section-bar-item.menu-offers,
#section-bar .section-bar-item.menu-leaderboards,
#section-bar .section-bar-item.menu-coins,
#section-bar .section-bar-item.menu-potd,
#section-bar .section-bar-item.menu-faq,
#section-bar .section-bar-item.menu-donor,
#section-bar .section-bar-item.menu-general,
#section-bar .section-bar-item[class*="menu-targets"] {
    padding: 0 !important;
}

/* Section bar responsive adjustments */
@media (max-width: 1106px) {
    #section-title,
    .section-title {
        font-size: 22px;
        padding: 6px 8px;
    }
    
    #section-menu-c {
        font-size: 14px;
    }
    
    .section-bar-item a {
        padding: 7px 10px;
    }
    
    /* Hide shop link extended text - show only "GEAR" */
    .tn-shop-link .desktop-only {
        display: none !important;
    }
}

@media (max-width: 970px) {
    #section-bar {
        padding: 0;
    }
    
    #section-title,
    .section-title {
        font-size: 20px;
        padding: 6px;
    }
    
    #section-menu-c {
        font-size: 13px;
        margin-left: 5px;
        gap: 4px;
    }
    
    .section-bar-item a {
        padding: 6px 8px;
    }
    
    /* Hide year on commits/offers to save space on mobile */
    #section-bar .year-on-desktop {
        display: none !important;
    }
    
    /* Hide social icons from quick links */
    .tn-action-links li:has(a[href*="twitter.com"]),
    .tn-action-links li:has(a[href*="facebook.com"]),
    .tn-action-links li:has(a[href*="instagram.com"]) {
        display: none !important;
    }
}

@media (max-width: 868px) {
    #section-bar {
        padding: 6px 5px;
        gap: 5px;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
    }
    
    #section-title {
        font-size: 20px;
        padding: 4px 4px 4px 6px;
        white-space: nowrap;
    }
    
    #section-menu-c {
        font-size: 12px;
        gap: 5px;
        margin-left: 0;
        justify-content: center;
        width: 100%;
        padding: 4px 0;
    }
    
    /* Hide staff/stats on smaller screens */
    .section-bar-item.desktop,
    .section-bar-item.menu-staff,
    .section-bar-item.menu-stats {
        display: none !important;
    }
    
    /* Abbreviate text */
    .section-bar-item.menu-portal a,
    .section-bar-item.menu-depth-chart a {
        font-size: 0 !important;
        line-height: 0;
    }
    .section-bar-item.menu-portal a::after {
        content: "PORTAL";
        font-size: 0.65rem !important;
        line-height: normal;
    }
    .section-bar-item.menu-depth-chart a::after {
        content: "DEPTH";
        font-size: 0.65rem !important;
        line-height: normal;
    }
    
    /* Hide year on commits/offers to save space on mobile */
    #section-bar .year-on-desktop {
        display: none !important;
    }
    
    /* Button-style section bar items - 44px min tap target */
    .section-bar-item {
        min-height: 30px;
        display: flex;
        align-items: center;
        justify-content: center;
        background: rgba(255, 255, 255, 0.15);
        border: 1px solid rgba(255, 255, 255, 0.25);
        border-radius: 4px;
        font-weight: 600;
        text-transform: uppercase;
        font-size: 0.65rem;
        letter-spacing: 0.3px;
        box-sizing: border-box;
    }
    
    .section-bar-item:hover,
    .section-bar-item:active {
        background: rgba(255, 255, 255, 0.3);
        border-color: rgba(255, 255, 255, 0.4);
    }
    
    .section-bar-item a {
        padding: 8px 12px;
        min-height: 30px;
        font-size: inherit !important;
    }
    
    /* Board/recruiting section bars need more body padding (more items = wraps to two rows) */
    body:has(#section-bar .menu-leaderboards) {
        padding-top: 140px !important;
    }

    body:has(#section-bar .menu-signees) {
        padding-top: 145px !important;
    }
}


/*
@media (max-width: 700px) {
    #section-bar {
        padding: 6px 8px;
    }
    
    #section-title,
    .section-title {
        font-size: 18px;
        padding: 4px 5px;
        flex-shrink: 0;
    }
    
    #section-menu-c {
        gap: 4px 3px;
        width: 100%;
        justify-content: flex-start;
        margin-left: 0;
        margin-top: 4px;
    }
    
    .section-bar-item {
        padding: 5px 7px;
    }
}
    */

/* ============================================
   MOBILE OVERLAY
   ============================================ */
.tn-mobile-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
    z-index: var(--tn-z-overlay);
    opacity: 0;
    visibility: hidden;
    transition: opacity var(--tn-transition-base), visibility var(--tn-transition-base);
}

.tn-mobile-overlay.active {
    opacity: 1;
    visibility: visible;
}

/* ============================================
   SKIP LINK (Accessibility)
   ============================================ */
.tn-skip-link {
    position: absolute;
    left: -9999px;
    top: 0;
    z-index: var(--z-skip, 1100);
    padding: 12px 16px;
    background: var(--site-primary, #522d80);
    color: #fff;
    text-decoration: none;
    border-radius: 6px;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.25);
}

.tn-skip-link:focus,
.tn-skip-link:focus-visible {
    position: fixed !important;
    top: 10px !important;
    left: 10px !important;
    z-index: var(--z-skip, 1100);
}

/* ============================================
   RESPONSIVE DESIGN - Desktop Optimizations
   ============================================ */

/* Desktop: 1280px-1410px */
@media (max-width: 1410px) {
    .tn-header__navbar .tn-header__container {
        gap: var(--tn-space-sm);
        padding: 0 var(--tn-space-sm); /* Keep padding symmetric for proper centering */
    }
    
    .tn-header__logo {
        padding: var(--tn-space-xs) var(--tn-space-sm);
        margin-right: 0;
    }
    
    .tn-header__logo img {
        width: 225px;
        height: auto;
    }
    
    .tn-main-menu {
        gap: var(--tn-space-xs);
    }
    
    .tn-menu-link {
        padding: var(--tn-space-sm) var(--tn-space-md);
        font-size: 0.875rem;
        min-width: 90px;
    }
    
    .tn-user-button {
        padding: var(--tn-space-xs) var(--tn-space-sm);
    }
    
    .tn-user-name {
        max-width: 80px;
    }
    
    .tn-btn {
        padding: 6px 12px;
        font-size: 0.75rem;
        font-weight: 700;
    }
    
    /* Keep default min-width and grid columns from larger screens */
    
    .tn-dropdown__mega-col a {
        font-size: 0.8rem;
        /* Keep default padding from larger screens */
    }
    
    .tn-dropdown__mega-title {
        font-size: 0.9rem;
    }
    
    .tn-dropdown__mega-footer a {
        font-size: 0.75rem;
    }
}

/* Desktop: 1280px screens - keep default menu font size */

/* Tablet and below (includes iPad landscape ~1024px) - use hamburger so header is not cut off */
@media (max-width: 1024px) {
    /* Show hamburger, hide desktop nav - prevents navbar overflow on iPad landscape */
    .tn-menu-toggle {
        display: flex;
    }
    .tn-header__nav {
        display: none !important;
    }
    /* Allow topbar (orange quick links) to wrap so it is not cut off */
    .tn-quick-links,
    .tn-action-links {
        flex-wrap: wrap;
        justify-content: center;
    }
    .tn-header__topbar .tn-header__container {
        min-width: 0; /* Allow flex container to shrink within viewport */
    }
    /* Dropdown/menu link rules kept for mmenu/slide-out menu */
    .tn-menu-link {
        padding: 8px 10px;
        font-size: var(--tn-font-size-sm);
        min-width: 80px;
    }
    .tn-dropdown--mega {
        min-width: 520px;
    }
    .tn-dropdown__mega-grid {
        grid-template-columns: minmax(120px, 1fr) minmax(120px, 1fr) minmax(120px, 1fr);
        gap: var(--tn-space-sm);
        padding: var(--tn-space-sm);
    }
    .tn-dropdown__mega-col a {
        padding: var(--tn-space-xs) var(--tn-space-sm);
        font-size: 0.75rem;
    }
    .tn-dropdown__mega-title {
        font-size: 0.85rem;
        margin-bottom: var(--tn-space-sm);
    }
}

/* ============================================
   RESPONSIVE DESIGN - Mobile
   ============================================ */

/* Hide mobile-only elements on desktop */
.mobile-only {
    display: none !important;
}

/* Mobile: 768px and below */
@media (max-width: 768px) {
    /* Use fixed positioning on mobile - more reliable than sticky */
    .tn-header {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        z-index: var(--tn-z-header) !important;
        transform: none !important;
        -webkit-transform: none !important;
    }
    
    /* Add padding to body to compensate for fixed header */
    body {        
        padding-top: var(--tn-body-padding-mobile, 110px) !important; /* Adjust based on header height: topbar + navbar + section bar */
    }
    html {
        scroll-padding-top: var(--tn-body-padding-mobile, 110px);
    }

    /* Front page can inherit section-bar padding var; only reserve tall offset when section bar exists. */
    body:not(:has(#section-bar)) {
        padding-top: 105px !important;
    }
    html:not(:has(#section-bar)) {
        scroll-padding-top: 90px;
    }
    
    /* Topbar on mobile - no transition to prevent #main-content animated shift on load */
    .tn-header__topbar {
        max-height: 50px !important;
        overflow: hidden !important;
    }
    
    /* Hide topbar on scroll down (mobile) */
    .tn-header__topbar.scroll-down {
        max-height: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        pointer-events: none !important;
    }
    
    /* Show topbar on scroll up (mobile) */
    .tn-header__topbar.scroll-up {
        max-height: 50px !important;
        pointer-events: auto !important;
    }
    
    /* Section-bar: single scrollable row on mobile */
    #section-bar {
        max-height: 55px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scrollbar-width: none;
        padding: 6px 8px !important;
        gap: 6px;
        flex-direction: row;
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: center;
    }
    #section-bar::-webkit-scrollbar {
        display: none;
    }
    
    /* Hide title on mobile - logo/icon anchors the left side */
    #section-title {
        display: none !important;
    }
    
    /* Sport icon: leftmost element, never shrinks away */
    #section-bar > .material-icons {
        flex-shrink: 0;
    }
    
    /* Hide items with desktop class and staff/stats on mobile */
    .section-bar-item.desktop,
    .section-bar-item.menu-staff,
    .section-bar-item.menu-stats {
        display: none !important;
    }
    
    
    /* Abbreviate Portal Tracker to Portal - hide original text completely */
    .section-bar-item.menu-portal a {
        font-size: 0 !important;
        line-height: 0;
    }
    .section-bar-item.menu-portal a::after {
        content: "PORTAL";
        font-size: 0.7rem !important;
        line-height: normal;
    }
    
    /* Abbreviate Depth Chart to Depth - hide original text completely */
    .section-bar-item.menu-depth-chart a {
        font-size: 0 !important;
        line-height: 0;
    }
    .section-bar-item.menu-depth-chart a::after {
        content: "DEPTH";
        font-size: 0.7rem !important;
        line-height: normal;
    }
    
    #section-menu-c {
        flex-wrap: nowrap;
        flex-shrink: 0;
        width: auto;
        justify-content: flex-start;
        gap: 6px;
        margin-left: 0;
        padding: 4px 0;
    }
    
    /* Button-style section bar items on mobile - 44px min tap target */
    .section-bar-item {
        min-height: 30px;
        flex-shrink: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        background: rgba(255, 255, 255, 0.15);
        border: 1px solid rgba(255, 255, 255, 0.3);
        border-radius: 5px;
        font-weight: 600;
        text-transform: uppercase;
        font-size: 0.7rem;
        letter-spacing: 0.3px;
        box-sizing: border-box;
    }
    
    .section-bar-item:hover,
    .section-bar-item:active {
        background: rgba(255, 255, 255, 0.3);
        border-color: rgba(255, 255, 255, 0.5);
    }
    
    .section-bar-item a {
        padding: 10px 14px;
        min-height: 30px;
        font-size: inherit !important;
        font-weight: inherit !important;
    }
    
    /* Hide section-bar on scroll down (mobile) */
    .tn-header__topbar.scroll-down ~ #section-bar {
        max-height: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        pointer-events: none !important;
    }
    
    /* Show section-bar on scroll up (mobile) */
    .tn-header__topbar.scroll-up ~ #section-bar {
        max-height: 55px !important;
        pointer-events: auto !important;
    }
    
    .desktop-only {
        display: none !important;
    }
    
    .mobile-only {
        display: flex !important;
    }
    
    /* Hide "GEAR" text on mobile - show icon only */
    .tn-shop-link a {
        font-size: 0 !important;
    }
    
    .tn-shop-link a svg {
        font-size: 16px !important;
        width: 18px !important;
        height: 18px !important;
        display: inline-block !important;
        vertical-align: middle !important;
    }
    
    /* Mobile icon-only quick links */
    .mobile-only a {
        padding: 7px 8px !important;
        line-height: 1;
        display: flex !important;
        align-items: center !important;
        gap: 4px !important;
    }
    
    .mobile-only svg {
        display: block;
        fill: var(--color-text-on-primary);
        color: var(--color-text-on-primary);
        flex-shrink: 0;
    }
    
    /* Show text next to schedule icon on mobile */
    .mobile-only a span {
        display: inline !important;
        font-size: 0.7rem !important;
        font-weight: 600 !important;
        white-space: nowrap;
    }
    
    /* Recruiting icon */
    .tn-recruiting-link a {
        padding: 5px 6px !important;
    }
    
    /* Mobile Quick Links Bar */
    .tn-header__topbar {
        padding: var(--tn-space-sm);
    }
    
    .tn-header__topbar .tn-header__container {
        flex-direction: row;
        flex-wrap: nowrap;
        gap: var(--tn-space-sm);
        padding: 0;
        justify-content: center;
    }
    
    .tn-header__quick-links,
    .tn-header__actions {
        flex: 0 0 auto;
    }
    
    .tn-quick-links,
    .tn-action-links {
        gap: clamp(4px, 3vw, 20px);
        font-size: var(--tn-font-size-xs);
        flex-wrap: nowrap;
    }
    
    .tn-quick-links li,
    .tn-action-links li {
        flex: 0 0 auto;
    }
    
    .tn-quick-links li a,
    .tn-action-links li a {
        padding: 8px 12px;
        font-size: 0.75rem;
        font-weight: 600;
        border-radius: 5px;
        background: rgba(255, 255, 255, 0.15);
        border: 1px solid rgba(255, 255, 255, 0.25);
        text-transform: uppercase;
        letter-spacing: 0.3px;
        min-height: 34px;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    
    .tn-quick-links li a:hover,
    .tn-action-links li a:hover {
        background: rgba(255, 255, 255, 0.3);
    }
    
    /* Upgrade link mobile */
    .tn-upgrade-link a {
        background: var(--color-bg-surface) !important;
        color: var(--site-primary) !important;
        border-color: var(--color-bg-surface) !important;
        font-weight: 700 !important;
    }
    
    /* DYNAMIC LOGO SIZING (768px) - Allows logo to shrink slightly if needed */
    .tn-header__logo {
        flex-shrink: 1; /* Allow logo to shrink when space is tight */
        min-width: 180px; /* Don't shrink below readable size */
        min-height: 38px;
        display: flex;
        align-items: center; /* Vertically center the logo */
    }
    
    .tn-header__logo img {
        width: 225px; /* Target size */
        max-width: 100%; /* Shrink if container shrinks */
        height: auto;
        display: block;
    }
    
    /* Auth buttons - NEVER shrink, always visible */
    .tn-auth-buttons {
        flex-shrink: 0; /* Never shrink - logo shrinks first */
    }
    
    .tn-menu-toggle {
        display: flex;
    }
    
    /* Hide default nav on mobile - mmenu handles navigation */
    .tn-header__nav {
        display: none !important;
    }
    
    /* Hide default mobile overlay - mmenu has its own */
    .tn-mobile-overlay {
        display: none !important;
    }
    
    .tn-main-menu {
        flex-direction: column;
        width: 100%;
        padding: var(--tn-space-xl) 0;
        flex: none;
    }
    
    .tn-menu-item {
        width: 100%;
        flex: none;
    }
    
    .tn-menu-link {
        padding: var(--tn-space-lg);
        border-radius: 0;
        border-bottom: 1px solid var(--tn-gray-200);
        text-align: left;
        width: 100%;
    }
    
    .tn-menu-link::after {
        display: none;
    }
    
    /* Mobile Dropdowns */
    .tn-dropdown {
        position: static;
        transform: none;
        opacity: 0;
        visibility: hidden;
        max-height: 0;
        overflow: hidden;
        box-shadow: none;
        margin: 0;
        transition: all var(--tn-transition-base);
    }
    
    .tn-menu-item--active .tn-dropdown {
        opacity: 1;
        visibility: visible;
        max-height: 1000px;
        background: var(--tn-gray-50);
    }
    
    .tn-dropdown__content {
        padding: 0;
    }
    
    .tn-dropdown__content a {
        padding: var(--tn-space-md) var(--tn-space-xl);
        border-bottom: 1px solid var(--tn-gray-200);
    }
    
    .tn-dropdown--mega {
        min-width: auto;
    }
    
    .tn-dropdown__mega-grid {
        grid-template-columns: 1fr;
        padding: 0;
    }
    
    .tn-dropdown__mega-col {
        border-bottom: 1px solid var(--tn-gray-300);
        padding: var(--tn-space-md) 0;
    }
    
    .tn-dropdown__mega-title {
        padding: 0 var(--tn-space-xl);
    }
    
    .tn-dropdown__mega-col a {
        padding: var(--tn-space-md) var(--tn-space-xl);
    }
    
    /* Mobile User Menu */
    .tn-user-button {
        padding: var(--tn-space-xs) var(--tn-space-sm);
    }
    
    .tn-user-name {
        display: none;
    }
    
    .tn-dropdown--user {
        position: fixed;
        top: 60px;
        right: var(--tn-space-md);
        width: 200px;
    }
    
    .tn-mobile-overlay {
        display: block;
    }

    .tn-btn-login {
        padding-left: var(--header-btn-login-pad-left);
    }
}


@media screen and (max-width: 600px) {
    body:has(#section-bar .menu-leaderboards) {
        padding-top: 140px !important;
    }
    body:has(#section-bar .menu-signees) {
        padding-top: 135px !important;
    }
    /* Override parent container padding for mobile */
    .ui-content {
        padding-left: 5px !important;
        padding-right: 5px !important;
    }
    #main-content,
    .layout_body,
    .main-content {
        padding-left: 4px !important;
        padding-right: 4px !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-top: 5px !important;
    }
}

/* Small Mobile: 480px and below */
@media (max-width: 480px) {
    /* Fixed header on small mobile */
    .tn-header {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        z-index: var(--tn-z-header) !important;
        transform: none !important;
        -webkit-transform: none !important;
    }
    
    /* Add padding to body to compensate for fixed header */
    /* College sites: 190px (topbar + navbar + section bar), Non-college: 110px (topbar + navbar only) */
    body {
        padding-top: var(--tn-body-padding-mobile, 110px) !important;
    }
    html {
        scroll-padding-top: var(--tn-body-padding-mobile, 110px);
    }
    
    /* Add extra padding when section-bar (sport submenu) is present */
    body:has(#section-bar) {
        padding-top: 135px !important; /* topbar + navbar + section-bar (single scrollable row) */
    }   
    html:has(#section-bar) {
        scroll-padding-top: 135px;
    }
    
    /* Topbar on small mobile - no transition to prevent #main-content animated shift on load */
    .tn-header__topbar {
        max-height: 45px !important;
        overflow: hidden !important;
    }
    
    /* Hide topbar on scroll down (small mobile) */
    .tn-header__topbar.scroll-down {
        max-height: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        pointer-events: none !important;
    }
    
    /* Show topbar on scroll up (small mobile) */
    .tn-header__topbar.scroll-up {
        max-height: 45px !important;
        pointer-events: auto !important;
    }
    
    /* Section-bar: single scrollable row on small mobile */
    #section-bar {
        max-height: 55px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scrollbar-width: none;
        padding: 6px 6px !important;
        gap: 5px;
    }
    
    #section-menu-c {
        gap: 4px;
        padding: 2px 0;
        flex-wrap: nowrap;
        flex-shrink: 0;
        width: auto;
    }
    
    /* Button-style section bar items on small mobile - maintain tap target */
    .section-bar-item {
        min-height: 30px;
        min-width: 0;
        flex-shrink: 0;
        font-size: 0.6rem;
        border-radius: 4px;
    }
    
    .section-bar-item a {
        padding: 8px 10px;
        min-height: 30px;
    }
    
    /* Smaller abbreviated text on small mobile */
    .section-bar-item.menu-portal a::after,
    .section-bar-item.menu-depth-chart a::after {
        font-size: 0.55rem !important;
    }
    
    /* Hide section-bar on scroll down (small mobile) */
    .tn-header__topbar.scroll-down ~ #section-bar {
        max-height: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        pointer-events: none !important;
    }
    
    /* Show section-bar on scroll up (small mobile) */
    .tn-header__topbar.scroll-up ~ #section-bar {
        max-height: 55px !important;
        pointer-events: auto !important;
    }
    
    .tn-header__container {
        padding: 0 var(--tn-space-sm);
    }
    
    /* DYNAMIC LOGO SIZING - Allows logo to shrink slightly if needed */
    .tn-header__logo {
        flex-shrink: 1; /* Allow logo to shrink when space is tight */
        min-width: 155px; /* Don't shrink below readable size */
        min-height: 38px;
        padding: var(--tn-space-xs) 0;
        padding-left: 3px;
        margin-right: 0;
        display: flex;
        align-items: center; /* Vertically center the logo */
    }
    
    .tn-header__logo img {
        width: 190px; /* Target size */
        max-width: 100%; /* Shrink if container shrinks */
        height: auto;
        display: block;
    }
    
    .tn-header__navbar .tn-header__container {
        gap: var(--tn-space-sm);
        padding: 0 !important;
    }
    
    .tn-header__topbar {
        padding: 6px 4px;
    }
    
    .tn-header__topbar .tn-header__container {
        gap: 4px;
    }
    
    .tn-quick-links,
    .tn-action-links {
        gap: clamp(4px, 3vw, 12px);
    }
    
    .tn-quick-links li a,
    .tn-action-links li a {
        padding: 6px 10px;
        font-size: 0.7rem;
        border-radius: 4px;
        min-height: 30px;
    }
    
    .mobile-only a {
        padding: 6px 8px !important;
    }
    
    /* Auth buttons - NEVER shrink, always visible */
    .tn-auth-buttons {
        gap: 6px;
        flex-shrink: 0; /* Never shrink - logo shrinks first */
    }
    
    .tn-btn {
        padding: 6px 10px;
        font-size: 0.7rem;
        font-weight: 700;
        white-space: nowrap;
    }
    
    .tn-menu-toggle {
        padding: var(--tn-space-xs);
    }
    
    .tn-user-avatar {
        width: 28px;
        height: 28px;
    }
}

/* ============================================
   MMENU MOBILE NAVIGATION STYLES
   ============================================ */

/* Base mmenu styles */
body .mm-menu {
    font-size: 16px;
    --mm-line-height: 26px;
    --mm-navbar-size: 50px;
    --mm-listitem-size: 50px;
    --mm-iconpanel-size: 60px;
    --mm-iconbar-size: 60px;
    font-family: "Open Sans", Arial, sans-serif;
    -webkit-text-size-adjust: none;
    /* --mm-offset-top is set dynamically via JS to the navbar height, so no extra padding needed */
    padding-top: 0;
}

.mm-menu {
    --mm-color-background: var(--site-featured-bg, var(--site-primary));
    --mm-color-text: #fff;
    --mm-color-text-dimmed: var(--site-featured-bg, var(--site-primary));
    --mm-color-button: #fff;
}

.mm-menu a,
.mm-menu a:active,
.mm-menu a:hover {
    text-shadow: none;
    font-size: 16px;
    color: var(--color-text-on-primary) !important;
}

/* Ensure all mmenu list item text is white */
.mm-listitem > a,
.mm-listitem > span,
.mm-listitem__text {
    color: var(--color-text-on-primary) !important;
}

.mm-listitem {
    --mm-listitem-size: 44px; /* Apple's recommended minimum touch target */
}

.mm-listitem__text .material-icons {
    vertical-align: top;
}

.mm-listitem_vertical > .mm-panel {
    padding: 5px 0 5px 10px;
}

/* Mmenu navbar */
.mm-navbar {
    --mm-color-background: var(--site-featured-bg, var(--site-primary));
    --mm-color-text: #fff;
    --mm-color-text-dimmed: #fff;
    --mm-color-button: #fff;
    --mm-navbar-size: 20px;
    line-height: 10px;
    background-color: var(--color-bg-surface);
    border-top: 2px solid var(--site-secondary);
    border-bottom: 2px solid var(--site-secondary);
}

.mm-navbars_top .mm-navbar {
    --mm-color-background: var(--site-featured-bg, var(--site-primary));
}

.mm-navbar__title {
    padding-top: 3px;
}

.mm-iconbar {
    --mm-color-background: var(--color-bg-surface);
}

/* Mmenu panels */
.mm-panel {
    --mm-color-background: var(--site-featured-bg, var(--site-primary));
    --mm-color-text: #fff;
    --mm-color-text-dimmed: #ddd;
    --mm-color-button: #fff;
}

/* Keep the last mobile menu actions reachable above sticky bottom ads. */
.mm-panels,
.mm-panel {
    box-sizing: border-box;
    padding-bottom: calc(120px + env(safe-area-inset-bottom, 0px)) !important;
    scroll-padding-bottom: calc(120px + env(safe-area-inset-bottom, 0px));
}


/* Remove blank space above footer nav: mmenu's panel ::after creates a 50px block */
.mm-panel::after,
#panel-menu.mm-panel::after {
    display: none !important;
    content: none !important;
    height: 0 !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
}

/* Full-screen overlay */
/* Menu slides over the fixed header — must be above --tn-z-header (1000) */
.mm-menu_offcanvas { 
    z-index: var(--tn-z-mobile-menu) !important;
}

.mm-wrapper__blocker {
    z-index: calc(var(--tn-z-mobile-menu) - 1) !important;
}

#my-menu:not(.mm-menu) {
    display: none;
}

/* Material icons in mmenu */
.mm-menu .material-icons {
    color: var(--color-text-on-primary) !important;
}

/* Tab bar container */
.mm-navbars_top {
    background: var(--site-primary) !important;
}

/* Individual tabs */
.mm-navbar_tabs > a {
    background: var(--site-primary) !important;
    color: var(--color-text-on-primary) !important;
    border-right: 1px solid rgba(255, 255, 255, 0.3) !important;
    transition: background 0.2s ease;
}

.mm-navbar_tabs > a:last-child {
    border-right: none !important;
}

/* Active/selected tab */
.mm-navbar_tabs > a.mm-navbar__tab_selected {
    background: var(--site-secondary) !important;
}

/* Tab hover effect */
.mm-navbar_tabs > a:hover {
    background: rgba(255, 255, 255, 0.1) !important;
}

.mm-navbar_tabs > a.mm-navbar__tab_selected:hover {
    background: var(--site-secondary) !important;
}

/* Better hover/active states for menu items */
.mm-listitem > a:hover,
.mm-listitem > span:hover {
    background: rgba(255, 255, 255, 0.1) !important;
}

/* Active menu item highlight */
.mm-listitem_selected > a,
.mm-listitem_selected > span {
    background: rgba(255, 255, 255, 0.15) !important;
}

/* Upgrade link styling in mmenu */
.mm-listitem:has(a[href="/upgrade.do"]) {
    background-color: var(--color-bg-surface) !important;
}

.mm-listitem:has(a[href="/upgrade.do"]) > a {
    background-color: var(--color-bg-surface) !important;
    color: var(--site-primary) !important;
}

/* Fallback for browsers that don't support :has() */
.mm-listitem > a[href="/upgrade.do"] {
    background-color: var(--color-bg-surface) !important;
    color: var(--site-primary) !important;
}

/* Icons in upgrade link */
.mm-listitem:has(a[href="/upgrade.do"]) .material-icons,
.mm-listitem > a[href="/upgrade.do"] .material-icons,
.mm-listitem[style*="background-color:white"] .material-icons,
.mm-listitem[style*="background-color: white"] .material-icons {
    color: var(--site-primary) !important;
}

/* Upgrade icon size */
.mm-listitem:has(a[href="/upgrade.do"]) .material-icons,
.mm-listitem > a[href="/upgrade.do"] .material-icons {
    font-size: 28px !important;
    font-weight: bold !important;
}

/* Submenu arrows */
.mm-btn_next::after {
    border-color: #fff !important;
    width: 10px !important;
    height: 10px !important;
}

/* Logo styling */
.mm-navbar__title img {
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

/* Bottom nav styling */
.mm-navbars_bottom {
    background: var(--site-primary) !important;
    border-top: 2px solid var(--site-secondary) !important;
}

.mm-navbars_bottom a {
    opacity: 0.8;
    transition: opacity 0.2s ease, transform 0.2s ease;
}

.mm-navbars_bottom a:hover {
    opacity: 1;
    transform: scale(1.1);
}

/* Dark mode: bottom nav bar icons/links must be visible (light on dark) */
html.dark-mode .mm-navbars_bottom,
html.dark-mode .mm-menu.dark-mode .mm-navbars_bottom {
    --mm-color-text: #fff;
    --mm-color-button: #fff;
}
html.dark-mode .mm-navbars_bottom a,
html.dark-mode .mm-menu.dark-mode .mm-navbars_bottom a {
    color: #fff !important;
    opacity: 1;
}
html.dark-mode .mm-navbars_bottom a .material-icons,
html.dark-mode .mm-menu.dark-mode .mm-navbars_bottom a .material-icons {
    color: #fff !important;
    opacity: 1;
}
html.dark-mode .mm-navbars_bottom a img,
html.dark-mode .mm-menu.dark-mode .mm-navbars_bottom a img {
    opacity: 1;
    filter: brightness(0) invert(1);
}




/* Haptic feedback animations */
@keyframes haptic-tap {
    0% { transform: scale(1); }
    50% { transform: scale(0.97); }
    100% { transform: scale(1); }
}

@keyframes haptic-press {
    0% { transform: scale(1); opacity: 1; }
    50% { transform: scale(0.95); opacity: 0.9; }
    100% { transform: scale(1); opacity: 1; }
}

.mm-listitem > a:active,
.mm-listitem > span:active {
    animation: haptic-tap 0.15s ease-out;
    background: rgba(255, 255, 255, 0.2) !important;
}

.mm-navbar_tabs > a:active {
    animation: haptic-press 0.15s ease-out;
}

.mm-btn:active {
    animation: haptic-tap 0.1s ease-out;
}

/* Ripple effect for touch feedback */
.mm-listitem > a,
.mm-listitem > span {
    display: flex !important;
    align-items: center !important;
    gap: 10px;
    position: relative;
    overflow: hidden;
}

.mm-listitem > a::before,
.mm-listitem > span::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    background: rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    transform: translate(-50%, -50%);
    transition: width 0.4s ease, height 0.4s ease, opacity 0.4s ease;
    opacity: 0;
}

.mm-listitem > a:active::before,
.mm-listitem > span:active::before {
    width: 200%;
    height: 200%;
    opacity: 1;
    transition: width 0s, height 0s, opacity 0s;
}

/* ==========================================================================
   MMENU VENDOR CSS - merged from mmenu.min.css to remove an extra request
   ========================================================================== */
/*!
 * mmenu.js
 * mmenujs.com
 *
 * Copyright (c) Fred Heusschen
 * frebsite.nl
 *
 * License: CC-BY-NC-4.0
 * http://creativecommons.org/licenses/by-nc/4.0/
 */.mm-menu_theme-white{--mm-color-border:rgba( 0,0,0, 0.1 );--mm-color-button:rgba( 0,0,0, 0.3 );--mm-color-text:rgba( 0,0,0, 0.7 );--mm-color-text-dimmed:rgba( 0,0,0, 0.3 );--mm-color-background:#fff;--mm-color-background-highlight:rgba( 0,0,0, 0.06 );--mm-color-background-emphasis:rgba( 0,0,0, 0.03 );--mm-shadow:0 0 10px rgba( 0,0,0, 0.2 )}.mm-menu_theme-dark{--mm-color-border:rgba( 0,0,0, 0.3 );--mm-color-button:rgba( 255,255,255, 0.4 );--mm-color-text:rgba( 255,255,255, 0.85 );--mm-color-text-dimmed:rgba( 255,255,255, 0.4 );--mm-color-background:#333;--mm-color-background-highlight:rgba( 255,255,255, 0.08 );--mm-color-background-emphasis:rgba( 0,0,0, 0.1 );--mm-shadow:0 0 20px rgba( 0,0,0, 0.5 )}.mm-menu_theme-black{--mm-color-border:rgba( 255,255,255, 0.25 );--mm-color-button:rgba( 255,255,255, 0.4 );--mm-color-text:rgba( 255,255,255, 0.75 );--mm-color-text-dimmed:rgba( 255,255,255, 0.4 );--mm-color-background:#000;--mm-color-background-highlight:rgba( 255,255,255, 0.2 );--mm-color-background-emphasis:rgba( 255,255,255, 0.15 );--mm-shadow:none}:root{--mm-line-height:20px;--mm-listitem-size:44px;--mm-navbar-size:44px;--mm-offset-top:0;--mm-offset-right:0;--mm-offset-bottom:0;--mm-offset-left:0;--mm-color-border:rgba(0, 0, 0, 0.1);--mm-color-button:rgba(0, 0, 0, 0.3);--mm-color-text:rgba(0, 0, 0, 0.75);--mm-color-text-dimmed:rgba(0, 0, 0, 0.3);--mm-color-background:#f3f3f3;--mm-color-background-highlight:rgba(0, 0, 0, 0.05);--mm-color-background-emphasis:rgba(255, 255, 255, 0.4);--mm-shadow:0 0 10px rgba(0, 0, 0, 0.3)}.mm-hidden{display:none!important}.mm-wrapper{overflow-x:hidden;position:relative}.mm-menu{top:0;right:0;bottom:0;left:0;background:#f3f3f3;border-color:rgba(0,0,0,.1);color:rgba(0,0,0,.75);line-height:20px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding:0;margin:0;-webkit-box-sizing:border-box;box-sizing:border-box;position:absolute;top:var(--mm-offset-top);right:var(--mm-offset-right);bottom:var(--mm-offset-bottom);left:var(--mm-offset-left);z-index:0;background:var(--mm-color-background);border-color:var(--mm-color-border);color:var(--mm-color-text);line-height:var(--mm-line-height);-webkit-tap-highlight-color:var(--mm-color-background-emphasis);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.mm-menu a,.mm-menu a:active,.mm-menu a:hover,.mm-menu a:link,.mm-menu a:visited{text-decoration:none;color:inherit}[dir=rtl] .mm-menu{direction:rtl}.mm-panel{background:#f3f3f3;border-color:rgba(0,0,0,.1);color:rgba(0,0,0,.75);z-index:0;-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;-webkit-overflow-scrolling:touch;overflow:hidden;overflow-y:auto;-ms-scroll-chaining:none;overscroll-behavior:contain;color:var(--mm-color-text);border-color:var(--mm-color-border);background:var(--mm-color-background);-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0);-webkit-transition:-webkit-transform .4s ease;transition:-webkit-transform .4s ease;-o-transition:transform .4s ease;transition:transform .4s ease;transition:transform .4s ease,-webkit-transform .4s ease}.mm-panel:after{height:44px}.mm-panel:not(.mm-hidden){display:block}.mm-panel:after{content:'';display:block;height:var(--mm-listitem-size)}.mm-panel_opened{z-index:1;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.mm-panel_opened-parent{-webkit-transform:translate3d(-30%,0,0);transform:translate3d(-30%,0,0)}.mm-panel_highest{z-index:2}.mm-panel_noanimation{-webkit-transition:none!important;-o-transition:none!important;transition:none!important}.mm-panel_noanimation.mm-panel_opened-parent{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.mm-panels>.mm-panel{position:absolute;left:0;right:0;top:0;bottom:0}.mm-panel__content{padding:20px 20px 0}.mm-panels{background:#f3f3f3;border-color:rgba(0,0,0,.1);color:rgba(0,0,0,.75);position:relative;height:100%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;overflow:hidden;background:var(--mm-color-background);border-color:var(--mm-color-border);color:var(--mm-color-text)}[dir=rtl] .mm-panel:not(.mm-panel_opened){-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}[dir=rtl] .mm-panel.mm-panel_opened-parent{-webkit-transform:translate3d(30%,0,0);transform:translate3d(30%,0,0)}.mm-listitem_vertical>.mm-panel{display:none;width:100%;padding:10px 0 10px 10px;-webkit-transform:none!important;-ms-transform:none!important;transform:none!important}.mm-listitem_vertical>.mm-panel:after,.mm-listitem_vertical>.mm-panel:before{content:none;display:none}.mm-listitem_opened>.mm-panel{display:block}.mm-listitem_vertical>.mm-listitem__btn{height:44px;height:var(--mm-listitem-size);bottom:auto}.mm-listitem_vertical .mm-listitem:last-child:after{border-color:transparent}.mm-listitem_opened>.mm-listitem__btn:after{-webkit-transform:rotate(225deg);-ms-transform:rotate(225deg);transform:rotate(225deg);right:19px}.mm-btn{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;width:50px;padding:0}.mm-btn:after,.mm-btn:before{border:2px solid rgba(0,0,0,.3);border:2px solid var(--mm-color-button)}.mm-btn_next:after,.mm-btn_prev:before{content:'';border-bottom:none;border-right:none;-webkit-box-sizing:content-box;box-sizing:content-box;display:block;width:8px;height:8px;margin:auto;position:absolute;top:0;bottom:0}.mm-btn_prev:before{-webkit-transform:rotate(-45deg);-ms-transform:rotate(-45deg);transform:rotate(-45deg);left:23px;right:auto}.mm-btn_next:after{-webkit-transform:rotate(135deg);-ms-transform:rotate(135deg);transform:rotate(135deg);right:23px;left:auto}.mm-btn_close:after,.mm-btn_close:before{content:'';-webkit-box-sizing:content-box;box-sizing:content-box;display:block;width:5px;height:5px;margin:auto;position:absolute;top:0;bottom:0;-webkit-transform:rotate(-45deg);-ms-transform:rotate(-45deg);transform:rotate(-45deg)}.mm-btn_close:before{border-right:none;border-bottom:none;right:18px}.mm-btn_close:after{border-left:none;border-top:none;right:25px}[dir=rtl] .mm-btn_next:after{-webkit-transform:rotate(-45deg);-ms-transform:rotate(-45deg);transform:rotate(-45deg);left:23px;right:auto}[dir=rtl] .mm-btn_prev:before{-webkit-transform:rotate(135deg);-ms-transform:rotate(135deg);transform:rotate(135deg);right:23px;left:auto}[dir=rtl] .mm-btn_close:after,[dir=rtl] .mm-btn_close:before{right:auto}[dir=rtl] .mm-btn_close:before{left:25px}[dir=rtl] .mm-btn_close:after{left:18px}.mm-navbar{min-height:44px;border-bottom:1px solid rgba(0,0,0,.1);background:#f3f3f3;color:rgba(0,0,0,.3);display:-webkit-box;display:-ms-flexbox;display:flex;min-height:var(--mm-navbar-size);border-bottom:1px solid var(--mm-color-border);background:var(--mm-color-background);color:var(--mm-color-text-dimmed);text-align:center;opacity:1;-webkit-transition:opacity .4s ease;-o-transition:opacity .4s ease;transition:opacity .4s ease}.mm-navbar>*{min-height:44px}@supports ((position:-webkit-sticky) or (position:sticky)){.mm-navbar_sticky{position:-webkit-sticky;position:sticky;top:0;z-index:1}}.mm-navbar>*{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-sizing:border-box;box-sizing:border-box}.mm-navbar__btn{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0}.mm-navbar__title{-webkit-box-flex:1;-ms-flex:1 1 50%;flex:1 1 50%;display:-webkit-box;display:-ms-flexbox;display:flex;padding-left:0;padding-right:5px;overflow:hidden}.mm-navbar__title:not(:last-child){padding-right:0}.mm-navbar__title>span{-o-text-overflow:ellipsis;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mm-navbar__btn:not(.mm-hidden)+.mm-navbar__title{padding-left:0}.mm-navbar__btn:not(.mm-hidden)+.mm-navbar__title:last-child{padding-right:50px}[dir=rtl] .mm-navbar{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.mm-listview{list-style:none;display:block;padding:0;margin:0}.mm-listitem{color:rgba(0,0,0,.75);border-color:rgba(0,0,0,.1);color:var(--mm-color-text);border-color:var(--mm-color-border);list-style:none;display:block;padding:0;margin:0;position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.mm-listitem:after{content:'';border-color:inherit;border-bottom-width:1px;border-bottom-style:solid;display:block;position:absolute;left:20px;right:0;bottom:0}.mm-listitem a,.mm-listitem a:hover{text-decoration:none}.mm-listitem__btn,.mm-listitem__text{padding:12px;display:block;padding:calc((var(--mm-listitem-size) - var(--mm-line-height))/ 2);padding-left:0;padding-right:0;color:inherit}.mm-listitem__text{-o-text-overflow:ellipsis;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;padding-left:20px;padding-right:10px;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-ms-flex-preferred-size:10%;flex-basis:10%}.mm-listitem__btn{background:rgba(3,2,1,0);border-color:inherit;width:auto;padding-right:50px;position:relative}.mm-listitem__btn:not(.mm-listitem__text){border-left-width:1px;border-left-style:solid}.mm-listitem_selected>.mm-listitem__text{background:rgba(255,255,255,.4);background:var(--mm-color-background-emphasis)}.mm-listitem_opened>.mm-listitem__btn,.mm-listitem_opened>.mm-panel{background:rgba(0,0,0,.05);background:var(--mm-color-background-highlight)}[dir=rtl] .mm-listitem:after{left:0;right:20px}[dir=rtl] .mm-listitem__text{padding-left:10px;padding-right:20px}[dir=rtl] .mm-listitem__btn{padding-left:50px;border-left-width:0;border-left-style:none}[dir=rtl] .mm-listitem__btn:not(.mm-listitem__text){padding-right:0;border-right-width:1px;border-right-style:solid}.mm-page{-webkit-box-sizing:border-box;box-sizing:border-box;position:relative}.mm-slideout{-webkit-transition:-webkit-transform .4s ease;transition:-webkit-transform .4s ease;-o-transition:transform .4s ease;transition:transform .4s ease;transition:transform .4s ease,-webkit-transform .4s ease;z-index:1}.mm-wrapper_opened{overflow-x:hidden;position:relative}.mm-wrapper_opened .mm-page{min-height:100vh}.mm-wrapper_background .mm-page{background:inherit}.mm-menu_offcanvas{position:fixed;right:auto;z-index:0}.mm-menu_offcanvas:not(.mm-menu_opened){display:none}.mm-menu_offcanvas{width:80%;min-width:240px;max-width:440px}.mm-wrapper_opening .mm-menu_offcanvas~.mm-slideout{-webkit-transform:translate3d(80vw,0,0);transform:translate3d(80vw,0,0)}@media all and (max-width:300px){.mm-wrapper_opening .mm-menu_offcanvas~.mm-slideout{-webkit-transform:translate3d(240px,0,0);transform:translate3d(240px,0,0)}}@media all and (min-width:550px){.mm-wrapper_opening .mm-menu_offcanvas~.mm-slideout{-webkit-transform:translate3d(440px,0,0);transform:translate3d(440px,0,0)}}.mm-wrapper__blocker{background:rgba(3,2,1,0);overflow:hidden;display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:2}.mm-wrapper_blocking{overflow:hidden}.mm-wrapper_blocking body{overflow:hidden}.mm-wrapper_blocking .mm-wrapper__blocker{display:block}.mm-sronly{border:0!important;clip:rect(1px,1px,1px,1px)!important;-webkit-clip-path:inset(50%)!important;clip-path:inset(50%)!important;white-space:nowrap!important;width:1px!important;min-width:1px!important;height:1px!important;min-height:1px!important;padding:0!important;overflow:hidden!important;position:absolute!important}.mm-menu_autoheight:not(.mm-menu_offcanvas){position:relative}.mm-menu_autoheight.mm-menu_position-bottom,.mm-menu_autoheight.mm-menu_position-top{max-height:80%}.mm-menu_autoheight-measuring .mm-panel{display:block!important}.mm-menu_autoheight-measuring .mm-panels>.mm-panel{bottom:auto!important;height:auto!important}.mm-menu_autoheight-measuring .mm-listitem_vertical:not(.mm-listitem_opened) .mm-panel{display:none!important}[class*=mm-menu_columns-]{-webkit-transition-property:width;-o-transition-property:width;transition-property:width}[class*=mm-menu_columns-] .mm-panels>.mm-panel{right:auto;-webkit-transition-property:width,-webkit-transform;transition-property:width,-webkit-transform;-o-transition-property:width,transform;transition-property:width,transform;transition-property:width,transform,-webkit-transform}[class*=mm-menu_columns-] .mm-panels>.mm-panel_opened,[class*=mm-menu_columns-] .mm-panels>.mm-panel_opened-parent{display:block!important}[class*=mm-panel_columns-]{border-right:1px solid;border-color:inherit}.mm-menu_columns-1 .mm-panel_columns-0,.mm-menu_columns-2 .mm-panel_columns-1,.mm-menu_columns-3 .mm-panel_columns-2,.mm-menu_columns-4 .mm-panel_columns-3{border-right:none}[class*=mm-menu_columns-] .mm-panels>.mm-panel_columns-0{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.mm-menu_columns-0 .mm-panels>.mm-panel{z-index:0}.mm-menu_columns-0 .mm-panels>.mm-panel else{width:100%}.mm-menu_columns-0 .mm-panels>.mm-panel:not(.mm-panel_opened):not(.mm-panel_opened-parent){-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}.mm-menu_columns-0{width:80%;min-width:240px;max-width:0}.mm-wrapper_opening .mm-menu_columns-0~.mm-slideout{-webkit-transform:translate3d(80vw,0,0);transform:translate3d(80vw,0,0)}@media all and (max-width:300px){.mm-wrapper_opening .mm-menu_columns-0~.mm-slideout{-webkit-transform:translate3d(240px,0,0);transform:translate3d(240px,0,0)}}@media all and (min-width:0px){.mm-wrapper_opening .mm-menu_columns-0~.mm-slideout{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}.mm-wrapper_opening .mm-menu_columns-0.mm-menu_position-right.mm-menu_opened~.mm-slideout{-webkit-transform:translate3d(-80vw,0,0);transform:translate3d(-80vw,0,0)}@media all and (max-width:300px){.mm-wrapper_opening .mm-menu_columns-0.mm-menu_position-right.mm-menu_opened~.mm-slideout{-webkit-transform:translate3d(-240px,0,0);transform:translate3d(-240px,0,0)}}@media all and (min-width:0px){.mm-wrapper_opening .mm-menu_columns-0.mm-menu_position-right.mm-menu_opened~.mm-slideout{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}[class*=mm-menu_columns-] .mm-panels>.mm-panel_columns-1{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}.mm-menu_columns-1 .mm-panels>.mm-panel{z-index:1;width:100%}.mm-menu_columns-1 .mm-panels>.mm-panel else{width:100%}.mm-menu_columns-1 .mm-panels>.mm-panel:not(.mm-panel_opened):not(.mm-panel_opened-parent){-webkit-transform:translate3d(200%,0,0);transform:translate3d(200%,0,0)}.mm-menu_columns-1{width:80%;min-width:240px;max-width:440px}.mm-wrapper_opening .mm-menu_columns-1~.mm-slideout{-webkit-transform:translate3d(80vw,0,0);transform:translate3d(80vw,0,0)}@media all and (max-width:300px){.mm-wrapper_opening .mm-menu_columns-1~.mm-slideout{-webkit-transform:translate3d(240px,0,0);transform:translate3d(240px,0,0)}}@media all and (min-width:550px){.mm-wrapper_opening .mm-menu_columns-1~.mm-slideout{-webkit-transform:translate3d(440px,0,0);transform:translate3d(440px,0,0)}}.mm-wrapper_opening .mm-menu_columns-1.mm-menu_position-right.mm-menu_opened~.mm-slideout{-webkit-transform:translate3d(-80vw,0,0);transform:translate3d(-80vw,0,0)}@media all and (max-width:300px){.mm-wrapper_opening .mm-menu_columns-1.mm-menu_position-right.mm-menu_opened~.mm-slideout{-webkit-transform:translate3d(-240px,0,0);transform:translate3d(-240px,0,0)}}@media all and (min-width:550px){.mm-wrapper_opening .mm-menu_columns-1.mm-menu_position-right.mm-menu_opened~.mm-slideout{-webkit-transform:translate3d(-440px,0,0);transform:translate3d(-440px,0,0)}}[class*=mm-menu_columns-] .mm-panels>.mm-panel_columns-2{-webkit-transform:translate3d(200%,0,0);transform:translate3d(200%,0,0)}.mm-menu_columns-2 .mm-panels>.mm-panel{z-index:2;width:50%}.mm-menu_columns-2 .mm-panels>.mm-panel else{width:100%}.mm-menu_columns-2 .mm-panels>.mm-panel:not(.mm-panel_opened):not(.mm-panel_opened-parent){-webkit-transform:translate3d(300%,0,0);transform:translate3d(300%,0,0)}.mm-menu_columns-2{width:80%;min-width:240px;max-width:880px}.mm-wrapper_opening .mm-menu_columns-2~.mm-slideout{-webkit-transform:translate3d(80vw,0,0);transform:translate3d(80vw,0,0)}@media all and (max-width:300px){.mm-wrapper_opening .mm-menu_columns-2~.mm-slideout{-webkit-transform:translate3d(240px,0,0);transform:translate3d(240px,0,0)}}@media all and (min-width:1100px){.mm-wrapper_opening .mm-menu_columns-2~.mm-slideout{-webkit-transform:translate3d(880px,0,0);transform:translate3d(880px,0,0)}}.mm-wrapper_opening .mm-menu_columns-2.mm-menu_position-right.mm-menu_opened~.mm-slideout{-webkit-transform:translate3d(-80vw,0,0);transform:translate3d(-80vw,0,0)}@media all and (max-width:300px){.mm-wrapper_opening .mm-menu_columns-2.mm-menu_position-right.mm-menu_opened~.mm-slideout{-webkit-transform:translate3d(-240px,0,0);transform:translate3d(-240px,0,0)}}@media all and (min-width:1100px){.mm-wrapper_opening .mm-menu_columns-2.mm-menu_position-right.mm-menu_opened~.mm-slideout{-webkit-transform:translate3d(-880px,0,0);transform:translate3d(-880px,0,0)}}[class*=mm-menu_columns-] .mm-panels>.mm-panel_columns-3{-webkit-transform:translate3d(300%,0,0);transform:translate3d(300%,0,0)}.mm-menu_columns-3 .mm-panels>.mm-panel{z-index:3;width:33.34%}.mm-menu_columns-3 .mm-panels>.mm-panel else{width:100%}.mm-menu_columns-3 .mm-panels>.mm-panel:not(.mm-panel_opened):not(.mm-panel_opened-parent){-webkit-transform:translate3d(400%,0,0);transform:translate3d(400%,0,0)}.mm-menu_columns-3{width:80%;min-width:240px;max-width:1320px}.mm-wrapper_opening .mm-menu_columns-3~.mm-slideout{-webkit-transform:translate3d(80vw,0,0);transform:translate3d(80vw,0,0)}@media all and (max-width:300px){.mm-wrapper_opening .mm-menu_columns-3~.mm-slideout{-webkit-transform:translate3d(240px,0,0);transform:translate3d(240px,0,0)}}@media all and (min-width:1650px){.mm-wrapper_opening .mm-menu_columns-3~.mm-slideout{-webkit-transform:translate3d(1320px,0,0);transform:translate3d(1320px,0,0)}}.mm-wrapper_opening .mm-menu_columns-3.mm-menu_position-right.mm-menu_opened~.mm-slideout{-webkit-transform:translate3d(-80vw,0,0);transform:translate3d(-80vw,0,0)}@media all and (max-width:300px){.mm-wrapper_opening .mm-menu_columns-3.mm-menu_position-right.mm-menu_opened~.mm-slideout{-webkit-transform:translate3d(-240px,0,0);transform:translate3d(-240px,0,0)}}@media all and (min-width:1650px){.mm-wrapper_opening .mm-menu_columns-3.mm-menu_position-right.mm-menu_opened~.mm-slideout{-webkit-transform:translate3d(-1320px,0,0);transform:translate3d(-1320px,0,0)}}[class*=mm-menu_columns-] .mm-panels>.mm-panel_columns-4{-webkit-transform:translate3d(400%,0,0);transform:translate3d(400%,0,0)}.mm-menu_columns-4 .mm-panels>.mm-panel{z-index:4;width:25%}.mm-menu_columns-4 .mm-panels>.mm-panel else{width:100%}.mm-menu_columns-4 .mm-panels>.mm-panel:not(.mm-panel_opened):not(.mm-panel_opened-parent){-webkit-transform:translate3d(500%,0,0);transform:translate3d(500%,0,0)}.mm-menu_columns-4{width:80%;min-width:240px;max-width:1760px}.mm-wrapper_opening .mm-menu_columns-4~.mm-slideout{-webkit-transform:translate3d(80vw,0,0);transform:translate3d(80vw,0,0)}@media all and (max-width:300px){.mm-wrapper_opening .mm-menu_columns-4~.mm-slideout{-webkit-transform:translate3d(240px,0,0);transform:translate3d(240px,0,0)}}@media all and (min-width:2200px){.mm-wrapper_opening .mm-menu_columns-4~.mm-slideout{-webkit-transform:translate3d(1760px,0,0);transform:translate3d(1760px,0,0)}}.mm-wrapper_opening .mm-menu_columns-4.mm-menu_position-right.mm-menu_opened~.mm-slideout{-webkit-transform:translate3d(-80vw,0,0);transform:translate3d(-80vw,0,0)}@media all and (max-width:300px){.mm-wrapper_opening .mm-menu_columns-4.mm-menu_position-right.mm-menu_opened~.mm-slideout{-webkit-transform:translate3d(-240px,0,0);transform:translate3d(-240px,0,0)}}@media all and (min-width:2200px){.mm-wrapper_opening .mm-menu_columns-4.mm-menu_position-right.mm-menu_opened~.mm-slideout{-webkit-transform:translate3d(-1760px,0,0);transform:translate3d(-1760px,0,0)}}[class*=mm-menu_columns-].mm-menu_position-bottom,[class*=mm-menu_columns-].mm-menu_position-top{width:100%;max-width:100%;min-width:100%}.mm-wrapper_opening [class*=mm-menu_columns-].mm-menu_position-front{-webkit-transition-property:width,min-width,max-width,-webkit-transform;transition-property:width,min-width,max-width,-webkit-transform;-o-transition-property:width,min-width,max-width,transform;transition-property:width,min-width,max-width,transform;transition-property:width,min-width,max-width,transform,-webkit-transform}.mm-counter{color:rgba(0,0,0,.3);display:block;padding-left:20px;float:right;text-align:right;color:var(--mm-color-text-dimmed)}.mm-listitem_nosubitems>.mm-counter{display:none}[dir=rtl] .mm-counter{text-align:left;float:left;padding-left:0;padding-right:20px}.mm-divider{position:relative;min-height:20px;padding:4.3px;background:#f3f3f3;-o-text-overflow:ellipsis;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;min-height:var(--mm-line-height);padding:calc(((var(--mm-listitem-size) * .65) - var(--mm-line-height)) * .5);padding-right:10px;padding-left:20px;font-size:75%;text-transform:uppercase;background:var(--mm-color-background);opacity:1;-webkit-transition:opacity .4s ease;-o-transition:opacity .4s ease;transition:opacity .4s ease}.mm-divider:before{background:rgba(0,0,0,.05)}@supports ((position:-webkit-sticky) or (position:sticky)){.mm-divider{position:-webkit-sticky;position:sticky;z-index:2;top:0}.mm-navbar_sticky:not(.mm-hidden)~.mm-listview .mm-divider{top:var(--mm-navbar-size)}}.mm-divider:before{content:'';position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:var(--mm-color-background-highlight)}.mm-wrapper_dragging .mm-menu,.mm-wrapper_dragging .mm-slideout{-webkit-transition-duration:0s!important;-o-transition-duration:0s!important;transition-duration:0s!important;-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important;user-select:none!important}.mm-wrapper_dragging .mm-menu{pointer-events:none!important}.mm-wrapper_dragging .mm-wrapper__blocker{display:none!important}.mm-menu_dropdown{-webkit-box-shadow:0 2px 10px rgba(0,0,0,.3);box-shadow:0 2px 10px rgba(0,0,0,.3);height:80%}.mm-wrapper_dropdown .mm-slideout{-webkit-transform:none!important;-ms-transform:none!important;transform:none!important;z-index:0}.mm-wrapper_dropdown .mm-wrapper__blocker{-webkit-transition-delay:0s!important;-o-transition-delay:0s!important;transition-delay:0s!important;z-index:1}.mm-wrapper_dropdown .mm-menu_dropdown{z-index:2}.mm-wrapper_dropdown.mm-wrapper_opened:not(.mm-wrapper_opening) .mm-menu_dropdown{display:none}.mm-menu_tip-bottom:before,.mm-menu_tip-left:before,.mm-menu_tip-right:before,.mm-menu_tip-top:before{content:'';background:inherit;-webkit-box-shadow:0 2px 10px rgba(0,0,0,.3);box-shadow:0 2px 10px rgba(0,0,0,.3);display:block;width:15px;height:15px;position:absolute;z-index:-1;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.mm-menu_tip-left:before{left:22px}.mm-menu_tip-right:before{right:22px}.mm-menu_tip-top:before{top:-8px}.mm-menu_tip-bottom:before{bottom:-8px}:root{--mm-iconbar-size:50px}.mm-menu_iconbar-left .mm-navbars_bottom,.mm-menu_iconbar-left .mm-navbars_top,.mm-menu_iconbar-left .mm-panels{margin-left:50px;margin-left:var(--mm-iconbar-size)}.mm-menu_iconbar-right .mm-navbars_bottom,.mm-menu_iconbar-right .mm-navbars_top,.mm-menu_iconbar-right .mm-panels{margin-right:50px;margin-right:var(--mm-iconbar-size)}.mm-iconbar{width:50px;border-color:rgba(0,0,0,.1);background:#f3f3f3;color:rgba(0,0,0,.3);display:none;position:absolute;top:0;bottom:0;z-index:2;width:var(--mm-iconbar-size);overflow:hidden;-webkit-box-sizing:border-box;box-sizing:border-box;border:0 solid;border-color:var(--mm-color-border);background:var(--mm-color-background);color:var(--mm-color-text-dimmed);text-align:center}.mm-menu_iconbar-left .mm-iconbar,.mm-menu_iconbar-right .mm-iconbar{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.mm-menu_iconbar-left .mm-iconbar{border-right-width:1px;left:0}.mm-menu_iconbar-right .mm-iconbar{border-left-width:1px;right:0}.mm-iconbar__bottom,.mm-iconbar__top{width:100%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-overflow-scrolling:touch;overflow:hidden;overflow-y:auto;-ms-scroll-chaining:none;overscroll-behavior:contain}.mm-iconbar__bottom>*,.mm-iconbar__top>*{-webkit-box-sizing:border-box;box-sizing:border-box;display:block;padding:12.5px 0}.mm-iconbar__bottom a,.mm-iconbar__bottom a:hover,.mm-iconbar__top a,.mm-iconbar__top a:hover{text-decoration:none}.mm-iconbar__top{top:0}.mm-iconbar__bottom{bottom:0}.mm-iconbar__tab_selected{background:rgba(255,255,255,.4);background:var(--mm-color-background-emphasis)}:root{--mm-iconpanel-size:50px}.mm-panel_iconpanel-1{width:calc(100% - 50px);width:calc(100% - (var(--mm-iconpanel-size) * 1))}.mm-panel_iconpanel-2{width:calc(100% - 100px);width:calc(100% - (var(--mm-iconpanel-size) * 2))}.mm-panel_iconpanel-3{width:calc(100% - 150px);width:calc(100% - (var(--mm-iconpanel-size) * 3))}.mm-panel_iconpanel-first~.mm-panel{width:calc(100% - 50px);width:calc(100% - var(--mm-iconpanel-size))}.mm-menu_iconpanel .mm-panels>.mm-panel{left:auto;-webkit-transition-property:width,-webkit-transform;transition-property:width,-webkit-transform;-o-transition-property:transform,width;transition-property:transform,width;transition-property:transform,width,-webkit-transform}.mm-menu_iconpanel .mm-panels>.mm-panel_opened,.mm-menu_iconpanel .mm-panels>.mm-panel_opened-parent{display:block!important}.mm-menu_iconpanel .mm-panels>.mm-panel_opened-parent{overflow-y:hidden;-webkit-transform:unset;-ms-transform:unset;transform:unset}.mm-menu_iconpanel .mm-panels>.mm-panel:not(.mm-panel_iconpanel-first):not(.mm-panel_iconpanel-0){border-left-width:1px;border-left-style:solid}.mm-menu_hidedivider .mm-panel_opened-parent .mm-divider,.mm-menu_hidenavbar .mm-panel_opened-parent .mm-navbar{opacity:0}.mm-panel__blocker{background:inherit;opacity:0;display:block;position:absolute;top:0;right:0;left:0;z-index:3;-webkit-transition:opacity .4s ease;-o-transition:opacity .4s ease;transition:opacity .4s ease}.mm-panel_opened-parent .mm-panel__blocker{opacity:.6;bottom:-100000px}[dir=rtl] .mm-menu_iconpanel .mm-panels>.mm-panel{left:0;right:auto;-webkit-transition-property:width,-webkit-transform;transition-property:width,-webkit-transform;-o-transition-property:transform,width;transition-property:transform,width;transition-property:transform,width,-webkit-transform}[dir=rtl] .mm-menu_iconpanel .mm-panels>.mm-panel:not(.mm-panel_iconpanel-first):not(.mm-panel_iconpanel-0){border-left:none;border-right:1px solid;border-color:inherit}.mm-menu_keyboardfocus a:focus,.mm-menu_keyboardfocus.mm-menu_opened~.mm-wrapper__blocker a:focus{background:rgba(255,255,255,.4);background:var(--mm-color-background-emphasis);outline:0}.mm-wrapper__blocker .mm-tabstart{cursor:default;display:block;width:100%;height:100%}.mm-wrapper__blocker .mm-tabend{opacity:0;position:absolute;bottom:0}.mm-navbars_top{-ms-flex-negative:0;flex-shrink:0}.mm-navbars_top .mm-navbar:not(:last-child){border-bottom:none}.mm-navbars_bottom{-ms-flex-negative:0;flex-shrink:0}.mm-navbars_bottom .mm-navbar{border-bottom:none}.mm-navbars_bottom .mm-navbar:first-child{border-top:1px solid rgba(0,0,0,.1);border-top:1px solid var(--mm-color-border)}.mm-btn:not(.mm-hidden)+.mm-navbar__searchfield .mm-searchfield__input{padding-left:0}.mm-navbar__searchfield:not(:last-child) .mm-searchfield__input{padding-right:0}.mm-navbar__breadcrumbs{-o-text-overflow:ellipsis;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;-webkit-box-flex:1;-ms-flex:1 1 50%;flex:1 1 50%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;padding:0 20px;overflow-x:auto;-webkit-overflow-scrolling:touch}.mm-navbar__breadcrumbs>*{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding-right:6px}.mm-navbar__breadcrumbs>a{text-decoration:underline}.mm-navbar__breadcrumbs:not(:last-child){padding-right:0}.mm-btn:not(.mm-hidden)+.mm-navbar__breadcrumbs{padding-left:0}.mm-navbar_tabs>*{padding:0 10px;border:1px solid transparent}.mm-navbar__tab_selected{background:#f3f3f3;color:rgba(0,0,0,.75);background:var(--mm-color-background);color:var(--mm-color-text)}.mm-navbar__tab_selected:not(:first-child){border-left-color:rgba(0,0,0,.1)}.mm-navbar__tab_selected:not(:last-child){border-right-color:rgba(0,0,0,.1)}.mm-navbar__tab_selected:not(:first-child){border-left-color:var(--mm-color-border)}.mm-navbar__tab_selected:not(:last-child){border-right-color:var(--mm-color-border)}.mm-navbars_top .mm-navbar_tabs{border-bottom:none}.mm-navbars_top .mm-navbar_tabs>*{border-bottom-color:rgba(0,0,0,.1);border-bottom-color:var(--mm-color-border)}.mm-navbars_top .mm-navbar__tab_selected{border-top-color:rgba(0,0,0,.1);border-top-color:var(--mm-color-border);border-bottom-color:transparent}.mm-navbars_top.mm-navbars_has-tabs .mm-navbar{background:rgba(255,255,255,.4);background:var(--mm-color-background-emphasis)}.mm-navbars_top.mm-navbars_has-tabs .mm-navbar_tabs~.mm-navbar{background:#f3f3f3;background:var(--mm-color-background)}.mm-navbars_bottom .mm-navbar_tabs:first-child{border-top:none}.mm-navbars_bottom .mm-navbar_tabs>*{border-top-color:rgba(0,0,0,.1);border-top-color:var(--mm-color-border)}.mm-navbars_bottom .mm-navbar__tab_selected{border-bottom-color:rgba(0,0,0,.1);border-bottom-color:var(--mm-color-border);border-top-color:transparent}.mm-navbars_bottom.mm-navbars_has-tabs .mm-navbar{background:#f3f3f3;background:var(--mm-color-background)}.mm-navbars_bottom.mm-navbars_has-tabs .mm-navbar_tabs,.mm-navbars_bottom.mm-navbars_has-tabs .mm-navbar_tabs~.mm-navbar{background:rgba(255,255,255,.4);background:var(--mm-color-background-emphasis)}.mm-searchfield{height:44px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;height:var(--mm-navbar-size);padding:0;overflow:hidden}.mm-searchfield input{height:30.8px;line-height:30.8px}.mm-searchfield input,.mm-searchfield input:focus,.mm-searchfield input:hover{background:rgba(0,0,0,.05);color:rgba(0,0,0,.75)}.mm-searchfield input{display:block;width:100%;max-width:100%;height:calc(var(--mm-navbar-size) * .7);min-height:unset;max-height:unset;margin:0;padding:0 10px;-webkit-box-sizing:border-box;box-sizing:border-box;border:none!important;border-radius:4px;line-height:calc(var(--mm-navbar-size) * .7);-webkit-box-shadow:none!important;box-shadow:none!important;outline:0!important;font:inherit;font-size:inherit}.mm-searchfield input,.mm-searchfield input:focus,.mm-searchfield input:hover{background:var(--mm-color-background-highlight);color:var(--mm-color-text)}.mm-searchfield input::-ms-clear{display:none}.mm-searchfield__input{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1;flex:1;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:relative;width:100%;max-width:100%;padding:0 10px;-webkit-box-sizing:border-box;box-sizing:border-box}.mm-panel__noresultsmsg{color:rgba(0,0,0,.3);padding:50px 0;color:var(--mm-color-text-dimmed);text-align:center;font-size:150%}.mm-searchfield__btn{position:absolute;right:0;top:0;bottom:0}.mm-panel_search{left:0!important;right:0!important;width:100%!important;border-left:none!important}.mm-searchfield__cancel{line-height:44px;display:block;padding-right:10px;margin-right:-100px;line-height:var(--mm-navbar-size);text-decoration:none;-webkit-transition:margin .4s ease;-o-transition:margin .4s ease;transition:margin .4s ease}.mm-searchfield__cancel-active{margin-right:0}.mm-listitem_nosubitems>.mm-listitem__btn{display:none}.mm-listitem_nosubitems>.mm-listitem__text{padding-right:10px}.mm-listitem_onlysubitems>.mm-listitem__text:not(.mm-listitem__btn){z-index:-1;pointer-events:none}.mm-sectionindexer{background:inherit;text-align:center;font-size:12px;-webkit-box-sizing:border-box;box-sizing:border-box;width:20px;position:absolute;top:0;bottom:0;right:-20px;z-index:5;-webkit-transition:right .4s ease;-o-transition:right .4s ease;transition:right .4s ease;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:space-evenly;-ms-flex-pack:space-evenly;justify-content:space-evenly}.mm-sectionindexer a{color:rgba(0,0,0,.3);color:var(--mm-color-text-dimmed);line-height:1;text-decoration:none;display:block}.mm-sectionindexer~.mm-panel{padding-right:0}.mm-sectionindexer_active{right:0}.mm-sectionindexer_active~.mm-panel{padding-right:20px}.mm-menu_selected-hover .mm-listitem__btn,.mm-menu_selected-hover .mm-listitem__text,.mm-menu_selected-parent .mm-listitem__btn,.mm-menu_selected-parent .mm-listitem__text{-webkit-transition:background-color .4s ease;-o-transition:background-color .4s ease;transition:background-color .4s ease}.mm-menu_selected-hover .mm-listview:hover>.mm-listitem_selected:not(:hover)>.mm-listitem__text{background:0 0}.mm-menu_selected-hover .mm-listitem__btn:hover,.mm-menu_selected-hover .mm-listitem__text:hover{background:rgba(255,255,255,.4);background:var(--mm-color-background-emphasis)}.mm-menu_selected-parent .mm-panel_opened-parent .mm-listitem:not(.mm-listitem_selected-parent)>.mm-listitem__text{background:0 0}.mm-menu_selected-parent .mm-listitem_selected-parent>.mm-listitem__btn,.mm-menu_selected-parent .mm-listitem_selected-parent>.mm-listitem__text{background:rgba(255,255,255,.4);background:var(--mm-color-background-emphasis)}:root{--mm-sidebar-collapsed-size:50px;--mm-sidebar-expanded-size:440px}.mm-wrapper_sidebar-collapsed body,.mm-wrapper_sidebar-expanded body{position:relative}.mm-wrapper_sidebar-collapsed .mm-slideout,.mm-wrapper_sidebar-expanded .mm-slideout{-webkit-transition-property:width,-webkit-transform;transition-property:width,-webkit-transform;-o-transition-property:width,transform;transition-property:width,transform;transition-property:width,transform,-webkit-transform}.mm-wrapper_sidebar-collapsed .mm-page,.mm-wrapper_sidebar-expanded .mm-page{background:inherit;-webkit-box-sizing:border-box;box-sizing:border-box;min-height:100vh}.mm-wrapper_sidebar-collapsed .mm-menu_sidebar-collapsed,.mm-wrapper_sidebar-expanded .mm-menu_sidebar-expanded{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;top:0!important;right:auto!important;bottom:0!important;left:0!important}.mm-wrapper_sidebar-collapsed .mm-slideout{width:calc(100% - 50px);-webkit-transform:translate3d(50px,0,0);transform:translate3d(50px,0,0);width:calc(100% - var(--mm-sidebar-collapsed-size));-webkit-transform:translate3d(var(--mm-sidebar-collapsed-size),0,0);transform:translate3d(var(--mm-sidebar-collapsed-size),0,0)}.mm-wrapper_sidebar-collapsed:not(.mm-wrapper_opening) .mm-menu_hidedivider .mm-divider,.mm-wrapper_sidebar-collapsed:not(.mm-wrapper_opening) .mm-menu_hidenavbar .mm-navbar{opacity:0}.mm-wrapper_sidebar-expanded .mm-menu_sidebar-expanded{width:440px;width:var(--mm-sidebar-expanded-size);min-width:0!important;max-width:100000px!important;border-right-width:1px;border-right-style:solid}.mm-wrapper_sidebar-expanded .mm-menu_sidebar-expanded.mm-menu_pageshadow:after{content:none;display:none}.mm-wrapper_sidebar-expanded.mm-wrapper_blocking,.mm-wrapper_sidebar-expanded.mm-wrapper_blocking body{overflow:visible}.mm-wrapper_sidebar-expanded .mm-wrapper__blocker{display:none!important}.mm-wrapper_sidebar-expanded:not(.mm-wrapper_sidebar-closed) .mm-menu_sidebar-expanded.mm-menu_opened~.mm-slideout{width:calc(100% - 440px);-webkit-transform:translate3d(440px,0,0);transform:translate3d(440px,0,0);width:calc(100% - var(--mm-sidebar-expanded-size));-webkit-transform:translate3d(var(--mm-sidebar-expanded-size),0,0);transform:translate3d(var(--mm-sidebar-expanded-size),0,0)}.mm-menu__blocker{background:rgba(3,2,1,0);display:block;position:absolute;top:0;right:0;bottom:0;left:0;z-index:3}.mm-menu_opened .mm-menu__blocker{display:none}[dir=rtl].mm-wrapper_sidebar-collapsed .mm-slideout{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}[dir=rtl].mm-wrapper_sidebar-expanded .mm-slideout{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}[dir=rtl].mm-wrapper_sidebar-expanded:not(.mm-wrapper_sidebar-closed) .mm-menu_sidebar-expanded.mm-menu_opened~.mm-slideout{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}input.mm-toggle{margin-top:5px;background:rgba(0,0,0,.1);display:inline-block;min-width:58px;width:58px;height:34px;margin:0 10px;margin-top:calc((var(--mm-listitem-size) - 34px)/ 2);border:none!important;background:var(--mm-color-border);border-radius:34px;-webkit-appearance:none!important;-moz-appearance:none!important;appearance:none!important;cursor:pointer;-webkit-transition:background-color .2s ease;-o-transition:background-color .2s ease;transition:background-color .2s ease}input.mm-toggle:before{background:#f3f3f3}input.mm-toggle:before{content:'';display:block;width:32px;height:32px;margin:1px;border-radius:34px;background:var(--mm-color-background);-webkit-transition:-webkit-transform .2s ease;transition:-webkit-transform .2s ease;-o-transition:transform .2s ease;transition:transform .2s ease;transition:transform .2s ease,-webkit-transform .2s ease}input.mm-toggle:checked{background:#4bd963}input.mm-toggle:checked:before{-webkit-transform:translateX(24px);-ms-transform:translateX(24px);transform:translateX(24px)}input.mm-check{margin-top:2px;-webkit-appearance:none!important;-moz-appearance:none!important;appearance:none!important;border:none!important;background:0 0!important;cursor:pointer;display:inline-block;width:40px;height:40px;margin:0 10px;margin-top:calc((var(--mm-listitem-size) - 40px)/ 2)}input.mm-check:before{content:'';display:block;width:40%;height:20%;margin:25% 0 0 20%;border-left:3px solid;border-bottom:3px solid;border-color:var(--mm-color-text);opacity:.3;-webkit-transform:rotate(-45deg);-ms-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-transition:opacity .2s ease;-o-transition:opacity .2s ease;transition:opacity .2s ease}input.mm-check:checked:before{opacity:1}[dir=rtl] input.mm-toggle:checked~label.mm-toggle:before{float:left}.mm-menu_border-none .mm-listitem:after{content:none}.mm-menu_border-full .mm-listitem:after{left:0!important}.mm-menu_fx-menu-slide{-webkit-transition:-webkit-transform .4s ease;transition:-webkit-transform .4s ease;-o-transition:transform .4s ease;transition:transform .4s ease;transition:transform .4s ease,-webkit-transform .4s ease}.mm-wrapper_opened .mm-menu_fx-menu-slide{-webkit-transform:translate3d(-30%,0,0);transform:translate3d(-30%,0,0)}.mm-wrapper_opening .mm-menu_fx-menu-slide{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.mm-wrapper_opened .mm-menu_fx-menu-slide.mm-menu_position-right{-webkit-transform:translate3d(30%,0,0);transform:translate3d(30%,0,0)}.mm-wrapper_opening .mm-menu_fx-menu-slide.mm-menu_position-right{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.mm-menu_fx-panels-none .mm-panel,.mm-panel_fx-none{-webkit-transition-property:none;-o-transition-property:none;transition-property:none}.mm-menu_fx-panels-none .mm-panel.mm-panel_opened-parent,.mm-panel_fx-none.mm-panel_opened-parent{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.mm-menu_fx-panels-slide-0 .mm-panel_opened-parent{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.mm-menu_fx-panels-slide-100 .mm-panel_opened-parent{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}.mm-menu_fullscreen{width:100%;min-width:140px;max-width:10000px}.mm-wrapper_opening .mm-menu_fullscreen~.mm-slideout{-webkit-transform:translate3d(100vw,0,0);transform:translate3d(100vw,0,0)}@media all and (max-width:140px){.mm-wrapper_opening .mm-menu_fullscreen~.mm-slideout{-webkit-transform:translate3d(140px,0,0);transform:translate3d(140px,0,0)}}@media all and (min-width:10000px){.mm-wrapper_opening .mm-menu_fullscreen~.mm-slideout{-webkit-transform:translate3d(10000px,0,0);transform:translate3d(10000px,0,0)}}.mm-wrapper_opening .mm-menu_fullscreen.mm-menu_position-right.mm-menu_opened~.mm-slideout{-webkit-transform:translate3d(-100vw,0,0);transform:translate3d(-100vw,0,0)}@media all and (max-width:140px){.mm-wrapper_opening .mm-menu_fullscreen.mm-menu_position-right.mm-menu_opened~.mm-slideout{-webkit-transform:translate3d(-140px,0,0);transform:translate3d(-140px,0,0)}}@media all and (min-width:10000px){.mm-wrapper_opening .mm-menu_fullscreen.mm-menu_position-right.mm-menu_opened~.mm-slideout{-webkit-transform:translate3d(-10000px,0,0);transform:translate3d(-10000px,0,0)}}.mm-menu_fullscreen.mm-menu_position-top{height:100vh;min-height:140px;max-height:10000px}.mm-menu_fullscreen.mm-menu_position-bottom{height:100vh;min-height:140px;max-height:10000px}.mm-menu_listview-justify .mm-panels>.mm-panel{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.mm-menu_listview-justify .mm-panels>.mm-panel:after{content:none;display:none}.mm-menu_listview-justify .mm-panels>.mm-panel .mm-listview{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;height:100%;margin-top:0;margin-bottom:0}.mm-menu_listview-justify .mm-panels>.mm-panel .mm-listitem{-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto;min-height:50px}.mm-menu_listview-justify .mm-panels>.mm-panel .mm-listitem__text{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.mm-listview_inset{list-style:inside disc;width:100%;padding:0 30px 15px 30px;margin:0}.mm-listview_inset .mm-listitem{padding:5px 0}.mm-menu_multiline .mm-listitem__text{-o-text-overflow:clip;text-overflow:clip;white-space:normal}[class*=mm-menu_pagedim].mm-menu_opened~.mm-wrapper__blocker{opacity:0}.mm-wrapper_opening [class*=mm-menu_pagedim].mm-menu_opened~.mm-wrapper__blocker{opacity:.3;-webkit-transition:opacity .4s ease .4s;-o-transition:opacity .4s ease .4s;transition:opacity .4s ease .4s}.mm-menu_opened.mm-menu_pagedim~.mm-wrapper__blocker{background:inherit}.mm-menu_opened.mm-menu_pagedim-black~.mm-wrapper__blocker{background:#000}.mm-menu_opened.mm-menu_pagedim-white~.mm-wrapper__blocker{background:#fff}.mm-menu_popup{-webkit-transition:opacity .4s ease;-o-transition:opacity .4s ease;transition:opacity .4s ease;opacity:0;-webkit-box-shadow:0 2px 10px rgba(0,0,0,.3);box-shadow:0 2px 10px rgba(0,0,0,.3);height:80%;min-height:140px;max-height:880px;top:50%;left:50%;bottom:auto;right:auto;z-index:2;-webkit-transform:translate3d(-50%,-50%,0);transform:translate3d(-50%,-50%,0)}.mm-menu_popup.mm-menu_opened~.mm-slideout{-webkit-transform:none!important;-ms-transform:none!important;transform:none!important;z-index:0}.mm-menu_popup.mm-menu_opened~.mm-wrapper__blocker{-webkit-transition-delay:0s!important;-o-transition-delay:0s!important;transition-delay:0s!important;z-index:1}.mm-wrapper_opening .mm-menu_popup{opacity:1}.mm-menu_position-right{left:auto;right:0}.mm-wrapper_opening .mm-menu_position-right.mm-menu_opened~.mm-slideout{-webkit-transform:translate3d(-80vw,0,0);transform:translate3d(-80vw,0,0)}@media all and (max-width:300px){.mm-wrapper_opening .mm-menu_position-right.mm-menu_opened~.mm-slideout{-webkit-transform:translate3d(-240px,0,0);transform:translate3d(-240px,0,0)}}@media all and (min-width:550px){.mm-wrapper_opening .mm-menu_position-right.mm-menu_opened~.mm-slideout{-webkit-transform:translate3d(-440px,0,0);transform:translate3d(-440px,0,0)}}.mm-menu_position-bottom,.mm-menu_position-front,.mm-menu_position-top{-webkit-transition:-webkit-transform .4s ease;transition:-webkit-transform .4s ease;-o-transition:transform .4s ease;transition:transform .4s ease;transition:transform .4s ease,-webkit-transform .4s ease}.mm-menu_position-bottom.mm-menu_opened,.mm-menu_position-front.mm-menu_opened,.mm-menu_position-top.mm-menu_opened{z-index:2}.mm-menu_position-bottom.mm-menu_opened~.mm-slideout,.mm-menu_position-front.mm-menu_opened~.mm-slideout,.mm-menu_position-top.mm-menu_opened~.mm-slideout{-webkit-transform:none!important;-ms-transform:none!important;transform:none!important;z-index:0}.mm-menu_position-bottom.mm-menu_opened~.mm-wrapper__blocker,.mm-menu_position-front.mm-menu_opened~.mm-wrapper__blocker,.mm-menu_position-top.mm-menu_opened~.mm-wrapper__blocker{z-index:1}.mm-menu_position-front{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}.mm-menu_position-front.mm-menu_position-right{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}.mm-menu_position-bottom,.mm-menu_position-top{width:100%;min-width:100%;max-width:100%}.mm-menu_position-top{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}.mm-menu_position-top{height:80vh;min-height:140px;max-height:880px}.mm-menu_position-bottom{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0);top:auto}.mm-menu_position-bottom{height:80vh;min-height:140px;max-height:880px}.mm-wrapper_opening .mm-menu_position-bottom,.mm-wrapper_opening .mm-menu_position-front,.mm-wrapper_opening .mm-menu_position-top{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.mm-menu_shadow-page:after{-webkit-box-shadow:0 0 10px rgba(0,0,0,.3);box-shadow:0 0 10px rgba(0,0,0,.3);content:'';display:block;width:20px;height:120%;position:absolute;left:100%;top:-10%;z-index:100;-webkit-clip-path:polygon(-20px 0,0 0,0 100%,-20px 100%);clip-path:polygon(-20px 0,0 0,0 100%,-20px 100%);-webkit-box-shadow:var(--mm-shadow);box-shadow:var(--mm-shadow)}.mm-menu_shadow-page.mm-menu_position-right:after{left:auto;right:100%;-webkit-clip-path:polygon(20px 0,40px 0,40px 100%,20px 100%);clip-path:polygon(20px 0,40px 0,40px 100%,20px 100%)}.mm-menu_shadow-page.mm-menu_position-front:after{content:none;display:none}.mm-menu_shadow-menu{-webkit-box-shadow:0 0 10px rgba(0,0,0,.3);box-shadow:0 0 10px rgba(0,0,0,.3);-webkit-box-shadow:var(--mm-shadow);box-shadow:var(--mm-shadow)}.mm-menu_shadow-panels .mm-panels>.mm-panel{-webkit-box-shadow:0 0 10px rgba(0,0,0,.3);box-shadow:0 0 10px rgba(0,0,0,.3);-webkit-box-shadow:var(--mm-shadow);box-shadow:var(--mm-shadow)}.mm-menu_theme-white{--mm-color-border:rgba( 0,0,0, 0.1 );--mm-color-button:rgba( 0,0,0, 0.3 );--mm-color-text:rgba( 0,0,0, 0.7 );--mm-color-text-dimmed:rgba( 0,0,0, 0.3 );--mm-color-background:#fff;--mm-color-background-highlight:rgba( 0,0,0, 0.06 );--mm-color-background-emphasis:rgba( 0,0,0, 0.03 );--mm-shadow:0 0 10px rgba( 0,0,0, 0.2 )}.mm-menu_theme-dark{--mm-color-border:rgba( 0,0,0, 0.3 );--mm-color-button:rgba( 255,255,255, 0.4 );--mm-color-text:rgba( 255,255,255, 0.85 );--mm-color-text-dimmed:rgba( 255,255,255, 0.4 );--mm-color-background:#333;--mm-color-background-highlight:rgba( 255,255,255, 0.08 );--mm-color-background-emphasis:rgba( 0,0,0, 0.1 );--mm-shadow:0 0 20px rgba( 0,0,0, 0.5 )}.mm-menu_theme-black{--mm-color-border:rgba( 255,255,255, 0.25 );--mm-color-button:rgba( 255,255,255, 0.4 );--mm-color-text:rgba( 255,255,255, 0.75 );--mm-color-text-dimmed:rgba( 255,255,255, 0.4 );--mm-color-background:#000;--mm-color-background-highlight:rgba( 255,255,255, 0.2 );--mm-color-background-emphasis:rgba( 255,255,255, 0.15 );--mm-shadow:none}body.modal-open .mm-slideout{z-index:unset}
