/*
 * Native Chrome RC10 — root-cause parity build.
 * Values and behavior mirror Elementor Header #87 / Footer #95 and the
 * AliClick widget sources. Selectors are intentionally scoped to .asnc-*.
 */
.asnc-preview .asnc-header,
.asnc-preview .asnc-footer,
.asnc-header *,
.asnc-footer * { box-sizing: border-box; }

/* --------------------------------------------------------------------------
 * Header #87
 * -------------------------------------------------------------------------- */
.asnc-header {
    position: fixed;
    top: 0;
    inset-inline: 0;
    z-index: 99990;
    width: 100%;
    padding: 14px 24px;
    border-bottom: 1px solid #eef3fa;
    background: transparent;
    color: #1f2937;
    -webkit-backdrop-filter: blur(16px);
    backdrop-filter: blur(16px);
    background-clip: padding-box;
}

.asnc-inner {
    display: flex;
    align-items: center;
    width: 100%;
    max-width: 1240px;
    margin-inline: auto;
    gap: 0;
}

.asnc-brand { min-width: 0; flex: 0 1 auto; }
.asnc-brand-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    max-width: 100%;
    color: inherit;
    text-decoration: none;
}
.asnc-logo {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 99px;
    min-width: 99px;
    max-width: 99px;
    flex: 0 0 99px;
}
.asnc-logo img { display: block; width: 100%; max-width: 100%; height: auto; margin-inline: auto; object-fit: contain; }
.asnc-brand-copy { display: inline-flex; flex-direction: column; min-width: 0; line-height: 1.35; }
.asnc-brand-name { color: #1f2937; font-size: 17px; font-weight: 800; white-space: nowrap; }
.asnc-brand-subtitle { margin-top: 3px; color: #7c8798; font-size: 10px; font-weight: 500; white-space: nowrap; }

.asnc-menu { flex: 0 0 auto; margin-inline-start: 64px; margin-inline-end: 0; }
.asnc-menu-widget,
.asnc-menu-widget * { box-sizing: border-box; }
.asnc-menu-widget { display: block; }
.asnc-menu-toggle {
    -webkit-appearance: none;
    appearance: none;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 42px;
    padding: 10px 15px;
    border: 1px solid #e5eaf2 !important;
    border-radius: 999px;
    background: #fff !important;
    color: #1f2937 !important;
    cursor: pointer;
    font: inherit;
    font-size: inherit;
    font-weight: 700;
    line-height: 1;
    text-decoration: none !important;
    box-shadow: 0 5px 18px rgba(15, 23, 42, .06);
    transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}
.asnc-menu-toggle:hover,
.asnc-menu-toggle:focus-visible { transform: translateY(-1px); box-shadow: 0 8px 22px rgba(15, 23, 42, .1); outline: none; }
.asnc-menu-toggle:focus-visible,
.asnc-menu-close:focus-visible,
.asnc-offcanvas-menu-list a:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
.asnc-hamburger-lines { display: inline-flex; flex-direction: column; gap: 4px; width: 20px; flex: 0 0 20px; }
.asnc-hamburger-lines span { display: block; width: 100%; height: 2px; border-radius: 999px; background: currentColor; }

/* Full viewport off-canvas, not an absolute dropdown. */
.asnc-menu-overlay {
    position: fixed;
    inset: 0;
    z-index: 999998;
    width: 100%;
    height: 100vh;
    height: 100dvh;
    background: rgba(17, 35, 59, .56);
    -webkit-backdrop-filter: blur(2px);
    backdrop-filter: blur(2px);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 220ms ease, visibility 220ms ease;
}
.asnc-menu-panel {
    --asnc-panel-width: 260px;
    position: fixed;
    top: 0;
    bottom: 0;
    z-index: 999999;
    width: var(--asnc-panel-width);
    max-width: 88vw;
    height: 100vh;
    height: 100dvh;
    max-height: 100dvh;
    padding: 24px;
    border: 1px solid rgba(29, 78, 216, .07);
    background: radial-gradient(circle at 88% 6%, rgba(23, 105, 224, .07), transparent 30%), #fff;
    overflow-y: auto;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scrollbar-color: #c9d8ef transparent;
    opacity: 0;
    visibility: hidden;
    transition: transform 260ms ease, opacity 220ms ease, visibility 220ms ease;
}
.asnc-menu-panel::-webkit-scrollbar { width: 6px; }
.asnc-menu-panel::-webkit-scrollbar-thumb { border-radius: 999px; background: #c9d8ef; }
.asnc-menu-side-right .asnc-menu-panel { right: 0; left: auto; transform: translateX(104%); border-radius: 24px 0 0 24px; box-shadow: -24px 0 70px rgba(20,42,74,.18), 0 20px 70px rgba(20,42,74,.12); }
.asnc-menu-side-left .asnc-menu-panel { left: 0; right: auto; transform: translateX(-104%); border-radius: 0 24px 24px 0; box-shadow: 24px 0 70px rgba(20,42,74,.18), 0 20px 70px rgba(20,42,74,.12); }
.asnc-menu-widget.is-open .asnc-menu-overlay { opacity: 1; visibility: visible; pointer-events: auto; }
.asnc-menu-widget.is-open .asnc-menu-panel { transform: translateX(0); opacity: 1; visibility: visible; }
.asnc-menu-widget.is-open .asnc-menu-toggle { opacity: 0 !important; visibility: hidden !important; pointer-events: none !important; }

/* Prevent backdrop-filter from turning fixed descendants into header-sized surfaces. */
html.asnc-menu-lock,
body.asnc-menu-lock { overflow: hidden; }
html.asnc-menu-lock .asnc-header {
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    filter: none !important;
    transform: none !important;
    perspective: none !important;
    contain: none !important;
    will-change: auto !important;
    overflow: visible !important;
}

.asnc-menu-panel-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    min-height: 66px;
    padding-bottom: 16px;
    margin-bottom: 18px;
    border-bottom: 1px solid #e8eef7;
}
.asnc-menu-panel-title { position: relative; margin: 0; color: #132238; font-size: 22px; font-weight: 800; line-height: 1.35; letter-spacing: -.01em; }
.asnc-menu-panel-title::after { content: ""; display: block; width: 34px; height: 3px; margin-top: 8px; border-radius: 999px; background: #1769e0; }
.asnc-menu-close,
.asnc-menu-close:hover,
.asnc-menu-close:focus,
.asnc-menu-close:active {
    -webkit-appearance: none !important;
    appearance: none !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    padding: 0 !important;
    border: 1px solid #dbe7f6 !important;
    border-radius: 15px !important;
    background: #f7faff !important;
    color: #1769e0 !important;
    font: inherit;
    font-size: 24px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    cursor: pointer;
    text-decoration: none !important;
    box-shadow: 0 8px 18px rgba(33, 83, 150, .10) !important;
    outline: none;
    transition: background-color 180ms ease, color 180ms ease, border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}
.asnc-menu-close:hover,
.asnc-menu-close:focus { border-color: #1769e0 !important; background: #1769e0 !important; color: #fff !important; box-shadow: 0 10px 22px rgba(23,105,224,.24) !important; transform: rotate(90deg) scale(1.04); }
.asnc-menu-close:focus-visible { outline: 3px solid rgba(23,105,224,.22) !important; outline-offset: 3px !important; }

.asnc-offcanvas-nav { padding-top: 0; }
.asnc-offcanvas-menu-list,
.asnc-offcanvas-menu-list ul { list-style: none; margin: 0; padding: 0; }
.asnc-offcanvas-menu-list { display: flex; flex-direction: column; gap: 6px; }
.asnc-offcanvas-menu-list li { margin: 0; padding: 0; }
.asnc-offcanvas-menu-list a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    width: 100%;
    min-height: 50px;
    margin: 0;
    padding: 13px 15px;
    border: 1px solid transparent;
    border-radius: 13px;
    background: transparent;
    color: #22324a;
    text-decoration: none;
    font-weight: 750;
    line-height: 1.55;
    box-shadow: none;
    transition: background-color 180ms ease, color 180ms ease, transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}
.asnc-offcanvas-menu-list a::before { content: ""; position: absolute; inset-block: 11px; inset-inline-start: 0; width: 3px; border-radius: 999px; background: #1769e0; opacity: 0; transform: scaleY(.35); transition: opacity 180ms ease, transform 180ms ease; }
.asnc-offcanvas-menu-list a:hover,
.asnc-offcanvas-menu-list a:focus { border-color: #dce8f7; background: #f6faff; color: #1769e0; box-shadow: 0 8px 20px rgba(33,83,150,.06); transform: translateX(2px); text-decoration: none; }
.asnc-menu-panel[dir="rtl"] .asnc-offcanvas-menu-list a:hover,
.asnc-menu-panel[dir="rtl"] .asnc-offcanvas-menu-list a:focus { transform: translateX(-2px); }
.asnc-offcanvas-menu-list a:hover::before,
.asnc-offcanvas-menu-list a:focus::before,
.asnc-offcanvas-menu-list .current-menu-item > a::before,
.asnc-offcanvas-menu-list .current_page_item > a::before { opacity: 1; transform: scaleY(1); }
.asnc-offcanvas-menu-list .current-menu-item > a,
.asnc-offcanvas-menu-list .current_page_item > a,
.asnc-offcanvas-menu-list .current-menu-ancestor > a { border-color: #d8e6f8; background: linear-gradient(135deg,#f4f9ff 0%,#edf5ff 100%); color: #1769e0; }
.asnc-offcanvas-menu-list .sub-menu { margin: 4px 16px 6px 0; padding-inline-start: 10px; border-inline-start: 2px solid #dce8f7; }
.asnc-menu-panel[dir="ltr"] .asnc-offcanvas-menu-list .sub-menu { margin: 4px 0 6px 16px; }
.asnc-offcanvas-menu-list .sub-menu a { min-height: 42px; padding-top: 10px; padding-bottom: 10px; color: #52647c; font-size: .94em; font-weight: 650; opacity: .9; }
.asnc-offcanvas-menu-list .sub-menu[hidden] { display: none !important; }
.asnc-offcanvas-menu-list li.asnc-has-toggle { position: relative; }
.asnc-offcanvas-menu-list li.asnc-has-toggle > a { padding-inline-end: 48px; }
.asnc-submenu-toggle { position: absolute; inset-inline-end: 4px; top: 4px; display: grid; place-items: center; width: 40px; height: 42px; border: 0; border-radius: 10px; background: transparent; color: inherit; cursor: pointer; font: inherit; }
.asnc-submenu-toggle span { display: block; font-size: 22px; line-height: 1; transition: transform 180ms ease; }
.asnc-submenu-toggle[aria-expanded="true"] span { transform: rotate(180deg); }
.asnc-submenu-toggle:hover { background: #eef5ff; }
.asnc-submenu-toggle:focus-visible { outline: 2px solid #1769e0; outline-offset: 2px; }

/* CTA + booking utility. Physical order remains stable in RTL/LTR. */
.asnc-actions { display: flex; align-items: center; flex-wrap: nowrap; justify-content: flex-start; gap: 10px; flex: 0 0 auto; min-width: 1px; direction: ltr; white-space: nowrap; }
.asnc-header[dir="rtl"] .asnc-actions { margin-right: auto; margin-left: 0; }
.asnc-header[dir="ltr"] .asnc-actions { margin-left: auto; margin-right: 0; }
.asnc-actions > .asnc-cta { order: 1; flex: 0 0 auto; }
.asnc-actions > .asnc-utilities { order: 2; }
.asnc-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 42px;
    padding: 12px 18px;
    border-radius: 9px;
    background: #004dbb;
    color: #fff !important;
    text-decoration: none !important;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    box-shadow: 0 8px 20px rgba(23,105,224,.18);
    transition: transform 180ms ease, background-color 180ms ease, box-shadow 180ms ease;
}
.asnc-cta:hover,
.asnc-cta:focus-visible { background: #3084ff; color: #fff !important; transform: translateY(-1px); box-shadow: 0 11px 24px rgba(23,105,224,.24); }
.asnc-cta:focus-visible,
.asnc-brand-link:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
.asnc-cta-icon { display: inline-flex; align-items: center; justify-content: center; color: #fff; }
.asnc-cta-icon svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }

.asnc-utilities { display: inline-flex; align-items: center; gap: 8px; flex: 0 0 auto; direction: ltr; --asnc-utility-button-size: 44px; --asnc-utility-icon-size: 32px; --asnc-utility-dropdown-width: 220px; }
.asnc-utility { position: relative; margin: 0; flex: 0 0 auto; }
.asnc-utility > summary { display: inline-flex; align-items: center; justify-content: center; width: auto; min-width: var(--asnc-utility-button-size); height: var(--asnc-utility-button-size); gap: 7px; padding: 5px 11px; border: 1px solid #b9d3f8; border-radius: 12px; background: #f3f8ff; color: #1769e0; cursor: pointer; list-style: none; user-select: none; font-size: 13px; font-weight: 700; line-height: 1; white-space: nowrap; box-shadow: 0 6px 18px rgba(23,105,224,.09); transition: transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease, background-color 160ms ease; }
.asnc-utility > summary::-webkit-details-marker { display: none; }
.asnc-utility > summary:hover,
.asnc-utility > summary:focus-visible,
.asnc-utility[open] > summary { border-color: #8fbaf2; background: #eaf3ff; color: #115fcf; box-shadow: 0 9px 22px rgba(23,105,224,.14); transform: translateY(-1px); outline: none; }
.asnc-utility-icon { display: block; flex: 0 0 auto; width: var(--asnc-utility-icon-size); height: var(--asnc-utility-icon-size); max-width: var(--asnc-utility-icon-size); object-fit: contain; object-position: center; border-radius: 50%; }
.asnc-utility-visible-label { display: inline-block; max-width: 150px; overflow: hidden; color: inherit; text-overflow: ellipsis; white-space: nowrap; }
.asnc-utility-chevron { display: inline-block; flex: 0 0 auto; width: 7px; height: 7px; margin-inline-start: 1px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; opacity: .65; transform: translateY(-2px) rotate(45deg); transition: transform 160ms ease, opacity 160ms ease; }
.asnc-utility[open] > summary .asnc-utility-chevron { opacity: .9; transform: translateY(2px) rotate(225deg); }
.asnc-utility-panel { position: absolute; top: calc(100% + 10px); inset-inline-end: 0; z-index: 100120; width: max-content; min-width: var(--asnc-utility-dropdown-width); max-width: min(320px, calc(100vw - 28px)); padding: 8px; border: 1px solid #e5eaf2; border-radius: 14px; background: #fff; box-shadow: 0 18px 45px rgba(15,23,42,.16); direction: rtl; text-align: right; }
.asnc-header[dir="ltr"] .asnc-utility-panel { direction: ltr; text-align: left; }
.asnc-utility-panel::before { content: ""; position: absolute; top: -6px; inset-inline-end: 17px; width: 11px; height: 11px; border-top: 1px solid #e5eaf2; border-inline-start: 1px solid #e5eaf2; background: #fff; transform: rotate(45deg); }
.asnc-utility-menu { display: grid; gap: 4px; margin: 0; padding: 0; list-style: none; }
.asnc-utility-link { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 42px; padding: 9px 11px; border-radius: 9px; color: #1f2937; text-decoration: none !important; font-size: 13px; font-weight: 700; line-height: 1.45; transition: color 150ms ease, background-color 150ms ease; }
.asnc-utility-link:hover,
.asnc-utility-link:focus-visible { background: #eff6ff; color: #1769e0; outline: none; }
.asnc-sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; }

/* Compensate for the fixed header in document flow; measured height is updated by JS. */
.asnc-header-spacer { display: block; width: 100%; height: var(--asnc-header-height, 125px); pointer-events: none; }

/* Mobile utility copy lives inside the off-canvas drawer; desktop action row is hidden. */
.asnc-mobile-actions { display: none; }

/* --------------------------------------------------------------------------
 * Footer #95
 * -------------------------------------------------------------------------- */
.asnc-footer {
    width: calc(100vw - 122px);
    max-width: calc(100vw - 122px);
    margin-inline: calc(50% - 50vw + 61px);
    margin-top: 30px;
    padding: 40px 40px 20px;
    border-radius: 28px 28px 0 0;
    background: #f5f8ff;
    color: #4b5563;
    overflow: hidden;
}
.asnc-footer a { color: inherit; }
.asnc-footer-inner { width: 100%; max-width: 895px; margin-inline: auto; }
.asnc-footer-grid { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(0,1fr) minmax(180px,.75fr); gap: 44px; align-items: start; }
.asnc-footer[dir="rtl"] .asnc-footer-grid,
.asnc-footer[dir="rtl"] .asnc-footer-bottom { direction: rtl; }
.asnc-footer[dir="ltr"] .asnc-footer-grid,
.asnc-footer[dir="ltr"] .asnc-footer-bottom { direction: ltr; }
.asnc-footer-column { min-width: 0; }

/* Inline logo/name composition from Global Footer brand extension. */
.asnc-footer-brand-column { --asnc-inline-logo-width: 76px; --asnc-inline-logo-gap: 15px; display: grid; grid-template-columns: var(--asnc-inline-logo-width) minmax(0,1fr); grid-template-rows: auto auto; column-gap: var(--asnc-inline-logo-gap); align-items: center; }
.asnc-footer-logo { grid-column: 1; grid-row: 1 / span 2; display: flex; align-items: center; justify-content: center; align-self: center; width: var(--asnc-inline-logo-width); min-width: var(--asnc-inline-logo-width); max-width: var(--asnc-inline-logo-width); margin: 0; overflow: visible; }
.asnc-footer-logo img { display: block; width: 100%; max-width: 100%; height: auto; margin: 0 auto; object-fit: contain; }
.asnc-footer-brand-name,
.asnc-footer-heading { margin: 0; color: #1f2937; font-weight: 800; line-height: 1.45; }
.asnc-footer-brand-name { grid-column: 2; grid-row: 1; align-self: end; margin: 0; font-size: 24px; }
.asnc-footer-specialty { grid-column: 2; grid-row: 2; align-self: start; margin-top: 2px; font-size: 14px; line-height: 1.8; }
.asnc-footer[dir="rtl"] .asnc-footer-brand-name,
.asnc-footer[dir="rtl"] .asnc-footer-specialty { text-align: right; }
.asnc-footer[dir="ltr"] .asnc-footer-brand-name,
.asnc-footer[dir="ltr"] .asnc-footer-specialty { text-align: left; }
.asnc-footer-description,
.asnc-footer-contact-list,
.asnc-footer-social { grid-column: 1 / -1; }
.asnc-footer-heading { margin-bottom: 20px; font-size: 18px; }
.asnc-footer-description { max-width: 390px; margin: 14px 0 0; line-height: 1.9; }
.asnc-footer-muted,
.asnc-post-date,
.asnc-footer-bottom { color: #7c8798; }

.asnc-footer-contact-list,
.asnc-footer-links-list { list-style: none; margin: 0; padding: 0; }
.asnc-footer-contact-list { display: grid; gap: 10px; margin-top: 20px; }
.asnc-footer-contact-list li { display: flex; align-items: flex-start; gap: 10px; line-height: 1.75; }
.asnc-footer-contact-list a,
.asnc-footer-contact-list span { color: inherit; text-decoration: none; }
.asnc-footer-contact-list a:hover,
.asnc-footer-contact-list a:focus-visible { color: #1769e0; }
.asnc-footer-contact-icon { display: inline-flex; align-items: center; justify-content: center; width: 22px; min-width: 22px; height: 26px; color: #1769e0; }
.asnc-footer-contact-icon svg { display: block; width: 16px; height: 16px; }
.asnc-footer-contact-icon svg:first-child { fill: currentColor; stroke: none; }
.asnc-footer-contact-list li:nth-child(2) .asnc-footer-contact-icon svg { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }

.asnc-footer-social { display: flex; flex-wrap: nowrap; align-items: center; gap: 7px; margin-top: 14px; min-height: 0; font-size: 20px; }
.asnc-footer-social > a { display: inline-flex; align-items: center; justify-content: center; width: 1em; height: 1em; flex: 0 0 1em; line-height: 1; text-decoration: none; transition: transform 180ms ease, opacity 180ms ease; }
.asnc-footer-social > a:hover { transform: translateY(-1px); }
.asnc-footer-social img { display: block; width: 1em; height: 1em; object-fit: contain; }

.asnc-posts { display: grid; gap: 0; }
.asnc-post { display: grid; grid-template-columns: 42px minmax(0,1fr); gap: 8px; align-items: center; padding: 0 0 7px; }
.asnc-post + .asnc-post { padding-top: 7px; border-top: 1px solid #dce6f5; }
.asnc-post:last-child { padding-bottom: 0; }
.asnc-post-thumb { display: block; width: 42px; height: 42px; overflow: hidden; border-radius: 12px; background: #e8eef8; }
.asnc-post-thumb img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 220ms ease; }
.asnc-post:hover .asnc-post-thumb img { transform: scale(1.04); }
.asnc-post-body { min-width: 0; }
.asnc-post-title { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; color: #263348 !important; text-decoration: none !important; font-size: 13px; font-weight: 700; line-height: 1.65; }
.asnc-post-title:hover,
.asnc-post-title:focus-visible { color: #1769e0 !important; }
.asnc-post-date { display: block; margin-top: 5px; font-size: 10px; line-height: 1.6; }

.asnc-footer-links-list { display: grid; gap: 3px; }
.asnc-footer-links-list li { margin: 0; }
.asnc-footer-links a { position: relative; display: inline-flex; align-items: center; gap: 9px; padding: 5px 0; color: inherit; text-decoration: none; line-height: 1.75; transition: color 180ms ease, transform 180ms ease; }
.asnc-footer-links a::before { content: ""; display: inline-block; width: 7px; height: 7px; border-top: 2px solid #1769e0; border-right: 2px solid #1769e0; transform: rotate(-135deg); opacity: .85; }
.asnc-footer[dir="ltr"] .asnc-footer-links a::before { transform: rotate(45deg); }
.asnc-footer-links a:hover,
.asnc-footer-links a:focus-visible { color: #1769e0; }
.asnc-footer[dir="rtl"] .asnc-footer-links a:hover,
.asnc-footer[dir="rtl"] .asnc-footer-links a:focus-visible { transform: translateX(-2px); }
.asnc-footer[dir="ltr"] .asnc-footer-links a:hover,
.asnc-footer[dir="ltr"] .asnc-footer-links a:focus-visible { transform: translateX(2px); }

.asnc-footer-social a:focus-visible,
.asnc-post-title:focus-visible,
.asnc-footer-links a:focus-visible,
.asnc-footer-contact-list a:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
.asnc-footer-bottom { display: flex; align-items: center; justify-content: space-between; gap: 18px 30px; margin-top: 34px; padding-top: 18px; border-top: 1px solid #dce6f5; font-size: 12px; line-height: 1.8; }
.asnc-footer-credit { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 4px; }
.asnc-footer-credit-name { color: #1769e0; font-weight: 700; }

/* --------------------------------------------------------------------------
 * Responsive parity
 * -------------------------------------------------------------------------- */
@media (max-width: 1024px) {
    .asnc-brand-subtitle { font-size: 9px; }
    .asnc-actions { gap: 8px; }
    .asnc-footer { width: calc(100vw - 40px); max-width: calc(100vw - 40px); margin-inline: calc(50% - 50vw + 20px); }
    .asnc-footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 34px; }
    .asnc-footer-brand-column { grid-column: 1 / -1; }
    .asnc-footer-description { max-width: 680px; }
    .asnc-post { grid-template-columns: 40px minmax(0,1fr); gap: 7px; padding-bottom: 6px; }
    .asnc-post + .asnc-post { padding-top: 6px; }
    .asnc-post-thumb { width: 40px; height: 40px; }
}

@media (max-width: 767px) {
    .asnc-header { padding: 11px 15px; }
    .asnc-inner { flex-wrap: wrap; gap: 10px 12px; }
    .asnc-brand { flex: 0 1 auto; }
    .asnc-brand-name { font-size: 15px; }
    .asnc-brand-subtitle { font-size: 9px; }
    .asnc-menu { flex: 0 0 auto; }
    .asnc-menu-toggle { min-width: 44px; min-height: 44px; padding: 10px 12px; }
    .asnc-actions { display: none; }

    .asnc-menu-panel { width: min(var(--asnc-panel-width),92vw); max-width: 92vw; padding: 20px; border-radius: 0 !important; }
    .asnc-menu-panel-title { font-size: 20px; }
    .asnc-menu-panel-header { min-height: 60px; margin-bottom: 14px; }
    .asnc-menu-close { width: 42px !important; height: 42px !important; min-width: 42px !important; min-height: 42px !important; border-radius: 12px !important; }
    .asnc-offcanvas-menu-list a { min-height: 48px; padding: 12px 13px; }

    .asnc-mobile-actions { display: block; position: relative; width: 100%; min-width: 0; height: auto; min-height: 0; margin: 18px 0 0; padding: 18px 0 0; border-top: 1px solid #e8eef7; background: transparent; overflow: visible; white-space: normal; }
    .asnc-mobile-cta { display: flex !important; width: 100%; min-width: 0; min-height: 48px; margin: 0; }
    .asnc-mobile-controls { display: grid; grid-template-columns: minmax(0,1fr); align-items: stretch; gap: 8px; width: 100%; min-width: 0; margin: 10px 0 0; padding: 0; direction: inherit; }
    .asnc-mobile-booking { min-width: 0; width: 100%; }
    .asnc-mobile-booking-trigger {
        -webkit-appearance: none;
        appearance: none;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        width: 100%;
        min-width: 0;
        min-height: 50px;
        margin: 0;
        padding: 9px 11px;
        border: 1px solid #dbe7f6;
        border-radius: 12px;
        background: #fff;
        color: #22324a;
        font: inherit;
        font-size: 13px;
        font-weight: 700;
        line-height: 1.35;
        text-align: center;
        cursor: pointer;
        box-shadow: 0 5px 16px rgba(15,23,42,.05);
        transition: border-color 160ms ease, background-color 160ms ease, color 160ms ease, box-shadow 160ms ease;
    }
    .asnc-mobile-booking-trigger:hover,
    .asnc-mobile-booking-trigger:focus-visible { border-color: #b9d3f8; background: #f7faff; color: #1769e0; box-shadow: 0 7px 18px rgba(23,105,224,.10); outline: none; }
    .asnc-mobile-booking-trigger.is-active { border-color: #8fbaf2; background: #edf5ff; color: #1769e0; box-shadow: 0 8px 20px rgba(23,105,224,.12); }
    .asnc-mobile-booking-trigger:focus-visible { outline: 2px solid #1769e0; outline-offset: 2px; }
    .asnc-mobile-utility-icon { display: block; flex: 0 0 30px; width: 30px; height: 30px; max-width: 30px; max-height: 30px; margin: 0; padding: 0; border: 0; border-radius: 50%; object-fit: contain; }
    .asnc-mobile-booking-panel { position: static; width: 100%; min-width: 0; max-width: none; max-height: min(320px,42dvh); margin: 8px 0 0; padding: 8px; border: 1px solid #e1e9f4; border-radius: 14px; background: #fff; color: #22324a; direction: inherit; text-align: start; box-shadow: 0 12px 28px rgba(15,23,42,.10); overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; }
    .asnc-mobile-booking-panel[hidden] { display: none !important; }
    .asnc-mobile-booking-panel .asnc-utility-link { min-height: 44px; padding: 9px 10px; color: #22324a; }

    .asnc-footer { width: calc(100vw - 24px); max-width: calc(100vw - 24px); margin-inline: calc(50% - 50vw + 12px); margin-top: 20px; padding: 32px 22px 18px; border-radius: 20px 20px 0 0; }
    .asnc-footer-inner { max-width: 94%; }
    .asnc-footer-grid { grid-template-columns: minmax(0,1fr); gap: 30px; }
    .asnc-footer-brand-column { --asnc-inline-logo-width: 50px; --asnc-inline-logo-gap: 10px; grid-column: auto; }
    .asnc-footer-heading { margin-bottom: 15px; }
    .asnc-post { grid-template-columns: 38px minmax(0,1fr); gap: 6px; padding-bottom: 6px; }
    .asnc-post + .asnc-post { padding-top: 6px; }
    .asnc-post-thumb { width: 38px; height: 38px; border-radius: 10px; }
    .asnc-post-title { font-size: 12px; }
    .asnc-post-date { font-size: 9px; }
    .asnc-footer-bottom { align-items: flex-start; flex-direction: column; margin-top: 28px; padding-top: 16px; }
}

@media (max-width: 420px) {
    .asnc-brand-copy { max-width: 135px; }
    .asnc-brand-name,
    .asnc-brand-subtitle { overflow: hidden; text-overflow: ellipsis; }
    .asnc-menu-toggle-label { display: none; }
    .asnc-mobile-actions { margin-top: 16px; padding-top: 16px; }
    .asnc-mobile-controls { gap: 6px; }
    .asnc-mobile-booking-trigger { gap: 6px; padding-inline: 8px; }
    .asnc-mobile-utility-icon { flex-basis: 28px; width: 28px; height: 28px; max-width: 28px; max-height: 28px; }
    .asnc-mobile-booking-trigger span { font-size: 12px; }
}

@media (prefers-reduced-motion: reduce) {
    .asnc-header *, .asnc-header *::before, .asnc-header *::after,
    .asnc-footer *, .asnc-footer *::before, .asnc-footer *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

/* RC50: native footer full-width four-column composition and localized book CTA. */
@media (min-width: 1025px) {
    .asnc-footer .asnc-footer-inner { max-width: 1440px; margin-inline: auto; }
    .asnc-footer .asnc-footer-grid {
        grid-template-columns: minmax(280px,1.45fr) minmax(170px,.85fr) minmax(165px,.8fr) minmax(215px,1fr);
        gap: clamp(22px,3.2vw,64px);
        align-items: start;
    }
}
.asnc-footer .asnc-footer-column { text-align: start; }
.asnc-footer .asnc-footer-book-description { margin: 0 0 19px; line-height: 1.9; max-width: 310px; }
.asnc-footer .asnc-footer-book-cta {
    display: inline-flex; align-items: center; justify-content: center; gap: 11px;
    min-height: 44px; padding: 10px 18px; border: 1px solid #2468bd; border-radius: 11px;
    background: #2468bd; color: #fff; font-weight: 700; font-size: 14px; text-decoration: none;
    transition: background .18s ease, box-shadow .18s ease;
}
.asnc-footer .asnc-footer-book-cta:hover { color: #fff; background: #154f9a; }
.asnc-footer .asnc-footer-book-cta:focus-visible { outline: 3px solid #88bafb; outline-offset: 3px; }
.asnc-footer[dir="ltr"] .asnc-footer-book-cta span { transform: rotate(180deg); }
@media (min-width: 768px) and (max-width: 1024px) {
    .asnc-footer .asnc-footer-inner { max-width: 100%; }
    .asnc-footer .asnc-footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .asnc-footer .asnc-footer-brand-column { grid-column: auto; }
}
@media (max-width: 767px) {
    .asnc-footer .asnc-footer-book-description { max-width: none; }
}

/* RC51 optional footer book artwork */
.asnc-footer-book-image{display:block;max-width:130px;width:100%;height:auto;object-fit:contain;margin-block:10px;border-radius:10px}

/* RC52: compact book cover sourced from Book Page > Images, within the existing grid column. */
.asnc-footer .asnc-footer-book-cover {
    width: 112px; max-width: 100%; margin-block: 14px 16px; overflow: hidden;
    border-radius: 9px; background: transparent;
}
.asnc-footer .asnc-footer-book-cover .asnc-footer-book-image {
    display: block; width: 100%; max-width: 112px; max-height: 164px; height: auto;
    object-fit: contain; object-position: center; margin: 0; border-radius: 7px;
    box-shadow: 0 5px 16px rgba(12,51,104,.12);
}
@media (max-width: 767px) {
    .asnc-footer .asnc-footer-book-cover { width: 100px; margin-block: 10px 14px; }
    .asnc-footer .asnc-footer-book-cover .asnc-footer-book-image { max-width: 100px; max-height: 145px; }
}
/* RC63: screenshot-aligned native header branding and Picture11 footer. Applied only when native chrome is enabled. */
.asnc-header .asnc-brand-copy{max-width:min(38vw,380px)}
.asnc-header .asnc-brand-name{font-size:clamp(13px,1.2vw,17px);white-space:normal;line-height:1.35}
.asnc-header .asnc-brand-subtitle{font-size:clamp(8px,.8vw,11px);white-space:normal;line-height:1.35;max-width:370px}
.asnc-footer{background:#f0f7ff;border-radius:30px;width:calc(100vw - 46px);max-width:calc(100vw - 46px);margin-inline:calc(50% - 50vw + 23px);padding:39px clamp(18px,3vw,48px) 22px}
.asnc-footer .asnc-footer-inner{max-width:1370px}
.asnc-footer .asnc-footer-description{line-height:1.85}
.asnc-footer .asnc-footer-grid{gap:clamp(16px,2.9vw,56px)}
.asnc-footer .asnc-footer-posts-column .asnc-footer-links-list{gap:4px}
.asnc-footer .asnc-footer-book-cta{color:#0867ed;background:white;border:1.4px solid #0867ed}
.asnc-footer .asnc-footer-book-cta:hover{color:white;background:#0867ed}
.asnc-footer .asnc-footer-book-cover{width:126px}.asnc-footer .asnc-footer-book-cover .asnc-footer-book-image{max-width:126px;max-height:190px}
@media(max-width:720px){.asnc-header .asnc-brand-subtitle{font-size:9px}.asnc-footer{width:calc(100vw - 20px);max-width:calc(100vw - 20px);margin-inline:calc(50% - 50vw + 10px);padding:22px 18px}.asnc-footer .asnc-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px}.asnc-footer .asnc-footer-brand-column{grid-column:1/-1}}
@media(max-width:480px){.asnc-header .asnc-brand-copy{max-width:138px}.asnc-header .asnc-brand-subtitle{font-size:8px;white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.asnc-footer .asnc-footer-grid{grid-template-columns:1fr}.asnc-footer .asnc-footer-brand-column{grid-column:auto}}


/* RC65 footer refinements */
.asnc-footer-specialty{max-width:340px;font-size:13px;line-height:1.9}.asnc-footer-brand-name{font-size:22px}.asnc-footer-book-column .asnc-footer-heading{font-size:17px}
@media (max-width:1024px){.asnc-footer-specialty{max-width:none}}


/* RC69 | Picture 11 inspired native footer only. Brand palette from الهيكل العام للموقع.docx.
   Zero effect on Elementor, header, booking, assessments, or home page cards. */
.asnc-footer.asnc-footer--rc69 {
  --asnc-r69-blue: #1469E8;
  --asnc-r69-sky: #D9F0FF;
  --asnc-r69-cream: #FFF1DE;
  --asnc-r69-green: #39B995;
  --asnc-r69-coral: #FF806F;
  --asnc-r69-gold: #F6BD4A;
  position: relative;
  isolation: isolate;
  width: calc(100vw - 46px);
  max-width: calc(100vw - 46px);
  margin-inline: calc(50% - 50vw + 23px);
  margin-block: 35px 16px;
  padding: clamp(30px, 3.25vw, 50px) clamp(22px, 3.4vw, 56px) 26px;
  overflow: hidden;
  border: 1px solid #e5edf8;
  border-radius: 32px;
  background: radial-gradient(ellipse at 15% 7%, rgba(217,240,255,.55), transparent 34%),
              radial-gradient(ellipse at 96% 89%, rgba(255,241,222,.34), transparent 33%),
              linear-gradient(118deg, #f0f8ff 0%, #f9fcff 46%, #eef6ff 100%);
  color: #4e6080;
  box-shadow: 0 14px 42px rgba(26,65,118,.065), inset 0 1px 0 rgba(255,255,255,.92);
}
.asnc-footer--rc69 .asnc-footer-inner { position: relative; z-index: 1; max-width: 1450px; }
.asnc-footer--rc69 .asnc-footer-grid {
  display: grid;
  grid-template-columns: minmax(275px,1.30fr) minmax(195px,.99fr) minmax(180px,.98fr) minmax(190px,.88fr);
  gap: 0;
  align-items: stretch;
}
.asnc-footer--rc69 .asnc-footer-column { padding-inline: clamp(16px, 2.4vw, 38px); text-align: start; min-width: 0; }
.asnc-footer--rc69 .asnc-footer-column:first-child { padding-inline-start: 0; }
.asnc-footer--rc69 .asnc-footer-column:last-child { padding-inline-end: 0; }
.asnc-footer--rc69 .asnc-footer-column + .asnc-footer-column { border-inline-start: 1px solid #dce9f8; }
.asnc-footer--rc69 .asnc-footer-brand-column {
  --asnc-inline-logo-width: 80px;
  --asnc-inline-logo-gap: 12px;
  display: grid;
  align-content: start;
  grid-template-columns: var(--asnc-inline-logo-width) minmax(0,1fr);
  grid-template-rows: auto auto;
  column-gap: var(--asnc-inline-logo-gap);
}
.asnc-footer--rc69 .asnc-footer-logo { max-height: 66px; align-self: center; }
.asnc-footer--rc69 .asnc-footer-brand-name { color: #102b4a; font-size: clamp(20px,1.7vw,25px); font-weight: 850; }
.asnc-footer--rc69 .asnc-footer-specialty { color: #7889a3; font-size: 13px; line-height: 1.7; }
.asnc-footer--rc69 .asnc-footer-description { color: #516583; font-size: 15px; line-height: 1.95; margin-top: 25px; max-width: 395px; }
.asnc-footer--rc69 .asnc-footer-heading {
  display: flex; align-items: center; gap: 10px;
  min-height: 43px; margin: 0 0 20px;
  color: #102e5d; font-size: clamp(17px,1.3vw,21px); font-weight: 850;
}
.asnc-footer--rc69 .asnc-footer-heading-icon {
  display: inline-flex; align-items: center; justify-content: center;
  width: 35px; height: 35px; flex: 0 0 35px;
  color: var(--asnc-r69-blue); border-radius: 11px;
  background: rgba(217,240,255,.54);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
}
.asnc-footer--rc69 .asnc-footer-posts-column .asnc-footer-heading-icon { color: #209d7c; background: #e1f7ed; }
.asnc-footer--rc69 .asnc-footer-book-column .asnc-footer-heading-icon { color: var(--asnc-r69-blue); background: #e4f1ff; }
.asnc-footer--rc69 .asnc-footer-heading-icon svg { display:block; width: 24px; height: 24px; }
.asnc-footer--rc69 .asnc-footer-links-list { display: grid; gap: 3px; }
.asnc-footer--rc69 .asnc-footer-links a {
  display: inline-flex; gap: 11px; align-items: baseline; max-width: 100%;
  padding: 5px 0; font-size: 14px; line-height: 1.8; text-decoration: none;
  color: #536480; overflow-wrap: anywhere;
}
.asnc-footer--rc69 .asnc-footer-links a::before { width: 7px; height: 7px; border-color: var(--asnc-r69-blue); }
.asnc-footer--rc69 .asnc-footer-links a:hover,
.asnc-footer--rc69 .asnc-footer-links a:focus-visible { color: var(--asnc-r69-blue); }
.asnc-footer--rc69 .asnc-footer-contact-list { margin-top: 23px; gap: 12px; }
.asnc-footer--rc69 .asnc-footer-contact-list li { gap: 11px; color: #475e7a; }
.asnc-footer--rc69 .asnc-footer-contact-icon { color: #253b59; }
.asnc-footer--rc69 .asnc-footer-social { margin-top: 20px; gap: 12px; }
.asnc-footer--rc69 .asnc-footer-social > a { width: 23px; height: 23px; flex-basis: 23px; font-size: 23px; }
.asnc-footer--rc69 .asnc-footer-social img { width: 23px; height: 23px; }
.asnc-footer--rc69 .asnc-footer-book-column {
  display: flex; flex-direction: column; align-items: flex-start; gap: 0;
  padding: 0 16px 7px; border-radius: 17px;
  background: linear-gradient(160deg, rgba(217,240,255,.4),rgba(255,255,255,.08));
}
.asnc-footer--rc69 .asnc-footer-book-column .asnc-footer-heading { margin-bottom: 13px; }
.asnc-footer--rc69 .asnc-footer-book-description { margin: 0 0 14px; max-width: 285px; font-size: 13.5px; line-height: 1.85; color: #596b84; }
.asnc-footer--rc69 .asnc-footer-book-cta {
  display: inline-flex; gap: 9px; align-items: center; justify-content: center;
  width: auto; min-height: 43px; padding: 10px 17px; margin: 0 0 18px;
  border: 1.4px solid var(--asnc-r69-blue); border-radius: 12px;
  background: #fff; color: var(--asnc-r69-blue); box-shadow: 0 3px 8px rgba(20,105,232,.06);
  font-size: 13px;
}
.asnc-footer--rc69 .asnc-footer-book-cta:hover { color: #fff; background: var(--asnc-r69-blue); box-shadow: 0 5px 14px rgba(20,105,232,.17); }
.asnc-footer--rc69 .asnc-footer-book-cover {
  position: relative; width: 141px; max-width: 100%; margin: 0 0 4px 11px; overflow: visible;
  perspective: 600px; background: transparent;
  filter: drop-shadow(-4px 10px 10px rgba(25,59,95,.15));
}
.asnc-footer--rc69 .asnc-footer-book-cover .asnc-footer-book-image {
  width: 100%; max-width: 141px; max-height: 212px; height: auto; margin: 0;
  border-radius: 5px; object-fit: contain; box-shadow: 0 9px 17px rgba(6,47,91,.16);
}
.asnc-footer--rc69 .asnc-footer-bottom {
  display: flex; justify-content: space-between; align-items: center;
  gap: 13px 26px; margin-top: clamp(30px,3vw,48px); padding-top: 18px;
  border-top: 1px solid #d7e7f7; color: #7486a2; font-size: 12px;
}
.asnc-footer--rc69 .asnc-footer-legal { display: flex; flex-wrap: wrap; align-items: center; gap: 13px; }
.asnc-footer--rc69 .asnc-footer-legal a { color: #697d99; text-decoration: none; }
.asnc-footer--rc69 .asnc-footer-legal a:hover { color: var(--asnc-r69-blue); }
@media (max-width: 1120px) {
  .asnc-footer--rc69 .asnc-footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 30px 0; }
  .asnc-footer--rc69 .asnc-footer-brand-column { grid-column: auto; }
  .asnc-footer--rc69 .asnc-footer-column { padding-inline: 22px; }
  .asnc-footer--rc69 .asnc-footer-column:first-child,
  .asnc-footer--rc69 .asnc-footer-column:last-child { padding-inline: 22px; }
  .asnc-footer--rc69 .asnc-footer-column:nth-child(odd) { border-inline-start: 0; padding-inline-start: 0; }
  .asnc-footer--rc69 .asnc-footer-column:nth-child(even) { border-inline-start: 1px solid #dce9f8; }
  .asnc-footer--rc69 .asnc-footer-book-column { margin-inline: 22px 0; padding: 0 16px 10px; }
}
@media (max-width: 650px) {
  .asnc-footer.asnc-footer--rc69 {
    width: calc(100vw - 20px); max-width: calc(100vw - 20px);
    margin-inline: calc(50% - 50vw + 10px); margin-top: 24px;
    padding: 28px 22px 19px; border-radius: 23px;
  }
  .asnc-footer--rc69 .asnc-footer-grid { grid-template-columns: minmax(0,1fr); gap: 0; }
  .asnc-footer--rc69 .asnc-footer-column,
  .asnc-footer--rc69 .asnc-footer-column:first-child,
  .asnc-footer--rc69 .asnc-footer-column:last-child,
  .asnc-footer--rc69 .asnc-footer-column:nth-child(odd),
  .asnc-footer--rc69 .asnc-footer-column:nth-child(even) {
    grid-column: auto; margin: 0; padding: 24px 0;
    border-inline-start: 0; border-top: 1px solid #dce9f8;
  }
  .asnc-footer--rc69 .asnc-footer-column:first-child { border-top: 0; padding-top: 0; }
  .asnc-footer--rc69 .asnc-footer-brand-column { --asnc-inline-logo-width: 70px; }
  .asnc-footer--rc69 .asnc-footer-heading { margin-bottom: 11px; }
  .asnc-footer--rc69 .asnc-footer-book-column { padding: 18px !important; margin-top: 15px !important; border-radius: 17px; }
  .asnc-footer--rc69 .asnc-footer-bottom { flex-direction: column; align-items: flex-start; margin-top: 16px; }
  .asnc-footer--rc69 .asnc-footer-book-cover { margin-inline-start: 11px; }
}
@media (prefers-reduced-motion: reduce) {
  .asnc-footer--rc69 *, .asnc-footer--rc69 *::before, .asnc-footer--rc69 *::after { transition: none !important; animation: none !important; }
}

/* RC110: bilingual switcher restored without altering existing menu DOM/logic. */
.asnc-actions .asnc-lang-switch,.asnc-mobile-actions .asnc-lang-switch{
  display:inline-flex;align-items:center;justify-content:center;
  white-space:nowrap;text-decoration:none;font-size:13px;font-weight:700;
  border:1px solid #c7dbf4;border-radius:12px;padding:9px 12px;
  background:#fff;color:#0b59a5;line-height:1.3;
}
.asnc-lang-switch:hover,.asnc-lang-switch:focus-visible{background:#eaf4ff;border-color:#8cbaeb;color:#074c94}
.asnc-actions .asnc-lang-switch{margin-inline-end:12px;flex:0 0 auto}
.asnc-mobile-actions .asnc-lang-switch{margin-bottom:12px}
@media(max-width:760px){.asnc-actions .asnc-lang-switch{display:none}}

/* RC111: language control is last in the actual action DOM, in both directions. */
.asnc-header[dir="rtl"] .asnc-actions{direction:rtl}
.asnc-header[dir="ltr"] .asnc-actions{direction:ltr}
.asnc-actions > .asnc-cta,.asnc-actions > .asnc-utilities,.asnc-actions > .asnc-lang-switch{order:0}
.asnc-actions .asnc-lang-switch{margin:0;min-height:44px;box-sizing:border-box}
.asnc-mobile-actions .asnc-lang-switch{margin:0;min-height:44px;box-sizing:border-box}


/* RC123: match the full-width booking action in the mobile off-canvas menu.
 * Desktop language control and Arabic/English menu layout remain unchanged. */
@media (max-width: 767px) {
    .asnc-menu-panel .asnc-mobile-actions > .asnc-lang-switch {
        display: flex;
        width: 100%;
        min-width: 0;
        max-width: none;
        min-height: 50px;
        margin: 8px 0 0;
        padding: 9px 12px;
        box-sizing: border-box;
        justify-content: center;
        align-items: center;
        text-align: center;
    }
}

/* RC124: Mobile booking action uses the approved The Soul Thrive blue (#1469E8),
 * replacing external/custom pink styling without affecting desktop controls. */
@media (max-width: 767px) {
    .asnc-header .asnc-menu-panel .asnc-mobile-actions .asnc-mobile-booking-trigger {
        background: #1469E8 !important;
        border-color: #1469E8 !important;
        color: #fff !important;
        box-shadow: 0 8px 20px rgba(20, 105, 232, .22);
    }
    .asnc-header .asnc-menu-panel .asnc-mobile-actions .asnc-mobile-booking-trigger span {
        color: #fff !important;
    }
    .asnc-header .asnc-menu-panel .asnc-mobile-actions .asnc-mobile-booking-trigger:hover,
    .asnc-header .asnc-menu-panel .asnc-mobile-actions .asnc-mobile-booking-trigger:focus-visible,
    .asnc-header .asnc-menu-panel .asnc-mobile-actions .asnc-mobile-booking-trigger.is-active {
        background: #1058C4 !important;
        border-color: #1058C4 !important;
        color: #fff !important;
        box-shadow: 0 10px 24px rgba(20, 105, 232, .27);
    }
    .asnc-header .asnc-menu-panel .asnc-mobile-actions .asnc-mobile-booking-trigger:focus-visible {
        outline: 2px solid #1058C4;
        outline-offset: 3px;
    }
}
