/*
Theme Name: Rahimi Landing Child
Theme URI: https://example.local/rahimi-landing-child
Template: rahimi-landing
Author: Vira Asr Eurasia
Description: Child theme for Rahimi Landing.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: rahimi-landing-child
*/
/*
Theme Name: Rahimi Landing Child
Theme URI: https://example.local/rahimi-landing-child
Template: rahimi-landing
Author: Vira Asr Eurasia
Description: Child theme for Rahimi Landing.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: rahimi-landing-child
*/

/* Footer services — link styles */
.elementor-location-footer .elementor-element-c59475d .elementor-icon-list-icon,
.elementor-195 .elementor-element-c59475d .elementor-icon-list-icon {
    display: none !important;
}
.elementor-location-footer .elementor-element-c59475d .elementor-icon-list-text,
.elementor-195 .elementor-element-c59475d .elementor-icon-list-text,
.elementor-location-footer .elementor-element-c59475d a,
.elementor-195 .elementor-element-c59475d a {
    color: #fff !important;
    text-decoration: none !important;
}
.elementor-location-footer .elementor-element-c59475d a:hover .elementor-icon-list-text,
.elementor-195 .elementor-element-c59475d a:hover .elementor-icon-list-text {
    color: #e7bd36 !important;
}

body .rpt-chart-head-stats {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    justify-content: flex-end;
    flex-direction: row-reverse;
}
body .rpt-chart-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0px;
    margin-bottom: 18px;
    flex-direction: column;
}
body .rpt-calculator-head {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 4px;
    flex-direction: row-reverse;
}
body .rpt-calculator-head h3 {
    margin: 0;
    font-size: 19px;
    line-height: 1.5;
}
body .rpt-input-wrap {

    flex-direction: row-reverse;
}
body .rpt-calculator {
    padding: 30px 18px 22px 18px;
    display: flex;
    margin-top: -9px;
    flex-direction: column;
    gap: 8px;
}

/* ==================================================
   Homepage shared content width (= header/menu)
   ================================================== */
body.home .elementor-46 {
    --rahimi-content-width: 1140px;
    --rahimi-page-gutter: 16px;
}

body.home .elementor-46 .elementor-element-a9205e9,
body.home .elementor-46 .elementor-element-fdc622c,
body.home .elementor-46 .elementor-element-fdc622c > .e-con-inner,
body.home .elementor-46 .elementor-element-5c56922,
body.home .elementor-46 .elementor-element-0b3470f,
body.home .elementor-46 .elementor-element-0b3470f .elementor-widget-container {
    overflow: visible !important;
}

/* Outer sections share one width/gutter with the header row */
body.home .elementor-46 .elementor-element-a9205e9,
body.home .elementor-46 .elementor-element-aa100cf,
.elementor .e-fe093e4 {
    width: min(var(--rahimi-content-width), calc(100% - (2 * var(--rahimi-page-gutter)))) !important;
    max-width: min(var(--rahimi-content-width), calc(100% - (2 * var(--rahimi-page-gutter)))) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}

body.home .elementor-46 .elementor-element-a9205e9 {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Collapsible SEO box: full-bleed background; text column matches menu */
body.home .elementor-46 .elementor-element-01be14d {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
}

body.home .elementor-46 .elementor-element-e5b8193,
body.home .elementor-46 .elementor-element-e5b8193 .elementor-widget-container,
body.home .elementor-46 .elementor-element-e5b8193 .rpt-collapsible-text-widget {
    width: 100% !important;
    max-width: 100% !important;
    --container-widget-width: 100% !important;
    box-sizing: border-box !important;
}

body.home .elementor-46 .elementor-element-e5b8193 {
    align-self: stretch !important;
}

body.home .elementor-46 .elementor-element-e5b8193 .rpt-collapsible-title,
body.home .elementor-46 .elementor-element-e5b8193 .rpt-collapsible-content,
body.home .elementor-46 .elementor-element-e5b8193 .rpt-collapsible-toggle {
    width: min(var(--rahimi-content-width), calc(100% - (2 * var(--rahimi-page-gutter)))) !important;
    max-width: min(var(--rahimi-content-width), calc(100% - (2 * var(--rahimi-page-gutter)))) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}

/* Nested hero wrappers fill the outer width — never re-apply the page gutter */
body.home .elementor-46 .elementor-element-fdc622c {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-top: 48px !important;
    padding-bottom: 24px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

body.home .elementor-46 .elementor-element-fdc622c > .e-con-inner {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

body.home .elementor-46 .elementor-element-5c56922 {
    width: 100% !important;
    max-width: 100% !important;
    height: 392px !important;
    min-height: 392px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    border-radius: 28px !important;
    align-items: center !important;
    position: relative !important;
    box-sizing: border-box !important;
}

body.home .elementor-46 .elementor-element-a9f2f05 {
    justify-content: center !important;
    text-align: right !important;
    z-index: 2;
}

body.home .elementor-46 .elementor-element-65025b1,
body.home .elementor-46 .elementor-element-65025b1 .elementor-widget-container,
body.home .elementor-46 .elementor-element-65025b1 h1 {
    font-size: 48px !important;
    font-weight: 900 !important;
    line-height: 72px !important;
    text-align: right !important;
    font-family: "IRANYekanXFaNum", Tahoma, Arial, sans-serif !important;
}

body.home .elementor-46 .elementor-element-65025b1 h1 {
    margin: 0 !important;
    padding: 0 !important;
}

body.home .elementor-46 .elementor-element-65025b1 h1 + h1 {
    margin-top: 0 !important;
}

body.home .elementor-46 .elementor-element-14ad65c,
body.home .elementor-46 .elementor-element-14ad65c p {
    text-align: right !important;
}

/* Hero image breaks out of the main box */
body.home .elementor-46 .elementor-element-0b3470f {
    align-self: end !important;
    justify-self: center !important;
    margin-top: -72px !important;
    margin-bottom: -36px !important;
    z-index: 3;
}

body.home .elementor-46 .elementor-element-0b3470f img {
    display: block !important;
    width: min(560px, 100%) !important;
    max-width: none !important;
    height: auto !important;
    object-fit: contain !important;
    filter: drop-shadow(0 28px 40px rgba(0, 0, 0, .35));
}

@media (max-width: 1200px) {
    body.home .elementor-46 .elementor-element-5c56922 {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 392px !important;
        padding-top: 28px !important;
        padding-bottom: 28px !important;
    }

    body.home .elementor-46 .elementor-element-65025b1,
    body.home .elementor-46 .elementor-element-65025b1 .elementor-widget-container,
    body.home .elementor-46 .elementor-element-65025b1 h1 {
        font-size: clamp(32px, 4vw, 48px) !important;
        line-height: 1.5 !important;
    }

    body.home .elementor-46 .elementor-element-0b3470f {
        margin-top: -40px !important;
        margin-bottom: -16px !important;
    }
}

@media (max-width: 767px) {
    /* Match header side padding (10px) so sections align with the menu */
    body.home .elementor-46 {
        --rahimi-page-gutter: 10px;
    }

    body.home .elementor-46 .elementor-element-a9205e9,
    body.home .elementor-46 .elementor-element-aa100cf,
    .elementor .e-fe093e4 {
        width: calc(100% - (2 * var(--rahimi-page-gutter))) !important;
        max-width: calc(100% - (2 * var(--rahimi-page-gutter))) !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    body.home .elementor-46 .elementor-element-01be14d {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    body.home .elementor-46 .elementor-element-fdc622c,
    body.home .elementor-46 .elementor-element-fdc622c > .e-con-inner,
    body.home .elementor-46 .elementor-element-5c56922,
    body.home .elementor-46 .elementor-element-e5b8193,
    body.home .elementor-46 .elementor-element-e5b8193 .elementor-widget-container,
    body.home .elementor-46 .elementor-element-e5b8193 .rpt-collapsible-text-widget {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    body.home .elementor-46 .elementor-element-fdc622c {
        padding-top: 24px !important;
    }

    body.home .elementor-46 .elementor-element-5c56922 {
        height: auto !important;
        min-height: 0 !important;
        border-radius: 20px !important;
        padding: 24px 10px 8px !important;
    }

    body.home .elementor-46 .elementor-element-65025b1,
    body.home .elementor-46 .elementor-element-65025b1 .elementor-widget-container,
    body.home .elementor-46 .elementor-element-65025b1 h1 {
        font-size: 28px !important;
        line-height: 42px !important;
        text-align: center !important;
    }

    body.home .elementor-46 .elementor-element-a9f2f05,
    body.home .elementor-46 .elementor-element-14ad65c,
    body.home .elementor-46 .elementor-element-14ad65c p {
        text-align: center !important;
    }

    body.home .elementor-46 .elementor-element-0b3470f {
        margin-top: 8px !important;
        margin-bottom: 28px !important;
        order: -1;
    }

    body.home .elementor-46 .elementor-element-0b3470f img {
        width: min(320px, 88vw) !important;
        margin-inline: auto !important;
    }

    /* Collapsible SEO: full-bleed box, text matches menu gutter */
    body.home .elementor-46 .elementor-element-e5b8193 {
        --container-widget-width: 100% !important;
        align-self: stretch !important;
        padding-inline: 0 !important;
    }

    body.home .elementor-46 .elementor-element-e5b8193 .rpt-collapsible-title,
    body.home .elementor-46 .elementor-element-e5b8193 .rpt-collapsible-content,
    body.home .elementor-46 .elementor-element-e5b8193 .rpt-collapsible-toggle {
        width: calc(100% - (2 * var(--rahimi-page-gutter))) !important;
        max-width: calc(100% - (2 * var(--rahimi-page-gutter))) !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    body.home .elementor-46 .rpt-collapsible-text-widget {
        padding-inline: 0 !important;
    }

    body.home .elementor-46 .rpt-collapsible-content,
    body.home .elementor-46 .rpt-collapsible-content p {
        box-sizing: border-box !important;
    }

    /* Footer license boxes: 2 columns on mobile */
    .elementor-location-footer .elementor-element-62f333e,
    .elementor-195 .elementor-element-62f333e {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
    }

    .elementor-location-footer .elementor-element-62f333e > .elementor-element,
    .elementor-195 .elementor-element-62f333e > .elementor-element {
        width: 100% !important;
        max-width: 100% !important;
    }

    .elementor-location-footer .elementor-element-62f333e img,
    .elementor-195 .elementor-element-62f333e img {
        width: 100% !important;
        height: auto !important;
        max-width: 100% !important;
        object-fit: contain;
    }

    /* Footer services links: 2 columns on mobile */
    .elementor-location-footer .elementor-element-c59475d .elementor-widget-container,
    .elementor-195 .elementor-element-c59475d .elementor-widget-container,
    .elementor-location-footer .elementor-element-c59475d .elementor-icon-list-items,
    .elementor-195 .elementor-element-c59475d .elementor-icon-list-items {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        column-gap: 16px !important;
        row-gap: 10px !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
    }

    .elementor-location-footer .elementor-element-c59475d .elementor-widget-container > p,
    .elementor-195 .elementor-element-c59475d .elementor-widget-container > p,
    .elementor-location-footer .elementor-element-c59475d .elementor-icon-list-item,
    .elementor-195 .elementor-element-c59475d .elementor-icon-list-item {
        margin: 0 !important;
        width: 100% !important;
        padding: 0 !important;
    }

    .elementor-location-footer .elementor-element-c59475d .elementor-icon-list-icon,
    .elementor-195 .elementor-element-c59475d .elementor-icon-list-icon {
        display: none !important;
    }

    .elementor-location-footer .elementor-element-c59475d .elementor-icon-list-text,
    .elementor-195 .elementor-element-c59475d .elementor-icon-list-text {
        color: #fff !important;
        font-size: 12px !important;
    }

    .elementor-location-footer .elementor-element-68adf77,
    .elementor-195 .elementor-element-68adf77 {
        align-items: stretch !important;
        width: 100% !important;
    }

    .elementor-location-footer .elementor-element-68adf77 > .elementor-element,
    .elementor-195 .elementor-element-68adf77 > .elementor-element {
        width: 100% !important;
        max-width: 100% !important;
    }
}

/* ==================================================
   Contact page: keep Elementor shell full-bleed;
   inner boxes already align to menu via plugin CSS
   ================================================== */
body.page-id-267 .elementor-267,
body.page-id-267 .elementor-267 > .e-con,
body.page-id-267 .elementor-element-a7c0nt1 {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

body.page-id-267 .elementor-element-c0nt4ct1,
body.page-id-267 .elementor-element-c0nt4ct1 > .elementor-widget-container {
    width: 100% !important;
    max-width: 100% !important;
}

/* Blog page: Elementor shell full-bleed; content aligns via .rahimi-blog-page */
body.page-id-162 .elementor-162,
body.page-id-162 .elementor-162 > .e-con,
body.page-id-162 .elementor-162 .e-con {
    width: 100% !important;
    max-width: 100% !important;
}

body.page-id-162 .elementor-162 .e-con,
body.page-id-162 .elementor-162 .elementor-element {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

body.page-id-162 .rahimi-blog-page,
body.page-id-162 .rahimi-blog-container {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}
