/* ==========================================================================
   IPTC Responsive — mobile first
   ========================================================================== */

/* Tablet — 640px */
@media (min-width: 640px) {
    .hero--banner {
        --hero-height: clamp(320px, 40vw, 560px);
    }

    .hero-slide__title {
        font-size: clamp(1.5rem, 3.2vw, 2rem);
        line-height: 1.2;
    }

    .indicators__grid--fuel {
        grid-template-columns: repeat(2, 1fr);
    }

    .indicators__grid--stats {
        grid-template-columns: repeat(2, 1fr);
    }

    .mvv__grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .mvv-panel--values {
        grid-column: 1 / -1;
    }

    .partner__benefits {
        grid-template-columns: repeat(2, 1fr);
    }

    .partner__benefits .partner-benefit:last-child {
        grid-column: 1 / -1;
    }

    .blog__grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .newsletter-form {
        flex-direction: row;
    }

    .newsletter-form input {
        flex: 1;
    }
}

/* Tablet landscape — 768px */
@media (min-width: 768px) {
    .hide-mobile {
        display: inline-flex;
    }

    .solucoes-home__grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .dashboards-preview__grid {
        grid-template-columns: 1fr 1fr;
    }

    .social-feeds {
        grid-template-columns: repeat(2, 1fr);
        align-items: start;
    }

    .section {
        padding-block: var(--space-20);
    }

    .section-header__title {
        font-size: var(--text-4xl);
    }

    .hero-slide__content.slide-content.center {
        padding: var(--space-10) var(--space-8);
    }

    .hero-slider__dots.slick-dots-custom {
        bottom: 36px;
    }

    .about__grid {
        grid-template-columns: 1.1fr 0.9fr;
    }

    .about__links {
        flex-direction: row;
        flex-wrap: wrap;
    }

    .mvv__grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .mvv-panel--values {
        grid-column: auto;
    }

    .partner__hero {
        grid-template-columns: 1.2fr 0.5fr;
        align-items: center;
        padding: var(--space-12) var(--space-10);
    }

    .partner__hero-accent {
        display: block;
        position: relative;
        z-index: 1;
        min-height: 200px;
    }

    .partner__hero-shape {
        width: 100%;
        height: 100%;
        min-height: 180px;
        border-radius: var(--radius-lg);
        border: 1px solid rgba(255, 255, 255, 0.2);
        background:
            linear-gradient(135deg, rgba(255, 255, 255, 0.12) 0%, transparent 50%),
            repeating-linear-gradient(
                -45deg,
                transparent,
                transparent 12px,
                rgba(255, 255, 255, 0.04) 12px,
                rgba(255, 255, 255, 0.04) 24px
            );
    }

    .partner__benefits {
        grid-template-columns: repeat(3, 1fr);
    }

    .partner__benefits .partner-benefit:last-child {
        grid-column: auto;
    }

    .site-footer__grid {
        grid-template-columns: repeat(2, 1fr);
    }

}

/* Desktop — 1024px */
@media (min-width: 1024px) {
    .container {
        padding-inline: var(--space-8);
    }

    .indicators__grid--fuel {
        grid-template-columns: repeat(3, 1fr);
    }

    .indicators__grid--stats {
        grid-template-columns: repeat(3, 1fr);
    }

    .blog__grid {
        grid-template-columns: repeat(4, 1fr);
    }

    .social-feeds {
        grid-template-columns: repeat(3, 1fr);
    }

    .solucoes-home__grid {
        grid-template-columns: repeat(4, 1fr);
    }

    .site-footer__grid {
        grid-template-columns: 1.2fr 1.3fr 0.8fr 1.2fr;
        gap: var(--space-8);
    }

    .mvv__heading {
        font-size: var(--text-4xl);
    }
}

/* Mobile — hero touch e legibilidade */
@media (max-width: 639px) {
    .social-feed {
        min-height: 0;
    }
    .hero--banner {
        --hero-height: clamp(260px, 58vw, 400px);
    }

    .hero-slide__title {
        margin-bottom: var(--space-5);
    }

    .hero-slide__btn.btn {
        min-width: 130px;
        padding: 11px 26px;
        font-size: var(--text-sm);
    }

    .hero-slider__dots.slick-dots-custom {
        bottom: 10px;
        gap: 8px;
        padding: 8px 12px;
    }

    .hero-slider__dot {
        width: 10px;
        height: 10px;
    }

    .hero-slider__dot.is-active {
        width: 26px;
    }
}

/* Large desktop — 1280px */
@media (min-width: 1280px) {
    .hero-slide__title {
        font-size: 2rem;
        line-height: 1.2;
    }

    .testimonial-card__text {
        font-size: var(--text-xl);
    }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }

    html {
        scroll-behavior: auto;
    }

    .reveal {
        opacity: 1;
        transform: none;
    }
}
