/* PSFM Corporate UI Recovery
   Final shared layer for the main-site header and homepage first viewport. */

@media (max-width: 1199.98px) {
    .main-navigation .custom-nav-shell,
    html[dir="rtl"] .main-navigation .custom-nav-shell {
        direction: ltr !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
    }

    .psfm-mobile-fixed-controls,
    html[dir="rtl"] .psfm-mobile-fixed-controls {
        display: none !important;
        visibility: hidden !important;
        pointer-events: none !important;
    }
}

/* Phase-1: compact trust badges and premium city coverage links. */
.homepage-hero .hero-visual-stats {
    align-items: stretch !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.homepage-hero .hero-visual-stats span {
    justify-content: flex-start !important;
    min-width: 0 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
}

.homepage-hero .hero-visual-stats span:last-child {
    grid-column: 1 / -1 !important;
}

.city-service-card {
    overflow: hidden !important;
}

.city-service-link-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)) !important;
}

.city-service-link {
    min-height: 100% !important;
    border-radius: var(--psfm-polish-radius, 8px) !important;
    transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease !important;
}

.city-service-link:hover,
.city-service-link:focus {
    transform: translateY(-3px) !important;
}

html[dir="rtl"] .city-service-card,
html[dir="rtl"] .city-service-link {
    text-align: right !important;
}

@media (max-width: 575.98px) {
    .homepage-hero .hero-visual-stats {
        grid-template-columns: 1fr !important;
    }

    .homepage-hero .hero-visual-stats span:last-child {
        grid-column: auto !important;
    }

    .city-service-link-grid {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 575.98px) {
    :root {
        --psfm-fixed-header-height: 64px;
    }

    html,
    body,
    .main,
    .header,
    .main-navigation,
    .main-navigation .navbar,
    .homepage-hero,
    .homepage-proof-strip,
    .homepage-shell {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow-x: hidden !important;
    }

    body {
        padding-top: var(--psfm-fixed-header-height) !important;
    }

    .main-navigation .custom-nav-shell,
    html[dir="rtl"] .main-navigation .custom-nav-shell {
        min-height: var(--psfm-fixed-header-height) !important;
        padding: 9px 12px !important;
        gap: 8px !important;
    }

    .main-navigation .header-brand,
    html[dir="rtl"] .main-navigation .header-brand {
        display: inline-flex !important;
        flex: 1 1 auto !important;
        align-items: center !important;
        max-width: calc(100% - 94px) !important;
        min-width: 0 !important;
        margin: 0 !important;
        overflow: visible !important;
    }

    .main-navigation .header-brand img,
    .main-navigation .navbar-brand img,
    html[dir="rtl"] .main-navigation .header-brand img,
    html[dir="rtl"] .main-navigation .navbar-brand img {
        display: block !important;
        width: auto !important;
        max-width: min(162px, calc(100vw - 126px)) !important;
        max-height: 43px !important;
        height: auto !important;
        object-fit: contain !important;
    }

    .main-navigation .mobile-menu-right,
    html[dir="rtl"] .main-navigation .mobile-menu-right {
        position: relative !important;
        inset: auto !important;
        transform: none !important;
        display: flex !important;
        flex: 0 0 40px !important;
        align-items: center !important;
        justify-content: flex-end !important;
        width: 40px !important;
        max-width: 40px !important;
        min-width: 40px !important;
        gap: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
        z-index: 3 !important;
        direction: ltr !important;
    }

    .main-navigation .mobile-language-switcher,
    html[dir="rtl"] .main-navigation .mobile-language-switcher {
        display: none !important;
    }

    .main-navigation .mobile-search-btn,
    html[dir="rtl"] .main-navigation .mobile-search-btn {
        display: none !important;
        visibility: hidden !important;
        pointer-events: none !important;
    }

    .main-navigation .mobile-search-btn,
    .main-navigation .navbar-toggler,
    html[dir="rtl"] .main-navigation .mobile-search-btn,
    html[dir="rtl"] .main-navigation .navbar-toggler {
        width: 40px !important;
        height: 40px !important;
        min-width: 40px !important;
        flex: 0 0 40px !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .homepage-hero > .container,
    .homepage-proof-strip > .container,
    .homepage-shell > .container {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin: 0 auto !important;
        padding-left: 18px !important;
        padding-right: 18px !important;
        box-sizing: border-box !important;
        overflow-x: hidden !important;
    }

    .homepage-hero {
        padding-block: 54px 44px !important;
    }

    .homepage-hero .hero-layout,
    .homepage-hero .hero-copy,
    .homepage-hero .hero-copy > *,
    .homepage-hero .hero-actions,
    .homepage-hero .hero-market-note,
    .homepage-hero .hero-visual-wrap,
    .homepage-hero .hero-visual-card,
    .homepage-hero .hero-visual-stats,
    .homepage-hero .homepage-seo-authority {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
        transform: none !important;
    }

    .homepage-hero .hero-kicker,
    .homepage-hero .hero-actions,
    .homepage-hero .hero-market-note,
    .homepage-hero .hero-visual-wrap,
    .homepage-hero .homepage-seo-authority {
        max-width: calc(100vw - 36px) !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .homepage-hero .hero-copy,
    html[dir="rtl"] .homepage-hero .hero-copy {
        text-align: center !important;
    }

    .homepage-hero .hero-kicker,
    html[dir="rtl"] .homepage-hero .hero-kicker {
        display: flex !important;
        width: 100% !important;
        justify-content: center !important;
        padding: 9px 11px !important;
        font-size: 0.68rem !important;
        letter-spacing: 0.035em !important;
        text-align: center !important;
        overflow-wrap: anywhere !important;
    }

    .homepage-hero .hero-copy h1.hero-main-title,
    html[dir="rtl"] .homepage-hero .hero-copy h1.hero-main-title {
        width: min(100%, 338px) !important;
        max-width: min(100%, 338px) !important;
        margin-left: auto !important;
        margin-right: auto !important;
        font-size: clamp(1.6rem, 6.45vw, 2.05rem) !important;
        line-height: 1.1 !important;
        text-align: center !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
    }

    .homepage-hero .hero-copy h1.hero-main-title span,
    html[dir="rtl"] .homepage-hero .hero-copy h1.hero-main-title span {
        display: inline !important;
    }

    .homepage-hero .hero-copy p,
    html[dir="rtl"] .homepage-hero .hero-copy p {
        width: min(100%, 348px) !important;
        max-width: min(100%, 348px) !important;
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
    }

    .homepage-hero .hero-actions,
    html[dir="rtl"] .homepage-hero .hero-actions {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    .homepage-hero .hero-actions .theme-btn,
    .homepage-hero .hero-actions .theme-btn-white {
        display: flex !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        justify-content: space-between !important;
        padding: 12px 16px 12px 22px !important;
        overflow: hidden !important;
    }

    .homepage-hero .hero-market-note,
    html[dir="rtl"] .homepage-hero .hero-market-note {
        display: grid !important;
        grid-template-columns: auto minmax(0, 1fr) !important;
        align-items: flex-start !important;
        justify-content: center !important;
        text-align: center !important;
        overflow: hidden !important;
    }

    .homepage-hero .hero-market-note span,
    html[dir="rtl"] .homepage-hero .hero-market-note span {
        min-width: 0 !important;
        white-space: normal !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
    }
}

@media (max-width: 340px) {
    .main-navigation .custom-nav-shell,
    html[dir="rtl"] .main-navigation .custom-nav-shell,
    .homepage-hero > .container,
    .homepage-proof-strip > .container,
    .homepage-shell > .container {
        padding-left: 14px !important;
        padding-right: 14px !important;
    }

    .main-navigation .header-brand,
    html[dir="rtl"] .main-navigation .header-brand {
        max-width: calc(100% - 84px) !important;
    }

    .main-navigation .header-brand img,
    .main-navigation .navbar-brand img,
    html[dir="rtl"] .main-navigation .header-brand img,
    html[dir="rtl"] .main-navigation .navbar-brand img {
        max-width: min(138px, calc(100vw - 106px)) !important;
        max-height: 39px !important;
    }

    .main-navigation .mobile-menu-right,
    html[dir="rtl"] .main-navigation .mobile-menu-right {
        flex-basis: 38px !important;
        width: 38px !important;
        min-width: 38px !important;
        max-width: 38px !important;
        gap: 0 !important;
    }

    .main-navigation .mobile-search-btn,
    .main-navigation .navbar-toggler,
    html[dir="rtl"] .main-navigation .mobile-search-btn,
    html[dir="rtl"] .main-navigation .navbar-toggler {
        width: 38px !important;
        height: 38px !important;
        min-width: 38px !important;
        flex-basis: 38px !important;
    }

    .homepage-hero .hero-copy h1.hero-main-title,
    html[dir="rtl"] .homepage-hero .hero-copy h1.hero-main-title {
        font-size: clamp(1.42rem, 6.7vw, 1.68rem) !important;
    }
}

/* PSFM proof metric layout and counter motion.
   Keeps the existing card color treatment while removing stretched number targets. */
.homepage-proof-strip .proof-metric-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    align-items: stretch !important;
    margin-top: clamp(16px, 2vw, 24px) !important;
    margin-bottom: clamp(10px, 1.4vw, 18px) !important;
}

.homepage-proof-strip .proof-metric-card {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: flex-start !important;
    gap: 10px !important;
    min-height: 112px !important;
    overflow: hidden !important;
}

.homepage-proof-strip .proof-metric-counter {
    display: inline-flex !important;
    width: auto !important;
    max-width: 100% !important;
    align-items: baseline !important;
    margin-bottom: 0 !important;
    direction: ltr !important;
    unicode-bidi: isolate !important;
    font-variant-numeric: tabular-nums !important;
    letter-spacing: 0 !important;
    transform-origin: left center !important;
    will-change: transform, opacity;
}

.homepage-proof-strip .proof-metric-counter.is-counter-running {
    animation: psfmMetricCounterSettle 900ms ease both;
}

.homepage-proof-strip .proof-metric-counter.is-counter-complete {
    transform: translateY(0) scale(1) !important;
    opacity: 1 !important;
}

.homepage-proof-strip .proof-metric-card span {
    width: 100% !important;
    margin: 0 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
}

html[dir="rtl"] .homepage-proof-strip .proof-metric-card {
    align-items: flex-end !important;
    text-align: right !important;
}

html[dir="rtl"] .homepage-proof-strip .proof-metric-counter {
    transform-origin: right center !important;
}

@keyframes psfmMetricCounterSettle {
    0% {
        opacity: 0.66;
        transform: translateY(5px) scale(0.96);
    }

    55% {
        opacity: 1;
        transform: translateY(-1px) scale(1.025);
    }

    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .homepage-proof-strip .proof-metric-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 767.98px) {
    .homepage-proof-strip {
        padding-block: 30px !important;
    }

    .homepage-proof-strip .proof-metric-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
        max-width: 100% !important;
    }

    .homepage-proof-strip .proof-metric-card {
        min-height: 104px !important;
        padding: 14px !important;
        gap: 8px !important;
    }

    .homepage-proof-strip .proof-metric-counter {
        font-size: clamp(1.32rem, 6vw, 1.5rem) !important;
        line-height: 1 !important;
    }

    .homepage-proof-strip .proof-metric-card span {
        font-size: 0.76rem !important;
        line-height: 1.24 !important;
    }
}

@media (max-width: 340px) {
    .homepage-proof-strip .proof-metric-grid {
        gap: 8px !important;
    }

    .homepage-proof-strip .proof-metric-card {
        min-height: 96px !important;
        padding: 12px !important;
    }

    .homepage-proof-strip .proof-metric-counter {
        font-size: 1.28rem !important;
    }

    .homepage-proof-strip .proof-metric-card span {
        font-size: 0.7rem !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .homepage-proof-strip .proof-metric-counter {
        animation: none !important;
        transition: none !important;
        transform: none !important;
        will-change: auto !important;
    }
}

/* Homepage premium corporate polish layer. */
.homepage-hero,
.homepage-proof-strip,
.homepage-shell {
    --psfm-polish-radius: 8px;
    --psfm-polish-border: rgba(15, 23, 42, 0.1);
    --psfm-polish-shadow: 0 18px 44px rgba(15, 23, 42, 0.1);
}

.homepage-hero {
    padding-block: clamp(64px, 7vw, 104px) clamp(52px, 6vw, 82px) !important;
}

.homepage-hero .hero-layout {
    align-items: center !important;
    gap: clamp(34px, 6vw, 78px) !important;
}

.homepage-hero .hero-visual-card,
.homepage-seo-authority,
.homepage-seo-authority .seo-authority-card,
.homepage-proof-strip .proof-signal-card,
.homepage-proof-strip .proof-metric-card,
.jeddah-authority-card,
.procurement-path-panel,
.procurement-step,
.service-category-card,
.service-cluster-panel,
.service-cluster-card,
.pillar-card,
.trust-card,
.industry-card,
.process-step,
.client-trust-panel,
.review-highlights-panel,
.review-highlight-card,
.client-trust-faq-card,
.project-highlight-card,
.homepage-insight-card,
.homepage-faq-card,
.cta-banner,
.mid-cta-card {
    border-radius: var(--psfm-polish-radius) !important;
}

.homepage-seo-authority-section {
    padding-block: clamp(52px, 6vw, 78px) !important;
    background:
        linear-gradient(135deg, rgba(216, 22, 31, 0.06), rgba(255, 255, 255, 0) 38%),
        #f6f8fb !important;
}

.homepage-seo-authority {
    margin: 0 !important;
    padding: clamp(24px, 4vw, 40px) !important;
    background: #ffffff !important;
    border: 1px solid var(--psfm-polish-border) !important;
    box-shadow: var(--psfm-polish-shadow) !important;
}

.homepage-seo-authority .seo-authority-head {
    margin-bottom: clamp(20px, 3vw, 30px) !important;
}

.homepage-seo-authority .seo-authority-grid {
    gap: 14px !important;
}

.homepage-seo-authority .seo-authority-card {
    padding: 18px !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    box-shadow: none !important;
}

.homepage-shell {
    padding-block: clamp(62px, 7vw, 92px) !important;
}

.homepage-proof-strip {
    padding-block: clamp(42px, 5vw, 70px) !important;
}

.homepage-section-intro {
    margin-bottom: clamp(24px, 3.2vw, 40px) !important;
}

.homepage-section-intro .site-title,
.homepage-section-intro h2,
.seo-authority-head h2 {
    letter-spacing: 0 !important;
}

.theme-btn,
.theme-btn-white,
.homepage-text-link,
.procurement-text-link {
    letter-spacing: 0 !important;
}

.client-trust-section .client-trust-arabic-heading {
    display: none !important;
}

.client-trust-section .client-trust-intro-grid {
    display: block !important;
    max-width: 820px !important;
    margin-inline: auto !important;
}

.client-trust-section .client-trust-grid {
    gap: clamp(18px, 3vw, 28px) !important;
}

.project-highlights-section .project-highlights-head {
    align-items: end !important;
    gap: 20px !important;
}

html[dir="rtl"] .project-highlights-section .homepage-section-intro.text-start {
    text-align: right !important;
}

@media (max-width: 575.98px) {
    .homepage-hero {
        padding-block: 40px 34px !important;
    }

    .homepage-hero .hero-layout {
        gap: 22px !important;
    }

    .homepage-hero .hero-copy h1.hero-main-title,
    html[dir="rtl"] .homepage-hero .hero-copy h1.hero-main-title {
        font-size: clamp(1.55rem, 7vw, 1.82rem) !important;
        line-height: 1.12 !important;
        margin-block: 14px 12px !important;
        overflow-wrap: normal !important;
    }

    .homepage-hero .hero-copy h1.hero-main-title span,
    html[dir="rtl"] .homepage-hero .hero-copy h1.hero-main-title span {
        display: inline !important;
        overflow-wrap: normal !important;
    }

    .homepage-hero .hero-copy p,
    html[dir="rtl"] .homepage-hero .hero-copy p {
        font-size: 0.86rem !important;
        line-height: 1.55 !important;
    }

    .homepage-hero .hero-kicker,
    html[dir="rtl"] .homepage-hero .hero-kicker {
        min-height: 34px !important;
        border-radius: 999px !important;
    }

    .homepage-hero .hero-actions {
        gap: 10px !important;
    }

    .homepage-hero .hero-actions .theme-btn,
    .homepage-hero .hero-actions .theme-btn-white,
    .cta-banner .hero-actions .theme-btn,
    .cta-banner .hero-actions .theme-btn-white {
        min-height: 48px !important;
        padding: 11px 15px 11px 18px !important;
        font-size: 0.78rem !important;
        border-radius: 999px !important;
    }

    html[dir="rtl"] .homepage-hero .hero-actions .theme-btn,
    html[dir="rtl"] .homepage-hero .hero-actions .theme-btn-white,
    html[dir="rtl"] .cta-banner .hero-actions .theme-btn,
    html[dir="rtl"] .cta-banner .hero-actions .theme-btn-white {
        padding: 11px 18px 11px 15px !important;
    }

    .homepage-hero .hero-market-note {
        padding: 12px 14px !important;
        border-radius: var(--psfm-polish-radius) !important;
    }

    .homepage-hero .hero-visual-card {
        min-height: 236px !important;
        aspect-ratio: 1.08 / 1 !important;
    }

    .homepage-hero .hero-visual-overlay {
        inset: auto 12px 12px 12px !important;
        padding: 12px !important;
        border-radius: var(--psfm-polish-radius) !important;
    }

    .homepage-hero .hero-visual-overlay strong {
        font-size: 0.74rem !important;
        line-height: 1.25 !important;
    }

    .homepage-hero .hero-visual-stats {
        gap: 8px !important;
        margin-top: 10px !important;
    }

    .homepage-hero .hero-visual-stats span {
        min-height: 34px !important;
        padding: 8px 10px !important;
        border-radius: var(--psfm-polish-radius) !important;
        font-size: 0.68rem !important;
    }

    .homepage-shell {
        padding-block: 42px !important;
    }

    .homepage-proof-strip {
        padding-block: 34px !important;
    }

    .homepage-section-intro {
        margin-bottom: 22px !important;
    }

    .homepage-section-intro .site-title,
    .homepage-section-intro h2,
    .seo-authority-head h2 {
        font-size: clamp(1.42rem, 7vw, 1.86rem) !important;
        line-height: 1.16 !important;
    }

    .homepage-section-intro p,
    .seo-authority-head p {
        font-size: 0.9rem !important;
        line-height: 1.62 !important;
    }

    .homepage-seo-authority-section {
        padding-block: 34px !important;
    }

    .homepage-seo-authority {
        padding: 18px !important;
    }

    .homepage-seo-authority .seo-authority-head {
        margin-bottom: 14px !important;
    }

    .homepage-seo-authority .seo-authority-grid,
    .proof-signal-grid,
    .proof-metric-grid,
    .jeddah-authority-grid,
    .procurement-path-grid,
    .service-category-grid,
    .service-cluster-grid,
    .trust-grid,
    .industries-grid,
    .process-grid,
    .homepage-faq-grid,
    .homepage-insight-grid,
    .client-trust-faq-grid {
        gap: 10px !important;
    }

    .homepage-seo-authority .seo-authority-card,
    .homepage-proof-strip .proof-signal-card,
    .homepage-proof-strip .proof-metric-card,
    .jeddah-authority-card,
    .procurement-step,
    .service-category-card,
    .service-cluster-card,
    .pillar-card,
    .trust-card,
    .industry-card,
    .process-step,
    .client-trust-panel,
    .review-highlights-panel,
    .review-highlight-card,
    .client-trust-faq-card,
    .project-highlight-card,
    .homepage-insight-card,
    .homepage-faq-card {
        padding: 14px !important;
    }

    .homepage-seo-authority .seo-authority-card p,
    .service-cluster-card p,
    .pillar-card p,
    .trust-card p,
    .industry-card p,
    .process-step p,
    .client-trust-faq-card p,
    .homepage-faq-card p,
    .homepage-insight-card p {
        display: -webkit-box !important;
        -webkit-line-clamp: 3 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
    }

    .homepage-seo-authority .seo-authority-card span,
    .client-google-notice,
    .client-trust-seo-copy {
        font-size: 0.78rem !important;
        line-height: 1.5 !important;
    }

    .proof-metric-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .proof-metric-card strong {
        font-size: 1.5rem !important;
    }

    .logo-showcase,
    .jeddah-brand-authority,
    .procurement-path-panel,
    .service-cluster-panel,
    .mid-cta-card,
    .client-trust-cta,
    .cta-banner {
        padding: 18px !important;
    }

    .client-trust-section .client-trust-grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    .client-trust-panel,
    .review-highlights-panel {
        display: grid !important;
        gap: 12px !important;
    }

    .client-trust-rating-card,
    .review-highlights-head,
    .review-confidence-fill,
    .client-trust-cta {
        padding: 14px !important;
        border-radius: var(--psfm-polish-radius) !important;
    }

    .client-trust-rating-card {
        display: grid !important;
        grid-template-columns: 42px minmax(0, 1fr) !important;
        align-items: center !important;
        gap: 12px !important;
    }

    .client-rating-number {
        width: 42px !important;
        height: 42px !important;
        min-width: 42px !important;
        font-size: 1rem !important;
    }

    .client-trust-helper,
    .client-trust-disclaimer,
    .client-google-notice,
    .client-trust-seo-copy,
    .review-confidence-copy p {
        display: -webkit-box !important;
        -webkit-line-clamp: 3 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
        margin-bottom: 0 !important;
    }

    .client-google-actions,
    .review-confidence-actions,
    .client-trust-cta-actions {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }

    .client-google-actions a,
    .review-confidence-actions a,
    .client-trust-cta-actions a {
        min-height: 42px !important;
        padding: 10px 12px !important;
        font-size: 0.76rem !important;
        border-radius: 999px !important;
    }

    .client-rating-breakdown,
    .client-trust-metrics,
    .client-trust-points,
    .review-confidence-grid,
    .client-trust-contact,
    .client-trust-link-cloud {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
    }

    .client-rating-row,
    .client-trust-metric,
    .client-trust-points span,
    .review-confidence-grid span,
    .client-trust-contact span,
    .client-trust-link-cloud a {
        width: auto !important;
        min-height: 0 !important;
        padding: 8px 10px !important;
        border-radius: 999px !important;
        font-size: 0.7rem !important;
        line-height: 1.25 !important;
    }

    .client-rating-label span,
    .client-trust-contact span {
        font-size: inherit !important;
        line-height: inherit !important;
    }

    .review-highlights-head {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    .review-highlight-card {
        min-height: 0 !important;
    }

    .review-highlight-card .review-card-top,
    .review-tag-row {
        gap: 8px !important;
    }

    .review-quote,
    .review-summary {
        display: -webkit-box !important;
        -webkit-line-clamp: 3 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
    }

    .client-trust-cta {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    .client-trust-cta h2 {
        font-size: clamp(1.22rem, 6.2vw, 1.6rem) !important;
        line-height: 1.18 !important;
    }

    .client-trust-cta p {
        display: -webkit-box !important;
        -webkit-line-clamp: 3 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
    }

    .client-trust-section .client-trust-bilingual-cta {
        padding: 14px !important;
        border-radius: var(--psfm-polish-radius) !important;
    }

    .client-trust-section .client-trust-bilingual-cta p:not(:first-child) {
        margin-top: 10px !important;
    }

    .project-highlights-section .project-highlights-head {
        display: grid !important;
        grid-template-columns: 1fr !important;
        align-items: start !important;
    }

    .project-highlight-card {
        min-height: 310px !important;
    }
}

@media (max-width: 575.98px) {
    .main-navigation .header-brand,
    html[dir="rtl"] .main-navigation .header-brand {
        max-width: calc(100% - 172px) !important;
    }

    .main-navigation .header-brand img,
    .main-navigation .navbar-brand img,
    html[dir="rtl"] .main-navigation .header-brand img,
    html[dir="rtl"] .main-navigation .navbar-brand img {
        max-width: min(142px, calc(100vw - 190px)) !important;
    }

    .main-navigation .mobile-menu-right,
    html[dir="rtl"] .main-navigation .mobile-menu-right {
        flex: 0 0 154px !important;
        width: 154px !important;
        max-width: 154px !important;
        min-width: 154px !important;
        gap: 6px !important;
    }

    .main-navigation .mobile-language-switcher,
    html[dir="rtl"] .main-navigation .mobile-language-switcher {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex: 0 0 62px !important;
        width: 62px !important;
        height: 36px !important;
        padding: 2px !important;
        border: 1px solid rgba(17, 24, 39, 0.16) !important;
        border-radius: 999px !important;
        background: #ffffff !important;
        box-shadow: 0 8px 18px rgba(15, 23, 42, 0.08) !important;
    }

    .main-navigation .mobile-language-switcher a,
    html[dir="rtl"] .main-navigation .mobile-language-switcher a {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 28px !important;
        height: 28px !important;
        border-radius: 999px !important;
        color: #152033 !important;
        font-size: 0.66rem !important;
        font-weight: 800 !important;
        line-height: 1 !important;
    }

    .main-navigation .mobile-language-switcher a.is-active,
    html[dir="rtl"] .main-navigation .mobile-language-switcher a.is-active {
        background: #d8161f !important;
        color: #ffffff !important;
    }

    .main-navigation .mobile-search-btn,
    html[dir="rtl"] .main-navigation .mobile-search-btn {
        display: inline-flex !important;
        visibility: visible !important;
        pointer-events: auto !important;
        align-items: center !important;
        justify-content: center !important;
        width: 38px !important;
        height: 38px !important;
        min-width: 38px !important;
        flex: 0 0 38px !important;
        border-radius: 999px !important;
        background: #fff5f5 !important;
        color: #d8161f !important;
        border: 1px solid rgba(216, 22, 31, 0.22) !important;
        box-shadow: 0 8px 18px rgba(216, 22, 31, 0.12) !important;
    }

    .main-navigation .navbar-toggler,
    html[dir="rtl"] .main-navigation .navbar-toggler {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 38px !important;
        height: 38px !important;
        min-width: 38px !important;
        flex: 0 0 38px !important;
        border-radius: 999px !important;
        background: #152033 !important;
        color: #ffffff !important;
        border: 0 !important;
        box-shadow: 0 10px 20px rgba(15, 23, 42, 0.18) !important;
    }

    .main-navigation .navbar-toggler i,
    html[dir="rtl"] .main-navigation .navbar-toggler i {
        color: #ffffff !important;
        font-size: 0.95rem !important;
        line-height: 1 !important;
    }
}

@media (max-width: 340px) {
    .main-navigation .header-brand,
    html[dir="rtl"] .main-navigation .header-brand {
        max-width: calc(100% - 156px) !important;
    }

    .main-navigation .header-brand img,
    .main-navigation .navbar-brand img,
    html[dir="rtl"] .main-navigation .header-brand img,
    html[dir="rtl"] .main-navigation .navbar-brand img {
        max-width: min(124px, calc(100vw - 176px)) !important;
    }

    .main-navigation .mobile-menu-right,
    html[dir="rtl"] .main-navigation .mobile-menu-right {
        flex-basis: 146px !important;
        width: 146px !important;
        min-width: 146px !important;
        max-width: 146px !important;
        gap: 5px !important;
    }

    .main-navigation .mobile-language-switcher,
    html[dir="rtl"] .main-navigation .mobile-language-switcher {
        flex-basis: 58px !important;
        width: 58px !important;
    }

    .main-navigation .mobile-search-btn,
    .main-navigation .navbar-toggler,
    html[dir="rtl"] .main-navigation .mobile-search-btn,
    html[dir="rtl"] .main-navigation .navbar-toggler {
        width: 36px !important;
        height: 36px !important;
        min-width: 36px !important;
        flex-basis: 36px !important;
    }
}
