/* ===== RESPONSIVE ===== */
@media (max-width: 1024px) {
    .d14-nav { display: none; }
    .d14-header-cta { display: none; }
    .d14-mobile-toggle { display: flex; }
    .d14-mobile-backdrop { display: block; }
    .d14-mobile-panel { display: block; }
    .home-hero h1 { font-size: 3rem; }
    .hero-stats { gap: 40px; }
    .tour-grid { grid-template-columns: repeat(2, 1fr); max-width: 800px; }
    .hero-content h1 { font-size: 2.6rem; }
    .tours-section .tour-grid { grid-template-columns: 1fr; max-width: 600px; }
    .dest-grid { grid-template-columns: repeat(2, 1fr); }
    .intro-layout { gap: 32px; }
    .intro-image img { height: 320px; }
    .home-dest-grid { grid-template-columns: repeat(3, 1fr); }
    .home-dest-grid .dest-card.featured { grid-column: span 1; aspect-ratio: 4/3; }
    .home-dest-grid .dest-card.featured .dest-card-overlay span { font-size: 1.3rem; }
    .why-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 900px) {
    .section-title { font-size: 2rem; }
    .cta-content h2 { font-size: 2rem; }
    .reviews-grid { grid-template-columns: repeat(2, 1fr); }
    .reviews-grid .review-card:nth-child(n+4) { display: none; }
    .d14-footer-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
}
@media (max-width: 768px) {
    .d14-header-inner { padding: 0 20px; height: 64px; }
    .d14-header.scrolled .d14-header-inner { height: 56px; }
    .d14-header-logo img { height: 36px; }
    .d14-header.scrolled .d14-header-bg { left: 0; right: 0; border-radius: 0 0 16px 20px; }
    .intro-layout { grid-template-columns: 1fr; gap: 24px; }
    .intro-image img { height: 280px; }
    .hero { min-height: auto; padding: 110px 20px 60px; }
    .hero-content h1 { font-size: 2.1rem; }
    .hero-subtitle { font-size: 1rem; }
    .dest-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; }
    .home-hero { min-height: 70vh; padding: 110px 20px 70px; }
    .home-hero h1 { font-size: 2.4rem; }
    .hero-subtitle { font-size: 1rem; }
    .hero-stats { flex-direction: column; gap: 20px; }
    .stat-number { font-size: 2rem; }
    .tour-grid { grid-template-columns: 1fr; max-width: 500px; }
    .tour-includes { grid-template-columns: 1fr; }
    .tour-card-footer { flex-direction: column; align-items: stretch; text-align: center; }
    .tour-cta-btn { justify-content: center; }
    .home-dest-grid { grid-template-columns: repeat(2, 1fr); }
    .section-title { font-size: 1.8rem; }
    .tour-card-image { height: 220px; }
    .why-grid { grid-template-columns: 1fr 1fr; gap: 16px; }
    .cta-content h2 { font-size: 1.8rem; }
    .cta-corner-img { width: 150px; height: 150px; }
    .wave-divider svg { height: 50px; }
    .d14-footer-wave-top svg { height: 50px; }
    .d14-footer-content { padding: 40px 24px 0; }
    .d14-footer-grid { gap: 24px; }
}
@media (max-width: 600px) {
    .d14-footer-grid { grid-template-columns: 1fr; gap: 28px; }
    .d14-footer-bottom { flex-direction: column; gap: 12px; text-align: center; }
}
@media (max-width: 480px) {
    .hero-content h1 { font-size: 1.75rem; }
    .hero-subtitle { font-size: 0.92rem; }
    .intro-text { font-size: 1rem; }
    .dest-grid { grid-template-columns: 1fr 1fr; gap: 12px; }
    .dest-card-overlay span { font-size: 1rem; }
    .home-hero h1 { font-size: 1.9rem; }
    .hero-subtitle { font-size: 0.92rem; }
    .hero-promo-badge { font-size: 0.78rem; padding: 6px 16px; }
    .hero-cta { flex-direction: column; align-items: center; }
    .hero-cta .btn { width: 100%; max-width: 300px; }
    .section-title { font-size: 1.55rem; }
    .section-subtitle { font-size: 0.92rem; }
    .home-dest-grid { grid-template-columns: 1fr 1fr; gap: 12px; }
    .dest-card-overlay span { font-size: 1rem; }
    .tour-card-body { padding: 20px; }
    .tour-card-title { font-size: 1.15rem; }
    .tour-card-desc { font-size: 0.88rem; }
    .why-grid { grid-template-columns: 1fr; }
    .why-card { padding: 24px 20px; }
    .faq-question { padding: 16px 18px; }
    .faq-question span { font-size: 0.92rem; }
    .faq-answer-inner { padding: 0 18px 16px; font-size: 0.9rem; }
    .cta-content h2 { font-size: 1.5rem; }
    .cta-content p { font-size: 0.95rem; }
    .cta-buttons { flex-direction: column; }
    .cta-btn-primary, .cta-btn-secondary { width: 100%; justify-content: center; }
    .cta-corner-img { width: 100px; height: 100px; opacity: 0.12; }
    .reviews-grid { grid-template-columns: 1fr; }
    .reviews-grid .review-card:nth-child(n+4) { display: flex; }
    .review-card { padding: 24px 20px; }
    .wave-divider svg { height: 35px; }
    .d14-footer-wave-top svg { height: 35px; }
    .d14-back-to-top { bottom: 20px; right: 20px; width: 42px; height: 42px; font-size: 1rem; border-radius: 12px; }
}
