/* =========================================================
   HOUSE CAREGIVER — FINAL MOBILE + ENGLISH FIX
   Safe additive stylesheet
   No rebuild / no framework
   ========================================================= */

*{
    box-sizing:border-box;
}

html{
    overflow-x:hidden;
}

body{
    overflow-x:hidden;
}

/* ---------- HEADER ---------- */

header,
.site-header,
.main-header{
    position:relative;
    z-index:1000;
}

.logo-box img,
header img[alt*="House Caregiver"],
header img[src*="house-caregiver-logo"]{
    max-width:100%;
    height:auto;
    object-fit:contain;
}

.language-btn,
.language,
.language-button,
.header-language,
.footer-language{
    white-space:nowrap;
}

/* ---------- HERO GENERAL ---------- */

.hero,
.hc-hero{
    width:100%;
    max-width:100%;
    overflow:hidden;
}

.hero img,
.hc-hero img{
    max-width:100%;
}

.hero-content,
.hero-text,
.hc-hero-text{
    min-width:0;
}

.hero-description,
.hc-hero-description{
    overflow-wrap:anywhere;
}

/* ---------- BUTTONS ---------- */

.hero-actions,
.hero-buttons,
.hc-hero-buttons{
    width:100%;
}

.hero-actions a,
.hero-actions button,
.hero-buttons a,
.hero-buttons button,
.hc-hero-buttons a,
.hc-hero-buttons button{
    max-width:100%;
    white-space:normal;
}

/* ---------- REMOVE OLD FLOATING WHATSAPP ---------- */

.whatsapp-float,
.floating-whatsapp,
.whatsapp-floating,
.whatsapp-button-float,
.hc-whatsapp-float{
    display:none !important;
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width:700px){

    body{
        width:100%;
        min-width:0;
    }

    /* Header */
    header,
    .site-header,
    .main-header{
        width:100%;
        max-width:100%;
        min-height:90px;
    }

    .logo-box{
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        min-width:0 !important;
    }

    .logo-box img,
    header .logo-box img{
        width:auto !important;
        max-width:150px !important;
        max-height:105px !important;
    }

    .language-btn,
    .language,
    .language-button,
    .header-language{
        font-size:14px !important;
        padding:10px 18px !important;
        min-height:44px !important;
    }

    .menu-toggle,
    #menuToggle{
        min-width:44px !important;
        min-height:44px !important;
        z-index:1100 !important;
    }

    /* Hero */
    .hero,
    .hc-hero{
        min-height:auto !important;
        height:auto !important;
        padding:0 !important;
    }

    .hero-content,
    .hc-hero-text{
        width:92% !important;
        max-width:92% !important;
        margin-left:auto !important;
        margin-right:auto !important;
        padding:34px 0 28px !important;
        text-align:center !important;
    }

    .hero-text h1,
    .hc-hero-text h1{
        font-size:clamp(34px,9.5vw,52px) !important;
        line-height:1.15 !important;
        margin:0 auto 18px !important;
        letter-spacing:0 !important;
    }

    .hero-description,
    .hc-hero-description{
        width:100% !important;
        max-width:100% !important;
        margin:0 auto 20px !important;
        font-size:15px !important;
        line-height:1.8 !important;
        text-align:center !important;
    }

    /* Feature cards: ALWAYS 2 x 2 */
    .features,
    .hc-features{
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:9px !important;
        width:100% !important;
        margin:18px auto !important;
    }

    .feature,
    .hc-feature{
        width:100% !important;
        min-width:0 !important;
        min-height:108px !important;
        padding:12px 8px !important;
        border-radius:15px !important;
        overflow:hidden !important;
    }

    .feature strong,
    .hc-feature strong{
        display:block !important;
        font-size:14px !important;
        line-height:1.45 !important;
    }

    .feature small,
    .hc-feature small{
        display:block !important;
        font-size:10px !important;
        line-height:1.5 !important;
    }

    /* Main action buttons: stacked and full width */
    .hero-actions,
    .hero-buttons,
    .hc-hero-buttons{
        display:flex !important;
        flex-direction:column !important;
        gap:10px !important;
        width:100% !important;
        margin:18px auto 0 !important;
    }

    .hero-actions a,
    .hero-actions button,
    .hero-buttons a,
    .hero-buttons button,
    .hc-hero-buttons a,
    .hc-hero-buttons button{
        width:100% !important;
        min-height:58px !important;
        margin:0 !important;
        border-radius:14px !important;
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        text-align:center !important;
    }

    /* Any request/send button */
    .send-request,
    .request-button,
    .hc-request-button{
        width:100% !important;
    }

    /* Prevent desktop hero image from breaking mobile */
    .hero-image,
    .hc-hero-image{
        width:100% !important;
        max-width:100% !important;
        overflow:hidden !important;
    }

    .hero-image img,
    .hc-hero-image img{
        width:100% !important;
        height:auto !important;
        max-width:100% !important;
        object-fit:cover !important;
    }

    /* Bottom send-request button */
    .bottom-request,
    .floating-request,
    .send-request-floating,
    .hc-bottom-request{
        max-width:calc(100% - 32px) !important;
    }

}

/* =========================================================
   SMALL PHONES
   ========================================================= */

@media (max-width:390px){

    .logo-box img,
    header .logo-box img{
        max-width:125px !important;
        max-height:90px !important;
    }

    .language-btn,
    .language,
    .language-button,
    .header-language{
        font-size:12px !important;
        padding:8px 13px !important;
    }

    .hero-content,
    .hc-hero-text{
        width:94% !important;
        max-width:94% !important;
    }

    .hero-text h1,
    .hc-hero-text h1{
        font-size:34px !important;
    }

    .feature,
    .hc-feature{
        min-height:100px !important;
        padding:9px 6px !important;
    }

    .feature strong,
    .hc-feature strong{
        font-size:13px !important;
    }

    .feature small,
    .hc-feature small{
        font-size:9px !important;
    }
}

/* =========================================================
   ENGLISH RTL/LTR SAFETY
   ========================================================= */

html[lang="en"],
body[dir="ltr"]{
    direction:ltr;
}

html[lang="en"] .hero-text,
body[dir="ltr"] .hero-text{
    text-align:left;
}

@media(max-width:700px){
    html[lang="en"] .hero-text,
    body[dir="ltr"] .hero-text{
        text-align:center !important;
    }
}
