/* Reference-led rebuild — 2026-07-25 */
:root {
    --rb-ink: #17242b;
    --rb-copy: #516068;
    --rb-muted: #748087;
    --rb-line: #d7dfe2;
    --rb-canvas: #f2f5f6;
    --rb-surface: #ffffff;
    --rb-accent: #d9422b;
    --rb-accent-dark: #b73220;
    --rb-radius: 10px;
    --rb-shadow: 0 20px 52px rgba(44, 34, 27, .09);
}

body {
    color: var(--rb-ink);
}

.landing-body h1,
.landing-body h2,
.landing-body h3,
.storefront-body h1,
.storefront-body h2,
.storefront-body h3,
.app-shell h1,
.app-shell h2,
.app-shell h3,
.app-shell strong,
.auth-shell h1,
.auth-shell h2 {
    font-family: "Manrope", "IBM Plex Sans Arabic", sans-serif !important;
}

.button,
button,
input,
select,
textarea {
    border-radius: 7px !important;
}

.button-primary {
    background: var(--brand-color, var(--rb-accent)) !important;
    color: #fff !important;
    box-shadow: none !important;
}

.button-secondary {
    color: var(--rb-ink) !important;
    box-shadow: none !important;
}

/* Commerce marketing */
.landing-body {
    background: #eef2f3 !important;
}

.landing-noise,
.storefront-ambience {
    display: none !important;
}

.landing-shell {
    width: min(100%, 100%) !important;
    padding: 0 !important;
}

.landing-header {
    position: sticky;
    top: 0;
    z-index: 40;
    border-bottom: 1px solid var(--rb-line) !important;
    background: rgba(247, 250, 251, .97) !important;
    backdrop-filter: blur(14px);
}

.landing-header__bar {
    width: min(1240px, calc(100% - 40px)) !important;
    min-height: 74px !important;
    margin-inline: auto !important;
    padding: 0 !important;
    border: 0 !important;
}

.brand-lockup__mark {
    border-radius: 8px !important;
}

.landing-header__nav a {
    color: #554e49 !important;
    font-size: .75rem !important;
    font-weight: 650 !important;
}

.landing-main {
    width: min(1240px, calc(100% - 40px)) !important;
    margin-inline: auto !important;
    padding: 34px 0 80px !important;
}

.landing-hero {
    min-height: 620px !important;
    padding: 42px !important;
    grid-template-columns: minmax(0, .88fr) minmax(520px, 1.12fr) !important;
    gap: 42px !important;
    align-items: center !important;
    border: 1px solid var(--rb-line) !important;
    border-radius: 16px !important;
    background: #f9fbfb !important;
    box-shadow: none !important;
}

.landing-hero .hero-title {
    max-width: 650px !important;
    margin: 24px 0 22px !important;
    color: var(--rb-ink) !important;
    font-family: "Manrope", "IBM Plex Sans Arabic", sans-serif !important;
    font-size: clamp(3.1rem, 5.2vw, 5.4rem) !important;
    line-height: .96 !important;
    letter-spacing: -.055em !important;
}

html[dir="rtl"] .landing-hero .hero-title {
    font-family: "IBM Plex Sans Arabic", sans-serif !important;
    font-size: clamp(2.8rem, 4.7vw, 4.8rem) !important;
    line-height: 1.11 !important;
}

.landing-hero .hero-copy {
    max-width: 580px !important;
    color: var(--rb-copy) !important;
    font-size: .98rem !important;
    line-height: 1.8 !important;
}

.landing-stats {
    display: none !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 0 !important;
    margin-top: 34px !important;
    border-top: 1px solid var(--rb-line);
}

.landing-stats .hero-stat {
    min-height: 74px !important;
    padding: 18px 16px 0 0 !important;
    border: 0 !important;
    border-inline-end: 1px solid var(--rb-line) !important;
    border-radius: 0 !important;
    background: transparent !important;
}

.landing-stats .hero-stat:last-child {
    border-inline-end: 0 !important;
}

.landing-browser {
    overflow: hidden;
    border: 1px solid #3a312d !important;
    border-radius: 12px !important;
    background: #14232b !important;
    box-shadow: var(--rb-shadow) !important;
}

.landing-browser__bar {
    min-height: 36px !important;
    background: #1f3039 !important;
}

.landing-browser__body {
    padding: 12px !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    background: #14232b !important;
}

.landing-browser__hero,
.landing-browser__grid {
    display: none !important;
}

.landing-browser__hero {
    padding: 18px !important;
    grid-template-columns: 1fr auto !important;
    border: 1px solid rgba(255, 255, 255, .12) !important;
    border-radius: 8px !important;
    background: #1d2e37 !important;
}

.landing-browser__visual {
    height: 512px !important;
    overflow: hidden;
    border-radius: 8px !important;
    background: #e2e8ea !important;
}

.landing-browser__photo {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: left top;
}

.landing-browser__grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
}

.landing-browser__grid article {
    min-height: 104px !important;
    padding: 16px !important;
    border: 1px solid rgba(255, 255, 255, .1) !important;
    border-radius: 8px !important;
    background: #1d2e37 !important;
}

.landing-showcase .landing-browser__grid {
    display: none !important;
}

.landing-main .content-section {
    padding: 82px 0 !important;
    border: 0 !important;
    border-bottom: 1px solid var(--rb-line) !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.landing-main .section-head {
    max-width: 820px;
    margin-bottom: 34px !important;
}

.landing-main .section-title {
    color: var(--rb-ink) !important;
    font-size: clamp(2rem, 3.5vw, 3.5rem) !important;
    letter-spacing: -.045em !important;
}

.landing-main .section-copy {
    color: var(--rb-copy) !important;
    line-height: 1.75 !important;
}

.landing-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0 48px !important;
    border-top: 1px solid var(--rb-line);
}

.landing-panel {
    min-height: 0 !important;
    padding: 30px 0 34px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--rb-line) !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.landing-panel .feature-icon {
    margin-bottom: 28px !important;
}

.landing-store-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;
}

.landing-store-card {
    overflow: hidden;
    border: 1px solid var(--rb-line) !important;
    border-radius: var(--rb-radius) !important;
    background: #fff !important;
    box-shadow: none !important;
}

.landing-mock {
    min-height: 300px !important;
    padding: 24px !important;
    border-radius: 0 !important;
    background: #dfe6e8 !important;
}

.landing-mock.has-store-proof {
    padding: 0 !important;
}

.landing-mock.has-store-proof > :not(.landing-mock__photo) {
    display: none !important;
}

.landing-mock__photo {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 300px;
    object-fit: cover;
    object-position: left top;
}

.landing-store-card__copy {
    padding: 24px !important;
}

.landing-step {
    position: relative;
    min-height: 200px !important;
    padding-top: 66px !important;
}

.landing-feature-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0 48px !important;
    border-top: 1px solid var(--rb-line);
}

.landing-feature {
    min-height: 0 !important;
    padding: 26px 0 30px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--rb-line) !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.pricing-card,
.faq-item,
.landing-cta {
    border-radius: var(--rb-radius) !important;
    box-shadow: none !important;
}

.landing-cta {
    background: #16262e !important;
}

/* Shared storefront */
.storefront-body {
    background: #f5f7f7 !important;
}

.storefront-page {
    max-width: none !important;
}

.storefront-header {
    border-bottom: 1px solid var(--rb-line) !important;
    background: rgba(255, 255, 255, .98) !important;
    box-shadow: none !important;
}

.storefront-header__bar {
    width: min(1240px, calc(100% - 40px)) !important;
    margin-inline: auto !important;
    padding: 10px 0 0 !important;
}

.storefront-header__row {
    min-height: 58px !important;
    grid-template-columns: minmax(220px, .7fr) minmax(300px, 1.15fr) auto !important;
    gap: 18px !important;
}

.storefront-search {
    min-height: 42px !important;
}

.storefront-search__input {
    min-height: 42px !important;
    border-color: var(--rb-line) !important;
    background: #f8f7f4 !important;
}

.storefront-nav {
    min-height: 42px !important;
    border-top: 1px solid #eee9e3;
}

.storefront-nav__link {
    padding: 13px 10px !important;
    color: #625b55 !important;
    font-size: .7rem !important;
}

.storefront-main {
    width: min(1240px, calc(100% - 40px)) !important;
    margin-inline: auto !important;
    padding: 16px 0 72px !important;
}

.hero-panel {
    min-height: 500px !important;
    grid-template-columns: minmax(0, .82fr) minmax(520px, 1.18fr) !important;
    overflow: hidden;
    border: 1px solid var(--rb-line) !important;
    border-radius: 12px !important;
    background: #fff !important;
    box-shadow: none !important;
}

.hero-panel__copy {
    padding: 42px !important;
    align-self: center !important;
}

.hero-panel .hero-title {
    margin: 22px 0 !important;
    color: var(--rb-ink) !important;
    font-size: clamp(3rem, 5vw, 5rem) !important;
    line-height: .98 !important;
    font-family: "Manrope", "IBM Plex Sans Arabic", sans-serif !important;
}

.template-fashion-lookbook .hero-panel {
    position: relative !important;
    display: block !important;
    min-height: 650px !important;
    background: #e9edef !important;
}

.template-fashion-lookbook .hero-media {
    position: absolute;
    inset: 0;
    min-height: 650px !important;
}

.template-fashion-lookbook .hero-panel__copy {
    position: absolute;
    z-index: 2;
    inset-inline-start: 34px;
    bottom: 34px;
    width: min(470px, calc(100% - 68px));
    padding: 32px !important;
    border: 1px solid rgba(255, 255, 255, .8);
    border-radius: 8px;
    background: rgba(255, 255, 255, .94);
    backdrop-filter: blur(12px);
}

.template-fashion-lookbook .hero-panel .hero-title {
    margin: 14px 0 !important;
    font-size: clamp(2.8rem, 4.4vw, 4.5rem) !important;
}

.template-fashion-lookbook .hero-stats {
    display: none !important;
}

.hero-panel .hero-copy {
    max-width: 520px !important;
    color: var(--rb-copy) !important;
    font-size: .96rem !important;
    line-height: 1.8 !important;
}

.hero-media {
    min-height: 500px !important;
}

.hero-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hero-stats {
    display: flex !important;
    gap: 0 !important;
    margin-top: 32px !important;
    border-top: 1px solid var(--rb-line);
}

.hero-stat {
    min-width: 140px;
    min-height: 70px !important;
    padding: 16px 20px 0 0 !important;
    border: 0 !important;
    border-inline-end: 1px solid var(--rb-line) !important;
    border-radius: 0 !important;
    background: transparent !important;
}

.storefront-main .content-section {
    padding: 74px 0 18px !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.storefront-main .section-head {
    margin-bottom: 26px !important;
}

.storefront-main .section-title {
    color: var(--rb-ink) !important;
    font-size: clamp(1.8rem, 3vw, 2.7rem) !important;
    letter-spacing: -.04em !important;
}

.storefront-main .grid-cards {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 16px !important;
}

.product-card {
    overflow: hidden;
    border: 1px solid var(--rb-line) !important;
    border-radius: var(--rb-radius) !important;
    background: #fff !important;
    box-shadow: none !important;
}

.product-card:hover {
    border-color: #bdb3a9 !important;
    transform: translateY(-2px) !important;
}

.product-card__media {
    aspect-ratio: 1.12 / 1 !important;
    border-radius: 0 !important;
}

.template-fashion-lookbook .product-card__media {
    aspect-ratio: 4 / 5 !important;
}

.product-card__content {
    padding: 18px !important;
}

.product-card__title {
    color: var(--rb-ink) !important;
    font-size: 1rem !important;
}

.product-card__excerpt {
    min-height: 42px;
    color: var(--rb-copy) !important;
    font-size: .72rem !important;
}

.product-card__actions {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    gap: 8px !important;
}

.category-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 10px !important;
}

.category-tile {
    min-height: 150px !important;
    border: 1px solid var(--rb-line) !important;
    border-radius: var(--rb-radius) !important;
    background: #fff !important;
    box-shadow: none !important;
}

.product-layout {
    grid-template-columns: minmax(0, 1.05fr) minmax(420px, .95fr) !important;
    gap: 24px !important;
}

.gallery-stage,
.detail-card,
.panel,
.listing-toolbar,
.checkout-step,
.checkout-summary,
.cart-card {
    border-color: var(--rb-line) !important;
    border-radius: var(--rb-radius) !important;
    background: #fff !important;
    box-shadow: none !important;
}

.product-sidebar {
    position: sticky;
    top: 124px;
    align-self: start;
}

.cart-drawer__panel {
    width: min(440px, 100%) !important;
    border: 0 !important;
    background: #fff !important;
    box-shadow: -18px 0 48px rgba(20, 34, 42, .18) !important;
}

.cart-drawer__item {
    border-bottom: 1px solid var(--rb-line) !important;
    border-radius: 0 !important;
}

.checkout-layout {
    grid-template-columns: minmax(0, 1.15fr) minmax(360px, .85fr) !important;
    gap: 22px !important;
}

.checkout-step {
    padding: 24px !important;
}

.checkout-layout > aside {
    position: sticky;
    top: 124px;
    align-self: start;
}

/* Merchant operations */
.app-shell {
    --sidebar-width: 218px;
    background: #f3f4f3 !important;
}

.app-frame {
    grid-template-columns: var(--sidebar-width) minmax(0, 1fr) !important;
}

.app-sidebar {
    width: var(--sidebar-width) !important;
    padding: 14px 11px !important;
    background: #20282b !important;
}

.app-sidebar::before {
    display: none !important;
}

.sidebar-brand {
    padding: 4px 6px 16px !important;
    border-bottom: 1px solid rgba(255, 255, 255, .1) !important;
}

.sidebar-brand__meta {
    margin-top: 14px !important;
    padding: 10px !important;
    border: 1px solid rgba(255, 255, 255, .1) !important;
    border-radius: 8px !important;
    background: rgba(255, 255, 255, .04) !important;
}

.sidebar-nav {
    gap: 2px !important;
}

.sidebar-link {
    min-height: 40px !important;
    padding: 6px 8px !important;
    border-radius: 7px !important;
    color: rgba(255, 255, 255, .68) !important;
}

.sidebar-link.is-active {
    background: #fff !important;
    color: #20282b !important;
}

.sidebar-link__icon {
    width: 25px !important;
    height: 25px !important;
    border-radius: 6px !important;
    background: rgba(255, 255, 255, .08) !important;
    font-size: .52rem !important;
}

.sidebar-link.is-active .sidebar-link__icon {
    background: #eef1f0 !important;
    color: #20282b !important;
}

.sidebar-foot {
    color: rgba(255, 255, 255, .38) !important;
}

.app-topbar {
    min-height: 72px !important;
    padding: 11px 24px !important;
    border-bottom: 1px solid #dfe4e2 !important;
    background: rgba(255, 255, 255, .98) !important;
    box-shadow: none !important;
}

.app-topbar .panel-head h1 {
    font-size: 1.12rem !important;
}

.app-topbar .panel-head p {
    margin-top: 3px !important;
    font-size: .62rem !important;
}

.app-content {
    max-width: 1440px !important;
    padding: 18px 24px 52px !important;
}

.app-page-dashboard .hero-card {
    display: none !important;
}

.app-content .card,
.app-content .panel,
.app-content .metric-card,
.app-content .toolbar-card,
.app-content .table-card {
    border-color: #dfe4e2 !important;
    border-radius: 9px !important;
    background: #fff !important;
    box-shadow: none !important;
}

.metric-grid,
.grid.cols-4 {
    gap: 10px !important;
}

.metric-card {
    min-height: 118px !important;
    padding: 17px !important;
    border-top-width: 2px !important;
}

.metric-card strong {
    color: #20282b !important;
    font-size: 1.25rem !important;
}

.app-content .hero-copy,
.app-content .section-copy,
.helper-note {
    color: #687376 !important;
}

.app-page-products .card-split,
.app-page-categories .card-split,
.app-page-delivery .card-split,
.app-page-coupons .card-split {
    grid-template-columns: minmax(320px, .68fr) minmax(0, 1.32fr) !important;
    align-items: start;
}

.app-page-customers .customer-layout {
    grid-template-columns: minmax(0, 1.25fr) minmax(320px, .75fr) !important;
}

.table-wrap {
    border-color: #dfe4e2 !important;
    border-radius: 7px !important;
}

th {
    background: #f5f7f6 !important;
    color: #5f696c !important;
}

tbody tr:hover {
    background: #fafbfa !important;
}

input,
select,
textarea {
    border-color: #ccd4d1 !important;
    background: #fff !important;
}

input:focus,
select:focus,
textarea:focus {
    border-color: var(--brand-color, var(--rb-accent)) !important;
    box-shadow: 0 0 0 3px rgba(179, 55, 36, .1) !important;
}

/* Authentication */
.auth-shell {
    background: #edf2f3 !important;
}

.auth-layout {
    width: min(1180px, calc(100% - 40px)) !important;
    gap: 36px !important;
}

.auth-visual,
.auth-card {
    border: 1px solid var(--rb-line) !important;
    border-radius: 14px !important;
    box-shadow: var(--rb-shadow) !important;
}

.auth-card {
    max-width: 510px !important;
    padding: 38px !important;
}

@media (max-width: 1060px) {
    .landing-hero,
    .hero-panel,
    .product-layout,
    .checkout-layout {
        grid-template-columns: 1fr !important;
    }

    .landing-hero {
        padding: 30px !important;
    }

    .landing-feature-grid,
    .landing-card-grid,
    .category-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .product-sidebar,
    .checkout-layout > aside {
        position: static;
    }
}

@media (max-width: 760px) {
    .landing-header__bar,
    .landing-main,
    .storefront-header__bar,
    .storefront-main {
        width: min(100% - 24px, 1240px) !important;
    }

    .landing-hero {
        min-height: 0 !important;
        padding: 24px !important;
    }

    .landing-hero .hero-title {
        font-size: 3rem !important;
    }

    .landing-browser__visual {
        height: 190px !important;
    }

    .landing-store-grid,
    .landing-feature-grid,
    .landing-card-grid,
    .landing-browser__grid,
    .storefront-main .grid-cards,
    .category-grid {
        grid-template-columns: 1fr !important;
    }

    .landing-panel,
    .landing-feature {
        border-inline-end: 0 !important;
        border-bottom: 1px solid var(--rb-line) !important;
    }

    .landing-main .content-section {
        padding: 56px 0 !important;
    }

    .storefront-header__row {
        grid-template-columns: 1fr auto !important;
    }

    .storefront-search {
        grid-column: 1 / -1;
        grid-row: 2;
    }

    .hero-panel__copy {
        padding: 28px !important;
    }

    .hero-media {
        min-height: 340px !important;
    }

    .template-fashion-lookbook .hero-panel,
    .template-fashion-lookbook .hero-media {
        min-height: 560px !important;
    }

    .template-fashion-lookbook .hero-panel__copy {
        inset-inline: 16px;
        bottom: 16px;
        width: auto;
        padding: 24px !important;
    }

    .hero-panel .hero-title {
        font-size: 3.2rem !important;
    }

    .app-content {
        padding: 14px 12px 40px !important;
    }

    .app-page-products .card-split,
    .app-page-categories .card-split,
    .app-page-delivery .card-split,
    .app-page-coupons .card-split {
        grid-template-columns: 1fr !important;
    }

    .auth-visual {
        display: none !important;
    }

    .auth-card {
        width: 100% !important;
        padding: 30px 22px !important;
    }
}

/* Final product polish: compact operations, intentional proof, and stable cart rows. */
.landing-hero .hero-title {
    font-size: clamp(3rem, 4.55vw, 4.45rem) !important;
}

.app-page-dashboard .metric-card,
.app-page-orders .metric-card,
.app-page-reports .metric-card {
    min-height: 138px !important;
    padding: 18px !important;
}

.app-page-dashboard .metric-card strong,
.app-page-orders .metric-card strong,
.app-page-reports .metric-card strong {
    font-size: clamp(1.45rem, 2vw, 2rem) !important;
}

.app-page-dashboard .metric-card p,
.app-page-orders .metric-card p,
.app-page-reports .metric-card p {
    margin-top: 12px !important;
    color: var(--rb-copy) !important;
    font-size: .76rem !important;
    line-height: 1.45 !important;
}

.app-page-dashboard .card-split {
    align-items: start !important;
}

.app-page-dashboard .preset-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
}

.app-page-dashboard .preset-card {
    min-height: 76px !important;
    padding: 14px 16px !important;
    border-radius: 10px !important;
    align-content: center !important;
}

.app-page-dashboard .preset-card strong {
    font-size: .94rem !important;
}

.cart-drawer__items {
    align-content: start !important;
}

.cart-drawer__item {
    align-items: start !important;
    min-height: 102px !important;
}

.cart-drawer__item-media {
    width: 76px !important;
    height: 76px !important;
    min-height: 76px !important;
    align-self: start !important;
    aspect-ratio: 1 !important;
}

.cart-drawer__item-media img {
    width: 76px !important;
    height: 76px !important;
}

.product-editor {
    padding: 0 !important;
    overflow: hidden;
}

.product-editor__summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 20px 22px;
    cursor: pointer;
    list-style: none;
}

.product-editor__summary::-webkit-details-marker {
    display: none;
}

.product-editor__summary strong {
    color: var(--rb-ink);
    font-size: 1rem;
}

.product-editor__summary span {
    padding: 8px 12px;
    border: 1px solid var(--rb-line);
    border-radius: 8px;
    color: var(--rb-copy);
    font-size: .74rem;
    font-weight: 750;
}

.product-editor[open] .product-editor__summary {
    border-bottom: 1px solid var(--rb-line);
}

.product-editor > .section-head {
    padding: 24px 24px 0;
}

.product-editor > form {
    padding: 0 24px 24px;
}

.status-filter-card {
    padding: 14px 16px !important;
}

@media (max-width: 760px) {
    .app-page-dashboard .preset-grid {
        grid-template-columns: 1fr !important;
    }

    .product-editor__summary {
        padding: 17px;
    }
}

/* Restaurant storefronts behave like ordering products, not generic landing pages. */
.restaurant-order-context {
    display: grid;
    grid-template-columns: minmax(170px, .65fr) minmax(280px, 1.4fr) auto;
    gap: 0;
    align-items: stretch;
    margin-bottom: 14px;
    overflow: hidden;
    border: 1px solid var(--rb-line);
    border-radius: 12px;
    background: #fff;
}

.restaurant-order-context__mode,
.restaurant-order-context__location {
    display: grid;
    align-content: center;
    gap: 3px;
    min-height: 74px;
    padding: 14px 18px;
    border-inline-end: 1px solid var(--rb-line);
}

.restaurant-order-context span,
.restaurant-order-context small {
    color: var(--rb-copy);
    font-size: .68rem;
}

.restaurant-order-context strong {
    color: var(--rb-ink);
    font-size: .92rem;
}

.restaurant-order-context > .button {
    align-self: center;
    margin: 0 16px;
}

.template-restaurant-classic .hero-panel {
    min-height: 500px !important;
}

.template-restaurant-classic .hero-panel__copy {
    padding: 42px !important;
}

@media (max-width: 760px) {
    .restaurant-order-context {
        grid-template-columns: 1fr;
    }

    .restaurant-order-context__mode,
    .restaurant-order-context__location {
        min-height: 64px;
        border-inline-end: 0;
        border-bottom: 1px solid var(--rb-line);
    }

    .restaurant-order-context > .button {
        margin: 14px 16px;
    }

    .template-restaurant-classic .hero-panel {
        min-height: 0 !important;
    }
}

.landing-commerce-collage {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(180px, .65fr);
    grid-template-rows: minmax(0, 1fr) auto;
    min-width: 0;
    height: 548px;
    margin: 0;
    overflow: hidden;
    border: 1px solid #ccd5d8;
    border-radius: 14px;
    background: #fff;
}

.landing-commerce-collage img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.landing-commerce-collage__main {
    min-height: 0;
}

.landing-commerce-collage__side {
    display: grid;
    grid-template-rows: 1fr 1fr;
    min-height: 0;
    border-inline-start: 1px solid #fff;
}

.landing-commerce-collage__side img + img {
    border-top: 1px solid #fff;
}

.landing-commerce-collage figcaption {
    grid-column: 1 / -1;
    display: grid;
    gap: 4px;
    padding: 17px 20px 19px;
    border-top: 1px solid var(--rb-line);
}

.landing-commerce-collage figcaption strong {
    color: var(--rb-ink);
    font-size: .98rem;
}

.landing-commerce-collage figcaption span {
    color: var(--rb-copy);
    font-size: .72rem;
    line-height: 1.5;
}

@media (max-width: 760px) {
    .landing-commerce-collage {
        grid-template-columns: 1fr;
        height: auto;
    }

    .landing-commerce-collage__main {
        aspect-ratio: 4 / 3;
    }

    .landing-commerce-collage__side {
        display: none;
    }
}

.storefront-main .checkout-page {
    padding-top: 32px !important;
}

.landing-hero .landing-stats {
    display: grid !important;
    width: 100% !important;
}

@media (max-width: 760px) {
    .landing-hero .landing-stats {
        grid-template-columns: 1fr !important;
        margin-top: 28px !important;
    }

    .landing-hero .landing-stats .hero-stat {
        width: 100% !important;
        min-height: 0 !important;
        padding: 16px 0 !important;
        border-inline-end: 0 !important;
        border-bottom: 1px solid var(--rb-line) !important;
    }

    .app-page-dashboard .grid.cols-4 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }

    .app-page-dashboard .metric-card {
        min-height: 146px !important;
        padding: 16px !important;
    }
}
