/* 07_responsive.css — Mobile breakpoints and micro-interactions
   (verbatim port of styles.py inject_mobile_responsive). */

/* ---- Tablet (<= 768px) ---- */
@media (max-width: 768px) {
    .hero-title { font-size: 34px !important; letter-spacing: -0.68px !important; }
    .hero-subtitle { font-size: 17px !important; }
    .hero-grid { grid-template-columns: 1fr !important; }
    .feature-card { padding: 16px !important; }
    .feature-grid { grid-template-columns: 1fr !important; }
    .trust-badge { padding: 0.75rem 1rem !important; }
    .trust-badge-grid { grid-template-columns: repeat(2, 1fr) !important; }
    .trust-number { font-size: 26px !important; }
    .pricing-card { padding: 20px !important; min-height: auto !important; }
    .article-title { font-size: 30px !important; }
    .article-container { padding: 24px 16px !important; }
    .nav-links { gap: 8px !important; }
    .nav-link-muted { display: none !important; }
    .section-heading { font-size: 22px !important; }
    .cta-section { padding: 32px 16px !important; }
    .footer-grid { grid-template-columns: 1fr !important; gap: 24px !important; }
    .trust-section-grid { grid-template-columns: 1fr !important; }
}

/* ---- Phone (<= 480px) ---- */
@media (max-width: 480px) {
    .hero-title { font-size: 28px !important; letter-spacing: -0.56px !important; }
    .hero-subtitle { font-size: 16px !important; }
    .trust-number { font-size: 22px !important; }
    .trust-badge-grid { grid-template-columns: 1fr !important; }
    .section-heading { font-size: 19px !important; }
}

/* ---- Fade-in animation ---- */
@keyframes fadeInUp {
    from { opacity: 0; transform: translateY(20px); }
    to   { opacity: 1; transform: translateY(0); }
}
.animate-fade-in { animation: fadeInUp 0.6s ease-out both; }
.animate-fade-in-delay-1 { animation-delay: 0.1s; }
.animate-fade-in-delay-2 { animation-delay: 0.2s; }
.animate-fade-in-delay-3 { animation-delay: 0.3s; }

/* ---- Card hover micro-interaction ---- */
.hover-lift { transition: transform 0.2s ease, box-shadow 0.2s ease; }
.hover-lift:hover {
    transform: translateY(-2px);
    box-shadow: rgba(0, 0, 0, 0.08) 0px 4px 12px !important;
}
