/* ============================================================
   SOUL SURVIVOR - Responsive Stylesheet
   ============================================================ */

/* ===== EXTRA LARGE SCREENS ===== */
@media (min-width: 1400px) {
    .container-custom {
        max-width: 1320px;
    }
    
    .hero-title {
        font-size: 7rem;
    }
    
    .section-padding {
        padding: 10rem 0;
    }
    
    .hero-book {
        max-width: 400px;
    }
}

/* ===== LARGE SCREENS ===== */
@media (min-width: 1200px) and (max-width: 1399px) {
    .hero-title {
        font-size: 6rem;
    }
    
    .section-padding {
        padding: 9rem 0;
    }
}

/* ===== MEDIUM SCREENS (TABLET LANDSCAPE) ===== */
@media (min-width: 992px) and (max-width: 1199px) {
    .hero-title {
        font-size: 5rem;
    }
    
    .hero-book {
        max-width: 300px;
    }
    
    .section-padding {
        padding: 7rem 0;
    }
    
    .book-card {
        padding: 2.5rem;
    }
    
    .quote-section {
        padding: 8rem 0;
    }
}

/* ===== SMALL SCREENS (TABLET PORTRAIT) ===== */
@media (min-width: 768px) and (max-width: 991px) {
    .hero-section {
        min-height: auto;
        padding: 8rem 0 4rem;
    }
    
    .hero-title {
        font-size: 4rem;
        text-align: center;
    }
    
    .hero-subtitle {
        text-align: center;
        font-size: 1.1rem;
    }
    
    .hero-cta {
        text-align: center;
    }
    
    .hero-book-container {
        margin-top: 3rem;
    }
    
    .hero-book {
        max-width: 280px;
    }
    
    .section-padding {
        padding: 5rem 0;
    }
    
    .about-bg-text {
        font-size: 6rem;
    }
    
    .book-card {
        margin-bottom: 2rem;
    }
    
    .review-card {
        margin-bottom: 1.5rem;
    }
    
    .product-card {
        margin-bottom: 1.5rem;
    }
    
    .quote-section {
        padding: 5rem 0;
    }
    
    .quote-text {
        font-size: 1.8rem;
    }
    
    .page-header {
        min-height: 40vh;
    }
    
    .page-header-title {
        font-size: 3rem;
    }
    
    .footer-section {
        text-align: center;
    }
    
    .footer-social-wrapper {
        justify-content: center;
        margin-top: 2rem;
    }
}

/* ===== EXTRA SMALL SCREENS (PHONES) ===== */
@media (max-width: 767px) {
    .hero-section {
        min-height: auto;
        padding: 7rem 0 3rem;
    }
    
    .hero-title {
        font-size: 2.8rem;
        text-align: center;
        letter-spacing: 0.05em;
    }
    
    .hero-subtitle {
        text-align: center;
        font-size: 1rem;
        margin-bottom: 2rem;
    }
    
    .hero-cta {
        text-align: center;
        display: flex;
        flex-direction: column;
        gap: 1rem;
        align-items: center;
    }
    
    .hero-cta .btn-gold {
        width: 100%;
        max-width: 280px;
    }
    
    .hero-book-container {
        margin-top: 2rem;
    }
    
    .hero-book {
        max-width: 220px;
    }
    
    .section-padding {
        padding: 4rem 0;
    }
    
    .section-label {
        font-size: 0.7rem;
        letter-spacing: 0.2em;
    }
    
    .section-title {
        font-size: 1.8rem;
    }
    
    .about-bg-text {
        font-size: 4rem;
    }
    
    .about-image-wrapper {
        margin-bottom: 2rem;
    }
    
    .book-card {
        padding: 1.5rem;
        margin-bottom: 1.5rem;
    }
    
    .book-card-title {
        font-size: 1.5rem;
    }
    
    .coming-soon-title {
        font-size: 1.8rem;
    }
    
    .review-card {
        padding: 1.5rem;
        margin-bottom: 1rem;
    }
    
    .review-quote {
        font-size: 1.1rem;
    }
    
    .product-card {
        padding: 1.5rem;
        margin-bottom: 1rem;
    }
    
    .product-name {
        font-size: 1rem;
    }
    
    .product-price {
        font-size: 1.2rem;
    }
    
    .quote-section {
        padding: 4rem 0;
    }
    
    .quote-text {
        font-size: 1.5rem;
    }
    
    .quote-decoration {
        font-size: 3rem;
    }
    
    .page-header {
        min-height: 35vh;
    }
    
    .page-header-title {
        font-size: 2.2rem;
    }
    
    .page-header-subtitle {
        font-size: 1rem;
    }
    
    .book-details-section {
        padding: 4rem 0;
    }
    
    .book-details-image {
        text-align: center;
        margin-bottom: 2rem;
    }
    
    .book-details-image img {
        max-width: 280px;
    }
    
    .contact-section {
        padding: 4rem 0;
    }
    
    .error-code {
        font-size: 5rem;
    }
    
    .error-title {
        font-size: 1.5rem;
    }
    
    .footer-section {
        text-align: center;
        padding: 3rem 0 1.5rem;
    }
    
    .footer-social-wrapper {
        justify-content: center;
        margin-top: 1.5rem;
    }
    
    .footer-links-wrapper {
        margin-top: 2rem;
    }
    
    .preloader-title {
        font-size: 2rem;
    }
    
    .preloader-logo {
        font-size: 1rem;
    }
    
    .mobile-menu {
        width: 85%;
        padding: 5rem 2rem;
    }
    
    .mobile-menu-link {
        font-size: 1.2rem;
        margin-bottom: 1.5rem;
    }
    
    .cursor-glow {
        display: none;
    }
    
    .story-timeline {
        padding-left: 2rem;
    }
    
    .story-timeline-dot {
        left: -2rem;
        width: 6px;
        height: 6px;
    }
    
    .story-timeline-item {
        padding-bottom: 2.5rem;
    }
}

/* ===== VERY SMALL SCREENS ===== */
@media (max-width: 375px) {
    .hero-title {
        font-size: 2.2rem;
    }
    
    .section-title {
        font-size: 1.5rem;
    }
    
    .hero-book {
        max-width: 180px;
    }
    
    .btn-gold {
        padding: 0.8rem 1.8rem;
        font-size: 0.75rem;
    }
    
    .quote-text {
        font-size: 1.3rem;
    }
    
    .book-card-title {
        font-size: 1.3rem;
    }
    
    .coming-soon-title {
        font-size: 1.5rem;
    }
}

/* ===== LANDSCAPE ORIENTATION ON MOBILE ===== */
@media (max-height: 500px) and (orientation: landscape) {
    .hero-section {
        min-height: auto;
        padding: 6rem 0 3rem;
    }
    
    .hero-book {
        max-width: 150px;
    }
    
    .page-header {
        min-height: auto;
        padding: 5rem 0 3rem;
    }
}

/* ===== HIGH DPI / RETINA DISPLAYS ===== */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .hero-book img,
    .book-card-image img,
    .about-image-wrapper img {
        image-rendering: -webkit-optimize-contrast;
    }
}

/* ===== PRINT STYLES ===== */
@media print {
    .preloader,
    .main-nav,
    .mobile-menu-btn,
    .mobile-menu,
    .mobile-menu-overlay,
    .cursor-glow,
    .atmosphere-overlay {
        display: none !important;
    }
    
    body {
        background: white !important;
        color: black !important;
    }
    
    .hero-section,
    .about-section,
    .books-section,
    .reviews-section,
    .store-section,
    .quote-section,
    .footer-section {
        background: white !important;
        color: black !important;
        padding: 2rem 0 !important;
    }
    
    .btn-gold {
        border: 1px solid black !important;
        color: black !important;
    }
}