/* Fix: Elementor inline SVG icons rendering oversized.
   Constrain them to 1em so they inherit the correct size from the theme. */
.e-font-icon-svg {
    width: 1em;
    height: 1em;
    display: inline-block;
    vertical-align: -0.125em;
}

/* =========================================================================
   DR. KARIM ALI — BRAND KIT (colors + fonts)
   Palette: dark maroon #1E0807, deep red #591311, brick #8B2515, cream #F9F5F2
   Fonts: Tajawal (body + headings), Strainger Signatures (logo accent)
   ========================================================================= */
@font-face { font-family:'Tajawal'; src:url('../../uploads/drkarim/fonts/Tajawal-Light.ttf') format('truetype'); font-weight:300; font-display:swap; }
@font-face { font-family:'Tajawal'; src:url('../../uploads/drkarim/fonts/Tajawal-Regular.ttf') format('truetype'); font-weight:400; font-display:swap; }
@font-face { font-family:'Tajawal'; src:url('../../uploads/drkarim/fonts/Tajawal-Medium.ttf') format('truetype'); font-weight:500; font-display:swap; }
@font-face { font-family:'Tajawal'; src:url('../../uploads/drkarim/fonts/Tajawal-Bold.ttf') format('truetype'); font-weight:700; font-display:swap; }
@font-face { font-family:'Tajawal'; src:url('../../uploads/drkarim/fonts/Tajawal-ExtraBold.ttf') format('truetype'); font-weight:800; font-display:swap; }
@font-face { font-family:'Tajawal'; src:url('../../uploads/drkarim/fonts/Tajawal-Black.ttf') format('truetype'); font-weight:900; font-display:swap; }
@font-face { font-family:'Strainger Signatures'; src:url('../../uploads/drkarim/fonts/strainger-signatures.otf') format('opentype'); font-display:swap; }

/* ---- Re-theme: brand colors via the theme's own CSS variables ---- */
:root, body {
    --mx-prime-c:  #8B2515 !important;   /* primary accent (was blue)  */
    --mx-prime-c2: #1E0807 !important;   /* dark sections (was navy)   */
    --mx-prime-c3: #8B2515 !important;   /* main accent / buttons (was teal) */
}

/* ---- Fonts: apply Tajawal site-wide (icons keep their own font) ---- */
body { font-family: 'Tajawal', sans-serif !important; }
h1, h2, h3, h4, h5, h6,
.elementor-heading-title, .mx-title, .mx-sub-title, .mx-sec-title {
    font-family: 'Tajawal', sans-serif !important;
}
button, input, select, textarea,
.elementor-button, .mx-btn, .drk-btn, .read_more, .wpcf7-form input, .wpcf7-form textarea {
    font-family: 'Tajawal', sans-serif !important;
}

/* ---- Catch the few hardcoded teal spots the variables don't reach ---- */
.hr4-bottom1, .hr4-bottom2 { background-color: #8B2515 !important; }
.wpcf7-form button, .wpcf7-form input[type="submit"], .item-form button { background-color: #8B2515 !important; }
.item-inner { background-color: #8B2515 !important; }                 /* hero text card */
.cta-area, .mx-hr4-icon { background-color: #1E0807 !important; }      /* header top bar + hero shape icons */
/* proper button styling for .app_btn (clinic "Get Directions" + "Make An Appointment") */
.app_btn {
    display: inline-flex !important;
    align-items: center;
    gap: 9px;
    width: auto !important;
    padding: 12px 22px !important;
    background-color: #8B2515 !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 700;
    line-height: 1 !important;
    letter-spacing: .02em;
    border-radius: 10px !important;
    transition: background .2s ease, transform .2s ease;
}
.app_btn:hover { background-color: #591311 !important; color: #fff !important; transform: translateY(-2px); }
.app_btn .fa-arrow-right {
    background: transparent !important;
    width: auto !important; height: auto !important;
    padding: 0 !important; border-radius: 0 !important;
    color: #fff !important; font-size: 13px;
}
.item-btn .fa-arrow-right,
.wpcf7-form .fa-arrow-right { background-color: #591311 !important; }
.mx-ftr4-copyright { background-color: #591311 !important; }           /* footer copyright bar */

/* ---- Dr. Karim Ali: footer doctor cutout — large, bottom-anchored, head rises above footer ---- */
@media (min-width: 992px) {
    .mx-ftr4-img.top_view {
        width: 440px !important;
        left: 0 !important;
        bottom: 0 !important;
        top: auto !important;
        z-index: 2;
    }
    .mx-ftr4-img.top_view img { width: 100% !important; height: auto !important; }
    .mx-ftr4-img + .mx-ftr4-widget { padding-left: 360px; }
}

/* ---- Remove the non-functional header search ---- */
.mx-search.search_btn_toggle, .search_btn_toggle, .mx-search { display: none !important; }

/* ---- Appointment form (CF7) on the dark section ---- */
#appointment .item-search { max-width: 600px; width: 100%; }
#appointment .drk-appt-fields { display: flex; flex-direction: column; gap: 12px; }
#appointment .wpcf7-form-control-wrap { display: block; width: 100%; }
#appointment .drk-appt-fields .wpcf7-form-control:not(.wpcf7-submit) {
    width: 100% !important;
    box-sizing: border-box !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 12px 16px !important;
    font-size: 16px !important;
    line-height: 1.4 !important;
    font-family: 'Tajawal', sans-serif !important;
    border: 1px solid rgba(0,0,0,.12) !important;
    border-radius: 10px !important;
    background: #ffffff !important;
    color: #222 !important;
}
#appointment .drk-appt-fields textarea.wpcf7-form-control { height: 96px !important; resize: vertical; }
#appointment .wpcf7-submit {
    width: auto;
    align-self: flex-start;
    background: #8B2515;
    color: #fff;
    border: 0;
    padding: 14px 32px;
    border-radius: 10px;
    font-weight: 700;
    cursor: pointer;
    transition: background .2s ease, transform .2s ease;
}
#appointment .wpcf7-submit:hover { background: #591311; transform: translateY(-2px); }
#appointment .wpcf7 .wpcf7-not-valid-tip { color: #ffd9d2; font-size: 13px; }

/* ---- Mobile fixes (phone) ---- */
@media (max-width: 767px) {
    /* hero title was clipping off-screen */
    .mx_hero_title, .hero_title_3 {
        font-size: 30px !important;
        line-height: 1.18 !important;
        white-space: normal !important;
        word-break: break-word;
    }
    .mx_hero_title span, .hero_title_3 span { display: inline; }
    /* logo overflowing next to the hamburger */
    .logo_site-size { max-width: 175px !important; height: auto !important; }
    /* keep the talks video tidy */
    .drk-talks-video { max-width: 100% !important; }
}

/* ---- One-page navigation: offset for the sticky header (JS handles the smooth motion) ---- */
#home, #about, #expertise, #clinics, #reviews, #talks, #appointment, #contact {
    scroll-margin-top: 110px;
}

/* ---- Talks About Him: video section ---- */
.drk-talks { background:#fff; }
.drk-talks-title .elementor-heading-title { font-size: clamp(28px,4vw,42px); font-weight:800; color:#0f2730; }
.drk-talks-sub { color:#6c7d85; font-size:17px; margin-top:6px; max-width:620px; text-align:center; }
.elementor-element-0c09238 { background:#fff !important; }
.drk-talks-video { width:100% !important; max-width:860px !important; margin:34px auto 0 !important; align-self:center !important; }
.drk-talks-video .elementor-wrapper, .drk-talks-video .elementor-widget-container { border-radius:18px; overflow:hidden; box-shadow:0 24px 50px -28px rgba(15,39,48,.5); }
.elementor-element-0c09238 .elementor-heading-title { font-size:clamp(28px,4vw,42px) !important; font-weight:800 !important; color:#0f2730 !important; text-align:center; }

/* ---- Comprehensive Urology Care: dark overlay on flip-card back so white text is readable ---- */
/* Keep the theme's flip positioning; only add a dark overlay + lift the text above it */
.mx-ser4-item .back-part { background-size: cover; background-position: center; }
.mx-ser4-item .back-part::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(15,39,48,.55), rgba(15,39,48,.88));
    z-index: 0;
    pointer-events: none;
}
.mx-ser4-item .back-part > * { position: relative; z-index: 1; }


/* live fix: remove leftover search-bar decorations around appointment form */
#appointment .sr-shape1,#appointment .sr-shape2,#appointment .sr-shape3{display:none !important;}
#appointment .item-search{background:transparent !important;box-shadow:none !important;border:0 !important;padding:0 !important;}


/* appointment form: expand the old search-bar box so the submit button is visible */
#appointment .item-search,#appointment .wpcf7,#appointment .wpcf7 form{height:auto !important;min-height:0 !important;}
#appointment .wpcf7-submit{height:auto !important;min-height:0 !important;line-height:1.3 !important;display:inline-block !important;margin-top:6px;}


/* appointment: lift form above the next section's diagonal so submit button shows */
#appointment{position:relative;z-index:3;}
#appointment .mx-count4-content,#appointment .item-search{position:relative !important;z-index:30 !important;}
#appointment .drk-appt-fields{gap:9px !important;}
#appointment textarea.wpcf7-form-control{height:62px !important;}
#appointment .wpcf7-submit{margin-top:6px;box-shadow:0 8px 20px rgba(0,0,0,.3);}


/* Appointment: clean white card so all fields + submit are fully visible */
#appointment .mx-count4-sec,#appointment .mx-count4-sec.over-hidden{overflow:visible !important;}
#appointment .item-search{position:relative !important;z-index:50 !important;background:#fff !important;padding:24px !important;border-radius:16px !important;box-shadow:0 24px 50px -18px rgba(0,0,0,.55) !important;max-width:440px !important;height:auto !important;}
#appointment .drk-appt-fields{gap:10px !important;}
#appointment .drk-appt-fields .wpcf7-form-control:not(.wpcf7-submit){background:#f5f7f7 !important;border:1px solid #e2e9e9 !important;color:#222 !important;}
#appointment textarea.wpcf7-form-control{height:70px !important;}
#appointment .wpcf7-submit{width:100% !important;margin-top:6px !important;box-shadow:none !important;}


/* mobile hero: drop the text card to the bottom so the doctor's face shows */
@media (max-width:767px){
.mx-hero4-sec .mx-hr4-card,#home .mx-hr4-card{top:auto !important;bottom:18px !important;}
.mx-hero4-sec .item-bg img,#home .item-bg img{object-position:center 28% !important;}
}
