/* PH Clean 1.4.10: deterministic Elementor layout and art-direction repair. */

body.phcem-native-document:not(.elementor-editor-active) {
    --phcem-shell: min(1180px, calc(100% - 48px));
    --phcem-navy: #12354b;
    --phcem-ink: #17384c;
    --phcem-copy: #405e70;
    --phcem-muted: #627887;
    --phcem-teal: #006f86;
    --phcem-magenta: #a90054;
    --phcem-canvas: #f2f7f9;
    --phcem-paper: #ffffff;
    --phcem-line: #d3e0e5;
}

/* Content must never disappear while optional motion scripts initialize. */
body.phcem-native-document:not(.elementor-editor-active) .phcem-reveal-target,
body.phcem-native-document:not(.elementor-editor-active).phcem-motion-ready .phcem-reveal-target {
    opacity: 1 !important;
    transform: none !important;
    transition: box-shadow .2s ease, border-color .2s ease, background-color .2s ease !important;
}

body.phcem-native-document:not(.elementor-editor-active) main,
body.phcem-native-document:not(.elementor-editor-active) main > .elementor {
    width: 100% !important;
    max-width: none !important;
}

/* A single modern type system. Old serif overrides made the site feel fragmented. */
body.phcem-native-document:not(.elementor-editor-active) :where(
    h1, h2, h3, h4, h5, h6,
    .elementor-heading-title,
    .elementor-button,
    .elementor-item
) {
    font-family: Assistant, "Noto Sans Hebrew", "Segoe UI", Arial, sans-serif !important;
    letter-spacing: 0 !important;
}

html body.phcem-native-document:not(.elementor-editor-active) .elementor :is(
    h1.elementor-heading-title,
    h2.elementor-heading-title,
    h3.elementor-heading-title,
    h4.elementor-heading-title,
    .elementor-button,
    .elementor-item
) {
    font-family: Assistant, "Noto Sans Hebrew", "Segoe UI", Arial, sans-serif !important;
    letter-spacing: 0 !important;
}

body.phcem-native-document:not(.elementor-editor-active) .section-kicker.elementor-widget,
body.phcem-native-document:not(.elementor-editor-active) .contact-stage-kicker.elementor-widget {
    display: none !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .institutional-hero-copy h1 :is(.phcem-hero-line, .phcem-hero-accent) {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    column-gap: .2em !important;
    row-gap: 0 !important;
}

/* One stable corporate header on every route. */
body.phcem-native-document:not(.elementor-editor-active) .elementor-location-header {
    position: fixed !important;
    z-index: 1000 !important;
    inset: 0 0 auto !important;
    width: 100% !important;
}

body.admin-bar.phcem-native-document:not(.elementor-editor-active) .elementor-location-header {
    top: 32px !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-header.phcem-elementor-header {
    position: relative !important;
    inset: auto !important;
    top: auto !important;
    min-height: 80px !important;
    color: var(--phcem-ink) !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(18, 53, 75, .12) !important;
    background: rgba(250, 253, 254, .96) !important;
    box-shadow: 0 10px 34px rgba(23, 56, 76, .09) !important;
    backdrop-filter: blur(16px) saturate(135%);
}

body.phcem-native-document:not(.elementor-editor-active) .phcem-template-nav .elementor-menu-toggle {
    width: 48px !important;
    height: 48px !important;
    padding: 12px !important;
    color: var(--phcem-ink) !important;
    border: 1px solid #9bb9c8 !important;
    border-radius: 4px !important;
    background: #fff !important;
}

body.phcem-native-document:not(.elementor-editor-active) .phcem-template-nav .elementor-menu-toggle svg {
    fill: currentColor !important;
}

body.phcem-native-document:not(.elementor-editor-active) .phcem-template-topbar {
    display: none !important;
}

body.phcem-native-document:not(.elementor-editor-active) .phcem-template-header-inner.e-con {
    display: grid !important;
    grid-template-columns: minmax(190px, .9fr) minmax(560px, 2.8fr) minmax(170px, .8fr) !important;
    gap: clamp(18px, 2.6vw, 42px) !important;
    align-items: center !important;
    width: min(1280px, calc(100% - 48px)) !important;
    min-height: 80px !important;
    margin-inline: auto !important;
    padding: 10px 0 !important;
}

body.phcem-native-document:not(.elementor-editor-active) .phcem-template-logo img {
    width: auto !important;
    height: 56px !important;
    max-width: 176px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    object-fit: contain !important;
}

body.phcem-native-document:not(.elementor-editor-active) .phcem-template-brand,
body.phcem-native-document:not(.elementor-editor-active) .phcem-template-brand-copy {
    min-width: 0 !important;
    background: transparent !important;
}

body.phcem-native-document:not(.elementor-editor-active) .phcem-template-brand-copy :where(.elementor-heading-title, p) {
    color: var(--phcem-ink) !important;
}

body.phcem-native-document:not(.elementor-editor-active) .phcem-template-nav .elementor-nav-menu--main .elementor-item {
    min-height: 44px !important;
    padding: 10px 10px !important;
    color: var(--phcem-ink) !important;
    font-size: .92rem !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
}

body.phcem-native-document:not(.elementor-editor-active) .phcem-template-nav .elementor-nav-menu--main .elementor-item:hover,
body.phcem-native-document:not(.elementor-editor-active) .phcem-template-nav .elementor-nav-menu--main .elementor-item:focus-visible,
body.phcem-native-document:not(.elementor-editor-active) .phcem-template-nav .elementor-nav-menu--main .elementor-item.elementor-item-active {
    color: var(--phcem-teal) !important;
}

body.phcem-native-document:not(.elementor-editor-active) .phcem-template-nav .elementor-nav-menu--main .elementor-item::after {
    height: 2px !important;
    background: var(--phcem-magenta) !important;
}

body.phcem-native-document:not(.elementor-editor-active) .phcem-template-header-cta .elementor-button {
    min-width: 160px !important;
    min-height: 46px !important;
    color: #fff !important;
    border-color: var(--phcem-teal) !important;
    background: var(--phcem-teal) !important;
    box-shadow: 0 10px 24px rgba(0, 111, 134, .18) !important;
}

body.phcem-native-document:not(.elementor-editor-active) .phcem-template-nav .sub-menu {
    display: block !important;
    min-width: 238px !important;
    padding: 8px !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    border: 1px solid var(--phcem-line) !important;
    border-radius: 5px !important;
    background: #fff !important;
    box-shadow: 0 20px 48px rgba(23, 56, 76, .16) !important;
    transform: translateY(8px) !important;
    transition: opacity .16s ease, transform .16s ease, visibility .16s ease !important;
}

body.phcem-native-document:not(.elementor-editor-active) .phcem-template-nav li:hover > .sub-menu,
body.phcem-native-document:not(.elementor-editor-active) .phcem-template-nav li:focus-within > .sub-menu {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
}

/* Home hero: a clear reading plane over the supplied video. */
body.home.phcem-native-document:not(.elementor-editor-active) main {
    padding-top: 0 !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .institutional-hero {
    min-height: 700px !important;
    height: min(82vh, 780px) !important;
    margin: 0 0 76px !important;
    overflow: visible !important;
    background: #dce9ee !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .institutional-hero-media {
    z-index: -2 !important;
    overflow: hidden !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .institutional-hero-media::before {
    position: absolute !important;
    z-index: 2 !important;
    inset: 0 !important;
    display: block !important;
    background: linear-gradient(270deg, rgba(248, 252, 253, .99) 0%, rgba(245, 250, 252, .93) 31%, rgba(235, 245, 249, .68) 55%, rgba(15, 52, 70, .16) 100%) !important;
    content: "" !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .institutional-hero-media::after {
    position: absolute !important;
    z-index: 3 !important;
    inset: 0 !important;
    display: block !important;
    background: linear-gradient(0deg, rgba(239, 247, 249, .4), transparent 34%) !important;
    content: "" !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .institutional-hero-video video {
    object-position: center 44% !important;
    filter: blur(1px) saturate(.82) contrast(.95) brightness(1.06) !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .institutional-hero-inner.e-con {
    z-index: 4 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: min(1280px, calc(100% - 56px)) !important;
    height: 100% !important;
    min-height: 0 !important;
    margin-inline: auto !important;
    padding: 138px 0 150px !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .institutional-hero-copy.e-con {
    width: min(760px, 62%) !important;
    max-width: 760px !important;
    min-height: 0 !important;
    padding: 0 !important;
    gap: 20px !important;
    align-items: flex-start !important;
    text-align: right !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .institutional-hero-copy h1 {
    max-width: 760px !important;
    margin: 0 !important;
    color: var(--phcem-navy) !important;
    font-size: clamp(3rem, 4.1vw, 4.15rem) !important;
    font-weight: 800 !important;
    line-height: 1.03 !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .institutional-hero-copy h1 .phcem-hero-accent {
    width: auto !important;
    max-width: 100% !important;
    color: var(--phcem-teal) !important;
    white-space: normal !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .institutional-hero-copy .elementor-widget-text-editor,
body.home.phcem-native-document:not(.elementor-editor-active) .institutional-hero-copy .elementor-widget-text-editor p {
    max-width: 610px !important;
    margin: 0 !important;
    color: #36566a !important;
    font-size: 1.16rem !important;
    line-height: 1.72 !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .institutional-proof-band.e-con {
    inset: auto 0 -60px !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .institutional-proof-grid.e-con {
    width: min(1210px, calc(100% - 56px)) !important;
}

/* Home services use real imagery and a predictable card flow. */
body.home.phcem-native-document:not(.elementor-editor-active) .institutional-services {
    padding: 86px 0 94px !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) :is(.institutional-section-intro, .section-head).e-con {
    gap: 12px !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) :is(.institutional-section-intro, .section-head) h2::after,
body.home.phcem-native-document:not(.elementor-editor-active) .institutional-profile-copy h2::after {
    display: block !important;
    width: 56px !important;
    height: 3px !important;
    margin: 18px 0 0 !important;
    border-radius: 3px !important;
    background: linear-gradient(90deg, var(--phcem-teal) 0 70%, var(--phcem-magenta) 70%) !important;
    content: "" !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .institutional-section-intro.e-con,
body.home.phcem-native-document:not(.elementor-editor-active) .service-register.e-con,
body.home.phcem-native-document:not(.elementor-editor-active) .institutional-profile-grid.e-con,
body.home.phcem-native-document:not(.elementor-editor-active) .client-section > .section-head.e-con,
body.home.phcem-native-document:not(.elementor-editor-active) .client-cloud.e-con,
body.home.phcem-native-document:not(.elementor-editor-active) .contact-grid.e-con {
    width: var(--phcem-shell) !important;
    margin-inline: auto !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .service-register.e-con {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 18px !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .service-register-item.e-con {
    min-height: 430px !important;
    height: auto !important;
    border: 1px solid var(--phcem-line) !important;
    border-radius: 6px !important;
    background: #fff !important;
    box-shadow: 0 12px 32px rgba(23, 56, 76, .08) !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .service-register-item > a.e-con {
    display: grid !important;
    grid-template: 176px 1fr 42px / minmax(0, 1fr) !important;
    width: 100% !important;
    min-height: 430px !important;
    height: 100% !important;
    padding: 0 !important;
    gap: 0 !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .service-register-number {
    display: none !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .service-register-item > a > .e-con:nth-child(2),
body.home.phcem-native-document:not(.elementor-editor-active) .service-register-item > a > .e-con:nth-child(2) .elementor-widget,
body.home.phcem-native-document:not(.elementor-editor-active) .service-register-item > a > .e-con:nth-child(2) .elementor-widget-container,
body.home.phcem-native-document:not(.elementor-editor-active) .service-register-item > a > .e-con:nth-child(2) img {
    grid-row: 1 !important;
    width: 100% !important;
    height: 176px !important;
    min-height: 176px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    object-fit: cover !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .service-register-copy.e-con {
    grid-row: 2 !important;
    width: 100% !important;
    min-height: 0 !important;
    padding: 24px 22px 14px !important;
    gap: 9px !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .elementor-widget.service-register-open {
    grid-row: 3 !important;
    width: auto !important;
    min-height: 42px !important;
    margin: 0 22px 16px !important;
    align-items: center !important;
}

/* Correct the named grid areas inherited from the pre-Elementor theme. */
body.home.phcem-native-document:not(.elementor-editor-active) .institutional-profile {
    min-height: 0 !important;
    padding: 90px 0 !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .institutional-profile-grid.e-con {
    direction: ltr !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr) !important;
    grid-template-areas: "media copy" !important;
    gap: clamp(40px, 5vw, 76px) !important;
    align-items: center !important;
    min-height: 0 !important;
    height: auto !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .institutional-profile-grid.e-con > * {
    min-width: 0 !important;
    grid-row: auto !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .institutional-profile-copy.e-con {
    direction: rtl !important;
    grid-area: copy !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    height: auto !important;
    align-self: center !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .institutional-profile-photo.e-con {
    grid-area: media !important;
    width: 100% !important;
    min-height: 460px !important;
    height: 460px !important;
    overflow: hidden !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .institutional-profile-photo > .elementor-widget-image,
body.home.phcem-native-document:not(.elementor-editor-active) .institutional-profile-photo > .elementor-widget-image > .elementor-widget-container,
body.home.phcem-native-document:not(.elementor-editor-active) .institutional-profile-photo img {
    width: 100% !important;
    height: 460px !important;
    min-height: 460px !important;
    object-fit: cover !important;
}

/* Home closing CTA: one purposeful band instead of inherited overlapping grids. */
body.home.phcem-native-document:not(.elementor-editor-active) .contact-section {
    min-height: 0 !important;
    padding: 72px 0 !important;
    background: linear-gradient(120deg, #12354b 0%, #0b2c3c 100%) !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .contact-grid.e-con {
    direction: rtl !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1.35fr) minmax(330px, .65fr) !important;
    gap: 64px !important;
    align-items: center !important;
    min-height: 0 !important;
    height: auto !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .contact-copy.e-con {
    display: flex !important;
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 0 !important;
    gap: 18px !important;
    flex-direction: column !important;
    align-items: flex-start !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .contact-copy h2 {
    max-width: 720px !important;
    margin: 0 !important;
    color: #fff !important;
    font-size: clamp(2.35rem, 3.35vw, 3.4rem) !important;
    line-height: 1.08 !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .contact-copy p {
    max-width: 680px !important;
    margin: 0 !important;
    color: #d8e8ed !important;
    font-size: 1.05rem !important;
    line-height: 1.7 !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .phcem-home-contact-cta.elementor-widget {
    width: auto !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 4px 0 0 !important;
    padding: 0 !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .contact-proof.e-con {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 8px 28px !important;
    gap: 0 !important;
    border: 1px solid rgba(255, 255, 255, .18) !important;
    border-radius: 6px !important;
    background: rgba(255, 255, 255, .07) !important;
    box-shadow: none !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .contact-proof > .elementor-widget {
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 17px 0 !important;
    border-block-end: 1px solid rgba(255, 255, 255, .14) !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .contact-proof > .elementor-widget:last-child {
    border-block-end: 0 !important;
}

body.home.phcem-native-document:not(.elementor-editor-active) .contact-proof :where(span, p) {
    position: static !important;
    display: block !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    color: #fff !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    line-height: 1.45 !important;
}

/* Inner pages: compact hero, stable two-column body and readable text. */
body:not(.home).phcem-native-document:not(.elementor-editor-active) main,
body:not(.home).phcem-native-document:not(.elementor-editor-active) .site-main {
    padding-top: 80px !important;
}

body:not(.home).phcem-native-document:not(.elementor-editor-active) .page-hero.premium-page-hero,
body:not(.home).phcem-native-document:not(.elementor-editor-active) .page-hero.phcem-dynamic-hero,
body:not(.home).phcem-native-document:not(.elementor-editor-active) .phcem-archive-hero.page-hero {
    min-height: 204px !important;
    height: auto !important;
    padding: 42px 0 !important;
    background: linear-gradient(118deg, #12354b 0%, #0c2d3d 72%) !important;
}

body:not(.home).phcem-native-document:not(.elementor-editor-active) .page-proof-line.e-con {
    display: none !important;
}

body:not(.home).phcem-native-document:not(.elementor-editor-active) .page-hero-inner.e-con,
body:not(.home).phcem-native-document:not(.elementor-editor-active) .page-hero .container.e-con {
    display: grid !important;
    grid-template-columns: minmax(0, 1.18fr) minmax(320px, .82fr) !important;
    gap: 40px !important;
    align-items: center !important;
    width: var(--phcem-shell) !important;
    max-width: none !important;
    margin-inline: auto !important;
}

body:not(.home).phcem-native-document:not(.elementor-editor-active) .page-hero h1 {
    max-width: 760px !important;
    margin: 0 !important;
    color: #fff !important;
    font-size: clamp(2.25rem, 3.15vw, 3rem) !important;
    line-height: 1.08 !important;
}

body:not(.home).phcem-native-document:not(.elementor-editor-active) .page-hero p {
    margin: 0 !important;
    color: #d9e8ed !important;
    font-size: 1.03rem !important;
    line-height: 1.65 !important;
}

body.phcem-native-document:not(.elementor-editor-active) :is(.page-content-section, .single-section, .archive-section) {
    min-height: 0 !important;
    height: auto !important;
    padding: 68px 0 !important;
}

body.phcem-native-document:not(.elementor-editor-active) :is(.premium-content-shell, .content-shell, .single-grid, .archive-layout) {
    width: var(--phcem-shell) !important;
    max-width: none !important;
    margin-inline: auto !important;
}

body:not(.home).phcem-native-document:not(.elementor-editor-active) .premium-content-shell.e-con,
body:not(.home).phcem-native-document:not(.elementor-editor-active) .content-shell.e-con {
    direction: rtl !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 340px !important;
    gap: 38px !important;
    align-items: start !important;
}

body:not(.home).phcem-native-document:not(.elementor-editor-active) .entry-content.premium-entry.e-con {
    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    height: auto !important;
    padding: clamp(32px, 3.4vw, 48px) !important;
    gap: 16px !important;
    border-radius: 6px !important;
}

body:not(.home).phcem-native-document:not(.elementor-editor-active) .entry-content.premium-entry h2 {
    margin: 1.55em 0 .55em !important;
    font-size: clamp(1.75rem, 2.2vw, 2.35rem) !important;
    line-height: 1.18 !important;
}

body:not(.home).phcem-native-document:not(.elementor-editor-active) .entry-content.premium-entry h3 {
    margin: 1.35em 0 .45em !important;
    font-size: clamp(1.35rem, 1.7vw, 1.75rem) !important;
}

body:not(.home).phcem-native-document:not(.elementor-editor-active) .entry-content.premium-entry :where(p, li) {
    color: var(--phcem-copy) !important;
    font-size: 1.02rem !important;
    line-height: 1.75 !important;
}

body:not(.home).phcem-native-document:not(.elementor-editor-active) .sticky-lead-panel.e-con {
    position: sticky !important;
    top: 104px !important;
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 28px !important;
    gap: 18px !important;
    border: 1px solid var(--phcem-line) !important;
    border-top: 4px solid var(--phcem-teal) !important;
    border-radius: 6px !important;
    background: #fff !important;
    box-shadow: 0 16px 40px rgba(23, 56, 76, .1) !important;
}

body:not(.home).phcem-native-document:not(.elementor-editor-active) .sticky-lead-panel h2 {
    font-size: 1.65rem !important;
    line-height: 1.2 !important;
}

body.phcem-native-document:not(.elementor-editor-active) .phcem-loop-grid,
body.phcem-native-document:not(.elementor-editor-active) .service-grid,
body.phcem-native-document:not(.elementor-editor-active) .article-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 20px !important;
}

body.phcem-native-document:not(.elementor-editor-active) :is(.phcem-loop-card, .service-card, .article-card) {
    min-height: 0 !important;
    height: auto !important;
}

/* Elementor archives: center the generated containers and size the actual loop grid. */
body.phcem-native-document:not(.elementor-editor-active) .phcem-archive-section.e-con {
    padding: 62px 0 72px !important;
}

body.phcem-native-document:not(.elementor-editor-active) .phcem-archive-section.e-con > .e-con {
    width: var(--phcem-shell) !important;
    max-width: none !important;
    min-height: 0 !important;
    height: auto !important;
    margin-right: auto !important;
    margin-left: auto !important;
    align-self: center !important;
}

body.phcem-native-document:not(.elementor-editor-active) .phcem-archive-section .section-head.e-con {
    align-items: flex-start !important;
    min-height: 0 !important;
    margin-bottom: 38px !important;
    padding-inline-start: 0 !important;
    border-inline-start: 0 !important;
}

html body.phcem-native-document:not(.elementor-editor-active) .phcem-archive-section .section-head h2.elementor-heading-title {
    max-width: 820px !important;
    margin: 0 !important;
    color: var(--phcem-ink) !important;
    font-size: clamp(2.15rem, 3vw, 2.85rem) !important;
    line-height: 1.12 !important;
}

html body.phcem-native-document:not(.elementor-editor-active) .phcem-archive-section .section-head h2.elementor-heading-title::before,
html body.phcem-native-document:not(.elementor-editor-active) .phcem-archive-section .section-head h2.elementor-heading-title::after,
html body:not(.home).phcem-native-document:not(.elementor-editor-active) .entry-content.premium-entry h2::before,
html body:not(.home).phcem-native-document:not(.elementor-editor-active) .entry-content.premium-entry h2::after {
    display: none !important;
    border: 0 !important;
    content: none !important;
}

html body:not(.home).phcem-native-document:not(.elementor-editor-active) .entry-content.premium-entry h2 {
    padding: 0 0 14px !important;
    border-bottom: 1px solid var(--phcem-line) !important;
}

body.phcem-native-document:not(.elementor-editor-active) .phcem-archive-section .phcem-loop-grid.elementor-widget {
    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    height: auto !important;
}

body.phcem-native-document:not(.elementor-editor-active) .phcem-archive-section .phcem-loop-grid > .elementor-widget-container,
body.phcem-native-document:not(.elementor-editor-active) .phcem-archive-section .phcem-loop-grid .elementor-loop-container {
    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    height: auto !important;
}

body.phcem-native-document:not(.elementor-editor-active) .phcem-archive-section .phcem-loop-grid .elementor-loop-container {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 20px !important;
}

body.phcem-native-document:not(.elementor-editor-active) .phcem-archive-section .phcem-loop-card.e-con {
    width: 100% !important;
    min-width: 0 !important;
}

/* Contact page without brittle Elementor data-id placement. */
body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .business-contact-page {
    min-height: 0 !important;
    height: auto !important;
    padding: 66px 0 76px !important;
}

body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .business-contact-inner.e-con {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: var(--phcem-shell) !important;
    min-height: 0 !important;
    height: auto !important;
    margin-inline: auto !important;
    gap: 38px !important;
}

body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .contact-page-lede.e-con {
    max-width: 880px !important;
    min-height: 0 !important;
    margin-inline: auto !important;
    gap: 14px !important;
    text-align: center !important;
}

body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .contact-page-lede h2 {
    margin: 0 !important;
    font-size: clamp(2.05rem, 3vw, 2.75rem) !important;
    line-height: 1.12 !important;
}

body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .contact-page-lede p {
    max-width: 760px !important;
    margin: 0 auto !important;
    font-size: 1.08rem !important;
    line-height: 1.7 !important;
}

body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .contact-page-grid.e-con {
    display: grid !important;
    grid-template-columns: minmax(0, 1.25fr) minmax(320px, .75fr) !important;
    gap: 24px !important;
    align-items: stretch !important;
    min-height: 0 !important;
    height: auto !important;
}

body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) :is(.contact-form-stage, .contact-response-stage).e-con {
    min-height: 0 !important;
    height: auto !important;
    padding: 34px !important;
    border-radius: 6px !important;
}

body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .contact-form-stage.e-con {
    border: 1px solid var(--phcem-line) !important;
    border-top: 5px solid var(--phcem-teal) !important;
    background: #fff !important;
}

body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .contact-response-stage.e-con {
    color: #fff !important;
    background: var(--phcem-navy) !important;
}

body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .contact-response-stage :where(h2, h3, strong) {
    color: #fff !important;
}

body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .contact-response-stage :where(p, li, a, span) {
    color: #d9e8ed !important;
}

body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .phcem-native-form-shell.e-con {
    min-height: 0 !important;
    height: auto !important;
    gap: 14px !important;
}

body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .contact-business-directory.e-con {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 30px !important;
    gap: 24px !important;
    border: 1px solid var(--phcem-line) !important;
    border-radius: 6px !important;
    background: #edf4f6 !important;
}

body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .contact-business-grid.e-con {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 0 !important;
    min-height: 0 !important;
    height: auto !important;
}

body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .contact-business-grid.e-con > .e-con {
    min-height: 0 !important;
    height: auto !important;
    padding: 24px !important;
    border-inline-start: 1px solid #c8d9df !important;
}

body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .contact-business-grid.e-con > .e-con:first-child {
    border-inline-start: 0 !important;
}

body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .contact-guidance.e-con {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 0 !important;
    gap: 26px !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .contact-guidance-heading.e-con {
    min-height: 0 !important;
    padding: 0 !important;
    gap: 8px !important;
}

body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .contact-guidance-heading > .elementor-widget-text-editor {
    display: none !important;
}

body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .contact-guidance-heading h2 {
    margin: 0 !important;
    font-size: clamp(1.9rem, 2.6vw, 2.45rem) !important;
    line-height: 1.16 !important;
}

body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .contact-guidance-heading h2::before,
body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .contact-guidance-heading h2::after {
    display: none !important;
    border: 0 !important;
    content: none !important;
}

body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .phcem-guidance-columns {
    display: grid !important;
    grid-template-columns: minmax(0, 1.25fr) minmax(0, .88fr) minmax(0, 1fr) !important;
    gap: 18px !important;
    min-height: 0 !important;
    height: auto !important;
}

body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .phcem-guidance-column {
    display: flex !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 24px !important;
    gap: 12px !important;
    flex-direction: column !important;
    border: 1px solid var(--phcem-line) !important;
    border-top: 4px solid var(--phcem-teal) !important;
    border-radius: 6px !important;
    background: #fff !important;
    box-shadow: 0 10px 28px rgba(23, 56, 76, .07) !important;
}

body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .contact-guidance.entry-content.premium-entry .phcem-guidance-column > .elementor-widget {
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .phcem-guidance-column:empty,
body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .phcem-guidance-columns:not(:has(.phcem-guidance-column > *)) {
    display: none !important;
}

body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .contact-guidance.entry-content.premium-entry .phcem-guidance-column h2,
body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .contact-guidance.entry-content.premium-entry .phcem-guidance-column h3 {
    margin: 0 !important;
    padding: 0 !important;
    color: var(--phcem-ink) !important;
    font-size: 1.32rem !important;
    line-height: 1.25 !important;
}

body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .phcem-guidance-column h2::before,
body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .phcem-guidance-column h2::after {
    display: none !important;
    content: none !important;
}

body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .contact-guidance.entry-content.premium-entry .phcem-guidance-column :where(p, li) {
    margin: 0 !important;
    color: var(--phcem-copy) !important;
    font-size: .94rem !important;
    line-height: 1.55 !important;
}

body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .contact-guidance.entry-content.premium-entry .phcem-guidance-column :where(ul, ol) {
    display: grid !important;
    gap: 9px !important;
    margin: 0 !important;
    padding-inline-start: 20px !important;
}

body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .contact-guidance.entry-content.premium-entry .phcem-guidance-column li::marker {
    color: var(--phcem-magenta) !important;
    font-weight: 800 !important;
}

/* Footer: compact, aligned and usable. */
body.phcem-native-document:not(.elementor-editor-active) .phcem-template-footer-cta {
    min-height: 0 !important;
    padding: 44px 0 !important;
    border-top: 4px solid var(--phcem-magenta) !important;
    background: #e3eef2 !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-footer-cta-inner.e-con {
    width: var(--phcem-shell) !important;
    min-height: 0 !important;
    margin-inline: auto !important;
    padding: 0 !important;
}

/* Header and footer already expose WhatsApp; the legacy floating widget covers legal links. */
body.phcem-native-document:not(.elementor-editor-active) .phcem-floating-whatsapp {
    display: none !important;
}

body.phcem-native-document:not(.elementor-editor-active) .phcem-template-footer-cta .formal-footer-cta-actions .elementor-widget-button {
    width: auto !important;
    min-height: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: none !important;
    box-shadow: none !important;
}

body.phcem-native-document:not(.elementor-editor-active) .phcem-template-footer-cta .formal-footer-cta-actions .elementor-button {
    min-height: 48px !important;
    padding: 12px 22px !important;
    border-radius: 4px !important;
    font-size: 17px !important;
    line-height: 1.4 !important;
    box-shadow: none !important;
}

body.phcem-native-document:not(.elementor-editor-active) .phcem-template-footer-cta .footer-direct-phone .elementor-button {
    border: 1px solid #6b8797 !important;
    color: var(--phcem-navy) !important;
    background: transparent !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-footer-main.e-con,
body.phcem-native-document:not(.elementor-editor-active) .formal-footer-bottom.e-con {
    width: var(--phcem-shell) !important;
    margin-inline: auto !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-footer-main.e-con {
    display: grid !important;
    grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr) minmax(0, .9fr) !important;
    grid-template-areas: "brand contact nav" "branches branches branches" !important;
    align-items: start !important;
    padding: 48px 0 28px !important;
    gap: 32px 48px !important;
    border: 0 !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-footer-main.e-con > .e-con {
    min-height: 0 !important;
    height: auto !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-footer-main.e-con > .e-con:first-child {
    padding-inline-start: 0 !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-footer-main.e-con > .e-con:last-child {
    padding-inline-end: 0 !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-footer-bottom.e-con {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    min-height: 68px !important;
    padding: 12px 0 !important;
    gap: 16px !important;
    border: 0 !important;
    border-top: 1px solid #385360 !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer.phcem-elementor-footer {
    padding: 0 !important;
    gap: 0 !important;
    background: #102d3d !important;
    border: 0 !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer :is(.formal-footer-main, .formal-footer-bottom)::before,
body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer :is(.formal-footer-main, .formal-footer-bottom)::after,
body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer.phcem-elementor-footer::after {
    content: none !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer :is(.elementor-heading-title, p, a, strong, span) {
    font-family: "Assistant", "Noto Sans Hebrew", "Segoe UI", Arial, sans-serif !important;
    letter-spacing: 0 !important;
    text-shadow: none !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer .elementor-heading-title {
    margin: 0 !important;
    color: #fff !important;
    font-size: 18px !important;
    line-height: 1.4 !important;
    font-weight: 700 !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer .elementor-widget-text-editor,
body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer .elementor-widget-text-editor p {
    margin: 0 !important;
    color: #c8d9e2 !important;
    font-size: 16px !important;
    line-height: 1.7 !important;
    font-weight: 400 !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer .elementor-widget-text-editor strong {
    display: inline-block !important;
    color: #fff !important;
    font-size: 16px !important;
    font-weight: 700 !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer .formal-footer-brand.e-con {
    grid-area: brand !important;
    display: grid !important;
    grid-template-columns: 64px minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 18px !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer .phcem-template-footer-logo,
body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer .phcem-template-footer-logo img,
body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer .phcem-template-footer-logo .elementor-widget-container {
    width: 64px !important;
    height: 64px !important;
    margin: 0 !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer .phcem-template-footer-brand-copy.e-con {
    width: 100% !important;
    padding: 0 !important;
    gap: 14px !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer .formal-footer-brand .elementor-heading-title {
    font-size: 24px !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer .phcem-template-contact.e-con {
    grid-area: contact !important;
    gap: 8px !important;
    align-items: flex-start !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer .phcem-template-contact > .elementor-widget-text-editor {
    margin-top: 12px !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer :is(.phcem-contact-link, .phcem-footer-legal-link) {
    width: auto !important;
    max-width: 100% !important;
    padding: 0 !important;
    border: 0 !important;
    background: none !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer :is(.phcem-contact-link, .phcem-footer-legal-link) .elementor-button {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 44px !important;
    width: auto !important;
    padding: 4px 0 !important;
    color: #e0edf3 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font-size: 17px !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
    overflow-wrap: anywhere !important;
    transform: none !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer .phcem-contact-link .elementor-button[href^="tel:"] {
    font-size: 30px !important;
    font-weight: 700 !important;
    font-variant-numeric: tabular-nums !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer .elementor-button :is(span, svg) {
    color: inherit !important;
    font-size: inherit !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer .formal-footer-nav.e-con {
    grid-area: nav !important;
    gap: 12px !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer .phcem-template-footer-nav .elementor-nav-menu--main > ul {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0 16px !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer .phcem-template-footer-nav .elementor-nav-menu a {
    min-height: 44px !important;
    padding: 6px 0 !important;
    border: 0 !important;
    font-size: 16px !important;
    line-height: 1.4 !important;
    font-weight: 500 !important;
    white-space: normal !important;
    color: #d9e7ee !important;
    background: transparent !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer .formal-footer-whatsapp .elementor-button {
    min-height: 44px !important;
    width: auto !important;
    padding: 10px 18px !important;
    border: 1px solid #8daebb !important;
    border-radius: 4px !important;
    background: transparent !important;
    color: #fff !important;
    box-shadow: none !important;
    font-size: 16px !important;
    line-height: 1.4 !important;
    font-weight: 600 !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer .formal-footer-whatsapp {
    margin-top: 4px !important;
    padding: 0 !important;
    border: 0 !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer .phcem-branch-phone {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 44px !important;
    direction: ltr !important;
    unicode-bidi: isolate !important;
    color: #e0edf3 !important;
    text-decoration: underline !important;
    text-underline-offset: 4px !important;
    font-variant-numeric: tabular-nums !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer .phcem-hours-row {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: space-between !important;
    gap: 0 12px !important;
    max-width: 320px !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer .phcem-hours-row > span {
    white-space: nowrap !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer .phcem-template-branches.e-con {
    grid-area: branches !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    align-items: start !important;
    gap: 16px 36px !important;
    padding: 24px 0 0 !important;
    border-top: 1px solid #385360 !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer .phcem-template-branches > .elementor-widget-heading {
    grid-column: 1 / -1 !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer .formal-footer-bottom > .elementor-widget-text-editor {
    width: auto !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer .formal-footer-bottom :is(p, .elementor-button) {
    font-size: 14px !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer .phcem-template-footer-legal.e-con {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    width: auto !important;
    padding: 0 !important;
    margin: 0 !important;
    gap: 24px !important;
    border: 0 !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer a:hover {
    color: #fff !important;
    text-decoration: underline !important;
    text-underline-offset: 5px !important;
}

body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer a:focus-visible {
    outline: 2px solid #f4bdd8 !important;
    outline-offset: 4px !important;
}

@media (max-width: 1180px) {
    body.phcem-native-document:not(.elementor-editor-active) .phcem-template-header-inner.e-con {
        grid-template-columns: minmax(150px, .65fr) minmax(500px, 2.4fr) minmax(150px, .7fr) !important;
        width: min(1120px, calc(100% - 32px)) !important;
        gap: 14px !important;
    }

    body.phcem-native-document:not(.elementor-editor-active) .phcem-template-nav .elementor-nav-menu--main .elementor-item {
        padding-inline: 7px !important;
        font-size: .82rem !important;
    }

    body.home.phcem-native-document:not(.elementor-editor-active) .service-register.e-con {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 1024px) {
    body.phcem-native-document:not(.elementor-editor-active) {
        --phcem-shell: min(900px, calc(100% - 40px));
    }

    body.phcem-native-document:not(.elementor-editor-active) .formal-site-header.phcem-elementor-header {
        min-height: 74px !important;
    }

    body.phcem-native-document:not(.elementor-editor-active) .phcem-template-header-inner.e-con {
        display: flex !important;
        width: calc(100% - 32px) !important;
        min-height: 74px !important;
        justify-content: space-between !important;
    }

    body:not(.home).phcem-native-document:not(.elementor-editor-active) main,
    body:not(.home).phcem-native-document:not(.elementor-editor-active) .site-main {
        padding-top: 74px !important;
    }

    body.home.phcem-native-document:not(.elementor-editor-active) .institutional-hero {
        height: 690px !important;
        min-height: 690px !important;
        margin-bottom: 106px !important;
    }

    body.home.phcem-native-document:not(.elementor-editor-active) .institutional-hero-copy.e-con {
        width: min(620px, 72%) !important;
    }

    body.home.phcem-native-document:not(.elementor-editor-active) .institutional-proof-band.e-con {
        bottom: -94px !important;
    }

    body.home.phcem-native-document:not(.elementor-editor-active) .institutional-profile-grid.e-con {
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-areas: "copy" "media" !important;
        gap: 34px !important;
    }

    body:not(.home).phcem-native-document:not(.elementor-editor-active) .premium-content-shell.e-con,
    body:not(.home).phcem-native-document:not(.elementor-editor-active) .content-shell.e-con {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    body:not(.home).phcem-native-document:not(.elementor-editor-active) .sticky-lead-panel.e-con {
        position: static !important;
        max-width: none !important;
    }

    body.phcem-native-document:not(.elementor-editor-active) .phcem-loop-grid,
    body.phcem-native-document:not(.elementor-editor-active) .service-grid,
    body.phcem-native-document:not(.elementor-editor-active) .article-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    body.phcem-native-document:not(.elementor-editor-active) .phcem-archive-section .phcem-loop-grid .elementor-loop-container {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .contact-page-grid.e-con {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    body.home.phcem-native-document:not(.elementor-editor-active) .contact-grid.e-con {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 34px !important;
    }

    body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .contact-business-grid.e-con {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .phcem-guidance-columns {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    body.phcem-native-document:not(.elementor-editor-active) .formal-footer-main.e-con {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        grid-template-areas: "brand brand" "contact nav" "branches branches" !important;
        gap: 28px 36px !important;
    }
}

@media (max-width: 767px) {
    body.phcem-native-document:not(.elementor-editor-active) {
        --phcem-shell: calc(100% - 28px);
    }

    body.admin-bar.phcem-native-document:not(.elementor-editor-active) .elementor-location-header {
        top: 46px !important;
    }

    body.phcem-native-document:not(.elementor-editor-active) .phcem-template-logo img {
        height: 46px !important;
        max-width: 138px !important;
    }

    body.home.phcem-native-document:not(.elementor-editor-active) .institutional-hero {
        height: 680px !important;
        min-height: 680px !important;
        margin-bottom: 122px !important;
    }

    body.home.phcem-native-document:not(.elementor-editor-active) .institutional-hero-media::before {
        background: linear-gradient(180deg, rgba(247, 251, 253, .93) 0%, rgba(243, 249, 251, .88) 56%, rgba(231, 243, 247, .64) 100%) !important;
    }

    body.home.phcem-native-document:not(.elementor-editor-active) .institutional-hero-inner.e-con {
        width: calc(100% - 30px) !important;
        padding: 136px 0 144px !important;
        align-items: flex-start !important;
    }

    body.home.phcem-native-document:not(.elementor-editor-active) .institutional-hero-copy.e-con {
        width: 100% !important;
        max-width: none !important;
    }

    body.home.phcem-native-document:not(.elementor-editor-active) .institutional-hero-copy h1 {
        font-size: clamp(2.35rem, 11.5vw, 3.25rem) !important;
        line-height: 1.06 !important;
    }

    body.home.phcem-native-document:not(.elementor-editor-active) .institutional-hero-copy .elementor-widget-text-editor,
    body.home.phcem-native-document:not(.elementor-editor-active) .institutional-hero-copy .elementor-widget-text-editor p {
        font-size: 1rem !important;
        line-height: 1.62 !important;
    }

    body.home.phcem-native-document:not(.elementor-editor-active) .institutional-proof-band.e-con {
        bottom: -110px !important;
    }

    body.home.phcem-native-document:not(.elementor-editor-active) .institutional-proof-grid.e-con {
        width: calc(100% - 22px) !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    body.home.phcem-native-document:not(.elementor-editor-active) .service-register.e-con,
    body.phcem-native-document:not(.elementor-editor-active) .phcem-loop-grid,
    body.phcem-native-document:not(.elementor-editor-active) .service-grid,
    body.phcem-native-document:not(.elementor-editor-active) .article-grid {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    body.phcem-native-document:not(.elementor-editor-active) .phcem-archive-section .phcem-loop-grid .elementor-loop-container {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    body.home.phcem-native-document:not(.elementor-editor-active) .contact-section {
        padding: 54px 0 !important;
    }

    body.home.phcem-native-document:not(.elementor-editor-active) .contact-copy h2 {
        font-size: 2.25rem !important;
    }

    body.home.phcem-native-document:not(.elementor-editor-active) .contact-proof.e-con {
        padding-inline: 22px !important;
    }

    body.home.phcem-native-document:not(.elementor-editor-active) .service-register-item > a.e-con {
        grid-template-rows: 168px 1fr 42px !important;
    }

    body.home.phcem-native-document:not(.elementor-editor-active) .service-register-item > a > .e-con:nth-child(2),
    body.home.phcem-native-document:not(.elementor-editor-active) .service-register-item > a > .e-con:nth-child(2) .elementor-widget,
    body.home.phcem-native-document:not(.elementor-editor-active) .service-register-item > a > .e-con:nth-child(2) .elementor-widget-container,
    body.home.phcem-native-document:not(.elementor-editor-active) .service-register-item > a > .e-con:nth-child(2) img {
        height: 168px !important;
        min-height: 168px !important;
    }

    body.home.phcem-native-document:not(.elementor-editor-active) .institutional-profile-photo.e-con,
    body.home.phcem-native-document:not(.elementor-editor-active) .institutional-profile-photo > .elementor-widget-image,
    body.home.phcem-native-document:not(.elementor-editor-active) .institutional-profile-photo > .elementor-widget-image > .elementor-widget-container,
    body.home.phcem-native-document:not(.elementor-editor-active) .institutional-profile-photo img {
        height: 320px !important;
        min-height: 320px !important;
    }

    body:not(.home).phcem-native-document:not(.elementor-editor-active) .page-hero-inner.e-con,
    body:not(.home).phcem-native-document:not(.elementor-editor-active) .page-hero .container.e-con {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 12px !important;
    }

    body:not(.home).phcem-native-document:not(.elementor-editor-active) .page-hero h1 {
        font-size: clamp(2rem, 9.5vw, 2.7rem) !important;
    }

    body:not(.home).phcem-native-document:not(.elementor-editor-active) .entry-content.premium-entry.e-con,
    body:not(.home).phcem-native-document:not(.elementor-editor-active) .sticky-lead-panel.e-con,
    body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) :is(.contact-form-stage, .contact-response-stage).e-con {
        padding: 24px !important;
    }

    body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .contact-business-grid.e-con,
    body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .phcem-elementor-form .elementor-form-fields-wrapper {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .contact-business-grid.e-con > .e-con {
        padding: 22px 0 !important;
        border-inline-start: 0 !important;
        border-block-start: 1px solid #c8d9df !important;
    }

    body.phcem-entry-contact.phcem-native-document:not(.elementor-editor-active) .contact-business-grid.e-con > .e-con:first-child {
        border-block-start: 0 !important;
    }

    body.phcem-native-document:not(.elementor-editor-active) .formal-footer-main.e-con {
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-areas: "brand" "contact" "nav" "branches" !important;
        width: calc(100% - 40px) !important;
        padding-block: 34px 24px !important;
        gap: 26px !important;
    }

    body.phcem-native-document:not(.elementor-editor-active) .formal-footer-main.e-con > .e-con {
        padding: 0 !important;
        border: 0 !important;
    }

    body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer .phcem-template-branches.e-con {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 18px !important;
    }

    body.phcem-native-document:not(.elementor-editor-active) .formal-site-footer .formal-footer-bottom.e-con {
        width: calc(100% - 40px) !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 2px !important;
        padding-bottom: 20px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.phcem-native-document:not(.elementor-editor-active) *,
    body.phcem-native-document:not(.elementor-editor-active) *::before,
    body.phcem-native-document:not(.elementor-editor-active) *::after {
        scroll-behavior: auto !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
    }
}
