:root {
    --blue: #006db8;
    --blue-dark: #001e34;
    --ink: #06101f;
    --text: #0f172a;
    --muted: #64748b;
    --line: #dbe5ef;
    --soft: #f4f8fb;
    --ice: #eaf5fc;
    --white: #ffffff;
    --radius: 8px;
    --container: 1420px;
}

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
}

body {
    margin: 0;
    color: var(--text);
    background: var(--white);
    font-family: Poppins, "Plus Jakarta Sans", Arial, "Helvetica Neue", Helvetica, sans-serif;
    font-size: 16px;
    line-height: 1.6;
    overflow-x: hidden;
}

body.is-inquiry-open {
    overflow: hidden;
}

body.admin-bar .site-header {
    top: 32px;
}

img {
    display: block;
    max-width: 100%;
    height: auto;
}

a {
    color: inherit;
    text-decoration: none;
}

a:focus-visible,
button:focus-visible {
    outline: 3px solid rgba(0, 109, 184, .35);
    outline-offset: 3px;
}

.skip-link {
    position: fixed;
    left: 16px;
    top: 8px;
    z-index: 9999;
    transform: translateY(-150%);
    background: var(--ink);
    color: #fff;
    padding: 10px 14px;
    border-radius: var(--radius);
}

.skip-link:focus {
    transform: translateY(0);
}

.container {
    width: min(var(--container), calc(100% - 48px));
    margin-inline: auto;
}

.site-header {
    position: fixed;
    inset: 0 0 auto;
    z-index: 1000;
    padding-top: 16px;
    background: transparent;
    border: 0;
    transition: transform .25s ease;
}

.site-header--overlay:not(.is-scrolled),
.site-header.is-scrolled {
    padding-top: 0;
    background: transparent;
    box-shadow: none;
}

.site-header--overlay:not(.is-scrolled) .nav-shell,
.site-header.is-scrolled .nav-shell {
    width: 100%;
    padding-right: clamp(24px, 5vw, 96px);
    padding-left: clamp(24px, 5vw, 96px);
    border-right: 0;
    border-left: 0;
    border-radius: 0;
    background: linear-gradient(108deg, rgba(255, 255, 255, .9), rgba(232, 244, 252, .78));
    border-color: rgba(255, 255, 255, .82);
    box-shadow: none;
}

.nav-shell,
.primary-nav,
.footer-bottom,
.header-actions {
    display: flex;
    align-items: center;
}

.nav-shell {
    min-height: 74px;
    padding: 0 26px;
    justify-content: space-between;
    gap: 30px;
    border: 1px solid rgba(126, 170, 204, .42);
    border-radius: 22px;
    background: linear-gradient(108deg, rgba(255, 255, 255, .96), rgba(237, 247, 253, .9));
    box-shadow: 0 10px 26px rgba(0, 45, 83, .08), inset 0 1px 0 rgba(255, 255, 255, .72);
    -webkit-backdrop-filter: blur(20px) saturate(118%);
    backdrop-filter: blur(20px) saturate(118%);
    transition: background .25s ease, border-color .25s ease, box-shadow .25s ease;
}

.brand img {
    width: 166px;
    max-height: 38px;
    object-fit: contain;
}

.primary-nav {
    gap: clamp(16px, 2vw, 34px);
    font-size: 16px;
    font-weight: 600;
    color: #263649;
}

.primary-nav > li,
.footer-grid .menu > li {
    margin: 0;
    padding: 0;
    list-style: none;
}

.footer-grid .menu {
    margin: 0;
    padding: 0;
    list-style: none;
}

.primary-nav a,
.primary-nav__item {
    position: relative;
    min-height: 42px;
    padding: 0 2px;
    display: inline-flex;
    align-items: center;
    border-radius: 6px;
    background: transparent;
    transition: color .2s ease;
}

.primary-nav a::after {
    content: "";
    position: absolute;
    right: 2px;
    bottom: 2px;
    left: 2px;
    height: 2px;
    background: var(--blue);
    transform: scaleX(0);
    transform-origin: center;
    transition: transform .2s ease;
}

.primary-nav a:hover,
.primary-nav a.is-active {
    color: var(--blue);
    background: transparent;
}

.primary-nav a.is-active::after {
    transform: scaleX(1);
}

.primary-nav > .products-mega-nav-item {
    position: relative;
}

.primary-nav > .products-mega-nav-item::after {
    position: absolute;
    top: calc(100% - 8px);
    left: -8px;
    z-index: 1099;
    width: calc(100% + 16px);
    height: 32px;
    content: "";
}

.primary-nav > .products-mega-nav-item > a {
    gap: 7px;
}

.primary-nav > .products-mega-nav-item > a::before {
    width: 6px;
    height: 6px;
    margin-top: -3px;
    content: "";
    border-right: 1.5px solid currentColor;
    border-bottom: 1.5px solid currentColor;
    transform: rotate(45deg);
    transition: transform .2s ease;
}

.primary-nav > .products-mega-nav-item:hover > a::before,
.primary-nav > .products-mega-nav-item:focus-within > a::before {
    margin-top: 3px;
    transform: rotate(225deg);
}

.products-mega-menu {
    --products-mega-gutter: clamp(20px, 1.7vw, 32px);
    position: fixed;
    top: 73px;
    left: calc(50% - 135px);
    z-index: 1100;
    width: min(100vw, calc(var(--products-mega-gutter) + 720px));
    pointer-events: none;
    visibility: hidden;
    overflow: hidden;
    border: 0;
    border-radius: 0;
    background: #f7fbfd;
    box-shadow: 0 18px 34px rgba(0, 33, 68, .16);
    opacity: 0;
    transform: translate(-50%, -8px);
    transition: opacity .2s ease, transform .2s ease, visibility .2s ease;
}

.products-mega-menu::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: calc(var(--products-mega-gutter) + 380px);
    content: "";
    background: #1479a9;
}

.primary-nav > .products-mega-nav-item:hover .products-mega-menu,
.primary-nav > .products-mega-nav-item:focus-within .products-mega-menu {
    pointer-events: auto;
    visibility: visible;
    opacity: 1;
    transform: translate(-50%, 0);
}

.products-mega-menu__panel {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(280px, 380px) minmax(0, 1fr);
    width: 100%;
    min-height: 540px;
    max-height: calc(100vh - 73px);
    margin-inline: 0;
    padding: 0 0 0 var(--products-mega-gutter);
}

.products-mega-menu__primary {
    display: flex;
    min-height: 0;
    flex-direction: column;
    padding: 30px 28px 24px 0;
    color: #fff;
    background: #1479a9;
}

.products-mega-menu__title {
    position: relative;
    margin: 0 0 24px;
    padding-bottom: 13px;
    color: #fff;
    font-size: 23px;
    font-weight: 800;
    line-height: 1.2;
}

.products-mega-menu__title::after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 42px;
    height: 3px;
    content: "";
    border-radius: 999px;
    background: #d2eef9;
}

.products-mega-menu__category-list {
    display: grid;
    gap: 3px;
    min-height: 0;
    overflow: hidden;
}

.products-mega-menu__category {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 18px;
    width: 100%;
    min-height: 44px;
    align-items: center;
    gap: 10px;
    padding: 8px 14px;
    border: 1px solid transparent;
    border-radius: 5px;
    color: rgba(255, 255, 255, .94);
    background: transparent;
    font: inherit;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.3;
    text-align: left;
    cursor: pointer;
    transition: border-color .2s ease, background .2s ease, color .2s ease;
}

.products-mega-menu__category::before {
    display: none;
}

.products-mega-menu__category svg {
    width: 18px;
    min-width: 18px;
    height: 18px;
}

.products-mega-menu__category:hover,
.products-mega-menu__category:focus-visible,
.products-mega-menu__category.is-active {
    color: #fff;
    background: rgba(255, 255, 255, .14);
}

.products-mega-menu__category.is-active {
    border-color: transparent;
    background: rgba(4, 99, 151, .5);
    box-shadow: none;
}

.products-mega-menu__category:focus-visible {
    outline: 2px solid #d1f2ff;
    outline-offset: -3px;
}

.products-mega-menu__secondary {
    display: flex;
    min-height: 0;
    padding: 0;
    overflow: hidden;
    background: #f7fbfd;
}

.products-mega-menu__products:not([hidden]) {
    display: block;
    min-height: 100%;
    width: 100%;
}

.products-mega-menu__product-list {
    display: flex;
    min-width: 0;
    min-height: 100%;
    flex-direction: column;
    padding: 24px 22px;
    gap: 3px;
    background: #eaf4f9;
}

.products-mega-menu__product-list a {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 12px;
    min-height: 46px;
    padding: 10px 12px;
    align-items: center;
    gap: 12px;
    border: 1px solid transparent;
    border-radius: 5px;
    color: #24526e;
    background: transparent;
    box-shadow: none;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.45;
    transition: border-color .2s ease, background .2s ease, box-shadow .2s ease, color .2s ease, transform .2s ease;
}

.products-mega-menu__product-list a::after {
    position: static;
    display: block;
    width: 7px;
    height: 7px;
    margin: 0;
    border-top: 1.5px solid currentColor;
    border-right: 1.5px solid currentColor;
    background: transparent;
    transform: rotate(45deg);
}

.products-mega-menu__product-list a:hover,
.products-mega-menu__product-list a:focus-visible {
    color: #075486;
    border-color: rgba(33, 126, 171, .22);
    background: #ffffff;
    box-shadow: 0 4px 12px rgba(22, 83, 122, .08);
    transform: none;
}

.products-mega-menu__empty {
    max-width: none;
    min-height: 100%;
    margin: 0;
    padding: 24px 22px;
    border: 0;
    border-radius: 0;
    color: #5c7185;
    background: #eaf4f9;
    font-size: 15px;
    line-height: 1.6;
}

@media (max-width: 960px) {
    .primary-nav > .products-mega-nav-item::after,
    .primary-nav > .products-mega-nav-item > a::before,
    .products-mega-menu {
        display: none;
    }
}

.btn,
.product-pane a:not(.product-directory__link) {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    font-weight: 800;
    transition: transform .2s ease, background .2s ease, border-color .2s ease, color .2s ease;
}

.header-actions {
    gap: 10px;
}

.header-search {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 44px;
}

.header-search__trigger {
    position: relative;
    display: inline-flex;
    width: 44px;
    height: 44px;
    min-height: 44px;
    min-width: 44px;
    padding: 0;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 14px;
    background: rgba(0, 109, 184, .08);
    color: var(--blue-dark);
    font: inherit;
    font-size: 14px;
    font-weight: 800;
    cursor: default;
    box-shadow: none;
    transition: background .2s ease, color .2s ease, opacity .2s ease;
}

.header-search__trigger svg,
.header-search__form button svg {
    width: 19px;
    height: 19px;
}

.header-search__trigger svg {
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.header-search__trigger:hover {
    background: rgba(0, 109, 184, .14);
    color: var(--blue);
}

.btn-primary:hover,
.product-pane a:not(.product-directory__link):hover {
    background: #005a98;
    transform: translateY(-1px);
}

.header-contact {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 22px;
    border: 1px solid var(--blue);
    border-radius: 15px;
    background: var(--blue);
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 8px 16px rgba(0, 109, 184, .18);
    transition: background .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.header-contact:hover {
    border-color: #005a98;
    background: #005a98;
    box-shadow: 0 10px 20px rgba(0, 109, 184, .24);
    transform: translateY(-1px);
}

.header-search__form {
    position: absolute;
    top: 50%;
    right: 0;
    display: flex;
    width: 0;
    height: 44px;
    padding: 0;
    overflow: hidden;
    align-items: center;
    border: 1px solid transparent;
    border-radius: 999px;
    background: #fff;
    opacity: 0;
    pointer-events: none;
    transform: translateY(-50%);
    transition: width .24s ease, opacity .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.header-search.is-open .header-search__trigger {
    opacity: 0;
    pointer-events: none;
}

.header-search.is-open .header-search__form {
    width: 238px;
    padding: 0 5px 0 14px;
    border-color: var(--line);
    opacity: 1;
    pointer-events: auto;
    box-shadow: 0 10px 24px rgba(6, 16, 31, .12);
}

.header-search__form input {
    width: 100%;
    min-width: 0;
    height: 100%;
    padding: 0 8px 0 0;
    border: 0;
    outline: 0;
    color: var(--ink);
    font: inherit;
    font-size: 16px;
}

.header-search__form input::placeholder {
    color: var(--muted);
}

.header-search__form button {
    display: grid;
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    padding: 0;
    place-items: center;
    border: 0;
    border-radius: 50%;
    background: var(--blue);
    color: #fff;
    cursor: pointer;
}

.nav-toggle {
    display: none;
    width: 46px;
    height: 46px;
    padding: 10px;
    border: 1px solid var(--line);
    border-radius: var(--radius);
    background: #fff;
}

.nav-toggle span {
    display: block;
    height: 2px;
    margin: 6px 0;
    background: var(--ink);
}

.hero {
    position: relative;
    min-height: 100svh;
    height: 100svh;
    margin-top: 0;
    overflow: hidden;
    background: var(--ink);
    touch-action: pan-y;
}

.hero__bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transform: scale(1.08);
    transition: opacity .8s ease, transform 1.4s cubic-bezier(.22, 1, .36, 1);
    pointer-events: none;
    object-fit: cover;
    object-position: center;
}

.hero.is-visible .hero__bg.is-active {
    opacity: 1;
    transform: scale(1);
}

.hero__poster-canvas {
    position: absolute;
    top: 50%;
    left: 50%;
    width: max(100%, calc((100svh - 74px) * 8 / 3));
    aspect-ratio: 8 / 3;
    transform: translate(-50%, -50%);
    container-type: inline-size;
}

.hero__poster-canvas > img {
    display: block;
    width: 100%;
    height: auto;
}

.hero__poster-title {
    position: absolute;
    top: 6.1%;
    left: 0;
    width: 100%;
    margin: 0;
    color: #fff;
    font-family: Arial, sans-serif;
    font-size: 1.95cqw;
    font-weight: 900;
    line-height: 1.2;
    text-align: center;
}

.hero__poster.is-active .hero__poster-title,
.hero__poster.is-active .hero__poster-contact,
.hero__poster.is-active .hero__product-title,
.hero__poster.is-active .hero__product-subtitle,
.hero__poster.is-active .hero__factory-title,
.hero__poster.is-active .hero__factory-subtitle,
.hero__poster.is-active .hero__factory-feature span {
    pointer-events: auto;
    -webkit-user-select: text;
    user-select: text;
    cursor: text;
}

.hero__poster-title span {
    color: #003c85;
}

.hero__poster-contact {
    position: absolute;
    margin: 0;
    color: #fff;
    font-family: Arial, sans-serif;
    font-size: .88cqw;
    font-weight: 400;
    line-height: 1.5;
    text-align: center;
    white-space: nowrap;
}

.hero__poster-contact--one {
    top: 78%;
    left: 21%;
    width: 16%;
}

.hero__poster-contact--two {
    top: 76.8%;
    left: 39.3%;
    width: 16.8%;
}

.hero__poster-contact--three {
    top: 76.3%;
    left: 58.7%;
    width: 21%;
}

.hero__product-title,
.hero__product-subtitle {
    position: absolute;
    left: 0;
    width: 100%;
    margin: 0;
    color: #fff;
    font-family: Arial, sans-serif;
    line-height: 1.2;
    text-align: center;
    white-space: nowrap;
}

.hero__product-title {
    top: 6.4%;
    font-size: 4.8cqw;
    font-weight: 700;
}

.hero__product-subtitle {
    top: 24.8%;
    font-size: 1.55cqw;
    font-weight: 400;
}

.hero__product-divider {
    position: absolute;
    top: 21%;
    left: 24.5%;
    width: 48%;
    height: 1px;
    background: rgba(255, 255, 255, .5);
}

.hero__product-divider::after {
    position: absolute;
    top: -1px;
    left: 41%;
    width: 24%;
    height: 3px;
    background: #fff;
    content: '';
}

.hero__factory-title,
.hero__factory-subtitle {
    position: absolute;
    left: 0;
    width: 100%;
    margin: 0;
    color: #fff;
    font-family: Arial, sans-serif;
    line-height: 1.2;
    text-align: center;
    white-space: nowrap;
}

.hero__factory-title {
    top: 5.3%;
    font-size: 2.25cqw;
    font-weight: 700;
}

.hero__factory-subtitle {
    top: 12.2%;
    font-size: 1.25cqw;
    font-weight: 400;
}

.hero__factory-features {
    position: absolute;
    top: 61.85%;
    left: 35.45%;
    width: 56.05%;
    height: 7.55%;
    display: grid;
    grid-template-columns: 247fr 247fr 195fr 210fr 234fr;
    gap: .24cqw;
}

.hero__factory-feature {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .35cqw;
    color: #272727;
    font-family: Arial, sans-serif;
    font-size: .75cqw;
    font-weight: 400;
    line-height: 1.2;
    white-space: nowrap;
}

.hero__factory-feature img {
    width: 1.3cqw;
    height: 1.5cqw;
    object-fit: contain;
}

.hero__controls {
    position: absolute;
    z-index: 1;
    right: clamp(24px, 4vw, 72px);
    bottom: 28px;
    display: flex;
    align-items: center;
}

.hero__dots {
    display: flex;
    align-items: center;
    gap: 10px;
}

.hero__dot {
    width: 12px;
    height: 12px;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: rgba(255, 255, 255, .48);
    cursor: pointer;
    transition: width .22s ease, background .22s ease;
}

.hero__dot.is-active {
    width: 32px;
    border-radius: 999px;
    background: #fff;
}

.eyebrow {
    margin: 0 0 16px;
    color: var(--blue);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .02em;
    text-transform: uppercase;
}

h1,
h2,
h3,
p {
    overflow-wrap: anywhere;
}

h1,
h2,
h3 {
    margin: 0;
    line-height: 1.02;
}

h1 {
    max-width: 880px;
    color: #fff;
    font-size: clamp(56px, 7.4vw, 104px);
}

h2 {
    color: var(--text);
    font-size: clamp(38px, 4.4vw, 64px);
}

h3 {
    color: var(--text);
    font-size: 24px;
}

.btn {
    padding: 0 24px;
    border: 1px solid transparent;
}

.btn-primary {
    background: var(--blue);
    color: #fff;
}

.btn-outline {
    border-color: rgba(255, 255, 255, .44);
    color: #fff;
}

.btn-outline:hover {
    border-color: #fff;
    background: rgba(255, 255, 255, .1);
}

.section {
    padding: 120px 0;
}

.section-products {
    padding-top: 0;
    padding-bottom: 48px;
    background: #ffffff;
}

.section-heading {
    max-width: 820px;
    margin-bottom: 48px;
}

.section-heading p:not(.eyebrow),
.section-heading--split > p,
.site-footer p {
    color: var(--muted);
}

.section-heading--split {
    max-width: none;
    display: grid;
    grid-template-columns: minmax(0, 760px) minmax(280px, 430px);
    justify-content: space-between;
    gap: 36px;
    align-items: end;
}

.section-heading h2 {
    position: relative;
    padding-left: 22px;
}

.section-heading h2::before {
    content: "";
    position: absolute;
    left: 0;
    top: .12em;
    width: 5px;
    height: .92em;
    border-radius: 99px;
    background: var(--blue);
}

.product-catalog {
    width: min(1620px, calc(100vw - 88px));
    margin-inline: auto;
}

.product-nav-shell {
    display: flex;
    justify-content: center;
    padding: 0 0 30px;
}

.product-nav {
    display: flex;
    justify-content: center;
    gap: 24px;
    padding: 0;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-behavior: smooth;
    scrollbar-width: none;
    background: transparent;
    cursor: default;
}

.product-nav::-webkit-scrollbar {
    display: none;
}

.product-nav.is-dragging {
    cursor: default;
}

.product-nav-control {
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    padding: 0;
    border: 1px solid rgba(0, 109, 184, .18);
    border-radius: 50%;
    background: #fff;
    color: var(--blue);
    cursor: pointer;
    transition: color .22s ease, background .22s ease, border-color .22s ease, transform .22s ease;
}

.product-nav-control svg {
    width: 22px;
    height: 22px;
}

.product-nav-control:hover,
.product-nav-control:focus-visible {
    border-color: var(--blue);
    background: var(--blue);
    color: #fff;
    transform: translateY(-2px);
}

.product-nav button {
    position: relative;
    flex: 0 0 auto;
    width: 38px;
    height: 9px;
    min-height: 0;
    padding: 0;
    border: 0;
    border-radius: 99px;
    background: #e4e8ed;
    color: transparent;
    font: inherit;
    cursor: pointer;
    transition: width .22s ease, background .22s ease, transform .22s ease;
}

.product-nav button::before {
    content: none;
}

.product-nav button:hover {
    background: #b7c4d1;
    transform: scaleX(1.08);
}

.product-nav button.is-active {
    width: 52px;
    background: var(--blue);
}

.product-pane {
    position: absolute;
    inset: 0;
    isolation: isolate;
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(440px, .85fr);
    overflow: hidden;
    border: 1px solid #dce5ee;
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 20px 52px rgba(10, 38, 72, .08);
    opacity: 0;
    visibility: hidden;
    transform: translateY(12px);
    transition: opacity .35s ease, transform .35s ease, visibility .35s ease;
}

.product-pane::before {
    content: none;
}

.product-pane.is-active {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.product-stage.is-product-forward .product-pane.is-active .product-pane__copy > *,
.product-stage.is-product-backward .product-pane.is-active .product-pane__visual img {
    animation: none;
}

.product-pane__feature::after {
    content: "";
    position: absolute;
    right: -13%;
    bottom: -26%;
    width: 76%;
    height: 74%;
    border: 1px solid rgba(86, 161, 255, .4);
    border-radius: 50%;
    box-shadow: 0 0 0 18px rgba(31, 117, 219, .05), 0 0 0 36px rgba(31, 117, 219, .035);
    pointer-events: none;
}

.product-pane__eyebrow {
    display: inline-flex;
    margin: 0 0 16px;
    padding: 6px 14px;
    border-radius: 99px;
    background: #006db8;
    color: #fff;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .04em;
    line-height: 1.35;
    text-transform: uppercase;
}

.product-pane__copy p {
    max-width: 440px;
    margin: 18px 0 0;
    color: rgba(239, 247, 255, .84);
    font-size: 16px;
    line-height: 1.62;
}

.product-pane__cta {
    margin-top: 28px;
    min-width: 0;
    padding: 0 20px;
    border: 1px solid rgba(84, 177, 255, .85);
    border-radius: 10px;
    background: rgba(0, 72, 142, .14);
    color: #fff;
    font-size: 14px;
    letter-spacing: .02em;
    text-transform: none;
}

.product-pane__cta:hover {
    border-color: #fff;
    background: #1678c7;
}

.product-pane__visual {
    position: absolute;
    right: -2%;
    bottom: 0;
    z-index: 1;
    width: 68%;
    height: 43%;
    padding: 0;
    border-radius: 148px 0 0;
    background: #edf3f8;
    overflow: hidden;
    box-shadow: 0 18px 32px rgba(0, 13, 33, .25);
}

.product-pane__visual--studio {
    inset: 0;
    width: 100%;
    height: 100%;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.product-pane__visual--studio img {
    object-position: center;
}

.product-pane__visual::before {
    content: none;
}

.product-pane__visual img {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: right center;
    filter: none;
}

.product-pane__directory {
    position: relative;
    z-index: 2;
    display: flex;
    min-width: 0;
    flex-direction: column;
    padding: 52px 54px 60px;
    background: #fff;
}

.product-directory__header {
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr);
    gap: 20px;
    align-items: center;
    padding-bottom: 26px;
    border-bottom: 1px solid #d9e3ed;
}

.product-directory__badge {
    width: 76px;
    height: 76px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #eaf5fd;
    color: #0872be;
}

.product-directory__badge svg {
    width: 42px;
    height: 42px;
}

.product-directory__header p {
    margin: 0 0 5px;
    color: #4784b8;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.product-directory__header h3 {
    margin: 0;
    color: #0c3564;
    font-size: clamp(24px, 2.05vw, 34px);
    line-height: 1.22;
    text-wrap: balance;
}

.product-directory__intro {
    max-width: 610px;
    margin: 20px 0 22px;
    color: #52657a;
    font-size: 15px;
    line-height: 1.55;
}

.product-directory__list {
    display: grid;
    flex: 1 1 auto;
    align-content: start;
    grid-auto-rows: 58px;
    min-height: 0;
    margin: 0;
    padding: 0;
    list-style: none;
    overflow-y: hidden;
    scrollbar-color: #b8c9d9 transparent;
    scrollbar-width: thin;
}

.product-directory__list::-webkit-scrollbar {
    width: 6px;
}

.product-directory__list::-webkit-scrollbar-thumb {
    border-radius: 3px;
    background: #b8c9d9;
}

.product-directory__link {
    display: grid;
    grid-template-columns: 26px minmax(0, 1fr) 20px;
    gap: 16px;
    align-items: center;
    box-sizing: border-box;
    height: 100%;
    min-height: 58px;
    padding: 10px 6px;
    border-bottom: 1px solid #dfe7ef;
    color: #1c3e66;
    font-size: 17px;
    font-weight: 600;
    line-height: 1.35;
    text-decoration: none;
}

.product-directory__item-icon {
    width: 23px;
    height: 23px;
    color: #1680ca;
}

.product-directory__item-icon svg,
.product-directory__arrow {
    width: 100%;
    height: 100%;
}

.product-directory__arrow {
    color: #1680ca;
}

.product-stage-controls {
    position: absolute;
    right: 34px;
    bottom: 26px;
    z-index: 4;
    display: flex;
    gap: 12px;
}

.section-stores {
    position: relative;
    z-index: 20;
    scroll-margin-top: 52px;
    padding: 5rem 0;
    overflow: visible;
    background-image: var(--stores-bg-image);
    background-position: center -10px;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    isolation: isolate;
}

.section-stores::before,
.section-stores::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
}

.section-stores::before {
    background:
        linear-gradient(180deg, rgba(4, 16, 33, .42), rgba(4, 16, 33, .2) 34%, rgba(4, 16, 33, .38)),
        linear-gradient(90deg, rgba(7, 32, 56, .34), rgba(7, 32, 56, .1) 40%, rgba(7, 32, 56, .32));
}

.section-stores::after {
    background:
        radial-gradient(circle at 12% 16%, rgba(255, 255, 255, .2), transparent 30%),
        linear-gradient(180deg, rgba(255, 255, 255, .12), rgba(255, 255, 255, 0) 24%);
}

.dubai-stores {
    position: relative;
    z-index: 1;
    width: min(100% - 48px, var(--container));
    margin-inline: auto;
    display: grid;
    gap: 30px;
}

.dubai-stores__titlebar {
    display: grid;
    grid-template-columns: minmax(0, 760px) minmax(280px, 360px);
    justify-content: space-between;
    gap: clamp(24px, 3.6vw, 48px);
    align-items: end;
    padding-bottom: 24px;
    border-bottom: 1px solid rgba(255, 255, 255, .2);
}

.dubai-stores__eyebrow {
    margin: 0 0 12px;
    color: rgba(255, 255, 255, .68);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .18em;
    text-transform: uppercase;
}

.dubai-stores__titlecopy h2 {
    color: #fff;
}

.dubai-stores__summary {
    display: grid;
    gap: 16px;
    justify-items: start;
    padding-top: 8px;
}

.dubai-stores__summary p {
    margin: 0;
    color: rgba(255, 255, 255, .82);
    font-size: 16px;
    line-height: 1.68;
}

.dubai-stores__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 206px;
    min-height: 52px;
    padding: 0 24px;
    border: 1px solid rgba(0, 109, 184, .9);
    border-radius: 999px;
    background: #006db8;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    box-shadow: 0 14px 30px rgba(0, 69, 119, .22);
    transition: transform .22s ease, background .22s ease, border-color .22s ease, box-shadow .22s ease;
}

.dubai-stores__cta:hover {
    background: #005e9f;
    border-color: #005e9f;
    box-shadow: 0 18px 34px rgba(0, 69, 119, .28);
    transform: translateY(-1px);
}

.dubai-store-grid {
    display: grid;
    gap: 18px;
    padding-top: 8px;
}

.dubai-store-card {
    position: sticky;
    top: 96px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    min-width: 0;
    padding: 28px;
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 34px;
    overflow: hidden;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, .72), rgba(244, 249, 255, .62) 58%, rgba(236, 245, 255, .68)),
        rgba(255, 255, 255, .56);
    box-shadow:
        0 22px 54px rgba(5, 24, 47, .2),
        inset 0 1px 0 rgba(255, 255, 255, .34);
    -webkit-backdrop-filter: blur(12px) saturate(1.08);
    -webkit-backdrop-filter: blur(12px) saturate(1.08);
    backdrop-filter: blur(12px) saturate(1.08);
    transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
    isolation: isolate;
}

.dubai-store-card:nth-child(1) {
    background:
        linear-gradient(135deg, rgba(255, 255, 255, .8), rgba(244, 249, 255, .7) 58%, rgba(236, 245, 255, .74)),
        rgba(255, 255, 255, .62);
}

.dubai-store-card:nth-child(2) {
    background:
        linear-gradient(135deg, rgba(255, 255, 255, .68), rgba(244, 249, 255, .58) 58%, rgba(236, 245, 255, .64)),
        rgba(255, 255, 255, .5);
}

.dubai-store-card:nth-child(3) {
    background:
        linear-gradient(135deg, rgba(255, 255, 255, .58), rgba(244, 249, 255, .48) 58%, rgba(236, 245, 255, .54)),
        rgba(255, 255, 255, .42);
}

.dubai-store-card::before,
.dubai-store-card::after {
    content: "";
    position: absolute;
    pointer-events: none;
    z-index: 0;
}

.dubai-store-card::before {
    inset: 0 auto auto 0;
    width: 42%;
    height: 100%;
    background: linear-gradient(180deg, rgba(255, 255, 255, .14), rgba(255, 255, 255, 0));
}

.dubai-store-card::after {
    top: 22px;
    right: 22px;
    width: 180px;
    height: 180px;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(0, 109, 184, .12), rgba(0, 109, 184, 0) 70%);
    opacity: .9;
}

.dubai-store-card:hover {
    transform: translateY(-4px);
    border-color: rgba(0, 109, 184, .22);
    box-shadow:
        0 28px 62px rgba(5, 24, 47, .22),
        inset 0 1px 0 rgba(255, 255, 255, .8);
}

.dubai-store-card__media {
    position: relative;
    order: 2;
    width: calc(58% - 12px);
    aspect-ratio: 8 / 5.5;
    overflow: hidden;
    border-radius: 30px;
    padding: 6px;
    background: linear-gradient(180deg, rgba(255, 255, 255, .85), rgba(226, 237, 248, .98));
    box-shadow:
        0 18px 34px rgba(6, 27, 55, .12),
        inset 0 1px 0 rgba(255, 255, 255, .88);
    z-index: 1;
}

.dubai-store-card__media::after {
    content: "";
    position: absolute;
    inset: 6px;
    border-radius: 26px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .04), rgba(4, 16, 33, .24)),
        linear-gradient(90deg, rgba(255, 255, 255, .02), rgba(255, 255, 255, 0));
    pointer-events: none;
    opacity: .72;
}

.dubai-store-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 26px;
    transition: transform .42s ease, filter .42s ease;
}

.dubai-store-card:hover .dubai-store-card__media img {
    transform: scale(1.035);
    filter: saturate(1.04) contrast(1.02);
}

.dubai-store-card__body {
    order: 1;
    display: grid;
    width: calc(38% - 12px);
    align-content: center;
    gap: 16px;
    padding: 8px 0 8px 4px;
    color: #102235;
    position: relative;
    z-index: 1;
}

.dubai-store-card__topline {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 14px;
    flex-wrap: wrap;
}

.dubai-store-card__index {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    border-radius: 18px;
    background: linear-gradient(180deg, #0b79c8, #005e9f);
    color: #fff;
    font-size: 15px;
    font-weight: 800;
    letter-spacing: .16em;
    box-shadow: 0 14px 26px rgba(0, 109, 184, .22);
}

.dubai-store-card__tag {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 0 16px;
    border-radius: 999px;
    border: 1px solid rgba(0, 109, 184, .08);
    background: rgba(239, 246, 253, .92);
    color: #006db8;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .85);
}

.dubai-store-card__body h3 {
    margin: 0;
    color: #11263d;
    font-size: clamp(28px, 2vw, 36px);
    font-weight: 700;
    line-height: 1.14;
    letter-spacing: -.03em;
    max-width: 100%;
}

.dubai-store-card__lead {
    margin: 0;
    max-width: 100%;
    padding-left: 18px;
    border-left: 3px solid rgba(0, 109, 184, .18);
    color: #006db8;
    font-size: 19px;
    font-weight: 700;
    line-height: 1.48;
}

.dubai-store-card__detail {
    margin: 0;
    max-width: 100%;
    color: #617489;
    font-size: 16px;
    line-height: 1.78;
}

.stores-facts {
    display: none;
}

.section-local-advantages {
    position: relative;
    overflow: hidden;
    min-height: 0;
    height: auto;
    padding: clamp(76px, 7vw, 118px) 0 clamp(84px, 7vw, 116px);
    background-image: var(--local-advantages-bg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    isolation: isolate;
}

.section-local-advantages::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(112deg, rgba(220, 233, 241, .28) 0%, rgba(191, 218, 233, .18) 52%, rgba(224, 235, 241, .26) 100%),
        linear-gradient(180deg, rgba(255, 255, 255, .08), rgba(232, 243, 249, .10));
    pointer-events: none;
}

.local-advantages {
    position: relative;
    z-index: 1;
    display: block;
    height: auto;
    min-height: 0;
    padding: 0;
}

.local-advantages__heading {
    width: min(100%, 700px);
    padding: 0 0 42px;
}

.local-advantages__eyebrow {
    margin: 0 0 12px;
    color: #006db8;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.local-advantages__heading h2 {
    margin: 0;
    color: #123249;
    font-size: clamp(36px, 3vw, 52px);
    font-weight: 700;
    line-height: 1.08;
    letter-spacing: 0;
}

.local-advantages__grid {
    display: grid;
    width: 100%;
    margin: 0;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 14px;
    align-items: stretch;
    min-height: 0;
    overflow: visible;
    border: 0;
    background: none;
}

.local-advantages__feature {
    display: flex;
    position: relative;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    min-width: 0;
    min-height: 356px;
    padding: 36px 32px 34px;
    border: 1px solid rgba(229, 240, 247, .82);
    border-radius: 18px;
    background: rgba(239, 246, 250, .76);
    color: #0d2d44;
    cursor: pointer;
    overflow: hidden;
    text-align: left;
    box-shadow: 0 16px 42px rgba(9, 17, 28, .15);
    -webkit-backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    transition: border-color .28s ease, box-shadow .28s ease, transform .28s ease;
}

.local-advantages__feature::before {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 4px;
    border-radius: 0 0 17px 17px;
    background: #006db8;
}

.local-advantages__feature > span {
    position: relative;
    z-index: 1;
}

.local-advantages__feature:first-child {
    border-left: 1px solid rgba(229, 240, 247, .82);
}

.local-advantages__feature:hover {
    border-color: rgba(255, 255, 255, .96);
    box-shadow: 0 24px 50px rgba(7, 36, 56, .20);
    transform: translateY(-8px);
}

.local-advantages__feature-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
    margin-bottom: 32px;
    border: 1px solid rgba(0, 109, 184, .12);
    border-radius: 18px;
    background: rgba(0, 109, 184, .10);
    color: #006db8;
    transition: background .28s ease, border-color .28s ease, color .28s ease, transform .28s ease;
}

.local-advantages__feature-icon svg {
    width: 30px;
    height: 30px;
}

.local-advantages__feature-copy {
    display: grid;
    min-width: 0;
    width: 100%;
    gap: 16px;
    justify-items: start;
}

.local-advantages__feature-copy strong {
    color: currentColor;
    font-size: 21px;
    font-weight: 700;
    line-height: 1.24;
    letter-spacing: 0;
}

.local-advantages__feature-copy > span:last-child {
    max-height: 190px;
    overflow: visible;
    color: #36576d;
    font-size: 14px;
    line-height: 1.65;
    opacity: 1;
    transform: none;
    transition: color .28s ease;
}

.local-advantages__feature-rule {
    display: block;
    width: 36px;
    height: 2px;
    background: rgba(0, 109, 184, .58);
    opacity: 1;
    transition: width .28s ease, background .28s ease;
}

.section-about,
.cont-plate1 {
    position: relative;
    overflow: hidden;
    min-height: max(calc(100vh - 72px), 860px);
    min-height: max(calc(100svh - 72px), 860px);
    height: auto;
    padding: 0;
    background:
        radial-gradient(circle at 18% 58%, rgba(74, 194, 220, .16), transparent 28%),
        radial-gradient(circle at 70% 80%, rgba(111, 167, 233, .14), transparent 30%),
        linear-gradient(110deg, #edf6fb 0%, #f8fbfe 52%, #eef5fb 100%);
}

.section-about::after {
    display: none;
}

.about-shell,
.plate1-main {
    position: relative;
    z-index: 2;
    width: min(100%, 2048px);
    height: auto;
    min-height: inherit;
    margin-inline: auto;
    padding: var(--andeli-title-clearance, 34px) 0 16px;
}

.about-kicker,
.main-top {
    position: relative;
    z-index: 4;
    margin-left: 10%;
}

.page-lump {
    position: relative;
}

.page-title {
    position: relative;
    z-index: 2;
    margin: 0;
    color: var(--blue);
}

.page-English {
    position: absolute;
    left: 50%;
    right: auto;
    top: 16px;
    bottom: auto;
    z-index: 1;
    margin: 0;
    color: rgba(0, 109, 184, .04);
    font-size: clamp(110px, 11.4vw, 228px);
    font-weight: 900;
    line-height: .78;
    letter-spacing: 0;
    text-transform: uppercase;
    white-space: nowrap;
    transform: translateX(-50%);
}

.about-kicker {
    margin-left: 0;
    text-align: center;
}

.about-kicker .page-lump {
    display: inline-block;
}

.about-building {
    position: absolute;
    left: 0;
    top: calc(var(--andeli-title-clearance, 34px) + var(--andeli-primary-title-size, 42px) + var(--andeli-title-clearance, 34px));
    bottom: 0;
    z-index: 2;
    width: min(53.2vw, 1090px);
    height: auto;
    min-height: 0;
    overflow: hidden;
    pointer-events: none;
}

.about-building::after {
    display: none;
}

.about-building img {
    width: 112%;
    height: 100%;
    max-width: none;
    object-fit: cover;
    object-position: center bottom;
}

.about-main,
.main-cont {
    position: absolute;
    right: 2%;
    top: 10.5%;
    z-index: 4;
    width: min(43vw, 900px);
    margin: 0;
}

.about-card,
.cont-box {
    position: relative;
    z-index: 3;
    width: 100%;
    min-height: 0;
    margin: 0;
    padding: 38px 40px 28px;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.box-title {
    margin: 0;
    color: var(--blue-dark);
    font-size: clamp(26px, 1.85vw, 40px);
    font-weight: 900;
    line-height: 1.1;
}

.about-card h2,
.box-subTitle {
    max-width: 720px;
    margin: 8px 0 0;
    padding: 0;
    color: var(--blue);
    font-size: clamp(30px, 1.96vw, 40px);
    font-weight: 700;
    line-height: 1.14;
}

.about-card h2::before {
    display: none;
}

.about-card p,
.box-text {
    max-width: 860px;
    margin: 18px 0 0;
    color: #5c6878;
    font-size: clamp(16px, .9vw, 17px);
    line-height: 1.68;
}

.about-card__action,
.page-button2 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 54px;
    height: 54px;
    margin-top: 18px;
    border-radius: 999px;
    background: var(--blue);
    color: #fff;
    font-size: 28px;
    font-weight: 800;
}

.page-button2 span {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
}

.page-button2 em {
    position: relative;
    width: 18px;
    height: 2px;
    background: currentColor;
}

.page-button2 em::after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    width: 8px;
    height: 8px;
    border-top: 2px solid currentColor;
    border-right: 2px solid currentColor;
    transform: translateY(-50%) rotate(45deg);
}

.about-stats,
.cont-data {
    position: relative;
    z-index: 3;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    width: calc(100% - 80px);
    margin: 18px 40px 0;
    align-items: start;
}

.about-stats article,
.data-item {
    position: relative;
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    justify-self: start;
    width: min(100%, 238px);
    min-height: 82px;
    padding: 13px 14px 12px 56px;
    border: 1px solid rgba(255, 255, 255, .58);
    border-radius: 30px;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, .52), rgba(255, 255, 255, .22)),
        rgba(255, 255, 255, .2);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .62),
        0 12px 28px rgba(0, 59, 100, .08);
    -webkit-backdrop-filter: blur(18px) saturate(150%);
    backdrop-filter: blur(18px) saturate(150%);
    -webkit-backdrop-filter: blur(18px) saturate(150%);
}

.data-icon {
    position: absolute;
    left: 14px;
    top: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .34);
    box-shadow: inset 0 0 0 1px rgba(0, 109, 184, .08);
    color: var(--blue);
}

.data-icon svg {
    width: 17px;
    height: 17px;
}

.item-title {
    display: flex;
    align-items: flex-start;
    min-height: 0;
    margin: 0;
    white-space: nowrap;
}

.about-stats strong,
.num1 {
    display: inline-block;
    color: var(--blue);
    font-size: clamp(32px, 2vw, 42px);
    font-weight: 900;
    line-height: .86;
    letter-spacing: 0;
}

.item-title i,
.item-title em {
    display: inline-block;
    margin-left: 4px;
    color: var(--blue);
    font-size: clamp(18px, 1.02vw, 22px);
    font-style: normal;
    font-weight: 900;
    line-height: 1;
    transform: translateY(-.12em);
}

.about-stats .item-text,
.item-text {
    display: block;
    margin: 8px 0 0;
    color: var(--blue-dark);
    font-size: clamp(15px, .86vw, 17px);
    font-weight: 800;
    line-height: 1.08;
}

.about-certifications {
    display: none;
}

.about-certifications span {
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    padding: 0 14px;
    border: 1px solid rgba(0, 109, 184, .18);
    border-radius: 999px;
    background: #fff;
    color: var(--blue-dark);
    font-weight: 900;
}

.about-workshop-transition {
    height: clamp(36px, 3vw, 48px);
    background: #ecf4fc;
}

.section-workshop {
    --workshop-bg-image: none;
    position: relative;
    isolation: isolate;
    overflow: hidden;
    min-height: calc(100vh - 72px);
    min-height: calc(100svh - 72px);
    margin-top: 0;
    padding: 0;
    background: #0c1c2f;
}

.section-workshop::before,
.section-workshop::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
}

.section-workshop::before {
    z-index: 0;
    background-image: var(--workshop-bg-image);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    opacity: 1;
    transform: none;
    filter: saturate(1.04) contrast(1.01) brightness(1.08);
    transition: transform .72s cubic-bezier(.22, 1, .36, 1), filter .72s cubic-bezier(.22, 1, .36, 1), opacity .42s ease;
}

.section-workshop::after {
    z-index: 1;
    background:
        linear-gradient(180deg, rgba(7, 18, 30, .72) 0%, rgba(7, 18, 30, .42) 10%, rgba(7, 18, 30, .08) 30%, rgba(7, 18, 30, .12) 100%),
        linear-gradient(90deg, rgba(7, 18, 30, .08) 0%, rgba(7, 18, 30, .04) 34%, rgba(7, 18, 30, 0) 60%, rgba(7, 18, 30, .04) 100%);
}

.section-workshop.is-workshop-changing::before {
    opacity: .78;
    transform: none;
    filter: saturate(1.02) contrast(1) brightness(1.02);
}

.workshop-showcase {
    position: relative;
    z-index: 2;
    isolation: isolate;
    width: min(1620px, calc(100vw - 88px));
    min-height: calc(100vh - 72px);
    min-height: calc(100svh - 72px);
    margin-inline: auto;
    padding: 28px 0 22px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 24px;
}

.workshop-stage {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 36px;
}

.workshop-heading {
    position: relative;
    z-index: 2;
    max-width: 1080px;
    margin: 0;
    text-align: left;
}

.workshop-heading .eyebrow {
    margin-bottom: 16px;
    color: rgba(255, 255, 255, .86);
    font-size: 12px;
    letter-spacing: .08em;
}

.workshop-heading h2 {
    color: #fff;
    text-wrap: balance;
}

.workshop-controls {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: flex-end;
    gap: 16px;
    margin-left: auto;
}

.workshop-counter {
    position: relative;
    z-index: 2;
    display: inline-flex;
    align-items: baseline;
    gap: 4px;
    padding-top: 18px;
    color: rgba(255, 255, 255, .96);
    font-weight: 800;
    line-height: 1;
    white-space: nowrap;
}

.workshop-navigation {
    display: flex;
    gap: 8px;
    padding-bottom: 2px;
}

.workshop-navigation__button {
    width: 46px;
    height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 999px;
    background: rgba(7, 24, 42, .34);
    color: #fff;
    cursor: pointer;
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
    transition: transform .24s ease, background-color .24s ease, border-color .24s ease;
}

.workshop-navigation__button:hover {
    transform: translateY(-2px);
    border-color: rgba(255, 255, 255, .56);
    background: rgba(43, 137, 225, .76);
}

.workshop-navigation__button:focus-visible {
    outline: 3px solid rgba(255, 255, 255, .46);
    outline-offset: 4px;
}

.workshop-navigation__button svg {
    width: 20px;
    height: 20px;
}

.workshop-counter [data-workshop-current] {
    font-size: clamp(52px, 5vw, 74px);
}

.workshop-counter__sep,
.workshop-counter span:last-child {
    font-size: clamp(22px, 2.2vw, 32px);
    opacity: .78;
}

.workshop-track {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(9, minmax(0, 1fr));
    gap: 12px;
    align-items: stretch;
    overflow: visible;
    padding-bottom: 0;
    scrollbar-width: none;
}

.workshop-track::-webkit-scrollbar {
    display: none;
}

.workshop-track__item {
    position: relative;
    width: 100%;
    height: clamp(112px, 7vw, 144px);
    padding: 0;
    display: block;
    overflow: hidden;
    border: 2px solid rgba(255, 255, 255, .22);
    border-radius: 18px;
    background: #113761;
    font: inherit;
    cursor: pointer;
    box-shadow: 0 18px 40px rgba(4, 11, 18, .14);
    transition: transform .34s cubic-bezier(.22, 1, .36, 1), border-color .34s ease, box-shadow .34s ease;
}

.workshop-track__item:focus-visible {
    outline: 3px solid rgba(255, 255, 255, .24);
    outline-offset: 8px;
}

.workshop-track__image {
    position: absolute;
    z-index: 0;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    opacity: 1;
    transition: transform .6s cubic-bezier(.22, 1, .36, 1), filter .34s ease;
}

.workshop-track__item::before {
    content: none;
}

.workshop-track__item.is-active {
    border-color: #fff;
    transform: scale(1.04);
    box-shadow: 0 18px 36px rgba(5, 15, 30, .32);
}

.workshop-track__item.is-active .workshop-track__image,
.workshop-track__item:hover .workshop-track__image,
.workshop-track__item:focus-visible .workshop-track__image {
    transform: none;
    filter: saturate(1.06) contrast(1.03);
}

.workshop-track__item:not(.is-active):hover,
.workshop-track__item:not(.is-active):focus-visible {
    transform: translateY(-1px);
    border-color: rgba(255, 255, 255, .72);
    box-shadow: 0 16px 30px rgba(4, 11, 18, .22);
}

.workshop-showcase.is-workshop-forward .workshop-track__item.is-active {
    animation: paneSlideInRight .42s cubic-bezier(.22, 1, .36, 1) both;
}

.workshop-showcase.is-workshop-backward .workshop-track__item.is-active {
    animation: paneSlideInLeft .42s cubic-bezier(.22, 1, .36, 1) both;
}

.reveal-ready [data-reveal] {
    opacity: 0;
    --reveal-x: 0px;
    --reveal-y: 20px;
    transform: translate3d(var(--reveal-x), var(--reveal-y), 0) scale(.99);
    will-change: opacity, transform;
    transition: opacity .42s ease, transform .96s cubic-bezier(.22, 1, .36, 1);
}

.reveal-ready [data-reveal="left"] {
    --reveal-x: -72px;
    --reveal-y: 0px;
}

.reveal-ready [data-reveal="right"] {
    --reveal-x: 72px;
    --reveal-y: 0px;
}

.reveal-ready [data-reveal="up"] {
    --reveal-x: 0px;
    --reveal-y: 34px;
}

.reveal-ready [data-reveal-child] {
    opacity: 0;
    --child-x: 0px;
    --child-y: 18px;
    transform: translate3d(var(--child-x), var(--child-y), 0);
    will-change: opacity, transform;
    transition: opacity .38s ease, transform .78s cubic-bezier(.22, 1, .36, 1);
    transition-delay: var(--child-delay, 0ms);
}

.reveal-ready [data-reveal="left"] [data-reveal-child] {
    --child-x: -40px;
    --child-y: 0px;
}

.reveal-ready [data-reveal="right"] [data-reveal-child] {
    --child-x: 40px;
    --child-y: 0px;
}

.reveal-ready [data-reveal].is-visible {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
}

.reveal-ready [data-reveal].is-visible [data-reveal-child] {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

.reveal-ready .product-pane__visual img[data-reveal-child] {
    transform: translate3d(var(--child-x), var(--child-y), 0) scale(var(--product-scale));
}

.reveal-ready [data-reveal].is-visible .product-pane__visual img[data-reveal-child] {
    transform: translate3d(0, 0, 0) scale(var(--product-scale));
}

@keyframes paneSlideInRight {
    from {
        opacity: .72;
        transform: translate3d(14px, 0, 0) scale(var(--product-scale, 1));
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0) scale(var(--product-scale, 1));
    }
}

@keyframes paneSlideInLeft {
    from {
        opacity: .72;
        transform: translate3d(-14px, 0, 0) scale(var(--product-scale, 1));
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0) scale(var(--product-scale, 1));
    }
}

.site-footer {
    padding: 0 0 36px;
    background: var(--ink);
    color: rgba(255, 255, 255, .82);
}

.footer-cta {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    justify-content: space-between;
    gap: clamp(28px, 3.8vw, 72px);
    align-items: center;
    width: 100%;
    min-height: clamp(208px, 14vw, 266px);
    margin-left: 0;
    padding: 52px max(24px, calc((100vw - var(--container)) / 2));
    overflow: hidden;
    background: #075d9e;
    border-top: 1px solid #3db5ff;
    border-bottom: 1px solid #064777;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .16),
        inset 0 -1px 0 rgba(0, 43, 74, .35),
        0 12px 28px rgba(0, 15, 32, .22);
}

.footer-cta::before {
    content: "";
    position: absolute;
    inset: 26px auto 26px max(24px, calc((100vw - var(--container)) / 2));
    width: 5px;
    background: #8ed4ff;
    box-shadow: 0 0 18px rgba(142, 212, 255, .5);
}

.footer-cta .eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 14px;
    color: #c7ebff;
    font-size: 13px;
    font-style: normal;
    font-weight: 800;
    letter-spacing: .14em;
}

.footer-cta .eyebrow::before {
    content: "";
    width: 28px;
    height: 1px;
    background: linear-gradient(90deg, rgba(88, 165, 255, .5), rgba(88, 165, 255, 0));
}

.footer-cta h2 {
    max-width: 760px;
    color: #fff;
    margin-top: 0;
    margin-bottom: 0;
    font-size: clamp(32px, 2.45vw, 46px);
    font-style: normal;
    font-weight: 700;
    line-height: 1.12;
    letter-spacing: -.01em;
    -webkit-font-smoothing: antialiased;
}

.footer-cta p {
    max-width: 860px;
    margin-top: 18px;
    color: #eff9ff;
    font-size: clamp(17px, 1.1vw, 20px);
    font-style: normal;
    font-weight: 500;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
}

.footer-cta__content {
    position: relative;
    z-index: 1;
    padding-left: 28px;
}

.footer-cta__button {
    position: relative;
    z-index: 1;
    display: inline-grid;
    margin: 0;
    justify-self: end;
    place-items: center;
    align-self: center;
    width: fit-content;
    min-width: 0;
    min-height: 64px;
    padding: 0 32px;
    border: 2px solid #ffffff;
    border-radius: 8px;
    background: #ffffff;
    color: #075d9e;
    font-size: 17px;
    font-style: normal;
    font-weight: 700;
    letter-spacing: .01em;
    line-height: 1;
    text-decoration: none;
    text-transform: none;
    cursor: pointer;
    box-shadow:
        0 10px 20px rgba(0, 34, 63, .26);
    transition: transform .22s ease, background .22s ease, border-color .22s ease, box-shadow .22s ease;
    -webkit-font-smoothing: antialiased;
}

.footer-cta__button-inner {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    min-height: 60px;
    text-align: center;
}

.footer-cta__button-text {
    display: block;
    line-height: 1;
    color: #075d9e;
}

.footer-cta__button svg {
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    color: #075d9e;
    opacity: 1;
}

.footer-cta__button:hover {
    background: #dff4ff;
    border-color: #dff4ff;
    box-shadow:
        0 12px 24px rgba(0, 28, 52, .34);
    transform: translateY(-1px);
}

.footer-cta {
    display: grid;
    grid-template-columns: minmax(270px, .72fr) minmax(0, 1.78fr);
    gap: clamp(34px, 4vw, 72px);
    width: min(1760px, 100%);
    min-height: 0;
    margin: 32px auto 0;
    padding: 40px max(24px, calc((100vw - 1620px) / 2));
    overflow: visible;
    background:
        radial-gradient(circle at 90% 12%, rgba(255, 255, 255, .76), transparent 31%),
        linear-gradient(112deg, #e7f6ff 0%, #cfeeff 54%, #b8e3fa 100%);
    border-top: 1px solid #9ed2ee;
    border-bottom: 1px solid #9ed2ee;
    border-radius: 12px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .72);
}

.footer-cta::before {
    content: none;
}

.footer-cta h2 {
    max-width: 360px;
    font-size: clamp(30px, 2.2vw, 40px);
    font-weight: 700;
    line-height: 1.12;
    letter-spacing: -.02em;
    text-transform: none;
    color: #073257;
}

.footer-cta p {
    max-width: 360px;
    margin-top: 14px;
    font-size: 16px;
    line-height: 1.55;
    color: #31536a;
}

.footer-cta__content {
    align-self: center;
    min-height: 0;
    padding: 0;
}

.footer-inquiry-form {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    align-content: center;
    gap: 20px 24px;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
}

.footer-inquiry-form__field {
    min-width: 0;
}

.footer-inquiry-form__field--message,
.footer-inquiry-form__submit {
    grid-column: auto;
}

.footer-inquiry-form__field--message {
    grid-column: 1 / 4;
}

.footer-inquiry-form__submit {
    grid-column: 4 / 5;
    align-self: end;
}

.footer-inquiry-form label {
    display: block;
    margin-bottom: 6px;
    color: #123d5c;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.25;
    text-transform: uppercase;
}

.footer-inquiry-form label span {
    color: #0075c4;
}

.footer-inquiry-form input,
.footer-inquiry-form textarea {
    display: block;
    width: 100%;
    border: 0;
    border-bottom: 2px solid #6699b5;
    border-radius: 0;
    background: transparent;
    color: #0f2d43;
    font-family: inherit;
    font-size: 16px;
    line-height: 1.4;
}

.footer-inquiry-form input {
    min-height: 34px;
    padding: 2px 0 6px;
}

.footer-inquiry-form textarea {
    min-height: 34px;
    padding: 2px 0 6px;
    resize: vertical;
}

.footer-inquiry-form input::placeholder,
.footer-inquiry-form textarea::placeholder {
    color: #55758a;
    opacity: 1;
}

.footer-inquiry-form input:focus,
.footer-inquiry-form textarea:focus {
    outline: 0;
    border-color: #0075c4;
    box-shadow: 0 3px 0 -1px rgba(0, 117, 196, .2);
}

.footer-inquiry-form__submit {
    width: 100%;
    min-height: 48px;
    border: 1px solid #1592df;
    border-radius: 6px;
    background: #0878c7;
    color: #ffffff;
    font-family: inherit;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: background .2s ease, border-color .2s ease;
}

.footer-inquiry-form__submit:hover {
    border-color: #49afea;
    background: #1590dc;
}

.footer-cta {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    justify-content: space-between;
    gap: clamp(28px, 3.8vw, 72px);
    align-items: center;
    width: 100%;
    min-height: clamp(200px, 12vw, 244px);
    margin-left: 0;
    padding: 44px max(24px, calc((100vw - var(--container)) / 2));
    overflow: hidden;
    background: #ffffff;
    border-top: 1px solid #dbe8f2;
    border-bottom: 1px solid #dbe8f2;
    border-radius: 0;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .02),
        0 10px 22px rgba(0, 0, 0, .08);
}

.footer-cta::before {
    content: none;
}

.footer-cta .eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 12px;
    color: rgba(255, 255, 255, .72);
    font-size: 12px;
    font-style: normal;
    font-weight: 800;
    letter-spacing: .14em;
}

.footer-cta .eyebrow::before {
    content: "";
    width: 28px;
    height: 1px;
    background: linear-gradient(90deg, rgba(88, 165, 255, .5), rgba(88, 165, 255, 0));
}

.footer-cta h2 {
    max-width: 100%;
    margin-top: 0;
    margin-bottom: 0;
    color: #ffffff;
    font-size: clamp(32px, 2.45vw, 44px);
    font-style: normal;
    font-weight: 700;
    line-height: 1.12;
    letter-spacing: -.01em;
    text-transform: none;
}

.footer-cta p {
    max-width: none;
    margin-top: 16px;
    color: rgba(238, 246, 255, .82);
    font-size: clamp(17px, 1.08vw, 19px);
    font-style: normal;
    font-weight: 500;
    line-height: 1.6;
}

.footer-cta__content {
    position: relative;
    z-index: 1;
    min-height: 0;
    padding-left: 26px;
    border-left: 4px solid #0079c9;
}

.footer-cta__button {
    position: relative;
    z-index: 1;
    display: inline-grid;
    margin: 0;
    justify-self: end;
    place-items: center;
    align-self: center;
    width: fit-content;
    min-width: 0;
    min-height: 64px;
    padding: 0 32px;
    border: 1px solid #0079c9;
    border-radius: 12px;
    background: #0079c9;
    color: #ffffff;
    font-size: 15px;
    font-style: normal;
    font-weight: 700;
    letter-spacing: .01em;
    line-height: 1;
    text-decoration: none;
    text-transform: none;
    cursor: pointer;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .16),
        0 10px 20px rgba(0, 82, 135, .22);
    transition: transform .22s ease, background .22s ease, border-color .22s ease, box-shadow .22s ease;
}

.footer-cta__button-inner {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 11px;
    min-height: 64px;
    text-align: center;
}

.footer-cta__button-text {
    display: block;
    line-height: 1;
    color: #ffffff;
}

.footer-cta__button svg {
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    color: #ffffff;
    opacity: .88;
}

.footer-cta__button:hover {
    background: #006db8;
    border-color: #006db8;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .18),
        0 12px 24px rgba(0, 82, 135, .28);
    transform: translateY(-1px);
}

.inquiry-modal {
    position: fixed;
    z-index: 2000;
    inset: 0;
    display: grid;
    place-items: center;
    padding: 24px;
    opacity: 0;
    transition: opacity .18s ease;
}

.inquiry-modal[hidden] {
    display: none !important;
}

.inquiry-modal.is-open {
    opacity: 1;
}

.inquiry-modal__backdrop {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
    background: rgba(0, 25, 49, .72);
    -webkit-backdrop-filter: blur(9px);
    backdrop-filter: blur(9px);
    cursor: pointer;
}

.inquiry-modal__panel {
    position: relative;
    z-index: 1;
    width: min(100%, 690px);
    max-height: calc(100vh - 48px);
    max-height: calc(100svh - 48px);
    padding: 27px 28px 26px;
    overflow-y: auto;
    border: 1px solid rgba(148, 204, 239, .38);
    border-top: 3px solid #23b4e7;
    border-radius: 16px;
    background: #075996;
    color: #fff;
    box-shadow: 0 24px 56px rgba(0, 19, 38, .38);
    transform: translateY(14px) scale(.985);
    transition: transform .18s ease;
}

.inquiry-modal__panel::before {
    position: absolute;
    top: 17px;
    right: 72px;
    width: 84px;
    height: 24px;
    border-top: 1px solid rgba(183, 229, 250, .3);
    border-right: 1px solid rgba(183, 229, 250, .3);
    content: "";
    pointer-events: none;
}

.inquiry-modal.is-open .inquiry-modal__panel {
    transform: translateY(0) scale(1);
}

.inquiry-modal__close {
    position: absolute;
    top: 18px;
    right: 18px;
    display: grid;
    width: 40px;
    height: 40px;
    padding: 0;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .26);
    border-radius: 50%;
    background: rgba(255, 255, 255, .12);
    color: #fff;
    cursor: pointer;
    transition: background .2s ease, transform .2s ease;
}

.inquiry-modal__close:hover {
    background: rgba(255, 255, 255, .2);
    transform: rotate(90deg);
}

.inquiry-modal__close svg {
    width: 20px;
    height: 20px;
}

.inquiry-modal__heading {
    padding-right: 52px;
}

.inquiry-modal__heading::after {
    display: block;
    width: 48px;
    height: 2px;
    margin-top: 14px;
    background: #2cb9e8;
    content: "";
}

.inquiry-modal__eyebrow {
    margin: 0 0 3px;
    color: rgba(255, 255, 255, .67);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.inquiry-modal__heading h2 {
    margin: 0;
    color: #fff;
    font-size: 32px;
    font-weight: 800;
    line-height: 1.12;
}

.inquiry-modal__heading > p:last-child {
    max-width: 540px;
    margin: 7px 0 0;
    color: rgba(255, 255, 255, .76);
    font-size: 14px;
    font-weight: 500;
}

.inquiry-modal__form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 18px;
}

.inquiry-modal__field {
    display: grid;
    gap: 5px;
}

.inquiry-modal__field label {
    color: #fff;
    font-size: 13px;
    font-weight: 700;
}

.inquiry-modal__field input,
.inquiry-modal__field textarea {
    width: 100%;
    border: 1px solid rgba(192, 224, 246, .42);
    border-radius: 12px;
    outline: 0;
    background: rgba(2, 49, 88, .32);
    color: #fff;
    font: inherit;
    transition: border-color .2s ease, background .2s ease, box-shadow .2s ease;
}

.inquiry-modal__field input {
    height: 50px;
    padding: 0 13px;
}

.inquiry-modal__field textarea {
    min-height: 110px;
    padding: 11px 13px;
    resize: vertical;
}

.inquiry-modal__field input::placeholder,
.inquiry-modal__field textarea::placeholder {
    color: rgba(255, 255, 255, .5);
}

.inquiry-modal__field input:focus,
.inquiry-modal__field textarea:focus {
    border-color: #92d5ff;
    background: rgba(2, 49, 88, .45);
    box-shadow: 0 0 0 3px rgba(146, 213, 255, .2);
}

.inquiry-modal__field--message {
    grid-column: 1 / -1;
}

.inquiry-modal__submit {
    display: inline-flex;
    width: fit-content;
    min-height: 52px;
    margin-top: 2px;
    padding: 0 20px;
    align-items: center;
    justify-content: center;
    gap: 10px;
    border: 0;
    border-radius: 999px;
    background: #16a9e3;
    color: #fff;
    font: inherit;
    font-size: 13px;
    font-weight: 800;
    cursor: pointer;
    transition: background .2s ease, transform .2s ease;
}

.inquiry-modal__submit:hover {
    background: #39b9ec;
    transform: translateY(-1px);
}

.inquiry-modal__submit svg {
    width: 18px;
    height: 18px;
}

.footer-grid {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.4fr) minmax(0, .65fr) minmax(0, 1.15fr);
    gap: 36px;
    align-items: start;
    padding: 46px 0 10px;
}

.footer-grid > div {
    min-width: 0;
}

.footer-product-categories a {
    white-space: normal;
    overflow-wrap: anywhere;
    line-height: 1.6;
}

.footer-logo {
    width: 180px;
    height: auto;
    margin-bottom: 20px;
    filter: brightness(1.08);
}

.footer-social {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-top: 24px;
}

.footer-social__item {
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .32);
    border-radius: 50%;
    background: rgba(255, 255, 255, .08);
    color: rgba(255, 255, 255, .88);
}

.footer-social__item svg {
    width: 16px;
    height: 16px;
}

.site-footer h2 {
    margin: 0 0 18px;
    color: #fff;
    font-size: 18px;
}

.site-footer a {
    display: block;
    margin: 9px 0;
    color: rgba(238, 246, 255, .88);
}

.site-footer p {
    color: rgba(224, 236, 248, .8);
}

.site-footer .footer-cta p {
    color: #31536a;
}

.site-footer a.footer-link--nowrap {
    white-space: nowrap;
}

.footer-contact__body {
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr);
    gap: 18px 12px;
    align-items: start;
}

.footer-contact__icon {
    display: grid;
    width: 28px;
    height: 28px;
    border-radius: 7px;
    background: rgba(0, 137, 204, .12);
    color: #83c5eb;
    place-items: center;
}

.footer-contact__icon svg {
    width: 16px;
    height: 16px;
}

.footer-contact__label {
    display: block;
    margin-bottom: 6px;
    color: #eef6ff;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.4;
}

.footer-contact__phones {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 20px;
}

.footer-contact__body a {
    margin: 0;
    color: #b4c3d2;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.6;
    overflow-wrap: anywhere;
}

.footer-contact__number {
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}

.footer-contact__headquarters {
    margin-top: 22px;
    padding-top: 16px;
    border-top: 1px solid rgba(255, 255, 255, .12);
}

.footer-contact__headquarters .footer-contact__label {
    color: #94a9bb;
    font-size: 13px;
}

.footer-contact__headquarters p {
    margin: 0;
    color: #94a9bb;
    font-size: 13px;
    line-height: 1.7;
}

.site-footer a:hover {
    color: #fff;
}

.footer-bottom {
    justify-content: space-between;
    margin-top: 38px;
    padding-top: 20px;
    border-top: 1px solid rgba(255, 255, 255, .12);
    color: rgba(224, 236, 248, .76);
    font-size: 14px;
}

.footer-bottom__links {
    display: flex;
    align-items: center;
    gap: 8px;
    white-space: nowrap;
}

.site-footer,
.site-footer p,
.site-footer a,
.footer-social__item {
    color: #cbd9e6;
}

.site-footer h2 {
    color: #f2f7fb;
}

.footer-cta h2 {
    color: #073257;
}

.footer-cta .eyebrow {
    color: #0079c9;
}

.footer-bottom {
    color: #aebfd0;
}

.footer-cta__button,
.footer-cta__button-text,
.footer-cta__button svg {
    color: #f2f7fb;
}

.site-footer a:hover {
    color: #f2f7fb;
}

@media (min-width: 1081px) {
    .site-header--overlay:not(.is-scrolled) .nav-shell,
    .site-header.is-scrolled .nav-shell {
        padding-right: clamp(96px, 7vw, 144px);
        padding-left: clamp(96px, 7vw, 144px);
    }

    .site-footer .footer-grid,
    .site-footer .footer-bottom {
        width: min(1620px, calc(100vw - 88px));
    }

    .site-footer .footer-cta {
        padding-right: max(44px, calc((100vw - 1620px) / 2));
        padding-left: max(44px, calc((100vw - 1620px) / 2));
    }

    .site-footer .footer-cta::before {
        content: none;
    }
}

@media (min-width: 1600px) {
    .section-local-advantages .local-advantages {
        width: calc(100% - (2 * clamp(96px, 7vw, 144px)));
    }
}

@media (min-width: 761px) and (max-width: 1199px) {
    .footer-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-areas: "brand company" "products contact";
        gap: 36px 40px;
    }

    .footer-grid > div:nth-child(1) { grid-area: brand; }
    .footer-grid > div:nth-child(2) { grid-area: products; }
    .footer-grid > div:nth-child(3) { grid-area: company; }
    .footer-grid > div:nth-child(4) { grid-area: contact; }
}

@media (min-width: 761px) {
    .section-stores {
        margin-top: 0;
    }
}

.fallback-page {
    padding: 100px 0;
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
    }
}

@media (max-width: 1080px) {
    .header-search {
        display: none;
    }

    .primary-nav {
        gap: 18px;
    }

    .section-heading--split,
    .footer-cta {
        grid-template-columns: 1fr;
    }

    .footer-cta {
        min-height: 0;
        gap: 24px;
        padding: 42px max(24px, calc((100vw - var(--container)) / 2));
    }

    .footer-cta__button {
        align-self: flex-start;
        justify-self: start;
    }

    .footer-cta__content {
        min-height: 0;
        padding: 0;
        border: 0;
    }

    .footer-inquiry-form {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px 24px;
        margin: 0;
        padding: 0;
    }

    .footer-inquiry-form__field--message,
    .footer-inquiry-form__submit {
        grid-column: 1 / -1;
    }

    .footer-inquiry-form__submit {
        width: min(100%, 280px);
    }

    .product-nav {
        gap: 12px;
    }

    .product-nav__title {
        overflow: visible;
        text-overflow: clip;
        white-space: normal;
    }

    .product-pane::before {
        left: 138px;
        top: 20px;
        max-width: none;
    }

    .product-pane__visual {
        min-height: 460px;
        padding: 0 16px 0 0;
    }

    .product-pane__visual img {
        --product-scale: 1;
        transform: scale(var(--product-scale));
        width: min(100%, 760px);
        height: 460px;
        max-height: none;
    }

    .workshop-showcase {
        min-height: 760px;
        padding: 72px 0 34px;
        gap: 34px;
    }

    .about-workshop-transition {
        height: 48px;
    }

    .workshop-heading {
        max-width: 820px;
    }

    .workshop-counter [data-workshop-current] {
        font-size: clamp(44px, 4.6vw, 60px);
    }

    .workshop-track {
        grid-template-columns: none;
        grid-auto-flow: column;
        grid-auto-columns: minmax(180px, calc((100% - 36px) / 4));
        gap: 12px;
        overflow-x: auto;
        padding-bottom: 8px;
        scroll-snap-type: x proximity;
    }

    .workshop-track__item {
        height: 112px;
    }

    .section-about {
        min-height: 0;
        height: auto;
    }

    .about-shell {
        min-height: 0;
        padding: var(--andeli-title-clearance, 48px) 0 42px;
    }

    .page-English {
        top: 22px;
        bottom: auto;
        left: 50%;
        transform: translateX(-50%);
        font-size: clamp(76px, 13vw, 138px);
    }

    .about-kicker,
    .main-top {
        margin-left: 0;
        text-align: center;
    }

    .about-building {
        position: relative;
        top: auto;
        bottom: auto;
        width: min(100%, 760px);
        height: 430px;
        min-height: 0;
        margin: var(--andeli-title-clearance, 18px) auto 0;
    }

    .about-building img {
        width: 100%;
        object-position: center bottom;
    }

    .about-main,
    .main-cont {
        position: relative;
        right: auto;
        top: auto;
        width: min(100%, 780px);
        margin: 0 auto;
    }

    .about-card,
    .cont-box,
    .about-stats,
    .cont-data,
    .about-certifications {
        width: min(100%, 780px);
        margin-right: auto;
        margin-left: auto;
    }

    .about-card,
    .cont-box {
        margin-top: -34px;
        padding: 40px 44px 30px;
        border-radius: 0;
        box-shadow: none;
    }

    .about-stats,
    .cont-data {
        grid-template-columns: repeat(3, 1fr);
    }

    .section-stores {
        padding: 4.5rem 0;
        background-attachment: scroll;
    }

    .dubai-stores {
        width: min(100% - 44px, var(--container));
    }

    .dubai-stores__titlebar {
        grid-template-columns: 1fr;
        gap: 20px;
        align-items: start;
    }

    .dubai-store-grid {
        gap: 14px;
    }

    .dubai-store-card {
        top: 88px;
        padding: 22px;
        border-radius: 30px;
    }

    .dubai-store-card::after {
        top: 16px;
        right: 16px;
        width: 140px;
        height: 140px;
    }

    .dubai-store-card__media,
    .dubai-store-card__body {
        width: calc(50% - 12px);
    }

    .dubai-store-card__body {
        padding: 4px 0 4px 0;
        gap: 16px;
    }

    .dubai-store-card__body h3 {
        font-size: 28px;
        max-width: 100%;
    }

    .dubai-store-card__lead {
        max-width: 100%;
        font-size: 17px;
    }

    .dubai-store-card__detail {
        max-width: 100%;
        font-size: 15px;
    }

    .section-local-advantages,
    .local-advantages {
        height: auto;
        min-height: 0;
    }

    .local-advantages {
        padding: 0;
    }

    .local-advantages__heading {
        padding-bottom: 42px;
    }

    .local-advantages__heading h2 {
        font-size: 40px;
    }

    .local-advantages__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        min-height: 0;
    }

    .local-advantages__feature {
        min-height: 320px;
    }

}

@media (min-width: 761px) {
    .section-products {
        padding-bottom: 0;
    }

    .product-pane__visual {
        min-height: 0;
        height: 100%;
    }

    .product-pane__visual img {
        height: auto;
        max-height: 100%;
    }
}

@media (min-width: 1200px) {
    .product-catalog {
        height: calc(100vh - 64px);
        height: calc(100svh - 64px);
    }
}

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


    .hero__bg {
        object-fit: contain;
        transform: none;
    }

    .hero__poster-canvas {
        width: 100%;
    }

    .hero__controls {
        right: 12px;
        bottom: 8px;
    }

    .container {
        width: min(100% - 28px, var(--container));
    }

    .product-nav-shell {
        grid-template-columns: minmax(0, 1fr);
        padding: 10px 0 12px;
    }


    .product-nav button::before {
        top: 10px;
        bottom: 10px;
    }

    .product-nav-control {
        display: none;
    }

    .product-stage,
    .product-pane {
        position: relative;
        min-height: auto;
    }

    .product-pane,
    .stores-facts {
        grid-template-columns: 1fr;
    }

    footer.site-footer {
        padding-bottom: 0;
        background: #080b10;
    }

    .site-footer .footer-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 0;
        padding: 30px 0 10px;
    }

    .footer-grid > div:first-child {
        padding-bottom: 20px;
    }

    .footer-grid > div:first-child > p {
        max-width: 440px;
        margin: 18px 0 0;
        color: #c5c8cc;
        font-size: 14px;
        line-height: 1.65;
    }

    .footer-grid .footer-logo {
        width: 148px;
        margin-bottom: 0;
        filter: brightness(0) invert(1);
    }

    .footer-grid > div:not(:first-child),
    .footer-grid .footer-social,
    .footer-grid .footer-contact__headquarters {
        display: none;
    }

    .site-footer .footer-bottom {
        flex-wrap: wrap;
        gap: 8px 16px;
        margin-top: 0;
        padding: 20px 0 26px;
        color: #999fa7;
        font-size: 12px;
        line-height: 1.6;
    }

    .footer-bottom a {
        margin: 0;
    }

    .section {
        padding: 76px 0;
    }

    .section-products {
        padding-top: 0;
    }

    .product-pane.is-active {
        display: grid;
    }

    .product-pane::before {
        top: 96px;
        left: 24px;
        max-width: none;
        font-size: 30px;
        white-space: nowrap;
    }

    .product-pane__copy p {
        margin-top: 16px;
        font-size: 16px;
        line-height: 1.78;
    }

    .product-pane__cta {
        margin-top: 22px;
    }

    .product-pane__visual {
        min-height: 320px;
        padding: 0 8px 0;
    }

    .product-pane__visual::before {
        inset: 20% 0 0 0;
    }

    .product-pane__visual::after {
        width: 36%;
    }

    .product-pane__visual img {
        --product-scale: 1;
        width: 100%;
        height: auto;
        max-height: none;
    }

    .dubai-stores__summary p {
        font-size: 15px;
    }

    .dubai-store-grid {
        gap: 12px;
    }

    .dubai-store-card {
        position: relative;
        top: 0;
        padding: 15px;
        border-radius: 24px;
    }

    .dubai-store-card__media,
    .dubai-store-card__body {
        width: 100%;
    }

    .dubai-store-card__media {
        order: 0;
        margin-bottom: 10px;
        aspect-ratio: 4 / 3;
        border-radius: 22px;
    }

    .dubai-store-card__media::after,
    .dubai-store-card__media img {
        border-radius: 18px;
    }

    .dubai-store-card__body {
        padding: 0;
        gap: 12px;
        align-content: start;
    }

    .dubai-store-card__topline {
        gap: 12px;
    }

    .dubai-store-card__index {
        width: 46px;
        height: 46px;
        border-radius: 14px;
        font-size: 13px;
    }

    .dubai-store-card__tag {
        min-height: 34px;
        padding: 0 14px;
        font-size: 11px;
    }

    .dubai-store-card__body h3 {
        font-size: 24px;
        max-width: 100%;
    }

    .dubai-store-card__lead {
        max-width: 100%;
        padding-left: 14px;
        font-size: 17px;
    }

    .dubai-store-card__detail {
        max-width: 100%;
        font-size: 15px;
    }

    .section-local-advantages,
    .local-advantages {
        height: auto;
        min-height: 0;
    }

    .local-advantages {
        padding: 0;
    }

    .local-advantages__heading {
        padding-bottom: 34px;
    }

    .local-advantages__heading h2 {
        font-size: 34px;
    }

    .local-advantages__grid {
        grid-template-columns: 1fr;
        gap: 12px;
        min-height: 0;
    }

    .local-advantages__feature,
    .local-advantages__feature:last-child {
        min-height: 260px;
        padding: 32px 26px 30px;
        border: 1px solid rgba(229, 240, 247, .82);
        border-radius: 18px;
    }

    .local-advantages__feature-rule {
        opacity: 1;
    }

    .local-advantages__feature-copy > span:last-child {
        max-height: 190px;
        opacity: 1;
        transform: translateY(0);
    }

    .local-advantages__feature:last-child {
        border-bottom: 1px solid rgba(229, 240, 247, .82);
    }

    .local-advantages__feature-icon {
        width: 52px;
        height: 52px;
        margin-bottom: 18px;
    }

    .local-advantages__feature-icon svg {
        width: 24px;
        height: 24px;
    }

    .local-advantages__feature-copy {
        gap: 12px;
    }

    .local-advantages__feature-copy strong {
        font-size: 19px;
    }

    .local-advantages__feature-copy > span:last-child {
        font-size: 14px;
    }

    .section-about {
        min-height: 0;
        height: auto;
    }

    .about-workshop-transition {
        height: 40px;
    }

    .about-shell {
        width: min(100% - 28px, var(--container));
        min-height: 0;
        padding: var(--andeli-title-clearance, 52px) 0 44px;
    }

    .page-English {
        top: 18px;
        bottom: auto;
        left: 50%;
        max-width: 100%;
        font-size: 52px;
        transform: translateX(-50%);
    }

    .about-kicker,
    .main-top {
        margin-left: 0;
        text-align: left;
    }

    .about-building {
        position: relative;
        width: 100%;
        height: 300px;
        min-height: 0;
        bottom: auto;
        margin-top: var(--andeli-title-clearance, 20px);
    }

    .about-building img {
        width: 100%;
        object-position: center bottom;
    }

    .about-main,
    .main-cont {
        position: relative;
        right: auto;
        top: auto;
        width: 100%;
        margin: 0;
    }

    .about-building::after {
        right: 0;
    }

    .about-card,
    .cont-box {
        width: 100%;
        min-height: 0;
        margin: -12px 0 0;
        padding: 30px 24px 28px;
        border-radius: 0;
        box-shadow: none;
    }

    .about-card h2,
    .box-subTitle {
        font-size: 28px;
    }

    .about-card p,
    .box-text {
        font-size: 15px;
        line-height: 1.75;
    }

    .about-card__action {
        width: 48px;
        height: 48px;
        margin-top: 24px;
    }

    .about-stats,
    .cont-data {
        width: 100%;
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
        margin: 24px 0 0;
    }

    .data-item {
        width: 100%;
        min-height: 86px;
        padding: 12px 10px 11px 46px;
        border-radius: 22px;
    }

    .data-icon {
        left: 11px;
        top: 12px;
        width: 27px;
        height: 27px;
        border-radius: 999px;
    }

    .data-icon svg {
        width: 15px;
        height: 15px;
    }

    .about-stats strong,
    .num1 {
        font-size: 28px;
    }

    .item-title i,
    .item-title em {
        font-size: 18px;
    }

    .about-stats .item-text,
    .item-text {
        margin: 7px 0 0;
        font-size: 14px;
    }

    .about-certifications {
        width: 100%;
        margin: 26px 0 0;
    }

    .section.section-workshop {
        min-height: 0;
        padding: 0;
    }

    .workshop-showcase {
        width: min(100% - 28px, var(--container));
        min-height: clamp(460px, 76vh, 560px);
        min-height: clamp(460px, 76svh, 560px);
        padding: 28px 0 20px;
        gap: 32px;
    }

    .workshop-stage {
        flex-direction: column;
        gap: 18px;
    }

    .workshop-heading {
        max-width: none;
    }

    .workshop-heading .eyebrow {
        font-size: 11px;
        margin-bottom: 10px;
    }

    body.home .section-workshop .workshop-heading > .andeli-section-title {
        max-width: 440px;
        font-size: clamp(26px, 6.8vw, 32px);
        line-height: 1.15;
    }

    .workshop-counter {
        padding-top: 0;
        gap: 2px;
    }

    .workshop-controls {
        width: 100%;
        margin-left: 0;
        justify-content: space-between;
        align-items: center;
        gap: 10px;
    }

    .workshop-navigation {
        gap: 6px;
        padding-bottom: 0;
    }

    .workshop-navigation__button {
        width: 44px;
        height: 44px;
    }

    .workshop-counter [data-workshop-current] {
        font-size: 34px;
    }

    .workshop-counter__sep,
    .workshop-counter span:last-child {
        font-size: 18px;
    }

    .workshop-track {
        display: grid;
        grid-template-columns: none;
        grid-auto-flow: column;
        grid-auto-columns: clamp(124px, 38vw, 176px);
        gap: 10px;
        overflow-x: auto;
        padding-bottom: 8px;
        scrollbar-width: none;
        scroll-snap-type: x proximity;
    }

    .workshop-track::-webkit-scrollbar {
        display: none;
    }

    .workshop-track__item {
        height: auto;
        aspect-ratio: 16 / 10;
        min-height: 0;
        padding: 0;
        scroll-snap-align: start;
        border-radius: 10px;
    }

    .workshop-track__item.is-active,
    .workshop-track__item:not(.is-active):hover,
    .workshop-track__item:not(.is-active):focus-visible {
        transform: none;
    }

    .footer-cta {
        grid-template-columns: 1fr;
        gap: 22px;
        padding: 42px max(24px, calc((100vw - var(--container)) / 2));
    }

    .footer-cta h2 {
        font-size: clamp(28px, 7vw, 38px);
    }

    .footer-cta p {
        font-size: 16px;
    }

    .footer-cta__button {
        width: fit-content;
        min-width: 0;
    }

    .footer-cta .eyebrow::before {
        width: 24px;
    }

    .footer-cta::before {
        inset: 24px auto 24px 24px;
        width: 4px;
    }

    .footer-cta__content {
        padding-left: 0;
    }

    .footer-inquiry-form {
        grid-template-columns: 1fr;
        padding: 20px;
    }

    .footer-inquiry-form__field--message,
    .footer-inquiry-form__submit {
        grid-column: auto;
    }

    .footer-cta::before {
        content: none;
    }

    .footer-cta__content {
        min-height: 0;
        padding: 0;
    }

    .site-footer .footer-cta h2 {
        font-size: clamp(28px, 7vw, 38px);
    }

    .footer-inquiry-form {
        gap: 16px;
        margin: 0;
        padding: 0;
    }

    .footer-inquiry-form__submit {
        width: 100%;
    }

    .inquiry-modal {
        padding: 14px;
    }

    .inquiry-modal__panel {
        max-height: calc(100vh - 28px);
        max-height: calc(100svh - 28px);
        padding: 28px 20px 22px;
        border-radius: 18px;
    }

    .inquiry-modal__close {
        top: 14px;
        right: 14px;
        width: 36px;
        height: 36px;
    }

    .inquiry-modal__heading {
        padding-right: 42px;
    }

    .inquiry-modal__heading h2 {
        font-size: 30px;
    }

    .inquiry-modal__heading > p:last-child {
        font-size: 14px;
        line-height: 1.5;
    }

    .inquiry-modal__form {
        grid-template-columns: 1fr;
        gap: 12px;
        margin-top: 20px;
    }

    .inquiry-modal__field--message {
        grid-column: auto;
    }

    .inquiry-modal__field textarea {
        min-height: 100px;
    }

.inquiry-modal__submit {
        width: 100%;
    }
}

/* Homepage product catalogue redesign */
.product-stage.is-product-forward .product-pane.is-active .product-pane__copy > *,
.product-stage.is-product-forward .product-pane.is-active .product-pane__visual img,
.product-stage.is-product-backward .product-pane.is-active .product-pane__copy > *,
.product-stage.is-product-backward .product-pane.is-active .product-pane__visual img {
    animation: none;
}

@media (min-width: 761px) {
    .section-products {
        padding: 60px 0 24px;
        background: linear-gradient(180deg, #f8fafc 0%, #f8fafc calc(100% - 96px), #eef5f8 100%);
    }
    .product-catalog {
        grid-template-rows: auto minmax(0, 1fr);
        height: auto;
        display: block;
    }
    .product-stage {
        min-height: 680px;
    }

    .product-pane__visual {
        min-height: 0;
        height: 53%;
    }

    .product-pane__visual img {
        height: 100%;
        max-height: none;
    }
}

@media (max-width: 1080px) {
    .product-catalog {
        width: min(100% - 48px, 900px);
    }
    .product-stage {
        min-height: 1150px;
    }
    .product-pane {
        grid-template-columns: 1fr;
        grid-template-rows: 500px minmax(650px, 1fr);
    }
    .product-pane__copy {
        max-width: 60%;
        padding: 58px 42px 36px;
    }

    .product-pane__directory {
        padding: 32px 44px 42px;
    }

    .product-pane__visual {
        min-height: 0;
        height: 62%;
        width: 66%;
        right: -2%;
    }
}

@media (max-width: 760px) {
    .section-products {
        padding: 44px 0 16px;
        background: linear-gradient(180deg, #f8fafc 0%, #f8fafc calc(100% - 96px), #eef5f8 100%);
    }

    .product-catalog {
        width: min(100% - 28px, var(--container));
    }

    .product-nav-shell {
        display: block;
        padding-bottom: 22px;
    }

    .product-nav {
        justify-content: flex-start;
        gap: 14px;
        padding: 3px 1px;
    }

    .product-nav button {
        width: 28px;
        height: 8px;
    }

    .product-nav button.is-active {
        width: 42px;
    }

    .product-stage,
    .product-pane {
        position: relative;
        min-height: 0;
    }

    .product-stage {
        overflow: visible;
    }

    .product-pane.is-active {
        display: grid;
    }

    .product-pane__eyebrow {
        padding: 5px 11px;
        font-size: 10px;
    }

    .product-pane__copy p {
        margin-top: 14px;
        font-size: 14px;
        line-height: 1.55;
    }

    .product-pane__cta {
        margin-top: 20px;
    }

    .product-pane__visual {
        right: -5%;
        bottom: -3%;
        width: 86%;
        height: 47%;
        min-height: 0;
        border-radius: 96px 0 0;
    }

    .product-pane__directory {
        display: none;
    }

    .product-directory__header {
        grid-template-columns: 54px minmax(0, 1fr);
        gap: 14px;
        padding-bottom: 18px;
    }

    .product-directory__badge {
        width: 54px;
        height: 54px;
    }

    .product-directory__badge svg {
        width: 31px;
        height: 31px;
    }

    .product-directory__header h3 {
        font-size: 22px;
    }

    .product-directory__intro {
        margin: 16px 0;
        font-size: 14px;
    }

    .product-directory__link {
        grid-template-columns: 21px minmax(0, 1fr) 16px;
        gap: 10px;
        min-height: 42px;
        padding: 7px 1px;
        font-size: 13px;
    }

    .product-directory__list {
        grid-auto-rows: 48px;
    }

    .product-directory__item-icon {
        width: 18px;
        height: 18px;
    }

    .product-stage-controls {
        position: static;
        justify-content: flex-end;
        margin: 16px 12px 0;
    }

    .product-nav-control {
        display: grid;
        width: 42px;
        height: 42px;
    }
}

/* Keep the generated studio visual anchored to the full feature panel. */
.product-pane__visual.product-pane__visual--studio {
    inset: 0;
    width: 100%;
    height: 100%;
    min-height: 0;
    border-radius: 0;
}

.product-pane__visual.product-pane__visual--studio img {
    object-position: right bottom;
}

.product-pane__feature::before,
.product-pane__feature::after {
    content: none;
}
.product-pane__copy {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 72px 32px 40px 64px;
    z-index: 3;
    max-width: 50%;
}
.product-pane__copy h2 {
    max-width: 520px;
    text-wrap: balance;
    margin: 24px 0 0;
    color: #073a72;
    font-size: clamp(22px, 1.7vw, 34px);
    font-weight: 700;
    line-height: 1.16;
    letter-spacing: 0;
    white-space: normal;
    overflow-wrap: anywhere;
}

.product-pane__copy .product-pane__eyebrow {
    color: #fff;
}

.product-pane__copy p {
    color: #4d6884;
}

.product-pane__cta {
    border-color: #177fca;
    background: rgba(255, 255, 255, .8);
    color: #0764aa;
}

.product-pane__cta:hover,
.product-pane__cta:focus-visible {
    border-color: #006db8;
    background: #006db8;
    color: #ffffff;
}

.product-pane__visual:not(.product-pane__visual--studio) {
    inset: auto -2% 0 auto;
    width: 48%;
    height: auto;
    min-height: 0;
    aspect-ratio: 16 / 9;
    padding: 0;
    border-radius: 108px 0 0;
    background: #f8fbff;
    box-shadow: none;
}

.product-pane__visual:not(.product-pane__visual--studio) img {
    display: block;
    width: 100%;
    height: 100%;
    max-height: none;
    object-fit: cover;
    object-position: right bottom;
}

@media (min-width: 761px) {
    .product-pane__copy h2 {
        max-width: none;
    }
}

@media (max-width: 760px) {
    .product-pane__copy {
        padding: 42px 28px 24px;
        max-width: 100%;
        padding-bottom: clamp(180px, 48vw, 300px);
    }
}

@media (min-width: 761px) and (max-width: 1080px) {
    .product-pane__visual:not(.product-pane__visual--studio) {
        inset: auto -2% 0 auto;
        bottom: 0;
        width: 46%;
        height: auto;
        aspect-ratio: 16 / 9;
        border-radius: 108px 0 0;
    }

    .product-pane__visual:not(.product-pane__visual--studio) img {
        object-fit: cover;
        object-position: right bottom;
    }
}

@media (max-width: 760px) {
    .product-pane {
        gap: 0;
        display: none;
        grid-template-columns: 1fr;
        border-radius: 18px;
        opacity: 1;
        visibility: visible;
        transform: none;
        grid-template-rows: auto auto;
    }
    .product-pane__feature {
        min-height: 0;
    }

    .product-pane__visual:not(.product-pane__visual--studio) {
        inset: auto -2% 0 auto;
        width: 86%;
        height: auto;
        aspect-ratio: 16 / 9;
        border-radius: 88px 0 0;
    }
}
.product-pane__feature {
    position: relative;
    min-width: 0;
    overflow: hidden;
    background: #f8fbff;
    background-color: #f8fbff;
    background-image: url("../images/product-category-fixed-background.webp");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.product-pane__visual.product-pane__visual--cutout {
    inset: 0;
    width: 100%;
    height: 100%;
    aspect-ratio: auto;
    overflow: hidden;
    border-radius: 0;
    background: transparent;
}

.product-pane__visual.product-pane__visual--cutout img {
    --product-scale: 1.44;
    width: 100%;
    height: 100%;
    max-height: none;
    object-fit: contain;
    transform: scale(var(--product-scale));
    transform-origin: right bottom;
}

@media (max-width: 760px) {
    .product-pane__visual.product-pane__visual--cutout img {
        --product-scale: 1.16;
        transform: scale(1.16);
    }
}

@media (max-width: 760px) {
    .product-pane__visual.product-pane__visual--cutout {
        inset: 0;
        width: 100%;
        height: 100%;
    }
}

/* Keep all desktop product cards and cutout baselines consistent across category list lengths. */
@media (min-width: 1081px) {
    .product-stage {
        height: 680px;
        min-height: 680px;
    }

    .product-pane,
    .product-pane__directory {
        min-height: 0;
    }

    .product-pane__directory {
        overflow: hidden;
    }

}

/* Shop Display: a single gallery for Dubai stores and warehouse. */
.section-stores {
    position: relative;
    isolation: isolate;
    padding: clamp(34px, 2.7vw, 46px) 0 clamp(40px, 3vw, 52px);
    overflow: hidden;
    background: #fff;
}

.section-stores::after {
    display: none;
}

.section-stores::before {
    content: '';
    position: absolute;
    z-index: 0;
    inset: clamp(154px, 13vw, 206px) 0 0;
    display: block;
    background: url('../images/shop-display-tech-grid.webp') center top / cover no-repeat;
    opacity: .1;
    pointer-events: none;
    -webkit-mask-image: linear-gradient(to bottom, transparent, #000 15%, #000 78%, transparent);
    mask-image: linear-gradient(to bottom, transparent, #000 15%, #000 78%, transparent);
}

.dubai-stores {
    position: relative;
    z-index: 1;
    width: min(var(--container), calc(100% - 48px));
    gap: clamp(18px, 1.7vw, 26px);
}

.dubai-stores__header {
    display: grid;
    justify-items: center;
    padding: 0;
    border: 0;
    text-align: center;
}

.dubai-stores__header::before {
    content: '';
    width: 70px;
    height: 3px;
    background: #21a2ed;
}

.dubai-stores__titlecopy > p,
.dubai-stores__header > p {
    display: none;
}

.dubai-stores__titlecopy h2 {
    color: #0a315b;
}

.shop-showcase,
.shop-showcase__store-rail,
.shop-showcase__warehouse-rail {
    display: grid;
    gap: clamp(10px, 1.15vw, 16px);
}

.shop-showcase {
    grid-template-columns: minmax(0, 1.5fr) minmax(0, .665fr) minmax(0, .562fr);
    grid-template-rows: auto auto;
    align-items: start;
    width: min(100%, 1200px);
    margin: 0 auto;
}

.shop-showcase figure {
    min-width: 0;
    margin: 0;
    overflow: visible;
}

.shop-showcase img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain !important;
}

.shop-showcase__primary {
    grid-column: 1;
    grid-row: 1;
    aspect-ratio: 3 / 2;
    background: #082f58;
    box-shadow: 0 18px 36px rgba(8, 47, 88, .16);
}

.shop-showcase__store-rail {
    grid-column: 2 / span 2;
    grid-row: 1;
    grid-template-columns: minmax(0, .665fr) minmax(0, .562fr);
    grid-template-rows: minmax(0, 1fr);
    aspect-ratio: 1.227 / 1;
}

.shop-showcase__store {
    display: grid;
    place-items: center;
    min-height: 0;
    background: #082f58;
    box-shadow: 0 14px 28px rgba(8, 47, 88, .14);
}

.shop-showcase__store--1 {
    aspect-ratio: 1139 / 1712;
}

.shop-showcase__store--2 {
    aspect-ratio: 962 / 1712;
}

.shop-showcase__warehouse-rail {
    grid-column: 1 / span 3;
    grid-row: 2;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    width: min(100%, 840px);
    margin: 0 auto;
}

.shop-showcase__warehouse {
    min-height: 0;
    aspect-ratio: 1702 / 1276;
    background: #082f58;
    box-shadow: 0 12px 24px rgba(8, 47, 88, .1);
}

@media (max-width: 960px) {
    .shop-showcase {
        grid-template-columns: minmax(0, 1.5fr) minmax(0, .665fr) minmax(0, .562fr);
    }
}

@media (max-width: 760px) {

    .shop-showcase {
        grid-template-columns: 1fr;
        grid-template-rows: auto auto auto;
        height: auto;
        min-height: 0;
    }

    .shop-showcase__primary {
        grid-column: 1;
        grid-row: 1;
        aspect-ratio: 1.5 / 1;
    }

    .shop-showcase__store-rail {
        grid-column: 1;
        grid-row: 2;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-rows: none;
        aspect-ratio: auto;
    }

    .shop-showcase__store {
        aspect-ratio: auto;
    }

    .shop-showcase__store--1 {
        aspect-ratio: 1139 / 1712;
    }

    .shop-showcase__store--2 {
        aspect-ratio: 962 / 1712;
    }

    .shop-showcase__warehouse-rail {
        grid-column: 1;
        grid-row: 3;
        grid-template-columns: 1fr;
        width: 100%;
    }

    .shop-showcase__warehouse {
        aspect-ratio: 1.33 / 1;
    }
}

/* Shop Display: white accordion gallery for stores and warehouse. */
.shop-accordion {
    display: grid;
    gap: clamp(18px, 2vw, 28px);
}

.shop-accordion__tabs {
    display: flex;
    justify-content: center;
    gap: clamp(26px, 4vw, 56px);
}

.shop-accordion__tab {
    padding: 0 0 10px;
    border: 0;
    border-bottom: 2px solid transparent;
    background: transparent;
    color: #6b8093;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: clamp(20px, 2vw, 28px);
    line-height: 1;
    cursor: pointer;
    transition: color .25s ease, border-color .25s ease;
}

.shop-accordion__tab:hover,
.shop-accordion__tab:focus-visible,
.shop-accordion__tab.is-active {
    color: #0a315b;
    border-bottom-color: #21a2ed;
}

.shop-accordion__tab:focus-visible,
.shop-accordion__item:focus-visible {
    outline: 2px solid #21a2ed;
    outline-offset: 4px;
}

.shop-accordion__panel {
    display: flex;
    height: min(52vh, 520px);
    height: min(52svh, 520px);
    min-height: 390px;
    gap: clamp(8px, .8vw, 14px);
}

.shop-accordion__panel[hidden] {
    display: none;
}

.shop-accordion__item {
    position: relative;
    flex: .8 1 0;
    min-width: 0;
    overflow: hidden;
    padding: 0;
    border: 0;
    border-radius: 12px;
    background: #0a315b;
    cursor: pointer;
    isolation: isolate;
    transition: flex .68s cubic-bezier(.22, 1, .36, 1), box-shadow .45s ease;
}

.shop-accordion__item::before {
    content: '';
    position: absolute;
    z-index: -2;
    inset: -24px;
    background: var(--shop-image) center / cover no-repeat;
    filter: blur(18px) brightness(.55) saturate(.85);
    transform: scale(1.15);
}

.shop-accordion__item::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(180deg, rgba(2, 19, 36, .04) 48%, rgba(2, 19, 36, .58) 100%);
    pointer-events: none;
}

.shop-accordion__item.is-active {
    flex: 3.4 1 0;
    box-shadow: 0 18px 38px rgba(8, 47, 88, .18);
}

.shop-accordion__item img {
    position: relative;
    z-index: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: filter .4s ease;
}

.shop-accordion__item:not(.is-active) img {
    filter: saturate(.78) brightness(.88);
}

.shop-accordion__index {
    position: absolute;
    z-index: 2;
    left: clamp(13px, 1.5vw, 22px);
    bottom: clamp(12px, 1.4vw, 20px);
    color: #fff;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: clamp(30px, 3.2vw, 50px);
    font-weight: 400;
    line-height: .8;
    text-shadow: 0 2px 16px rgba(0, 15, 30, .35);
}

.shop-accordion__expand {
    position: absolute;
    z-index: 2;
    right: clamp(12px, 1.3vw, 18px);
    bottom: clamp(12px, 1.3vw, 18px);
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .72);
    border-radius: 50%;
    color: #fff;
    opacity: 0;
    transform: translateY(4px);
    transition: opacity .25s ease, transform .25s ease, background .25s ease;
}

.shop-accordion__expand svg {
    width: 16px;
    height: 16px;
}

.shop-accordion__item.is-active .shop-accordion__expand,
.shop-accordion__item:hover .shop-accordion__expand,
.shop-accordion__item:focus-visible .shop-accordion__expand {
    opacity: 1;
    transform: translateY(0);
}

.shop-accordion__item.is-active:hover .shop-accordion__expand {
    background: rgba(33, 162, 237, .26);
}

@media (hover: hover) and (pointer: fine) {
    .shop-accordion__panel:hover .shop-accordion__item:not(:hover):not(.is-active) {
        opacity: .82;
    }

    .shop-accordion__item:hover {
        box-shadow: 0 18px 38px rgba(8, 47, 88, .16);
    }
}

@media (max-width: 760px) {
    .shop-accordion {
        gap: 18px;
    }

    .shop-accordion__panel {
        height: min(48vh, 420px);
        height: min(48svh, 420px);
        min-height: 320px;
        gap: 7px;
    }

    .shop-accordion__item {
        border-radius: 8px;
    }

    .shop-accordion__item.is-active {
        flex: 2.6 1 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .shop-accordion__tab,
    .shop-accordion__item,
    .shop-accordion__item img {
        transition: none;
    }
}

/* Shop Display: all Dubai stores and warehouse images remain visible together. */
.shop-gallery {
    display: grid;
    gap: clamp(18px, 2vw, 28px);
}

.shop-gallery__group {
    display: grid;
    gap: 10px;
}

.shop-gallery__group-header {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    padding-bottom: 8px;
    border-bottom: 1px solid rgba(10, 49, 91, .15);
}

.shop-gallery__group-header h3 {
    margin: 0;
    color: #0a315b;
    font-family: Georgia, 'Times New Roman', serif;
    font-weight: 400;
}

.shop-gallery__group-header h3 {
    font-size: clamp(20px, 1.55vw, 26px);
    line-height: 1;
}

.shop-gallery__media {
    display: grid;
    gap: clamp(8px, .85vw, 14px);
}

.shop-gallery__group--stores .shop-gallery__media {
    grid-template-columns: minmax(0, .665fr) minmax(0, 1.5fr) minmax(0, .562fr);
    height: clamp(190px, 30vh, 300px);
    height: clamp(190px, 30svh, 300px);
}

.shop-gallery__group--warehouse .shop-gallery__media {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    height: clamp(120px, 18vh, 180px);
    height: clamp(120px, 18svh, 180px);
}

.shop-gallery__item {
    position: relative;
    min-width: 0;
    overflow: hidden;
    padding: 0;
    border: 0;
    border-radius: 10px;
    background: #0a315b;
    cursor: default;
    isolation: isolate;
    box-shadow: 0 12px 26px rgba(8, 47, 88, .12);
}

.shop-gallery__item::after {
    content: '';
    position: absolute;
    z-index: 1;
    inset: 0;
    background: linear-gradient(180deg, transparent 58%, rgba(2, 24, 47, .42));
    pointer-events: none;
}

.shop-gallery__item img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .45s cubic-bezier(.22, 1, .36, 1), filter .35s ease;
}

.shop-gallery__index,
.shop-gallery__expand {
    position: absolute;
    z-index: 2;
    color: #fff;
}

.shop-gallery__index {
    left: 12px;
    bottom: 10px;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: clamp(18px, 1.65vw, 28px);
    line-height: 1;
    text-shadow: 0 2px 12px rgba(0, 17, 34, .42);
}

.shop-gallery__expand {
    right: 10px;
    bottom: 10px;
    display: grid;
    width: 28px;
    height: 28px;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .76);
    border-radius: 50%;
    opacity: 0;
    transform: translateY(4px);
    transition: opacity .22s ease, transform .22s ease, background .22s ease;
}

.shop-gallery__expand svg {
    width: 14px;
    height: 14px;
}

.shop-gallery__item:hover img,
.shop-gallery__item:focus-visible img {
    transform: scale(1.035);
    filter: saturate(1.04);
}

.shop-gallery__item:hover .shop-gallery__expand,
.shop-gallery__item:focus-visible .shop-gallery__expand {
    opacity: 1;
    transform: translateY(0);
}

.shop-gallery__item:focus-visible {
    outline: 2px solid #21a2ed;
    outline-offset: 4px;
}

@media (prefers-reduced-motion: reduce) {
    .shop-gallery__item img,
    .shop-gallery__expand {
        transition: none;
    }
}

@media (max-width: 760px) {
}

/* Shop Display reference treatment: warehouse hero with showroom thumbnails. */
.section-stores {
    padding: clamp(24px, 2.25vw, 34px) 0 clamp(30px, 2.4vw, 38px);
}

.section-stores::before {
    inset: clamp(118px, 10vw, 154px) 0 0;
    opacity: .08;
}

.dubai-stores {
    width: min(100% - 48px, 1120px);
    gap: var(--andeli-title-clearance, clamp(14px, 1.25vw, 20px));
}

.dubai-stores__header::before {
    display: none;
}

.shop-gallery {
    gap: clamp(12px, 1.25vw, 18px);
}

.shop-gallery__group {
    gap: 8px;
}

.shop-gallery__group-header {
    padding-bottom: 6px;
    border-bottom: 0;
}

.shop-gallery__group-header h3 {
    font-size: clamp(17px, 1.28vw, 21px);
}

.shop-gallery__media {
    gap: clamp(8px, .9vw, 14px);
}

.shop-gallery__group--warehouse .shop-gallery__media {
    grid-template-columns: minmax(0, 2.7fr) minmax(130px, 1fr);
    grid-template-rows: repeat(2, minmax(0, 1fr));
    height: clamp(220px, 26vw, 310px);
}

.shop-gallery__group--warehouse .shop-gallery__item:first-child {
    grid-row: 1 / span 2;
}

.shop-gallery__group--stores .shop-gallery__media {
    grid-template-columns: minmax(0, .665fr) minmax(0, 1.5fr) minmax(0, .562fr);
    width: min(100%, 710px);
    height: auto;
    aspect-ratio: 2.84 / 1;
    margin-left: auto;
}

.shop-gallery__item {
    border-radius: 11px;
    box-shadow: 0 8px 20px rgba(8, 47, 88, .14);
}

.shop-gallery__group--warehouse .shop-gallery__item:first-child::before {
    content: 'LOCAL WAREHOUSING\A (LOCAL HUB)';
    position: absolute;
    z-index: 2;
    left: clamp(16px, 2.35vw, 36px);
    top: 50%;
    width: min(42%, 270px);
    color: #fff;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: clamp(24px, 3.25vw, 44px);
    font-weight: 400;
    line-height: .98;
    white-space: pre-line;
    text-shadow: 0 2px 18px rgba(0, 19, 40, .46);
    transform: translateY(-50%);
    pointer-events: none;
}

.shop-gallery__group--warehouse .shop-gallery__item:first-child::after {
    background: linear-gradient(90deg, rgba(3, 39, 75, .74), rgba(3, 39, 75, .18) 54%, rgba(3, 39, 75, .04));
}

.shop-gallery__item::after {
    background: linear-gradient(180deg, transparent 54%, rgba(2, 24, 47, .38));
}

.shop-gallery__index {
    left: 10px;
    bottom: 8px;
    font-size: clamp(16px, 1.38vw, 22px);
}

.shop-gallery__expand {
    right: 8px;
    bottom: 8px;
    width: 25px;
    height: 25px;
}

@media (max-width: 760px) {
}

/* Reference-style information rail. */
.shop-gallery {
    grid-template-columns: minmax(0, 1fr) minmax(180px, 230px);
    column-gap: clamp(22px, 3vw, 52px);
    align-items: start;
}

.shop-gallery__content {
    display: grid;
    min-width: 0;
    gap: clamp(12px, 1.25vw, 18px);
}

.shop-gallery__aside {
    display: grid;
    gap: 0;
    padding-top: clamp(50px, 6.8vw, 96px);
}

.shop-gallery__aside-item {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    padding: 13px 0;
    border-bottom: 1px solid rgba(10, 49, 91, .12);
    color: #0a315b;
}

.shop-gallery__aside-item:first-child {
    border-top: 1px solid rgba(10, 49, 91, .12);
}

.shop-gallery__aside-icon {
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    color: #0a315b;
}

.shop-gallery__aside-icon svg {
    width: 32px;
    height: 32px;
}

.shop-gallery__aside-item p,
.shop-gallery__aside-item strong,
.shop-gallery__aside-item span {
    display: block;
    margin: 0;
}

.shop-gallery__aside-item strong {
    color: #0a315b;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.15;
}

.shop-gallery__aside-item p > span {
    margin-top: 3px;
    color: #5e7182;
    font-size: 11px;
    line-height: 1.25;
}

@media (max-width: 960px) {
    .shop-gallery {
        grid-template-columns: 1fr;
        row-gap: 18px;
    }

    .shop-gallery__aside {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 12px;
        padding-top: 0;
    }

    .shop-gallery__aside-item,
    .shop-gallery__aside-item:first-child {
        min-height: 70px;
        padding: 8px 0;
        border-top: 1px solid rgba(10, 49, 91, .12);
    }
}

@media (max-width: 640px) {
}

/* Compact reference proportions for the Shop Display media hierarchy. */
.section-stores {
    padding: clamp(16px, 1.35vw, 22px) 0 clamp(34px, 3vw, 46px);
}

.dubai-stores {
    width: min(var(--container), calc(100% - 48px));
    gap: var(--andeli-title-clearance, 16px);
}

@media (min-width: 1081px) {
    .section-stores .dubai-stores {
        width: min(1760px, 100%);
    }
}

.shop-gallery {
    grid-template-columns: minmax(0, 1fr) minmax(205px, 250px);
    column-gap: clamp(12px, 1vw, 18px);
}

.shop-gallery__content {
    gap: 14px;
}

.shop-gallery__group {
    gap: 5px;
}

.shop-gallery__group-header {
    position: relative;
    min-height: 22px;
    padding: 0;
}

.shop-gallery__group-header h3 {
    font-size: clamp(17px, 1.3vw, 21px);
}

.shop-gallery__group-header p {
    position: absolute;
    left: 0;
    top: calc(100% + 2px);
    max-width: 190px;
    margin: 0;
    color: #5e7182;
    font-size: 10px;
    line-height: 1.2;
}

.shop-gallery__group--warehouse .shop-gallery__media {
    grid-template-columns: minmax(0, 2.7fr) minmax(140px, 1fr);
    height: clamp(210px, 21vw, 320px);
}

.shop-gallery__group--stores {
    margin-top: 6px;
}

.shop-gallery__group--stores .shop-gallery__group-header {
    min-height: 36px;
}

.shop-gallery__group--stores .shop-gallery__media {
    grid-template-columns: minmax(0, .665fr) minmax(0, 1.5fr) minmax(0, .562fr);
    width: min(100%, 760px);
    height: auto;
    aspect-ratio: 2.84 / 1;
}

.shop-gallery__group--warehouse .shop-gallery__item:first-child::before {
    width: min(44%, 220px);
    font-size: clamp(26px, 2.9vw, 40px);
    text-transform: uppercase;
}

.shop-gallery__item {
    border-radius: 9px;
    box-shadow: 0 6px 16px rgba(8, 47, 88, .12);
}

.shop-gallery__aside {
    padding-top: clamp(54px, 6.6vw, 94px);
}

.shop-gallery__aside-item {
    grid-template-columns: 29px minmax(0, 1fr);
    gap: 8px;
    padding: 9px 0;
}

.shop-gallery__aside-icon {
    width: 29px;
    height: 29px;
}

.shop-gallery__aside-icon svg {
    width: 28px;
    height: 28px;
}

.shop-gallery__aside-item strong {
    font-size: 13px;
}

.shop-gallery__aside-item p > span {
    font-size: 10px;
}

@media (max-width: 760px) {
}

.section-stores {
    background: #f8fbfd;
}

.section-stores::before {
    display: none;
}

/* Match the reference's lower-left information sequence. */
.shop-gallery__group--warehouse {
    display: flex;
    flex-direction: column;
    gap: 9px;
}

.shop-gallery__group--warehouse .shop-gallery__media {
    order: 1;
}

.shop-gallery__group--warehouse .shop-gallery__group-header {
    order: 2;
    min-height: 30px;
    padding: 3px 0 8px;
    border-bottom: 1px solid rgba(10, 49, 91, .15);
}

.shop-gallery__group--warehouse .shop-gallery__group-header h3 {
    font-size: clamp(18px, 1.45vw, 23px);
}

.shop-gallery__group--stores {
    margin-top: 0;
}

/* Align the large-screen composition with the supplied reference. */
@media (min-width: 761px) {
    .shop-gallery__group--stores {
        display: grid;
        grid-template-columns: minmax(220px, .48fr) minmax(0, 1fr);
        column-gap: clamp(24px, 3.2vw, 56px);
        align-items: start;
    }

    .shop-gallery__group--stores .shop-gallery__group-header {
        min-height: 0;
        padding-top: 5px;
    }

    .shop-gallery__group--stores .shop-gallery__group-header p {
        position: static;
        max-width: 230px;
        margin-top: 12px;
        font-size: 11px;
        line-height: 1.35;
    }

    .shop-gallery__group--stores .shop-gallery__media {
        width: min(100%, 760px);
        margin: 0 0 0 auto;
    }
}

.shop-gallery__group--warehouse .shop-gallery__item:first-child::before {
    width: 48%;
    max-width: none;
    font-size: clamp(28px, 2.85vw, 42px);
}

.section-stores {
    background: #eef5f8;
}

.shop-gallery__content {
    position: relative;
}

.shop-gallery__eyebrow {
    margin: 0 0 2px;
    color: #0a315b;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: clamp(17px, 1.3vw, 21px);
    line-height: 1;
}

.shop-gallery__group--warehouse .shop-gallery__item:first-child::before {
    width: 62%;
    font-size: clamp(25px, 2.3vw, 36px);
    line-height: 1.04;
}

@media (max-width: 760px) {
}

/* Align the module's right edge with the desktop header actions. */
@media (min-width: 1600px) {
    .dubai-stores {
        transform: none;
    }

    .shop-gallery {
        transform: none;
    }

    .shop-gallery__group--stores .shop-gallery__media {
        width: 100%;
        max-width: 100%;
        margin-left: 0;
    }
}

/* Enlarge and fill the two reference-style information areas. */
@media (min-width: 961px) {
    .shop-gallery__aside {
        align-self: end;
        height: clamp(260px, 21vw, 320px);
        grid-template-rows: repeat(3, minmax(0, 1fr));
        padding-top: 0;
    }

    .shop-gallery__aside-item {
        grid-template-columns: 42px minmax(0, 1fr);
        gap: 13px;
        padding: 16px 0;
    }

    .shop-gallery__aside-icon {
        width: 42px;
        height: 42px;
    }

    .shop-gallery__aside-icon svg {
        width: 38px;
        height: 38px;
    }

    .shop-gallery__aside-item strong {
        font-size: 15px;
    }

    .shop-gallery__aside-item p > span {
        margin-top: 5px;
        font-size: 11px;
        line-height: 1.35;
    }

    .shop-gallery__group--stores {
        align-items: stretch;
    }

    .shop-gallery__group--stores .shop-gallery__group-header {
        display: flex;
        min-height: 0;
        padding: clamp(24px, 3vw, 46px);
        flex-direction: column;
        justify-content: center;
        border-left: 3px solid #21a2ed;
        background: rgba(255, 255, 255, .5);
    }

    .shop-gallery__group--stores .shop-gallery__group-header::before {
        content: 'Dubai Stores';
        margin-bottom: 14px;
        color: #0a315b;
        font-size: 12px;
        font-weight: 700;
        letter-spacing: .1em;
        text-transform: uppercase;
    }

    .shop-gallery__group--stores .shop-gallery__group-header h3 {
        max-width: 270px;
        font-size: clamp(28px, 2.25vw, 38px);
        line-height: .98;
    }

    .shop-gallery__group--stores .shop-gallery__group-header p {
        max-width: 285px;
        margin-top: 18px;
        font-size: 13px;
        line-height: 1.45;
    }
}

/* Let the showroom image rail finish on the same right edge as the navigation container. */
@media (min-width: 961px) {
    .section-stores .shop-gallery__group--stores .shop-gallery__media {
        width: calc(100% + 250px + clamp(12px, 1vw, 18px));
        max-width: none;
    }
}

/* Keep Shop Display typography aligned with the site's Poppins-based system. */
.section-stores,
.section-stores button,
.section-stores input,
.section-stores textarea,
.section-stores select {
    font-family: Poppins, "Plus Jakarta Sans", Arial, "Helvetica Neue", Helvetica, sans-serif;
}

.section-stores .shop-gallery__group-header h3,
.section-stores .shop-gallery__index,
.section-stores .shop-gallery__group--warehouse .shop-gallery__item:first-child::before,
.section-stores .shop-gallery__group--stores .shop-gallery__group-header::before {
    font-family: inherit;
}

.section-stores .shop-gallery__group-header h3,
.section-stores .shop-gallery__group--warehouse .shop-gallery__item:first-child::before {
    font-weight: 700;
}

.section-stores .shop-gallery__index {
    font-weight: 600;
}

/* Increase Shop Display supporting copy for the same reading scale as nearby modules. */
@media (min-width: 961px) {
    .section-stores .shop-gallery__aside-item strong {
        font-size: clamp(16px, 1.05vw, 18px);
        line-height: 1.2;
    }

    .section-stores .shop-gallery__aside-item p > span {
        margin-top: 6px;
        font-size: clamp(12px, .82vw, 14px);
        line-height: 1.45;
    }

    .section-stores .shop-gallery__group--stores .shop-gallery__group-header::before {
        margin-bottom: 16px;
        font-size: 14px;
    }

    .section-stores .shop-gallery__group--stores .shop-gallery__group-header h3 {
        max-width: none;
        font-size: clamp(26px, 1.9vw, 34px);
        white-space: nowrap;
    }

    .section-stores .shop-gallery__group--stores .shop-gallery__group-header p {
        max-width: none;
        margin-top: 20px;
        font-size: clamp(14px, .9vw, 16px);
        line-height: 1.5;
    }
}

@media (max-width: 960px) {
    .section-stores .shop-gallery__aside-item strong {
        font-size: 15px;
    }

    .section-stores .shop-gallery__aside-item p > span,
    .section-stores .shop-gallery__group--stores .shop-gallery__group-header p {
        font-size: 13px;
        line-height: 1.45;
    }
}

.section-stores {
    background:
        linear-gradient(105deg, rgba(248, 252, 254, .42), rgba(242, 249, 253, .28) 52%, rgba(248, 252, 254, .44)),
        #fafcfd;
}

.section-stores::after {
    display: block;
    z-index: 0;
    background:
        radial-gradient(circle at 12% 14%, rgba(255, 255, 255, .14), transparent 25%),
        linear-gradient(180deg, rgba(255, 255, 255, .01), rgba(255, 255, 255, .03));
}

.section-stores .dubai-stores__titlecopy h2 {
    color: #fff;
    text-shadow: 0 3px 18px rgba(0, 37, 78, .36);
}

.section-stores .shop-gallery__group--warehouse .shop-gallery__item:first-child::before {
    letter-spacing: .012em;
}

@media (min-width: 961px) {
    .section-stores .shop-gallery__aside-item strong {
        color: #0a315b;
        font-size: clamp(17px, 1.1vw, 19px);
        letter-spacing: -.015em;
    }

    .section-stores .shop-gallery__aside-item p > span {
        color: #587087;
        font-size: clamp(13px, .86vw, 15px);
        font-weight: 500;
    }

    .section-stores .shop-gallery__group--stores .shop-gallery__group-header::before {
        color: #087dc7;
        font-weight: 800;
        letter-spacing: .13em;
    }

    .section-stores .shop-gallery__group--stores .shop-gallery__group-header h3 {
        color: #082f5b;
        font-weight: 700;
        letter-spacing: -.03em;
    }

    .section-stores .shop-gallery__group--stores .shop-gallery__group-header p {
        color: #587087;
        font-weight: 500;
    }
}

/* Give the two supporting information areas their own calm brand surface. */
.section-stores .shop-gallery__aside {
    overflow: hidden;
    border: 1px solid rgba(25, 123, 193, .16);
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 14px 28px rgba(12, 74, 120, .1), inset 0 1px 0 rgba(255, 255, 255, .82);
}

.section-stores .shop-gallery__group--stores .shop-gallery__group-header {
    overflow: hidden;
    border: 1px solid rgba(25, 123, 193, .16);
    border-left: 3px solid #21a2ed;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 14px 28px rgba(12, 74, 120, .1), inset 0 1px 0 rgba(255, 255, 255, .86);
}

@media (min-width: 961px) {
    .section-stores .shop-gallery__group--stores .shop-gallery__group-header h3 {
        font-size: clamp(23px, 1.4vw, 29px);
    }

    .section-stores .shop-gallery__aside {
        position: relative;
        z-index: 0;
        overflow: visible;
    }

    .section-stores .shop-gallery__aside::before {
        content: '';
        position: absolute;
        z-index: -1;
        inset: -8px -clamp(24px, 2vw, 32px) 0 -clamp(28px, 2.2vw, 36px);
        border: 1px solid rgba(25, 123, 193, .16);
        border-radius: 16px;
        background: linear-gradient(145deg, #ffffff 0%, #e8f6fd 100%);
        box-shadow: 0 14px 28px rgba(12, 74, 120, .1), inset 0 1px 0 rgba(255, 255, 255, .82);
    }

    .section-stores .shop-gallery__group--stores .shop-gallery__group-header {
        position: relative;
        z-index: 0;
        overflow: visible;
    }

    .section-stores .shop-gallery__group--stores .shop-gallery__group-header::after {
        content: '';
        position: absolute;
        z-index: -1;
        inset: -12px -clamp(28px, 2.2vw, 38px) 0 -clamp(12px, 1vw, 18px);
        border: 1px solid rgba(25, 123, 193, .16);
        border-left: 3px solid #21a2ed;
        border-radius: 16px;
        background: linear-gradient(145deg, #ffffff 0%, #e5f5fe 100%);
        box-shadow: 0 14px 28px rgba(12, 74, 120, .1), inset 0 1px 0 rgba(255, 255, 255, .86);
    }
}

/* Replace the large flat surfaces with the lighter, layered card rhythm of the reference. */
.section-stores::before {
    inset: 0;
    display: block;
    z-index: 0;
    background: url('../images/shop-display-tech-grid.webp') right center / min(58vw, 1080px) auto no-repeat;
    opacity: .14;
    -webkit-mask-image: linear-gradient(90deg, transparent 34%, #000 70%);
    mask-image: linear-gradient(90deg, transparent 34%, #000 70%);
}

.section-stores .shop-gallery__group--warehouse .shop-gallery__item:first-child::after {
    background: linear-gradient(90deg, rgba(0, 29, 72, .78) 0%, rgba(0, 42, 91, .5) 43%, rgba(0, 30, 70, .08) 77%);
}

@media (min-width: 961px) {
    .section-stores .shop-gallery__aside {
        gap: 14px;
        overflow: visible;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
    }

    .section-stores .shop-gallery__aside::before {
        display: none;
    }

    .section-stores .shop-gallery__aside-item,
    .section-stores .shop-gallery__aside-item:first-child {
        padding: 16px 18px;
        border: 1px solid rgba(31, 129, 200, .14);
        border-radius: 12px;
        background: #fff;
        box-shadow: 0 10px 22px rgba(16, 79, 126, .11), inset 0 1px 0 rgba(255, 255, 255, .9);
    }

    .section-stores .shop-gallery__aside-item:hover {
        border-color: rgba(25, 147, 225, .32);
        box-shadow: 0 14px 28px rgba(16, 79, 126, .15), inset 0 1px 0 rgba(255, 255, 255, .92);
    }

    .section-stores .shop-gallery__group--stores .shop-gallery__group-header {
        overflow: hidden;
        border: 1px solid rgba(25, 123, 193, .2);
        border-left: 3px solid #1597e5;
        border-radius: 12px;
        background: #fff;
        box-shadow: 0 14px 28px rgba(12, 74, 120, .1), inset 0 1px 0 rgba(255, 255, 255, .92);
    }

    .section-stores .shop-gallery__group--stores .shop-gallery__group-header::after {
        display: none;
    }

    .section-stores .shop-gallery__group--stores .shop-gallery__group-header::before {
        color: #087dc7;
        font-weight: 800;
    }

    .section-stores .shop-gallery__group--stores .shop-gallery__group-header h3 {
        color: #082f5b;
        text-shadow: none;
    }

    .section-stores .shop-gallery__group--stores .shop-gallery__group-header p {
        color: #587087;
    }

    .section-stores .shop-gallery__aside {
        width: 100%;
        margin-left: 0;
    }

    .section-stores .shop-gallery__group--stores .shop-gallery__group-header {
        width: calc(100% + 42px);
    }
}

/* Separate the service panel from the showroom card with a restrained solid blue surface. */
.section-stores .shop-gallery__aside {
    gap: 0;
    padding: 10px 18px;
    overflow: hidden;
    border: 0;
    border-radius: 16px;
    background: #fff;
    box-shadow: none;
}

.section-stores .shop-gallery__aside-item,
.section-stores .shop-gallery__aside-item:first-child {
    padding: 16px 0;
    border: 0;
    border-top: 1px solid #e3edf3;
    border-radius: 0;
    background: #fff;
    box-shadow: none;
}

.section-stores .shop-gallery__aside-item:last-child {
    border-bottom: 1px solid #e3edf3;
}

.section-stores .shop-gallery__aside-item:hover {
    border-top-color: #e3edf3;
    border-right-color: transparent;
    border-bottom-color: transparent;
    border-left-color: transparent;
    background: #fff;
    box-shadow: none;
}

.section-stores .shop-gallery__aside-item:last-child:hover {
    border-bottom-color: #e3edf3;
}

.section-stores .shop-gallery__aside-item strong,
.section-stores .shop-gallery__aside-icon {
    color: #087dc7;
}

.section-stores .shop-gallery__aside-item strong {
    font-size: clamp(16px, 1.1vw, 19px);
    line-height: 1.18;
}

.section-stores .shop-gallery__aside-item p > span {
    color: #587087;
    font-size: 13px;
    line-height: 1.35;
}

@media (min-width: 961px) {
    .section-stores .shop-gallery__aside {
        width: 100%;
        height: clamp(260px, 21vw, 320px);
        margin-left: 0;
        grid-template-rows: repeat(3, minmax(0, 1fr));
    }

    .section-stores .shop-gallery__aside-icon {
        width: 36px;
        height: 36px;
    }

    .section-stores .shop-gallery__aside-icon svg {
        width: 34px;
        height: 34px;
    }

    .section-stores .shop-gallery__group--stores .shop-gallery__group-header p {
        font-size: clamp(16px, 1vw, 18px);
        line-height: 1.55;
    }
}

/* Keep the Shop Display section on one uninterrupted background surface. */
.section-stores {
    background: #eef5f8;
}

.section-stores .dubai-stores__titlecopy h2 {
    color: #000;
    text-shadow: none;
}


/* Shop Display: unified phone layout, gallery above service information. */
@media (max-width: 760px) {
    .section-stores {
        padding: 24px 0 36px;
    }

    .dubai-stores {
        width: calc(100% - 32px);
        gap: 24px;
    }

    .shop-gallery {
        gap: 22px;
        grid-template-columns: minmax(0, 1fr);
        width: 100%;
        transform: none;
    }

    .shop-gallery__group {
        gap: 8px;
    }

    .shop-gallery__group-header {
        padding-bottom: 6px;
    }

    .shop-gallery__group--stores .shop-gallery__media {
        height: auto;
        width: 100%;
        aspect-ratio: 2.92 / 1;
    }

    .shop-gallery__group--warehouse .shop-gallery__media {
        height: clamp(170px, 52vw, 280px);
        grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr);
        grid-template-rows: repeat(2, minmax(0, 1fr));
        width: 100%;
        gap: 8px;
    }

    .shop-gallery__media {
        gap: 6px;
    }

    .shop-gallery__item {
        border-radius: 7px;
    }

    .shop-gallery__index {
        left: 8px;
        bottom: 7px;
        font-size: 15px;
    }

    .shop-gallery__expand {
        display: none;
    }

    .shop-gallery__group--warehouse .shop-gallery__item:first-child::before {
        left: 14px;
        width: 70%;
        font-size: clamp(20px, 5vw, 28px);
    }

    .shop-gallery__aside {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .shop-gallery__aside-item {
        grid-template-columns: 30px minmax(0, 1fr);
        min-height: 0;
    }

    .shop-gallery__group--stores .shop-gallery__group-header {
        min-height: 34px;
    }

    .shop-gallery__eyebrow {
        font-size: 16px;
    }

    .shop-gallery__content {
        gap: 16px;
        width: 100%;
        transform: none;
    }

    .shop-gallery__group--stores {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 12px;
        margin: 0;
    }

    .section-stores .shop-gallery__group--stores .shop-gallery__group-header {
        width: 100%;
        min-height: 0;
        padding: 0;
        margin: 0;
        background: transparent;
        border: 0;
        box-shadow: none;
        border-radius: 0;
    }

    .section-stores .shop-gallery__group--stores .shop-gallery__group-header h3 {
        margin: 0;
        font-size: 18px;
        line-height: 1.3;
        white-space: normal;
    }

    .section-stores .shop-gallery__group--stores .shop-gallery__group-header p {
        display: none;
    }

    .section-stores .shop-gallery__group--stores .shop-gallery__group-header::before,
    .section-stores .shop-gallery__group--stores .shop-gallery__group-header::after {
        display: none;
        content: none;
    }

    .section-stores .shop-gallery__group--stores .shop-gallery__media {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        grid-template-rows: none;
        width: 100%;
        max-width: 100%;
        height: auto;
        aspect-ratio: auto;
        margin: 0;
        gap: 8px;
    }

    .shop-gallery__group--stores .shop-gallery__item {
        aspect-ratio: 3 / 4;
        min-width: 0;
    }

    .section-stores .shop-gallery__aside {
        width: 100%;
        height: auto;
        margin: 0;
        padding: 6px 16px;
        grid-template-columns: minmax(0, 1fr);
        grid-template-rows: auto;
        gap: 0;
    }

    .section-stores .shop-gallery__aside-item,
    .section-stores .shop-gallery__aside-item:first-child {
        grid-template-columns: 28px minmax(0, 1fr);
        gap: 12px;
        min-height: 0;
        padding: 14px 0;
    }

    .section-stores .shop-gallery__aside-item strong {
        font-size: 15px;
        line-height: 1.3;
    }

    .section-stores .shop-gallery__aside-item p > span {
        font-size: 12px;
        line-height: 1.5;
    }

}

/* Primary section title system for the homepage and shared inquiry CTA. */
body.home .product-pane__copy > .andeli-section-title,
body.home .section-stores .andeli-section-title,
body.home .workshop-heading > .andeli-section-title,
body.home .section-about .andeli-section-title,
.site-footer .footer-inquiry__lead > .andeli-section-title {
    margin: 0;
    font-family: Poppins, "Plus Jakarta Sans", Arial, "Helvetica Neue", Helvetica, sans-serif;
    font-size: 38.4px;
    font-weight: 700;
    line-height: 42px;
    letter-spacing: -.035em;
    text-wrap: balance;
}

body.home .section-stores .andeli-section-title,
body.home .section-about .andeli-section-title,
.site-footer .footer-inquiry__lead > .andeli-section-title {
    font-size: var(--andeli-primary-title-size);
    line-height: 1;
}

.site-footer .footer-inquiry__lead > .andeli-section-title {
    color: #006db8;
}

body.home .section-about .andeli-section-title,
body.home .section-stores .andeli-section-title {
    color: #000;
}

/* Keep the visible whitespace above and below the selected title groups equal. */
body.home .section-stores,
body.home .section-about,
.site-footer .footer-inquiry {
    --andeli-primary-title-size: clamp(38.4px, 2.8vw, 50px);
    --andeli-title-clearance: 32px;
}

.site-footer .footer-inquiry--about-title-size {
    --andeli-primary-title-size: clamp(38px, 4vw, 58px);
}

.section-stores .shop-gallery__aside {
    border: 1px solid #e3edf3;
}

.section-stores::before,
.section-stores::after {
    display: none;
}
.product-stage {
    position: relative;
    overflow: hidden;
    touch-action: pan-y;
}

@media (min-width: 761px) {
    .product-stage {
        min-height: 680px;
    }
}

/* Keep all non-home header anchors aligned beneath the fixed navigation. */
#products,
#dubai-stores,
#about,
#contact {
    scroll-margin-top: 96px;
}

/* Keep the selected factory image fully visible while filling the wide section. */
@media (min-width: 1200px) {
    .section-local-advantages::before {
        background:
            linear-gradient(112deg, rgba(220, 233, 241, .16) 0%, rgba(191, 218, 233, .1) 52%, rgba(224, 235, 241, .14) 100%),
            linear-gradient(180deg, rgba(255, 255, 255, .04), rgba(232, 243, 249, .06));
    }
}

.site-footer .footer-cta::before {
    content: none;
}

.site-footer .footer-cta .eyebrow {
    margin: 0 0 12px;
    color: #0079c9;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .14em;
}

.site-footer .footer-cta .eyebrow::before {
    display: none;
}

.site-footer .footer-cta h2 {
    max-width: 440px;
    margin: 0;
    color: #073257;
    font-size: clamp(32px, 2.55vw, 46px);
    font-weight: 750;
    line-height: 1.1;
    letter-spacing: -.025em;
    text-transform: none;
}

.site-footer .footer-cta p:not(.eyebrow) {
    max-width: 430px;
    margin: 16px 0 0;
    color: #45667b;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.6;
}

.site-footer .footer-inquiry-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-content: center;
    gap: 16px 18px;
    margin: 0;
    padding: 28px;
    border: 1px solid #d8e8f2;
    border-radius: 12px;
    background: #ffffff;
    box-shadow: 0 10px 22px rgba(18, 72, 108, .08);
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
}

.site-footer .footer-inquiry-form__field {
    min-width: 0;
}

.site-footer .footer-inquiry-form__field--message {
    grid-column: 1 / -1;
}

.site-footer .footer-inquiry-form label {
    display: block;
    margin-bottom: 6px;
    color: #163a53;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.25;
    text-transform: none;
}

.site-footer .footer-inquiry-form label span {
    color: #0079c9;
}

.site-footer .footer-inquiry-form input,
.site-footer .footer-inquiry-form textarea {
    display: block;
    width: 100%;
    border: 1px solid #c5dce9;
    border-radius: 6px;
    background: #f9fcfe;
    color: #163a53;
    font-family: inherit;
    font-size: 16px;
    line-height: 1.4;
}

.site-footer .footer-inquiry-form input {
    min-height: 42px;
    padding: 9px 12px;
}

.site-footer .footer-inquiry-form textarea {
    min-height: 66px;
    padding: 9px 12px;
    resize: vertical;
}

.site-footer .footer-inquiry-form textarea::placeholder {
    color: #698598;
    opacity: 1;
}

.site-footer .footer-inquiry-form input:focus,
.site-footer .footer-inquiry-form textarea:focus {
    outline: 0;
    border-color: #0079c9;
    box-shadow: 0 0 0 3px rgba(0, 121, 201, .14);
}

.site-footer .footer-inquiry-form__submit {
    grid-column: 1 / -1;
    justify-self: start;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: auto;
    min-width: 186px;
    min-height: 48px;
    padding: 0 22px;
    border: 1px solid #0079c9;
    border-radius: 7px;
    background: #0079c9;
    color: #ffffff;
    font-family: inherit;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    box-shadow: none;
    transform: none;
    transition: background .2s ease, border-color .2s ease;
}

.site-footer .footer-inquiry-form__submit svg {
    width: 17px;
    height: 17px;
}

.site-footer .footer-inquiry-form__submit:hover {
    border-color: #006db8;
    background: #006db8;
    transform: none;
}

@media (max-width: 1080px) {

    .site-footer .footer-inquiry-form {
        padding: 26px;
    }
}

@media (max-width: 760px) {

    .site-footer .footer-cta h2 {
        font-size: clamp(28px, 8vw, 38px);
    }

    .site-footer .footer-inquiry-form {
        grid-template-columns: 1fr;
        padding: 20px;
    }

    .site-footer .footer-inquiry-form__field--message,
    .site-footer .footer-inquiry-form__submit {
        grid-column: auto;
    }

    .site-footer .footer-inquiry-form__submit {
        width: 100%;
    }
}

.site-footer .footer-cta::before {
    content: none;
}

.site-footer .footer-cta .eyebrow {
    margin: 0 0 12px;
    color: #0079c9;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .14em;
}

.site-footer .footer-cta .eyebrow::before {
    display: none;
}

.site-footer .footer-cta h2 {
    max-width: 440px;
    margin: 0;
    color: #073257;
    font-size: clamp(32px, 2.55vw, 46px);
    font-weight: 750;
    line-height: 1.1;
    letter-spacing: -.025em;
    text-transform: none;
}

.site-footer .footer-cta p:not(.eyebrow) {
    max-width: 430px;
    margin: 16px 0 0;
    color: #45667b;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.6;
}

.site-footer .footer-inquiry-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-content: center;
    gap: 16px 18px;
    margin: 0;
    padding: 28px;
    border: 1px solid #d8e8f2;
    border-radius: 12px;
    background: #ffffff;
    box-shadow: 0 10px 22px rgba(18, 72, 108, .08);
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
}

.site-footer .footer-inquiry-form__field {
    min-width: 0;
}

.site-footer .footer-inquiry-form__field--message {
    grid-column: 1 / -1;
}

.site-footer .footer-inquiry-form label {
    display: block;
    margin-bottom: 6px;
    color: #163a53;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.25;
    text-transform: none;
}

.site-footer .footer-inquiry-form label span {
    color: #0079c9;
}

.site-footer .footer-inquiry-form input,
.site-footer .footer-inquiry-form textarea {
    display: block;
    width: 100%;
    border: 1px solid #c5dce9;
    border-radius: 6px;
    background: #f9fcfe;
    color: #163a53;
    font-family: inherit;
    font-size: 16px;
    line-height: 1.4;
}

.site-footer .footer-inquiry-form input {
    min-height: 42px;
    padding: 9px 12px;
}

.site-footer .footer-inquiry-form textarea {
    min-height: 66px;
    padding: 9px 12px;
    resize: vertical;
}

.site-footer .footer-inquiry-form textarea::placeholder {
    color: #698598;
    opacity: 1;
}

.site-footer .footer-inquiry-form input:focus,
.site-footer .footer-inquiry-form textarea:focus {
    outline: 0;
    border-color: #0079c9;
    box-shadow: 0 0 0 3px rgba(0, 121, 201, .14);
}

.site-footer .footer-inquiry-form__submit {
    grid-column: 1 / -1;
    justify-self: start;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: auto;
    min-width: 186px;
    min-height: 48px;
    padding: 0 22px;
    border: 1px solid #0079c9;
    border-radius: 7px;
    background: #0079c9;
    color: #ffffff;
    font-family: inherit;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    box-shadow: none;
    transform: none;
    transition: background .2s ease, border-color .2s ease;
}

.site-footer .footer-inquiry-form__submit svg {
    width: 17px;
    height: 17px;
}

.site-footer .footer-inquiry-form__submit:hover {
    border-color: #006db8;
    background: #006db8;
    transform: none;
}

@media (max-width: 1080px) {

    .site-footer .footer-inquiry-form {
        padding: 26px;
    }
}

@media (max-width: 760px) {

    .site-footer .footer-cta h2 {
        font-size: clamp(28px, 8vw, 38px);
    }

    .site-footer .footer-inquiry-form {
        grid-template-columns: 1fr;
        padding: 20px;
    }

    .site-footer .footer-inquiry-form__field--message,
    .site-footer .footer-inquiry-form__submit {
        grid-column: auto;
    }

    .site-footer .footer-inquiry-form__submit {
        width: 100%;
    }
}

.site-footer .footer-cta::before {
    content: "";
    position: absolute;
    z-index: 0;
    inset: 20px;
    width: auto;
    height: auto;
    background: transparent;
    border: 1px solid rgba(237, 246, 252, .28);
    pointer-events: none;
}

.site-footer .footer-cta .eyebrow {
    margin-bottom: 18px;
    color: rgba(255, 255, 255, .84);
    font-size: 13px;
    letter-spacing: .16em;
}

.site-footer .footer-cta .eyebrow::before {
    display: none;
}

.site-footer .footer-cta h2 {
    max-width: 760px;
    margin: 0;
    color: #ffffff;
    font-size: clamp(48px, 5.4vw, 82px);
    font-weight: 800;
    line-height: .96;
    letter-spacing: -.045em;
    text-transform: uppercase;
}

.site-footer .footer-inquiry-form {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 26px 30px;
    margin: -88px clamp(30px, 5vw, 86px) 70px;
    padding: 34px clamp(30px, 4vw, 58px);
    border: 1px solid rgba(226, 238, 247, .28);
    border-radius: 0;
    background: rgba(4, 18, 33, .8);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05);
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
}

.site-footer .footer-inquiry-form__field {
    min-width: 0;
}

.site-footer .footer-inquiry-form__field--message {
    grid-column: 1 / 4;
}

.site-footer .footer-inquiry-form label {
    display: block;
    margin-bottom: 8px;
    color: #ffffff;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.25;
    text-transform: uppercase;
}

.site-footer .footer-inquiry-form label span {
    color: #64bdff;
}

.site-footer .footer-inquiry-form input,
.site-footer .footer-inquiry-form textarea {
    display: block;
    width: 100%;
    border: 0;
    border-bottom: 2px solid rgba(255, 255, 255, .84);
    border-radius: 0;
    background: transparent;
    color: #ffffff;
    font-family: inherit;
    font-size: 16px;
    line-height: 1.4;
}

.site-footer .footer-inquiry-form input {
    min-height: 42px;
    padding: 4px 0 8px;
}

.site-footer .footer-inquiry-form textarea {
    min-height: 42px;
    padding: 4px 0 8px;
    resize: vertical;
}

.site-footer .footer-inquiry-form textarea::placeholder {
    color: rgba(238, 245, 251, .7);
    opacity: 1;
}

.site-footer .footer-inquiry-form input:focus,
.site-footer .footer-inquiry-form textarea:focus {
    outline: 0;
    border-color: #64bdff;
    box-shadow: 0 3px 0 -1px rgba(100, 189, 255, .35);
}

.site-footer .footer-inquiry-form__submit {
    grid-column: 4 / 5;
    align-self: end;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    width: 100%;
    min-height: 58px;
    border: 1px solid #ffffff;
    border-radius: 999px;
    background: #ffffff;
    color: #0b2139;
    font-family: inherit;
    font-size: 16px;
    font-weight: 700;
    cursor: pointer;
    transition: background .2s ease, border-color .2s ease, transform .2s ease;
}

.site-footer .footer-inquiry-form__submit svg {
    width: 19px;
    height: 19px;
}

.site-footer .footer-inquiry-form__submit:hover {
    border-color: #d7efff;
    background: #d7efff;
    transform: translateY(-1px);
}

@media (max-width: 1080px) {

    .site-footer .footer-inquiry-form {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 24px 28px;
        margin: -56px 48px 48px;
        padding: 34px 40px;
    }

    .site-footer .footer-inquiry-form__field--message,
    .site-footer .footer-inquiry-form__submit {
        grid-column: 1 / -1;
    }

    .site-footer .footer-inquiry-form__submit {
        width: min(100%, 280px);
    }
}

@media (max-width: 760px) {

    .site-footer .footer-cta::before {
        inset: 14px;
    }

    .site-footer .footer-cta h2 {
        font-size: clamp(40px, 13vw, 58px);
    }

    .site-footer .footer-inquiry-form {
        grid-template-columns: 1fr;
        gap: 20px;
        margin: -42px 20px 20px;
        padding: 28px 24px;
    }

    .site-footer .footer-inquiry-form__field--message,
    .site-footer .footer-inquiry-form__submit {
        grid-column: auto;
    }

    .site-footer .footer-inquiry-form__submit {
        width: 100%;
    }
}

.site-footer .footer-cta::before {
    content: none;
}

.site-footer .footer-cta__copy {
    position: relative;
    z-index: 1;
    min-width: 0;
    max-width: 520px;
}

.site-footer .footer-cta .eyebrow {
    margin: 0 0 12px;
    color: #bfe6ff;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .14em;
}

.site-footer .footer-cta .eyebrow::before {
    display: none;
}

.site-footer .footer-cta h2 {
    max-width: 520px;
    margin: 0;
    color: #ffffff;
    font-size: clamp(40px, 3vw, 54px);
    font-weight: 750;
    line-height: 1.1;
    letter-spacing: -.025em;
    text-transform: none;
}

.site-footer .footer-cta p:not(.eyebrow) {
    max-width: 470px;
    margin: 22px 0 0;
    color: #dcecf5;
    font-size: 17px;
    font-weight: 500;
    line-height: 1.6;
}

.site-footer .footer-inquiry-form {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-self: stretch;
    align-content: center;
    gap: 18px 20px;
    margin: 0;
    padding: clamp(42px, 4vw, 66px);
    border: 0;
    border-radius: 0 22px 22px 0;
    background: #ffffff;
    box-shadow: none;
}

.site-footer .footer-inquiry-form__field {
    min-width: 0;
}

.site-footer .footer-inquiry-form__field--message {
    grid-column: 1 / -1;
}

.site-footer .footer-inquiry-form label {
    display: block;
    margin-bottom: 8px;
    color: #163a53;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.25;
}

.site-footer .footer-inquiry-form label span {
    color: #0079c9;
}

.site-footer .footer-inquiry-form input,
.site-footer .footer-inquiry-form textarea {
    display: block;
    width: 100%;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: #f8fafc;
    color: #163a53;
    font-family: inherit;
    font-size: 16px;
    line-height: 1.35;
}

.site-footer .footer-inquiry-form input {
    min-height: 50px;
    padding: 11px 14px;
}

.site-footer .footer-inquiry-form textarea {
    min-height: 104px;
    padding: 12px 14px;
    resize: vertical;
}

.site-footer .footer-inquiry-form textarea::placeholder {
    color: #698598;
    opacity: 1;
}

.site-footer .footer-inquiry-form input:focus,
.site-footer .footer-inquiry-form textarea:focus {
    outline: 0;
    border-color: #0079c9;
    box-shadow: 0 0 0 3px rgba(0, 121, 201, .14);
}

.site-footer .footer-inquiry-form__submit {
    grid-column: 1 / -1;
    justify-self: start;
    align-self: start;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-width: 218px;
    min-height: 54px;
    padding: 0 24px;
    border: 1px solid var(--blue);
    border-radius: 999px;
    background: var(--blue);
    color: #ffffff;
    font-family: inherit;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    box-shadow: 0 10px 20px rgba(0, 121, 201, .16);
    transition: background .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.site-footer .footer-inquiry-form__submit svg {
    width: 16px;
    height: 16px;
}

.site-footer .footer-inquiry-form__submit:hover {
    border-color: #005a98;
    background: #005a98;
    box-shadow: 0 9px 18px rgba(0, 121, 201, .2);
    transform: translateY(-1px);
}

@media (max-width: 1080px) {

    .site-footer .footer-inquiry-form {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        padding: 38px;
        border-radius: 0 0 20px 20px;
    }

    .site-footer .footer-inquiry-form__field--message,
    .site-footer .footer-inquiry-form__submit {
        grid-column: 1 / -1;
    }

    .site-footer .footer-inquiry-form__submit {
        width: min(100%, 190px);
    }
}

@media (max-width: 760px) {

    .site-footer .footer-cta h2 {
        font-size: clamp(28px, 8vw, 38px);
    }

    .site-footer .footer-inquiry-form {
        grid-template-columns: 1fr;
        padding: 28px 24px;
        border-radius: 0 0 16px 16px;
    }

    .site-footer .footer-inquiry-form__field--message,
    .site-footer .footer-inquiry-form__submit {
        grid-column: auto;
    }

    .site-footer .footer-inquiry-form__submit {
        width: 100%;
    }
}

@media (max-width: 960px) {
    .site-header--overlay:not(.is-scrolled) .nav-shell,
    .site-header.is-scrolled .nav-shell {
        padding-right: 20px;
        padding-left: 20px;
    }

    .nav-shell {
        min-height: 66px;
        padding: 0 14px;
        border-radius: 18px;
    }

    .brand img {
        width: 154px;
    }

    .header-actions {
        display: flex;
    }

    .header-actions .header-search {
        display: none;
    }

    .header-contact {
        padding-inline: 12px;
    }

    .nav-toggle {
        display: block;
    }

    .primary-nav {
        position: absolute;
        left: 14px;
        right: 14px;
        top: calc(100% + 8px);
        max-height: calc(100vh - 90px);
        max-height: calc(100svh - 90px);
        overflow-y: auto;
        overscroll-behavior: contain;
        display: none;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        padding: 10px;
        border: 1px solid var(--line);
        border-radius: var(--radius);
        background: #fff;
        box-shadow: 0 18px 50px rgba(6, 16, 31, .12);
    }

    .primary-nav.is-open {
        display: flex;
    }

    .primary-nav a,
    .primary-nav__item {
        padding: 10px 12px;
        border-bottom: 0;
    }

}

/* Keep the fixed homepage navigation clear of the hero poster. */
.site-header--overlay + .site-main .hero {
    min-height: calc(100svh - 74px);
    height: calc(100svh - 74px);
    margin-top: 74px;
}

@media (max-width: 760px) {
    .site-header--overlay + .site-main .hero {
        min-height: 0;
        height: auto;
        aspect-ratio: 8 / 3;
        margin-top: 66px;
    }
}

.site-footer .footer-cta::before,
.site-footer .footer-cta__content::before {
    content: none;
}

.site-footer .footer-cta::after {
    display: block;
    grid-column: 2;
    grid-row: 1;
    min-height: 312px;
    content: "";
    background: url("../images/factory-workshop-clean-08.webp") center / cover no-repeat;
    border-radius: 0 22px 22px 0;
}

.site-footer .footer-cta__copy {
    max-width: 510px;
}

.site-footer .footer-cta .eyebrow {
    margin: 0 0 14px;
    color: #a8e1ff;
}

.site-footer .footer-cta h2 {
    max-width: 460px;
    color: #ffffff;
    font-size: clamp(38px, 3.05vw, 54px);
    line-height: 1.04;
}

.site-footer .footer-cta p:not(.eyebrow) {
    max-width: 450px;
    margin: 20px 0 0;
    color: rgba(255, 255, 255, .82);
    font-size: 16px;
}

.site-footer .footer-cta__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 30px;
}

.site-footer .footer-cta__action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 50px;
    padding: 0 21px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-family: inherit;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: background .2s ease, border-color .2s ease, box-shadow .2s ease, color .2s ease, transform .2s ease;
}

.site-footer .footer-cta__action svg {
    width: 17px;
    height: 17px;
}

.site-footer .footer-cta__action--primary {
    background: #ffffff;
    color: #006faf;
    box-shadow: 0 10px 20px rgba(1, 35, 61, .18);
}

.site-footer .footer-cta__action--primary:hover {
    background: #dff3ff;
    box-shadow: 0 12px 24px rgba(1, 35, 61, .25);
    transform: translateY(-1px);
}

.site-footer .footer-cta__action--secondary {
    border-color: rgba(255, 255, 255, .72);
    background: transparent;
    color: #ffffff;
}

.site-footer .footer-cta__action--secondary:hover {
    border-color: #ffffff;
    background: rgba(255, 255, 255, .12);
    color: #ffffff;
}

@media (max-width: 1080px) {
    .site-footer .footer-cta {
        margin-left: 0;
        margin-top: 36px;
        gap: 0;
        width: 100%;
        margin: 0;
        grid-template-columns: 1fr;
        grid-template-rows: auto minmax(220px, 32vw);
        min-height: 0 !important;
        padding: 32px 40px;
    }
    .site-footer .footer-cta__content {
        border-bottom: 1px solid #c9e1ef;
        padding: 48px;
        grid-column: 1;
        grid-row: 1;
        min-height: 0 !important;
        border-radius: 20px 20px 0 0;
    }

    .site-footer .footer-cta::after {
        grid-column: 1;
        grid-row: 2;
        min-height: 220px;
        border-radius: 0 0 20px 20px;
    }
}

@media (max-width: 760px) {

    .site-footer .footer-cta::after {
        min-height: 180px;
        background-position: center;
        border-radius: 0 0 16px 16px;
    }

    .site-footer .footer-cta h2 {
        font-size: clamp(34px, 9vw, 44px);
    }

    .site-footer .footer-cta__actions {
        flex-direction: column;
    }

    .site-footer .footer-cta__action {
        width: 100%;
    }
}

.site-footer .footer-cta .eyebrow {
    margin-bottom: 10px;
}

.site-footer .footer-cta h2 {
    font-size: clamp(36px, 2.8vw, 48px);
}

.site-footer .footer-cta p:not(.eyebrow) {
    margin-top: 14px;
    font-size: 15px;
    line-height: 1.5;
}

@media (max-width: 760px) {
}

.site-footer .footer-inquiry {
    width: 100%;
    max-width: none;
    margin-right: 0;
    margin-left: 0;
    padding-top: var(--andeli-title-clearance, clamp(48px, 4vw, 64px));
    padding-bottom: clamp(48px, 4vw, 64px);
    padding-right: 20px;
    padding-left: 20px;
    background: #fff;
    text-align: left;
}

@media (min-width: 761px) and (max-width: 1080px) {
    .site-footer .footer-inquiry {
        padding-right: 96px;
        padding-left: 96px;
    }
}

@media (min-width: 1081px) {
    .site-footer .footer-inquiry {
        padding-right: clamp(96px, 7vw, 144px);
        padding-left: clamp(96px, 7vw, 144px);
    }
}

.site-footer .footer-inquiry__lead h2 {
    text-align: center;
}

.site-footer .footer-inquiry__lead h2::after {
    display: block;
    width: 58px;
    height: 3px;
    margin: 24px auto var(--andeli-title-clearance, 40px);
    background: var(--blue);
    content: "";
}

.site-footer .footer-inquiry__actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(18px, 1.4vw, 26px);
}

.site-footer .footer-inquiry__action {
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr);
    gap: 18px;
    align-items: start;
    min-height: 168px;
    padding: clamp(28px, 1.9vw, 36px) clamp(28px, 2.6vw, 48px);
    border: 0;
    border-radius: 10px;
    background: #f5f7f9;
    box-shadow: none;
    color: #0b2942;
    text-decoration: none;
    transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.site-footer .footer-inquiry__icon {
    display: block;
    width: 32px;
    height: 32px;
    color: var(--blue);
}

.site-footer .footer-inquiry__icon svg {
    width: 30px;
    height: 30px;
}

.site-footer .footer-inquiry__action strong,
.site-footer .footer-inquiry__action small {
    display: block;
}

.site-footer .footer-inquiry__action strong {
    margin-top: 0;
    color: #0b2942;
    font-size: clamp(18px, 1.35vw, 23px);
    font-weight: 700;
    line-height: 1.2;
}

.site-footer .footer-inquiry__action small {
    margin-top: 20px;
    color: #526b7d;
    font-size: 16px;
    line-height: 1.65;
}

@media (hover: hover) {
    .site-footer .footer-inquiry__action:hover {
        background: #edf5f9;
        box-shadow: 0 10px 22px rgba(0, 78, 135, .08);
        transform: translateY(-2px);
    }
}

@media (max-width: 1080px) {
    .site-footer .footer-inquiry__actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .site-footer .footer-inquiry {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .site-footer .footer-inquiry__action {
        transition: none;
    }

    .site-footer .footer-inquiry__action:hover {
        transform: none;
    }
}

/* Inquiry style 2: source layout from /Volumes/data/Downloads/andeli-dubai. */
.site-footer .footer-cta.footer-cta--download {
    position: relative;
    display: block;
    width: 100%;
    min-height: 0 !important;
    margin: 0;
    padding: clamp(40px, 3vw, 56px) max(48px, calc((100vw - 1760px) / 2));
    overflow: hidden;
    background:
        radial-gradient(ellipse 54% 128% at 50% 50%, rgba(0, 22, 42, .48) 0%, rgba(0, 22, 42, .34) 58%, rgba(0, 22, 42, .08) 80%, rgba(0, 22, 42, 0) 100%),
        linear-gradient(105deg, rgba(0, 45, 80, .88) 0%, rgba(0, 101, 174, .76) 52%, rgba(0, 69, 121, .8) 100%),
        url("../images/andeli-inquiry-electrical-environment.webp") center / cover no-repeat;
    border: 0;
    border-bottom: 0;
    border-radius: 0;
    box-shadow: none;
}

.site-footer .footer-cta.footer-cta--download::before {
    display: none;
}

.site-footer .footer-cta.footer-cta--download .footer-cta__content {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    justify-items: center;
    align-items: center;
    gap: 24px;
    width: min(1760px, 100%);
    min-height: 0 !important;
    margin: 0 auto;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.site-footer .footer-cta.footer-cta--download .footer-cta__copy {
    min-width: 0;
    max-width: 960px;
    text-align: center;
}

.site-footer .footer-cta.footer-cta--download .eyebrow {
    margin: 0 0 12px;
    padding: 0;
    color: #b9eaff;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .14em;
}

.site-footer .footer-cta.footer-cta--download .eyebrow::before {
    display: none;
}

.site-footer .footer-cta.footer-cta--download h2 {
    max-width: 960px;
    margin: 0 auto;
    color: #ffffff;
    font-size: clamp(36px, 3vw, 54px);
    font-weight: 750;
    line-height: 1.1;
    letter-spacing: -.025em;
    text-align: center;
}

.site-footer .footer-cta.footer-cta--download p:not(.eyebrow) {
    max-width: 880px;
    margin: 10px auto 0;
    color: rgba(246, 252, 255, .9);
    font-size: 16px;
    font-weight: 500;
    line-height: 1.6;
}

@media (min-width: 761px) {
    .site-footer .footer-cta.footer-cta--download p:not(.eyebrow) {
        max-width: none;
        white-space: nowrap;
    }
}

.site-footer .footer-cta.footer-cta--download .footer-cta__trigger {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    grid-column: auto;
    justify-self: center;
    gap: 10px;
    min-width: 180px;
    min-height: 50px;
    margin: 0;
    padding: 0 24px;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 999px;
    background: #15a9e3;
    color: #ffffff;
    font-family: inherit;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    box-shadow: none;
    transition: background .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.site-footer .footer-cta.footer-cta--download .footer-cta__trigger svg {
    width: 17px;
    height: 17px;
}

.site-footer .footer-cta.footer-cta--download .footer-cta__trigger:hover {
    border-color: rgba(255, 255, 255, .5);
    background: #35b9ed;
    box-shadow: none;
    transform: translateY(-1px);
}

@media (max-width: 1080px) {
    .site-footer .footer-cta.footer-cta--download {
        padding: 48px;
    }

    .site-footer .footer-cta.footer-cta--download::before {
        left: 48px;
        height: 100px;
    }

    .site-footer .footer-cta.footer-cta--download .footer-cta__content {
        width: 100%;
        padding: 0;
    }
}

@media (max-width: 760px) {
    .site-footer .footer-cta.footer-cta--download {
        padding: 40px 20px;
    }

    .site-footer .footer-cta.footer-cta--download::before {
        left: 20px;
        height: 90px;
    }

    .site-footer .footer-cta.footer-cta--download .footer-cta__content {
        grid-template-columns: 1fr;
        width: 100%;
        padding: 0;
    }

    .site-footer .footer-cta.footer-cta--download h2 {
        font-size: clamp(28px, 8vw, 38px);
    }

    .site-footer .footer-cta.footer-cta--download p:not(.eyebrow) {
        white-space: normal;
    }

    .site-footer .footer-cta.footer-cta--download .footer-cta__trigger {
        grid-column: auto;
        width: 100%;
    }
}

/* Keep the page within the usable viewport; 100vw includes the browser scrollbar. */
html {
    overflow-x: clip;
}

body {
    width: 100%;
    max-width: 100%;
}

.site-footer .footer-cta.footer-cta--centered-form {
    width: 100%;
    margin-right: 0;
    margin-left: 0;
}

.site-footer .footer-cta .eyebrow {
    margin-bottom: 10px;
}

.site-footer .footer-cta h2 {
    font-size: clamp(36px, 2.8vw, 48px);
}

.site-footer .footer-cta p:not(.eyebrow) {
    margin-top: 14px;
    font-size: 15px;
    line-height: 1.5;
}

@media (max-width: 760px) {
}

/* Centered two-column inquiry card based on the approved concept. */
.site-footer .footer-cta.footer-cta--centered-form {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 0 !important;
    padding: 54px max(40px, calc((100vw - 1760px) / 2));
    background: #e8f5fa;
}

.site-footer .footer-cta.footer-cta--centered-form .footer-cta__content {
    width: min(1760px, 100%);
    min-height: 0 !important;
    margin: 0;
    padding: 0;
    overflow: visible;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.site-footer .footer-cta.footer-cta--centered-form .footer-cta__copy {
    display: grid;
    grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr);
    align-items: stretch;
    gap: clamp(20px, 2vw, 34px);
    width: 100%;
    max-width: none;
    overflow: hidden;
}

.site-footer .footer-cta.footer-cta--centered-form .footer-cta__intro {
    display: flex;
    position: relative;
    flex-direction: column;
    justify-content: center;
    min-height: 540px;
    padding: clamp(28px, 3vw, 60px) clamp(24px, 3vw, 58px);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .62);
    border-radius: 24px;
    background:
        linear-gradient(135deg, rgba(2, 41, 70, .74), rgba(0, 111, 175, .63)),
        url("../images/factory-workshop-clean-04.webp") center / cover no-repeat;
    box-shadow: none;
}

.site-footer .footer-cta.footer-cta--centered-form .eyebrow {
    position: relative;
    margin: 0 0 17px;
    padding-top: 20px;
    color: #b8e8ff;
}

.site-footer .footer-cta.footer-cta--centered-form .eyebrow::before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 34px;
    height: 4px;
    margin: 0;
    content: "";
    background: #b8e8ff;
    border-radius: 999px;
}

.site-footer .footer-cta.footer-cta--centered-form h2 {
    max-width: none;
    margin: 0;
    color: #ffffff;
    font-size: clamp(34px, 2.4vw, 52px);
    line-height: 1.04;
}


.site-footer .footer-cta.footer-cta--centered-form .footer-cta__intro > p:not(.eyebrow) {
    max-width: 390px;
    margin: 19px 0 0;
    color: rgba(245, 251, 255, .86);
    font-size: 15px;
    line-height: 1.55;
}

.site-footer .footer-cta.footer-cta--centered-form .footer-cta__form {
    align-content: center;
    width: 100%;
    min-height: 540px;
    margin: 0;
    padding: 52px clamp(34px, 4vw, 64px);
    gap: 16px;
    border: 1px solid rgba(148, 204, 239, .48);
    border-radius: 24px;
    background: #075996;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08);
}

.site-footer .footer-cta.footer-cta--centered-form .footer-cta__form label span {
    color: #ffffff;
}

.site-footer .footer-cta.footer-cta--centered-form .footer-cta__form label b {
    color: #92d5ff;
}

.site-footer .footer-cta.footer-cta--centered-form .footer-cta__form input,
.site-footer .footer-cta.footer-cta--centered-form .footer-cta__form textarea {
    border-color: rgba(192, 224, 246, .42);
    background: rgba(2, 49, 88, .32);
    color: #ffffff;
}

.site-footer .footer-cta.footer-cta--centered-form .footer-cta__form input::placeholder,
.site-footer .footer-cta.footer-cta--centered-form .footer-cta__form textarea::placeholder {
    color: rgba(255, 255, 255, .54);
}

.site-footer .footer-cta.footer-cta--centered-form .footer-cta__form input:focus,
.site-footer .footer-cta.footer-cta--centered-form .footer-cta__form textarea:focus {
    border-color: #92d5ff;
    background: rgba(2, 49, 88, .45);
    box-shadow: 0 0 0 3px rgba(146, 213, 255, .2);
}

.site-footer .footer-cta.footer-cta--centered-form .footer-cta__form input {
    min-height: 50px;
}

.site-footer .footer-cta.footer-cta--centered-form .footer-cta__form textarea {
    min-height: 110px;
}

.site-footer .footer-cta.footer-cta--centered-form .footer-cta__form button {
    min-height: 52px;
    border-radius: 999px;
    background: #16a9e3;
    box-shadow: 0 9px 18px rgba(0, 43, 74, .24);
}

.site-footer .footer-cta.footer-cta--centered-form .footer-cta__form button:hover {
    background: #39b9ec;
}

@media (max-width: 960px) {
    .site-footer .footer-cta.footer-cta--centered-form {
        min-height: 0 !important;
        padding: 36px 40px;
    }

    .site-footer .footer-cta.footer-cta--centered-form .footer-cta__content {
        width: 100%;
        min-height: 0 !important;
    }

    .site-footer .footer-cta.footer-cta--centered-form .footer-cta__copy {
        grid-template-columns: 1fr;
    }

    .site-footer .footer-cta.footer-cta--centered-form .footer-cta__intro {
        min-height: 0;
        padding: 42px 42px 36px;
        border-right: 0;
        border-bottom: 1px solid #d9e8f1;
    }

    .site-footer .footer-cta.footer-cta--centered-form .footer-cta__form {
        min-height: 0;
        padding: 34px 42px 40px;
    }
}

@media (max-width: 760px) {
    .site-footer .footer-cta.footer-cta--centered-form {
        padding: 20px;
    }

    .site-footer .footer-cta.footer-cta--centered-form .footer-cta__content {
        border-radius: 18px;
    }

    .site-footer .footer-cta.footer-cta--centered-form .footer-cta__intro,
    .site-footer .footer-cta.footer-cta--centered-form .footer-cta__form {
        padding: 32px 26px;
    }

    .site-footer .footer-cta.footer-cta--centered-form h2 {
        font-size: clamp(34px, 9vw, 44px);
    }
}

.site-footer .footer-cta .eyebrow {
    margin-bottom: 10px;
}

.site-footer .footer-cta h2 {
    font-size: clamp(36px, 2.8vw, 48px);
}

.site-footer .footer-cta p:not(.eyebrow) {
    margin-top: 14px;
    font-size: 15px;
    line-height: 1.5;
}

.site-footer .footer-cta__form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px 14px;
    margin-top: 24px;
}

.site-footer .footer-cta__form label {
    min-width: 0;
}

.site-footer .footer-cta__form label span {
    display: block;
    margin-bottom: 6px;
    color: #17425f;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .025em;
    line-height: 1.2;
    text-transform: uppercase;
}

.site-footer .footer-cta__form label b {
    color: var(--blue);
}

.site-footer .footer-cta__form input,
.site-footer .footer-cta__form textarea {
    display: block;
    width: 100%;
    border: 1px solid #cfe0ea;
    border-radius: 8px;
    background: #f9fcfe;
    color: #073257;
    font: inherit;
    font-size: 16px;
    line-height: 1.35;
    outline: 0;
    transition: border-color .2s ease, box-shadow .2s ease;
}

.site-footer .footer-cta__form input {
    min-height: 40px;
    padding: 0 11px;
}

.site-footer .footer-cta__form textarea {
    min-height: 68px;
    padding: 10px 11px;
    resize: vertical;
}

.site-footer .footer-cta__form input:focus,
.site-footer .footer-cta__form textarea:focus {
    border-color: var(--blue);
    box-shadow: 0 0 0 3px rgba(0, 121, 201, .12);
}

.site-footer .footer-cta__form textarea::placeholder {
    color: #7592a5;
    opacity: 1;
}

.site-footer .footer-cta__form-message,
.site-footer .footer-cta__form button {
    grid-column: 1 / -1;
}

.site-footer .footer-cta__form button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 46px;
    margin-top: 2px;
    border: 0;
    border-radius: 999px;
    background: var(--blue);
    color: #ffffff;
    font: inherit;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    box-shadow: 0 9px 18px rgba(0, 109, 184, .18);
    transition: background .2s ease, box-shadow .2s ease, transform .2s ease;
}

.site-footer .footer-cta__form button svg {
    width: 17px;
    height: 17px;
}

.site-footer .footer-cta__form button:hover {
    background: #005a98;
    box-shadow: 0 11px 22px rgba(0, 109, 184, .25);
    transform: translateY(-1px);
}

@media (max-width: 760px) {

    .site-footer .footer-cta__form {
        grid-template-columns: 1fr;
        gap: 12px;
        margin-top: 20px;
    }

    .site-footer .footer-cta__form-message,
    .site-footer .footer-cta__form button {
        grid-column: auto;
    }
}

/* Compact inquiry entry in the rightmost footer column. */
.site-footer .footer-contact-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 22px;
}

.site-footer .footer-contact-actions__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 42px;
    margin: 0;
    padding: 0 15px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-family: inherit;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
    transition: background .2s ease, border-color .2s ease, box-shadow .2s ease, color .2s ease, transform .2s ease;
}

.site-footer .footer-contact-actions__button svg {
    width: 16px;
    height: 16px;
}

.site-footer .footer-contact-actions__button--primary {
    background: #0789d0;
    color: #ffffff;
    box-shadow: 0 8px 18px rgba(0, 121, 201, .22);
}

.site-footer .footer-contact-actions__button--primary:hover {
    background: #16a3e6;
    color: #ffffff;
    box-shadow: 0 10px 20px rgba(0, 121, 201, .3);
    transform: translateY(-1px);
}

.site-footer .footer-contact-actions__button--secondary {
    border-color: rgba(202, 227, 244, .42);
    color: #dceefa;
}

.site-footer .footer-contact-actions__button--secondary:hover {
    border-color: #7cc9ef;
    background: rgba(124, 201, 239, .12);
    color: #ffffff;
}

@media (max-width: 760px) {
    .site-footer .footer-contact-actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .site-footer .footer-contact-actions__button {
        width: 100%;
        padding: 0 10px;
        font-size: 12px;
    }
}

.site-footer .footer-cta::before,
.site-footer .footer-cta::after,
.site-footer .footer-cta__content::before {
    display: none;
    content: none;
}

.site-footer .footer-cta__copy {
    max-width: none;
}

.site-footer .footer-cta .eyebrow {
    margin: 0 0 14px;
    color: var(--blue);
}

.site-footer .footer-cta h2 {
    max-width: 460px;
    color: #061e34;
    font-size: clamp(40px, 3.1vw, 54px);
    line-height: 1.04;
}

.site-footer .footer-cta p:not(.eyebrow) {
    max-width: 440px;
    margin: 20px 0 0;
    color: #49687d;
    font-size: 16px;
}

.site-footer .footer-cta__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 30px;
}

.site-footer .footer-cta__action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 50px;
    padding: 0 20px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-family: inherit;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: background .2s ease, border-color .2s ease, box-shadow .2s ease, color .2s ease, transform .2s ease;
}

.site-footer .footer-cta__action svg {
    width: 17px;
    height: 17px;
}

.site-footer .footer-cta__action--primary {
    background: var(--blue);
    color: #ffffff;
    box-shadow: 0 10px 20px rgba(0, 109, 184, .2);
}

.site-footer .footer-cta__action--primary:hover {
    background: #005a98;
    box-shadow: 0 12px 24px rgba(0, 109, 184, .28);
    transform: translateY(-1px);
}

.site-footer .footer-cta__action--secondary {
    border-color: #aec6d6;
    background: #ffffff;
    color: #063258;
}

.site-footer .footer-cta__action--secondary:hover {
    border-color: var(--blue);
    color: var(--blue);
}

@media (max-width: 760px) {

    .site-footer .footer-cta h2 {
        font-size: clamp(34px, 9vw, 44px);
    }

    .site-footer .footer-cta__actions {
        flex-direction: column;
    }

    .site-footer .footer-cta__action {
        width: 100%;
    }
}
.site-footer .footer-cta {
    position: relative;
    gap: 0;
    align-items: stretch;
    height: auto;
    border-top: 0;
    border-bottom: 0;
    border-right: 0;
    border-left: 0;
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
    isolation: isolate;
    display: block;
    width: 100%;
    margin: 0;
    padding: 44px max(40px, calc((100vw - 1760px) / 2));
    overflow: hidden;
    background:
        linear-gradient(90deg, rgba(2, 24, 43, .18) 0%, rgba(2, 24, 43, .06) 54%, rgba(2, 24, 43, .04) 100%),
        url("../images/footer-inquiry-workshop-d985c305.webp") center / cover no-repeat;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    min-height: 0 !important;
    padding-top: 32px;
    padding-bottom: 32px;
}
.site-footer .footer-cta__content {
    border-left: 5px solid #0079c9;
    flex-direction: column;
    justify-content: center;
    align-self: stretch;
    max-width: none;
    overflow: hidden;
    position: relative;
    z-index: 1;
    grid-column: 1;
    grid-row: 1;
    display: flex;
    align-items: center;
    margin-left: auto;
    border: 1px solid rgba(255, 255, 255, .78);
    border-radius: 22px;
    background: rgba(255, 255, 255, .94);
    box-shadow: 0 18px 40px rgba(1, 27, 49, .16);
    width: min(100%, 43vw, 900px);
    min-height: 0 !important;
    padding: 36px clamp(30px, 3vw, 46px) 38px;
}

.site-footer .footer-cta .eyebrow {
    margin-bottom: 10px;
}

.site-footer .footer-cta h2 {
    font-size: clamp(36px, 2.8vw, 48px);
}

.site-footer .footer-cta p:not(.eyebrow) {
    margin-top: 14px;
    font-size: 15px;
    line-height: 1.5;
}

@media (max-width: 760px) {
    .site-footer .footer-cta {
        gap: 22px;
        margin-left: 0;
        margin-top: 24px;
        width: 100%;
        margin: 0;
        border-radius: 0;
        grid-template-rows: auto 180px;
        min-height: 0 !important;
        padding: 28px 20px;
        background-position: 62% center;
        padding-top: 20px;
        padding-bottom: 20px;
    }
    .site-footer .footer-cta__content {
        width: 100%;
        min-height: 0 !important;
        margin-left: 0;
        border-radius: 16px;
        padding: 30px 24px 32px;
    }
}
