@import"https://fonts.googleapis.com/css2?family=Archivo+Black&family=Inter:wght@400;500;600;700&display=swap";
/* ThunderGum — header.css (top nav)
   Extracted locally from the Magic Patterns Tailwind bundle.
   Reset is scoped to <nav> so it will not disturb a host page.
   Fonts still load from Google Fonts via the @import in header.css. */
*, :before, :after {
    --tw-border-spacing-x: 0;
    --tw-border-spacing-y: 0;
    --tw-translate-x: 0;
    --tw-translate-y: 0;
    --tw-rotate: 0;
    --tw-skew-x: 0;
    --tw-skew-y: 0;
    --tw-scale-x: 1;
    --tw-scale-y: 1;
    --tw-pan-x:;
    --tw-pan-y:;
    --tw-pinch-zoom:;
    --tw-scroll-snap-strictness: proximity;
    --tw-gradient-from-position:;
    --tw-gradient-via-position:;
    --tw-gradient-to-position:;
    --tw-ordinal:;
    --tw-slashed-zero:;
    --tw-numeric-figure:;
    --tw-numeric-spacing:;
    --tw-numeric-fraction:;
    --tw-ring-inset:;
    --tw-ring-offset-width: 0px;
    --tw-ring-offset-color: #fff;
    --tw-ring-color: rgb(59 130 246 / .5);
    --tw-ring-offset-shadow: 0 0 #0000;
    --tw-ring-shadow: 0 0 #0000;
    --tw-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000;
    --tw-blur:;
    --tw-brightness:;
    --tw-contrast:;
    --tw-grayscale:;
    --tw-hue-rotate:;
    --tw-invert:;
    --tw-saturate:;
    --tw-sepia:;
    --tw-drop-shadow:;
    --tw-backdrop-blur:;
    --tw-backdrop-brightness:;
    --tw-backdrop-contrast:;
    --tw-backdrop-grayscale:;
    --tw-backdrop-hue-rotate:;
    --tw-backdrop-invert:;
    --tw-backdrop-opacity:;
    --tw-backdrop-saturate:;
    --tw-backdrop-sepia:;
    --tw-contain-size:;
    --tw-contain-layout:;
    --tw-contain-paint:;
    --tw-contain-style:
}

::backdrop {
    --tw-border-spacing-x: 0;
    --tw-border-spacing-y: 0;
    --tw-translate-x: 0;
    --tw-translate-y: 0;
    --tw-rotate: 0;
    --tw-skew-x: 0;
    --tw-skew-y: 0;
    --tw-scale-x: 1;
    --tw-scale-y: 1;
    --tw-pan-x:;
    --tw-pan-y:;
    --tw-pinch-zoom:;
    --tw-scroll-snap-strictness: proximity;
    --tw-gradient-from-position:;
    --tw-gradient-via-position:;
    --tw-gradient-to-position:;
    --tw-ordinal:;
    --tw-slashed-zero:;
    --tw-numeric-figure:;
    --tw-numeric-spacing:;
    --tw-numeric-fraction:;
    --tw-ring-inset:;
    --tw-ring-offset-width: 0px;
    --tw-ring-offset-color: #fff;
    --tw-ring-color: rgb(59 130 246 / .5);
    --tw-ring-offset-shadow: 0 0 #0000;
    --tw-ring-shadow: 0 0 #0000;
    --tw-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000;
    --tw-blur:;
    --tw-brightness:;
    --tw-contrast:;
    --tw-grayscale:;
    --tw-hue-rotate:;
    --tw-invert:;
    --tw-saturate:;
    --tw-sepia:;
    --tw-drop-shadow:;
    --tw-backdrop-blur:;
    --tw-backdrop-brightness:;
    --tw-backdrop-contrast:;
    --tw-backdrop-grayscale:;
    --tw-backdrop-hue-rotate:;
    --tw-backdrop-invert:;
    --tw-backdrop-opacity:;
    --tw-backdrop-saturate:;
    --tw-backdrop-sepia:;
    --tw-contain-size:;
    --tw-contain-layout:;
    --tw-contain-paint:;
    --tw-contain-style:
}

nav, nav *, nav:before, nav *:before, nav:after, nav *:after {
    box-sizing: border-box;
    border-width: 0;
    border-style: solid;
    border-color: #e5e7eb
}

:before, :after {
    --tw-content: ""
}

nav html, nav:host, nav *:host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    -moz-tab-size: 4;
    tab-size: 4;
    font-family: ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";
    font-feature-settings: normal;
    font-variation-settings: normal;
    -webkit-tap-highlight-color: transparent
}

nav body {
    margin: 0;
    line-height: inherit
}

nav hr {
    height: 0;
    color: inherit;
    border-top-width: 1px
}

nav abbr:where([title]) {
    text-decoration: underline dotted
}

nav h1, nav h2, nav h3, nav h4, nav h5, nav h6 {
    font-size: inherit;
    font-weight: inherit
}

nav a {
    color: inherit;
    text-decoration: inherit
}

nav b, nav strong {
    font-weight: bolder
}

nav code, nav kbd, nav samp, nav pre {
    font-family: ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;
    font-feature-settings: normal;
    font-variation-settings: normal;
    font-size: 1em
}

nav small {
    font-size: 80%
}

nav sub, nav sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

nav sub {
    bottom: -.25em
}

nav sup {
    top: -.5em
}

nav table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse
}

nav button, nav input, nav optgroup, nav select, nav textarea {
    font-family: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    font-size: 100%;
    font-weight: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    color: inherit;
    margin: 0;
    padding: 0
}

nav button, nav select {
    text-transform: none
}

nav button, nav input:where([type=button]), nav input:where([type=reset]), nav input:where([type=submit]) {
    -webkit-appearance: button;
    background-color: transparent;
    background-image: none
}

nav:-moz-focusring, nav *:-moz-focusring {
    outline: auto
}

nav:-moz-ui-invalid, nav *:-moz-ui-invalid {
    box-shadow: none
}

nav progress {
    vertical-align: baseline
}

nav::-webkit-inner-spin-button, nav *::-webkit-inner-spin-button, nav::-webkit-outer-spin-button, nav *::-webkit-outer-spin-button {
    height: auto
}

nav [type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

nav::-webkit-search-decoration, nav *::-webkit-search-decoration {
    -webkit-appearance: none
}

nav::-webkit-file-upload-button, nav *::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

nav summary {
    display: list-item
}

nav blockquote, nav dl, nav dd, nav h1, nav h2, nav h3, nav h4, nav h5, nav h6, nav hr, nav figure, nav p, nav pre {
    margin: 0
}

nav fieldset {
    margin: 0;
    padding: 0
}

nav legend {
    padding: 0
}

nav ol, nav ul, nav menu {
    list-style: none;
    margin: 0;
    padding: 0
}

nav dialog {
    padding: 0
}

nav textarea {
    resize: vertical
}

    nav input::placeholder, nav textarea::placeholder {
        opacity: 1;
        color: #9ca3af
    }

nav button, nav [role=button] {
    cursor: pointer
}

nav:disabled, nav *:disabled {
    cursor: default
}

nav img, nav svg, nav video, nav canvas, nav audio, nav iframe, nav embed, nav object {
    display: block;
    vertical-align: middle
}

nav img, nav video {
    max-width: 100%;
    height: auto
}

nav [hidden]:where(:not([hidden=until-found])) {
    display: none
}

nav body {
    --tw-bg-opacity: 1;
    background-color: rgb(10 10 10 / var(--tw-bg-opacity, 1));
    font-family: ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

    nav body *::selection {
        --tw-bg-opacity: 1;
        background-color: rgb(255 230 0 / var(--tw-bg-opacity, 1));
        --tw-text-opacity: 1;
        color: rgb(0 0 0 / var(--tw-text-opacity, 1))
    }

    nav body::selection {
        --tw-bg-opacity: 1;
        background-color: rgb(255 230 0 / var(--tw-bg-opacity, 1));
        --tw-text-opacity: 1;
        color: rgb(0 0 0 / var(--tw-text-opacity, 1))
    }

nav h1, nav h2, nav h3, nav h4, nav h5, nav h6 {
    font-family: Archivo Black;
    text-transform: uppercase;
    letter-spacing: .025em
}

.fixed {
    position: fixed
}

.absolute {
    position: absolute
}

.relative {
    position: relative
}

.-right-2 {
    right: -.5rem
}

.-top-2 {
    top: -.5rem
}

.left-0 {
    left: 0
}

.right-0 {
    right: 0
}

.top-0 {
    top: 0
}

.z-50 {
    z-index: 50
}

.mx-auto {
    margin-left: auto;
    margin-right: auto
}

.block {
    display: block
}

.flex {
    display: flex
}

.hidden {
    display: none
}

.h-20 {
    height: 5rem
}

.h-4 {
    height: 1rem
}

.h-6 {
    height: 1.5rem
}

.w-4 {
    width: 1rem
}

.w-6 {
    width: 1.5rem
}

.max-w-7xl {
    max-width: 80rem
}

.flex-col {
    flex-direction: column
}

.items-center {
    align-items: center
}

.justify-center {
    justify-content: center
}

.justify-between {
    justify-content: space-between
}

.gap-2 {
    gap: .5rem
}

.gap-6 {
    gap: 1.5rem
}

.gap-8 {
    gap: 2rem
}

.rounded-full {
    border-radius: 9999px
}

.border-b {
    border-bottom-width: 1px
}

.border-t {
    border-top-width: 1px
}

.border-\[\#1a1a1a\] {
    --tw-border-opacity: 1;
    border-color: rgb(26 26 26 / var(--tw-border-opacity, 1))
}

.bg-\[\#0A0A0A\]\/80 {
    background-color: #0a0a0acc
}

.bg-\[\#FF0033\] {
    --tw-bg-opacity: 1;
    background-color: rgb(255 0 51 / var(--tw-bg-opacity, 1))
}

.bg-\[\#FF0033\]\/5 {
    background-color: #ff00330d
}

.bg-\[\#FFE600\] {
    --tw-bg-opacity: 1;
    background-color: rgb(255 230 0 / var(--tw-bg-opacity, 1))
}

.bg-\[\#FFE600\]\/10 {
    background-color: #ffe6001a
}

.bg-\[\#FFE600\]\/20 {
    background-color: #ffe60033
}

.bg-\[\#FFE600\]\/5 {
    background-color: #ffe6000d
}

.px-6 {
    padding-left: 1.5rem;
    padding-right: 1.5rem
}

.py-3 {
    padding-top: .75rem;
    padding-bottom: .75rem
}

.py-4 {
    padding-top: 1rem;
    padding-bottom: 1rem
}

.font-\[\'Archivo_Black\'\] {
    font-family: Archivo Black
}

.text-2xl {
    font-size: 1.5rem;
    line-height: 2rem
}

.text-\[10px\] {
    font-size: 10px
}

.text-sm {
    font-size: .875rem;
    line-height: 1.25rem
}

.font-bold {
    font-weight: 700
}

.uppercase {
    text-transform: uppercase
}

.tracking-wider {
    letter-spacing: .05em
}

.tracking-widest {
    letter-spacing: .1em
}

.text-\[\#FFE600\] {
    --tw-text-opacity: 1;
    color: rgb(255 230 0 / var(--tw-text-opacity, 1))
}

.text-\[\#FFE600\]\/20 {
    color: #ffe60033
}

.text-black {
    --tw-text-opacity: 1;
    color: rgb(0 0 0 / var(--tw-text-opacity, 1))
}

.text-gray-300 {
    --tw-text-opacity: 1;
    color: rgb(209 213 219 / var(--tw-text-opacity, 1))
}

.text-gray-400 {
    --tw-text-opacity: 1;
    color: rgb(156 163 175 / var(--tw-text-opacity, 1))
}

.text-white {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1))
}

.backdrop-blur-md {
    --tw-backdrop-blur: blur(12px);
    -webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
    backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)
}

.transition-all {
    transition-property: all;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
    transition-duration: .15s
}

.transition-colors {
    transition-property: color,background-color,border-color,text-decoration-color,fill,stroke;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
    transition-duration: .15s
}

.duration-300 {
    transition-duration: .3s
}

.hover\:bg-white:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1))
}

.hover\:text-\[\#FFE600\]:hover {
    --tw-text-opacity: 1;
    color: rgb(255 230 0 / var(--tw-text-opacity, 1))
}

.hover\:shadow-\[0_0_20px_\#FFE600\]:hover {
    --tw-shadow: 0 0 20px #FFE600;
    --tw-shadow-colored: 0 0 20px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)
}

.group:hover .group-hover\:scale-110 {
    --tw-scale-x: 1.1;
    --tw-scale-y: 1.1;
    transform: translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.group:hover .group-hover\:opacity-10 {
    opacity: .1
}

.group:hover .group-hover\:opacity-20 {
    opacity: .2
}

.group:hover .group-hover\:drop-shadow-\[0_0_8px_\#FFE600\] {
    --tw-drop-shadow: drop-shadow(0 0 8px #FFE600);
    filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)
}

.group:hover .group-hover\:box-glow-yellow {
    box-shadow: 0 0 30px #ffe60026
}

@media (min-width: 640px) {
    .sm\:flex {
        display: flex
    }
}

@media (min-width: 768px) {
    .md\:flex {
        display: flex
    }
}

/* --- mobile hamburger visibility (authored, not from the bundle) --- */
#mobile-menu-toggle {
    display: inline-flex
}

@media (min-width:768px) {
    #mobile-menu-toggle {
        display: none
    }

    #mobile-menu {
        display: none !important
    }
}

/* --- top utility bar (authored; works standalone AND on Bootstrap pages) --- */
.top-bar {
    position: sticky;
    top: 0;
    z-index: 60;
    min-height: 36px;
    display: flex;
    align-items: center;
    background: #333;
    color: #fff;
    font-family: 'Inter',sans-serif;
    font-size: 13px;
    border-bottom: 1px solid #1a1a1a
}

    .top-bar .container {
        width: 100%;
        max-width: 80rem;
        margin: 0 auto;
        padding: 2px 1.5rem
    }

    .top-bar .row {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        margin: 0;
        width: 100%
    }

    .top-bar .col-lg-6 {
        flex: 0 0 50%;
        max-width: 50%;
        min-width: 0;
        display: flex;
        align-items: center;
        padding: 0
    }

    .top-bar .top-social, .top-bar .top-links {
        display: flex !important;
        width: 100%
    }

    .top-bar .top-social {
        justify-content: flex-start
    }

    .top-bar .top-links {
        justify-content: flex-end
    }

    .top-bar ul {
        list-style: none;
        margin: 0;
        padding: 0;
        display: flex;
        align-items: center;
        flex-wrap: wrap
    }

    .top-bar .top-social ul {
        justify-content: flex-start
    }

    .top-bar .top-links ul {
        justify-content: flex-end
    }

    .top-bar li {
        display: inline-flex
    }

    .top-bar .nav-link {
        color: #fff;
        text-decoration: none;
        padding: 2px 10px;
        font-size: 13px;
        transition: color .2s;
        white-space: nowrap
    }

        .top-bar .nav-link:hover {
            color: #FFE600
        }
/* phones: each group becomes full-width and centers; bar grows to two rows */
@media (max-width:767px) {
    .top-bar {
        min-height: 52px
    }

        .top-bar .col-lg-6 {
            flex: 0 0 100%;
            max-width: 100%;
            justify-content: center
        }

        .top-bar .top-social, .top-bar .top-links {
            justify-content: center
        }

            .top-bar .top-social ul, .top-bar .top-links ul {
                justify-content: center
            }

        .top-bar .top-social, .top-bar .top-links {
            padding-top: 0 !important
        }
}
/* push the fixed nav below the bar (36px desktop, 52px on phones).
   !important is required because Bootstrap ships .top-0{top:0!important} and
   the nav carries a top-0 class, which would otherwise pin it back to 0. */
nav.fixed {
    position: sticky !important;
    top: 36px !important
}

@media (max-width:767px) {
    nav.fixed {
        top: 52px !important
    }
}
/* slightly shorter nav bar on phones (was h-20 / 80px), and a smaller logo so
   it does not crowd the cart/hamburger. nav-prefixed selector wins over a
   later homepage.css .text-2xl regardless of file order. */
@media (max-width:767px) {
    [data-id="element-115"] {
        height: 4rem
    }
}

@media (max-width:767px) {
    nav [data-id="element-118"] {
        font-size: 1.125rem
    }
}
/* Keep the nav links + CTA visible at desktop. On the home page, homepage.css
   reloads .hidden AFTER header.css and would override the md:flex/sm:flex
   utilities; a higher-specificity selector (nav [data-id]) wins regardless. */
@media (min-width:768px) {
    nav [data-id="element-119"] {
        display: flex
    }
}

@media (min-width:640px) {
    nav [data-id="element-125"] {
        display: flex
    }
}
