/* ============================================
   TECNOANALISI - RESPONSIVE STYLESHEET
   ============================================ */

/* Laptop: 992px - 1199px */
@media (max-width: 1199px) {
    :root { --container: 960px; }

    .hero-title { font-size: 48px; }
    .category-grid { grid-template-columns: repeat(3, 1fr); }
    .reviews-grid { grid-template-columns: 1fr 1fr; }
    .review-card-featured { grid-column: 1 / -1; }
    .methodology-layout { gap: 40px; }
    .featured-guide-layout { gap: 40px; }
    .footer-top { grid-template-columns: 1fr 1fr 1fr; gap: 32px; }
    .vs-layout { grid-template-columns: 1fr 60px 1fr; }
    .vs-triple-grid { grid-template-columns: repeat(3, 1fr); }
}

/* Medium: 768px - 991px — triple grid becomes 2-col */
@media (max-width: 991px) and (min-width: 577px) {
    .vs-triple-grid { grid-template-columns: 1fr 1fr; }
    .vs-triple-grid > *:last-child { grid-column: 1 / -1; }
}

/* Tablet: 768px - 991px */
@media (max-width: 991px) {
    .hero-title { font-size: 40px; }
    .hero-subtitle { font-size: 16px; }
    .section-heading { font-size: 30px; }
    .page-title { font-size: 36px; }

    /* Header */
    .main-nav { display: none; }
    .hamburger-btn { display: flex; }
    .search-toggle { display: flex; }

    /* Category grid 2-col */
    .category-grid { grid-template-columns: 1fr 1fr; }

    /* Reviews - stack */
    .reviews-grid {
        grid-template-columns: 1fr;
    }
    .review-card-featured {
        flex-direction: column;
    }
    .review-card-featured .review-card-img {
        flex: none;
        width: 100%;
        min-height: 260px;
    }

    /* Methodology */
    .methodology-layout { grid-template-columns: 1fr; }
    .methodology-image { display: none; }

    /* Guides */
    .guides-cards { grid-template-columns: 1fr; }
    .featured-guide-layout { grid-template-columns: 1fr; }
    .featured-guide-img { display: none; }

    /* Category rows */
    .category-row { grid-template-columns: 1fr; }
    .category-row.reverse .category-row-img { order: 0; }
    .category-row.reverse .category-row-content { order: 1; }
    .category-row-img { min-height: 280px; }
    .category-row-content { padding: 40px 32px; }

    /* Guides grid */
    .guides-grid { grid-template-columns: 1fr; }

    /* Tips */
    .tips-grid { grid-template-columns: 1fr; }

    /* Comparisons */
    .vs-layout { grid-template-columns: 1fr; gap: 24px; }
    .vs-divider { flex-direction: row; padding-top: 0; }
    .vs-triple-grid { grid-template-columns: 1fr; }

    /* About */
    .values-grid { grid-template-columns: 1fr 1fr; }
    .team-grid { grid-template-columns: 1fr; gap: 16px; }

    /* Contact */
    .contact-layout { grid-template-columns: 1fr; }

    /* Footer */
    .footer-top { grid-template-columns: 1fr 1fr; gap: 32px; }
    .footer-about { grid-column: 1 / -1; }
    .footer-bottom { flex-direction: column; text-align: center; gap: 12px; }

    /* Newsletter */
    .newsletter-form { flex-direction: column; }

    /* Section padding */
    .category-grid-section,
    .reviews-section,
    .methodology-section,
    .guides-section,
    .newsletter-section,
    .categories-list-section,
    .featured-guide-section,
    .guides-grid-section,
    .tips-section,
    .comparisons-section,
    .comparison-table-section,
    .mission-section,
    .values-section,
    .methodology-deep-section,
    .team-section,
    .contact-section,
    .faq-section,
    .legal-content-section { padding: 48px 0; }
}

/* Mobile: 576px - 767px */
@media (max-width: 767px) {
    html { font-size: 15px; }

    .hero-title { font-size: 32px; }
    .section-heading { font-size: 26px; }
    .page-title { font-size: 30px; }
    .category-row-name { font-size: 26px; }

    /* Category grid 1-col */
    .category-grid { grid-template-columns: 1fr; gap: 16px; }

    /* Values grid */
    .values-grid { grid-template-columns: 1fr; }

    /* Comparisons */
    .comparison-card { padding: 28px 20px; }
    .comparison-title { font-size: 22px; }

    /* Header */
    .site-name { font-size: 20px; }

    /* Category row */
    .category-row-content { padding: 32px 24px; }

    .guide-list-card { flex-direction: column; }

    /* Reviews */
    .review-card-body { padding: 20px; }
    .review-card-title { font-size: 22px; }

    /* Footer legal links */
    .footer-legal { flex-wrap: wrap; justify-content: center; }

    /* Scroll indicator - hide on mobile */
    .scroll-indicator { display: none; }
}

/* Small mobile: below 576px */
@media (max-width: 575px) {
    body { font-size: 14px; }

    .container { padding: 0 16px; }

    .hero-title { font-size: 28px; }
    .hero-subtitle { font-size: 15px; }
    .section-heading { font-size: 24px; }
    .page-title { font-size: 26px; }
    .page-header-40 { min-height: 35vh; }
    .page-header-30 { min-height: 25vh; }

    .btn { padding: 12px 24px; font-size: 12px; }

    .methodology-step { padding-left: 48px; }
    .step-number { font-size: 36px; }

    .comparison-card { padding: 20px 16px; }

    .category-grid-section,
    .reviews-section,
    .methodology-section,
    .guides-section,
    .newsletter-section,
    .categories-list-section,
    .featured-guide-section,
    .guides-grid-section,
    .tips-section,
    .comparisons-section,
    .comparison-table-section,
    .mission-section,
    .values-section,
    .methodology-deep-section,
    .team-section,
    .contact-section,
    .faq-section,
    .legal-content-section { padding: 32px 0; }

    .hero { min-height: 100svh; }

    .footer-top { grid-template-columns: 1fr; gap: 24px; }
    .footer-about { grid-column: auto; }
    .site-footer { padding: 40px 0 24px; }
}

/* Desktop: above 1200px */
@media (min-width: 1200px) {
    .hamburger-btn { display: none; }
}
