@font-face {
    font-family: SiteChinese;
    src: url('fonts/SiteChinese.woff2') format('woff2');
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: SiteCyrillic;
    src: url('fonts/SiteCyrillic.woff2') format('woff2');
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: SiteArabic;
    src: url('fonts/SiteArabic.woff2') format('woff2');
    font-weight: 200 1000;
    font-style: normal;
    font-display: swap;
}
html[lang='zh'] body {
    font-family: Barlow, SiteChinese, 'Microsoft YaHei', sans-serif;
}
html[lang='ru'] body {
    font-family: Barlow, SiteCyrillic, Arial, sans-serif;
}
html[lang='ar'] body {
    font-family: Barlow, SiteArabic, Arial, sans-serif;
}
html[lang='zh']
    :is(
        h1,
        h2,
        h3,
        h4,
        .site-header nav,
        .button,
        .header-quote,
        .system-tabs button,
        .stat-counter,
        .catalogue-sidebar nav,
        .catalogue-pagination,
        .document-nav nav,
        .detail-section-nav,
        .wa-inline
    ) {
    font-family: Rajdhani, SiteChinese, sans-serif;
}
html[lang='ru']
    :is(
        h1,
        h2,
        h3,
        h4,
        .site-header nav,
        .button,
        .header-quote,
        .system-tabs button,
        .stat-counter,
        .catalogue-sidebar nav,
        .catalogue-pagination,
        .document-nav nav,
        .detail-section-nav,
        .wa-inline
    ) {
    font-family: Rajdhani, SiteCyrillic, sans-serif;
}
html[lang='ar']
    :is(
        h1,
        h2,
        h3,
        h4,
        .site-header nav,
        .button,
        .header-quote,
        .system-tabs button,
        .stat-counter,
        .catalogue-sidebar nav,
        .catalogue-pagination,
        .document-nav nav,
        .detail-section-nav,
        .wa-inline
    ) {
    font-family: Rajdhani, SiteArabic, sans-serif;
    letter-spacing: 0;
}
html[lang='zh'] .hero-copy h1 {
    font-size: clamp(40px, 3.7vw, 65px);
    line-height: 1.2;
    letter-spacing: 0;
    text-transform: none;
}
html[lang='ru'] .hero-copy h1,
html[lang='es'] .hero-copy h1 {
    font-size: clamp(40px, 3.8vw, 66px);
    line-height: 1.08;
}
html[lang='ar'] .hero-copy h1 {
    font-size: clamp(40px, 3.65vw, 62px);
    line-height: 1.4;
    text-transform: none;
    letter-spacing: 0;
}
html[lang='zh'] :is(.inner-hero h1, .inner-enquiry h2, .detail-specifications h2) {
    line-height: 1.25;
    letter-spacing: 0;
}
html[lang='ar'] :is(.inner-hero h1, .inner-enquiry h2, .detail-specifications h2) {
    line-height: 1.4;
}
html[lang='ar']
    :is(
        .eyebrow,
        .section-number,
        .product-category,
        .catalogue-card-meta,
        .detail-gallery-heading,
        .detail-category-links,
        .detail-facts span,
        .catalogue-search label
    ) {
    letter-spacing: 0;
    line-height: 1.8;
}
html[lang='ar'] .site-header nav {
    margin-left: 0;
    margin-inline-start: auto;
    font-size: 18px;
}
html[lang='ar'] .language-options {
    right: auto;
    left: 0;
    direction: ltr;
    text-align: left;
}
.language-switch summary {
    direction: ltr;
}
html[lang='ar'] .hero-copy {
    text-align: right;
    direction: rtl;
}
html[lang='ar'] .slide-controls {
    margin-left: 0;
    margin-inline-start: auto;
    direction: ltr;
}
html[lang='ar'] .brand-marquee,
html[lang='ar'] .brand-track,
html[lang='ar'] .brand-group {
    direction: ltr;
}
html[lang='ar'] .counter-reels,
html[lang='ar'] .stat-counter {
    direction: ltr;
    unicode-bidi: isolate;
}
html[lang='ar'] .topbar .container > div {
    direction: ltr;
}
html[lang='ar'] .detail-facts strong {
    unicode-bidi: plaintext;
}
html[lang='ar'] :is(.catalogue-card h3, .detail-copy h1, .specification-table-wrap td) {
    unicode-bidi: plaintext;
}
html[lang='ar'] input[type='email'],
html[lang='ar'] :is(a[href^='mailto:'], a[href^='tel:']) {
    direction: ltr;
    unicode-bidi: isolate;
}
html[lang='ar'] .document-body summary {
    padding-inline: 0 42px;
}
html[lang='ar'] .fact-location {
    margin-left: 0;
}
html:not([lang='en']) .hero {
    min-height: 650px;
    height: auto;
}
html:not([lang='en']) .hero-panel {
    min-height: 650px;
    padding-block: 58px 100px;
}
html:not([lang='en']) .hero-copy {
    padding-top: 0;
    padding-bottom: 0;
}
html:not([lang='en']) .hero-bottom {
    min-height: 55px;
}
html:not([lang='en']) .hero .hero-photo {
    height: 100%;
}
html:not([lang='en']) .hero-copy .button {
    max-width: 100%;
    white-space: normal;
    text-align: center;
}
html[lang='zh'] .inner-hero h1 {
    font-size: clamp(38px, 4.3vw, 65px);
}
html[lang='ar'] .inner-hero h1 {
    font-size: clamp(38px, 4vw, 62px);
}
html[lang='zh'] .inner-hero-description {
    line-height: 1.9;
}
html[lang='ar'] .detail-order-note h3 {
    line-height: 1.4;
}
html[lang='ar'] .inner-quote-form :is(input, textarea) {
    font-family: Barlow, SiteArabic, sans-serif;
}
html[lang='zh'] .inner-quote-form :is(input, textarea) {
    font-family: Barlow, SiteChinese, sans-serif;
}
html[lang='ru'] .inner-quote-form :is(input, textarea) {
    font-family: Barlow, SiteCyrillic, sans-serif;
}
@media (max-width: 1100px) {
    html[lang='ar'] .header-quote {
        margin-left: 0;
        margin-inline-start: auto;
    }
    html:not([lang='en']) .hero-panel {
        min-height: 630px;
    }
    html:not([lang='en']) .hero {
        min-height: 630px;
    }
}
@media (max-width: 760px) {
    html:not([lang='en']) .hero {
        height: auto;
        min-height: 0;
    }
    html:not([lang='en']) .hero-panel {
        min-height: 0;
        padding-block: 34px 38px;
    }
    html:not([lang='en']) .hero-copy {
        padding: 0;
    }
    html[lang='zh'] .hero-copy h1 {
        font-size: 43px;
        line-height: 1.25;
    }
    html[lang='ru'] .hero-copy h1,
    html[lang='es'] .hero-copy h1 {
        font-size: 44px;
        line-height: 1.1;
    }
    html[lang='ar'] .hero-copy h1 {
        font-size: 40px;
        line-height: 1.4;
    }
    html:not([lang='en']) .hero .hero-photo {
        height: 255px;
    }
    html:not([lang='en']) .hero-bottom {
        padding-block: 14px;
        gap: 14px;
    }
    html:not([lang='en']) .hero-bottom > p:first-child {
        max-width: 52%;
        font-size: 9px;
        line-height: 1.6;
    }
    html[lang='zh'] .inner-hero h1 {
        font-size: 39px;
    }
    html[lang='ar'] .inner-hero h1 {
        font-size: 37px;
    }
    html:not([lang='en']) .inner-enquiry h2 {
        font-size: 35px;
    }
    html[lang='ar'] .site-header nav {
        margin: 0;
    }
    html[lang='ar'] .about .fact-small {
        padding-left: 0;
        padding-inline-start: 20px;
    }
    html[lang='ar'] .contact h2 {
        font-size: 52px;
        line-height: 1.4;
    }
    html[lang='zh'] .contact h2 {
        font-size: 49px;
        line-height: 1.2;
    }
    html:not([lang='en']) .contact-email {
        font-size: 23px;
    }
}
@media (max-width: 420px) {
    html[lang='zh'] .hero-copy h1 {
        font-size: 39px;
    }
    html[lang='ru'] .hero-copy h1,
    html[lang='es'] .hero-copy h1 {
        font-size: 41px;
    }
    html[lang='ar'] .hero-copy h1 {
        font-size: 36px;
    }
    html:not([lang='en']) .hero .hero-photo {
        height: 225px;
    }
    html:not([lang='en']) .inner-hero h1 {
        font-size: 36px;
    }
    html:not([lang='en']) .detail-copy h1 {
        font-size: 30px;
    }
}
.honeypot {
    display: none !important;
}
.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;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
    border: 0 !important;
    left: auto !important;
    right: auto !important;
}
@media (max-width: 760px) {
    html:not([lang='en']) .hero-panel {
        padding: 0;
        display: block;
    }
    html:not([lang='en']) .hero-copy {
        width: 100%;
        padding: 34px 20px 38px;
    }
}

@media (max-width: 420px) {
    html:not([lang='en']) .logo small {
        max-width: 82px;
        font-size: 5.5px;
        letter-spacing: 0.2px;
        line-height: 1.35;
        white-space: normal;
    }
    html[lang='ru'] .process h2 {
        font-size: 36px;
    }
    html[lang='ru'] .process h2 em {
        overflow-wrap: anywhere;
    }
}
@media (max-width: 360px) {
    html[lang='ru'] .process h2 {
        font-size: 33px;
    }
}

html:not([lang='en']) .hero-copy h1 em {
    white-space: normal;
    overflow-wrap: break-word;
}
@media (max-width: 1000px) {
    html[lang='ru'] .process h2 {
        font-size: 36px;
    }
    .inner-quote-form .form-row {
        grid-template-columns: 1fr;
        gap: 0;
    }
}
@media (max-width: 360px) {
    html[lang='ru'] .process h2 {
        font-size: 33px;
    }
}
@media (max-width: 760px) {
    body:has(#quote-form:focus-within) .whatsapp-float,
    body:has(#quote-form:focus-within) .back-to-top {
        visibility: hidden;
    }
}

@media (min-width: 1251px) and (max-width: 1400px) {
    html[lang='ru'] .site-header {
        gap: 16px;
        padding-inline: 30px;
    }
    html[lang='ru'] .site-header nav {
        font-size: 19px;
        gap: 18px;
    }
    html[lang='ru'] .header-quote {
        font-size: 17px;
        padding-inline: 18px;
    }
}
@media (min-width: 1001px) and (max-width: 1250px) {
    .site-header {
        height: 84px;
        padding-inline: 30px;
        gap: 20px;
    }
    .site-header nav {
        display: none;
        position: absolute;
        top: 84px;
        left: 0;
        right: 0;
        background: #fff;
        height: auto;
        padding: 15px 30px;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        margin: 0;
        box-shadow: 0 8px 10px #0001;
    }
    .site-header nav.open {
        display: flex;
    }
    .site-header nav a {
        height: auto;
        padding: 15px 0;
        font-size: 20px;
    }
    .site-header nav .active:after {
        display: none;
    }
    .search-toggle {
        display: none;
    }
    .language-switch {
        margin-inline-start: auto;
    }
    .site-header .header-quote {
        margin: 0;
    }
    .menu-toggle {
        display: flex;
        flex-direction: column;
        gap: 6px;
        background: none;
        border: 0;
        padding: 10px 0 10px 4px;
    }
    .menu-toggle span {
        width: 21px;
        height: 2px;
        background: var(--ink);
    }
    html[dir='rtl'] .site-header nav {
        margin: 0;
    }
}

#gallery-position,
#lightbox-position {
    direction: ltr;
    unicode-bidi: isolate;
}
@media (max-width: 1250px) {
    html[lang='ar'] .site-header {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto auto 44px;
        align-items: center;
        gap: 16px;
        height: 84px;
        padding-inline: 24px;
    }
    html[lang='ar'] .site-header .logo {
        grid-column: 1;
        grid-row: 1;
        justify-self: start;
        min-width: 0;
    }
    html[lang='ar'] .site-header .language-switch {
        grid-column: 2;
        grid-row: 1;
        margin: 0;
        justify-self: center;
    }
    html[lang='ar'] .site-header .header-quote {
        grid-column: 3;
        grid-row: 1;
        margin: 0;
        min-height: 44px;
        align-items: center;
        justify-content: center;
        padding: 10px 18px;
        font-size: 16px;
        gap: 0;
        white-space: nowrap;
    }
    html[lang='ar'] .site-header .menu-toggle {
        grid-column: 4;
        grid-row: 1;
        align-items: center;
        justify-content: center;
        width: 44px;
        height: 44px;
        padding: 0;
        margin: 0;
    }
    html[lang='ar'] .site-header nav {
        top: calc(100% - 1px);
        left: 24px;
        right: auto;
        width: min(360px, calc(100vw - 48px));
        height: auto;
        margin: 0;
        padding: 8px 0;
        border: 1px solid var(--line);
        border-top: 3px solid var(--red);
        box-shadow: 0 14px 24px #20282a12;
        align-items: stretch;
        gap: 0;
        z-index: 15;
        text-align: right;
    }
    html[lang='ar'] .site-header nav a {
        height: auto;
        min-height: 52px;
        margin: 0;
        padding: 12px 22px;
        justify-content: flex-start;
        font-size: 18px;
        line-height: 1.55;
        border-bottom: 1px solid #11111108;
    }
    html[lang='ar'] .site-header nav a:last-child {
        border-bottom: 0;
    }
    html[lang='ar'] .site-header nav a.active {
        background: #f6f1ed;
        border-inline-start: 3px solid var(--red);
        padding-inline-start: 19px;
    }
    html[lang='ar'] .site-header nav a.active:after {
        display: none;
    }
    html[lang='ar'] .site-header .language-options {
        left: 0;
        right: auto;
        top: calc(100% + 12px);
    }
}
@media (max-width: 760px) {
    html[lang='ar'] .site-header {
        grid-template-columns: minmax(0, 1fr) auto 44px;
        height: 78px;
        gap: 12px;
        padding-inline: 20px;
    }
    html[lang='ar'] .site-header .header-quote {
        display: none;
    }
    html[lang='ar'] .site-header .menu-toggle {
        grid-column: 3;
    }
    html[lang='ar'] .site-header nav {
        left: 20px;
        right: 20px;
        width: auto;
        max-height: calc(100dvh - 110px);
        overflow: auto;
    }
    html[lang='ar'] .site-header nav a {
        min-height: 50px;
        font-size: 17px;
        padding-block: 11px;
    }
}
@media (max-width: 360px) {
    html[lang='ar'] .site-header {
        padding-inline: 16px;
        gap: 8px;
    }
    html[lang='ar'] .site-header nav {
        left: 16px;
        right: 16px;
    }
}
@media (max-width: 360px) {
    .interior-page .site-header .logo {
        min-width: 0;
        flex: 1 1 0;
    }
    .interior-page .site-header .logo > span {
        min-width: 0;
    }
    .interior-page .site-header .logo small {
        max-width: 90px;
        white-space: normal;
        overflow-wrap: anywhere;
        line-height: 1.3;
    }
    .interior-page .site-header .language-switch,
    .interior-page .site-header .menu-toggle {
        flex-shrink: 0;
    }
}
