/* --- Base & Responsive Design Styles --- */
html {
    scroll-behavior: smooth;
    -webkit-text-size-adjust: 100%;
}

body {
    font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
    background-color: #121824;
    color: #f1f5f9;
    overflow-x: hidden;
}

/* Ensure images never overflow their container */
img, svg, video {
    max-width: 100%;
    height: auto;
}

/* Custom scrollbar styling */
::-webkit-scrollbar {
    width: 8px;
}
::-webkit-scrollbar-track {
    background: #121824;
}
::-webkit-scrollbar-thumb {
    background: #1E293B;
    border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
    background: #E7FE00;
}

/* Responsive Touch & Form Enhancements */
button, a, input, select, textarea {
    touch-action: manipulation;
}

/* Modal Max Height Handling for Mobile / Mobile Landscape */
#modal-container {
    max-height: 90vh;
    display: flex;
    flex-direction: column;
}

#fast-order-form {
    overflow-y: auto;
}

/* Responsive Font Sizing & Spacing Adjustments for Small Mobile Displays (320px - 380px) */
@media (max-width: 380px) {
    .text-4xl {
        font-size: 1.85rem !important;
        line-height: 2.25rem !important;
    }
    .text-3xl {
        font-size: 1.5rem !important;
        line-height: 1.85rem !important;
    }
    .px-6 {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }
    .py-20 {
        padding-top: 3.5rem !important;
        padding-bottom: 3.5rem !important;
    }
}

/* Mobile Landscape Height Fixes */
@media (max-height: 600px) {
    #order-modal {
        align-items: flex-start !important;
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }
}
