/*
Theme Name: La Fotocabina Vintage (Manual)
Theme URI: https://lafotocabina.com.mx
Author: La Fotocabina
Author URI: https://lafotocabina.com.mx
Description: Tema personalizado para La Fotocabina con React integrado.
Version: 1.0.0
*/

body {
    background-color: #f0eee6;
    margin: 0;
    padding: 0;
    color-scheme: light;
}

/* Prevent white flash before React mounts */
#root {
    min-height: 100vh;
    min-height: 100dvh;
    background-color: #f0eee6;
    display: block;
}

/* ==============================================
   MOBILE LANDSCAPE ORIENTATION FIXES
   Applies when phone is held sideways
   ============================================== */
@media (orientation: landscape) and (max-width: 1023px) {

    /* Hide navigation dots — no room on sides */
    #fotocabina-app.landscape-mobile .nav-dots {
        display: none !important;
    }

    /* Header: smaller logo & buttons */
    #fotocabina-app.landscape-mobile>div:last-of-type img {
        height: 1.75rem !important;
    }

    #fotocabina-app.landscape-mobile>div:last-of-type button {
        padding-top: 0.2rem !important;
        padding-bottom: 0.2rem !important;
        font-size: 7px !important;
    }

    /* ── HERO ── */
    .landscape-mobile .section-hero {
        padding-top: 2.5rem;
        justify-content: center;
        gap: 0.25rem;
    }

    .landscape-mobile .section-hero img {
        height: 3.5rem !important;
        margin-bottom: 0.25rem !important;
    }

    .landscape-mobile .section-hero h2 {
        font-size: 0.9rem !important;
        line-height: 1.35 !important;
    }

    /* Hide the scroll arrow in landscape — not enough space */
    .landscape-mobile .section-hero [class*="bottom-16"],
    .landscape-mobile .section-hero [class*="bottom-14"] {
        display: none !important;
    }

    /* ── PHILOSOPHY ── */
    .landscape-mobile .section-philosophy {
        flex-direction: row !important;
        padding-top: 3rem !important;
        gap: 1rem !important;
        overflow-y: auto !important;
        align-items: center !important;
    }

    .landscape-mobile .section-philosophy h3 {
        font-size: 1.15rem !important;
        margin-bottom: 0.35rem !important;
        line-height: 1.2 !important;
    }

    .landscape-mobile .section-philosophy p {
        font-size: 0.75rem !important;
        line-height: 1.4 !important;
        margin-bottom: 0.4rem !important;
    }

    /* Polaroid card smaller */
    .landscape-mobile .section-philosophy>div:last-child>div {
        width: 6.5rem !important;
    }

    .landscape-mobile .section-philosophy>div:last-child {
        margin-top: 0 !important;
    }

    /* ── PACKAGES ── */
    .landscape-mobile .section-packages {
        padding-top: 3rem !important;
        overflow-y: auto !important;
    }

    .landscape-mobile .section-packages h2 {
        font-size: 1.1rem !important;
        margin-bottom: 0 !important;
    }

    .landscape-mobile .section-packages>div:first-child {
        margin-bottom: 0.35rem !important;
    }

    .landscape-mobile .section-packages p {
        font-size: 0.7rem !important;
    }

    /* Package cards: tighter */
    .landscape-mobile .section-packages .grid {
        gap: 0.5rem !important;
    }

    .landscape-mobile .section-packages li {
        font-size: 0.65rem !important;
    }

    .landscape-mobile .section-packages [class*="p-4"] {
        padding: 0.5rem !important;
    }

    .landscape-mobile .section-packages [class*="text-xl"],
    .landscape-mobile .section-packages [class*="text-3xl"] {
        font-size: 1rem !important;
    }

    /* ── GALLERY ── */
    .landscape-mobile .section-gallery {
        padding-top: 3rem !important;
        overflow-y: hidden !important;
    }

    .landscape-mobile .section-gallery h3 {
        font-size: 1.1rem !important;
        margin-bottom: 0 !important;
    }

    .landscape-mobile .section-gallery>div:first-child {
        margin-bottom: 0.35rem !important;
    }

    /* Strip height in landscape: 55% of viewport height */
    .landscape-mobile .section-gallery [class*="h-[40vh]"] {
        height: 52vh !important;
    }

    /* ── CONTACT ── */
    .landscape-mobile .section-contact {
        padding-top: 3rem !important;
        overflow-y: auto !important;
    }

    /* Decorative booth image: much smaller */
    .landscape-mobile .section-contact>div:first-child img {
        height: 110px !important;
    }

    .landscape-mobile .section-contact h2 {
        font-size: 1.1rem !important;
        margin-bottom: 0.4rem !important;
        line-height: 1.2 !important;
    }

    .landscape-mobile .section-contact>div:last-child>div {
        padding: 1rem !important;
        padding-bottom: 1.25rem !important;
    }

    .landscape-mobile .section-contact p {
        font-size: 0.75rem !important;
        margin-bottom: 0.5rem !important;
    }

    .landscape-mobile .section-contact [class*="gap-2"],
    .landscape-mobile .section-contact [class*="gap-4"] {
        gap: 0.25rem !important;
    }
}