/* Header + footer shell — homepage palette (novin / وب‌مسترپلاس) */
:root {
    --wm-h-primary: var(--wm-brand-primary);
    --wm-h-primary-dark: var(--wm-brand-primary-dark);
    --wm-h-purple: var(--wm-brand-purple-soft);
    --wm-h-orange: var(--wm-brand-accent);
    --wm-h-text: var(--wm-brand-ink);
    --wm-h-muted: var(--wm-brand-muted);
    --wm-h-surface: var(--wm-brand-bg);
    --wm-h-pill: var(--wm-brand-pill);
    --wm-h-footer-bg: var(--wm-brand-footer-bg);
    --wm-h-footer-deep: var(--wm-brand-footer-deep);
}

html:not(:has(body.admin-bar)),
body {
    margin: 0 !important;
    padding: 0 !important;
    scroll-padding-top: 0;
}

body {
    background: #fff !important;
}

/* Legacy main.min.css sets .app { justify-content: space-between } — keep shell flush */
.app {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: stretch !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* WP admin bar — use native html margin-top only (never cancel html + add body padding) */
@media screen and (min-width: 783px) {
    body.admin-bar .site-header {
        top: 32px;
    }
}

@media screen and (max-width: 782px) {
    body.admin-bar .site-header {
        top: 46px;
    }
}

body.admin-bar .site-header,
body.admin-bar .app {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

.site-header .elementor-element:first-child,
.site-header .elementor-element:first-child > .e-con,
.site-header .elementor-element:first-child > .e-con > .e-con-inner {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* ── Header flush to viewport top ── */
.site-header {
    position: sticky;
    top: 0;
    z-index: 300;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff;
    border-bottom: 1px solid rgba(85, 70, 201, 0.1);
    isolation: isolate;
    font-family: var(--wm-font-shell, "Dana", "YekanBakh", "IRANYekanX", Tahoma, sans-serif);
    font-size: var(--wm-settings-font-size, 16px);
    font-weight: var(--wm-settings-font-weight, 400);
    line-height: var(--wm-settings-line-height, 1.6);
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

/* Cover any sub-pixel / admin-bar leak above the header bar */
.site-header::before {
    content: "";
    position: absolute;
    inset-inline: 0;
    bottom: 100%;
    height: 100px;
    background: #fff;
    pointer-events: none;
}

.site-header > .elementor {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: stretch !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100%;
    min-height: 0 !important;
    height: auto !important;
}

/* Elementor kit CSS sets --align-self:center on the header bar — flush to top */
.site-header .elementor.elementor-28,
.site-header .elementor-element-530e818f.e-con,
.site-header .wm-plus-header__bar.e-con,
.site-header .wm-arz-header__bar.e-con,
.site-header .wm-novin-header__bar.e-con {
    align-self: stretch !important;
    --align-self: stretch !important;
    margin-top: 0 !important;
    flex: 0 0 auto !important;
}

.site-header .wm-plus-header__bar,
.site-header .wm-arz-header__bar,
.site-header .wm-novin-header__bar,
.site-header .wm-plus-header__bar.e-con,
.site-header .wm-arz-header__bar.e-con,
.site-header .wm-novin-header__bar.e-con {
    margin: 0 !important;
    padding: 0 !important;
    --margin-top: 0px !important;
    --margin-block-start: 0px !important;
    --padding-top: 0px !important;
    --padding-block-start: 0px !important;
    --align-self: stretch !important;
    align-self: stretch !important;
}

.site-header .e-con.e-parent,
.site-header .e-con.e-parent > .e-con-inner {
    --margin-top: 0px;
    --margin-block-start: 0px;
    --padding-top: 0px;
    --padding-block-start: 0px;
    --e-con-margin-block-start: 0px;
    --e-con-padding-block-start: 0px;
    margin-top: 0 !important;
    margin-block-start: 0 !important;
    padding-top: 0 !important;
    padding-block-start: 0 !important;
}

.site-header .wm-plus-header__bar > .e-con-inner,
.site-header .wm-arz-header__bar > .e-con-inner,
.site-header .wm-novin-header__bar > .e-con-inner {
    padding-top: 0 !important;
    padding-block-start: 0 !important;
    margin-top: 0 !important;
    padding-bottom: 8px !important;
}

.site-header .wm-plus-header__menu-pill > .e-con-inner {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100%;
    padding-top: 12px !important;
    padding-bottom: 12px !important;
}

@media (max-width: 991.98px) {
    .site-header .wm-plus-header__menu-pill {
        background: transparent !important;
        border-radius: 0 !important;
        width: 44px !important;
        max-width: 44px !important;
    }

    .site-header .wm-plus-header__menu-pill > .e-con-inner {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        width: 44px !important;
    }

    .site-header .wm-plus-header__login,
    .site-header .wm-plus-header__cta {
        display: none !important;
    }
}

.site-header .wm-plus-header__bar.e-con {
    --widgets-spacing: 0px;
    --container-widget-spacing: 0px;
    --gap: 0px;
}

.site-header .wm-plus-header__logo .elementor-widget-heading {
    display: none !important;
}

.site-header .wm-plus-header__logo .elementor-widget-image img {
    display: block;
    width: auto !important;
    max-width: min(200px, 100%);
    height: auto !important;
    max-height: 52px;
    object-fit: contain;
}

.site-header .e-con,
.site-header .e-con-inner,
.site-header .elementor-widget-wrap,
.site-header .elementor-widget-container {
    overflow: visible !important;
}

.site-header .wm-plus-header__bar {
    max-width: 1440px;
    margin-inline: auto;
}

.site-header .wm-plus-header__menu-pill {
    background-color: var(--wm-h-pill) !important;
    border-radius: 25px !important;
}

.site-header .wm-plus-header__menu-pill .elementor-widget-pluskitnavmenu, .elementor-widget-wmplus-pluskitnavmenu,
.site-header .wm-plus-header__menu-pill .elementor-widget-pluskitnavmenu, .elementor-widget-wmplus-pluskitnavmenu .elementor-widget-container,
.site-header .wm-plus-header__menu-pill .elementor-widget-pluskitnavmenu,
.site-header .wm-plus-header__menu-pill .elementor-widget-pluskitnavmenu .elementor-widget-container,
.site-header .wm-plus-header__menu-pill .nav-news-media {
    width: 100%;
}

.site-header .wm-plus-header__menu-pill .nav-news-media .container {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
}

.site-header .wm-plus-header__menu-pill .nav-news-media-menu {
    justify-content: center !important;
    align-items: center;
    flex-wrap: nowrap;
    gap: clamp(14px, 2vw, 28px);
    width: auto;
    margin: 0 auto;
    padding: 0;
    list-style: none;
}

.site-header .nav-news-media-menu > li.has-child {
    position: relative;
}

.site-header .nav-news-media-menu .item {
    color: var(--wm-h-text) !important;
    font-weight: 500;
}

.site-header .nav-news-media-menu > li.has-child:hover > a,
.site-header .nav-news-media-menu .item:hover {
    color: var(--wm-h-primary) !important;
}

.site-header .megamenu-news-media {
    z-index: 400;
    border: 1px solid rgba(85, 70, 201, 0.12);
    min-width: 190px;
}

.site-header .megamenu-news-media .sub-item,
.site-header .megamenu-news-media li {
    list-style: none;
}

.site-header .megamenu-news-media .sub-item .ite,
.site-header .megamenu-news-media li a {
    display: flex !important;
    color: var(--wm-h-text);
}

.site-header .megamenu-news-media li a:hover {
    background-color: rgba(85, 70, 201, 0.1);
    color: var(--wm-h-primary);
}

.site-header .elementor-button-link {
    font-family: inherit;
    font-weight: 600;
}

/* Force text widgets to inherit shell font (Elementor Google fonts are blocked) */
.site-header .elementor-heading-title,
.site-header .elementor-button,
.site-header .elementor-button-text,
.site-header .elementor-icon-list-text,
.site-header .elementor-icon-box-title,
.site-header .elementor-icon-box-description,
.site-header .elementor-widget-text-editor,
.site-header .elementor-widget-text-editor p,
.site-header .nav-news-media-menu .item,
.site-header .megamenu-news-media a,
.site-header .webmaster-header-login .top-header-shop__auth__btn,
.site-header .webmaster-header-cta .btninfofour,
.site-header .wm-plus-header__cta .btninfofour {
    font-family: inherit !important;
}

/* ── Footer وب‌مسترپلاس layout (site-footer + Elementor canvas) ── */
.wm-plus-footer__shell {
    position: relative;
    background-color: var(--wm-h-footer-bg, #4438a8) !important;
    background-image: linear-gradient(
        165deg,
        var(--wm-h-footer-bg, #4438a8) 0%,
        var(--wm-h-footer-deep, #372b7d) 100%
    ) !important;
    min-height: 0 !important;
    height: auto !important;
    padding-top: 0 !important;
    margin-top: 56px;
    overflow: visible;
    border-radius: 28px 28px 0 0;
    box-shadow: 0 -12px 40px rgba(85, 70, 201, 0.1);
}

.wm-plus-footer__shell::before {
    display: none;
}

.wm-plus-footer__shell > .e-con-inner {
    display: flex !important;
    flex-direction: column !important;
    padding: 0 !important;
    gap: 0 !important;
    min-height: 0 !important;
    height: auto !important;
}

.wm-plus-footer__body,
.wm-plus-footer__body > .e-con,
.wm-plus-footer__body > .e-con > .e-con-inner,
.wm-plus-footer__grid,
.wm-plus-footer__grid > .e-con,
.wm-plus-footer__col,
.wm-plus-footer__col.e-con {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
}

.wm-plus-footer__body,
.wm-plus-footer__body > .e-con,
.wm-plus-footer__body > .e-con > .e-con-inner {
    min-height: 0 !important;
    height: auto !important;
}

.wm-plus-footer__body > .e-con-inner {
    padding: 0 !important;
}

.wm-plus-footer__grid.e-con,
.wm-plus-footer__grid > .e-con-inner,
.site-footer .wm-plus-footer__grid.e-con,
.site-footer .wm-plus-footer__grid > .e-con-inner {
    display: grid !important;
    grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1.35fr);
    gap: 36px clamp(56px, 6vw, 96px) !important;
    align-items: start;
    max-width: 1280px;
    width: 100%;
    margin-inline: auto;
    padding: 52px clamp(20px, 3vw, 40px) 48px;
    box-sizing: border-box;
    flex-direction: unset !important;
    flex-wrap: unset !important;
}

.wm-plus-footer__grid.e-con > .wm-plus-footer__col,
.wm-plus-footer__grid > .e-con-inner > .wm-plus-footer__col,
.site-footer .wm-plus-footer__grid.e-con > .wm-plus-footer__col,
.site-footer .wm-plus-footer__grid > .e-con-inner > .wm-plus-footer__col {
    min-width: 0;
    width: auto !important;
    max-width: 100%;
    flex: unset !important;
}

.wm-plus-footer__grid.e-con > .wm-plus-footer__col:nth-child(2),
.wm-plus-footer__grid.e-con > .wm-plus-footer__col:nth-child(3),
.wm-plus-footer__grid > .e-con-inner > .wm-plus-footer__col:nth-child(2),
.wm-plus-footer__grid > .e-con-inner > .wm-plus-footer__col:nth-child(3),
.site-footer .wm-plus-footer__grid.e-con > .wm-plus-footer__col:nth-child(2),
.site-footer .wm-plus-footer__grid.e-con > .wm-plus-footer__col:nth-child(3),
.site-footer .wm-plus-footer__grid > .e-con-inner > .wm-plus-footer__col:nth-child(2),
.site-footer .wm-plus-footer__grid > .e-con-inner > .wm-plus-footer__col:nth-child(3) {
    padding-inline: clamp(10px, 2vw, 24px);
}

.wm-plus-footer__grid.e-con > .wm-plus-footer__col .footer-dental-nav,
.wm-plus-footer__grid.e-con > .wm-plus-footer__col .elementor-widget-container,
.site-footer .wm-plus-footer__grid.e-con > .wm-plus-footer__col .footer-dental-nav,
.site-footer .wm-plus-footer__grid.e-con > .wm-plus-footer__col .elementor-widget-container {
    max-width: 100%;
}

.wm-plus-footer__grid .wm-plus-footer__col {
    width: auto !important;
    max-width: none !important;
    min-width: 0;
    flex: unset !important;
}

.wm-plus-footer__links .elementor-icon-list-items {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
    row-gap: 16px !important;
}

.wm-plus-footer__links .elementor-icon-list-item {
    margin-block: 0;
    margin-inline: 0;
    padding: 0;
}

.wm-plus-footer__links .elementor-icon-list-item:not(:last-child) {
    margin-bottom: 14px !important;
}

.wm-plus-footer__links .elementor-icon-list-icon {
    display: none !important;
    width: 0 !important;
    margin: 0 !important;
}

.wm-plus-footer__links .elementor-icon-list-text,
.wm-plus-footer__links .elementor-icon-list-text a {
    color: rgba(255, 255, 255, 0.84) !important;
    text-decoration: none;
    font-size: 0.9rem;
    line-height: 1.65;
    white-space: normal;
    word-break: keep-all;
    transition: color 0.2s ease, padding-inline-start 0.2s ease;
}

.wm-plus-footer__links .elementor-icon-list-text a:hover {
    color: var(--wm-h-orange) !important;
    padding-inline-start: 4px;
}

.wm-plus-footer__shell.e-con,
.wm-plus-footer__body.e-con,
.wm-plus-footer__grid.e-con,
.wm-plus-footer__col.e-con {
    --min-height: 0px !important;
    min-height: 0 !important;
    height: auto !important;
}

.wm-plus-footer__bottom.e-con {
    --min-height: 0px !important;
    min-height: 0 !important;
}

.site-footer {
    margin: 0 !important;
    padding: 0 !important;
    background: var(--wm-brand-bg, #f7f6fe);
    color: #fff;
    overflow: hidden;
    font-family: var(--wm-font-shell, "Dana", "YekanBakh", "IRANYekanX", Tahoma, sans-serif);
    font-size: var(--wm-settings-font-size, 16px);
    font-weight: var(--wm-settings-font-weight, 400);
    line-height: var(--wm-settings-line-height, 1.6);
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

.site-footer > .elementor,
.site-footer .e-con.e-parent {
    margin: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
}

.site-footer .wm-plus-footer__shell {
    position: relative;
    background-color: var(--wm-h-footer-bg) !important;
    background-image: linear-gradient(
        165deg,
        var(--wm-h-footer-bg) 0%,
        var(--wm-h-footer-deep) 100%
    ) !important;
    min-height: 0 !important;
    height: auto !important;
    padding-top: 0 !important;
    margin-top: 56px;
    overflow: visible;
    border-radius: 28px 28px 0 0;
    box-shadow: 0 -12px 40px rgba(85, 70, 201, 0.1);
}

.site-footer .elementor .wm-plus-footer__shell.elementor-element:not(.elementor-motion-effects-element-type-background),
.site-footer .elementor .wm-plus-footer__shell.elementor-element > .elementor-motion-effects-container > .elementor-motion-effects-layer {
    background-color: var(--wm-h-footer-bg) !important;
    background-image: linear-gradient(
        165deg,
        var(--wm-h-footer-bg) 0%,
        var(--wm-h-footer-deep) 100%
    ) !important;
}

.site-footer .wm-plus-footer__body,
.site-footer .wm-plus-footer__body.e-con,
.site-footer .wm-plus-footer__grid,
.site-footer .wm-plus-footer__grid.e-con,
.site-footer .wm-plus-footer__col,
.site-footer .wm-plus-footer__col.e-con {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
}

.site-footer .wm-plus-footer__shell::before {
    display: none;
}

.site-footer .wm-plus-footer__shell > .e-con-inner {
    padding: 0 !important;
    gap: 0 !important;
}

.site-footer .wm-plus-footer__body > .e-con-inner {
    padding: 0 !important;
}

.site-footer .wm-plus-footer__wave,
.wm-plus-footer__wave {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

.site-footer .wm-plus-footer__col {
    min-width: 0;
}

.site-footer .wm-plus-footer__grid.e-con,
.site-footer .wm-plus-footer__grid > .e-con-inner {
    display: grid !important;
    grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1.35fr);
    gap: 36px clamp(56px, 6vw, 96px) !important;
    align-items: start;
    max-width: 1280px;
    width: 100%;
    margin-inline: auto;
    padding: 52px clamp(20px, 3vw, 40px) 48px;
    box-sizing: border-box;
    flex-direction: unset !important;
    flex-wrap: unset !important;
}

.site-footer .wm-plus-footer__grid.e-con > .wm-plus-footer__col:nth-child(2),
.site-footer .wm-plus-footer__grid.e-con > .wm-plus-footer__col:nth-child(3),
.site-footer .wm-plus-footer__grid > .e-con-inner > .wm-plus-footer__col:nth-child(2),
.site-footer .wm-plus-footer__grid > .e-con-inner > .wm-plus-footer__col:nth-child(3) {
    padding-inline: clamp(10px, 2vw, 24px);
}

.site-footer .wm-plus-footer__logo img,
.site-footer .wm-plus-footer__col--about > .elementor-widget-image img {
    max-width: 136px;
    width: 100%;
    height: auto;
    margin-bottom: 14px;
    filter: brightness(0) invert(1);
    opacity: 0.96;
}

.site-footer .wm-plus-footer__about .elementor-widget-container,
.site-footer .wm-plus-footer__about p,
.site-footer .wm-plus-footer__col--about > .elementor-widget-text-editor .elementor-widget-container,
.site-footer .wm-plus-footer__col--about > .elementor-widget-text-editor p {
    margin: 0 0 20px;
    color: var(--wm-brand-on-dark-muted, rgba(212, 207, 249, 0.95)) !important;
    font-size: 0.92rem;
    line-height: 1.85;
    max-width: 36ch;
}

.site-footer .wm-plus-footer__heading .elementor-heading-title,
.site-footer .wm-plus-footer__col:not(.wm-plus-footer__col--about) > .elementor-widget-heading .elementor-heading-title {
    position: relative;
    margin: 0 0 18px !important;
    padding-bottom: 10px;
    color: #fff !important;
    font-size: 1.02rem !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
}

.site-footer .wm-plus-footer__heading .elementor-heading-title::after,
.site-footer .wm-plus-footer__col:not(.wm-plus-footer__col--about) > .elementor-widget-heading .elementor-heading-title::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    width: 32px;
    height: 3px;
    border-radius: 999px;
    background: var(--wm-h-orange);
}

.site-footer .wm-plus-footer__social .elementor-widget-container,
.site-footer .wm-plus-footer__col--about > .elementor-widget-social-icons .elementor-widget-container {
    margin-top: 2px;
}

.site-footer .wm-plus-footer__social .elementor-social-icons-wrapper,
.site-footer .wm-plus-footer__col--about > .elementor-widget-social-icons .elementor-social-icons-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.site-footer .wm-plus-footer__social .elementor-social-icon,
.site-footer .wm-plus-footer__col--about > .elementor-widget-social-icons .elementor-social-icon {
    width: 38px !important;
    height: 38px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.1) !important;
    border: 1px solid rgba(255, 255, 255, 0.18);
    transition: transform 0.2s ease, background 0.2s ease, border-color 0.2s ease;
}

.site-footer .wm-plus-footer__social .elementor-social-icon:hover,
.site-footer .wm-plus-footer__col--about > .elementor-widget-social-icons .elementor-social-icon:hover {
    transform: translateY(-2px);
    background: var(--wm-h-orange) !important;
    border-color: var(--wm-h-orange) !important;
}

.site-footer .wm-plus-footer__social .elementor-social-icon i,
.site-footer .wm-plus-footer__social .elementor-social-icon svg,
.site-footer .wm-plus-footer__col--about > .elementor-widget-social-icons .elementor-social-icon i,
.site-footer .wm-plus-footer__col--about > .elementor-widget-social-icons .elementor-social-icon svg {
    color: #fff !important;
    fill: #fff !important;
}

.site-footer .footer-dental-nav,
.site-footer .wm-plus-footer__col .footer-dental-nav,
.site-footer .wm-plus-footer__grid .footer-dental-nav,
.site-footer .elementor-widget-listone .footer-dental-nav,
.site-footer .elementor-widget-listone .footer-dental-nav,
.site-footer .elementor-widget-listone .footer-nav {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex !important;
    flex-direction: column !important;
    gap: 18px !important;
    row-gap: 18px !important;
}

.site-footer .footer-dental-nav li,
.site-footer .wm-plus-footer__col .footer-dental-nav li {
    margin-block: 0;
    margin-inline: 0;
    padding: 0;
}

.site-footer .footer-dental-nav li:not(:last-child),
.site-footer .wm-plus-footer__col .footer-dental-nav li:not(:last-child) {
    margin-bottom: 18px !important;
}

.site-footer .footer-dental-nav a {
    display: block;
    color: rgba(255, 255, 255, 0.88) !important;
    text-decoration: none;
    font-size: 0.9rem;
    line-height: 1.75 !important;
    white-space: normal;
    word-break: keep-all;
    padding-block: 2px;
    transition: color 0.2s ease, padding-inline-start 0.2s ease;
}

.site-footer .footer-dental-nav a:hover {
    color: var(--wm-h-orange) !important;
    padding-inline-start: 4px;
}

.site-footer .wm-plus-footer__links .elementor-icon-list-items {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex !important;
    flex-direction: column !important;
    gap: 18px !important;
    row-gap: 18px !important;
}

.site-footer .wm-plus-footer__links .elementor-icon-list-item {
    margin-block: 0;
    margin-inline: 0;
    padding: 0;
}

.site-footer .wm-plus-footer__links .elementor-icon-list-item:not(:last-child) {
    margin-bottom: 14px !important;
}

.site-footer .wm-plus-footer__links .elementor-icon-list-icon {
    display: none !important;
    width: 0 !important;
    margin: 0 !important;
}

.site-footer .wm-plus-footer__links .elementor-icon-list-text,
.site-footer .wm-plus-footer__links .elementor-icon-list-text a {
    color: rgba(255, 255, 255, 0.84) !important;
    text-decoration: none;
    font-size: 0.9rem;
    line-height: 1.65;
    white-space: normal;
    word-break: keep-all;
    transition: color 0.2s ease, padding-inline-start 0.2s ease;
}

.site-footer .wm-plus-footer__links .elementor-icon-list-text a:hover {
    color: var(--wm-h-orange) !important;
    padding-inline-start: 4px;
}

.site-footer .wm-plus-footer__contact-item .elementor-icon-box-wrapper,
.site-footer .wm-plus-footer__col--contact .elementor-widget-icon-box .elementor-icon-box-wrapper {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    margin: 0 0 14px !important;
}

.site-footer .wm-plus-footer__contact-item:last-child .elementor-icon-box-wrapper,
.site-footer .wm-plus-footer__col--contact .elementor-widget-icon-box:last-child .elementor-icon-box-wrapper {
    margin-bottom: 0 !important;
}

.site-footer .wm-plus-footer__contact-item .elementor-icon-box-icon,
.site-footer .wm-plus-footer__col--contact .elementor-widget-icon-box .elementor-icon-box-icon {
    flex-shrink: 0;
}

.site-footer .wm-plus-footer__contact-item .elementor-icon-box-icon .elementor-icon,
.site-footer .wm-plus-footer__col--contact .elementor-widget-icon-box .elementor-icon-box-icon .elementor-icon {
    width: 40px !important;
    height: 40px !important;
    border-radius: 50%;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.12) !important;
    border: 1px solid rgba(255, 255, 255, 0.18);
    color: #fff !important;
    font-size: 16px;
}

.site-footer .wm-plus-footer__contact-item .elementor-icon-box-content,
.site-footer .wm-plus-footer__col--contact .elementor-widget-icon-box .elementor-icon-box-content {
    flex: 1;
    min-width: 0;
}

.site-footer .wm-plus-footer__contact-item .elementor-icon-box-description,
.site-footer .wm-plus-footer__col--contact .elementor-widget-icon-box .elementor-icon-box-description {
    margin: 0;
    color: rgba(255, 255, 255, 0.9) !important;
    font-size: 0.9rem;
    line-height: 1.7;
    word-break: keep-all;
}

.site-footer .wm-plus-footer__bottom {
    max-width: 100%;
    margin: 0;
    padding: 0;
    background: rgba(55, 43, 125, 0.65) !important;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    backdrop-filter: blur(4px);
}

.site-footer .wm-plus-footer__bottom > .e-con-inner {
    max-width: 1280px;
    margin-inline: auto;
    padding: 18px clamp(20px, 3vw, 40px) !important;
    justify-content: center !important;
}

.site-footer .wm-plus-footer__bottom-art {
    display: none !important;
}

.site-footer .wm-plus-footer__copy .elementor-heading-title,
.site-footer .wm-plus-footer__bottom .elementor-heading-title {
    margin: 0 !important;
    color: rgba(255, 255, 255, 0.55) !important;
    font-size: 0.8rem !important;
    font-weight: 500 !important;
    line-height: 1.6 !important;
    text-align: center;
    font-family: inherit !important;
}

.site-footer .elementor-heading-title,
.site-footer .elementor-icon-list-text,
.site-footer .elementor-icon-box-title,
.site-footer .elementor-icon-box-description,
.site-footer .elementor-widget-text-editor,
.site-footer .elementor-widget-text-editor p,
.site-footer .footer-dental-nav a,
.site-footer a:not([class*="eicon"]):not([class*="fa-"]):not([class*="isax"]) {
    font-family: inherit !important;
}

/* ── Webmaster Plus multi-column footer (وب‌مسترپلاس) ── */
.site-footer .wm-plus-footer-shell {
    position: relative;
    margin-top: 56px;
    padding-top: 0;
    background: transparent;
    color: rgba(255, 255, 255, 0.9);
    overflow: visible;
    border-radius: 28px 28px 0 0;
    box-shadow: 0 -12px 40px rgba(85, 70, 201, 0.1);
}

.site-footer .wm-plus-footer-shell::before {
    display: none;
}

.site-footer .wm-plus-footer-shell > .e-con-inner {
    padding: 0 !important;
    gap: 0 !important;
}

.site-footer .wm-plus-footer,
.site-footer .wm-plus-footer > .e-con,
.site-footer .wm-plus-footer .e-con-inner {
    background: linear-gradient(
        165deg,
        var(--wm-h-footer-bg) 0%,
        var(--wm-h-footer-deep) 100%
    ) !important;
    border: 0 !important;
    box-shadow: none !important;
}

.site-footer .wm-plus-footer__socket,
.site-footer .wm-plus-footer__socket > .e-con,
.site-footer .wm-plus-footer__socket .e-con-inner {
    background: rgba(55, 43, 125, 0.65) !important;
    border: 0 !important;
    box-shadow: none !important;
    border-top: 1px solid rgba(255, 255, 255, 0.12) !important;
}

.site-footer .wm-plus-footer__grid > .e-con-inner {
    display: flex;
    flex-wrap: wrap;
    gap: 28px 32px;
    justify-content: space-between;
    align-items: flex-start;
    max-width: 1360px;
    margin-inline: auto;
    padding-inline: clamp(16px, 2.8vw, 36px);
}

.site-footer .wm-plus-footer__col {
    flex: 1 1 180px;
    min-width: 0;
}

.site-footer .wm-plus-footer__col--about {
    flex: 1.35 1 280px;
}

.site-footer .wm-plus-footer__col--contact {
    flex: 1.15 1 240px;
}

.site-footer .wm-plus-footer__heading .elementor-heading-title {
    position: relative;
    margin: 0 0 16px;
    padding-bottom: 10px;
    color: #fff !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
}

.site-footer .wm-plus-footer__heading .elementor-heading-title::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    width: 36px;
    height: 3px;
    border-radius: 999px;
    background: var(--wm-h-orange);
}

.site-footer .wm-plus-footer__logo img {
    max-width: 148px;
    height: auto;
    margin-bottom: 14px;
    filter: brightness(0) invert(1);
    opacity: 0.96;
}

.site-footer .wm-plus-footer__about .elementor-widget-container,
.site-footer .wm-plus-footer__about p {
    margin: 0 0 18px;
    color: rgba(255, 255, 255, 0.86) !important;
    font-size: 0.9rem;
    line-height: 1.95;
}

.site-footer .wm-plus-footer__social .elementor-widget-container,
.site-footer .wm-plus-footer__social ul,
.site-footer .wm-plus-footer__social .footer-hall-beauty-socials,
.site-footer .wm-plus-footer__social .footer-vecalt-contact .socials {
    display: flex !important;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.site-footer .wm-plus-footer__social a,
.site-footer .wm-plus-footer__social .footer-vecalt-contact .socials li a {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: #fff !important;
    font-size: 1rem;
    transition: transform 0.2s, background 0.2s, border-color 0.2s, color 0.2s;
}

.site-footer .wm-plus-footer__social a:hover,
.site-footer .wm-plus-footer__social .footer-vecalt-contact .socials li a:hover {
    transform: translateY(-2px);
    background: var(--wm-h-orange) !important;
    border-color: var(--wm-h-orange) !important;
    color: #1A1238 !important;
}

.site-footer .wm-plus-footer__links .footer-dental-nav {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.site-footer .wm-plus-footer__links .footer-dental-nav li {
    margin-block: 0;
    margin-inline: 0;
    padding: 0;
}

.site-footer .wm-plus-footer__links .footer-dental-nav li:not(:last-child) {
    margin-bottom: 14px !important;
}

.site-footer .wm-plus-footer__links .footer-dental-nav a {
    color: rgba(255, 255, 255, 0.84) !important;
    text-decoration: none;
    font-size: 0.88rem;
    line-height: 1.6;
    transition: color 0.2s ease, padding-inline-start 0.2s ease;
}

.site-footer .wm-plus-footer__links .footer-dental-nav a:hover {
    color: var(--wm-h-orange) !important;
    padding-inline-start: 4px;
}

.site-footer .wm-plus-footer__contact-item .elementor-icon-box-wrapper {
    margin: 0;
}

.site-footer .wm-plus-footer__contact-item .elementor-icon-box-icon .elementor-icon {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.1);
    color: #fff !important;
}

.site-footer .wm-plus-footer__contact-item .elementor-icon-box-description {
    color: rgba(255, 255, 255, 0.9) !important;
    font-size: 0.88rem;
    line-height: 1.7;
}

.site-footer .wm-plus-footer__copy .elementor-heading-title {
    margin: 0;
    color: rgba(255, 255, 255, 0.58) !important;
    font-size: 0.8rem !important;
    font-weight: 500 !important;
    line-height: 1.6 !important;
}

@media (min-width: 768px) and (max-width: 1199.98px) {
    .wm-plus-footer__grid.e-con,
    .wm-plus-footer__grid > .e-con-inner,
    .site-footer .wm-plus-footer__grid.e-con,
    .site-footer .wm-plus-footer__grid > .e-con-inner {
        grid-template-columns: 1fr 1fr;
        gap: 32px clamp(40px, 5vw, 64px) !important;
        padding-top: 44px;
        padding-bottom: 40px;
    }

    .wm-plus-footer__col--about,
    .site-footer .wm-plus-footer__col--about {
        grid-column: 1 / -1;
    }

    .wm-plus-footer__col--contact,
    .site-footer .wm-plus-footer__col--contact {
        grid-column: 1 / -1;
    }

    .site-footer .wm-plus-footer__about p,
    .site-footer .wm-plus-footer__col--about > .elementor-widget-text-editor p {
        max-width: none;
    }
}

@media (max-width: 991.98px) {
    .site-footer .wm-plus-footer-shell {
        margin-top: 40px;
    }

    .site-footer .wm-plus-footer {
        padding-top: 40px !important;
        padding-bottom: 32px !important;
    }

    .site-footer .wm-plus-footer__grid > .e-con-inner {
        flex-direction: column;
        gap: 32px;
    }

    .site-footer .wm-plus-footer__col,
    .site-footer .wm-plus-footer__col--about,
    .site-footer .wm-plus-footer__col--contact {
        flex-basis: 100%;
        width: 100% !important;
    }

    .site-footer .wm-plus-footer__heading .elementor-heading-title {
        text-align: center;
    }

    .site-footer .wm-plus-footer__heading .elementor-heading-title::after {
        right: 50%;
        transform: translateX(50%);
    }

    .site-footer .wm-plus-footer__logo img {
        margin-inline: auto;
    }

    .site-footer .wm-plus-footer__about p {
        text-align: center;
    }

    .site-footer .wm-plus-footer__social .elementor-widget-container,
    .site-footer .wm-plus-footer__social ul,
    .site-footer .wm-plus-footer__social .footer-hall-beauty-socials,
    .site-footer .wm-plus-footer__social .footer-vecalt-contact .socials {
        justify-content: center;
    }

    .site-footer .wm-plus-footer__links .footer-dental-nav {
        text-align: center;
    }

    .site-footer .wm-plus-footer__contact-item .elementor-icon-box-wrapper {
        justify-content: center;
        text-align: center;
    }

    .wm-plus-footer__shell {
        margin-top: 40px;
        border-radius: 20px 20px 0 0;
    }

    .site-footer .wm-plus-footer__shell {
        margin-top: 40px;
        border-radius: 20px 20px 0 0;
    }
}

@media (max-width: 767.98px) {
    .wm-plus-footer__grid.e-con,
    .wm-plus-footer__grid > .e-con-inner,
    .site-footer .wm-plus-footer__grid.e-con,
    .site-footer .wm-plus-footer__grid > .e-con-inner {
        grid-template-columns: 1fr;
        gap: 0 !important;
        padding: 10px 14px 6px;
    }

    .wm-plus-footer__col--about,
    .site-footer .wm-plus-footer__col--about {
        grid-column: auto;
        text-align: start;
    }

    .wm-plus-footer__col--contact,
    .site-footer .wm-plus-footer__col--contact {
        display: none;
    }

    .wm-plus-footer__col,
    .site-footer .wm-plus-footer__col {
        width: 100% !important;
        margin: 0 !important;
        text-align: start;
    }

    .site-footer .wm-plus-footer__heading .elementor-heading-title,
    .site-footer .wm-plus-footer__col:not(.wm-plus-footer__col--about) > .elementor-widget-heading .elementor-heading-title {
        text-align: start !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .site-footer .wm-plus-footer__heading .elementor-heading-title::after,
    .site-footer .wm-plus-footer__col:not(.wm-plus-footer__col--about) > .elementor-widget-heading .elementor-heading-title::after {
        display: none !important;
    }
}
