/* ===================================================================
   MOBILE FIGMA DESIGN - EXACT MATCH
   ================================================================= */

/* Mobile viewport only (390px width design from Figma) */
@media (max-width: 767px) {
    /* Reset and base mobile container */
    .bg-neutral-950.relative.min-h-screen {
        width: 100% !important;
        max-width: 390px !important;
        margin: 0 auto !important;
        min-height: 100vh !important;
        position: relative !important;
    }

    /* Background container adjustments */
    .absolute.bg-neutral-950.h-\[1080px\] {
        display: none !important;
    }

    /* Content wrapper for mobile - match Figma structure */
    .absolute.flex.flex-col.gap-\[24px\].w-\[1920px\] {
        position: relative !important;
        width: 100% !important;
        max-width: 390px !important;
        padding: 0 !important;
        gap: 8px !important;
    }

    /* ===================================================================
       MOBILE HEADER - STATUS BAR + NAVIGATION
       ================================================================= */

    /* Status Bar - iPhone style */
    .bg-neutral-900.box-border.flex.gap-\[16px\].h-\[80px\] {
        background: #0a0a0a !important;
        flex-direction: column !important;
        height: auto !important;
        padding: 0 !important;
        gap: 0 !important;
        width: 100% !important;
        position: relative !important;
    }

    /* Add status bar before header */
    /* .bg-neutral-900.box-border.flex.gap-\[16px\].h-\[80px\]::before {
        content: '9:41' !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        height: 54px !important;
        background: #0a0a0a !important;
        width: 100% !important;
        padding: 21px 16px 0 16px !important;
        box-sizing: border-box !important;
        color: white !important;
        font-family: 'SF Pro', sans-serif !important;
        font-weight: 600 !important;
        font-size: 17px !important;
        line-height: 22px !important;
    } */

    /* Navigation container - exact Figma layout */
    .bg-neutral-900.box-border.flex.gap-\[16px\].h-\[80px\] > *:first-child {
        background: #171717 !important;
        padding: 8px 12px !important;
        width: 100% !important;
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        gap: 10px !important;
        height: auto !important;
        min-height: 54px !important;
    }

    /* Social icons section */
    .flex.gap-\[24px\].items-center .flex.gap-\[16px\].items-center {
        gap: 16px !important;
        flex: 1 !important;
    }

    /* Social icon containers */
    .bg-neutral-700.size-\[40px\] {
        width: 24px !important;
        height: 24px !important;
        background: transparent !important;
        border-radius: 8px !important;
    }

    /* Contact button */
    .bg-gradient-to-r.from-brand-green.to-brand-green-dark {
        background: transparent !important;
        gap: 8px !important;
        padding: 4px 8px !important;
        border-radius: 8px !important;
        box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.25) !important;
        border: none !important;
    }

    .bg-gradient-to-r.from-brand-green.to-brand-green-dark p {
        font-size: 14px !important;
        font-weight: 600 !important;
        color: #83ff65 !important;
        background: none !important;
    }

    /* Logo positioning */
    .h-\[48px\].w-\[158px\] {
        height: 32px !important;
        width: 119px !important;
        flex-shrink: 0 !important;
    }

    /* Menu toggle */
    .size-\[24px\] svg {
        width: 24px !important;
        height: 24px !important;
    }

    /* Hide desktop navigation items on mobile */
    #navigation-menu {
        display: none !important;
    }

    /* ===================================================================
       MOBILE BANNER SECTIONS
       ================================================================= */

    /* Top banner mobile */
    .bg-gradient-to-r.from-\[#fee701\].to-\[#f8e201\] {
        height: 50px !important;
        background: linear-gradient(to right, #fee701, #f8e201) !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
    }

    .bg-gradient-to-r.from-\[#fee701\].to-\[#f8e201\] p {
        font-size: 20px !important;
        font-weight: 700 !important;
        color: black !important;
        text-align: center !important;
    }

    /* ===================================================================
       MOBILE HERO SECTION - TITLE + CTA
       ================================================================= */

    /* Hero container */
    .box-border.flex.flex-col.gap-\[16px\].px-\[298px\] {
        padding: 0 12px !important;
        gap: 8px !important;
    }

    /* Title with lines container */
    .flex.gap-\[8px\].items-center.justify-center.relative.w-full {
        gap: 8px !important;
        width: 100% !important;
        align-items: center !important;
        justify-content: center !important;
    }

    /* Left and right lines */
    .flex-1.h-0.min-h-px.relative {
        width: 24px !important;
        height: 1px !important;
        flex: none !important;
        position: relative !important;
    }

    .flex-1.h-0.min-h-px.relative div {
        background: white !important;
        height: 1px !important;
        width: 100% !important;
    }

    /* Main title */
    .flex.flex-col.font-inter.font-bold.justify-center.leading-\[1\.5\].text-white.text-\[32px\] {
        font-size: 20px !important;
        line-height: 1.5 !important;
        font-weight: 700 !important;
        color: white !important;
        text-align: center !important;
        white-space: nowrap !important;
        flex-shrink: 0 !important;
    }

    /* Subtitle */
    .flex.flex-col.font-inter.font-bold.justify-center.leading-\[1\.5\].text-brand-green.text-\[28px\] {
        font-size: 16px !important;
        font-weight: 700 !important;
        color: #83ff65 !important;
        text-align: center !important;
        white-space: nowrap !important;
        margin-bottom: 8px !important;
    }

    /* CTA buttons container */
    .flex.gap-\[24px\].items-start[data-name="button-CTA"] {
        gap: 6px !important;
        width: 100% !important;
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: center !important;
        align-items: center !important;
    }

    /* Individual CTA buttons */
    .bg-brand-orange.box-border.flex.gap-\[8px\],
    .bg-brand-blue.box-border.flex.gap-\[8px\],
    .bg-brand-purple.box-border.flex.gap-\[8px\],
    .bg-brand-cyan.box-border.flex.gap-\[8px\] {
        height: 40px !important;
        padding: 8px !important;
        border-radius: 8px !important;
        flex: 1 !important;
        min-width: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        box-sizing: border-box !important;
    }

    /* CTA button text */
    .bg-brand-orange p,
    .bg-brand-blue p,
    .bg-brand-purple p,
    .bg-brand-cyan p {
        font-size: 14px !important;
        font-weight: 600 !important;
        color: white !important;
        line-height: 1.5 !important;
        text-align: center !important;
        margin: 0 !important;
        white-space: nowrap !important;
    }

    /* ===================================================================
       MOBILE CARDS SECTION
       ================================================================= */

    .flex.flex-col.gap-\[16px\].items-center.justify-center {
        gap: 8px !important;
        padding: 0 12px !important;
    }

    /* Top row cards */
    .flex.gap-\[24px\].items-start {
        gap: 16px !important;
        width: 100% !important;
    }

    .bg-neutral-900.box-border.flex.flex-col.gap-\[8px\].w-\[311px\] {
        background: #171717 !important;
        border-radius: 16px !important;
        overflow: hidden !important;
        padding: 16px !important;
        gap: 8px !important;
        flex: 1 !important;
        min-width: 0 !important;
        width: auto !important;
    }

    /* Logo in cards */
    .h-\[80px\].w-\[264px\],
    .h-\[64px\].w-\[212px\] {
        height: 32px !important;
        width: 105px !important;
    }

    /* Card titles */
    .text-\[20px\] {
        font-size: 16px !important;
        font-weight: 700 !important;
        color: white !important;
        text-align: center !important;
    }

    /* Card buttons */
    .bg-gradient-to-r.from-brand-green.to-brand-green-dark.px-\[16px\].py-\[12px\] {
        background: linear-gradient(to right, #83ff65, #49ca00) !important;
        padding: 8px 24px !important;
        border-radius: 8px !important;
        box-shadow: 0px 0px 8px 0px #4ece08 !important;
        width: 100% !important;
    }

    .bg-brand-blue.border.border-brand-blue-dark {
        background: #2b7fff !important;
        border: 1px solid #155dfc !important;
        padding: 8px 16px !important;
        box-shadow: 0px 0px 8px 0px #2b7fff !important;
    }

    /* Large cards */
    .bg-neutral-900.box-border.flex.gap-\[16px\] {
        background: #171717 !important;
        border-radius: 16px !important;
        padding: 16px 24px !important;
        gap: 16px !important;
        width: 100% !important;
        margin-bottom: 8px !important;
    }

    .size-\[96px\] {
        width: 96px !important;
        height: 96px !important;
        flex-shrink: 0 !important;
    }

    .px-\[16px\].py-\[12px\] {
        padding: 12px 16px !important;
        font-size: 16px !important;
        width: 100% !important;
    }

    /* Middle banner */
    .bg-gradient-to-r.from-\[#fee701\].to-\[#f8e201\]:nth-of-type(2) {
        margin: 8px 0 !important;
    }

    /* ===================================================================
       MOBILE SPORTS SECTION
       ================================================================= */

    .text-\[28px\] {
        font-size: 18px !important;
        font-weight: 700 !important;
        line-height: 1.5 !important;
        text-align: center !important;
        color: white !important;
        padding: 0 12px !important;
    }

    .text-\[16px\] {
        font-size: 14px !important;
        font-weight: 400 !important;
        line-height: 1.5 !important;
        text-align: center !important;
        color: white !important;
        padding: 0 12px !important;
        width: 100% !important;
        max-width: 334px !important;
        margin: 0 auto !important;
    }

    /* Sports categories section mobile */
    .flex.gap-\[24px\].items-start.justify-center {
        flex-direction: column !important;
        gap: 20px !important;
        align-items: center !important;
        padding: 0 12px !important;
    }

    /* Sports cards mobile */
    [data-name="card-blogpost"] {
        width: 100% !important;
        max-width: 350px !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
    }

    .w-\[312px\] {
        width: 100% !important;
        max-width: 350px !important;
    }

    .h-\[171px\],
    .aspect-\[1920\/1052\] {
        height: 171px !important;
        border-radius: 16px !important;
        width: 100% !important;
    }

    /* Sports button styling */
    .bg-gradient-to-r.from-brand-green.to-brand-green-dark[data-name="button/1"] p {
        color: black !important;
        font-weight: 600 !important;
        font-size: 16px !important;
    }

    /* ===================================================================
       MOBILE COMMENTATORS SECTION
       ================================================================= */

    .flex.flex-wrap.gap-\[24px\].items-center.justify-center {
        flex-direction: column !important;
        gap: 8px !important;
        align-items: center !important;
    }

    .size-\[249px\] {
        width: 249px !important;
        height: 249px !important;
    }

    .h-\[312px\].w-\[250px\] {
        height: 312px !important;
        width: 250px !important;
    }

    /* ===================================================================
       MOBILE CTA TEXT
       ================================================================= */

    .large-cta-text {
        font-size: 24px !important;
        line-height: 1.5 !important;
        color: #83ff65 !important;
        text-align: center !important;
        padding: 0 12px !important;
    }

    /* ===================================================================
       MOBILE CONTENT SECTION
       ================================================================= */

    .content-flex-container {
        padding: 0 12px !important;
    }

    .content-section-main {
        flex-direction: column !important;
        width: 100% !important;
    }

    .content-sidebar {
        width: 100% !important;
        margin-top: 16px !important;
    }

    .p-\[24px\] {
        padding: 16px !important;
    }

    .text-\[24px\] {
        font-size: 18px !important;
        color: #83ff65 !important;
    }

    .featured-content-image {
        width: 100% !important;
        height: 200px !important;
        object-fit: cover !important;
    }

    /* ===================================================================
       MOBILE FOOTER
       ================================================================= */

    footer {
        background: #171717 !important;
        border-top: 1px solid #252e2b !important;
        padding: 24px 16px !important;
        margin-top: 0 !important;
        width: 100% !important;
    }

    .footer-content {
        gap: 24px !important;
    }

    .footer-logo {
        width: 208px !important;
        height: 48px !important;
        object-fit: contain !important;
    }

    .content-text {
        font-size: 14px !important;
        line-height: 1.5 !important;
        text-align: center !important;
    }

    /* Home indicator for mobile */
    body::after {
        content: '';
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        height: 34px;
        background: #0a0a0a;
        z-index: 1000;
    }

    body::after::before {
        content: '';
        position: absolute;
        bottom: 8px;
        left: 50%;
        transform: translateX(-50%);
        width: 134px;
        height: 5px;
        background: white;
        border-radius: 100px;
    }

    /* Mobile navigation improvements */
    #mobile-menu-toggle {
        display: block !important;
    }

    #navigation-menu {
        display: none !important;
    }

    #navigation-menu.mobile-open {
        display: flex !important;
        flex-direction: column !important;
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        right: 0 !important;
        background: #171717 !important;
        padding: 16px !important;
        gap: 16px !important;
        z-index: 1000 !important;
    }

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

    /* Ensure touch targets are adequate */
    button,
    a[role="button"],
    .cursor-pointer {
        min-height: 44px !important;
        min-width: 44px !important;
    }
}

/* ===================================================================
   DESKTOP SPORTS CATEGORIES FIXES
   ================================================================= */

/* Ensure sports category buttons have black text on all devices */
.bg-gradient-to-r.from-brand-green.to-brand-green-dark[data-name="button/1"] p {
    color: black !important;
    font-weight: 600 !important;
}

/* Sports categories container alignment */
.flex.gap-\[24px\].items-start.justify-center {
    justify-content: center !important;
}

/* Sports cards consistent width and alignment */
[data-name="card-blogpost"] {
    width: 312px !important;
    flex-shrink: 0 !important;
    align-items: center !important;
}

/* Image containers consistent height */
[data-name="card-blogpost"] .h-\[171px\] {
    height: 171px !important;
    overflow: hidden !important;
}

    /* Performance optimizations for mobile */
    * {
        -webkit-tap-highlight-color: transparent;
    }

    img {
        will-change: transform;
    }

    /* Fix for mobile viewport */
    html {
        overflow-x: hidden;
    }

    body {
        overflow-x: hidden;
        max-width: 100vw;
    }
}

/* Extra small mobile adjustments (320px - 374px) */
@media (max-width: 374px) {
    .bg-neutral-950.relative.min-h-screen {
        max-width: 320px !important;
    }

    .text-\[32px\] {
        font-size: 18px !important;
    }

    .text-\[28px\] {
        font-size: 14px !important;
    }

    .large-cta-text {
        font-size: 20px !important;
    }

    .bg-brand-orange,
    .bg-brand-blue,
    .bg-brand-purple,
    .bg-brand-cyan {
        padding: 6px !important;
    }

    .text-\[18px\] {
        font-size: 12px !important;
    }
}

/* Large mobile adjustments (375px - 767px) */
@media (min-width: 375px) and (max-width: 767px) {
    .bg-neutral-950.relative.min-h-screen {
        max-width: 100% !important;
    }
}