/* Mobile-specific styles and responsive adjustments */

/* Extra small devices (phones, less than 576px) */
@media (max-width: 575.98px) {
    /* Preloader */
    .ship-logo {
        width: 80px;
        height: 80px;
    }
    
    .loading-text {
        font-size: 16px;
    }
    
    /* Announcement bar */
    .announcement-bar {
        font-size: 0.75rem;
        padding: 0.5rem 0;
    }
    
    .promo-code {
        display: inline-block;
        margin-top: 0.25rem;
    }
    
    /* Navigation */
    .navbar-brand .logo-svg {
        width: 30px;
        height: 30px;
    }
    
    .logo-text {
        font-size: 1.2rem;
    }
    
    .navbar-toggler {
        padding: 0.25rem 0.5rem;
        font-size: 1rem;
    }
    
    /* Hero section */
    .hero-section {
        padding: 3rem 0 4rem;
        text-align: center;
    }
    
    .hero-section h1 {
        font-size: 1.8rem;
    }
    
    .hero-section .lead {
        font-size: 1rem;
    }
    
    .hero-stats {
        margin-top: 2rem;
    }
    
    .stat-item {
        padding: 0.75rem;
    }
    
    .stat-number {
        font-size: 1.5rem;
    }
    
    .stat-label {
        font-size: 0.8rem;
    }
    
    .floating-box {
        display: none; /* Hide floating elements on mobile for better performance */
    }
    
    .hero-image-container {
        margin-top: 2rem;
    }
    
    /* Services section */
    .services-section {
        padding: 3rem 0;
    }
    
    .section-title {
        font-size: 1.5rem;
    }
    
    .title-underline {
        width: 60px;
        margin-bottom: 1.5rem;
    }
    
    .service-tabs .nav-pills {
        display: flex;
        flex-direction: column;
        width: 100%;
    }
    
    .service-tabs .nav-link {
        margin: 0.25rem 0;
        width: 100%;
        text-align: center;
        padding: 0.5rem 1rem;
    }
    
    .service-image {
        margin-bottom: 1.5rem;
    }
    
    .service-title {
        font-size: 1.3rem;
    }
    
    /* Feature cards */
    .feature-card {
        height: 250px; /* Fixed height for mobile */
        margin-bottom: 1.5rem;
    }
    
    .feature-card-front, .feature-card-back {
        padding: 1.25rem;
    }
    
    .feature-icon {
        font-size: 2rem;
        margin-bottom: 1rem;
    }
    
    /* Testimonials */
    .testimonial-carousel {
        padding: 0 20px;
    }
    
    .testimonial-card {
        margin: 0.5rem;
    }
    
    .testimonial-content {
        padding: 1.5rem;
    }
    
    .testimonial-text {
        font-size: 0.9rem;
    }
    
    .testimonial-author {
        padding: 1rem 1.5rem;
    }
    
    .author-image {
        width: 50px;
        height: 50px;
    }
    
    .carousel-control {
        width: 30px;
        height: 30px;
        font-size: 0.8rem;
    }
    
    /* Client logos */
    .client-logo {
        flex: 0 0 50%;
        max-width: 50%;
        padding: 0 10px;
        margin-bottom: 1rem;
    }
    
    .client-logo img {
        max-height: 40px;
    }
    
    /* Calculator section */
    .calculator-section {
        padding: 3rem 0;
    }
    
    .calculator-card {
        margin-top: 2rem;
    }
    
    .calculator-header {
        padding: 1.25rem;
    }
    
    .calculator-body {
        padding: 1.5rem;
    }
    
    .calculator-form .form-control,
    .calculator-form .form-select {
        padding: 0.6rem 0.75rem;
        font-size: 0.9rem;
    }
    
    .shipping-option {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .option-header {
        margin-bottom: 0.75rem;
    }
    
    /* CTA section */
    .cta-section {
        padding: 3rem 0;
    }
    
    .cta-card {
        padding: 1.5rem;
    }
    
    .cta-card h2 {
        font-size: 1.5rem;
    }
    
    .cta-card .lead {
        font-size: 1rem;
    }
    
    /* Footer */
    .footer {
        padding: 3rem 0 2rem;
        text-align: center;
    }
    
    .footer-logo {
        justify-content: center;
        margin-bottom: 1rem;
    }
    
    .footer h5 {
        margin-top: 2rem;
    }
    
    .footer h5::after {
        left: 50%;
        transform: translateX(-50%);
    }
    
    .footer-links a {
        justify-content: center;
    }
    
    .footer-contact li {
        justify-content: center;
    }
    
    .social-icons {
        justify-content: center;
    }
    
    .footer-bottom-links {
        flex-direction: column;
        gap: 0.5rem;
    }
    
    .footer-bottom-links li {
        margin-bottom: 0.5rem;
    }
    
    /* Back to top button */
    .back-to-top {
        width: 35px;
        height: 35px;
        font-size: 0.9rem;
        bottom: 15px;
        right: 15px;
    }
}

/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) and (max-width: 767.98px) {
    /* Hero section */
    .hero-section h1 {
        font-size: 2.2rem;
    }
    
    /* Service tabs */
    .service-tabs .nav-link {
        padding: 0.6rem 1rem;
        font-size: 0.9rem;
    }
    
    /* Feature cards */
    .feature-card {
        height: 280px;
    }
    
    /* Client logos */
    .client-logo {
        flex: 0 0 33.333%;
        max-width: 33.333%;
    }
}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) and (max-width: 991.98px) {
    /* Hero section */
    .hero-section {
        text-align: center;
    }
    
    .hero-stats {
        margin-bottom: 2rem;
    }
    
    .hero-image-container {
        margin-top: 2rem;
    }
    
    /* Service tabs */
    .service-tabs .nav-pills {
        flex-wrap: wrap;
    }
    
    /* Feature cards */
    .feature-card {
        height: 300px;
    }
    
    /* Client logos */
    .client-logo {
        flex: 0 0 25%;
        max-width: 25%;
    }
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) and (max-width: 1199.98px) {
    /* Hero section */
    .hero-section h1 {
        font-size: 2.5rem;
    }
    
    /* Feature cards */
    .feature-card {
        height: 320px;
    }
}

/* Animation optimizations for mobile */
@media (max-width: 767.98px) {
    /* Reduce or simplify animations on mobile for better performance */
    .animated-heading,
    .animated-text {
        animation: none;
        opacity: 1;
    }
    
    .title-underline::before {
        animation-duration: 5s;
    }
    
    .feature-card-inner {
        transform-style: flat;
    }
    
    .feature-card:hover .feature-card-inner {
        transform: none;
    }
    
    .feature-card-front, .feature-card-back {
        position: relative;
        backface-visibility: visible;
    }
    
    .feature-card-back {
        display: none;
    }
    
    .feature-card:hover .feature-card-front {
        display: none;
    }
    
    .feature-card:hover .feature-card-back {
        display: flex;
        transform: none;
    }
    
    /* Simplify service animations */
    .tracking-animation,
    .globe-animation,
    .warehouse-animation,
    .express-animation {
        display: none;
    }
    
    /* Reduce particle animations */
    .particle {
        display: none;
    }
    
    /* Optimize AOS animations */
    [data-aos] {
        transition-duration: 500ms;
    }
}

/* Touch device optimizations */
@media (hover: none) {
    /* Adjust hover effects for touch devices */
    .btn:hover {
        transform: none;
    }
    
    .navbar-nav .nav-link:hover::after {
        width: 0;
    }
    
    .dropdown-item:hover {
        transform: none;
    }
    
    .service-image:hover {
        transform: none;
    }
    
    .service-image:hover img {
        transform: none;
    }
    
    .feature-card:hover {
        transform: none;
    }
    
    .testimonial-card:hover {
        transform: none;
    }
    
    .client-logo:hover img {
        transform: none;
    }
    
    .calculator-feature:hover {
        transform: none;
    }
    
    .shipping-option:hover {
        transform: none;
    }
    
    .social-icon:hover {
        transform: none;
    }
    
    /* Add tap/touch feedback instead */
    .btn:active,
    .nav-link:active,
    .dropdown-item:active,
    .feature-card:active,
    .social-icon:active {
        transform: scale(0.95);
    }
}

/* Print styles */
@media print {
    .preloader,
    .announcement-bar,
    .navbar,
    .hero-section,
    .cta-section,
    .footer,
    .back-to-top {
        display: none !important;
    }
    
    .services-section,
    .why-choose-us,
    .testimonials-section,
    .calculator-section {
        padding: 1rem 0 !important;
    }
    
    .container {
        max-width: 100% !important;
        width: 100% !important;
    }
    
    .feature-card,
    .testimonial-card,
    .calculator-card {
        box-shadow: none !important;
        border: 1px solid #ddd !important;
    }
    
    .feature-card-inner {
        transform-style: flat !important;
    }
    
    .feature-card-back {
        display: none !important;
    }
    
    .feature-icon {
        color: #000 !important;
    }
    
    a {
        text-decoration: underline !important;
        color: #000 !important;
    }
    
    .btn {
        border: 1px solid #000 !important;
        background: none !important;
        color: #000 !important;
        box-shadow: none !important;
    }
}
